{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/App.vue?4b66","webpack:///./src/components/InlineGroup.vue?537c","webpack:///./src/views/MainView.vue?6541","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/components/FormView.vue?274f","webpack:///./src/components/List.vue?2142","webpack:///./src/components/DataVisualizer.vue?f009","webpack:///./src/components/Login.vue?38b4","webpack:///./src/components/SchemaView.vue?d4b7","webpack:///./src/components/RawJson.vue?36b0","webpack:///./src/App.vue?244e","webpack:///./src/services/communicator-service.ts","webpack:///./src/store/action-type.ts","webpack:///./src/store/fetch-state.ts","webpack:///./src/store/mutation-type.ts","webpack:///./src/App.vue?23f5","webpack:///./src/services/soya-service.ts","webpack:///./src/components/Spinner.vue?16fc","webpack:///./src/components/Spinner.vue","webpack:///./src/components/Spinner.vue?57a8","webpack:///./src/components/Spinner.vue?72fe","webpack:///./src/components/NavBar.vue?48c7","webpack:///./src/views/MainView.vue?6939","webpack:///./src/store/store.ts","webpack:///./src/components/DataVisualizer.vue?bed7","webpack:///./src/components/RawData.vue?1a8d","webpack:///./src/components/RawJson.vue?0bed","webpack:///./src/components/RawJson.vue","webpack:///./src/components/RawJson.vue?71a2","webpack:///./src/components/RawJson.vue?f524","webpack:///./src/components/Button.vue?b276","webpack:///./src/components/Button.vue","webpack:///./src/components/Button.vue?cf56","webpack:///./src/components/Button.vue?54ff","webpack:///./src/components/RawData.vue","webpack:///./src/components/RawData.vue?b10a","webpack:///./src/components/RawData.vue?5908","webpack:///./src/components/FormEditView.vue?bb04","webpack:///./src/components/FormView.vue?414a","webpack:///./src/components/FormView.vue","webpack:///./src/components/FormView.vue?954b","webpack:///./src/components/FormView.vue?dc3c","webpack:///./src/components/InlineGroup.vue?0421","webpack:///./src/components/InlineGroup.vue","webpack:///./src/utils/i18n.ts","webpack:///./src/utils/vue.ts","webpack:///./src/utils/deflate.ts","webpack:///./src/utils/index.ts","webpack:///./src/services/config-service.ts","webpack:///./src/utils/actions.ts","webpack:///./src/components/FormEditView.vue","webpack:///./src/components/FormEditView.vue?d761","webpack:///./src/components/FormEditView.vue?496e","webpack:///./src/components/DataVisualizer.vue","webpack:///./src/components/DataVisualizer.vue?6aad","webpack:///./src/components/DataVisualizer.vue?aca8","webpack:///./src/components/SchemaView.vue?95c1","webpack:///./src/components/List.vue?0bcf","webpack:///./src/components/List.vue","webpack:///./src/components/List.vue?50af","webpack:///./src/components/List.vue?01c8","webpack:///./src/components/ChartVisualizer.vue?fbb8","webpack:///./src/utils/evaluator.ts","webpack:///./src/components/ChartVisualizer.vue","webpack:///./src/router/routes.ts","webpack:///./src/components/ChartVisualizer.vue?f3da","webpack:///./src/components/ChartVisualizer.vue?77b6","webpack:///./src/components/SchemaView.vue","webpack:///./src/components/SchemaView.vue?d0cc","webpack:///./src/components/SchemaView.vue?3b5d","webpack:///./src/components/RepoView.vue?a8a6","webpack:///./src/components/RepoView.vue","webpack:///./src/components/RepoView.vue?924e","webpack:///./src/components/RepoView.vue?b869","webpack:///./src/views/MainView.vue","webpack:///./src/views/MainView.vue?fab8","webpack:///./src/views/MainView.vue?6994","webpack:///./src/views/SchemaView.vue?fa5a","webpack:///./src/views/SchemaView.vue","webpack:///./src/views/SchemaView.vue?6c98","webpack:///./src/views/SchemaView.vue?e25e","webpack:///./src/views/ItemView.vue?e225","webpack:///./src/views/ItemView.vue","webpack:///./src/views/ItemView.vue?d815","webpack:///./src/views/ItemView.vue?5951","webpack:///./src/router/index.ts","webpack:///./src/components/NavBar.vue","webpack:///./src/components/NavBar.vue?0756","webpack:///./src/components/NavBar.vue?bca4","webpack:///./src/components/Login.vue?935a","webpack:///./src/components/Login.vue","webpack:///./src/components/Login.vue?f6a6","webpack:///./src/components/Login.vue?3ca4","webpack:///./src/App.vue","webpack:///./src/App.vue?198c","webpack:///./src/App.vue?315a","webpack:///./src/main.ts","webpack:///./src/components/NavBar.vue?0529","webpack:///./src/components/FormEditView.vue?476a","webpack:///./src/components/RawData.vue?0110"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","map","webpackContext","req","id","webpackContextResolve","e","Error","code","keys","resolve","ActionType","FetchState","MutationType","_vm","this","_h","$createElement","_c","_self","attrs","isUiFluid","encryptionSupport","title","description","vaultUrl","staticClass","_v","_s","message","vaultSupport","scopes","identityProviders","on","logIn","tryInitializeVaultifier","staticRenderFns","setInstance","instance","getInstance","soya","variant","small","extend","props","default","component","directives","rawName","expression","modifiers","goHome","version","encryptionIcon","_e","url","toggleUiFluid","actions","workingAction","scopedSlots","_u","fn","gearAnimation","workingActionTitle","proxy","_l","act","executeAction","handleActivateTab","handleShowEditView","selectedVaultItem","selectVaultItem","doFetch","commit","asyncFunc","setState","setFetchState","commitObj","state","FETCHING","SET_FETCH_STATE","SUCCESS","ERROR","use","Store","repo","all","NONE","schemaDRI","current","undefined","vaultItem","allState","currentState","paging","ui","isFluid","mutations","payload","SET_REPOS","SET_CURRENT_SCHEMA","SET_SCHEMA_DRIS","SET_VAULT_ITEMS","SET_VAULT_ITEM","SET_SCHEMA_DRI_TITLE","item","find","x","dri","SET_VAULT_ITEMS_PAGING","SET_UI_IS_FLUID","RESET_VAULT_ITEMS","UPDATE_VAULT_ITEM","dispatch","updateItem","FETCH_VAULT_ITEM","postItem","DELETE_VAULT_ITEM","deleteItem","FETCH_SCHEMA_DRIS","getSchemas","FETCH_SCHEMAS_TITLE","store","FETCH_REPOS","getRepos","FETCH_VAULT_ITEMS","page","size","schema","fetchContent","pull","doc","getSparqlBuilder","sparql","query","bindings","fromRepo","identifier","getItems","getMetaItems","items","getItem","info","infos","TOGGLE_UI_IS_FLUID","model","callback","$$v","activeTabIndex","isSaving","saveVaultItem","schemaDri","_m","meta","isEditable","save","editableData","jsonContent","computed","JSON","stringify","trim","computedType","click","type","_t","String","methods","$emit","arguments","components","RawJson","CustomButton","Spinner","Boolean","created","resetEditableData","console","log","watch","parse","copy","raw","isEncrypted","allowSelectSchema","showTypeahead","hasSelectedStructure","$event","selectedStructureName","preventDefault","suggestItems","selectFromTypeahead","editableText","iFrameSrc","saveEdit","action","isExecutingAction","cancelEdit","ref","formData","selectedStructure","onDataChange","onIFrameSrcChange","class","isLoading","hasSchemaDri","selectedLanguage","selectedTag","required","mounted","addEventListener","evt","source","iframe","style","height","documentHeight","reload","URL","params","searchParams","append","toString","contentWindow","postMessage","$refs","script","language","beforeCreate","getTranslation","obj","zip_free_queue","zip_qhead","zip_qtail","zip_initflag","zip_outcnt","zip_outoff","zip_complete","zip_window","zip_d_buf","zip_l_buf","zip_prev","zip_bi_buf","zip_bi_valid","zip_block_start","zip_ins_h","zip_hash_head","zip_prev_match","zip_match_available","zip_match_length","zip_prev_length","zip_strstart","zip_match_start","zip_eofile","zip_lookahead","zip_max_chain_length","zip_max_lazy_match","zip_compr_level","zip_good_match","zip_nice_match","zip_dyn_ltree","zip_dyn_dtree","zip_static_ltree","zip_static_dtree","zip_bl_tree","zip_l_desc","zip_d_desc","zip_bl_desc","zip_bl_count","zip_heap","zip_heap_len","zip_heap_max","zip_depth","zip_length_code","zip_dist_code","zip_base_length","zip_base_dist","zip_flag_buf","zip_last_lit","zip_last_dist","zip_last_flags","zip_flags","zip_flag_bit","zip_opt_len","zip_static_len","zip_deflate_data","zip_deflate_pos","zip_WSIZE","zip_STORED_BLOCK","zip_STATIC_TREES","zip_DYN_TREES","zip_DEFAULT_LEVEL","zip_FULL_SEARCH","zip_INBUFSIZ","zip_INBUF_EXTRA","zip_OUTBUFSIZ","zip_window_size","zip_MIN_MATCH","zip_MAX_MATCH","zip_BITS","zip_LIT_BUFSIZE","zip_HASH_BITS","zip_DIST_BUFSIZE","zip_HASH_SIZE","zip_HASH_MASK","zip_WMASK","zip_NIL","zip_TOO_FAR","zip_MIN_LOOKAHEAD","zip_MAX_DIST","zip_SMALLEST","zip_MAX_BITS","zip_MAX_BL_BITS","zip_LENGTH_CODES","zip_LITERALS","zip_END_BLOCK","zip_L_CODES","zip_D_CODES","zip_BL_CODES","zip_REP_3_6","zip_REPZ_3_10","zip_REPZ_11_138","zip_HEAP_SIZE","zip_H_SHIFT","parseInt","zip_outbuf","zip_DeflateCT","fc","dl","zip_DeflateTreeDesc","dyn_tree","static_tree","extra_bits","extra_base","elems","max_length","max_code","zip_DeflateConfiguration","a","b","good_length","max_lazy","nice_length","max_chain","zip_DeflateBuffer","next","len","ptr","Array","off","zip_extra_lbits","zip_extra_dbits","zip_extra_blbits","zip_bl_order","zip_configuration_table","zip_deflate_start","level","zip_reuse_queue","zip_new_queue","zip_head1","zip_head2","val","zip_put_byte","zip_qoutbuf","zip_put_short","w","zip_INSERT_STRING","zip_SEND_CODE","tree","zip_send_bits","zip_D_CODE","dist","zip_SMALLER","zip_read_buff","buff","offset","charCodeAt","zip_lm_init","zip_fill_window","zip_longest_match","cur_match","matchp","chain_length","scanp","best_len","limit","strendp","scan_end1","scan_end","more","zip_deflate_fast","flush","zip_ct_tally","zip_flush_block","zip_deflate_better","zip_init_deflate","zip_ct_init","zip_deflate_internal","buff_size","zip_qcopy","bits","zip_gen_codes","zip_bi_reverse","zip_init_block","zip_pqdownheap","k","v","zip_gen_bitlen","desc","h","xbits","f","extra","base","stree","overflow","next_code","zip_build_tree","node","xnew","zip_scan_tree","curlen","prevlen","nextlen","count","max_count","min_count","zip_send_tree","zip_build_bl_tree","max_blindex","zip_send_all_trees","lcodes","dcodes","blcodes","rank","eof","opt_lenb","static_lenb","stored_len","zip_bi_windup","zip_compress_block","lc","dcode","out_length","in_length","ltree","dtree","lx","dx","fx","flag","zip_Buf_size","res","q","tryGet","path","reduce","prev","curr","config","configFilename","fetch","json","ConfigService","INSTANCE","fetchExternalConfig","vaultifier","vue","method","usesAuth","baseUrlPlaceholder","vaultItemIdPlaceholder","replace","returnValue","open","indexOf","vaultifierUrl","post","put","headers","status","$bvModal","msgBoxOk","actionsObj","arr","FormView","InlineGroup","hasCancel","selectStructure","Promise","error","structure","$store","event","src","filter","handler","immediate","showRawView","RawData","FormEditView","hasSchema","onComplete","isSchemaListLoading","fetchSchemas","selectedSchema","selectSchema","selectedTabIndex","isVaultItemListLoading","totalVaultItems","currentVaultPage","vaultPageItems","fetchVaultItems","addItem","isDeleteButtonDisabled","deleteSelectedVaultItem","getListTitle","dataItemCount","dataItemPage","vaultItems","saveMessage","editViewSchemaDri","_showEditView","refresh","totalItems","pageItems","inputPageKeydown","inputPage","paginationPageChange","Number","currentPage","changePage","_","scaleXExpression","row","idx","$set","addRow","canRemoveRow","removeRow","computeChartData","chartData","isObject","makeSafeObject","left","right","exp","eval","Date","Intl","DateTimeFormat","dateStyle","timeStyle","format","floatVal","parseFloat","isNaN","RoutePath","RouteParams","zingchart","rows","labels","scaleX","series","evalTypeAgnostic","values","initialize","selectedListLabelTemplate","showEditView","editViewSchema","List","ChartVisualizer","refreshObj","isChart","fetchObj","response","vaultItemId","show","compile","schemaDRIs","hasSelectedVaultItem","hasSelectedSchema","isRepoListLoading","fetchRepos","selectedRepo","selectRepo","repos","DataVisualizer","SchemaView","RepoView","hasRepoSupport","getVaultSupport","isVaultItemLoading","isShown","itemId","routes","MAIN_VIEW","MainView","SCHEMA_VIEW","location","href","SCHEMA_DRI","ITEM_VIEW","ItemView","ITEM_ID","router","settingsActions","$router","supportsEncryption","supportsDecryption","submitForm","appKey","appSecret","scopeOptions","scope","idp","authority","imageUrl","getIdentityProviderTitle","identityProvider","text","isLoginData","Login","NavBar","isInitializing","isLoggedIn","vaultInfo","currentRoute","credentials","baseUrl","clientId","vw","urls","setCredentials","oAuthType","isAuthenticated","setEnd2EndEncryption","getVaultInfo","hasMessage","isLoginFormShowed","oAuth","document","VueBootstrapTypeahead","render","App","$mount"],"mappings":"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","file":"js/app.75d00f2b.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([1,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=8af996cc&scoped=true&lang=css&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InlineGroup.vue?vue&type=style&index=0&id=65fc9698&scoped=true&lang=css&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainView.vue?vue&type=style&index=0&id=4ff6a4af&scoped=true&lang=css&\"","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-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.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\": \"cf755\",\n\t\"./tlh.js\": \"cf755\",\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\";","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormView.vue?vue&type=style&index=0&id=5972b6fe&scoped=true&lang=css&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./List.vue?vue&type=style&index=0&id=3857e62a&scoped=true&lang=css&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DataVisualizer.vue?vue&type=style&index=0&id=ccdc9328&scoped=true&lang=css&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=style&index=0&id=c0fc6e04&scoped=true&lang=css&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SchemaView.vue?vue&type=style&index=0&id=14577010&scoped=true&lang=css&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RawJson.vue?vue&type=style&index=0&id=75c3de40&scoped=true&lang=css&\"","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=1&lang=css&\"","import { Vaultifier } from 'vaultifier';\n\nlet vaultifier: Vaultifier;\n\nexport const setInstance = (instance: Vaultifier): Vaultifier => vaultifier = instance;\nexport const getInstance = (): Vaultifier => vaultifier;","export enum ActionType {\n DELETE_VAULT_ITEM = 'deleteSelectedVaultItem',\n FETCH_SCHEMA_DRIS = 'fetchSchemaDRIs',\n FETCH_SCHEMAS_TITLE = 'fetchSchemasTitle',\n FETCH_REPOS = 'fetchRepos',\n FETCH_VAULT_ITEMS = 'fetchVaultItems',\n FETCH_VAULT_ITEM = 'fetchVaultItem',\n RESET_VAULT_ITEMS = 'resetVaultItems',\n TOGGLE_UI_IS_FLUID = 'toggleUiIsFluid',\n UPDATE_VAULT_ITEM = 'updateVaultItem',\n}\n","export enum FetchState {\n NONE = 'none',\n FETCHING = 'fetching',\n SUCCESS = 'success',\n ERROR = 'error',\n}","export enum MutationType {\n SET_CURRENT_SCHEMA = 'setCurrentSchema',\n SET_SCHEMA_DRIS = 'setSchemaDRIs',\n SET_SCHEMA_DRI_TITLE = 'setSchemaDRITitle',\n SET_REPOS = 'setRepos',\n SET_VAULT_ITEMS = 'setVaultItems',\n SET_VAULT_ITEM = 'setVaultItem',\n SET_FETCH_STATE = 'setSchemaDRIFetchState',\n SET_VAULT_ITEMS_PAGING = 'setVaultItemsPaging',\n SET_UI_IS_FLUID = 'setUiIsFluid',\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b-container',{attrs:{\"fluid\":_vm.isUiFluid}},[_c('nav-bar',{attrs:{\"encryptionSupport\":_vm.encryptionSupport,\"title\":_vm.title,\"description\":_vm.description,\"url\":_vm.vaultUrl}})],1),(_vm.isInitializing)?_c('b-container',[_c('div',{staticClass:\"jumbotron\"},[_c('span',{staticClass:\"lead\"},[_vm._v(\" \"+_vm._s(_vm.title)+\" \"),_c('span',{staticClass:\"text-muted\"},[_vm._v(\"is loading \"),_c('spinner')],1)])])]):(_vm.hasMessage)?_c('b-container',[_c('div',{staticClass:\"jumbotron\"},[_c('h1',{staticClass:\"display-5\"},[_vm._v(\"Buddy Message\")]),_c('p',{staticClass:\"lead\"},[_vm._v(_vm._s(_vm.message))])])]):(_vm.isLoginFormShowed)?_c('b-container',[_c('login',{attrs:{\"scopes\":_vm.vaultSupport.scopes,\"identityProviders\":_vm.identityProviders},on:{\"login\":_vm.logIn,\"useIdentityProvider\":_vm.tryInitializeVaultifier}})],1):_c('router-view')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { Soya } from \"soya-js\";\n\n// soya is created only once\n// this way we can make use of its inbuilt caching\nexport const soya = new Soya();","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-spinner',{attrs:{\"type\":\"grow\",\"variant\":_vm.variant,\"small\":_vm.small}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\nimport Vue from 'vue'\nexport default Vue.extend({\n props: {\n variant: {\n default: 'dark',\n },\n small: {\n default: false,\n }\n }\n});\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Spinner.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Spinner.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Spinner.vue?vue&type=template&id=711cc042&\"\nimport script from \"./Spinner.vue?vue&type=script&lang=ts&\"\nexport * from \"./Spinner.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-navbar',{attrs:{\"toggleable\":\"lg\",\"type\":\"dark\",\"variant\":\"dark\"}},[_c('b-navbar-brand',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.bottomright\",value:(_vm.description),expression:\"description\",modifiers:{\"hover\":true,\"bottomright\":true}}],attrs:{\"href\":\"#\"},on:{\"click\":_vm.goHome}},[_vm._v(_vm._s(_vm.title))]),_c('b-nav-text',[_vm._v(\" v\"+_vm._s(_vm.version)+\" \"),(_vm.encryptionIcon)?_c('b-icon',{staticClass:\"ml-2\",attrs:{\"icon\":_vm.encryptionIcon}}):_vm._e()],1),(_vm.url)?_c('b-nav-text',[_c('a',{attrs:{\"href\":_vm.url}},[_vm._v(_vm._s(_vm.url))])]):_vm._e(),_c('b-navbar-nav',{staticClass:\"ml-auto\"},[_c('b-nav-item',[_c('b-icon',{attrs:{\"icon\":_vm.isUiFluid ? 'arrows-angle-contract': 'arrows-angle-expand'},on:{\"click\":_vm.toggleUiFluid}})],1),(_vm.actions && _vm.actions.length > 0)?_c('b-nav-item-dropdown',{attrs:{\"right\":\"\",\"disabled\":!!_vm.workingAction},scopedSlots:_vm._u([{key:\"button-content\",fn:function(){return [_c('b-icon',{attrs:{\"icon\":\"gear\",\"animation\":_vm.gearAnimation,\"aria-label\":\"Settings\"}}),_c('span',{staticClass:\"ml-2\"},[_vm._v(_vm._s(_vm.workingActionTitle))])]},proxy:true}],null,false,3798702937)},_vm._l((_vm.actions),function(act){return _c('b-dropdown-item',{key:act.key,attrs:{\"href\":\"#\"},on:{\"click\":function () { return _vm.executeAction(act); }}},[_vm._v(_vm._s(act.title))])}),1):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-container',{attrs:{\"fluid\":_vm.isUiFluid}},[_c('b-card',{attrs:{\"no-body\":\"\"}},[_c('b-tabs',{attrs:{\"pills\":\"\",\"card\":\"\",\"lazy\":\"\"},on:{\"activate-tab\":_vm.handleActivateTab}},[_c('b-tab',{attrs:{\"title\":\"Schemas\"}},[_c('schema-view',{on:{\"showEditView\":_vm.handleShowEditView}})],1),(_vm.hasRepoSupport)?_c('b-tab',{attrs:{\"title\":\"Repos\"}},[_c('repo-view')],1):_vm._e()],1)],1),(_vm.isVaultItemLoading)?_c('div',{staticClass:\"center\"},[_c('Spinner')],1):_vm._e(),(_vm.hasSelectedVaultItem)?_c('data-visualizer',{staticClass:\"data-visualizer\",attrs:{\"item\":_vm.selectedVaultItem},on:{\"selectVaultItem\":_vm.selectVaultItem}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { getInstance, soya } from '@/services';\nimport { Soya, SoyaDocument } from 'soya-js';\nimport { MultiResponse, Paging, Vaultifier, VaultItem, VaultItemsQuery, VaultMeta, VaultMinMeta, VaultPostItem, VaultRepo, VaultSchema, } from 'vaultifier';\nimport Vue from 'vue';\nimport Vuex, { Commit } from 'vuex'\nimport { ActionType } from './action-type';\nimport { FetchState } from './fetch-state';\nimport { MutationType } from './mutation-type';\n\nexport interface IFetchVaultItems {\n page?: number;\n size?: number;\n repo?: VaultRepo;\n schema?: VaultSchema;\n fetchContent?: boolean;\n}\nexport interface IStore {\n repo: {\n all?: VaultRepo[],\n state: FetchState,\n },\n schemaDRI: {\n all: VaultSchema[],\n state: FetchState,\n current?: SoyaDocument,\n },\n vaultItem: {\n all: VaultMeta[],\n allState: FetchState,\n current?: VaultItem,\n currentState: FetchState,\n paging?: Paging,\n },\n ui: {\n isFluid: boolean,\n }\n}\ninterface IFetchState {\n state: FetchState,\n setFetchState: (store: IStore, state: FetchState) => void,\n}\n\nasync function doFetch(\n commit: Commit,\n asyncFunc: () => Promise,\n setState: (commit: Commit, data: T) => void,\n setFetchState: (store: IStore, state: FetchState) => void,\n) {\n const commitObj: IFetchState = {\n setFetchState,\n state: FetchState.FETCHING,\n }\n\n commit(MutationType.SET_FETCH_STATE, commitObj);\n try {\n setState(commit, await asyncFunc());\n\n commitObj.state = FetchState.SUCCESS;\n commit(MutationType.SET_FETCH_STATE, commitObj)\n }\n catch {\n commitObj.state = FetchState.ERROR;\n commit(MutationType.SET_FETCH_STATE, commitObj);\n }\n}\n\nexport const getStore = () => {\n Vue.use(Vuex);\n\n return new Vuex.Store({\n state: (): IStore => ({\n repo: {\n all: [],\n state: FetchState.NONE,\n },\n schemaDRI: {\n all: [],\n state: FetchState.NONE,\n current: undefined,\n },\n vaultItem: {\n all: [],\n allState: FetchState.NONE,\n current: undefined,\n currentState: FetchState.NONE,\n paging: undefined,\n },\n ui: {\n isFluid: false,\n }\n }),\n mutations: {\n [MutationType.SET_FETCH_STATE](state, payload: IFetchState) {\n payload.setFetchState(state, payload.state);\n },\n [MutationType.SET_REPOS](state, payload: VaultRepo[]) {\n state.repo.all = payload;\n },\n [MutationType.SET_CURRENT_SCHEMA](state, payload: SoyaDocument | undefined) {\n state.schemaDRI.current = payload;\n },\n [MutationType.SET_SCHEMA_DRIS](state, payload: VaultSchema[]) {\n state.schemaDRI.all = payload;\n },\n [MutationType.SET_VAULT_ITEMS](state, payload: VaultMeta[]) {\n state.vaultItem.all = payload;\n },\n [MutationType.SET_VAULT_ITEM](state, payload: VaultItem) {\n state.vaultItem.current = payload;\n },\n [MutationType.SET_SCHEMA_DRI_TITLE](state, payload: VaultSchema) {\n const item = state.schemaDRI.all.find(x => x.dri === payload.dri);\n\n if (item)\n item.title = payload.title;\n },\n [MutationType.SET_VAULT_ITEMS_PAGING](state, payload?: Paging) {\n state.vaultItem.paging = payload;\n },\n [MutationType.SET_UI_IS_FLUID](state, payload: boolean) {\n state.ui.isFluid = payload;\n },\n },\n actions: {\n [ActionType.RESET_VAULT_ITEMS]({ commit }) {\n commit(MutationType.SET_VAULT_ITEMS, undefined);\n commit(MutationType.SET_VAULT_ITEM, undefined);\n commit(MutationType.SET_VAULT_ITEMS_PAGING, undefined);\n },\n async [ActionType.UPDATE_VAULT_ITEM]({ state, commit, dispatch }, payload: VaultPostItem) {\n if (payload.id) {\n await getInstance().updateItem(payload);\n dispatch(ActionType.FETCH_VAULT_ITEM, { id: payload.id } as VaultMinMeta);\n }\n else\n await getInstance().postItem(payload);\n\n },\n async [ActionType.DELETE_VAULT_ITEM]({ state, commit, dispatch }, payload: VaultMeta) {\n await getInstance().deleteItem({\n id: payload.id,\n });\n\n if (state.vaultItem.current?.id === payload.id)\n commit(MutationType.SET_VAULT_ITEM, undefined);\n },\n async [ActionType.FETCH_SCHEMA_DRIS]({ commit, dispatch }) {\n await doFetch(\n commit,\n () => getInstance().getSchemas(),\n (commit, data) => {\n dispatch(ActionType.RESET_VAULT_ITEMS);\n commit(MutationType.SET_SCHEMA_DRIS, data);\n dispatch(ActionType.FETCH_SCHEMAS_TITLE);\n },\n (store, state) => store.schemaDRI.state = state\n );\n },\n async [ActionType.FETCH_REPOS]({ commit, dispatch }) {\n await doFetch(\n commit,\n () => getInstance().getRepos(),\n (commit, data) => {\n dispatch(ActionType.RESET_VAULT_ITEMS);\n commit(MutationType.SET_REPOS, data);\n },\n (store, state) => store.repo.state = state\n );\n },\n async [ActionType.FETCH_VAULT_ITEMS]({ commit, state }, { page, size, repo, schema, fetchContent }: IFetchVaultItems) {\n // reset currently selected vault item if list of vault items is refreshed\n commit(MutationType.SET_VAULT_ITEM, undefined);\n commit(MutationType.SET_CURRENT_SCHEMA, undefined);\n\n if (schema) {\n try {\n const doc = await soya.pull(schema.dri);\n commit(MutationType.SET_CURRENT_SCHEMA, doc);\n\n const sparql = await soya.getSparqlBuilder(doc);\n const bindings = await sparql.query(`\n PREFIX soya: <${doc[\"@context\"][\"@base\"]}>\n SELECT * WHERE {\n ?base a soya:OverlayDataBudRendering .\n }`);\n\n // if there is an overlay for DataBudRendering\n // we want to fetch the whole content\n if (bindings.length > 0)\n fetchContent = true;\n } catch { /* if it goes wrong we don't care */ }\n }\n\n await doFetch>(\n commit,\n async () => {\n let query: VaultItemsQuery | undefined = {\n page: {\n page,\n size,\n },\n };\n let instance: Vaultifier;\n\n if (schema) {\n instance = getInstance();\n query = {\n ...query,\n schema: schema?.dri,\n };\n }\n else if (repo) {\n instance = await getInstance().fromRepo(repo.identifier);\n }\n else\n throw new Error('Schema and repo are undefined');\n\n if (fetchContent)\n return instance.getItems(query);\n else\n return instance.getMetaItems(query);\n },\n (commit, data) => {\n commit(MutationType.SET_VAULT_ITEMS, data.items);\n commit(MutationType.SET_VAULT_ITEMS_PAGING, data.paging);\n },\n (store, state) => store.vaultItem.allState = state,\n );\n },\n async[ActionType.FETCH_VAULT_ITEM]({ commit }, payload: VaultMinMeta) {\n await doFetch(\n commit,\n () => getInstance().getItem({ id: payload.id }),\n (commit, data) => commit(MutationType.SET_VAULT_ITEM, data),\n (store, state) => store.vaultItem.currentState = state,\n )\n },\n async[ActionType.FETCH_SCHEMAS_TITLE]({ commit, state }) {\n const infos = await soya.info(state.schemaDRI.all.map(x => x.dri));\n\n for (const info of infos) {\n const schema = state.schemaDRI.all.find(x => x.dri === info.dri);\n\n if (schema) {\n schema.title = info.name;\n commit(MutationType.SET_SCHEMA_DRI_TITLE, schema);\n }\n }\n },\n async[ActionType.TOGGLE_UI_IS_FLUID]({ commit, state }) {\n commit(MutationType.SET_UI_IS_FLUID, !state.ui.isFluid);\n },\n }\n });\n}","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-card',{attrs:{\"no-body\":\"\"}},[_c('b-tabs',{attrs:{\"pills\":\"\",\"card\":\"\"},model:{value:(_vm.activeTabIndex),callback:function ($$v) {_vm.activeTabIndex=$$v},expression:\"activeTabIndex\"}},[(_vm.showRawView)?_c('b-tab',{attrs:{\"title\":\"Raw Data\"}},[_c('raw-data',{attrs:{\"item\":_vm.item,\"isSaving\":_vm.isSaving},on:{\"save\":_vm.saveVaultItem}})],1):_vm._e(),(_vm.hasSchema)?_c('b-tab',{attrs:{\"title\":\"Form\",\"lazy\":\"\"}},[_c('form-edit-view',{attrs:{\"item\":_vm.item,\"schemaDri\":_vm.schemaDri,\"allowSelectSchema\":true,\"hasCancel\":false,\"isSaving\":_vm.isSaving},on:{\"save\":_vm.saveVaultItem}})],1):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-6\"},[_vm._m(0),_c('raw-json',{attrs:{\"data\":_vm.meta}})],1),_c('div',{staticClass:\"col-md-6\"},[_c('div',{staticClass:\"top-container\"},[_c('h3',{staticClass:\"heading\"},[_vm._v(\"Content\")]),(_vm.isEncrypted)?_c('span',{staticClass:\"text-muted\"},[_vm._v(\" (encrypted)\")]):_vm._e(),_c('b-checkbox',{staticClass:\"check\",model:{value:(_vm.isEditable),callback:function ($$v) {_vm.isEditable=$$v},expression:\"isEditable\"}},[_vm._v(\"Editable\")]),(_vm.isEditable)?_c('custom-button',{staticClass:\"btn-save\",attrs:{\"type\":_vm.isSaving ? 'primary-outline' : undefined,\"disabled\":_vm.isSaving},on:{\"click\":_vm.save}},[(_vm.isSaving)?_c('spinner'):[_vm._v(\" Save \")]],2):_vm._e()],1),(_vm.isEditable)?_c('b-textarea',{staticClass:\"textarea\",attrs:{\"rows\":\"10\"},model:{value:(_vm.editableData),callback:function ($$v) {_vm.editableData=$$v},expression:\"editableData\"}}):_c('raw-json',{attrs:{\"data\":_vm.item.data}})],1)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"top-container\"},[_c('h3',{staticClass:\"heading\"},[_vm._v(\"Meta\")])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('pre',{staticClass:\"card\"},[_vm._v(_vm._s(_vm.jsonContent))])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue from 'vue'\nexport default Vue.extend({\n props: {\n data: Object,\n },\n computed: {\n jsonContent(): string {\n return JSON.stringify(this.data, null, 2).trim();\n }\n }\n})\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RawJson.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RawJson.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RawJson.vue?vue&type=template&id=75c3de40&scoped=true&\"\nimport script from \"./RawJson.vue?vue&type=script&lang=ts&\"\nexport * from \"./RawJson.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./RawJson.vue?vue&type=style&index=0&id=75c3de40&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"75c3de40\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-button',{attrs:{\"variant\":_vm.computedType},on:{\"click\":_vm.click}},[(_vm.type === 'refresh')?[_c('b-icon',{attrs:{\"icon\":\"arrow-clockwise\",\"aria-label\":\"Refresh\"}}),_vm._t(\"default\")]:_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue from 'vue'\nexport default Vue.extend({\n props: {\n type: {\n type: String,\n default: 'primary'\n }\n },\n methods: {\n click() {\n this.$emit('click', ...arguments);\n }\n },\n computed: {\n computedType() {\n return this.type === 'refresh' ? 'outline-primary' : this.type;\n }\n }\n})\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Button.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Button.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Button.vue?vue&type=template&id=235a3e72&\"\nimport script from \"./Button.vue?vue&type=script&lang=ts&\"\nexport * from \"./Button.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n// @ts-ignore\nimport { VaultItem, VaultPostItem } from 'vaultifier';\nimport Vue, { PropType } from 'vue'\nimport RawJson from './RawJson.vue';\nimport CustomButton from './Button.vue';\nimport Spinner from './Spinner.vue';\n\ninterface Data {\n isEditable: boolean;\n editableData: string;\n}\n\nexport default Vue.extend({\n components: {\n RawJson,\n CustomButton,\n Spinner,\n },\n props: {\n item: {\n type: Object as PropType,\n },\n isSaving: {\n type: Boolean as PropType,\n }\n },\n data: (): Data => ({\n isEditable: false,\n editableData: '',\n }),\n created() {\n this.resetEditableData();\n },\n methods: {\n resetEditableData() {\n this.editableData = JSON.stringify(this.item.data, undefined, 2);\n },\n save() {\n console.log('save')\n const postItem: VaultPostItem = {\n ...this.item,\n };\n\n this.$emit('save', postItem);\n },\n },\n watch: {\n editableData(value: string) {\n try {\n this.item.data = JSON.parse(value);\n } catch { /* */ }\n },\n item() {\n this.resetEditableData();\n },\n },\n computed: {\n meta(): any {\n const copy = { ...this.item };\n delete copy.data;\n // @ts-ignore\n delete copy.raw;\n\n return copy;\n },\n isEncrypted(): boolean {\n return this.item.isEncrypted;\n }\n }\n});\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RawData.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RawData.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RawData.vue?vue&type=template&id=b736e120&scoped=true&\"\nimport script from \"./RawData.vue?vue&type=script&lang=ts&\"\nexport * from \"./RawData.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./RawData.vue?vue&type=style&index=0&id=b736e120&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"b736e120\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('inline-group',[(_vm.allowSelectSchema && (_vm.showTypeahead || !_vm.hasSelectedStructure))?_c('b-form',{attrs:{\"inline\":\"\"},on:{\"submit\":function($event){$event.preventDefault();}}},[_c('b-typeahead',{attrs:{\"prepend\":\"Search SOyA structure...\",\"serializer\":function (s) { return s.name; },\"data\":_vm.suggestItems},on:{\"hit\":_vm.selectFromTypeahead},model:{value:(_vm.editableText),callback:function ($$v) {_vm.editableText=$$v},expression:\"editableText\"}},[_vm._v(_vm._s(_vm.editableText))])],1):_c('b-button',{on:{\"click\":function($event){_vm.showTypeahead = true}}},[_vm._v(_vm._s(_vm.selectedStructureName))]),_c('div',{staticClass:\"spacer\"}),(_vm.iFrameSrc)?_c('b-button',{attrs:{\"href\":_vm.iFrameSrc,\"target\":\"_blank\",\"variant\":\"success\"}},[_vm._v(\"Open Permalink\")]):_vm._e(),_c('custom-button',{attrs:{\"type\":_vm.isSaving ? 'primary-outline' : undefined,\"disabled\":!_vm.hasSelectedStructure || _vm.isSaving},on:{\"click\":_vm.saveEdit}},[(_vm.isSaving)?_c('spinner'):[_vm._v(\" Save \")]],2),_vm._l((_vm.actions),function(action){return _c('custom-button',{key:action.key,attrs:{\"type\":_vm.isExecutingAction ? 'success-outline' : 'success',\"disabled\":_vm.isExecutingAction},on:{\"click\":function($event){return _vm.executeAction(action)}}},[(_vm.isExecutingAction)?_c('spinner'):[_vm._v(\" \"+_vm._s(action.title)+\" \")]],2)}),(_vm.hasCancel)?_c('custom-button',{attrs:{\"type\":\"danger\"},on:{\"click\":_vm.cancelEdit}},[_vm._v(\"Cancel\")]):_vm._e()],2),(_vm.isLoading)?_c('spinner'):_vm._e(),_c('form-view',{ref:\"form\",attrs:{\"data\":_vm.formData,\"schemaDri\":_vm.selectedStructure ? _vm.selectedStructure.dri : undefined},on:{\"change\":_vm.onDataChange,\"iFrameSrcChange\":_vm.onIFrameSrcChange}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.isLoading)?_c('spinner'):_vm._e(),_c('b-container',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.hasSchemaDri),expression:\"hasSchemaDri\"}],staticClass:\"p-0\"},[_c('b-row',[_c('b-col',[_c('b-form',{ref:\"form\",staticClass:\"form\",on:{\"submit\":function($event){$event.preventDefault();}}},[_c('iframe',{ref:\"iframe\",staticClass:\"iframe\",class:{'transparent': _vm.isLoading},attrs:{\"src\":_vm.iFrameSrc}})])],1)],1)],1),(!_vm.hasSchemaDri)?_c('b-alert',{attrs:{\"variant\":\"primary\",\"show\":\"\"}},[_vm._v(\" Please select a form. \")]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue from 'vue';\nimport Spinner from './Spinner.vue';\n\ninterface Data {\n selectedLanguage: string | null,\n selectedTag: string | null,\n isLoading: boolean,\n iFrameSrc: string | null,\n}\n\nexport default Vue.extend({\n data: (): Data => ({\n selectedLanguage: null,\n selectedTag: null,\n isLoading: false,\n iFrameSrc: null,\n }),\n props: {\n data: {\n type: Object,\n required: false,\n default: () => ({}),\n },\n schemaDri: String,\n },\n components: {\n Spinner,\n },\n mounted() {\n window.addEventListener('message', (evt: MessageEvent) => {\n // ignore all messages that are created from this window\n if (evt.source === window)\n return;\n\n const iframe = this.iframe;\n\n switch (evt.data?.type) {\n case 'update':\n this.isLoading = false;\n if (iframe)\n iframe.style.height = evt.data.documentHeight + 'px';\n break;\n case 'data':\n this.$emit('change', evt.data.evt);\n break;\n }\n });\n },\n methods: {\n async reload() {\n if (!this.schemaDri)\n return;\n\n this.isLoading = true;\n\n const url = new URL('https://soya-form.ownyourdata.eu');\n const { searchParams: params } = url;\n\n params.append('viewMode', 'embedded');\n params.append('schemaDri', this.schemaDri);\n params.append('data', JSON.stringify(this.data));\n\n this.iFrameSrc = url.toString();\n },\n },\n watch: {\n schemaDri() {\n this.reload();\n },\n data() {\n this.iframe?.contentWindow?.postMessage({\n type: 'data',\n data: this.data,\n }, '*');\n },\n iFrameSrc() {\n this.$emit('iFrameSrcChange', this.iFrameSrc);\n }\n },\n computed: {\n hasSchemaDri(): boolean {\n return !!this.schemaDri;\n },\n iframe(): HTMLIFrameElement | undefined {\n return this.$refs.iframe as unknown as HTMLIFrameElement;\n }\n },\n})\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormView.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormView.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormView.vue?vue&type=template&id=5972b6fe&scoped=true&\"\nimport script from \"./FormView.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormView.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./FormView.vue?vue&type=style&index=0&id=5972b6fe&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5972b6fe\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"inline-group\"},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./InlineGroup.vue?vue&type=template&id=65fc9698&scoped=true&\"\nvar script = {}\nimport style0 from \"./InlineGroup.vue?vue&type=style&index=0&id=65fc9698&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"65fc9698\",\n null\n \n)\n\nexport default component.exports","import { i18nObject } from \"vaultifier\";\n\n// currently vaultifier only supports English\nconst language = 'en';\n\nexport const getTranslation = (obj: i18nObject | string) => {\n if (typeof obj === 'string')\n return obj;\n\n return obj[language];\n}","import Vue from 'vue';\n\nexport const dummyComponent = Vue.extend({\n beforeCreate() {\n throw new Error('Do not use the default export but use the factory function instead!');\n },\n});","// Taken from https://github.com/johan/js-deflate\n// Speficially: https://github.com/johan/js-deflate/blob/master/rawdeflate.js\n\n// @ts-nocheck\n\n/*\n * $Id: rawdeflate.js,v 0.3 2009/03/01 19:05:05 dankogai Exp dankogai $\n *\n * Original:\n * http://www.onicos.com/staff/iz/amuse/javascript/expert/deflate.txt\n */\n\n// if run as a web worker, respond to messages by deflating them\nexport const deflate = (function () {\n\n /* Copyright (C) 1999 Masanao Izumo \n * Version: 1.0.1\n * LastModified: Dec 25 1999\n */\n\n /* Interface:\n * data = deflate(src);\n */\n\n /* constant parameters */\n var zip_WSIZE = 32768;\t\t// Sliding Window size\n var zip_STORED_BLOCK = 0;\n var zip_STATIC_TREES = 1;\n var zip_DYN_TREES = 2;\n\n /* for deflate */\n var zip_DEFAULT_LEVEL = 6;\n var zip_FULL_SEARCH = true;\n var zip_INBUFSIZ = 32768;\t// Input buffer size\n var zip_INBUF_EXTRA = 64;\t// Extra buffer\n var zip_OUTBUFSIZ = 1024 * 8;\n var zip_window_size = 2 * zip_WSIZE;\n var zip_MIN_MATCH = 3;\n var zip_MAX_MATCH = 258;\n var zip_BITS = 16;\n // for SMALL_MEM\n var zip_LIT_BUFSIZE = 0x2000;\n var zip_HASH_BITS = 13;\n // for MEDIUM_MEM\n // var zip_LIT_BUFSIZE = 0x4000;\n // var zip_HASH_BITS = 14;\n // for BIG_MEM\n // var zip_LIT_BUFSIZE = 0x8000;\n // var zip_HASH_BITS = 15;\n //if(zip_LIT_BUFSIZE > zip_INBUFSIZ)\n // alert(\"error: zip_INBUFSIZ is too small\");\n //if((zip_WSIZE<<1) > (1< zip_BITS-1)\n // alert(\"error: zip_HASH_BITS is too large\");\n //if(zip_HASH_BITS < 8 || zip_MAX_MATCH != 258)\n // alert(\"error: Code too clever\");\n var zip_DIST_BUFSIZE = zip_LIT_BUFSIZE;\n var zip_HASH_SIZE = 1 << zip_HASH_BITS;\n var zip_HASH_MASK = zip_HASH_SIZE - 1;\n var zip_WMASK = zip_WSIZE - 1;\n var zip_NIL = 0; // Tail of hash chains\n var zip_TOO_FAR = 4096;\n var zip_MIN_LOOKAHEAD = zip_MAX_MATCH + zip_MIN_MATCH + 1;\n var zip_MAX_DIST = zip_WSIZE - zip_MIN_LOOKAHEAD;\n var zip_SMALLEST = 1;\n var zip_MAX_BITS = 15;\n var zip_MAX_BL_BITS = 7;\n var zip_LENGTH_CODES = 29;\n var zip_LITERALS = 256;\n var zip_END_BLOCK = 256;\n var zip_L_CODES = zip_LITERALS + 1 + zip_LENGTH_CODES;\n var zip_D_CODES = 30;\n var zip_BL_CODES = 19;\n var zip_REP_3_6 = 16;\n var zip_REPZ_3_10 = 17;\n var zip_REPZ_11_138 = 18;\n var zip_HEAP_SIZE = 2 * zip_L_CODES + 1;\n var zip_H_SHIFT = parseInt((zip_HASH_BITS + zip_MIN_MATCH - 1) /\n zip_MIN_MATCH);\n\n /* variables */\n var zip_free_queue;\n var zip_qhead, zip_qtail;\n var zip_initflag;\n var zip_outbuf = null;\n var zip_outcnt, zip_outoff;\n var zip_complete;\n var zip_window;\n var zip_d_buf;\n var zip_l_buf;\n var zip_prev;\n var zip_bi_buf;\n var zip_bi_valid;\n var zip_block_start;\n var zip_ins_h;\n var zip_hash_head;\n var zip_prev_match;\n var zip_match_available;\n var zip_match_length;\n var zip_prev_length;\n var zip_strstart;\n var zip_match_start;\n var zip_eofile;\n var zip_lookahead;\n var zip_max_chain_length;\n var zip_max_lazy_match;\n var zip_compr_level;\n var zip_good_match;\n var zip_nice_match;\n var zip_dyn_ltree;\n var zip_dyn_dtree;\n var zip_static_ltree;\n var zip_static_dtree;\n var zip_bl_tree;\n var zip_l_desc;\n var zip_d_desc;\n var zip_bl_desc;\n var zip_bl_count;\n var zip_heap;\n var zip_heap_len;\n var zip_heap_max;\n var zip_depth;\n var zip_length_code;\n var zip_dist_code;\n var zip_base_length;\n var zip_base_dist;\n var zip_flag_buf;\n var zip_last_lit;\n var zip_last_dist;\n var zip_last_flags;\n var zip_flags;\n var zip_flag_bit;\n var zip_opt_len;\n var zip_static_len;\n var zip_deflate_data;\n var zip_deflate_pos;\n\n /* objects (deflate) */\n\n function zip_DeflateCT() {\n this.fc = 0; // frequency count or bit string\n this.dl = 0; // father node in Huffman tree or length of bit string\n }\n\n function zip_DeflateTreeDesc() {\n this.dyn_tree = null;\t// the dynamic tree\n this.static_tree = null;\t// corresponding static tree or NULL\n this.extra_bits = null;\t// extra bits for each code or NULL\n this.extra_base = 0;\t// base index for extra_bits\n this.elems = 0;\t\t// max number of elements in the tree\n this.max_length = 0;\t// max bit length for the codes\n this.max_code = 0;\t\t// largest code with non zero frequency\n }\n\n /* Values for max_lazy_match, good_match and max_chain_length, depending on\n * the desired pack level (0..9). The values given below have been tuned to\n * exclude worst case performance for pathological files. Better values may be\n * found for specific files.\n */\n function zip_DeflateConfiguration(a, b, c, d) {\n this.good_length = a; // reduce lazy search above this match length\n this.max_lazy = b; // do not perform lazy search above this match length\n this.nice_length = c; // quit search above this match length\n this.max_chain = d;\n }\n\n function zip_DeflateBuffer() {\n this.next = null;\n this.len = 0;\n this.ptr = new Array(zip_OUTBUFSIZ);\n this.off = 0;\n }\n\n /* constant tables */\n var zip_extra_lbits = [\n 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0];\n var zip_extra_dbits = [\n 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13];\n var zip_extra_blbits = [\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 7];\n var zip_bl_order = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15];\n var zip_configuration_table = [\n new zip_DeflateConfiguration(0, 0, 0, 0),\n new zip_DeflateConfiguration(4, 4, 8, 4),\n new zip_DeflateConfiguration(4, 5, 16, 8),\n new zip_DeflateConfiguration(4, 6, 32, 32),\n new zip_DeflateConfiguration(4, 4, 16, 16),\n new zip_DeflateConfiguration(8, 16, 32, 32),\n new zip_DeflateConfiguration(8, 16, 128, 128),\n new zip_DeflateConfiguration(8, 32, 128, 256),\n new zip_DeflateConfiguration(32, 128, 258, 1024),\n new zip_DeflateConfiguration(32, 258, 258, 4096)];\n\n\n /* routines (deflate) */\n\n function zip_deflate_start(level) {\n var i;\n\n if (!level)\n level = zip_DEFAULT_LEVEL;\n else if (level < 1)\n level = 1;\n else if (level > 9)\n level = 9;\n\n zip_compr_level = level;\n zip_initflag = false;\n zip_eofile = false;\n if (zip_outbuf != null)\n return;\n\n zip_free_queue = zip_qhead = zip_qtail = null;\n zip_outbuf = new Array(zip_OUTBUFSIZ);\n zip_window = new Array(zip_window_size);\n zip_d_buf = new Array(zip_DIST_BUFSIZE);\n zip_l_buf = new Array(zip_INBUFSIZ + zip_INBUF_EXTRA);\n zip_prev = new Array(1 << zip_BITS);\n zip_dyn_ltree = new Array(zip_HEAP_SIZE);\n for (i = 0; i < zip_HEAP_SIZE; i++)\n zip_dyn_ltree[i] = new zip_DeflateCT();\n zip_dyn_dtree = new Array(2 * zip_D_CODES + 1);\n for (i = 0; i < 2 * zip_D_CODES + 1; i++)\n zip_dyn_dtree[i] = new zip_DeflateCT();\n zip_static_ltree = new Array(zip_L_CODES + 2);\n for (i = 0; i < zip_L_CODES + 2; i++)\n zip_static_ltree[i] = new zip_DeflateCT();\n zip_static_dtree = new Array(zip_D_CODES);\n for (i = 0; i < zip_D_CODES; i++)\n zip_static_dtree[i] = new zip_DeflateCT();\n zip_bl_tree = new Array(2 * zip_BL_CODES + 1);\n for (i = 0; i < 2 * zip_BL_CODES + 1; i++)\n zip_bl_tree[i] = new zip_DeflateCT();\n zip_l_desc = new zip_DeflateTreeDesc();\n zip_d_desc = new zip_DeflateTreeDesc();\n zip_bl_desc = new zip_DeflateTreeDesc();\n zip_bl_count = new Array(zip_MAX_BITS + 1);\n zip_heap = new Array(2 * zip_L_CODES + 1);\n zip_depth = new Array(2 * zip_L_CODES + 1);\n zip_length_code = new Array(zip_MAX_MATCH - zip_MIN_MATCH + 1);\n zip_dist_code = new Array(512);\n zip_base_length = new Array(zip_LENGTH_CODES);\n zip_base_dist = new Array(zip_D_CODES);\n zip_flag_buf = new Array(parseInt(zip_LIT_BUFSIZE / 8));\n }\n\n function zip_deflate_end() {\n zip_free_queue = zip_qhead = zip_qtail = null;\n zip_outbuf = null;\n zip_window = null;\n zip_d_buf = null;\n zip_l_buf = null;\n zip_prev = null;\n zip_dyn_ltree = null;\n zip_dyn_dtree = null;\n zip_static_ltree = null;\n zip_static_dtree = null;\n zip_bl_tree = null;\n zip_l_desc = null;\n zip_d_desc = null;\n zip_bl_desc = null;\n zip_bl_count = null;\n zip_heap = null;\n zip_depth = null;\n zip_length_code = null;\n zip_dist_code = null;\n zip_base_length = null;\n zip_base_dist = null;\n zip_flag_buf = null;\n }\n\n function zip_reuse_queue(p) {\n p.next = zip_free_queue;\n zip_free_queue = p;\n }\n\n function zip_new_queue() {\n var p;\n\n if (zip_free_queue != null) {\n p = zip_free_queue;\n zip_free_queue = zip_free_queue.next;\n }\n else\n p = new zip_DeflateBuffer();\n p.next = null;\n p.len = p.off = 0;\n\n return p;\n }\n\n function zip_head1(i) {\n return zip_prev[zip_WSIZE + i];\n }\n\n function zip_head2(i, val) {\n return zip_prev[zip_WSIZE + i] = val;\n }\n\n /* put_byte is used for the compressed output, put_ubyte for the\n * uncompressed output. However unlzw() uses window for its\n * suffix table instead of its output buffer, so it does not use put_ubyte\n * (to be cleaned up).\n */\n function zip_put_byte(c) {\n zip_outbuf[zip_outoff + zip_outcnt++] = c;\n if (zip_outoff + zip_outcnt == zip_OUTBUFSIZ)\n zip_qoutbuf();\n }\n\n /* Output a 16 bit value, lsb first */\n function zip_put_short(w) {\n w &= 0xffff;\n if (zip_outoff + zip_outcnt < zip_OUTBUFSIZ - 2) {\n zip_outbuf[zip_outoff + zip_outcnt++] = (w & 0xff);\n zip_outbuf[zip_outoff + zip_outcnt++] = (w >>> 8);\n } else {\n zip_put_byte(w & 0xff);\n zip_put_byte(w >>> 8);\n }\n }\n\n /* ==========================================================================\n * Insert string s in the dictionary and set match_head to the previous head\n * of the hash chain (the most recent string with same hash key). Return\n * the previous length of the hash chain.\n * IN assertion: all calls to to INSERT_STRING are made with consecutive\n * input characters and the first MIN_MATCH bytes of s are valid\n * (except for the last MIN_MATCH-1 bytes of the input file).\n */\n function zip_INSERT_STRING() {\n zip_ins_h = ((zip_ins_h << zip_H_SHIFT)\n ^ (zip_window[zip_strstart + zip_MIN_MATCH - 1] & 0xff))\n & zip_HASH_MASK;\n zip_hash_head = zip_head1(zip_ins_h);\n zip_prev[zip_strstart & zip_WMASK] = zip_hash_head;\n zip_head2(zip_ins_h, zip_strstart);\n }\n\n /* Send a code of the given tree. c and tree must not have side effects */\n function zip_SEND_CODE(c, tree) {\n zip_send_bits(tree[c].fc, tree[c].dl);\n }\n\n /* Mapping from a distance to a distance code. dist is the distance - 1 and\n * must not have side effects. dist_code[256] and dist_code[257] are never\n * used.\n */\n function zip_D_CODE(dist) {\n return (dist < 256 ? zip_dist_code[dist]\n : zip_dist_code[256 + (dist >> 7)]) & 0xff;\n }\n\n /* ==========================================================================\n * Compares to subtrees, using the tree depth as tie breaker when\n * the subtrees have equal frequency. This minimizes the worst case length.\n */\n function zip_SMALLER(tree, n, m) {\n return tree[n].fc < tree[m].fc ||\n (tree[n].fc == tree[m].fc && zip_depth[n] <= zip_depth[m]);\n }\n\n /* ==========================================================================\n * read string data\n */\n function zip_read_buff(buff, offset, n) {\n var i;\n for (i = 0; i < n && zip_deflate_pos < zip_deflate_data.length; i++)\n buff[offset + i] =\n zip_deflate_data.charCodeAt(zip_deflate_pos++) & 0xff;\n return i;\n }\n\n /* ==========================================================================\n * Initialize the \"longest match\" routines for a new file\n */\n function zip_lm_init() {\n var j;\n\n /* Initialize the hash table. */\n for (j = 0; j < zip_HASH_SIZE; j++)\n //\tzip_head2(j, zip_NIL);\n zip_prev[zip_WSIZE + j] = 0;\n /* prev will be initialized on the fly */\n\n /* Set the default configuration parameters:\n */\n zip_max_lazy_match = zip_configuration_table[zip_compr_level].max_lazy;\n zip_good_match = zip_configuration_table[zip_compr_level].good_length;\n if (!zip_FULL_SEARCH)\n zip_nice_match = zip_configuration_table[zip_compr_level].nice_length;\n zip_max_chain_length = zip_configuration_table[zip_compr_level].max_chain;\n\n zip_strstart = 0;\n zip_block_start = 0;\n\n zip_lookahead = zip_read_buff(zip_window, 0, 2 * zip_WSIZE);\n if (zip_lookahead <= 0) {\n zip_eofile = true;\n zip_lookahead = 0;\n return;\n }\n zip_eofile = false;\n /* Make sure that we always have enough lookahead. This is important\n * if input comes from a device such as a tty.\n */\n while (zip_lookahead < zip_MIN_LOOKAHEAD && !zip_eofile)\n zip_fill_window();\n\n /* If lookahead < MIN_MATCH, ins_h is garbage, but this is\n * not important since only literal bytes will be emitted.\n */\n zip_ins_h = 0;\n for (j = 0; j < zip_MIN_MATCH - 1; j++) {\n // UPDATE_HASH(ins_h, window[j]);\n zip_ins_h = ((zip_ins_h << zip_H_SHIFT) ^ (zip_window[j] & 0xff)) & zip_HASH_MASK;\n }\n }\n\n /* ==========================================================================\n * Set match_start to the longest match starting at the given string and\n * return its length. Matches shorter or equal to prev_length are discarded,\n * in which case the result is equal to prev_length and match_start is\n * garbage.\n * IN assertions: cur_match is the head of the hash chain for the current\n * string (strstart) and its distance is <= MAX_DIST, and prev_length >= 1\n */\n function zip_longest_match(cur_match) {\n var chain_length = zip_max_chain_length; // max hash chain length\n var scanp = zip_strstart; // current string\n var matchp;\t\t// matched string\n var len;\t\t// length of current match\n var best_len = zip_prev_length;\t// best match length so far\n\n /* Stop when cur_match becomes <= limit. To simplify the code,\n * we prevent matches with the string of window index 0.\n */\n var limit = (zip_strstart > zip_MAX_DIST ? zip_strstart - zip_MAX_DIST : zip_NIL);\n\n var strendp = zip_strstart + zip_MAX_MATCH;\n var scan_end1 = zip_window[scanp + best_len - 1];\n var scan_end = zip_window[scanp + best_len];\n\n /* Do not waste too much time if we already have a good match: */\n if (zip_prev_length >= zip_good_match)\n chain_length >>= 2;\n\n // Assert(encoder->strstart <= window_size-MIN_LOOKAHEAD, \"insufficient lookahead\");\n\n do {\n // Assert(cur_match < encoder->strstart, \"no future\");\n matchp = cur_match;\n\n /* Skip to next match if the match length cannot increase\n * or if the match length is less than 2:\n */\n if (zip_window[matchp + best_len] != scan_end ||\n zip_window[matchp + best_len - 1] != scan_end1 ||\n zip_window[matchp] != zip_window[scanp] ||\n zip_window[++matchp] != zip_window[scanp + 1]) {\n continue;\n }\n\n /* The check at best_len-1 can be removed because it will be made\n * again later. (This heuristic is not always a win.)\n * It is not necessary to compare scan[2] and match[2] since they\n * are always equal when the other bytes match, given that\n * the hash keys are equal and that HASH_BITS >= 8.\n */\n scanp += 2;\n matchp++;\n\n /* We check for insufficient lookahead only every 8th comparison;\n * the 256th check will be made at strstart+258.\n */\n // eslint-disable-next-line no-empty\n do {\n } while (zip_window[++scanp] == zip_window[++matchp] &&\n zip_window[++scanp] == zip_window[++matchp] &&\n zip_window[++scanp] == zip_window[++matchp] &&\n zip_window[++scanp] == zip_window[++matchp] &&\n zip_window[++scanp] == zip_window[++matchp] &&\n zip_window[++scanp] == zip_window[++matchp] &&\n zip_window[++scanp] == zip_window[++matchp] &&\n zip_window[++scanp] == zip_window[++matchp] &&\n scanp < strendp);\n\n len = zip_MAX_MATCH - (strendp - scanp);\n scanp = strendp - zip_MAX_MATCH;\n\n if (len > best_len) {\n zip_match_start = cur_match;\n best_len = len;\n if (zip_FULL_SEARCH) {\n if (len >= zip_MAX_MATCH) break;\n } else {\n if (len >= zip_nice_match) break;\n }\n\n scan_end1 = zip_window[scanp + best_len - 1];\n scan_end = zip_window[scanp + best_len];\n }\n } while ((cur_match = zip_prev[cur_match & zip_WMASK]) > limit\n && --chain_length != 0);\n\n return best_len;\n }\n\n /* ==========================================================================\n * Fill the window when the lookahead becomes insufficient.\n * Updates strstart and lookahead, and sets eofile if end of input file.\n * IN assertion: lookahead < MIN_LOOKAHEAD && strstart + lookahead > 0\n * OUT assertions: at least one byte has been read, or eofile is set;\n * file reads are performed for at least two bytes (required for the\n * translate_eol option).\n */\n function zip_fill_window() {\n var n, m;\n\n // Amount of free space at the end of the window.\n var more = zip_window_size - zip_lookahead - zip_strstart;\n\n /* If the window is almost full and there is insufficient lookahead,\n * move the upper half to the lower one to make room in the upper half.\n */\n if (more == -1) {\n /* Very unlikely, but possible on 16 bit machine if strstart == 0\n * and lookahead == 1 (input done one byte at time)\n */\n more--;\n } else if (zip_strstart >= zip_WSIZE + zip_MAX_DIST) {\n /* By the IN assertion, the window is not empty so we can't confuse\n * more == 0 with more == 64K on a 16 bit machine.\n */\n //\tAssert(window_size == (ulg)2*WSIZE, \"no sliding with BIG_MEM\");\n\n //\tSystem.arraycopy(window, WSIZE, window, 0, WSIZE);\n for (n = 0; n < zip_WSIZE; n++)\n zip_window[n] = zip_window[n + zip_WSIZE];\n\n zip_match_start -= zip_WSIZE;\n zip_strstart -= zip_WSIZE; /* we now have strstart >= MAX_DIST: */\n zip_block_start -= zip_WSIZE;\n\n for (n = 0; n < zip_HASH_SIZE; n++) {\n m = zip_head1(n);\n zip_head2(n, m >= zip_WSIZE ? m - zip_WSIZE : zip_NIL);\n }\n for (n = 0; n < zip_WSIZE; n++) {\n /* If n is not on any hash chain, prev[n] is garbage but\n * its value will never be used.\n */\n m = zip_prev[n];\n zip_prev[n] = (m >= zip_WSIZE ? m - zip_WSIZE : zip_NIL);\n }\n more += zip_WSIZE;\n }\n // At this point, more >= 2\n if (!zip_eofile) {\n n = zip_read_buff(zip_window, zip_strstart + zip_lookahead, more);\n if (n <= 0)\n zip_eofile = true;\n else\n zip_lookahead += n;\n }\n }\n\n /* ==========================================================================\n * Processes a new input file and return its compressed length. This\n * function does not perform lazy evaluationof matches and inserts\n * new strings in the dictionary only for unmatched strings or for short\n * matches. It is used only for the fast compression options.\n */\n function zip_deflate_fast() {\n while (zip_lookahead != 0 && zip_qhead == null) {\n var flush; // set if current block must be flushed\n\n /* Insert the string window[strstart .. strstart+2] in the\n * dictionary, and set hash_head to the head of the hash chain:\n */\n zip_INSERT_STRING();\n\n /* Find the longest match, discarding those <= prev_length.\n * At this point we have always match_length < MIN_MATCH\n */\n if (zip_hash_head != zip_NIL &&\n zip_strstart - zip_hash_head <= zip_MAX_DIST) {\n /* To simplify the code, we prevent matches with the string\n * of window index 0 (in particular we have to avoid a match\n * of the string with itself at the start of the input file).\n */\n zip_match_length = zip_longest_match(zip_hash_head);\n /* longest_match() sets match_start */\n if (zip_match_length > zip_lookahead)\n zip_match_length = zip_lookahead;\n }\n if (zip_match_length >= zip_MIN_MATCH) {\n //\t check_match(strstart, match_start, match_length);\n\n flush = zip_ct_tally(zip_strstart - zip_match_start,\n zip_match_length - zip_MIN_MATCH);\n zip_lookahead -= zip_match_length;\n\n /* Insert new strings in the hash table only if the match length\n * is not too large. This saves time but degrades compression.\n */\n if (zip_match_length <= zip_max_lazy_match) {\n zip_match_length--; // string at strstart already in hash table\n do {\n zip_strstart++;\n zip_INSERT_STRING();\n /* strstart never exceeds WSIZE-MAX_MATCH, so there are\n * always MIN_MATCH bytes ahead. If lookahead < MIN_MATCH\n * these bytes are garbage, but it does not matter since\n * the next lookahead bytes will be emitted as literals.\n */\n } while (--zip_match_length != 0);\n zip_strstart++;\n } else {\n zip_strstart += zip_match_length;\n zip_match_length = 0;\n zip_ins_h = zip_window[zip_strstart] & 0xff;\n //\t\tUPDATE_HASH(ins_h, window[strstart + 1]);\n zip_ins_h = ((zip_ins_h << zip_H_SHIFT) ^ (zip_window[zip_strstart + 1] & 0xff)) & zip_HASH_MASK;\n\n //#if MIN_MATCH != 3\n //\t\tCall UPDATE_HASH() MIN_MATCH-3 more times\n //#endif\n\n }\n } else {\n /* No match, output a literal byte */\n flush = zip_ct_tally(0, zip_window[zip_strstart] & 0xff);\n zip_lookahead--;\n zip_strstart++;\n }\n if (flush) {\n zip_flush_block(0);\n zip_block_start = zip_strstart;\n }\n\n /* Make sure that we always have enough lookahead, except\n * at the end of the input file. We need MAX_MATCH bytes\n * for the next match, plus MIN_MATCH bytes to insert the\n * string following the next match.\n */\n while (zip_lookahead < zip_MIN_LOOKAHEAD && !zip_eofile)\n zip_fill_window();\n }\n }\n\n function zip_deflate_better() {\n /* Process the input block. */\n while (zip_lookahead != 0 && zip_qhead == null) {\n /* Insert the string window[strstart .. strstart+2] in the\n * dictionary, and set hash_head to the head of the hash chain:\n */\n zip_INSERT_STRING();\n\n /* Find the longest match, discarding those <= prev_length.\n */\n zip_prev_length = zip_match_length;\n zip_prev_match = zip_match_start;\n zip_match_length = zip_MIN_MATCH - 1;\n\n if (zip_hash_head != zip_NIL &&\n zip_prev_length < zip_max_lazy_match &&\n zip_strstart - zip_hash_head <= zip_MAX_DIST) {\n /* To simplify the code, we prevent matches with the string\n * of window index 0 (in particular we have to avoid a match\n * of the string with itself at the start of the input file).\n */\n zip_match_length = zip_longest_match(zip_hash_head);\n /* longest_match() sets match_start */\n if (zip_match_length > zip_lookahead)\n zip_match_length = zip_lookahead;\n\n /* Ignore a length 3 match if it is too distant: */\n if (zip_match_length == zip_MIN_MATCH &&\n zip_strstart - zip_match_start > zip_TOO_FAR) {\n /* If prev_match is also MIN_MATCH, match_start is garbage\n * but we will ignore the current match anyway.\n */\n zip_match_length--;\n }\n }\n /* If there was a match at the previous step and the current\n * match is not better, output the previous match:\n */\n if (zip_prev_length >= zip_MIN_MATCH &&\n zip_match_length <= zip_prev_length) {\n var flush; // set if current block must be flushed\n\n //\t check_match(strstart - 1, prev_match, prev_length);\n flush = zip_ct_tally(zip_strstart - 1 - zip_prev_match,\n zip_prev_length - zip_MIN_MATCH);\n\n /* Insert in hash table all strings up to the end of the match.\n * strstart-1 and strstart are already inserted.\n */\n zip_lookahead -= zip_prev_length - 1;\n zip_prev_length -= 2;\n do {\n zip_strstart++;\n zip_INSERT_STRING();\n /* strstart never exceeds WSIZE-MAX_MATCH, so there are\n * always MIN_MATCH bytes ahead. If lookahead < MIN_MATCH\n * these bytes are garbage, but it does not matter since the\n * next lookahead bytes will always be emitted as literals.\n */\n } while (--zip_prev_length != 0);\n zip_match_available = 0;\n zip_match_length = zip_MIN_MATCH - 1;\n zip_strstart++;\n if (flush) {\n zip_flush_block(0);\n zip_block_start = zip_strstart;\n }\n } else if (zip_match_available != 0) {\n /* If there was no match at the previous position, output a\n * single literal. If there was a match but the current match\n * is longer, truncate the previous match to a single literal.\n */\n if (zip_ct_tally(0, zip_window[zip_strstart - 1] & 0xff)) {\n zip_flush_block(0);\n zip_block_start = zip_strstart;\n }\n zip_strstart++;\n zip_lookahead--;\n } else {\n /* There is no previous match to compare with, wait for\n * the next step to decide.\n */\n zip_match_available = 1;\n zip_strstart++;\n zip_lookahead--;\n }\n\n /* Make sure that we always have enough lookahead, except\n * at the end of the input file. We need MAX_MATCH bytes\n * for the next match, plus MIN_MATCH bytes to insert the\n * string following the next match.\n */\n while (zip_lookahead < zip_MIN_LOOKAHEAD && !zip_eofile)\n zip_fill_window();\n }\n }\n\n function zip_init_deflate() {\n if (zip_eofile)\n return;\n zip_bi_buf = 0;\n zip_bi_valid = 0;\n zip_ct_init();\n zip_lm_init();\n\n zip_qhead = null;\n zip_outcnt = 0;\n zip_outoff = 0;\n\n if (zip_compr_level <= 3) {\n zip_prev_length = zip_MIN_MATCH - 1;\n zip_match_length = 0;\n }\n else {\n zip_match_length = zip_MIN_MATCH - 1;\n zip_match_available = 0;\n }\n\n zip_complete = false;\n }\n\n /* ==========================================================================\n * Same as above, but achieves better compression. We use a lazy\n * evaluation for matches: a match is finally adopted only if there is\n * no better match at the next window position.\n */\n function zip_deflate_internal(buff, off, buff_size) {\n var n;\n\n if (!zip_initflag) {\n zip_init_deflate();\n zip_initflag = true;\n if (zip_lookahead == 0) { // empty\n zip_complete = true;\n return 0;\n }\n }\n\n if ((n = zip_qcopy(buff, off, buff_size)) == buff_size)\n return buff_size;\n\n if (zip_complete)\n return n;\n\n if (zip_compr_level <= 3) // optimized for speed\n zip_deflate_fast();\n else\n zip_deflate_better();\n if (zip_lookahead == 0) {\n if (zip_match_available != 0)\n zip_ct_tally(0, zip_window[zip_strstart - 1] & 0xff);\n zip_flush_block(1);\n zip_complete = true;\n }\n return n + zip_qcopy(buff, n + off, buff_size - n);\n }\n\n function zip_qcopy(buff, off, buff_size) {\n var n, i, j;\n\n n = 0;\n while (zip_qhead != null && n < buff_size) {\n i = buff_size - n;\n if (i > zip_qhead.len)\n i = zip_qhead.len;\n // System.arraycopy(qhead.ptr, qhead.off, buff, off + n, i);\n for (j = 0; j < i; j++)\n buff[off + n + j] = zip_qhead.ptr[zip_qhead.off + j];\n\n zip_qhead.off += i;\n zip_qhead.len -= i;\n n += i;\n if (zip_qhead.len == 0) {\n var p;\n p = zip_qhead;\n zip_qhead = zip_qhead.next;\n zip_reuse_queue(p);\n }\n }\n\n if (n == buff_size)\n return n;\n\n if (zip_outoff < zip_outcnt) {\n i = buff_size - n;\n if (i > zip_outcnt - zip_outoff)\n i = zip_outcnt - zip_outoff;\n // System.arraycopy(outbuf, outoff, buff, off + n, i);\n for (j = 0; j < i; j++)\n buff[off + n + j] = zip_outbuf[zip_outoff + j];\n zip_outoff += i;\n n += i;\n if (zip_outcnt == zip_outoff)\n zip_outcnt = zip_outoff = 0;\n }\n return n;\n }\n\n /* ==========================================================================\n * Allocate the match buffer, initialize the various tables and save the\n * location of the internal file attribute (ascii/binary) and method\n * (DEFLATE/STORE).\n */\n function zip_ct_init() {\n var n;\t// iterates over tree elements\n var bits;\t// bit counter\n var length;\t// length value\n var code;\t// code value\n var dist;\t// distance index\n\n if (zip_static_dtree[0].dl != 0) return; // ct_init already called\n\n zip_l_desc.dyn_tree = zip_dyn_ltree;\n zip_l_desc.static_tree = zip_static_ltree;\n zip_l_desc.extra_bits = zip_extra_lbits;\n zip_l_desc.extra_base = zip_LITERALS + 1;\n zip_l_desc.elems = zip_L_CODES;\n zip_l_desc.max_length = zip_MAX_BITS;\n zip_l_desc.max_code = 0;\n\n zip_d_desc.dyn_tree = zip_dyn_dtree;\n zip_d_desc.static_tree = zip_static_dtree;\n zip_d_desc.extra_bits = zip_extra_dbits;\n zip_d_desc.extra_base = 0;\n zip_d_desc.elems = zip_D_CODES;\n zip_d_desc.max_length = zip_MAX_BITS;\n zip_d_desc.max_code = 0;\n\n zip_bl_desc.dyn_tree = zip_bl_tree;\n zip_bl_desc.static_tree = null;\n zip_bl_desc.extra_bits = zip_extra_blbits;\n zip_bl_desc.extra_base = 0;\n zip_bl_desc.elems = zip_BL_CODES;\n zip_bl_desc.max_length = zip_MAX_BL_BITS;\n zip_bl_desc.max_code = 0;\n\n // Initialize the mapping length (0..255) -> length code (0..28)\n length = 0;\n for (code = 0; code < zip_LENGTH_CODES - 1; code++) {\n zip_base_length[code] = length;\n for (n = 0; n < (1 << zip_extra_lbits[code]); n++)\n zip_length_code[length++] = code;\n }\n // Assert (length == 256, \"ct_init: length != 256\");\n\n /* Note that the length 255 (match length 258) can be represented\n * in two different ways: code 284 + 5 bits or code 285, so we\n * overwrite length_code[255] to use the best encoding:\n */\n zip_length_code[length - 1] = code;\n\n /* Initialize the mapping dist (0..32K) -> dist code (0..29) */\n dist = 0;\n for (code = 0; code < 16; code++) {\n zip_base_dist[code] = dist;\n for (n = 0; n < (1 << zip_extra_dbits[code]); n++) {\n zip_dist_code[dist++] = code;\n }\n }\n // Assert (dist == 256, \"ct_init: dist != 256\");\n dist >>= 7; // from now on, all distances are divided by 128\n for (; code < zip_D_CODES; code++) {\n zip_base_dist[code] = dist << 7;\n for (n = 0; n < (1 << (zip_extra_dbits[code] - 7)); n++)\n zip_dist_code[256 + dist++] = code;\n }\n // Assert (dist == 256, \"ct_init: 256+dist != 512\");\n\n // Construct the codes of the static literal tree\n for (bits = 0; bits <= zip_MAX_BITS; bits++)\n zip_bl_count[bits] = 0;\n n = 0;\n while (n <= 143) { zip_static_ltree[n++].dl = 8; zip_bl_count[8]++; }\n while (n <= 255) { zip_static_ltree[n++].dl = 9; zip_bl_count[9]++; }\n while (n <= 279) { zip_static_ltree[n++].dl = 7; zip_bl_count[7]++; }\n while (n <= 287) { zip_static_ltree[n++].dl = 8; zip_bl_count[8]++; }\n /* Codes 286 and 287 do not exist, but we must include them in the\n * tree construction to get a canonical Huffman tree (longest code\n * all ones)\n */\n zip_gen_codes(zip_static_ltree, zip_L_CODES + 1);\n\n /* The static distance tree is trivial: */\n for (n = 0; n < zip_D_CODES; n++) {\n zip_static_dtree[n].dl = 5;\n zip_static_dtree[n].fc = zip_bi_reverse(n, 5);\n }\n\n // Initialize the first block of the first file:\n zip_init_block();\n }\n\n /* ==========================================================================\n * Initialize a new block.\n */\n function zip_init_block() {\n var n; // iterates over tree elements\n\n // Initialize the trees.\n for (n = 0; n < zip_L_CODES; n++) zip_dyn_ltree[n].fc = 0;\n for (n = 0; n < zip_D_CODES; n++) zip_dyn_dtree[n].fc = 0;\n for (n = 0; n < zip_BL_CODES; n++) zip_bl_tree[n].fc = 0;\n\n zip_dyn_ltree[zip_END_BLOCK].fc = 1;\n zip_opt_len = zip_static_len = 0;\n zip_last_lit = zip_last_dist = zip_last_flags = 0;\n zip_flags = 0;\n zip_flag_bit = 1;\n }\n\n /* ==========================================================================\n * Restore the heap property by moving down the tree starting at node k,\n * exchanging a node with the smallest of its two sons if necessary, stopping\n * when the heap property is re-established (each father smaller than its\n * two sons).\n */\n function zip_pqdownheap(\n tree,\t// the tree to restore\n k) {\t// node to move down\n var v = zip_heap[k];\n var j = k << 1;\t// left son of k\n\n while (j <= zip_heap_len) {\n // Set j to the smallest of the two sons:\n if (j < zip_heap_len &&\n zip_SMALLER(tree, zip_heap[j + 1], zip_heap[j]))\n j++;\n\n // Exit if v is smaller than both sons\n if (zip_SMALLER(tree, v, zip_heap[j]))\n break;\n\n // Exchange v with the smallest son\n zip_heap[k] = zip_heap[j];\n k = j;\n\n // And continue down the tree, setting j to the left son of k\n j <<= 1;\n }\n zip_heap[k] = v;\n }\n\n /* ==========================================================================\n * Compute the optimal bit lengths for a tree and update the total bit length\n * for the current block.\n * IN assertion: the fields freq and dad are set, heap[heap_max] and\n * above are the tree nodes sorted by increasing frequency.\n * OUT assertions: the field len is set to the optimal bit length, the\n * array bl_count contains the frequencies for each bit length.\n * The length opt_len is updated; static_len is also updated if stree is\n * not null.\n */\n function zip_gen_bitlen(desc) { // the tree descriptor\n var tree = desc.dyn_tree;\n var extra = desc.extra_bits;\n var base = desc.extra_base;\n var max_code = desc.max_code;\n var max_length = desc.max_length;\n var stree = desc.static_tree;\n var h;\t\t// heap index\n var n, m;\t\t// iterate over the tree elements\n var bits;\t\t// bit length\n var xbits;\t\t// extra bits\n var f;\t\t// frequency\n var overflow = 0;\t// number of elements with bit length too large\n\n for (bits = 0; bits <= zip_MAX_BITS; bits++)\n zip_bl_count[bits] = 0;\n\n /* In a first pass, compute the optimal bit lengths (which may\n * overflow in the case of the bit length tree).\n */\n tree[zip_heap[zip_heap_max]].dl = 0; // root of the heap\n\n for (h = zip_heap_max + 1; h < zip_HEAP_SIZE; h++) {\n n = zip_heap[h];\n bits = tree[tree[n].dl].dl + 1;\n if (bits > max_length) {\n bits = max_length;\n overflow++;\n }\n tree[n].dl = bits;\n // We overwrite tree[n].dl which is no longer needed\n\n if (n > max_code)\n continue; // not a leaf node\n\n zip_bl_count[bits]++;\n xbits = 0;\n if (n >= base)\n xbits = extra[n - base];\n f = tree[n].fc;\n zip_opt_len += f * (bits + xbits);\n if (stree != null)\n zip_static_len += f * (stree[n].dl + xbits);\n }\n if (overflow == 0)\n return;\n\n // This happens for example on obj2 and pic of the Calgary corpus\n\n // Find the first bit length which could increase:\n do {\n bits = max_length - 1;\n while (zip_bl_count[bits] == 0)\n bits--;\n zip_bl_count[bits]--;\t\t// move one leaf down the tree\n zip_bl_count[bits + 1] += 2;\t// move one overflow item as its brother\n zip_bl_count[max_length]--;\n /* The brother of the overflow item also moves one step up,\n * but this does not affect bl_count[max_length]\n */\n overflow -= 2;\n } while (overflow > 0);\n\n /* Now recompute all bit lengths, scanning in increasing frequency.\n * h is still equal to HEAP_SIZE. (It is simpler to reconstruct all\n * lengths instead of fixing only the wrong ones. This idea is taken\n * from 'ar' written by Haruhiko Okumura.)\n */\n for (bits = max_length; bits != 0; bits--) {\n n = zip_bl_count[bits];\n while (n != 0) {\n m = zip_heap[--h];\n if (m > max_code)\n continue;\n if (tree[m].dl != bits) {\n zip_opt_len += (bits - tree[m].dl) * tree[m].fc;\n tree[m].fc = bits;\n }\n n--;\n }\n }\n }\n\n /* ==========================================================================\n * Generate the codes for a given tree and bit counts (which need not be\n * optimal).\n * IN assertion: the array bl_count contains the bit length statistics for\n * the given tree and the field len is set for all tree elements.\n * OUT assertion: the field code is set for all tree elements of non\n * zero code length.\n */\n function zip_gen_codes(tree,\t// the tree to decorate\n max_code) {\t// largest code with non zero frequency\n var next_code = new Array(zip_MAX_BITS + 1); // next code value for each bit length\n var code = 0;\t\t// running code value\n var bits;\t\t\t// bit index\n var n;\t\t\t// code index\n\n /* The distribution counts are first used to generate the code values\n * without bit reversal.\n */\n for (bits = 1; bits <= zip_MAX_BITS; bits++) {\n code = ((code + zip_bl_count[bits - 1]) << 1);\n next_code[bits] = code;\n }\n\n /* Check that the bit counts in bl_count are consistent. The last code\n * must be all ones.\n */\n // Assert (code + encoder->bl_count[MAX_BITS]-1 == (1<> 1; n >= 1; n--)\n zip_pqdownheap(tree, n);\n\n /* Construct the Huffman tree by repeatedly combining the least two\n * frequent nodes.\n */\n do {\n n = zip_heap[zip_SMALLEST];\n zip_heap[zip_SMALLEST] = zip_heap[zip_heap_len--];\n zip_pqdownheap(tree, zip_SMALLEST);\n\n m = zip_heap[zip_SMALLEST]; // m = node of next least frequency\n\n // keep the nodes sorted by frequency\n zip_heap[--zip_heap_max] = n;\n zip_heap[--zip_heap_max] = m;\n\n // Create a new node father of n and m\n tree[node].fc = tree[n].fc + tree[m].fc;\n //\tdepth[node] = (char)(MAX(depth[n], depth[m]) + 1);\n if (zip_depth[n] > zip_depth[m] + 1)\n zip_depth[node] = zip_depth[n];\n else\n zip_depth[node] = zip_depth[m] + 1;\n tree[n].dl = tree[m].dl = node;\n\n // and insert the new node in the heap\n zip_heap[zip_SMALLEST] = node++;\n zip_pqdownheap(tree, zip_SMALLEST);\n\n } while (zip_heap_len >= 2);\n\n zip_heap[--zip_heap_max] = zip_heap[zip_SMALLEST];\n\n /* At this point, the fields freq and dad are set. We can now\n * generate the bit lengths.\n */\n zip_gen_bitlen(desc);\n\n // The field len is now set, we can generate the bit codes\n zip_gen_codes(tree, max_code);\n }\n\n /* ==========================================================================\n * Scan a literal or distance tree to determine the frequencies of the codes\n * in the bit length tree. Updates opt_len to take into account the repeat\n * counts. (The contribution of the bit length codes will be added later\n * during the construction of bl_tree.)\n */\n function zip_scan_tree(tree,// the tree to be scanned\n max_code) { // and its largest code of non zero frequency\n var n;\t\t\t// iterates over all tree elements\n var prevlen = -1;\t\t// last emitted length\n var curlen;\t\t\t// length of current code\n var nextlen = tree[0].dl;\t// length of next code\n var count = 0;\t\t// repeat count of the current code\n var max_count = 7;\t\t// max repeat count\n var min_count = 4;\t\t// min repeat count\n\n if (nextlen == 0) {\n max_count = 138;\n min_count = 3;\n }\n tree[max_code + 1].dl = 0xffff; // guard\n\n for (n = 0; n <= max_code; n++) {\n curlen = nextlen;\n nextlen = tree[n + 1].dl;\n if (++count < max_count && curlen == nextlen)\n continue;\n else if (count < min_count)\n zip_bl_tree[curlen].fc += count;\n else if (curlen != 0) {\n if (curlen != prevlen)\n zip_bl_tree[curlen].fc++;\n zip_bl_tree[zip_REP_3_6].fc++;\n } else if (count <= 10)\n zip_bl_tree[zip_REPZ_3_10].fc++;\n else\n zip_bl_tree[zip_REPZ_11_138].fc++;\n count = 0; prevlen = curlen;\n if (nextlen == 0) {\n max_count = 138;\n min_count = 3;\n } else if (curlen == nextlen) {\n max_count = 6;\n min_count = 3;\n } else {\n max_count = 7;\n min_count = 4;\n }\n }\n }\n\n /* ==========================================================================\n * Send a literal or distance tree in compressed form, using the codes in\n * bl_tree.\n */\n function zip_send_tree(tree, // the tree to be scanned\n max_code) { // and its largest code of non zero frequency\n var n;\t\t\t// iterates over all tree elements\n var prevlen = -1;\t\t// last emitted length\n var curlen;\t\t\t// length of current code\n var nextlen = tree[0].dl;\t// length of next code\n var count = 0;\t\t// repeat count of the current code\n var max_count = 7;\t\t// max repeat count\n var min_count = 4;\t\t// min repeat count\n\n /* tree[max_code+1].dl = -1; */ /* guard already set */\n if (nextlen == 0) {\n max_count = 138;\n min_count = 3;\n }\n\n for (n = 0; n <= max_code; n++) {\n curlen = nextlen;\n nextlen = tree[n + 1].dl;\n if (++count < max_count && curlen == nextlen) {\n continue;\n } else if (count < min_count) {\n do { zip_SEND_CODE(curlen, zip_bl_tree); } while (--count != 0);\n } else if (curlen != 0) {\n if (curlen != prevlen) {\n zip_SEND_CODE(curlen, zip_bl_tree);\n count--;\n }\n // Assert(count >= 3 && count <= 6, \" 3_6?\");\n zip_SEND_CODE(zip_REP_3_6, zip_bl_tree);\n zip_send_bits(count - 3, 2);\n } else if (count <= 10) {\n zip_SEND_CODE(zip_REPZ_3_10, zip_bl_tree);\n zip_send_bits(count - 3, 3);\n } else {\n zip_SEND_CODE(zip_REPZ_11_138, zip_bl_tree);\n zip_send_bits(count - 11, 7);\n }\n count = 0;\n prevlen = curlen;\n if (nextlen == 0) {\n max_count = 138;\n min_count = 3;\n } else if (curlen == nextlen) {\n max_count = 6;\n min_count = 3;\n } else {\n max_count = 7;\n min_count = 4;\n }\n }\n }\n\n /* ==========================================================================\n * Construct the Huffman tree for the bit lengths and return the index in\n * bl_order of the last bit length code to send.\n */\n function zip_build_bl_tree() {\n var max_blindex; // index of last bit length code of non zero freq\n\n // Determine the bit length frequencies for literal and distance trees\n zip_scan_tree(zip_dyn_ltree, zip_l_desc.max_code);\n zip_scan_tree(zip_dyn_dtree, zip_d_desc.max_code);\n\n // Build the bit length tree:\n zip_build_tree(zip_bl_desc);\n /* opt_len now includes the length of the tree representations, except\n * the lengths of the bit lengths codes and the 5+5+4 bits for the counts.\n */\n\n /* Determine the number of bit length codes to send. The pkzip format\n * requires that at least 4 bit length codes be sent. (appnote.txt says\n * 3 but the actual value used is 4.)\n */\n for (max_blindex = zip_BL_CODES - 1; max_blindex >= 3; max_blindex--) {\n if (zip_bl_tree[zip_bl_order[max_blindex]].dl != 0) break;\n }\n /* Update opt_len to include the bit length tree and counts */\n zip_opt_len += 3 * (max_blindex + 1) + 5 + 5 + 4;\n // Tracev((stderr, \"\\ndyn trees: dyn %ld, stat %ld\",\n //\t encoder->opt_len, encoder->static_len));\n\n return max_blindex;\n }\n\n /* ==========================================================================\n * Send the header for a block using dynamic Huffman trees: the counts, the\n * lengths of the bit length codes, the literal tree and the distance tree.\n * IN assertion: lcodes >= 257, dcodes >= 1, blcodes >= 4.\n */\n function zip_send_all_trees(lcodes, dcodes, blcodes) { // number of codes for each tree\n var rank; // index in bl_order\n\n // Assert (lcodes >= 257 && dcodes >= 1 && blcodes >= 4, \"not enough codes\");\n // Assert (lcodes <= L_CODES && dcodes <= D_CODES && blcodes <= BL_CODES,\n //\t \"too many codes\");\n // Tracev((stderr, \"\\nbl counts: \"));\n zip_send_bits(lcodes - 257, 5); // not +255 as stated in appnote.txt\n zip_send_bits(dcodes - 1, 5);\n zip_send_bits(blcodes - 4, 4); // not -3 as stated in appnote.txt\n for (rank = 0; rank < blcodes; rank++) {\n // Tracev((stderr, \"\\nbl code %2d \", bl_order[rank]));\n zip_send_bits(zip_bl_tree[zip_bl_order[rank]].dl, 3);\n }\n\n // send the literal tree\n zip_send_tree(zip_dyn_ltree, lcodes - 1);\n\n // send the distance tree\n zip_send_tree(zip_dyn_dtree, dcodes - 1);\n }\n\n /* ==========================================================================\n * Determine the best encoding for the current block: dynamic trees, static\n * trees or store, and output the encoded block to the zip file.\n */\n function zip_flush_block(eof) { // true if this is the last block for a file\n var opt_lenb, static_lenb; // opt_len and static_len in bytes\n var max_blindex;\t// index of last bit length code of non zero freq\n var stored_len;\t// length of input block\n\n stored_len = zip_strstart - zip_block_start;\n zip_flag_buf[zip_last_flags] = zip_flags; // Save the flags for the last 8 items\n\n // Construct the literal and distance trees\n zip_build_tree(zip_l_desc);\n // Tracev((stderr, \"\\nlit data: dyn %ld, stat %ld\",\n //\t encoder->opt_len, encoder->static_len));\n\n zip_build_tree(zip_d_desc);\n // Tracev((stderr, \"\\ndist data: dyn %ld, stat %ld\",\n //\t encoder->opt_len, encoder->static_len));\n /* At this point, opt_len and static_len are the total bit lengths of\n * the compressed block data, excluding the tree representations.\n */\n\n /* Build the bit length tree for the above two trees, and get the index\n * in bl_order of the last bit length code to send.\n */\n max_blindex = zip_build_bl_tree();\n\n // Determine the best encoding. Compute first the block length in bytes\n opt_lenb = (zip_opt_len + 3 + 7) >> 3;\n static_lenb = (zip_static_len + 3 + 7) >> 3;\n\n // Trace((stderr, \"\\nopt %lu(%lu) stat %lu(%lu) stored %lu lit %u dist %u \",\n //\t opt_lenb, encoder->opt_len,\n //\t static_lenb, encoder->static_len, stored_len,\n //\t encoder->last_lit, encoder->last_dist));\n\n if (static_lenb <= opt_lenb)\n opt_lenb = static_lenb;\n if (stored_len + 4 <= opt_lenb // 4: two words for the lengths\n && zip_block_start >= 0) {\n var i;\n\n /* The test buf != NULL is only necessary if LIT_BUFSIZE > WSIZE.\n * Otherwise we can't have processed more than WSIZE input bytes since\n * the last block flush, because compression would have been\n * successful. If LIT_BUFSIZE <= WSIZE, it is never too late to\n * transform a block into a stored block.\n */\n zip_send_bits((zip_STORED_BLOCK << 1) + eof, 3); /* send block type */\n zip_bi_windup();\t\t /* align on byte boundary */\n zip_put_short(stored_len);\n zip_put_short(~stored_len);\n\n // copy block\n /*\n p = &window[block_start];\n for(i = 0; i < stored_len; i++)\n put_byte(p[i]);\n */\n for (i = 0; i < stored_len; i++)\n zip_put_byte(zip_window[zip_block_start + i]);\n\n } else if (static_lenb == opt_lenb) {\n zip_send_bits((zip_STATIC_TREES << 1) + eof, 3);\n zip_compress_block(zip_static_ltree, zip_static_dtree);\n } else {\n zip_send_bits((zip_DYN_TREES << 1) + eof, 3);\n zip_send_all_trees(zip_l_desc.max_code + 1,\n zip_d_desc.max_code + 1,\n max_blindex + 1);\n zip_compress_block(zip_dyn_ltree, zip_dyn_dtree);\n }\n\n zip_init_block();\n\n if (eof != 0)\n zip_bi_windup();\n }\n\n /* ==========================================================================\n * Save the match info and tally the frequency counts. Return true if\n * the current block must be flushed.\n */\n function zip_ct_tally(\n dist, // distance of matched string\n lc) { // match length-MIN_MATCH or unmatched char (if dist==0)\n zip_l_buf[zip_last_lit++] = lc;\n if (dist == 0) {\n // lc is the unmatched char\n zip_dyn_ltree[lc].fc++;\n } else {\n // Here, lc is the match length - MIN_MATCH\n dist--;\t\t // dist = match distance - 1\n // Assert((ush)dist < (ush)MAX_DIST &&\n //\t (ush)lc <= (ush)(MAX_MATCH-MIN_MATCH) &&\n //\t (ush)D_CODE(dist) < (ush)D_CODES, \"ct_tally: bad match\");\n\n zip_dyn_ltree[zip_length_code[lc] + zip_LITERALS + 1].fc++;\n zip_dyn_dtree[zip_D_CODE(dist)].fc++;\n\n zip_d_buf[zip_last_dist++] = dist;\n zip_flags |= zip_flag_bit;\n }\n zip_flag_bit <<= 1;\n\n // Output the flags if they fill a byte\n if ((zip_last_lit & 7) == 0) {\n zip_flag_buf[zip_last_flags++] = zip_flags;\n zip_flags = 0;\n zip_flag_bit = 1;\n }\n // Try to guess if it is profitable to stop the current block here\n if (zip_compr_level > 2 && (zip_last_lit & 0xfff) == 0) {\n // Compute an upper bound for the compressed length\n var out_length = zip_last_lit * 8;\n var in_length = zip_strstart - zip_block_start;\n var dcode;\n\n for (dcode = 0; dcode < zip_D_CODES; dcode++) {\n out_length += zip_dyn_dtree[dcode].fc * (5 + zip_extra_dbits[dcode]);\n }\n out_length >>= 3;\n // Trace((stderr,\"\\nlast_lit %u, last_dist %u, in %ld, out ~%ld(%ld%%) \",\n //\t encoder->last_lit, encoder->last_dist, in_length, out_length,\n //\t 100L - out_length*100L/in_length));\n if (zip_last_dist < parseInt(zip_last_lit / 2) &&\n out_length < parseInt(in_length / 2))\n return true;\n }\n return (zip_last_lit == zip_LIT_BUFSIZE - 1 ||\n zip_last_dist == zip_DIST_BUFSIZE);\n /* We avoid equality with LIT_BUFSIZE because of wraparound at 64K\n * on 16 bit machines and because stored blocks are restricted to\n * 64K-1 bytes.\n */\n }\n\n /* ==========================================================================\n * Send the block data compressed using the given Huffman trees\n */\n function zip_compress_block(\n ltree,\t// literal tree\n dtree) {\t// distance tree\n var dist;\t\t// distance of matched string\n var lc;\t\t// match length or unmatched char (if dist == 0)\n var lx = 0;\t\t// running index in l_buf\n var dx = 0;\t\t// running index in d_buf\n var fx = 0;\t\t// running index in flag_buf\n var flag = 0;\t// current flags\n var code;\t\t// the code to send\n var extra;\t\t// number of extra bits to send\n\n if (zip_last_lit != 0) do {\n if ((lx & 7) == 0)\n flag = zip_flag_buf[fx++];\n lc = zip_l_buf[lx++] & 0xff;\n if ((flag & 1) == 0) {\n zip_SEND_CODE(lc, ltree); /* send a literal byte */\n //\tTracecv(isgraph(lc), (stderr,\" '%c' \", lc));\n } else {\n // Here, lc is the match length - MIN_MATCH\n code = zip_length_code[lc];\n zip_SEND_CODE(code + zip_LITERALS + 1, ltree); // send the length code\n extra = zip_extra_lbits[code];\n if (extra != 0) {\n lc -= zip_base_length[code];\n zip_send_bits(lc, extra); // send the extra length bits\n }\n dist = zip_d_buf[dx++];\n // Here, dist is the match distance - 1\n code = zip_D_CODE(dist);\n //\tAssert (code < D_CODES, \"bad d_code\");\n\n zip_SEND_CODE(code, dtree);\t // send the distance code\n extra = zip_extra_dbits[code];\n if (extra != 0) {\n dist -= zip_base_dist[code];\n zip_send_bits(dist, extra); // send the extra distance bits\n }\n } // literal or match pair ?\n flag >>= 1;\n } while (lx < zip_last_lit);\n\n zip_SEND_CODE(zip_END_BLOCK, ltree);\n }\n\n /* ==========================================================================\n * Send a value on a given number of bits.\n * IN assertion: length <= 16 and value fits in length bits.\n */\n var zip_Buf_size = 16; // bit size of bi_buf\n function zip_send_bits(\n value,\t// value to send\n length) {\t// number of bits\n /* If not enough room in bi_buf, use (valid) bits from bi_buf and\n * (16 - bi_valid) bits from value, leaving (width - (16-bi_valid))\n * unused bits in value.\n */\n if (zip_bi_valid > zip_Buf_size - length) {\n zip_bi_buf |= (value << zip_bi_valid);\n zip_put_short(zip_bi_buf);\n zip_bi_buf = (value >> (zip_Buf_size - zip_bi_valid));\n zip_bi_valid += length - zip_Buf_size;\n } else {\n zip_bi_buf |= value << zip_bi_valid;\n zip_bi_valid += length;\n }\n }\n\n /* ==========================================================================\n * Reverse the first len bits of a code, using straightforward code (a faster\n * method would use a table)\n * IN assertion: 1 <= len <= 15\n */\n function zip_bi_reverse(\n code,\t// the value to invert\n len) {\t// its bit length\n var res = 0;\n do {\n res |= code & 1;\n code >>= 1;\n res <<= 1;\n } while (--len > 0);\n return res >> 1;\n }\n\n /* ==========================================================================\n * Write out any remaining bits in an incomplete byte.\n */\n function zip_bi_windup() {\n if (zip_bi_valid > 8) {\n zip_put_short(zip_bi_buf);\n } else if (zip_bi_valid > 0) {\n zip_put_byte(zip_bi_buf);\n }\n zip_bi_buf = 0;\n zip_bi_valid = 0;\n }\n\n function zip_qoutbuf() {\n if (zip_outcnt != 0) {\n var q, i;\n q = zip_new_queue();\n if (zip_qhead == null)\n zip_qhead = zip_qtail = q;\n else\n zip_qtail = zip_qtail.next = q;\n q.len = zip_outcnt - zip_outoff;\n // System.arraycopy(zip_outbuf, zip_outoff, q.ptr, 0, q.len);\n for (i = 0; i < q.len; i++)\n q.ptr[i] = zip_outbuf[zip_outoff + i];\n zip_outcnt = zip_outoff = 0;\n }\n }\n\n return function deflate(str, level) {\n var i, j;\n\n zip_deflate_data = str;\n zip_deflate_pos = 0;\n if (typeof level == \"undefined\")\n level = zip_DEFAULT_LEVEL;\n zip_deflate_start(level);\n\n var buff = new Array(1024);\n var aout = [];\n while ((i = zip_deflate_internal(buff, 0, buff.length)) > 0) {\n var cbuf = new Array(i);\n for (j = 0; j < i; j++) {\n cbuf[j] = String.fromCharCode(buff[j]);\n }\n aout[aout.length] = cbuf.join(\"\");\n }\n zip_deflate_data = null; // G.C.\n return aout.join(\"\");\n };\n\n})();","export * from './vue';\nexport * from './i18n';\nexport * from './deflate';\nexport * from './plantuml';\n\nexport function tryGet(obj: any, ...path: string[]) {\n path = path || [];\n return path.reduce((prev, curr) => {\n if (!prev)\n return undefined;\n\n return prev[curr];\n }, obj);\n}\n\nexport function sort(arr: Array, propFunc: (x: T) => any, desc = false) {\n return arr.sort((x, y) => {\n x = propFunc(x);\n y = propFunc(y);\n\n let res = 0;\n\n if (x > y) res = 1;\n else if (x < y) res = -1;\n\n return desc ? -res : res;\n })\n}","import { tryGet } from '../utils';\n\n// @ts-ignore\nexport * as PACKAGE from '../../package.json';\n\nexport class ConfigService {\n\n static INSTANCE: ConfigService;\n\n private static async fetchExternalConfig(): Promise {\n const configFilename = `oyd-databud.config.json`;\n\n try {\n const res = await fetch(`./config/${configFilename}`);\n const json = await res.json();\n\n return json;\n } catch (e) {\n return {};\n }\n }\n\n static async initialize(): Promise {\n if (!ConfigService.INSTANCE) {\n const config = await ConfigService.fetchExternalConfig();\n ConfigService.INSTANCE = new ConfigService(config);\n }\n\n return ConfigService.getInstance();\n }\n\n static getInstance(): ConfigService {\n return ConfigService.INSTANCE;\n }\n\n static get(...path: string[]) {\n return ConfigService.getInstance().get(...path);\n }\n\n private constructor(public config: any) { }\n\n private get(...path: string[]) {\n return tryGet(this.config, ...path);\n }\n}","import { ConfigService } from \"@/services/config-service\";\nimport { Vaultifier, VaultItem } from \"vaultifier\";\nimport { NetworkResponse } from \"vaultifier/dist/module/communicator\";\nimport Vue from \"vue\";\n\nexport interface Action {\n key: string,\n title: string,\n url: string,\n usesAuth: boolean,\n method: string,\n}\n\nexport const executeAction = async (action: Action, vaultifier: Vaultifier, vue?: Vue, item?: VaultItem): Promise => {\n const { key, title, method, usesAuth } = action;\n let { url } = action;\n\n const baseUrlPlaceholder = '{{base_url}}';\n const vaultItemIdPlaceholder = '{{item_id}}';\n\n if (item)\n url = url.replace(vaultItemIdPlaceholder, item.id.toString());\n\n let returnValue: NetworkResponse | undefined = undefined;\n\n // method `OPEN` just opens a new tab\n if (method === 'OPEN') {\n window.open(url, '_blank');\n }\n else\n try {\n if (url.indexOf(baseUrlPlaceholder) !== -1) {\n const vaultifierUrl = url.replace(baseUrlPlaceholder, '');\n\n if (method === 'POST')\n returnValue = await vaultifier.post(vaultifierUrl, usesAuth);\n else if (method === 'PUT')\n returnValue = await vaultifier.put(vaultifierUrl, usesAuth);\n else if (method === 'GET')\n returnValue = await vaultifier.get(vaultifierUrl, usesAuth);\n else\n throw new Error(`Invalid method for action ${key}`);\n }\n else {\n const req = await fetch(url, {\n method,\n headers: {\n 'Content-Type': 'application/json',\n },\n });\n\n if (req.status >= 400)\n throw new Error('Action did not result in a valid HTTP status code');\n }\n\n if (vue)\n vue.$bvModal.msgBoxOk(`The action \"${title}\" was executed succssfully.`);\n } catch {\n if (vue)\n vue.$bvModal.msgBoxOk(`The action \"${title}\" has failed.`);\n }\n\n return returnValue;\n}\n\nexport const getActionsFromConfig = (...path: string[]): Action[] => {\n const actionsObj = ConfigService.get(...path);\n const arr: Action[] = []\n\n for (const key in actionsObj) {\n arr.push({\n usesAuth: false,\n ...actionsObj[key],\n key,\n });\n }\n\n return arr;\n}","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue, { PropType } from 'vue';\n\nimport { VaultItem, VaultPostItem } from 'vaultifier';\nimport FormView from './FormView.vue';\nimport InlineGroup from './InlineGroup.vue';\nimport CustomButton from './Button.vue';\nimport Spinner from './Spinner.vue';\nimport { Soya, SoyaQueryResult } from 'soya-js';\nimport { IStore } from '@/store';\nimport { getInstance } from '@/services';\nimport { Action, executeAction, getActionsFromConfig } from '@/utils/actions';\n\ninterface SoyaStructure {\n name?: string;\n dri: string;\n}\n\ninterface Data {\n editableText?: string,\n selectedStructure?: SoyaStructure,\n suggestItems: SoyaQueryResult[],\n isLoading: boolean,\n isExecutingAction: boolean,\n showTypeahead: boolean,\n formData: any,\n iFrameSrc?: string,\n}\n\nexport default Vue.extend({\n components: {\n FormView,\n CustomButton,\n InlineGroup,\n Spinner,\n },\n props: {\n schemaDri: String as PropType,\n item: Object as PropType,\n isSaving: {\n type: Boolean as PropType,\n default: false,\n },\n hasCancel: {\n type: Boolean as PropType,\n default: true\n },\n allowSelectSchema: {\n type: Boolean as PropType,\n default: true,\n }\n },\n data: (): Data => ({\n editableText: '',\n selectedStructure: undefined,\n suggestItems: [],\n isLoading: false,\n isExecutingAction: false,\n showTypeahead: false,\n formData: undefined,\n iFrameSrc: undefined,\n }),\n mounted() {\n if (this.schemaDri)\n this.selectStructure({\n name: undefined,\n dri: this.schemaDri,\n });\n },\n methods: {\n async saveEdit() {\n if (!this.selectedStructure)\n return;\n\n const postItem: VaultPostItem = {\n data: this.formData,\n id: this.item?.id,\n meta: {\n schema: this.selectedStructure.dri,\n },\n };\n\n // promise ensures we really await the correct saving of the item\n await new Promise((resolve) => {\n this.$emit('save', postItem, resolve);\n });\n\n return true;\n },\n async executeAction(action: Action) {\n this.isExecutingAction = true;\n\n // TODO: await saveEdit does not work\n // if saving did not work, we do not execute vaccination\n if (this.item && await this.saveEdit())\n try {\n await executeAction(action, getInstance(), this, this.item);\n } catch (e) {\n console.error(e);\n }\n\n this.isExecutingAction = false;\n },\n cancelEdit(): void {\n this.$emit('cancel');\n },\n selectStructure(structure?: SoyaStructure) {\n this.selectedStructure = structure;\n\n if (structure && !structure.name) {\n const item = (this.$store.state as IStore).schemaDRI.all.find(x => x.dri === structure.dri);\n if (item)\n structure.name = item.title;\n }\n\n this.showTypeahead = false;\n },\n async selectFromTypeahead(result: SoyaQueryResult): Promise {\n this.isLoading = true;\n\n this.selectStructure(result);\n\n this.isLoading = false;\n },\n onDataChange(event: { data: any }) {\n this.formData = event.data;\n },\n onIFrameSrcChange(src: string) {\n this.iFrameSrc = src;\n },\n },\n computed: {\n hasSelectedStructure(): boolean {\n return !!this.selectedStructure;\n },\n selectedStructureName(): string | undefined {\n return this.selectedStructure ? (this.selectedStructure.name || this.selectedStructure.dri) : undefined;\n },\n actions(): Action[] {\n // TODO: is this any nice?\n return getActionsFromConfig('settings', 'additionalFormActions').filter(x => (x as any).schemaDri === this.schemaDri);\n }\n },\n watch: {\n item: {\n handler(value: VaultItem | undefined) {\n this.formData = value?.data;\n },\n immediate: true,\n },\n schemaDri(value?: string) {\n if (value)\n this.selectStructure({\n name: undefined,\n dri: value,\n });\n else\n this.selectStructure(undefined);\n },\n async editableText(value: string) {\n if (!value)\n this.suggestItems = [];\n // type at least 3 characters\n else if (value.length >= 3)\n this.suggestItems = await new Soya().query({ name: value });\n }\n }\n})\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormEditView.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormEditView.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./FormEditView.vue?vue&type=template&id=2b2d6788&scoped=true&\"\nimport script from \"./FormEditView.vue?vue&type=script&lang=ts&\"\nexport * from \"./FormEditView.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./FormEditView.vue?vue&type=style&index=0&id=2b2d6788&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2b2d6788\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue, { PropType } from 'vue';\n\nimport { VaultItem, VaultMinMeta, VaultPostItem } from 'vaultifier';\nimport RawData from './RawData.vue';\n\nimport FormEditView from './FormEditView.vue';\n\nimport { ActionType } from '@/store/action-type';\n\ninterface Data {\n isSaving: boolean;\n activeTabIndex: number;\n}\n\nexport default Vue.extend({\n props: {\n item: Object as PropType,\n showRawView: {\n default: true,\n type: Boolean as PropType,\n },\n },\n data: (): Data => ({\n isSaving: false,\n activeTabIndex: 0,\n }),\n components: {\n RawData,\n FormEditView,\n },\n computed: {\n schemaDri(): string | undefined {\n return this.item.meta.schema;\n },\n hasSchema(): boolean {\n return !!this.schemaDri;\n },\n },\n methods: {\n async saveVaultItem(item: VaultPostItem, onComplete?: () => void) {\n this.isSaving = true;\n\n try {\n await this.$store.dispatch(ActionType.UPDATE_VAULT_ITEM, item);\n } catch {\n /* TODO: Error handling */\n }\n\n this.isSaving = false;\n\n if (onComplete)\n // indicate saving is complete\n onComplete();\n },\n },\n})\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DataVisualizer.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DataVisualizer.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./DataVisualizer.vue?vue&type=template&id=ccdc9328&scoped=true&\"\nimport script from \"./DataVisualizer.vue?vue&type=script&lang=ts&\"\nexport * from \"./DataVisualizer.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./DataVisualizer.vue?vue&type=style&index=0&id=ccdc9328&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"ccdc9328\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('section',{staticClass:\"col-md-4\"},[_c('list',{attrs:{\"isLoading\":_vm.isSchemaListLoading},on:{\"refresh\":_vm.fetchSchemas}},_vm._l((_vm.schemaDRIs),function(item){return _c('b-list-group-item',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.top\",value:(item.dri === undefined ? \"All data\" : undefined),expression:\"item.dri === undefined ? `All data` : undefined\",modifiers:{\"hover\":true,\"top\":true}}],key:item.dri,attrs:{\"active\":_vm.selectedSchema && item.dri === _vm.selectedSchema.dri,\"variant\":item.dri === undefined ? 'secondary' : undefined},on:{\"click\":function () { return _vm.selectSchema(item); }}},[_vm._v(\" \"+_vm._s(item.title || item.dri)+\" \")])}),1)],1),_c('section',{staticClass:\"col-md-8\"},[_c('b-tabs',{attrs:{\"content-class\":\"mt-3\",\"lazy\":\"\"},on:{\"activate-tab\":_vm.handleActivateTab},model:{value:(_vm.selectedTabIndex),callback:function ($$v) {_vm.selectedTabIndex=$$v},expression:\"selectedTabIndex\"}},[_c('b-tab',{attrs:{\"title\":\"Data Items\"}},[_c('list',{attrs:{\"isLoading\":_vm.isVaultItemListLoading,\"totalItems\":_vm.totalVaultItems,\"currentPage\":_vm.currentVaultPage,\"pageItems\":_vm.vaultPageItems},on:{\"refresh\":_vm.fetchVaultItems},scopedSlots:_vm._u([{key:\"header-end\",fn:function(){return [_c('custom-button',{on:{\"click\":_vm.addItem}},[_vm._v(\"New\")]),_vm._l((_vm.actions),function(action){return _c('custom-button',{key:action.key,attrs:{\"type\":_vm.isExecutingAction ? 'success-outline' : 'success',\"disabled\":_vm.isExecutingAction},on:{\"click\":function($event){return _vm.executeAction(action)}}},[(_vm.isExecutingAction)?_c('spinner'):[_vm._v(\" \"+_vm._s(action.title)+\" \")]],2)}),_c('custom-button',{attrs:{\"type\":\"danger\",\"disabled\":_vm.isDeleteButtonDisabled},on:{\"click\":_vm.deleteSelectedVaultItem}},[_vm._v(\"Delete\")])]},proxy:true}])},_vm._l((_vm.vaultItems),function(item){return _c('b-list-group-item',{key:item.id,attrs:{\"active\":_vm.selectedVaultItem && item.id === _vm.selectedVaultItem.id},on:{\"click\":function () { return _vm.selectVaultItem(item); }}},[_vm._v(\" \"+_vm._s(_vm.getListTitle(item))+\" \")])}),1)],1),_c('b-tab',{attrs:{\"title\":\"Charts\"}},[_c('b-input-group',{attrs:{\"prepend\":\"Page Size\"}},[_c('b-input',{model:{value:(_vm.dataItemCount),callback:function ($$v) {_vm.dataItemCount=$$v},expression:\"dataItemCount\"}})],1),_c('b-input-group',{attrs:{\"prepend\":\"Page Number\"}},[_c('b-input',{model:{value:(_vm.dataItemPage),callback:function ($$v) {_vm.dataItemPage=$$v},expression:\"dataItemPage\"}})],1),_c('chart-visualizer',{attrs:{\"items\":_vm.vaultItems}})],1)],1)],1),(_vm.showEditView)?_c('b-container',[(_vm.saveMessage)?_c('b-alert',{attrs:{\"show\":\"\",\"variant\":\"danger\"}},[_vm._v(\" \"+_vm._s(_vm.saveMessage)+\" \")]):_vm._e(),_c('form-edit-view',{staticClass:\"col-md-12 form-edit-view\",attrs:{\"schemaDri\":_vm.editViewSchemaDri,\"isSaving\":_vm.isSaving},on:{\"save\":_vm.saveVaultItem,\"cancel\":function () { return _vm._showEditView(false); }}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('inline-group',[_c('custom-button',{attrs:{\"disabled\":_vm.isLoading,\"type\":\"refresh\"},on:{\"click\":function () { return _vm.refresh(); }}}),_vm._t(\"header-end\")],2),_c('div',{staticClass:\"list-container\"},[(_vm.isLoading)?_c('spinner'):_c('b-list-group',{staticClass:\"list\"},[_vm._t(\"default\",function(){return [_c('b-list-group-item',{staticClass:\"list-group-item--nolink\"},[_vm._v(\"No items available\")])]})],2)],1),(_vm.totalItems && _vm.page && _vm.pageItems)?_c('div',[_c('div',[_c('b-input-group',{staticClass:\"d-flex justify-content-center\",attrs:{\"prepend\":\"Page\"}},[_c('b-form-input',{staticClass:\"input-page\",attrs:{\"disabled\":_vm.isLoading,\"type\":\"number\"},on:{\"keypress\":_vm.inputPageKeydown},model:{value:(_vm.inputPage),callback:function ($$v) {_vm.inputPage=$$v},expression:\"inputPage\"}})],1)],1),_c('b-pagination',{attrs:{\"disabled\":_vm.isLoading,\"total-rows\":_vm.totalItems,\"per-page\":_vm.pageItems,\"align\":\"fill\"},on:{\"page-click\":_vm.paginationPageChange},model:{value:(_vm.page),callback:function ($$v) {_vm.page=$$v},expression:\"page\"}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { BvEvent } from 'bootstrap-vue';\nimport Vue, { PropType } from 'vue';\nimport Spinner from './Spinner.vue';\nimport CustomButton from '../components/Button.vue';\nimport InlineGroup from '../components/InlineGroup.vue';\n\nexport interface RefreshObj {\n page?: number,\n}\n\ninterface Data {\n page?: number,\n inputPage?: number,\n}\n\nexport default Vue.extend({\n props: {\n isLoading: {\n type: Boolean as PropType,\n default: false,\n },\n totalItems: Number as PropType,\n currentPage: Number as PropType,\n pageItems: Number as PropType,\n },\n data: (): Data => ({\n page: undefined,\n inputPage: undefined,\n }),\n components: {\n Spinner,\n CustomButton,\n InlineGroup,\n },\n created() {\n this.page = this.currentPage;\n },\n watch: {\n currentPage() {\n this.page = this.currentPage;\n },\n page() {\n this.inputPage = this.page;\n }\n },\n methods: {\n changePage(page: number) {\n this.refresh(page);\n },\n paginationPageChange(_: BvEvent, page: number) {\n this.changePage(page);\n },\n refresh(page?: number) {\n this.$emit('refresh', {\n page,\n });\n },\n inputPageKeydown(event: KeyboardEvent) {\n if (this.inputPage && event.key === 'Enter')\n this.changePage(this.inputPage);\n }\n }\n});\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./List.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./List.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./List.vue?vue&type=template&id=3857e62a&scoped=true&\"\nimport script from \"./List.vue?vue&type=script&lang=ts&\"\nexport * from \"./List.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./List.vue?vue&type=style&index=0&id=3857e62a&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3857e62a\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b-form',[_c('b-input-group',{attrs:{\"prepend\":\"Scale X\"}},[_c('b-form-input',{model:{value:(_vm.scaleXExpression),callback:function ($$v) {_vm.scaleXExpression=$$v},expression:\"scaleXExpression\"}})],1),_vm._l((_vm.rows),function(row,idx){return _c('b-input-group',{key:idx,attrs:{\"prepend\":(\"Data \" + (idx+1))}},[_c('b-form-input',{model:{value:(row.expression),callback:function ($$v) {_vm.$set(row, \"expression\", $$v)},expression:\"row.expression\"}}),_c('b-input-group-append',[_c('b-button',{attrs:{\"variant\":\"success\"},on:{\"click\":function($event){return _vm.addRow(idx)}}},[_vm._v(\"+\")]),_c('b-button',{attrs:{\"disabled\":!_vm.canRemoveRow,\"variant\":_vm.canRemoveRow ? 'danger' : ''},on:{\"click\":function($event){return _vm.removeRow(idx)}}},[_vm._v(\"-\")])],1)],1)}),_c('b-button',{on:{\"click\":_vm.computeChartData}},[_vm._v(\" Update Chart \")]),_c('div',{staticClass:\"mt-3\"},[_vm._t(\"default\")],2)],2),(_vm.chartData)?_c('zingchart',{attrs:{\"data\":_vm.chartData}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import * as expressionEval from \"expression-eval\";\n\ntype parseExpression = expressionEval.parse.Expression & {\n name: string\n object: parseExpression,\n property: parseExpression,\n left?: parseExpression,\n right?: parseExpression,\n}\n\nexport class Evaluator {\n static makeSafeObject = (expression: parseExpression, obj: any, isObject?: boolean): any => {\n if (expression.type === 'Identifier') {\n if (isObject && typeof obj[expression.name] !== 'object')\n obj[expression.name] = {};\n else if (obj[expression.name] === undefined)\n obj[expression.name] = '';\n\n return obj[expression.name];\n }\n else if (expression.type === 'MemberExpression') {\n obj = Evaluator.makeSafeObject(expression.object, obj, isObject ?? true);\n obj = Evaluator.makeSafeObject(expression.property, obj, isObject ?? false);\n }\n else if (expression.left && expression.right) {\n Evaluator.makeSafeObject(expression.left, obj);\n Evaluator.makeSafeObject(expression.right, obj);\n }\n\n return obj;\n }\n\n static eval = (expression: string, value: any): any => {\n try {\n const exp = expressionEval.parse(expression) as parseExpression;\n Evaluator.makeSafeObject(exp, value);\n\n return expressionEval.eval(exp, value);\n }\n catch (e) {\n /* we don't mind any errors */\n }\n\n return expression;\n }\n\n static evalTypeAgnostic = (expression: string, value: any) => {\n const val = Evaluator.eval(expression, value);\n\n if (val instanceof Date)\n return new Intl.DateTimeFormat('de', {\n // @ts-ignore somehow TS does not know dateStyle and wants to complain\n dateStyle: 'short',\n timeStyle: 'medium',\n }).format(val);\n\n // try parsing values as float\n const floatVal = parseFloat(val);\n if (!isNaN(floatVal))\n return floatVal;\n\n return val;\n };\n}","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { VaultItem } from \"vaultifier\";\nimport Vue, { PropType } from \"vue\";\nimport 'zingchart/es6';\n//@ts-expect-error zingchart-vue does not have types\nimport zingchartVue from 'zingchart-vue';\nimport { Evaluator } from '../utils/evaluator';\n\ninterface Row {\n expression: string;\n}\n\ninterface Scale {\n labels: string[],\n}\n\ninterface ChartData {\n scaleX: Scale,\n type: string\n series: {\n values: any[],\n }[],\n}\n\ninterface Data {\n rows: Row[],\n labels: string[],\n scaleXExpression: string,\n chartData: ChartData | undefined,\n}\n\nexport default Vue.extend({\n components: {\n zingchart: zingchartVue,\n },\n props: {\n items: Array as PropType,\n },\n data: (): Data => ({\n rows: [{ expression: '' }],\n labels: [],\n scaleXExpression: '',\n chartData: undefined,\n }),\n computed: {\n canRemoveRow() {\n return this.rows.length > 1;\n },\n },\n methods: {\n addRow(idx: number) {\n this.rows.splice(idx + 1, 0, {\n expression: '',\n })\n },\n removeRow(idx: number) {\n this.rows.splice(idx, 1);\n },\n computeChartData(): ChartData | undefined {\n if (!this.items || this.items.length === 0)\n return;\n\n const data: ChartData = {\n type: 'area',\n scaleX: {\n labels: [],\n },\n series: [],\n }\n\n for (let j = 0, size = this.rows.length; j < size; j++) {\n const row = this.rows[j];\n\n if (!row.expression)\n continue;\n\n const series: any[] = [];\n\n for (let i = 0, size = this.items.length; i < size; i++) {\n const item = this.items[i];\n\n // only in first loop we populate labels\n if (j === 0) {\n data.scaleX.labels.push(Evaluator.evalTypeAgnostic(this.scaleXExpression, item) || (i + 1));\n }\n\n const value = Evaluator.evalTypeAgnostic(row.expression, item);\n\n if (value !== undefined && value !== null) {\n series.push(value);\n }\n }\n\n data.series.push({ values: series });\n }\n\n this.chartData = data.series.length === 0 ? undefined : data;\n return;\n },\n },\n});\n","import MainView from '../views/MainView.vue';\nimport SchemaView from '../views/SchemaView.vue';\nimport ItemView from '../views/ItemView.vue';\n\nexport enum RoutePath {\n MAIN_VIEW = '/',\n SCHEMA_VIEW = '/schema',\n ITEM_VIEW = '/item',\n}\n\nexport enum RouteParams {\n SCHEMA_DRI = 'schemaDri',\n ITEM_ID = 'itemId',\n}\n\nexport const routes = [\n {\n path: RoutePath.MAIN_VIEW,\n component: MainView\n },\n {\n path: RoutePath.SCHEMA_VIEW,\n component: SchemaView,\n props: () => {\n return { schemaDri: new URL(window.location.href).searchParams.get(RouteParams.SCHEMA_DRI) }\n },\n },\n {\n path: RoutePath.ITEM_VIEW,\n component: ItemView,\n props: () => {\n return { itemId: new URL(window.location.href).searchParams.get(RouteParams.ITEM_ID) }\n },\n },\n];","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartVisualizer.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChartVisualizer.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ChartVisualizer.vue?vue&type=template&id=0899f76a&\"\nimport script from \"./ChartVisualizer.vue?vue&type=script&lang=ts&\"\nexport * from \"./ChartVisualizer.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue from 'vue';\nimport { IFetchVaultItems, IStore } from '../store';\nimport List, { RefreshObj } from '../components/List.vue';\nimport CustomButton from '../components/Button.vue';\nimport ChartVisualizer from '../components/ChartVisualizer.vue';\nimport FormEditView from './FormEditView.vue';\nimport { VaultItem, VaultMinMeta, VaultPostItem, VaultSchema } from 'vaultifier/dist/module';\nimport { ActionType } from '@/store/action-type';\nimport { FetchState } from '@/store/fetch-state';\nimport { getInstance, soya } from '@/services';\nimport { NetworkResponse } from 'vaultifier/dist/module/communicator';\nimport { Action, executeAction, getActionsFromConfig } from '@/utils/actions';\nimport Handlebars from 'handlebars';\n\ninterface IData {\n selectedSchema?: VaultSchema,\n selectedListLabelTemplate?: string,\n\n showEditView: boolean,\n editViewSchema?: VaultSchema,\n isSaving: boolean,\n isExecutingAction: boolean,\n saveMessage?: string,\n\n // charting\n selectedTabIndex: number,\n dataItemCount: number,\n dataItemPage?: number,\n}\n\nexport default Vue.extend({\n mounted() {\n this.initialize();\n },\n data: (): IData => ({\n selectedSchema: undefined,\n selectedListLabelTemplate: undefined,\n\n showEditView: false,\n editViewSchema: undefined,\n isSaving: false,\n isExecutingAction: false,\n saveMessage: undefined,\n\n // charting\n selectedTabIndex: 0,\n dataItemCount: 50,\n dataItemPage: undefined,\n }),\n components: {\n CustomButton,\n FormEditView,\n List,\n ChartVisualizer,\n },\n methods: {\n async initialize() {\n await this.fetchSchemas();\n },\n async selectSchema(schema: VaultSchema) {\n const state = this.$store.state as IStore;\n\n this.selectedSchema = schema;\n // reset template as it needs to be fetched anew\n this.selectedListLabelTemplate = undefined;\n\n await this.fetchVaultItems();\n\n const doc = state.schemaDRI.current;\n if (doc) {\n try {\n const sparql = await soya.getSparqlBuilder(doc);\n const bindings = await sparql.query(`\n PREFIX soya: <${doc[\"@context\"][\"@base\"]}>\n SELECT * WHERE {\n ?base a soya:OverlayDataBudRendering .\n ?base ?label .\n }`);\n\n if (bindings[0])\n this.selectedListLabelTemplate = bindings[0].get('?label') || undefined;\n } catch { /* we don't care if this does not work */ }\n }\n },\n async selectVaultItem(item?: VaultMinMeta) {\n await this.$store.dispatch(ActionType.FETCH_VAULT_ITEM, item);\n },\n async fetchSchemas() {\n this.selectedSchema = undefined;\n await this.$store.dispatch(ActionType.FETCH_SCHEMA_DRIS);\n },\n async fetchVaultItems(refreshObj?: RefreshObj) {\n const isChart = this.selectedTabIndex === 1;\n\n let fetchObj: IFetchVaultItems = {\n schema: this.selectedSchema,\n page: refreshObj?.page,\n // we only want to fetch all the content if we display charts\n fetchContent: isChart,\n };\n\n if (isChart) {\n fetchObj.size = this.dataItemCount;\n fetchObj.page = this.dataItemPage;\n }\n\n await this.$store.dispatch(ActionType.FETCH_VAULT_ITEMS, fetchObj);\n },\n async deleteSelectedVaultItem() {\n await this.$store.dispatch(ActionType.DELETE_VAULT_ITEM, this.selectedVaultItem);\n await this.fetchSchemas();\n },\n async addItem() {\n await this.selectVaultItem(undefined);\n this._showEditView(true);\n },\n async executeAction(action: Action) {\n this.isExecutingAction = true;\n\n const vaultifier = getInstance();\n const state = this.$store.state as IStore;\n let response: NetworkResponse | undefined;\n\n try {\n response = await executeAction(action, vaultifier, this);\n } catch (e) {\n console.error(e);\n }\n\n if (response) {\n const vaultItemId = response.data.id;\n const vaultItem = await vaultifier.getItem({ id: vaultItemId });\n\n if (!vaultItem.meta.schema) {\n console.error('Vault item does not have schema DRI!');\n } else {\n await this.fetchSchemas();\n const schema = state.schemaDRI.all.find(x => x.dri === vaultItem.meta.schema);\n\n if (!schema) {\n console.error('Could not find schema DRI in internal list!');\n } else {\n await this.selectSchema(schema);\n await this.selectVaultItem(vaultItem);\n }\n }\n }\n\n this.isExecutingAction = false;\n },\n async saveVaultItem(postItem: VaultPostItem, onComplete?: () => void) {\n this.saveMessage = undefined;\n this.isSaving = true;\n\n try {\n await this.$store.dispatch(ActionType.UPDATE_VAULT_ITEM, postItem);\n this._showEditView(false);\n } catch (e) {\n console.error(e);\n this.saveMessage = 'Could not save item';\n }\n\n await this.fetchVaultItems();\n this.isSaving = false;\n\n if (onComplete)\n // indicate saving is complete\n onComplete();\n },\n _showEditView(show: boolean) {\n this.showEditView = show;\n this.saveMessage = undefined;\n this.editViewSchema = this.selectedSchema;\n\n this.$emit('showEditView', this.showEditView);\n },\n async handleActivateTab() {\n this.selectedSchema = undefined;\n this.$store.dispatch(ActionType.RESET_VAULT_ITEMS);\n },\n getListTitle(vaultItem: VaultItem) {\n if (this.selectedListLabelTemplate)\n return Handlebars.compile(this.selectedListLabelTemplate)(vaultItem.data);\n else\n return vaultItem.id;\n },\n },\n computed: {\n schemaDRIs(): (VaultSchema & { dri?: string })[] {\n return [{ dri: undefined, title: 'Default' }, ...this.$store.state.schemaDRI.all];\n },\n isSchemaListLoading(): boolean {\n return (this.$store.state as IStore).schemaDRI.state === FetchState.FETCHING;\n },\n vaultItems(): VaultItem[] | undefined {\n return this.$store.state.vaultItem.all;\n },\n isVaultItemListLoading(): boolean {\n return (this.$store.state as IStore).vaultItem.allState === FetchState.FETCHING;\n },\n selectedVaultItem(): VaultItem | undefined {\n return (this.$store.state as IStore).vaultItem.current;\n },\n hasSelectedVaultItem(): boolean {\n return !!this.selectedVaultItem;\n },\n isDeleteButtonDisabled(): boolean {\n return !this.hasSelectedVaultItem;\n },\n hasSelectedSchema(): boolean {\n return !!this.selectedSchema;\n },\n editViewSchemaDri(): string | undefined {\n return this.editViewSchema?.dri;\n },\n currentVaultPage(): number | undefined {\n return (this.$store.state as IStore).vaultItem.paging?.current;\n },\n totalVaultItems(): number | undefined {\n return (this.$store.state as IStore).vaultItem.paging?.totalItems;\n },\n vaultPageItems(): number | undefined {\n return (this.$store.state as IStore).vaultItem.paging?.pageItems;\n },\n actions(): Action[] {\n return getActionsFromConfig('settings', 'additionalListActions');\n }\n }\n})\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SchemaView.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SchemaView.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SchemaView.vue?vue&type=template&id=14577010&scoped=true&\"\nimport script from \"./SchemaView.vue?vue&type=script&lang=ts&\"\nexport * from \"./SchemaView.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./SchemaView.vue?vue&type=style&index=0&id=14577010&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"14577010\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"row\"},[_c('section',{staticClass:\"col-md-4\"},[_c('list',{attrs:{\"isLoading\":_vm.isRepoListLoading},on:{\"refresh\":_vm.fetchRepos}},_vm._l((_vm.repos),function(item){return _c('b-list-group-item',{key:item.id,attrs:{\"active\":_vm.selectedRepo && item.id === _vm.selectedRepo.id},on:{\"click\":function () { return _vm.selectRepo(item); }}},[_vm._v(_vm._s(item.name))])}),1)],1),_c('section',{staticClass:\"col-md-8\"},[_c('list',{attrs:{\"isLoading\":_vm.isVaultItemListLoading,\"totalItems\":_vm.totalVaultItems,\"currentPage\":_vm.currentVaultPage,\"pageItems\":_vm.vaultPageItems},on:{\"refresh\":_vm.fetchVaultItems},scopedSlots:_vm._u([{key:\"header-end\",fn:function(){return [_c('custom-button',{attrs:{\"type\":\"danger\",\"disabled\":_vm.isDeleteButtonDisabled},on:{\"click\":_vm.deleteSelectedVaultItem}},[_vm._v(\"Delete\")])]},proxy:true}])},_vm._l((_vm.vaultItems),function(item){return _c('b-list-group-item',{key:item.id,attrs:{\"active\":_vm.selectedVaultItem && item.id === _vm.selectedVaultItem.id},on:{\"click\":function () { return _vm.selectVaultItem(item); }}},[_vm._v(\" \"+_vm._s(item.id)+\" \")])}),1)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue from 'vue';\nimport { IFetchVaultItems, IStore } from '../store';\nimport List, { RefreshObj } from '../components/List.vue';\nimport CustomButton from '../components/Button.vue';\nimport { VaultItem, VaultMinMeta, VaultRepo } from 'vaultifier/dist/module';\nimport { ActionType } from '@/store/action-type';\nimport { FetchState } from '@/store/fetch-state';\n\ninterface IData {\n selectedRepo?: VaultRepo,\n}\n\nexport default Vue.extend({\n mounted() {\n this.initialize();\n },\n data: (): IData => ({\n selectedRepo: undefined,\n }),\n components: {\n List,\n CustomButton,\n },\n methods: {\n async initialize() {\n this.fetchRepos();\n },\n async selectRepo(item?: VaultRepo) {\n this.selectedRepo = item;\n\n this.fetchVaultItems();\n },\n async selectVaultItem(item?: VaultMinMeta) {\n this.$store.dispatch(ActionType.FETCH_VAULT_ITEM, item);\n },\n async fetchRepos() {\n this.selectedRepo = undefined;\n this.$store.dispatch(ActionType.FETCH_REPOS);\n },\n async fetchVaultItems(refreshObj?: RefreshObj) {\n const fetchObj: IFetchVaultItems = {\n repo: this.selectedRepo,\n page: refreshObj?.page,\n };\n\n this.$store.dispatch(ActionType.FETCH_VAULT_ITEMS, fetchObj);\n },\n async deleteSelectedVaultItem() {\n await this.$store.dispatch(ActionType.DELETE_VAULT_ITEM, this.selectedVaultItem);\n this.fetchRepos();\n },\n },\n computed: {\n store(): IStore {\n return this.$store.state as IStore;\n },\n repos(): VaultRepo[] | undefined {\n return this.store.repo.all;\n },\n isRepoListLoading(): boolean {\n return this.store.repo.state === FetchState.FETCHING;\n },\n vaultItems(): VaultItem[] | undefined {\n return this.$store.state.vaultItem.all;\n },\n isVaultItemListLoading(): boolean {\n return (this.$store.state as IStore).vaultItem.allState === FetchState.FETCHING;\n },\n hasSelectedVaultItem(): boolean {\n return !!this.selectedVaultItem;\n },\n isDeleteButtonDisabled(): boolean {\n return !this.hasSelectedVaultItem;\n },\n selectedVaultItem(): VaultItem | undefined {\n return (this.$store.state as IStore).vaultItem.current;\n },\n currentVaultPage(): number | undefined {\n return (this.$store.state as IStore).vaultItem.paging?.current;\n },\n totalVaultItems(): number | undefined {\n return (this.$store.state as IStore).vaultItem.paging?.totalItems;\n },\n vaultPageItems(): number | undefined {\n return (this.$store.state as IStore).vaultItem.paging?.pageItems;\n }\n }\n})\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RepoView.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RepoView.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RepoView.vue?vue&type=template&id=6885a059&\"\nimport script from \"./RepoView.vue?vue&type=script&lang=ts&\"\nexport * from \"./RepoView.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue from 'vue';\nimport { IStore, MutationType } from '../store';\nimport DataVisualizer from '../components/DataVisualizer.vue';\nimport Spinner from '../components/Spinner.vue';\nimport SchemaView from '../components/SchemaView.vue';\nimport RepoView from '../components/RepoView.vue';\nimport { VaultItem, VaultMinMeta } from 'vaultifier/dist/module';\nimport { FetchState } from '@/store/fetch-state';\n\nimport { getInstance } from '@/services';\nimport { ActionType } from '@/store/action-type';\n\ninterface Data {\n hasRepoSupport: boolean,\n}\n\nexport default Vue.extend({\n components: {\n DataVisualizer,\n Spinner,\n SchemaView,\n RepoView,\n },\n data: (): Data => ({\n hasRepoSupport: false,\n }),\n async created() {\n this.hasRepoSupport = (await getInstance().getVaultSupport()).repos;\n },\n computed: {\n selectedVaultItem(): VaultItem | undefined {\n return this.state.vaultItem.current;\n },\n hasSelectedVaultItem(): boolean {\n return !!this.selectedVaultItem;\n },\n state(): IStore {\n return this.$store.state as IStore;\n },\n isVaultItemLoading(): boolean {\n return this.state.vaultItem.currentState == FetchState.FETCHING;\n },\n isUiFluid(): boolean {\n return this.state.ui.isFluid;\n }\n },\n methods: {\n handleShowEditView(isShown: boolean) {\n if (isShown)\n this.$store.commit(MutationType.SET_VAULT_ITEM, undefined);\n },\n handleActivateTab() {\n this.$store.dispatch(ActionType.RESET_VAULT_ITEMS);\n },\n selectVaultItem(item: VaultMinMeta) {\n this.$store.dispatch(ActionType.FETCH_VAULT_ITEM, item);\n }\n }\n})\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainView.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainView.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./MainView.vue?vue&type=template&id=4ff6a4af&scoped=true&\"\nimport script from \"./MainView.vue?vue&type=script&lang=ts&\"\nexport * from \"./MainView.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./MainView.vue?vue&type=style&index=0&id=4ff6a4af&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4ff6a4af\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col-md-4\"},[_c('list',{attrs:{\"isLoading\":_vm.isVaultItemListLoading}},_vm._l((_vm.vaultItems),function(item){return _c('b-list-group-item',{key:item.id,attrs:{\"active\":item.id === _vm.selectedVaultItem.id},on:{\"click\":function () { return _vm.selectVaultItem(item); }}},[_vm._v(\" \"+_vm._s(item.id)+\" \")])}),1)],1),_c('div',{staticClass:\"col-md-8\"},[(_vm.hasSelectedVaultItem)?_c('data-visualizer',{attrs:{\"showRawView\":false,\"item\":_vm.selectedVaultItem}}):_vm._e()],1)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue, { PropType } from 'vue'\nimport { VaultItem, VaultMinMeta, VaultSchema } from 'vaultifier';\nimport List from '../components/List.vue';\nimport DataVisualizer from '../components/DataVisualizer.vue';\nimport { IStore } from '@/store';\nimport { FetchState } from '@/store/fetch-state';\nimport { ActionType } from '@/store/action-type';\n\nexport default Vue.extend({\n props: {\n schemaDri: String as PropType,\n },\n components: {\n DataVisualizer,\n List,\n },\n created() {\n this.initialize();\n },\n methods: {\n async initialize() {\n this.fetchVaultItems();\n },\n async selectVaultItem(item?: VaultMinMeta) {\n this.$store.dispatch(ActionType.FETCH_VAULT_ITEM, item);\n },\n async fetchVaultItems() {\n this.$store.dispatch(ActionType.FETCH_VAULT_ITEMS, { schema: { dri: this.schemaDri } });\n }\n },\n computed: {\n vaultItems(): VaultItem[] | undefined {\n return this.$store.state.vaultItem.all;\n },\n isVaultItemListLoading(): boolean {\n return (this.$store.state as IStore).vaultItem.allState === FetchState.FETCHING;\n },\n selectedVaultItem(): VaultItem | undefined {\n return (this.$store.state as IStore).vaultItem.current;\n },\n hasSelectedVaultItem(): boolean {\n return !!this.selectedVaultItem;\n },\n }\n})\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SchemaView.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SchemaView.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./SchemaView.vue?vue&type=template&id=04e5c71d&\"\nimport script from \"./SchemaView.vue?vue&type=script&lang=ts&\"\nexport * from \"./SchemaView.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-container',[(_vm.vaultItem)?_c('data-visualizer',{attrs:{\"item\":_vm.vaultItem}}):_c('spinner')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\nimport Vue from 'vue';\nimport DataVisualizer from '../components/DataVisualizer.vue';\n\nimport { IStore } from '@/store';\nimport { ActionType } from '@/store/action-type';\nimport { VaultItem, VaultMinMeta } from 'vaultifier';\nimport Spinner from '@/components/Spinner.vue';\nexport default Vue.extend({\n props: {\n itemId: String,\n },\n components: {\n DataVisualizer,\n Spinner,\n },\n mounted() {\n this.$store.dispatch(ActionType.FETCH_VAULT_ITEM, {\n id: parseInt(this.itemId)\n } as VaultMinMeta)\n },\n computed: {\n vaultItem(): VaultItem | undefined {\n return (this.$store.state as IStore).vaultItem.current;\n }\n }\n});\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ItemView.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ItemView.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ItemView.vue?vue&type=template&id=cf6a6122&\"\nimport script from \"./ItemView.vue?vue&type=script&lang=ts&\"\nexport * from \"./ItemView.vue?vue&type=script&lang=ts&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue';\nimport VueRouter from 'vue-router';\n\nimport { routes } from './routes';\nexport { RoutePath } from './routes'\n\nVue.use(VueRouter);\n\nexport const router = new VueRouter({\n routes,\n mode: 'hash',\n})","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { RoutePath } from '@/router';\nimport { getInstance } from '@/services';\nimport { IStore } from '@/store';\nimport { ActionType } from '@/store/action-type';\nimport { VaultEncryptionSupport } from 'vaultifier';\nimport { Action, executeAction, getActionsFromConfig } from '../utils/actions';\nimport Vue, { PropType } from 'vue'\n\nimport { ConfigService, PACKAGE } from '../services/config-service';\n\ninterface Data {\n workingAction?: Action,\n}\n\nexport default Vue.extend({\n props: {\n encryptionSupport: Object as PropType,\n settingsActions: Array as PropType,\n title: String as PropType,\n description: String as PropType,\n url: String as PropType,\n },\n data: (): Data => ({\n workingAction: undefined,\n }),\n methods: {\n async executeAction(action: Action) {\n this.workingAction = action;\n await executeAction(action, getInstance(), this);\n this.workingAction = undefined;\n },\n goHome() {\n this.$router.push(RoutePath.MAIN_VIEW);\n },\n toggleUiFluid() {\n this.$store.dispatch(ActionType.TOGGLE_UI_IS_FLUID);\n }\n },\n computed: {\n version() {\n return PACKAGE.version;\n },\n encryptionIcon(): string | undefined {\n if (!this.encryptionSupport)\n return '';\n\n const { supportsEncryption, supportsDecryption } = this.encryptionSupport;\n\n if (supportsEncryption && supportsDecryption)\n return 'lock-fill'\n else if (!supportsEncryption && !supportsDecryption)\n return undefined;\n else\n return 'lock';\n },\n actions(): Action[] {\n return getActionsFromConfig('settings', 'actions');\n },\n gearAnimation() {\n return this.workingAction ? 'spin' : undefined;\n },\n workingActionTitle() {\n return this.workingAction?.title;\n },\n state(): IStore {\n return this.$store.state as IStore;\n },\n isUiFluid(): boolean {\n return this.state.ui.isFluid;\n }\n }\n})\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBar.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBar.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./NavBar.vue?vue&type=template&id=19eddea2&scoped=true&\"\nimport script from \"./NavBar.vue?vue&type=script&lang=ts&\"\nexport * from \"./NavBar.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./NavBar.vue?vue&type=style&index=0&id=19eddea2&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"19eddea2\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"jumbotron\"},[_c('h1',{staticClass:\"display-5\"},[_vm._v(\"DataBud Login\")]),_c('b-form',{on:{\"submit\":_vm.submitForm}},[_c('b-form-group',{attrs:{\"label\":\"App Key:\"}},[_c('b-form-input',{attrs:{\"required\":\"\",\"name\":\"username\"},model:{value:(_vm.appKey),callback:function ($$v) {_vm.appKey=$$v},expression:\"appKey\"}})],1),_c('b-form-group',{attrs:{\"label\":\"App Secret:\"}},[_c('b-form-input',{attrs:{\"required\":\"\",\"name\":\"password\",\"type\":\"password\"},model:{value:(_vm.appSecret),callback:function ($$v) {_vm.appSecret=$$v},expression:\"appSecret\"}})],1),(_vm.scopeOptions)?_c('b-form-group',{attrs:{\"label\":\"Scope:\"}},[_c('b-form-select',{attrs:{\"required\":\"\",\"options\":_vm.scopeOptions},model:{value:(_vm.scope),callback:function ($$v) {_vm.scope=$$v},expression:\"scope\"}})],1):_vm._e(),_c('b-button',{attrs:{\"type\":\"submit\",\"variant\":\"primary\"}},[_vm._v(\"Login\")])],1),_c('div',{staticClass:\"mt-3\"},_vm._l((_vm.identityProviders),function(idp){return _c('b-button',{key:idp.authority,attrs:{\"variant\":\"outline-dark\"},on:{\"click\":function () { return _vm.$emit('useIdentityProvider', idp); }}},[(idp.imageUrl)?_c('img',{staticClass:\"button-icon\",attrs:{\"src\":idp.imageUrl}}):_vm._e(),_vm._v(\" \"+_vm._s(_vm.getIdentityProviderTitle(idp))+\" \")])}),1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue, { PropType } from 'vue';\nimport { OAuthIdentityProvider, OAuthSupport } from 'vaultifier';\nimport { getTranslation } from '../utils';\n\nexport interface Data {\n appKey: string,\n appSecret: string,\n scope?: string,\n}\n\nexport default Vue.extend({\n props: {\n scopes: Array as PropType,\n identityProviders: Array as PropType<(OAuthSupport | OAuthIdentityProvider)[] | undefined>,\n },\n data: (): Data => ({\n appKey: '',\n appSecret: '',\n scope: undefined,\n }),\n created() {\n if (this.scopes && this.scopes.length > 0)\n this.scope = this.scopes[0];\n },\n methods: {\n submitForm(event: Event) {\n event.preventDefault();\n\n this.$emit('login', {\n appKey: this.appKey,\n appSecret: this.appSecret,\n scope: this.scope,\n } as Data);\n },\n getIdentityProviderTitle(identityProvider: OAuthIdentityProvider) {\n // 'OAuth' is the default string for OYD-internal authorization code\n return getTranslation(identityProvider.title ?? 'OAuth');\n }\n },\n computed: {\n scopeOptions() {\n return this.scopes?.map((x) => ({\n text: x,\n value: x,\n }));\n }\n }\n})\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--15-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Login.vue?vue&type=template&id=c0fc6e04&scoped=true&\"\nimport script from \"./Login.vue?vue&type=script&lang=ts&\"\nexport * from \"./Login.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Login.vue?vue&type=style&index=0&id=c0fc6e04&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"c0fc6e04\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue from \"vue\";\nimport { setInstance as setVaultifier } from './services';\nimport Spinner from './components/Spinner.vue'\nimport NavBar from './components/NavBar.vue'\nimport Login, { Data as LoginData } from './components/Login.vue'\nimport { Vaultifier, VaultEncryptionSupport, VaultSupport, VaultInfo, VaultifierWeb, OAuthIdentityProvider, OAuthSupport, } from 'vaultifier';\nimport { RoutePath } from './router';\nimport { RouteParams } from \"./router/routes\";\nimport { IStore } from \"./store\";\nimport { ConfigService } from \"./services/config-service\";\n\nconst isLoginData = (data: any): data is LoginData => {\n const d = data as LoginData;\n return d.appKey !== undefined && d.appSecret !== undefined;\n}\n\ninterface IData {\n isInitializing: boolean,\n isLoggedIn: boolean,\n message?: string,\n encryptionSupport?: VaultEncryptionSupport,\n vaultSupport?: VaultSupport,\n vaultInfo?: VaultInfo,\n vaultUrl?: string,\n}\n\nexport default Vue.extend({\n components: {\n Spinner,\n Login,\n NavBar,\n },\n created() {\n this.initialize();\n },\n data: (): IData => ({\n isInitializing: true,\n isLoggedIn: false,\n message: undefined,\n encryptionSupport: undefined,\n vaultSupport: undefined,\n vaultInfo: undefined,\n vaultUrl: undefined,\n }),\n methods: {\n async initialize() {\n this.tryInitializeVaultifier();\n\n const { searchParams } = new URL(window.location.href);\n\n const schema = searchParams.get(RouteParams.SCHEMA_DRI);\n if (schema && this.$router.currentRoute.path !== RoutePath.SCHEMA_VIEW)\n this.$router.push(RoutePath.SCHEMA_VIEW);\n\n const itemId = searchParams.get(RouteParams.ITEM_ID);\n if (itemId && this.$router.currentRoute.path !== RoutePath.ITEM_VIEW)\n this.$router.push(RoutePath.ITEM_VIEW);\n },\n async tryInitializeVaultifier(credentials?: OAuthIdentityProvider | LoginData) {\n this.isInitializing = true;\n\n let vaultifier: Vaultifier | undefined = undefined;\n\n const vw = await VaultifierWeb.create({\n baseUrl: ConfigService.get('endpoint', 'url'),\n clientId: ConfigService.get('endpoint', 'clientId'),\n });\n\n if (vw.vaultifier)\n this.vaultUrl = vw.vaultifier.urls.baseUrl;\n\n try {\n if (credentials) {\n // APP_KEY and APP_SECRET based authentication\n if (vw.vaultifier && isLoginData(credentials)) {\n vw.vaultifier.setCredentials(credentials);\n await vw.vaultifier.initialize();\n }\n // external authentication provider\n else\n await vw.initialize({\n oAuthType: credentials as OAuthIdentityProvider,\n });\n }\n else\n await vw.initialize();\n } catch (e) {\n console.error(e);\n }\n\n if (vw.vaultifier) {\n vaultifier = vw.vaultifier;\n setVaultifier(vaultifier);\n }\n\n if (!vaultifier) {\n this.message = `Sorry. I was not able to create a vaultifier instance.\nTry looking into the browser console to gain more insights on the problem.`;\n this.isInitializing = false;\n return;\n }\n\n try {\n this.vaultSupport = await vaultifier.getVaultSupport();\n\n if (await vaultifier.isAuthenticated()) {\n this.isLoggedIn = true;\n }\n else {\n try {\n await vaultifier.initialize();\n this.isLoggedIn = await vaultifier.isAuthenticated();\n } catch { /* vaultifier throws an error if no credentials can be determined */ }\n }\n\n this.encryptionSupport = await vaultifier.setEnd2EndEncryption(true);\n\n if (this.isLoggedIn) {\n this.vaultInfo = await vaultifier.getVaultInfo();\n }\n }\n catch {\n if (vaultifier.urls.baseUrl)\n this.message = `I'm not sure ${vaultifier.urls.baseUrl} is the correct endpoint I should connect to. Please check this again.`;\n else\n this.message = `I could not find any endpoint to connect to.`\n }\n\n this.isInitializing = false;\n },\n logIn(credentials: LoginData) {\n this.tryInitializeVaultifier(credentials);\n },\n },\n computed: {\n hasMessage(): boolean {\n return !!this.message;\n },\n isLoginFormShowed(): boolean {\n return !this.isInitializing && !this.isLoggedIn;\n },\n title(): string {\n return this.vaultInfo?.name || 'OYD-DataBud';\n },\n description(): string | undefined {\n return this.vaultInfo?.description;\n },\n state(): IStore {\n return this.$store.state as IStore;\n },\n isUiFluid(): boolean {\n return this.state.ui.isFluid;\n },\n identityProviders(): (OAuthSupport | OAuthIdentityProvider)[] | undefined {\n return this.vaultSupport?.oAuth;\n }\n },\n watch: {\n title() {\n document.title = this.title;\n }\n }\n});\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--15-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/ts-loader/index.js??ref--15-3!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--15-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/ts-loader/index.js??ref--15-3!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=8af996cc&scoped=true&\"\nimport script from \"./App.vue?vue&type=script&lang=ts&\"\nexport * from \"./App.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=8af996cc&scoped=true&lang=css&\"\nimport style1 from \"./App.vue?vue&type=style&index=1&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"8af996cc\",\n null\n \n)\n\nexport default component.exports","import Vue from 'vue';\nimport App from './App.vue';\nimport { router } from './router';\nimport { getStore } from './store';\n\nimport { BootstrapVue, IconsPlugin } from 'bootstrap-vue';\nimport 'bootstrap/dist/css/bootstrap.css';\nimport 'bootstrap-vue/dist/bootstrap-vue.css';\n\nimport VueBootstrapTypeahead from 'vue-bootstrap-typeahead';\n\nimport { ConfigService } from './services/config-service';\n\n(async () => {\n await ConfigService.initialize();\n\n Vue.use(BootstrapVue);\n Vue.use(IconsPlugin);\n \n Vue.component('b-typeahead', VueBootstrapTypeahead);\n\n new Vue({\n router,\n store: getStore(),\n render: h => h(App)\n }).$mount('#app')\n}\n)();\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavBar.vue?vue&type=style&index=0&id=19eddea2&scoped=true&lang=css&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormEditView.vue?vue&type=style&index=0&id=2b2d6788&scoped=true&lang=css&\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RawData.vue?vue&type=style&index=0&id=b736e120&scoped=true&lang=css&\""],"sourceRoot":""}