{"version":3,"sources":["webpack:///./src/themes/index.js","webpack:///./src/views lazy ^\\.\\/.*\\.vue$ namespace object","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/filters/index.js","webpack:///./src/plugins/eventbus-pairs.js","webpack:///./src/plugins/index.js","webpack:///./src/mixins/toast.js","webpack:///./src/mixins/resource-translations.js","webpack:///./src/mixins/uiHelpers.js","webpack:///./src/mixins/index.js","webpack:///./src/components/faIcons.js","webpack:///./src/components/index.js","webpack:///./src/lib/request.js","webpack:///./src/store/namespace.js","webpack:///./src/store/module.js","webpack:///./src/store/page.js","webpack:///./src/store/page-layout.js","webpack:///./src/store/chart.js","webpack:///./src/store/record.js","webpack:///./src/store/user.js","webpack:///./src/store/languages.js","webpack:///./src/store/ui.js","webpack:///./src/store/index.js","webpack:///./src/views/routes.js","webpack:///./src/router.js","webpack:///./src/app.js","webpack:///./src/main.js","webpack:///./src/console-splash.js","webpack:///./src/config-check.js"],"names":["map","webpackAsyncContext","req","__webpack_require__","o","Promise","resolve","then","e","Error","code","ids","id","all","slice","keys","Object","module","exports","webpackContext","webpackContextResolve","n","filters","Vue","filter","stdEventTypes","recordPageEventTypes","compose","notProduction","process","verboseUIHooks","window","location","search","includes","verboseEventbus","use","BootstrapVue","BToast","autoHideDelay","toaster","Router","plugins","Auth","app","CortezaAPI","EventBus","strict","verbose","pairs","UIHooks","Settings","api","prototype","$SystemAPI","Reminder","VueNativeSock","websocket","endpoint","config","methods","toastSuccess","message","title","arguments","length","undefined","this","$t","toast","variant","toastWarning","toastInfo","toastDanger","msg","opt","$root","$bvToast","toastErrorHandler","_this","prefix","_opt","err","startsWith","substring","computed","resourceTranslationLanguages","ll","$Settings","get","Array","isArray","resourceTranslationsEnabled","defaultTranslationLanguage","currentLanguage","$i18n","i18next","language","textDirectionality","getBreakpoint","breakpoint","width","innerWidth","mixin","resourceTranslations","uiHelpers","library","add","faSort","faSortUp","faSortDown","faWrench","faGripVertical","faDownload","faFileAlt","faFileWord","faFilePdf","faFilePowerpoint","faFileArchive","faFileExcel","faFileVideo","faFileImage","faFileExport","faEdit","faTrashAlt","faSearch","faSearchPlus","faBars","faCloudDownloadAlt","faTimes","faCheck","faBell","faClock","faSquare","faBold","faItalic","faUnderline","faStrikethrough","faQuoteRight","faCode","faListUl","faListOl","faOutdent","faIndent","faAlignLeft","faAlignCenter","faAlignRight","faAlignJustify","faLink","faRemoveFormat","faTasks","faParagraph","faClone","faCopy","faPlusSquare","faTrashRestore","faChevronUp","faChevronDown","faChevronLeft","faChevronRight","faShareAlt","faEnvelope","faAngleUp","faAngleDown","faAngleLeft","faAngleRight","faExternalLinkAlt","faAngleDoubleLeft","faAngleDoubleRight","faEllipsisH","faEyeSlash","faArrowRight","faUserCog","faQuestionCircle","faFilter","faSave","faGripHorizontal","faUser","faCogs","faPen","faThumbtack","faEye","faPlus","faColumns","faSearchLocation","faMapMarkedAlt","faKey","faQuestion","faExclamationTriangle","faSync","faEllipsisV","faLocationArrow","faTools","faExclamationCircle","BarChart","LineChart","PieChart","GaugeChart","RadarChart","FunnelChart","ScatterChart","CanvasRenderer","TitleComponent","GridComponent","TooltipComponent","LegendComponent","VisualMapComponent","ToolboxComponent","DataZoomComponent","component","ECharts","PortalVue","FontAwesomeIcon","FontAwesomeLayers","components","CPermissionsButton","CInputConfirm","CInputProcessing","CResourceList","CInputCheckbox","CButtonSubmit","CHint","CInputSelect","_ref","resourceTranslationLanguage","headers","types","loading","loaded","pending","completed","updateSet","removeFromSet","clearSet","ComposeAPI","namespaced","state","set","getters","getByID","ID","find","namespaceID","getByUrlPart","urlPart","_ref2","slug","actions","load","_ref3","_arguments","_asyncToGenerator","commit","_ref4","_ref4$force","force","namespaceList","_ref5","Namespace","finally","findByID","_ref6","_arguments2","_ref7","_ref7$force","oldItem","namespaceRead","raw","namespace","create","_ref8","item","namespaceCreate","request","clone","_ref9","namespaceClone","update","_ref10","namespaceUpdate","delete","_ref11","namespaceDelete","_ref12","mutations","i","freeze","forEach","newItem","oldIndex","findIndex","_ref13","splice","push","removedSet","removedItem","_ref14","moduleID","rootGetters","_ref3$clear","clear","_ref3$force","moduleList","sort","m","Module","_ref6$force","moduleRead","moduleCreate","moduleUpdate","moduleDelete","pageID","getByHandle","handle","p","homePage","visible","firstLevel","isRecordPage","pageList","Page","pageRead","page","pageCreate","pageUpdate","dispatch","pageDelete","pageLayoutID","pl","getByPageID","a","b","weight","_ref4$clear","pageLayoutListNamespace","PageLayout","pageLayoutRead","pageLayout","findByPageID","_arguments3","_ref9$force","oldItems","pageLayoutList","pageLayoutCreate","pageLayoutUpdate","pageLayoutDelete","_ref15","_ref16","_ref17","chartID","chartList","c","Chart","chartRead","chart","chartCreate","chartUpdate","chartDelete","recordID","findByIDs","IDs","flat","resolveRecords","recordIDs","query","join","recordList","deleted","updateRecords","records","record","r","existing","Set","has","SystemAPI","userID","findByUsername","username","user","userList","fetchUsers","resolveUsers","list","u","system","User","default","localeList","setRecordPagination","clearRecordPagination","recordPaginationUsable","setRecordPaginationUsable","previousPages","setPreviousPages","pushPreviousPages","popPreviousPages","previousPage","setPreviousPage","modalPreviousPages","pushModalPreviousPage","clearModalPreviousPage","popModalPreviousPage","recordPaginationIDs","getNextAndPrevRecord","recordIndex","indexOf","prev","next","loadPaginationRecords","prevPage","pageCursor","nextPage","cursors","_objectSpread","_toArray","flatMap","clearRecordIDs","value","shouldNotSavePage","name","layoutID","recordPageID","pop","Vuex","Store","modules","$ComposeAPI","languages","ui","rbac","cvStore","RBAC","wfPrompts","$AutomationAPI","ws","$socket","webapp","path","defaultProps","props","params","redirect","children","edit","mode","routes","options","el","template","mixins","corredor","data","i18nLoaded","created","on","$auth","vue","document","body","setAttribute","meta","preferredLanguage","changeLanguage","setHeader","theme","getElementsByTagName","bundleLoaderOpt","bundle","ctx","ComposeCtx","$invoker","authToken","accessToken","$store","$Reminder","init","assignedTo","loadBundle","automationList","excludeInvalid","makeAutomationScriptsRegistrator","TriggerComposeServerScriptOnManual","url","URL","href","searchParams","replace","toString","catch","startAuthenticationFlow","$on","JSON","parse","enqueueRaw","router","store","i18n","beforeEach","to","from","text","style","console","log","cfg"],"mappings":"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","file":"js/app.3f2278f2.js","sourcesContent":["// eslint-disable-next-line\nimport(/* webpackChunkName: 'corteza-base' */ './corteza-base')\n","var map = {\n\t\"./404.vue\": [\n\t\t\"8cdb\",\n\t\t\"vendors\",\n\t\t\"chunk-2d0e95df\"\n\t],\n\t\"./Admin/Charts/Edit.vue\": [\n\t\t\"ebd3\",\n\t\t\"vendors\",\n\t\t\"chunk-b2cfad3a\"\n\t],\n\t\"./Admin/Charts/List.vue\": [\n\t\t\"2ced\",\n\t\t\"vendors\",\n\t\t\"chunk-b93ddc76\"\n\t],\n\t\"./Admin/Index.vue\": [\n\t\t\"a66b\",\n\t\t\"vendors\",\n\t\t\"chunk-2d208a97\"\n\t],\n\t\"./Admin/Modules/Edit.vue\": [\n\t\t\"b030\",\n\t\t\"vendors\",\n\t\t\"chunk-6e5d85a7\",\n\t\t\"chunk-fefb35c0\"\n\t],\n\t\"./Admin/Modules/List.vue\": [\n\t\t\"6dc2\",\n\t\t\"vendors\",\n\t\t\"chunk-0e58c13d\"\n\t],\n\t\"./Admin/Modules/Records/List.vue\": [\n\t\t\"1e09\",\n\t\t\"vendors\",\n\t\t\"chunk-6e5d85a7\",\n\t\t\"chunk-321ed705\",\n\t\t\"chunk-7316ed78\",\n\t\t\"chunk-2d0b6853\"\n\t],\n\t\"./Admin/Modules/Records/View.vue\": [\n\t\t\"9ba5\",\n\t\t\"vendors\",\n\t\t\"chunk-6e5d85a7\",\n\t\t\"chunk-321ed705\",\n\t\t\"chunk-36da430e\"\n\t],\n\t\"./Admin/Pages/Builder.vue\": [\n\t\t\"f24e\",\n\t\t\"vendors\",\n\t\t\"chunk-6e5d85a7\",\n\t\t\"chunk-321ed705\",\n\t\t\"chunk-7316ed78\",\n\t\t\"chunk-1a5e5b08\"\n\t],\n\t\"./Admin/Pages/Edit.vue\": [\n\t\t\"0e21\",\n\t\t\"vendors\",\n\t\t\"chunk-fc3a6e2c\"\n\t],\n\t\"./Admin/Pages/List.vue\": [\n\t\t\"3ebe\",\n\t\t\"vendors\",\n\t\t\"chunk-fe28c0d0\"\n\t],\n\t\"./Layout.vue\": [\n\t\t\"88e9\",\n\t\t\"vendors\",\n\t\t\"chunk-07461abe\"\n\t],\n\t\"./Namespace/Edit.vue\": [\n\t\t\"98f8\",\n\t\t\"vendors\",\n\t\t\"chunk-b3d9be94\"\n\t],\n\t\"./Namespace/Index.vue\": [\n\t\t\"74d0\",\n\t\t\"vendors\",\n\t\t\"chunk-a7f8665c\"\n\t],\n\t\"./Namespace/List.vue\": [\n\t\t\"246b\",\n\t\t\"vendors\",\n\t\t\"chunk-1fc7ec5a\"\n\t],\n\t\"./Namespace/Manage.vue\": [\n\t\t\"728e\",\n\t\t\"vendors\",\n\t\t\"chunk-acfeb6c4\"\n\t],\n\t\"./Namespace/View.vue\": [\n\t\t\"5a04\",\n\t\t\"vendors\",\n\t\t\"chunk-4204f1df\"\n\t],\n\t\"./Public/Index.vue\": [\n\t\t\"cff1\",\n\t\t\"vendors\",\n\t\t\"chunk-2e0b364b\"\n\t],\n\t\"./Public/Pages/Records/View.vue\": [\n\t\t\"673a\",\n\t\t\"vendors\",\n\t\t\"chunk-6e5d85a7\",\n\t\t\"chunk-321ed705\",\n\t\t\"chunk-7316ed78\",\n\t\t\"chunk-6a0c8411\"\n\t],\n\t\"./Public/Pages/View.vue\": [\n\t\t\"f5e2\",\n\t\t\"vendors\",\n\t\t\"chunk-6e5d85a7\",\n\t\t\"chunk-321ed705\",\n\t\t\"chunk-7316ed78\",\n\t\t\"chunk-8634b16e\"\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(function() {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = \"1a5d\";\nmodule.exports = webpackAsyncContext;","var map = {\n\t\"./af\": \"2bfb\",\n\t\"./af.js\": \"2bfb\",\n\t\"./ar\": \"8e73\",\n\t\"./ar-dz\": \"a356\",\n\t\"./ar-dz.js\": \"a356\",\n\t\"./ar-kw\": \"423e\",\n\t\"./ar-kw.js\": \"423e\",\n\t\"./ar-ly\": \"1cfd\",\n\t\"./ar-ly.js\": \"1cfd\",\n\t\"./ar-ma\": \"0a84\",\n\t\"./ar-ma.js\": \"0a84\",\n\t\"./ar-ps\": \"4c98\",\n\t\"./ar-ps.js\": \"4c98\",\n\t\"./ar-sa\": \"8230\",\n\t\"./ar-sa.js\": \"8230\",\n\t\"./ar-tn\": \"6d83\",\n\t\"./ar-tn.js\": \"6d83\",\n\t\"./ar.js\": \"8e73\",\n\t\"./az\": \"485c\",\n\t\"./az.js\": \"485c\",\n\t\"./be\": \"1fc1\",\n\t\"./be.js\": \"1fc1\",\n\t\"./bg\": \"84aa\",\n\t\"./bg.js\": \"84aa\",\n\t\"./bm\": \"a7fa\",\n\t\"./bm.js\": \"a7fa\",\n\t\"./bn\": \"9043\",\n\t\"./bn-bd\": \"9686\",\n\t\"./bn-bd.js\": \"9686\",\n\t\"./bn.js\": \"9043\",\n\t\"./bo\": \"d26a\",\n\t\"./bo.js\": \"d26a\",\n\t\"./br\": \"6887\",\n\t\"./br.js\": \"6887\",\n\t\"./bs\": \"2554\",\n\t\"./bs.js\": \"2554\",\n\t\"./ca\": \"d716\",\n\t\"./ca.js\": \"d716\",\n\t\"./cs\": \"3c0d\",\n\t\"./cs.js\": \"3c0d\",\n\t\"./cv\": \"03ec\",\n\t\"./cv.js\": \"03ec\",\n\t\"./cy\": \"9797\",\n\t\"./cy.js\": \"9797\",\n\t\"./da\": \"0f14\",\n\t\"./da.js\": \"0f14\",\n\t\"./de\": \"b469\",\n\t\"./de-at\": \"b3eb\",\n\t\"./de-at.js\": \"b3eb\",\n\t\"./de-ch\": \"bb71\",\n\t\"./de-ch.js\": \"bb71\",\n\t\"./de.js\": \"b469\",\n\t\"./dv\": \"598a\",\n\t\"./dv.js\": \"598a\",\n\t\"./el\": \"8d47\",\n\t\"./el.js\": \"8d47\",\n\t\"./en-au\": \"0e6b\",\n\t\"./en-au.js\": \"0e6b\",\n\t\"./en-ca\": \"3886\",\n\t\"./en-ca.js\": \"3886\",\n\t\"./en-gb\": \"39a6\",\n\t\"./en-gb.js\": \"39a6\",\n\t\"./en-ie\": \"e1d3\",\n\t\"./en-ie.js\": \"e1d3\",\n\t\"./en-il\": \"7333\",\n\t\"./en-il.js\": \"7333\",\n\t\"./en-in\": \"ec2e\",\n\t\"./en-in.js\": \"ec2e\",\n\t\"./en-nz\": \"6f50\",\n\t\"./en-nz.js\": \"6f50\",\n\t\"./en-sg\": \"b7e9\",\n\t\"./en-sg.js\": \"b7e9\",\n\t\"./eo\": \"65db\",\n\t\"./eo.js\": \"65db\",\n\t\"./es\": \"898b\",\n\t\"./es-do\": \"0a3c\",\n\t\"./es-do.js\": \"0a3c\",\n\t\"./es-mx\": \"b5b7\",\n\t\"./es-mx.js\": \"b5b7\",\n\t\"./es-us\": \"55c9\",\n\t\"./es-us.js\": \"55c9\",\n\t\"./es.js\": \"898b\",\n\t\"./et\": \"ec18\",\n\t\"./et.js\": \"ec18\",\n\t\"./eu\": \"0ff2\",\n\t\"./eu.js\": \"0ff2\",\n\t\"./fa\": \"8df4\",\n\t\"./fa.js\": \"8df4\",\n\t\"./fi\": \"81e9\",\n\t\"./fi.js\": \"81e9\",\n\t\"./fil\": \"d69a\",\n\t\"./fil.js\": \"d69a\",\n\t\"./fo\": \"0721\",\n\t\"./fo.js\": \"0721\",\n\t\"./fr\": \"9f26\",\n\t\"./fr-ca\": \"d9f8\",\n\t\"./fr-ca.js\": \"d9f8\",\n\t\"./fr-ch\": \"0e49\",\n\t\"./fr-ch.js\": \"0e49\",\n\t\"./fr.js\": \"9f26\",\n\t\"./fy\": \"7118\",\n\t\"./fy.js\": \"7118\",\n\t\"./ga\": \"5120\",\n\t\"./ga.js\": \"5120\",\n\t\"./gd\": \"f6b4\",\n\t\"./gd.js\": \"f6b4\",\n\t\"./gl\": \"8840\",\n\t\"./gl.js\": \"8840\",\n\t\"./gom-deva\": \"aaf2\",\n\t\"./gom-deva.js\": \"aaf2\",\n\t\"./gom-latn\": \"0caa\",\n\t\"./gom-latn.js\": \"0caa\",\n\t\"./gu\": \"e0c5\",\n\t\"./gu.js\": \"e0c5\",\n\t\"./he\": \"c7aa\",\n\t\"./he.js\": \"c7aa\",\n\t\"./hi\": \"dc4d\",\n\t\"./hi.js\": \"dc4d\",\n\t\"./hr\": \"4ba9\",\n\t\"./hr.js\": \"4ba9\",\n\t\"./hu\": \"5b14\",\n\t\"./hu.js\": \"5b14\",\n\t\"./hy-am\": \"d6b6\",\n\t\"./hy-am.js\": \"d6b6\",\n\t\"./id\": \"5038\",\n\t\"./id.js\": \"5038\",\n\t\"./is\": \"0558\",\n\t\"./is.js\": \"0558\",\n\t\"./it\": \"6e98\",\n\t\"./it-ch\": \"6f12\",\n\t\"./it-ch.js\": \"6f12\",\n\t\"./it.js\": \"6e98\",\n\t\"./ja\": \"079e\",\n\t\"./ja.js\": \"079e\",\n\t\"./jv\": \"b540\",\n\t\"./jv.js\": \"b540\",\n\t\"./ka\": \"201b\",\n\t\"./ka.js\": \"201b\",\n\t\"./kk\": \"6d79\",\n\t\"./kk.js\": \"6d79\",\n\t\"./km\": \"e81d\",\n\t\"./km.js\": \"e81d\",\n\t\"./kn\": \"3e92\",\n\t\"./kn.js\": \"3e92\",\n\t\"./ko\": \"22f8\",\n\t\"./ko.js\": \"22f8\",\n\t\"./ku\": \"2421\",\n\t\"./ku-kmr\": \"7558\",\n\t\"./ku-kmr.js\": \"7558\",\n\t\"./ku.js\": \"2421\",\n\t\"./ky\": \"9609\",\n\t\"./ky.js\": \"9609\",\n\t\"./lb\": \"440c\",\n\t\"./lb.js\": \"440c\",\n\t\"./lo\": \"b29d\",\n\t\"./lo.js\": \"b29d\",\n\t\"./lt\": \"26f9\",\n\t\"./lt.js\": \"26f9\",\n\t\"./lv\": \"b97c\",\n\t\"./lv.js\": \"b97c\",\n\t\"./me\": \"293c\",\n\t\"./me.js\": \"293c\",\n\t\"./mi\": \"688b\",\n\t\"./mi.js\": \"688b\",\n\t\"./mk\": \"6909\",\n\t\"./mk.js\": \"6909\",\n\t\"./ml\": \"02fb\",\n\t\"./ml.js\": \"02fb\",\n\t\"./mn\": \"958b\",\n\t\"./mn.js\": \"958b\",\n\t\"./mr\": \"39bd\",\n\t\"./mr.js\": \"39bd\",\n\t\"./ms\": \"ebe4\",\n\t\"./ms-my\": \"6403\",\n\t\"./ms-my.js\": \"6403\",\n\t\"./ms.js\": \"ebe4\",\n\t\"./mt\": \"1b45\",\n\t\"./mt.js\": \"1b45\",\n\t\"./my\": \"8689\",\n\t\"./my.js\": \"8689\",\n\t\"./nb\": \"6ce3\",\n\t\"./nb.js\": \"6ce3\",\n\t\"./ne\": \"3a39\",\n\t\"./ne.js\": \"3a39\",\n\t\"./nl\": \"facd\",\n\t\"./nl-be\": \"db29\",\n\t\"./nl-be.js\": \"db29\",\n\t\"./nl.js\": \"facd\",\n\t\"./nn\": \"b84c\",\n\t\"./nn.js\": \"b84c\",\n\t\"./oc-lnc\": \"167b\",\n\t\"./oc-lnc.js\": \"167b\",\n\t\"./pa-in\": \"f3ff\",\n\t\"./pa-in.js\": \"f3ff\",\n\t\"./pl\": \"8d57\",\n\t\"./pl.js\": \"8d57\",\n\t\"./pt\": \"f260\",\n\t\"./pt-br\": \"d2d4\",\n\t\"./pt-br.js\": \"d2d4\",\n\t\"./pt.js\": \"f260\",\n\t\"./ro\": \"972c\",\n\t\"./ro.js\": \"972c\",\n\t\"./ru\": \"957c\",\n\t\"./ru.js\": \"957c\",\n\t\"./sd\": \"6784\",\n\t\"./sd.js\": \"6784\",\n\t\"./se\": \"ffff\",\n\t\"./se.js\": \"ffff\",\n\t\"./si\": \"eda5\",\n\t\"./si.js\": \"eda5\",\n\t\"./sk\": \"7be6\",\n\t\"./sk.js\": \"7be6\",\n\t\"./sl\": \"8155\",\n\t\"./sl.js\": \"8155\",\n\t\"./sq\": \"c8f3\",\n\t\"./sq.js\": \"c8f3\",\n\t\"./sr\": \"cf1e\",\n\t\"./sr-cyrl\": \"13e9\",\n\t\"./sr-cyrl.js\": \"13e9\",\n\t\"./sr.js\": \"cf1e\",\n\t\"./ss\": \"52bd\",\n\t\"./ss.js\": \"52bd\",\n\t\"./sv\": \"5fbd\",\n\t\"./sv.js\": \"5fbd\",\n\t\"./sw\": \"74dc\",\n\t\"./sw.js\": \"74dc\",\n\t\"./ta\": \"3de5\",\n\t\"./ta.js\": \"3de5\",\n\t\"./te\": \"5cbb\",\n\t\"./te.js\": \"5cbb\",\n\t\"./tet\": \"576c\",\n\t\"./tet.js\": \"576c\",\n\t\"./tg\": \"3b1b\",\n\t\"./tg.js\": \"3b1b\",\n\t\"./th\": \"10e8\",\n\t\"./th.js\": \"10e8\",\n\t\"./tk\": \"5aff\",\n\t\"./tk.js\": \"5aff\",\n\t\"./tl-ph\": \"0f38\",\n\t\"./tl-ph.js\": \"0f38\",\n\t\"./tlh\": \"cf75\",\n\t\"./tlh.js\": \"cf75\",\n\t\"./tr\": \"0e81\",\n\t\"./tr.js\": \"0e81\",\n\t\"./tzl\": \"cf51\",\n\t\"./tzl.js\": \"cf51\",\n\t\"./tzm\": \"c109\",\n\t\"./tzm-latn\": \"b53d\",\n\t\"./tzm-latn.js\": \"b53d\",\n\t\"./tzm.js\": \"c109\",\n\t\"./ug-cn\": \"6117\",\n\t\"./ug-cn.js\": \"6117\",\n\t\"./uk\": \"ada2\",\n\t\"./uk.js\": \"ada2\",\n\t\"./ur\": \"5294\",\n\t\"./ur.js\": \"5294\",\n\t\"./uz\": \"2e8c\",\n\t\"./uz-latn\": \"010e\",\n\t\"./uz-latn.js\": \"010e\",\n\t\"./uz.js\": \"2e8c\",\n\t\"./vi\": \"2921\",\n\t\"./vi.js\": \"2921\",\n\t\"./x-pseudo\": \"fd7e\",\n\t\"./x-pseudo.js\": \"fd7e\",\n\t\"./yo\": \"7f33\",\n\t\"./yo.js\": \"7f33\",\n\t\"./zh-cn\": \"5c3a\",\n\t\"./zh-cn.js\": \"5c3a\",\n\t\"./zh-hk\": \"49ab\",\n\t\"./zh-hk.js\": \"49ab\",\n\t\"./zh-mo\": \"3a6c\",\n\t\"./zh-mo.js\": \"3a6c\",\n\t\"./zh-tw\": \"90ea\",\n\t\"./zh-tw.js\": \"90ea\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"4678\";","import Vue from 'vue'\nimport { filters } from '@cortezaproject/corteza-vue'\n\nfor (const n in filters) {\n Vue.filter(n, filters[n])\n}\n","const stdEventTypes = [\n 'onManual',\n]\n\nconst recordPageEventTypes = [\n 'beforeFormSubmit',\n 'onFormSubmitError',\n 'afterFormSubmit',\n 'beforeDelete',\n 'afterDelete',\n 'beforeUndelete',\n 'afterUndelete',\n]\n\nexport default {\n compose: [\n ...stdEventTypes,\n ],\n 'compose:namespace': [\n ...stdEventTypes,\n ],\n 'compose:module': [\n ...stdEventTypes,\n ],\n 'compose:record': [\n ...stdEventTypes,\n ],\n 'ui:compose:record-page': [\n ...stdEventTypes,\n ...recordPageEventTypes,\n ],\n 'ui:compose:admin-record-page': [\n ...stdEventTypes,\n ...recordPageEventTypes,\n ],\n 'ui:compose': [\n ...stdEventTypes,\n ],\n}\n","import Vue from 'vue'\nimport BootstrapVue from 'bootstrap-vue'\nimport Router from 'vue-router'\nimport VueNativeSock from 'vue-native-websocket'\n\nimport { plugins, websocket } from '@cortezaproject/corteza-vue'\n\nimport pairs from './eventbus-pairs'\n\nconst notProduction = (process.env.NODE_ENV !== 'production')\nconst verboseUIHooks = window.location.search.includes('verboseUIHooks')\nconst verboseEventbus = window.location.search.includes('verboseEventbus')\n\nVue.use(BootstrapVue, {\n BToast: {\n // see https://bootstrap-vue.org/docs/components/toast#comp-ref-b-toast-props\n autoHideDelay: 7000,\n toaster: 'b-toaster-bottom-right',\n },\n})\nVue.use(Router)\n\nVue.use(plugins.Auth(), { app: 'compose' })\n\nVue.use(plugins.CortezaAPI('compose'))\nVue.use(plugins.CortezaAPI('system'))\nVue.use(plugins.CortezaAPI('federation'))\nVue.use(plugins.CortezaAPI('automation'))\n\nVue.use(plugins.EventBus(), {\n strict: notProduction,\n verbose: verboseEventbus,\n pairs,\n})\n\nVue.use(plugins.UIHooks(), {\n app: 'compose',\n verbose: verboseUIHooks,\n})\n\nVue.use(plugins.Settings, { api: Vue.prototype.$SystemAPI })\nVue.use(plugins.Reminder, { api: Vue.prototype.$SystemAPI })\n\nVue.use(VueNativeSock, websocket.endpoint(), websocket.config)\n","export default {\n methods: {\n toastSuccess (message, title = undefined) {\n if (title === undefined) {\n title = this.$t('notification:general.success')\n }\n\n this.toast(message, { title, variant: 'success' })\n },\n\n toastWarning (message, title = undefined) {\n if (title === undefined) {\n title = this.$t('notification:general.warning')\n }\n\n this.toast(message, { title, variant: 'warning' })\n },\n\n toastInfo (message, title = undefined) {\n if (title === undefined) {\n title = this.$t('notification:general.info')\n }\n\n this.toast(message, { title, variant: 'info' })\n },\n\n toastDanger (message, title = undefined) {\n if (title === undefined) {\n title = this.$t('notification:general.error')\n }\n\n this.toast(message, { title, variant: 'danger' })\n },\n\n toast (msg, opt = { variant: 'success' }) {\n this.$root.$bvToast.toast(msg, opt)\n },\n\n toastErrorHandler (opt) {\n if (typeof opt === 'string') {\n opt = { prefix: opt }\n }\n\n const { prefix, title } = opt\n\n return (err = {}) => {\n // only messages starting with 'notification:' or 'notification.' should be translated\n if (err.message && err.message.startsWith('notification')) {\n err.message = this.$t(`notification:${err.message.substring('notification.'.length)}`)\n }\n // all other messages should be shown as they are\n const msg = err.message ? `${prefix}: ${err.message}` : prefix\n this.toastDanger(msg, title)\n }\n },\n },\n}\n","export default {\n computed: {\n /**\n * Keep this inside methods otherwise it (no-value) gets caught by Vue\n * since settings are actually fetched a tad later...\n *\n * @returns {string[]}\n */\n resourceTranslationLanguages () {\n const ll = this.$Settings.get('resourceTranslations.languages')\n if (!ll || !Array.isArray(ll) || ll.length === 0) {\n return ['en']\n }\n\n return ll\n },\n\n /**\n * Resource translations are enabled when there is more than 1 language\n * @returns {boolean}\n */\n resourceTranslationsEnabled () {\n return this.resourceTranslationLanguages.length > 1\n },\n\n /**\n * 1st language is always default\n * @returns {*}\n */\n defaultTranslationLanguage () {\n return this.resourceTranslationLanguages[0]\n },\n\n currentLanguage () {\n return this.$i18n.i18next.language\n },\n\n },\n\n methods: {\n /**\n * Returns directionality of the page according to the language\n * - Arabic (ar)\n * - Hebrew (he)\n * - Pashto (pa)\n * - Persian (fa)\n * - Urdu (ur)\n * - Sindhi (sd)\n * @returns {string} rtl | ltr\n */\n textDirectionality (language = this.currentLanguage) {\n switch (language) {\n case 'ar':\n case 'he':\n case 'pa':\n case 'fa':\n case 'ur':\n case 'sd':\n return 'rtl'\n default:\n return 'ltr'\n }\n },\n },\n}\n","export default {\n methods: {\n getBreakpoint () {\n let breakpoint\n const width = window.innerWidth\n\n if (width < 576) {\n breakpoint = 'xs'\n } else if (width >= 576 && width < 768) {\n breakpoint = 'sm'\n } else if (width >= 768 && width < 992) {\n breakpoint = 'md'\n } else if (width >= 992 && width < 1200) {\n breakpoint = 'lg'\n } else if (width >= 1200 && width < 1400) {\n breakpoint = 'xl'\n } else {\n breakpoint = 'xxl'\n }\n\n return breakpoint\n },\n },\n}\n","import Vue from 'vue'\n\nimport toast from './toast'\nimport resourceTranslations from './resource-translations'\nimport uiHelpers from './uiHelpers'\n\nVue.mixin(toast)\nVue.mixin(resourceTranslations)\nVue.mixin(uiHelpers)\n","import { library } from '@fortawesome/fontawesome-svg-core'\nimport {\n faSort,\n faSortUp,\n faSortDown,\n faWrench,\n faGripVertical,\n faDownload,\n faFileExport,\n faSearch,\n faSearchPlus,\n faBars,\n faCloudDownloadAlt,\n faTimes,\n faCheck,\n faBold,\n faItalic,\n faUnderline,\n faStrikethrough,\n faQuoteRight,\n faCode,\n faListUl,\n faListOl,\n faOutdent,\n faIndent,\n faAlignLeft,\n faAlignCenter,\n faAlignRight,\n faAlignJustify,\n faLink,\n faRemoveFormat,\n faTasks,\n faParagraph,\n faTrashRestore,\n faChevronUp,\n faChevronDown,\n faChevronLeft,\n faChevronRight,\n faShareAlt,\n faExternalLinkAlt,\n faAngleUp,\n faAngleDown,\n faAngleLeft,\n faAngleRight,\n faAngleDoubleLeft,\n faAngleDoubleRight,\n faEllipsisH,\n faEyeSlash,\n faArrowRight,\n faFilter,\n faUserCog,\n faGripHorizontal,\n faCogs,\n faPen,\n faThumbtack,\n faPlus,\n faColumns,\n faSearchLocation,\n faMapMarkedAlt,\n faKey,\n faQuestion,\n faSync,\n faExclamationTriangle,\n faExclamationCircle,\n faEllipsisV,\n faLocationArrow,\n faTools,\n} from '@fortawesome/free-solid-svg-icons'\n\nimport {\n faEye,\n faFileAlt,\n faFileWord,\n faFilePdf,\n faFilePowerpoint,\n faFileArchive,\n faFileExcel,\n faFileVideo,\n faFileImage,\n faEdit,\n faTrashAlt,\n faBell,\n faClock,\n faSquare,\n faClone,\n faCopy,\n faPlusSquare,\n faEnvelope,\n faQuestionCircle,\n faSave,\n faUser,\n} from '@fortawesome/free-regular-svg-icons'\n\nlibrary.add(\n faSort,\n faSortUp,\n faSortDown,\n faWrench,\n faGripVertical,\n faDownload,\n faFileAlt,\n faFileWord,\n faFilePdf,\n faFilePowerpoint,\n faFileArchive,\n faFileExcel,\n faFileVideo,\n faFileImage,\n faFileExport,\n faEdit,\n faTrashAlt,\n faSearch,\n faSearchPlus,\n faBars,\n faCloudDownloadAlt,\n faTimes,\n faCheck,\n faBell,\n faClock,\n faSquare,\n faBold,\n faItalic,\n faUnderline,\n faStrikethrough,\n faQuoteRight,\n faCode,\n faListUl,\n faListOl,\n faOutdent,\n faIndent,\n faAlignLeft,\n faAlignCenter,\n faAlignRight,\n faAlignJustify,\n faLink,\n faRemoveFormat,\n faTasks,\n faParagraph,\n faClone,\n faCopy,\n faPlusSquare,\n faTrashRestore,\n faChevronUp,\n faChevronDown,\n faChevronLeft,\n faChevronRight,\n faShareAlt,\n faEnvelope,\n faAngleUp,\n faAngleDown,\n faAngleLeft,\n faAngleRight,\n faExternalLinkAlt,\n faAngleDoubleLeft,\n faAngleDoubleRight,\n faEllipsisH,\n faEyeSlash,\n faArrowRight,\n faUserCog,\n faQuestionCircle,\n faFilter,\n faSave,\n faGripHorizontal,\n faUser,\n faCogs,\n faPen,\n faThumbtack,\n faEye,\n faPlus,\n faColumns,\n faSearchLocation,\n faMapMarkedAlt,\n faKey,\n faQuestion,\n faExclamationTriangle,\n faSync,\n faEllipsisV,\n faLocationArrow,\n faTools,\n faExclamationCircle,\n)\n","import Vue from 'vue'\nimport { FontAwesomeIcon, FontAwesomeLayers } from '@fortawesome/vue-fontawesome'\nimport PortalVue from 'portal-vue'\nimport './faIcons'\nimport { components } from '@cortezaproject/corteza-vue'\n\n// import ECharts modules manually to reduce bundle size\nimport ECharts from 'vue-echarts'\nimport { use } from 'echarts/core'\nimport {\n CanvasRenderer,\n} from 'echarts/renderers'\nimport {\n LineChart,\n BarChart,\n PieChart,\n GaugeChart,\n RadarChart,\n FunnelChart,\n ScatterChart,\n} from 'echarts/charts'\nimport {\n TitleComponent,\n GridComponent,\n LegendComponent,\n TooltipComponent,\n VisualMapComponent,\n ToolboxComponent,\n DataZoomComponent,\n} from 'echarts/components'\n\nuse([\n BarChart,\n LineChart,\n PieChart,\n GaugeChart,\n RadarChart,\n FunnelChart,\n ScatterChart,\n CanvasRenderer,\n TitleComponent,\n GridComponent,\n TooltipComponent,\n LegendComponent,\n VisualMapComponent,\n ToolboxComponent,\n DataZoomComponent,\n])\n\nVue.component('e-charts', ECharts)\n\nVue.use(PortalVue)\nVue.component('font-awesome-icon', FontAwesomeIcon)\nVue.component('font-awesome-layers', FontAwesomeLayers)\nVue.component('c-permissions-button', components.CPermissionsButton)\nVue.component('c-input-confirm', components.CInputConfirm)\nVue.component('c-input-processing', components.CInputProcessing)\nVue.component('c-resource-list', components.CResourceList)\nVue.component('c-input-checkbox', components.CInputCheckbox)\nVue.component('c-button-submit', components.CButtonSubmit)\nVue.component('c-hint', components.CHint)\nVue.component('c-input-select', components.CInputSelect)\n","/**\n * Decodes special flag to help the backend understand language of the payload sent\n *\n * @param resourceTranslationLanguage\n * @returns {{headers: {'Content-Language'}}|{}}\n */\nexport function config ({ resourceTranslationLanguage }) {\n if (resourceTranslationLanguage === undefined) {\n return {}\n }\n\n return { headers: { 'Content-Language': resourceTranslationLanguage } }\n}\n","import { compose } from '@cortezaproject/corteza-js'\nimport * as request from '../lib/request'\n\nconst types = {\n loading: 'loading',\n loaded: 'loaded',\n pending: 'pending',\n completed: 'completed',\n updateSet: 'updateSet',\n removeFromSet: 'removeFromSet',\n clearSet: 'clearSet',\n}\n\nexport default function (ComposeAPI) {\n return {\n namespaced: true,\n\n state: {\n loading: false,\n pending: false,\n set: [],\n },\n\n getters: {\n loading: (state) => state.loading,\n\n pending: (state) => state.pending,\n\n getByID (state) {\n return (ID) => state.set.find(({ namespaceID }) => ID === namespaceID)\n },\n\n getByUrlPart (state) {\n return (urlPart) => state.set.find(({ slug, namespaceID }) => (urlPart === slug) || (urlPart === namespaceID))\n },\n\n set (state) {\n return state.set\n },\n },\n\n actions: {\n async load ({ commit, getters }, { force = false } = {}) {\n if (!force && getters.set.length > 1) {\n // When there's forced load, make sure we have more than 1 item in the set\n // in the scenario when user came to detail page first and has one item loaded\n // > 0 would not be sufficient.\n return new Promise((resolve) => resolve(getters.set))\n }\n\n commit(types.loading)\n commit(types.pending)\n // @todo expect issues with larger sets of namespaces because we do paging on the API\n return ComposeAPI.namespaceList({}).then(({ set, filter }) => {\n if (set && set.length > 0) {\n commit(types.updateSet, set.map(n => new compose.Namespace(n)))\n }\n\n return getters.set\n }).finally(() => {\n commit(types.loaded)\n commit(types.completed)\n })\n },\n\n async findByID ({ commit, getters }, { namespaceID, force = false } = {}) {\n if (!force) {\n const oldItem = getters.getByID(namespaceID)\n if (oldItem) {\n return new Promise((resolve) => resolve(oldItem))\n }\n }\n\n commit(types.pending)\n return ComposeAPI.namespaceRead({ namespaceID }).then(raw => {\n const namespace = new compose.Namespace(raw)\n commit(types.updateSet, [namespace])\n return namespace\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n async create ({ commit, state }, item) {\n commit(types.pending)\n return ComposeAPI.namespaceCreate(item, request.config(item)).then(raw => {\n const namespace = new compose.Namespace(raw)\n commit(types.updateSet, [namespace])\n return namespace\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n async clone ({ commit }, item) {\n commit(types.pending)\n return ComposeAPI.namespaceClone(item).then(raw => {\n const namespace = new compose.Namespace(raw)\n commit(types.updateSet, [namespace])\n return namespace\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n async update ({ commit }, item) {\n commit(types.pending)\n return ComposeAPI.namespaceUpdate(item, request.config(item)).then(raw => {\n const namespace = new compose.Namespace(raw)\n commit(types.updateSet, [namespace])\n return namespace\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n async delete ({ commit }, item) {\n commit(types.pending)\n return ComposeAPI.namespaceDelete(item).then(() => {\n commit(types.removeFromSet, [item])\n return true\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n clearSet ({ commit }) {\n commit(types.clearSet)\n },\n },\n\n mutations: {\n [types.loading] (state) {\n state.loading = true\n },\n\n [types.loaded] (state) {\n state.loading = false\n },\n\n [types.pending] (state) {\n state.pending = true\n },\n\n [types.completed] (state) {\n state.pending = false\n },\n\n [types.updateSet] (state, set) {\n set = set.map(i => Object.freeze(i))\n\n if (state.set.length === 0) {\n state.set = set\n return\n }\n\n set.forEach(newItem => {\n const oldIndex = state.set.findIndex(({ namespaceID }) => namespaceID === newItem.namespaceID)\n if (oldIndex > -1) {\n state.set.splice(oldIndex, 1, newItem)\n } else {\n state.set.push(newItem)\n }\n })\n },\n\n [types.removeFromSet] (state, removedSet) {\n (removedSet || []).forEach(removedItem => {\n const i = state.set.findIndex(({ namespaceID }) => namespaceID === removedItem.namespaceID)\n if (i > -1) {\n state.set.splice(i, 1)\n }\n })\n },\n\n [types.clearSet] (state) {\n state.pending = false\n state.set.splice(0)\n },\n },\n }\n}\n","import { compose } from '@cortezaproject/corteza-js'\nimport * as request from '../lib/request'\n\nconst types = {\n loading: 'loading',\n loaded: 'loaded',\n pending: 'pending',\n completed: 'completed',\n updateSet: 'updateSet',\n removeFromSet: 'removeFromSet',\n clearSet: 'clearSet',\n}\n\nexport default function (ComposeAPI) {\n return {\n namespaced: true,\n\n state: {\n loading: false,\n pending: false,\n set: [],\n },\n\n getters: {\n loading: (state) => state.loading,\n\n pending: (state) => state.pending,\n\n getByID (state) {\n return (ID) => state.set.find(({ moduleID }) => ID === moduleID)\n },\n\n set (state) {\n return state.set\n },\n },\n\n actions: {\n async load ({ commit, getters, rootGetters }, { namespace, clear = false, force = false } = {}) {\n if (clear) {\n commit(types.clearSet)\n }\n\n if (!force && getters.set.length > 1) {\n // When there's forced load, make sure we have more than 1 item in the set\n // in the scenario when user came to detail page first and has one item loaded\n // > 0 would not be sufficient.\n return new Promise((resolve) => resolve(getters.set))\n }\n\n commit(types.loading)\n commit(types.pending)\n return ComposeAPI.moduleList({ namespaceID: namespace.namespaceID, sort: 'name ASC' }).then(({ set, filter }) => {\n if (set && set.length > 0) {\n commit(types.updateSet, set.map(m => new compose.Module(m, namespace)))\n }\n\n return getters.set\n }).finally(() => {\n commit(types.loaded)\n commit(types.completed)\n })\n },\n\n async findByID ({ commit, getters }, { namespace, moduleID, force = false } = {}) {\n if (!force) {\n const oldItem = getters.getByID(moduleID)\n if (oldItem) {\n return new Promise((resolve) => resolve(oldItem))\n }\n }\n\n commit(types.pending)\n return ComposeAPI.moduleRead({ namespaceID: namespace.namespaceID, moduleID }).then(raw => {\n const module = new compose.Module(raw, namespace)\n commit(types.updateSet, [module])\n return module\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n async create ({ commit }, item) {\n commit(types.pending)\n return ComposeAPI.moduleCreate(item, request.config(item)).then(raw => {\n const module = new compose.Module(raw, raw.namespace)\n commit(types.updateSet, [module])\n return module\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n async update ({ commit }, item) {\n commit(types.pending)\n return ComposeAPI.moduleUpdate(item, request.config(item)).then(raw => {\n const module = new compose.Module(raw, raw.namespace)\n commit(types.updateSet, [module])\n return module\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n async delete ({ commit }, item) {\n commit(types.pending)\n return ComposeAPI.moduleDelete(item).then(() => {\n commit(types.removeFromSet, [item])\n return true\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n updateSet ({ commit }, module) {\n commit(types.updateSet, [module])\n },\n\n clearSet ({ commit }) {\n commit(types.clearSet)\n },\n },\n\n mutations: {\n [types.loading] (state) {\n state.loading = true\n },\n\n [types.loaded] (state) {\n state.loading = false\n },\n\n [types.pending] (state) {\n state.pending = true\n },\n\n [types.completed] (state) {\n state.pending = false\n },\n\n [types.updateSet] (state, set) {\n set = set.map(i => Object.freeze(i))\n\n if (state.set.length === 0) {\n state.set = set\n return\n }\n\n set.forEach(newItem => {\n const oldIndex = state.set.findIndex(({ moduleID }) => moduleID === newItem.moduleID)\n if (oldIndex > -1) {\n state.set.splice(oldIndex, 1, newItem)\n } else {\n state.set.push(newItem)\n }\n })\n },\n\n [types.removeFromSet] (state, removedSet) {\n (removedSet || []).forEach(removedItem => {\n const i = state.set.findIndex(({ moduleID }) => moduleID === removedItem.moduleID)\n if (i > -1) {\n state.set.splice(i, 1)\n }\n })\n },\n\n [types.clearSet] (state) {\n state.pending = false\n state.set.splice(0)\n },\n },\n }\n}\n","import { compose } from '@cortezaproject/corteza-js'\nimport * as request from '../lib/request'\n\nconst types = {\n loading: 'loading',\n loaded: 'loaded',\n pending: 'pending',\n completed: 'completed',\n updateSet: 'updateSet',\n removeFromSet: 'removeFromSet',\n clearSet: 'clearSet',\n}\n\nexport default function (ComposeAPI) {\n return {\n namespaced: true,\n\n state: {\n loading: false,\n pending: false,\n set: [],\n },\n\n getters: {\n loading: (state) => state.loading,\n\n pending: (state) => state.pending,\n\n getByID (state) {\n return (ID) => state.set.find(({ pageID }) => ID === pageID)\n },\n\n getByHandle (state) {\n return (handle) => state.set.find((p) => handle === p.handle)\n },\n\n homePage: (state) => state.set.find(p => p.visible && p.firstLevel && !p.isRecordPage),\n\n set (state) {\n return state.set\n },\n },\n\n actions: {\n async load ({ commit, getters }, { namespaceID, clear = false, force = false } = {}) {\n if (clear) {\n commit(types.clearSet)\n }\n\n if (!force && getters.set.length > 1) {\n // When there's forced load, make sure we have more than 1 item in the set\n // in the scenario when user came to detail page first and has one item loaded\n // > 0 would not be sufficient.\n return new Promise((resolve) => resolve(getters.set))\n }\n\n commit(types.loading)\n commit(types.pending)\n return ComposeAPI.pageList({ namespaceID, sort: 'weight ASC' }).then(({ set, filter }) => {\n if (set && set.length > 0) {\n commit(types.updateSet, set.map(p => new compose.Page(p)))\n }\n\n return getters.set\n }).finally(() => {\n commit(types.loaded)\n commit(types.completed)\n })\n },\n\n async findByID ({ commit, getters }, { namespaceID, pageID, force = false } = {}) {\n if (!force) {\n const oldItem = getters.getByID(pageID)\n if (oldItem) {\n return new Promise((resolve) => resolve(oldItem))\n }\n }\n\n commit(types.pending)\n return ComposeAPI.pageRead({ namespaceID, pageID }).then(raw => {\n const page = new compose.Page(raw)\n commit(types.updateSet, [page])\n return page\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n async create ({ commit }, item) {\n commit(types.pending)\n return ComposeAPI.pageCreate(item, request.config(item)).then(raw => {\n const page = new compose.Page(raw)\n commit(types.updateSet, [page])\n return page\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n async update ({ commit }, item) {\n commit(types.pending)\n return ComposeAPI.pageUpdate(item, request.config(item)).then(raw => {\n const page = new compose.Page(raw)\n commit(types.updateSet, [page])\n return page\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n async delete ({ commit, dispatch }, item) {\n commit(types.pending)\n return ComposeAPI.pageDelete(item).then(() => {\n commit(types.removeFromSet, [item])\n const { namespaceID } = item || {}\n if (namespaceID) {\n dispatch('load', { namespaceID: item.namespaceID, clear: true })\n }\n return true\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n updateSet ({ commit }, page) {\n commit(types.updateSet, [page])\n },\n\n clearSet ({ commit }) {\n commit(types.clearSet)\n },\n },\n\n mutations: {\n [types.loading] (state) {\n state.loading = true\n },\n\n [types.loaded] (state) {\n state.loading = false\n },\n\n [types.pending] (state) {\n state.pending = true\n },\n\n [types.completed] (state) {\n state.pending = false\n },\n\n [types.updateSet] (state, set) {\n set = set.map(i => Object.freeze(i))\n\n if (state.set.length === 0) {\n state.set = set\n return\n }\n\n set.forEach(newItem => {\n const oldIndex = state.set.findIndex(({ pageID }) => pageID === newItem.pageID)\n if (oldIndex > -1) {\n state.set.splice(oldIndex, 1, newItem)\n } else {\n state.set.push(newItem)\n }\n })\n },\n\n [types.removeFromSet] (state, removedSet) {\n (removedSet || []).forEach(removedItem => {\n const i = state.set.findIndex(({ pageID }) => pageID === removedItem.pageID)\n if (i > -1) {\n state.set.splice(i, 1)\n }\n })\n },\n\n [types.clearSet] (state) {\n state.pending = false\n state.set.splice(0)\n },\n },\n }\n}\n","import { compose } from '@cortezaproject/corteza-js'\nimport * as request from '../lib/request'\n\nconst types = {\n loading: 'loading',\n loaded: 'loaded',\n pending: 'pending',\n completed: 'completed',\n updateSet: 'updateSet',\n removeFromSet: 'removeFromSet',\n clearSet: 'clearSet',\n}\n\nexport default function (ComposeAPI) {\n return {\n namespaced: true,\n\n state: {\n loading: false,\n pending: false,\n set: [],\n },\n\n getters: {\n loading: (state) => state.loading,\n\n pending: (state) => state.pending,\n\n getByID (state) {\n return (ID) => state.set.find(({ pageLayoutID }) => ID === pageLayoutID)\n },\n\n getByHandle (state) {\n return (handle) => state.set.find((pl) => handle === pl.handle)\n },\n\n getByPageID (state) {\n return (ID) => state.set.filter(({ pageID }) => ID === pageID).sort((a, b) => a.weight - b.weight)\n },\n\n set (state) {\n return state.set\n },\n },\n\n actions: {\n async load ({ commit, getters }, { namespaceID, clear = false, force = false } = {}) {\n if (clear) {\n commit(types.clearSet)\n }\n\n if (!force && getters.set.length > 1) {\n return new Promise((resolve) => resolve(getters.set))\n }\n\n commit(types.loading)\n commit(types.pending)\n return ComposeAPI.pageLayoutListNamespace({ namespaceID, sort: 'weight ASC' }).then(({ set, filter }) => {\n if (set && set.length > 0) {\n commit(types.updateSet, set.map(pl => new compose.PageLayout(pl)))\n }\n\n return getters.set\n }).finally(() => {\n commit(types.loaded)\n commit(types.completed)\n })\n },\n\n async findByID ({ commit, getters }, { namespaceID, pageID, pageLayoutID, force = false } = {}) {\n if (!force) {\n const oldItem = getters.getByID(pageLayoutID)\n return new Promise((resolve) => resolve(oldItem))\n }\n\n commit(types.pending)\n return ComposeAPI.pageLayoutRead({ namespaceID, pageID, pageLayoutID }).then(pl => {\n const pageLayout = new compose.PageLayout(pl)\n\n commit(types.updateSet, [pageLayout])\n return pageLayout\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n async findByPageID ({ commit, getters }, { namespaceID, pageID, force = false } = {}) {\n if (!force) {\n const oldItems = getters.getByPageID(pageID)\n return new Promise((resolve) => resolve(oldItems))\n }\n\n commit(types.pending)\n return ComposeAPI.pageLayoutList({ namespaceID, pageID, sort: 'weight ASC' }).then(({ set }) => {\n commit(types.updateSet, set.map(pl => new compose.PageLayout(pl)))\n return set\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n async create ({ commit }, item) {\n commit(types.pending)\n return ComposeAPI.pageLayoutCreate(item, request.config(item)).then(pl => {\n const pageLayout = new compose.PageLayout(pl)\n commit(types.updateSet, [pageLayout])\n return pageLayout\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n async update ({ commit }, item) {\n commit(types.pending)\n return ComposeAPI.pageLayoutUpdate(item, request.config(item)).then(pl => {\n const pageLayout = new compose.PageLayout(pl)\n commit(types.updateSet, [pageLayout])\n return pageLayout\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n async delete ({ commit }, item) {\n commit(types.pending)\n return ComposeAPI.pageLayoutDelete(item).then(() => {\n commit(types.removeFromSet, [item])\n return true\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n updateSet ({ commit }, pageLayout) {\n commit(types.updateSet, [pageLayout])\n },\n\n clearSet ({ commit }) {\n commit(types.clearSet)\n },\n },\n\n mutations: {\n [types.loading] (state) {\n state.loading = true\n },\n\n [types.loaded] (state) {\n state.loading = false\n },\n\n [types.pending] (state) {\n state.pending = true\n },\n\n [types.completed] (state) {\n state.pending = false\n },\n\n [types.updateSet] (state, set) {\n set = set.map(i => Object.freeze(i))\n\n if (state.set.length === 0) {\n state.set = set\n return\n }\n\n set.forEach(newItem => {\n const oldIndex = state.set.findIndex(({ pageLayoutID }) => pageLayoutID === newItem.pageLayoutID)\n if (oldIndex > -1) {\n state.set.splice(oldIndex, 1, newItem)\n } else {\n state.set.push(newItem)\n }\n })\n },\n\n [types.removeFromSet] (state, removedSet) {\n (removedSet || []).forEach(removedItem => {\n const i = state.set.findIndex(({ pageLayoutID }) => pageLayoutID === removedItem.pageLayoutID)\n if (i > -1) {\n state.set.splice(i, 1)\n }\n })\n },\n\n [types.clearSet] (state) {\n state.pending = false\n state.set.splice(0)\n },\n },\n }\n}\n","import { compose } from '@cortezaproject/corteza-js'\n\nconst types = {\n loading: 'loading',\n loaded: 'loaded',\n pending: 'pending',\n completed: 'completed',\n updateSet: 'updateSet',\n removeFromSet: 'removeFromSet',\n clearSet: 'clearSet',\n}\n\nexport default function (ComposeAPI) {\n return {\n namespaced: true,\n\n state: {\n loading: false,\n pending: false,\n set: [],\n },\n\n getters: {\n loading: (state) => state.loading,\n\n pending: (state) => state.pending,\n\n getByID (state) {\n return (ID) => state.set.find(({ chartID }) => ID === chartID)\n },\n\n set (state) {\n return state.set\n },\n },\n\n actions: {\n async load ({ commit, getters }, { namespaceID, clear = false, force = false } = {}) {\n if (clear) {\n commit(types.clearSet)\n }\n\n if (!force && getters.set.length > 1) {\n // When there's forced load, make sure we have more than 1 item in the set\n // in the scenario when user came to detail page first and has one item loaded\n // > 0 would not be sufficient.\n return new Promise((resolve) => resolve(getters.set))\n }\n\n commit(types.loading)\n commit(types.pending)\n return ComposeAPI.chartList({ namespaceID, sort: 'name ASC' }).then(({ set, filter }) => {\n if (set && set.length > 0) {\n commit(types.updateSet, set.map(c => new compose.Chart(c)))\n }\n\n return getters.set\n }).finally(() => {\n commit(types.loaded)\n commit(types.completed)\n })\n },\n\n async findByID ({ commit, getters }, { namespaceID, chartID, force = false } = {}) {\n if (!force) {\n const oldItem = getters.getByID(chartID)\n if (oldItem) {\n return new Promise((resolve) => resolve(oldItem))\n }\n }\n\n commit(types.pending)\n return ComposeAPI.chartRead({ namespaceID, chartID }).then(raw => {\n const chart = new compose.Chart(raw)\n commit(types.updateSet, [chart])\n return chart\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n async create ({ commit }, item) {\n commit(types.pending)\n return ComposeAPI.chartCreate(item).then(raw => {\n const chart = new compose.Chart(raw)\n commit(types.updateSet, [chart])\n return chart\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n async update ({ commit }, item) {\n commit(types.pending)\n return ComposeAPI.chartUpdate(item).then(raw => {\n const chart = new compose.Chart(raw)\n commit(types.updateSet, [chart])\n return chart\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n async delete ({ commit }, item) {\n commit(types.pending)\n return ComposeAPI.chartDelete(item).then(() => {\n commit(types.removeFromSet, [item])\n return true\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n clearSet ({ commit }) {\n commit(types.clearSet)\n },\n },\n\n mutations: {\n [types.loading] (state) {\n state.loading = true\n },\n\n [types.loaded] (state) {\n state.loading = false\n },\n\n [types.pending] (state) {\n state.pending = true\n },\n\n [types.completed] (state) {\n state.pending = false\n },\n\n [types.updateSet] (state, set) {\n set = set.map(i => Object.freeze(i))\n\n if (state.set.length === 0) {\n state.set = set\n return\n }\n\n set.forEach(newItem => {\n const oldIndex = state.set.findIndex(({ chartID }) => chartID === newItem.chartID)\n if (oldIndex > -1) {\n state.set.splice(oldIndex, 1, newItem)\n } else {\n state.set.push(newItem)\n }\n })\n },\n\n [types.removeFromSet] (state, removedSet) {\n (removedSet || []).forEach(removedItem => {\n const i = state.set.findIndex(({ chartID }) => chartID === removedItem.chartID)\n if (i > -1) {\n state.set.splice(i, 1)\n }\n })\n },\n\n [types.clearSet] (state) {\n state.pending = false\n state.set.splice(0)\n },\n },\n }\n}\n","// Records in this store not classes, but raw objects instead\nconst types = {\n pending: 'pending',\n completed: 'completed',\n updateSet: 'updateSet',\n clearSet: 'clearSet',\n}\n\nexport default function (ComposeAPI) {\n return {\n namespaced: true,\n\n state: {\n pending: false,\n set: [],\n },\n\n getters: {\n pending: (state) => state.pending,\n\n findByID (state) {\n return (ID) => state.set.find(({ recordID }) => ID === recordID)\n },\n\n findByIDs (state) {\n return (IDs) => {\n IDs = IDs.flat()\n return state.set.filter(({ recordID }) => IDs.includes(recordID))\n }\n },\n\n set (state) {\n return state.set\n },\n },\n\n actions: {\n /**\n * Similar to fetchRecords but it only fetches unknown (not in set) ids\n */\n async resolveRecords ({ commit }, { namespaceID, moduleID, recordIDs }) {\n if (recordIDs.length === 0) {\n // save ourselves some work\n return\n }\n\n if (recordIDs.length === 0) {\n // Check for values again\n return\n }\n\n const query = recordIDs.map(recordID => `recordID = ${recordID}`).join(' OR ')\n\n return ComposeAPI.recordList({ namespaceID, moduleID, query, deleted: 1 }).then(({ set }) => {\n commit(types.updateSet, set)\n }).finally(() => {\n commit(types.completed)\n recordIDs = []\n })\n },\n\n updateRecords ({ commit }, records) {\n commit(types.updateSet, records)\n },\n\n push ({ commit }, record) {\n commit(types.updateSet, record)\n },\n\n clearSet ({ commit }) {\n commit(types.clearSet)\n },\n },\n\n mutations: {\n [types.pending] (state) {\n state.pending = true\n },\n\n [types.completed] (state) {\n state.pending = false\n },\n\n [types.updateSet] (state, set) {\n set = (Array.isArray(set) ? set : [set]).filter(r => !!r)\n\n if (state.set.length === 0) {\n state.set = set\n return\n }\n\n const existing = new Set(state.set.map(({ recordID }) => recordID))\n\n set.forEach(newItem => {\n const oldIndex = existing.has(newItem.recordID) ? state.set.findIndex(({ recordID }) => recordID === newItem.recordID) : -1\n if (oldIndex > -1) {\n state.set.splice(oldIndex, 1, newItem)\n } else {\n state.set.push(newItem)\n }\n })\n },\n\n [types.clearSet] (state) {\n state.pending = false\n state.set.splice(0)\n },\n },\n }\n}\n","import { system } from '@cortezaproject/corteza-js'\n\nconst types = {\n pending: 'pending',\n completed: 'completed',\n updateSet: 'updateSet',\n}\n\nexport default function (SystemAPI) {\n return {\n namespaced: true,\n\n state: {\n pending: false,\n set: [],\n },\n\n getters: {\n pending: (state) => state.pending,\n\n findByID (state) {\n return (ID) => state.set.find(({ userID }) => ID === userID)\n },\n\n findByUsername: (state) => (username) => {\n return state.set.filter(user => user.username === username)[0] || undefined\n },\n\n set (state) {\n return state.set\n },\n },\n\n actions: {\n async load ({ commit }, filter) {\n commit(types.pending)\n return SystemAPI.userList(filter).then(({ set }) => {\n commit(types.updateSet, set)\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n push ({ commit }, user) {\n commit(types.updateSet, user)\n },\n\n async fetchUsers ({ commit }, userID) {\n commit(types.pending)\n\n if (userID.length === 0) {\n return null\n }\n\n return SystemAPI.userList({ userID }).then(({ set }) => {\n commit(types.updateSet, set)\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n /**\n * Similar to fetchUsers but it only fetches unknown (not in set) ids\n */\n async resolveUsers ({ commit, getters }, list) {\n if (list.length === 0) {\n // save ourselves some work\n return\n }\n\n // exclude existing & make unique\n const existing = new Set(getters.set.map(({ userID }) => userID))\n list = [...new Set(list.filter(userID => userID && !existing.has(userID)))]\n\n if (list.length === 0) {\n // Check for values again\n return\n }\n\n return SystemAPI.userList({ userID: list }).then(({ set }) => {\n commit(types.updateSet, set)\n }).finally(() => {\n commit(types.completed)\n })\n },\n },\n\n mutations: {\n [types.pending] (state) {\n state.pending = true\n },\n\n [types.completed] (state) {\n state.pending = false\n },\n\n [types.updateSet] (state, set) {\n set = (Array.isArray(set) ? set : [set]).filter(u => !!u).map(i => new system.User(i))\n\n if (state.set.length === 0) {\n state.set = set\n return\n }\n\n set.forEach(newItem => {\n const oldIndex = state.set.findIndex(({ userID }) => userID === newItem.userID)\n if (oldIndex > -1) {\n state.set.splice(oldIndex, 1, newItem)\n } else {\n state.set.push(newItem)\n }\n })\n },\n },\n }\n}\n","const types = {\n pending: 'pending',\n completed: 'completed',\n updateSet: 'updateSet',\n}\n\nexport default function (SystemAPI) {\n return {\n namespaced: true,\n\n state: {\n pending: false,\n set: [],\n },\n\n getters: {\n pending: (state) => state.pending,\n default: (state) => state.set.length > 0 ? state.set[0] : undefined,\n set: (state) => state.set,\n },\n\n actions: {\n async load ({ commit }) {\n commit(types.pending)\n return SystemAPI.localeList().then(({ set }) => {\n commit(types.updateSet, set)\n }).finally(() => {\n commit(types.completed)\n })\n },\n },\n\n mutations: {\n [types.pending] (state) {\n state.pending = true\n },\n\n [types.completed] (state) {\n state.pending = false\n },\n\n [types.updateSet] (state, set) {\n state.set = set\n },\n },\n }\n}\n","const types = {\n loading: 'loading',\n loaded: 'loaded',\n pending: 'pending',\n completed: 'completed',\n setRecordPagination: 'setRecordPagination',\n clearRecordPagination: 'clearRecordPagination',\n recordPaginationUsable: 'recordPaginationUsable',\n setRecordPaginationUsable: 'setRecordPaginationUsable',\n previousPages: 'previousPages',\n setPreviousPages: 'setPreviousPages',\n pushPreviousPages: 'pushPreviousPages',\n popPreviousPages: 'popPreviousPages',\n previousPage: 'previousPage',\n setPreviousPage: 'setPreviousPage',\n modalPreviousPages: 'modalPreviousPages',\n pushModalPreviousPage: 'pushModalPreviousPage',\n clearModalPreviousPage: 'clearModalPreviousPage',\n popModalPreviousPage: 'popModalPreviousPage',\n}\n\nexport default function (ComposeAPI) {\n return {\n namespaced: true,\n\n state: {\n loading: false,\n pending: false,\n recordPaginationIDs: [],\n recordPaginationUsable: false,\n\n previousPages: [],\n previousPage: null,\n modalPreviousPages: [],\n },\n\n getters: {\n loading: (state) => state.loading,\n\n pending: (state) => state.pending,\n\n recordPaginationUsable: (state) => state.recordPaginationUsable,\n\n previousPages: (state) => state.previousPages,\n\n previousPage: (state) => state.previousPage,\n\n getNextAndPrevRecord: ({ recordPaginationIDs }) => (recordID) => {\n const recordIndex = recordPaginationIDs.indexOf(recordID)\n const prev = recordIndex >= 0 ? recordPaginationIDs[recordIndex - 1] : undefined\n const next = recordIndex >= 0 ? recordPaginationIDs[recordIndex + 1] : undefined\n\n return { prev, next }\n },\n\n modalPreviousPages: (state) => state.modalPreviousPages,\n },\n\n actions: {\n async loadPaginationRecords ({ commit }, { filter } = {}) {\n commit(types.pending)\n commit(types.recordPaginationUsable, true)\n\n const { prevPage, pageCursor, nextPage } = filter\n\n const cursors = new Set([prevPage, pageCursor, nextPage])\n\n return Promise.all([...cursors].map(pageCursor => {\n return ComposeAPI.recordList({ ...filter, pageCursor })\n .then(({ set }) => {\n return set.map(({ recordID }) => recordID)\n })\n })).then(([...records]) => {\n commit(types.setRecordPagination, [...new Set(records.flatMap(r => r))])\n }).finally(() => {\n commit(types.completed)\n })\n },\n\n clearRecordIDs ({ commit }) {\n commit(types.clearRecordPagination)\n },\n\n setRecordPaginationUsable ({ commit }, value) {\n commit(types.recordPaginationUsable, value)\n },\n\n setPreviousPages ({ commit }, value) {\n commit(types.setPreviousPages, value)\n },\n\n pushPreviousPages ({ commit }, value) {\n commit(types.pushPreviousPages, value)\n },\n\n popPreviousPages ({ commit, state }) {\n const previousPage = state.previousPages.slice(-1)[0]\n commit(types.popPreviousPages)\n return new Promise((resolve) => resolve(previousPage))\n },\n\n setPreviousPage ({ commit }, value) {\n // This prevents saving previous page for pages that causes incorrect redirection even though they are previous pages\n const shouldNotSavePage = value.name !== 'admin.pages.builder' &&\n !value.query.layoutID && value.name !== 'admin.modules.create' &&\n value.name !== 'admin.charts.create' &&\n value.name !== 'namespace.create'\n\n if (value && value.name && shouldNotSavePage) {\n commit(types.setPreviousPage, value)\n }\n },\n\n pushModalPreviousPage ({ commit, state }, value) {\n const previousPage = state.modalPreviousPages[state.modalPreviousPages.length - 1] || {}\n if (previousPage.recordID === value.recordID && previousPage.recordPageID === value.recordPageID) {\n return\n }\n\n commit(types.pushModalPreviousPage, value)\n },\n\n clearModalPreviousPage ({ commit }) {\n commit(types.clearModalPreviousPage)\n },\n\n popModalPreviousPage ({ commit, state }) {\n const previousPage = state.modalPreviousPages[state.modalPreviousPages.length - 2] || {}\n commit(types.popModalPreviousPage)\n return new Promise((resolve) => resolve(previousPage))\n },\n },\n\n mutations: {\n [types.loading] (state) {\n state.loading = true\n },\n\n [types.loaded] (state) {\n state.loading = false\n },\n\n [types.pending] (state) {\n state.pending = true\n },\n\n [types.completed] (state) {\n state.pending = false\n },\n\n [types.setRecordPagination] (state, recordIDs) {\n state.recordPaginationIDs = recordIDs\n },\n\n [types.clearRecordPagination] (state) {\n state.recordPaginationIDs = []\n },\n\n [types.recordPaginationUsable] (state, value) {\n state.recordPaginationUsable = value\n },\n\n [types.setPreviousPages] (state, value) {\n state.previousPages = value\n },\n\n [types.pushPreviousPages] (state, value) {\n state.previousPages.push(value)\n },\n\n [types.popPreviousPages] (state) {\n return state.previousPages.pop()\n },\n\n [types.setPreviousPage] (state, value) {\n state.previousPage = value\n },\n\n [types.pushModalPreviousPage] (state, value) {\n state.modalPreviousPages.push(value)\n },\n\n [types.clearModalPreviousPage] (state) {\n state.modalPreviousPages = []\n },\n\n [types.popModalPreviousPage] (state) {\n state.modalPreviousPages.pop()\n },\n },\n }\n}\n","import Vue from 'vue'\nimport Vuex from 'vuex'\n\nimport namespace from './namespace'\nimport module from './module'\nimport page from './page'\nimport pageLayout from './page-layout'\nimport chart from './chart'\nimport record from './record'\nimport user from './user'\nimport languages from './languages'\nimport ui from './ui'\nimport { store as cvStore } from '@cortezaproject/corteza-vue'\n\nVue.use(Vuex)\n\nexport default new Vuex.Store({\n strict: process.env.NODE_ENV !== 'production',\n\n modules: {\n namespace: namespace(Vue.prototype.$ComposeAPI),\n module: module(Vue.prototype.$ComposeAPI),\n page: page(Vue.prototype.$ComposeAPI),\n pageLayout: pageLayout(Vue.prototype.$ComposeAPI),\n chart: chart(Vue.prototype.$ComposeAPI),\n record: record(Vue.prototype.$ComposeAPI),\n user: user(Vue.prototype.$SystemAPI),\n languages: languages(Vue.prototype.$SystemAPI),\n ui: ui(Vue.prototype.$ComposeAPI),\n rbac: {\n namespaced: true,\n ...cvStore.RBAC(\n Vue.prototype.$ComposeAPI,\n Vue.prototype.$SystemAPI,\n ),\n },\n wfPrompts: {\n namespaced: true,\n ...cvStore.wfPrompts({\n api: Vue.prototype.$AutomationAPI,\n ws: Vue.prototype.$socket,\n webapp: 'compose',\n }),\n },\n },\n})\n","// public route builder/helper\nfunction r (name, path, component, defaultProps = {}) {\n return {\n path,\n name,\n component: () => import('./' + component + '.vue'),\n props: r => {\n return { ...defaultProps, ...r.params }\n },\n }\n}\n\nexport default [\n {\n name: 'root',\n path: '',\n component: () => import('./Layout.vue'),\n redirect: 'namespaces',\n children: [\n {\n name: 'namespaces',\n path: '/',\n component: () => import('./Namespace/Index.vue'),\n redirect: 'namespaces.list',\n children: [\n r('namespace.list', '/namespaces', 'Namespace/List'),\n r('namespace.manage', '/namespaces/manage', 'Namespace/Manage'),\n r('namespace.create', '/admin/namespace/create', 'Namespace/Edit'),\n r('namespace.edit', '/admin/namespace/edit/:namespaceID', 'Namespace/Edit'),\n {\n ...r('namespace', '/ns/:slug', 'Namespace/View'),\n redirect: { name: 'pages' },\n\n children: [\n {\n ...r('pages', 'pages', 'Public/Index'),\n children: [\n {\n ...r('page', ':pageID?', 'Public/Pages/View'),\n\n children: [\n r('page.record', 'record/:recordID', 'Public/Pages/Records/View', { edit: false }),\n r('page.record.edit', 'record/:recordID/edit', 'Public/Pages/Records/View', { edit: true }),\n r('page.record.create', 'record', 'Public/Pages/Records/View', { edit: true }),\n ],\n },\n ],\n },\n {\n ...r('admin', 'admin', 'Admin/Index'),\n redirect: { name: 'admin.modules' },\n\n children: [\n r('admin.modules', 'modules', 'Admin/Modules/List'),\n r('admin.modules.create', 'modules/new', 'Admin/Modules/Edit'),\n r('admin.modules.edit', 'modules/:moduleID/edit', 'Admin/Modules/Edit'),\n r('admin.modules.record.list', 'modules/:moduleID/record/list', 'Admin/Modules/Records/List'),\n r('admin.modules.record.view', 'modules/:moduleID/record/:recordID', 'Admin/Modules/Records/View', { edit: false }),\n r('admin.modules.record.create', 'modules/:moduleID/record', 'Admin/Modules/Records/View', { edit: true }),\n r('admin.modules.record.edit', 'modules/:moduleID/record/:recordID/edit', 'Admin/Modules/Records/View', { edit: true }),\n\n r('admin.pages', 'pages', 'Admin/Pages/List'),\n r('admin.pages.edit', 'pages/:pageID/edit', 'Admin/Pages/Edit'),\n r('admin.pages.builder', 'pages/:pageID/builder', 'Admin/Pages/Builder'),\n\n r('admin.charts', 'charts', 'Admin/Charts/List'),\n r('admin.charts.create', 'charts/new/:category?', 'Admin/Charts/Edit'),\n r('admin.charts.edit', 'charts/:chartID/edit', 'Admin/Charts/Edit'),\n\n r('admin.configuration', 'configuration', 'Admin/Configuration/Index'),\n ],\n },\n\n { path: '*', redirect: { name: 'pages' } },\n ],\n },\n ],\n },\n ],\n },\n\n // When everything else fails, go to namespaces\n { path: '*', redirect: { name: 'root' } },\n]\n","import Router from 'vue-router'\nimport routes from './views/routes'\n\nexport default new Router({\n mode: 'history',\n routes,\n})\n","import Vue from 'vue'\n\nimport './config-check'\nimport './console-splash'\n\nimport './filters'\nimport './plugins'\nimport './mixins'\nimport './components'\n\nimport store from './store'\nimport router from './router'\n\nimport { compose } from '@cortezaproject/corteza-js'\nimport { mixins, corredor, websocket, i18n } from '@cortezaproject/corteza-vue'\n\nconst notProduction = (process.env.NODE_ENV !== 'production')\nconst verboseEventbus = window.location.search.includes('verboseEventbus')\n\nexport default (options = {}) => {\n options = {\n el: '#app',\n name: 'compose',\n template: '',\n\n mixins: [\n mixins.corredor,\n ],\n\n data: () => ({\n loaded: false,\n i18nLoaded: false,\n }),\n\n async created () {\n this.$i18n.i18next.on('loaded', () => {\n this.i18nLoaded = true\n })\n\n this.websocket()\n\n return this.$auth.vue(this).handle().then(({ user }) => {\n // switch the page directionality on body based on language\n document.body.setAttribute('dir', this.textDirectionality(user.meta.preferredLanguage))\n\n if (user.meta.preferredLanguage) {\n // After user is authenticated, get his preferred language\n // and instruct i18next to change it\n this.$i18n.i18next.changeLanguage(user.meta.preferredLanguage)\n\n /**\n * Let the API know what kind of language do we accept and send\n */\n this.$ComposeAPI\n .setHeader('Accept-Language', user.meta.preferredLanguage)\n .setHeader('Content-Language', user.meta.preferredLanguage)\n }\n\n // switch the webapp theme based on user preference\n if (user.meta.theme) {\n document.getElementsByTagName('html')[0].setAttribute('data-color-mode', user.meta.theme)\n }\n\n // ref to vue is needed inside compose helper\n // load and register bundle and list of client/server scripts\n\n const bundleLoaderOpt = {\n // Name of the bundle to load\n bundle: 'compose',\n\n // Debug logging\n verbose: notProduction || verboseEventbus,\n\n // Context for exec function (client scripts only!)\n //\n // Extended with additional helpers\n ctx: new corredor.ComposeCtx(\n {\n $invoker: this.$auth.user,\n authToken: this.$auth.accessToken,\n },\n this,\n ),\n }\n\n // Load all pending prompts:\n this.$store.dispatch('wfPrompts/update')\n\n // Load effective permissions\n this.$store.dispatch('rbac/load')\n\n // Initializes reminders subsystems, do prefetch of all pending reminders\n this.$Reminder.init(this, { filter: { assignedTo: user.userID } })\n\n this.loadBundle(bundleLoaderOpt)\n .then(() => this.$ComposeAPI.automationList({ excludeInvalid: true }))\n .then(this.makeAutomationScriptsRegistrator(\n // compose specific handler that routes onManual events for server-scripts\n // to the proper endpoint on the API\n compose.TriggerComposeServerScriptOnManual(this.$ComposeAPI),\n ))\n\n this.$Settings.init({ api: this.$SystemAPI }).finally(() => {\n this.loaded = true\n\n // This bit removes code from the query params\n //\n // Vue router can't be used here because when on any child route there is no\n // guarantee that the route has loaded and so it may redirect us to the root page.\n //\n // @todo dig a bit deeper if there is a better vue-like solution; atm none were ok.\n const url = new URL(window.location.href)\n if (url.searchParams.get('code')) {\n url.searchParams.delete('code')\n window.location.replace(url.toString())\n }\n })\n }).catch((err) => {\n if (err instanceof Error && err.message === 'Unauthenticated') {\n // user not logged-in,\n // start with authentication flow\n this.$auth.startAuthenticationFlow()\n return\n }\n\n throw err\n })\n },\n\n methods: {\n /**\n * Registers event listener for websocket messages and\n * routes them depending on their type\n */\n websocket () {\n // cross-link auth & websocket so that ws can use the right access token\n\n websocket.init(this)\n\n // register event listener for workflow messages\n this.$on('websocket-message', ({ data }) => {\n const msg = JSON.parse(data)\n switch (msg['@type']) {\n case 'workflowSessionPrompt':\n this.$store.dispatch('wfPrompts/new', msg['@value'])\n break\n\n case 'workflowSessionResumed':\n this.$store.dispatch('wfPrompts/clear', msg['@value'])\n break\n\n case 'reminder':\n this.$Reminder.enqueueRaw(msg['@value'])\n break\n\n case 'error':\n this.toastDanger('Websocket message with error', msg['@value'])\n }\n })\n },\n },\n\n router,\n store,\n i18n: i18n(Vue,\n { app: 'corteza-webapp-compose' },\n 'block',\n 'chart',\n 'field',\n 'general',\n 'module',\n 'namespace',\n 'navigation',\n 'notification',\n 'onboarding',\n 'page',\n 'permissions',\n 'preview',\n 'sidebar',\n 'resource-translator',\n ),\n\n // Any additional options we want to merge\n ...options,\n }\n\n options.router.beforeEach((to, from, next) => {\n store.dispatch('ui/setPreviousPage', from)\n\n next()\n })\n\n return new Vue(options)\n}\n","import app from './app'\nimport './themes'\n\napp()\n","/* eslint-disable no-undef */\nconst text = `%c${WEBAPP || 'Corteza Webapp'}, version: ${VERSION}, build time: ${BUILD_TIME}`\nconst style = 'background-color: #1397CB; color: white; padding: 3px 10px; border: 1px solid black; font: Courier'\n\n/* eslint-disable no-console */\nconsole.log(text, style)\n","[\n 'CortezaAPI',\n].forEach((cfg) => {\n if (window[cfg] === undefined) {\n throw new Error(`Missing or invalid configuration. \n Make sure there is a public/config.js configuration file with window.${cfg} entry.`)\n }\n})\n"],"sourceRoot":""}