\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t
`\r\n\t\t\t}\r\n\r\n\t\t\treturn new Promise((resolve, reject) => {\r\n\t\t\t\tthis.$modal.show(\r\n\t\t\t\t\tAlertDialog,\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\ttitle,\r\n\t\t\t\t\t\toptions,\r\n\t\t\t\t\t\tcomponent,\r\n\t\t\t\t\t\tcomponentProps: options.componentProps,\r\n\r\n\t\t\t\t\t\tcallback: (evt, modal) => {\r\n\t\t\t\t\t\t\tif (evt === \"confirmed\") {\r\n\t\t\t\t\t\t\t\tresolve(modal.$refs.component.$data.inputVal)\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\treject()\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{ height: \"auto\", width: \"350px\", ...options }\r\n\t\t\t\t)\r\n\t\t\t})\r\n\t\t}\r\n\t}\r\n}\r\n","import { API_BASE_URL } from \"@Platon/const\"\r\nimport EimzoMixin from \"./EimzoMixin\"\r\n\r\nexport default {\r\n\tmixins: [EimzoMixin],\r\n\tdata() {\r\n\t\treturn {\r\n\t\t\tisEimzoLoading: false,\r\n\t\t\tisIDCardLoading: false\r\n\t\t}\r\n\t},\r\n\tmounted() {\r\n\t\tif (this.$route.query.provider === \"e-imzo\") {\r\n\t\t\tthis.pickKey()\r\n\t\t}\r\n\t},\r\n\tmethods: {\r\n\t\tpickKey() {\r\n\t\t\tlet text = new Date().getTime().toString()\r\n\r\n\t\t\tthis.isEimzoLoading = true\r\n\r\n\t\t\tthis.$platonApp.signWithEIMZO(\r\n\t\t\t\ttext,\r\n\t\t\t\tasync (signResult, loadedKey) => {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tawait this.completeEIMZOLogin(signResult)\r\n\r\n\t\t\t\t\t\tlocalStorage.setItem(\"login_eimzo_key\", JSON.stringify(loadedKey))\r\n\t\t\t\t\t} catch (e) {\r\n\t\t\t\t\t\tlet { response } = e\r\n\t\t\t\t\t\tif (response && response.data && response.data.message) {\r\n\t\t\t\t\t\t\tlet status = response.status\r\n\t\t\t\t\t\t\tlet msg = response.data.message\r\n\t\t\t\t\t\t\tthis.$emit(\"login-error\", `${status}: ${msg}`)\r\n\t\t\t\t\t\t} else this.$emit(\"login-error\", e.message)\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis.isEimzoLoading = false\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\ttitle: this.$l(\"platon.enter_whith_eimzo\", \"Электрон рақамли имзо билан кириш\"),\r\n\t\t\t\t\tsignText: this.$l(\"platon.enter\", \"Кириш\"),\r\n\t\t\t\t\ttimestampProvider: this.getChallengeForSignature,\r\n\t\t\t\t\tclosed: () => {\r\n\t\t\t\t\t\tthis.isEimzoLoading = false\r\n\t\t\t\t\t},\r\n\t\t\t\t\thasChallenge: true\r\n\t\t\t\t}\r\n\t\t\t)\r\n\t\t},\r\n\r\n\t\tasync pickIDCard() {\r\n\t\t\tthis.isIDCardLoading = true\r\n\t\t\tlet data = await this.getChallengeForSignature\r\n\t\t\ttry {\r\n\t\t\t\tconst result = await this.client.createPkcs7(\"idcard\", data, this.$platonApp.getTimestampForSignature)\r\n\t\t\t\tawait this.completeEIMZOLogin(result)\r\n\t\t\t} catch (err) {\r\n\t\t\t\tthrow new Error(err)\r\n\t\t\t} finally {\r\n\t\t\t\tthis.isIDCardLoading = false\r\n\t\t\t}\r\n\t\t},\r\n\r\n\t\tasync getChallengeForSignature() {\r\n\t\t\tconst timestampResult = await this.$api.get(\"/auth/e-imzo\", {\r\n\t\t\t\tbaseURL: API_BASE_URL\r\n\t\t\t})\r\n\r\n\t\t\treturn timestampResult.data.challenge\r\n\t\t},\r\n\r\n\t\tasync completeEIMZOLogin(signedPcks) {\r\n\t\t\ttry {\r\n\t\t\t\tlet loginResult = await this.$api.post(\"/auth/e-imzo\", signedPcks, {\r\n\t\t\t\t\tbaseURL: API_BASE_URL,\r\n\t\t\t\t\theaders: { \"Content-Type\": \"text/plain\" }\r\n\t\t\t\t})\r\n\r\n\t\t\t\tlet { token, user } = loginResult.data\r\n\r\n\t\t\t\tthis.$emit(\"login-success\", {\r\n\t\t\t\t\tuser,\r\n\t\t\t\t\ttoken,\r\n\t\t\t\t\tparcel: { response: loginResult, signedPcks, type: \"login-EDS\" }\r\n\t\t\t\t})\r\n\t\t\t} catch (e) {\r\n\t\t\t\tif (e.response && e.response.data && e.response.data.message) {\r\n\t\t\t\t\tlet msg = e.response.data.message\r\n\r\n\t\t\t\t\tif (msg === \"Individuals are not allowed to login\") {\r\n\t\t\t\t\t\tthis.$emit(\"login-error\", \"Тизимга фақат юридик шахслар кириши мумкин\")\r\n\t\t\t\t\t\treturn\r\n\t\t\t\t\t} else if (msg === \"Legal entities are not allowed to login\") {\r\n\t\t\t\t\t\tthis.$emit(\"login-error\", \"Тизимга фақат жисмоний шахслар кириши мумкин\")\r\n\t\t\t\t\t\treturn\r\n\t\t\t\t\t} else if (msg === \"Invalid signer certificate\") {\r\n\t\t\t\t\t\tthis.$emit(\"login-error\", \"Калит билан имзолашда хатолик\")\r\n\t\t\t\t\t\treturn\r\n\t\t\t\t\t} else if (msg === \"Revoked signer certificate\") {\r\n\t\t\t\t\t\tthis.$emit(\r\n\t\t\t\t\t\t\t\"login-error\",\r\n\t\t\t\t\t\t\t\"Электрон имзо бекор қилинган.
Батафсил\"\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t\treturn\r\n\t\t\t\t\t} else if (msg === \"You're not allowed to login\") {\r\n\t\t\t\t\t\tthis.$emit(\r\n\t\t\t\t\t\t\t\"login-error\",\r\n\t\t\t\t\t\t\t\"Ушбу электрон рақамли имзо орқали тизимга киришга рухсат этилмаган.
Батафсил\"\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t\treturn\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthrow e\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.$isPageBlank())?_c('div',[_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[_c('router-view',{key:_vm.$route.path})],1)],1):_c('platon-layout',[_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[_c('router-view',{key:_vm.routeKey})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./PlatonApp.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./PlatonApp.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PlatonApp.vue?vue&type=template&id=79c41e64&\"\nimport script from \"./PlatonApp.vue?vue&type=script&lang=js&\"\nexport * from \"./PlatonApp.vue?vue&type=script&lang=js&\"\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 { downloadPlatonFile, generatePassword, platonFileUrl, platonImageUrl } from \"@Platon/core/helpers\"\r\n\r\nwindow.downloadPlatonFile = downloadPlatonFile\r\nwindow.platonFileUrl = platonFileUrl\r\nwindow.platonImageUrl = platonImageUrl\r\nwindow.genpass = generatePassword\r\n\r\n/**\r\n * @param {number} args\r\n * @return number\r\n */\r\nwindow.plus = function (...args) {\r\n\treturn args.reduce((t, c) => parseFloat((t + c).toFixed(10)))\r\n}\r\n\r\n/**\r\n * @param {number} args\r\n * @return number\r\n */\r\nwindow.minus = function (...args) {\r\n\treturn args.reduce((t, c) => parseFloat((t - c).toFixed(10)))\r\n}\r\n\r\n/**\r\n * @param {number} args\r\n * @return number\r\n */\r\nwindow.multiply = function (...args) {\r\n\treturn args.reduce((t, c) => parseFloat((t * c).toFixed(10)))\r\n}\r\n/**\r\n * @param {number} args\r\n * @return number\r\n */\r\nwindow.divide = function (...args) {\r\n\treturn args.reduce((t, c) => parseFloat((t / c).toFixed(10)))\r\n}\r\n","export default {\r\n\tAfterAuth: \"AfterAuth\",\r\n\tBeforeAuth: \"BeforeAuth\",\r\n\r\n\tBeforeLogin: \"BeforeLogin\",\r\n\tAfterLogin: \"AfterLogin\",\r\n\tSetUserTheme: \"SetUserTheme\",\r\n\r\n\tAfterLogout: \"AfterLogout\",\r\n\tOnPageOpened: \"OnPageOpened\",\r\n\tOnTableOpened: \"OnTableOpened\",\r\n\tOnFormRead: \"OnFormRead\",\r\n\tOnFormInsert: \"OnFormInsert\",\r\n\tOnFormUpdate: \"OnFormUpdate\",\r\n\tOnFormDelete: \"OnFormDelete\",\r\n\tOnFormHardDelete: \"OnFormHardDelete\",\r\n\r\n\tAfterInit: \"AfterInit\"\r\n}\r\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UnAuthorizationWithMFA.vue?vue&type=style&index=0&id=dedfce92&prod&lang=scss&scoped=true&\"","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!./CopyableComponent.vue?vue&type=style&index=0&id=12590a10&prod&lang=css&\"","import { or, parseValue } from \"@Platon/core/helpers\"\r\n\r\nexport default {\r\n\tprops: {\r\n\t\tvalue: {},\r\n\t\tdefaultValue: {}\r\n\t},\r\n\r\n\tdata() {\r\n\t\tlet local = parseValue(or(this.value, or(this.defaultValue, null)), this.parseAs)\r\n\r\n\t\treturn {\r\n\t\t\tlocal\r\n\t\t}\r\n\t},\r\n\r\n\tmounted() {\r\n\t\t// this.updateLocal(parseValue(or(this.value, or(this.defaultValue, null)), this.parseAs))\r\n\t},\r\n\r\n\tcomputed: {\r\n\t\tparseAs() {\r\n\t\t\treturn \"default\"\r\n\t\t}\r\n\t},\r\n\r\n\tmethods: {\r\n\t\tupdateLocal(value) {\r\n\t\t\tif (value != this.local) {\r\n\t\t\t\tthis.local = value\r\n\t\t\t\tthis.$emit(\"input\", value)\r\n\t\t\t}\r\n\t\t}\r\n\t},\r\n\twatch: {\r\n\t\tvalue(val, old) {\r\n\t\t\tthis.local = val\r\n\t\t}\r\n\t}\r\n}\r\n","import ValueEmitter from \"@Platon/mixins/ValueEmitter\"\r\n\r\nexport default {\r\n\tmixins: [ValueEmitter],\r\n\r\n\tprops: {\r\n\t\t/** @type PlatonFormElement */\r\n\t\titem: {},\r\n\t\tname: {},\r\n\t\tdisabled: {},\r\n\t\treadonly: {},\r\n\t\tplaceholder: {},\r\n\t\tid: {}\r\n\t},\r\n\r\n\tdata() {\r\n\t\tlet attrs = { ...this.$attrs } || {}\r\n\r\n\t\tif (this.item && this.item.attributes) {\r\n\t\t\tattrs = { ...attrs, ...this.item.attributes }\r\n\t\t}\r\n\r\n\t\treturn {\r\n\t\t\tattrs,\r\n\t\t\tflashErrors: []\r\n\t\t}\r\n\t},\r\n\r\n\tcomputed: {\r\n\t\tcombinedErrors() {\r\n\t\t\tlet errors = [...this.flashErrors]\r\n\r\n\t\t\tif (this.validationErrors) {\r\n\t\t\t\terrors.push(...this.validationErrors)\r\n\t\t\t}\r\n\r\n\t\t\treturn errors\r\n\t\t},\r\n\r\n\t\tisDisabledOrReadOnly() {\r\n\t\t\treturn this.disabled || this.readonly\r\n\t\t}\r\n\t},\r\n\r\n\tmethods: {\r\n\t\tfocusField() {\r\n\t\t\tlet input = this.$el.querySelector(\"input\")\r\n\r\n\t\t\tif (input) {\r\n\t\t\t\tinput.focus({\r\n\t\t\t\t\tpreventScroll: true\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"DialogWithOTPVerification\"},[_c('Modal',{attrs:{\"has-footer\":true,\"footer-actions\":_vm.modalActions,\"can-cancel\":false},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.$l(\"platon.confirm-one-time-code\", \"Бир марталик кодни тасдиқланг\"))+\" \")]},proxy:true}])},[_c('AuthorizationWithMFA',{attrs:{\"state\":_vm.verificationState},on:{\"authorization\":_vm.setAuthorizationOtpCode,\"authorizationSubmit\":_vm.authorizationSubmit}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","
\r\n \r\n
\r\n {{ $l(\"platon.confirm-one-time-code\", \"Бир марталик кодни тасдиқланг\") }} \r\n \r\n \r\n
\r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DialogWithOTPVerification.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DialogWithOTPVerification.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DialogWithOTPVerification.vue?vue&type=template&id=1a3598b1&scoped=true&\"\nimport script from \"./DialogWithOTPVerification.vue?vue&type=script&lang=js&\"\nexport * from \"./DialogWithOTPVerification.vue?vue&type=script&lang=js&\"\nimport style0 from \"./DialogWithOTPVerification.vue?vue&type=style&index=0&id=1a3598b1&prod&lang=scss&scoped=true&\"\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 \"1a3598b1\",\n null\n \n)\n\nexport default component.exports","import { API_BASE_URL, LOGIN_ENDPOINT } from \"@Platon/const\"\r\n\r\nexport default {\r\n\tdata() {\r\n\t\treturn {\r\n\t\t\tisLoggingIn: false\r\n\t\t}\r\n\t},\r\n\r\n\tmethods: {\r\n\t\tasync tryLogin(username, password) {\r\n\t\t\ttry {\r\n\t\t\t\tthis.isLoggingIn = true\r\n\t\t\t\tconst response = await this.$http.post(\r\n\t\t\t\t\tLOGIN_ENDPOINT,\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tusername,\r\n\t\t\t\t\t\tpassword\r\n\t\t\t\t\t},\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tbaseURL: API_BASE_URL\r\n\t\t\t\t\t}\r\n\t\t\t\t)\r\n\r\n\t\t\t\tthis.isLoggingIn = false\r\n\r\n\t\t\t\tthis.$emit(\"login-success\", {\r\n\t\t\t\t\tuser: response.data.user,\r\n\t\t\t\t\ttoken: response.data.token,\r\n\t\t\t\t\tparcel: { username, password, response, type: \"login-password\" }\r\n\t\t\t\t})\r\n\t\t\t} catch (e) {\r\n\t\t\t\tthis.isLoggingIn = false\r\n\t\t\t\tconst response = e.response\r\n\r\n\t\t\t\tif (response)\r\n\t\t\t\t\tif (response.status === 401) {\r\n\t\t\t\t\t\tthis.$emit(\r\n\t\t\t\t\t\t\t\"login-error\",\r\n\t\t\t\t\t\t\tthis.$l(\"platon.login_invalid_credentials\", \"Логин ёки пароль нотугри!\")\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tthis.$emit(\r\n\t\t\t\t\t\t\t\"login-error\",\r\n\t\t\t\t\t\t\tresponse.error ? response.error.message : this.$l(\"platon.error\", \"Хатолик\")\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n","import { API_BASE_URL } from \"@Platon/const\"\r\nimport { $api } from \"@Platon/core/core\"\r\nimport PluginEvents from \"@Platon/core/plugins/PluginEvents\"\r\n\r\nexport const actions = {\r\n\t/**\r\n\t * @param {ActionContext} context\r\n\t * @param {{orgId: string}} payload\r\n\t */\r\n\tasync switchOrganization(context, payload) {\r\n\t\ttry {\r\n\t\t\tlet response = await $api({\r\n\t\t\t\tbaseURL: API_BASE_URL,\r\n\t\t\t\turl: \"auth/change_user_org\",\r\n\t\t\t\tparams: {\r\n\t\t\t\t\torg_id: payload.orgId\r\n\t\t\t\t}\r\n\t\t\t})\r\n\r\n\t\t\t// update current user's orgId\r\n\t\t\tcontext.commit(\"setUserParam\", { key: \"orgId\", value: payload.orgId })\r\n\t\t} catch (e) {\r\n\t\t\tconsole.log(\"Error while changing org\", e)\r\n\t\t}\r\n\t},\r\n\r\n\t/**\r\n\t *\r\n\t * @param context\r\n\t * @param payload\r\n\t * @param {function} payload.afterLogout\r\n\t * @param {string} payload.redirectUrl\r\n\t * @returns {Promise
}\r\n\t */\r\n\tasync logout(context, payload) {\r\n\t\ttry {\r\n\t\t\tawait PlatonPluginCore.triggerEvent(PluginEvents.AfterLogout, context.state.user)\r\n\t\t} catch (e) {\r\n\t\t\tconsole.error(e)\r\n\t\t} finally {\r\n\t\t\tcontext.commit(\"doLogout\")\r\n\r\n\t\t\tsetTimeout(async () => {\r\n\t\t\t\tif (typeof payload.afterLogout === \"function\") {\r\n\t\t\t\t\tawait payload.afterLogout()\r\n\t\t\t\t}\r\n\r\n\t\t\t\tlocation.href = payload.redirectUrl\r\n\t\t\t}, 50)\r\n\t\t}\r\n\t}\r\n}\r\n","export const getters = {\r\n\tmenu(state) {\r\n\t\treturn state.menu.concat(state.customMenu).sort((/** PlatonMenu */ a, /** PlatonMenu */ b) => {\r\n\t\t\treturn a.sortOrder - b.sortOrder\r\n\t\t})\r\n\t},\r\n\r\n\t/**\r\n\t * @param state\r\n\t * @return {User|null}\r\n\t */\r\n\tuser(state) {\r\n\t\treturn state.user\r\n\t},\r\n\r\n\tmenuCollapsed(state) {\r\n\t\treturn state.menuCollapsed\r\n\t},\r\n\r\n\tisAuth(state) {\r\n\t\treturn !!state.user\r\n\t},\r\n\r\n\ttheme(state) {\r\n\t\treturn state.theme\r\n\t},\r\n\r\n\tthemeColor(state) {\r\n\t\treturn state.themeColor\r\n\t}\r\n}\r\n","import Vue from \"vue\"\r\n\r\nexport const mutations = {\r\n\t/**\r\n\t * @param state\r\n\t * @param {PlatonMenu[]} menu\r\n\t */\r\n\tsetMenu(state, menu) {\r\n\t\tstate.menu = menu\r\n\t},\r\n\r\n\t/**\r\n\t * @param state\r\n\t * @param {PlatonMenu[]} menu\r\n\t */\r\n\tsetCustomMenu(state, menu) {\r\n\t\tstate.customMenu = menu\r\n\t},\r\n\r\n\t/**\r\n\t * @param state\r\n\t * @param {boolean} mode\r\n\t */\r\n\tsetForceUserMode(state, mode) {\r\n\t\tstate.forceUserMode = mode\r\n\t},\r\n\r\n\t/**\r\n\t * @param state\r\n\t */\r\n\ttoggleMenuCollapse(state) {\r\n\t\tlet collapse = !localStorage.getItem(\"menuCollapsed\")\r\n\t\tstate.menuCollapsed = collapse\r\n\r\n\t\tif (collapse) localStorage.setItem(\"menuCollapsed\", \"1\")\r\n\t\telse {\r\n\t\t\tlocalStorage.removeItem(\"menuCollapsed\")\r\n\t\t}\r\n\t},\r\n\r\n\t/**\r\n\t * @param state\r\n\t * @param payload\r\n\t * @param {string} payload.token\r\n\t * @param {boolean} payload.saveLoginPage\r\n\t * @param {User} payload.user\r\n\t */\r\n\tdoLogin(state, { token, user, saveLoginPage = true }) {\r\n\t\tlocalStorage[\"auth_token\"] = token\r\n\t\tlocalStorage[\"auth_user\"] = JSON.stringify(user)\r\n\r\n\t\tif (saveLoginPage) localStorage[\"login_url\"] = window.location.href\r\n\r\n\t\tstate.user = user\r\n\t\tstate.isAuth = true\r\n\t},\r\n\r\n\tchangeLocale(state, newLocale) {\r\n\t\tstate.user.locale = newLocale\r\n\r\n\t\tlocalStorage[\"auth_user\"] = JSON.stringify(state.user)\r\n\t},\r\n\r\n\tdoLogout(state) {\r\n\t\tlocalStorage.removeItem(\"auth_user\")\r\n\t\tlocalStorage.removeItem(\"auth_token\")\r\n\t\tlocalStorage.removeItem(\"login_url\")\r\n\t\tlocalStorage.removeItem(\"menuCollapsed\")\r\n\t\tlocalStorage.removeItem(\"ssv_access_token\")\r\n\t\tlocalStorage.removeItem(\"ssv_refresh_token\")\r\n\r\n\t\tstate.user = null\r\n\t\tstate.isAuth = false\r\n\t},\r\n\r\n\tsetUserParam(state, { key, value }) {\r\n\t\tVue.set(state.user, key, value)\r\n\t},\r\n\r\n\tsetTheme(state, { theme, color }) {\r\n\t\tstate.theme = theme\r\n\t\tstate.themeColor = color\r\n\t\tlocalStorage.setItem(\"platon_theme\", theme)\r\n\t\tlocalStorage.setItem(\"platon_theme_color\", color)\r\n\t}\r\n}\r\n","import { localeInfo } from \"@Platon/core/translations\"\r\nimport { DEFAULT_THEME, DEFAULT_THEME_COLOR } from \"@Platon/const\"\r\n\r\nfunction isMenuCollapsed() {\r\n\tconst isDimensionMobile = window.innerWidth < 768\r\n\r\n\treturn isDimensionMobile || !!localStorage.getItem(\"menuCollapsed\")\r\n}\r\n\r\nexport default {\r\n\ttheme: localStorage.getItem(\"platon_theme\") || DEFAULT_THEME,\r\n\tthemeColor: localStorage.getItem(\"platon_theme_color\") || DEFAULT_THEME_COLOR,\r\n\r\n\tmenu: [],\r\n\tcustomMenu: [],\r\n\r\n\tmenuCollapsed: isMenuCollapsed(),\r\n\r\n\tuser: null,\r\n\tlocale: localeInfo.locale,\r\n\r\n\tisAuth: false,\r\n\tforceUserMode: false,\r\n\tauthAttempt: false\r\n}\r\n","import { actions } from \"@Platon/store/platon/actions\"\r\nimport { getters } from \"@Platon/store/platon/getters\"\r\nimport { mutations } from \"@Platon/store/platon/mutations\"\r\nimport state from \"@Platon/store/platon/state\"\r\n\r\nexport const PlatonModule = {\r\n\tnamespaced: true,\r\n\tstate,\r\n\tmutations,\r\n\tgetters,\r\n\tactions\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('canvas',{staticClass:\"snowf-canvas\"})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Winter.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Winter.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Winter.vue?vue&type=template&id=070c82a8&scoped=true&\"\nimport script from \"./Winter.vue?vue&type=script&lang=js&\"\nexport * from \"./Winter.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Winter.vue?vue&type=style&index=0&id=070c82a8&prod&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 \"070c82a8\",\n null\n \n)\n\nexport default component.exports","import PlatonPlugin from \"@Platon/core/plugins/PlatonPlugin\"\r\nimport PluginEvents from \"@Platon/core/plugins/PluginEvents\"\r\nimport { API_BASE_URL } from \"@Platon/const\"\r\n\r\nexport default class LoadUserOrganizationsAfterLogin extends PlatonPlugin {\r\n\tload(core) {\r\n\t\tsuper.load(core)\r\n\r\n\t\tcore.registerEvent(PluginEvents.AfterLogin, this.loadUserOrganizations.bind(this))\r\n\t\tcore.registerEvent(PluginEvents.AfterAuth, this.loadOrgsFromLocalStorage.bind(this))\r\n\t}\r\n\r\n\t/**\r\n\t * @param {PlatonPluginCore} core\r\n\t * @param {User} user\r\n\t * @param {string} token\r\n\t */\r\n\tasync loadUserOrganizations(core, user, token) {\r\n\t\tif (!user.registeredWithEimzo) {\r\n\t\t\treturn\r\n\t\t}\r\n\r\n\t\t// Legal entities doesn't have organizations\r\n\t\tif (user.eimzoAllowToLogin === \"legal\") {\r\n\t\t\treturn\r\n\t\t}\r\n\r\n\t\tlet organizations = await this.core.$root.$api.get(\"/auth/user_organizations\", {\r\n\t\t\tbaseURL: API_BASE_URL,\r\n\t\t\theaders: {\r\n\t\t\t\tAuthorization: `Bearer ${token}`\r\n\t\t\t}\r\n\t\t})\r\n\r\n\t\t/**\r\n\t\t * @type {UserOrganization[]}\r\n\t\t */\r\n\t\tlet organizationList = organizations.data\r\n\r\n\t\tif (user.eimzoAllowToLogin && [\"all\", \"individuals\"].includes(user.eimzoAllowToLogin) && user.pinfl) {\r\n\t\t\torganizationList.push({\r\n\t\t\t\tpinfl: user.pinfl.toString(),\r\n\t\t\t\tname: user.fullName\r\n\t\t\t})\r\n\t\t}\r\n\r\n\t\tlocalStorage.setItem(\"user_organizations\", JSON.stringify(organizationList))\r\n\r\n\t\tthis.loadIntoState(organizationList)\r\n\r\n\t\t// If user has only contains 1 organization and user organization is not set, set this org to user org\r\n\t\tif (organizationList.length === 1 && !user.orgId) {\r\n\t\t\tlet orgId = organizationList[0].pinfl || organizationList[0].tin\r\n\t\t\tawait this.core.store.dispatch(\"platon/switchOrganization\", { orgId })\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * @param {UserOrganization[]} organizations\r\n\t */\r\n\tloadIntoState(organizations) {\r\n\t\tthis.core.store.commit(\"platon/setUserParam\", { key: \"organizations\", value: organizations })\r\n\t}\r\n\r\n\tasync loadOrgsFromLocalStorage() {\r\n\t\tlet user = this.core.store.state.platon.user\r\n\r\n\t\tif (user) {\r\n\t\t\t// Legal entities doesn't have organizations\r\n\t\t\tif (user.eimzoAllowToLogin === \"legal\") {\r\n\t\t\t\treturn\r\n\t\t\t}\r\n\r\n\t\t\tlet orgs = JSON.parse(localStorage.getItem(\"user_organizations\"))\r\n\r\n\t\t\tthis.loadIntoState(Array.isArray(orgs) ? orgs : [])\r\n\t\t}\r\n\t}\r\n}\r\n","import PlatonPlugin from \"@Platon/core/plugins/PlatonPlugin\"\r\nimport PluginEvents from \"@Platon/core/plugins/PluginEvents\"\r\nimport { pickUserOrganization } from \"@Platon/mixins/pickUserOrganization\"\r\n\r\nexport default class PickOrganizationAfterAuth extends PlatonPlugin {\r\n\tload(core) {\r\n\t\tsuper.load(core)\r\n\r\n\t\tcore.registerEvent(PluginEvents.AfterAuth, this.afterAuth.bind(this))\r\n\t}\r\n\r\n\t/**\r\n\t * @param {PlatonPluginCore} core\r\n\t * @param {User} user\r\n\t */\r\n\tasync afterAuth(core, user) {\r\n\t\tif (!user.registeredWithEimzo) {\r\n\t\t\treturn\r\n\t\t}\r\n\r\n\t\t// jismoniy bo'lsa, legal bo'lsa korxonalari bor bo'lsa kiradi\r\n\t\t// jismoniy bo'lsa, individuals bo'lsa faqat o'zi bilan kiradi\r\n\t\t// jismoniy bo'lsa, all bo'lsa biror yo o'zini yoki korxonani tanlab kiradi\r\n\r\n\t\t// yuridik bo'lsa, legal bo'lsa biror korxonani tanlab kiradi, hozircha faqat o'zi bilan kiradi\r\n\t\t// yuridik bo'lsa, individuals bo'lsa kirolmaydi umuman\r\n\t\t// yuridik bo'lsa, all bo'lsa biror korxonani tanlab kiradi\r\n\t\t// yuridiklar faqat hozir bitta o'zini korxonasi bilan kiradi\r\n\r\n\t\t// agar user jismoniy bo'lsa\r\n\t\tif (user.pinfl) {\r\n\t\t\t// agar tizimga faqat jismoniylar kirishi ruxsat berilgan bo'lsa\r\n\t\t\tif ([\"all\", \"legal\"].includes(user.eimzoAllowToLogin)) {\r\n\t\t\t\t// agar user tanlanmagan bo'lsa\r\n\t\t\t\tif (!user.orgId && Array.isArray(user.organizations) && user.organizations.length > 0) {\r\n\t\t\t\t\tlet userOrgId = await pickUserOrganization(core.$root, user.organizations)\r\n\t\t\t\t\tcore.store.commit(\"platon/setUserParam\", { key: \"orgId\", value: userOrgId })\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n","import PlatonPlugin from \"@Platon/core/plugins/PlatonPlugin\"\r\n\r\nexport default class PlatonSentryPlugin extends PlatonPlugin {\r\n\tload(core) {\r\n\t\tsuper.load(core)\r\n\r\n\t\tif (process.env.VUE_APP_ENABLE_SENTRY) {\r\n\t\t\tthis.loadSentry()\r\n\t\t}\r\n\t}\r\n\r\n\tloadSentry() {\r\n\t\tif (process.env.NODE_ENV == \"production\") {\r\n\t\t\tconst { Integrations } = require(\"@sentry/tracing\")\r\n\t\t\tconst Sentry = require(\"@sentry/vue\")\r\n\r\n\t\t\tSentry.init({\r\n\t\t\t\turl: process.env.SENTRY_URL || \"https://sentry.platon.uz\",\r\n\t\t\t\tdsn: process.env.VUE_APP_SENTRY_DNS,\r\n\t\t\t\trelease: require(\"../../../package.json\").version,\r\n\t\t\t\tenvironment: process.env.NODE_ENV,\r\n\r\n\t\t\t\tintegrations: [new Integrations.BrowserTracing()],\r\n\t\t\t\tVue: window.PlatonVue,\r\n\t\t\t\ttracesSampleRate: 0.2\r\n\t\t\t})\r\n\t\t}\r\n\t}\r\n}\r\n","import PlatonPlugin from \"@Platon/core/plugins/PlatonPlugin\"\r\nimport PluginEvents from \"@Platon/core/plugins/PluginEvents\"\r\nimport { setNewLocale } from \"@Platon/core/translations\"\r\n\r\nexport default class SetLocaleOfUserAfterAuth extends PlatonPlugin {\r\n\tload(core) {\r\n\t\tsuper.load(core)\r\n\r\n\t\tcore.registerEvent(PluginEvents.AfterLogin, this.AfterLogin.bind(this))\r\n\t}\r\n\r\n\t/**\r\n\t * @param {PlatonPluginCore} core\r\n\t * @param {User} user\r\n\t */\r\n\tasync AfterLogin(core, user) {\r\n\t\tif (user.locale) {\r\n\t\t\tsetNewLocale(user.locale)\r\n\t\t}\r\n\t}\r\n}\r\n","import PlatonPlugin from \"@Platon/core/plugins/PlatonPlugin\"\r\nimport PluginEvents from \"@Platon/core/plugins/PluginEvents\"\r\nimport { themeChanger } from \"@Platon/core/theme/theme-change\"\r\nimport { themeModes } from \"@Platon/const\"\r\n\r\nexport default class SetUserThemeAfterLogin extends PlatonPlugin {\r\n\tload(core) {\r\n\t\tsuper.load(core)\r\n\r\n\t\tcore.registerEvent(PluginEvents.SetUserTheme, this.themeInitialize.bind(this))\r\n\t}\r\n\r\n\thasAccessToChaneTheme(core, user) {\r\n\t\tif (!user) return false\r\n\r\n\t\tconst permissions = user.permissions || []\r\n\t\tconst permitStatus = permissions.some((el) => el.startsWith(\"platon.admin.hidden\"))\r\n\r\n\t\treturn !permitStatus\r\n\t}\r\n\r\n\tthemeInitialize(core, user) {\r\n\t\t// console.log(\"START\", core, user)\r\n\t\tconst projectTheme = this.getProjectTheme(core, user)\r\n\t\tconst activeTheme = this.getActiveTheme(core, user)\r\n\t\tconst storedTheme = this.getStoredTheme(core, user)\r\n\t\tlet theme = activeTheme || (this.hasAccessToChaneTheme && storedTheme ? storedTheme : projectTheme)\r\n\r\n\t\tif (theme) {\r\n\t\t\tthis.core.store.commit(\"platon/setTheme\", {\r\n\t\t\t\ttheme: theme.name,\r\n\t\t\t\tcolor: theme.color\r\n\t\t\t})\r\n\r\n\t\t\tconst change = themeChanger()\r\n\t\t\tcore.store.state.platon && change(core.store.state.platon.theme)\r\n\t\t}\r\n\t}\r\n\r\n\tgetTheme(theme) {\r\n\t\treturn themeModes.find((mode) => mode.key === theme) || themeModes[0]\r\n\t}\r\n\r\n\tgetThemeColors(theme, themeColor) {\r\n\t\treturn theme.colors.find((color) => color.key === themeColor) || theme.colors[0]\r\n\t}\r\n\r\n\tgetProjectTheme() {\r\n\t\tif (Vue.prototype.$projectInfo && !Vue.prototype.$projectInfo.theme) return null\r\n\t\tconst { name, color } = !Vue.prototype.$projectInfo.theme\r\n\r\n\t\tif (!name) return null\r\n\r\n\t\treturn { name, color }\r\n\t}\r\n\r\n\tgetStoredTheme() {\r\n\t\tconst theme = localStorage.getItem(\"platon_theme\")\r\n\t\tif (!theme) return null\r\n\r\n\t\treturn {\r\n\t\t\tname: theme,\r\n\t\t\tcolor: localStorage.getItem(\"platon_theme_color\")\r\n\t\t}\r\n\t}\r\n\r\n\tgetActiveTheme(core, user) {\r\n\t\tif (!user) return null\r\n\r\n\t\tconst permissions = user.permissions || []\r\n\t\tconst defaultThemePermission = permissions.find((el) => el.startsWith(\"platon.activeTheme\")) || \"\"\r\n\t\tconst permissionTheme = defaultThemePermission.split(\".\").at(-2)\r\n\t\tconst permissionThemeColor = defaultThemePermission.split(\".\").at(-1)\r\n\r\n\t\tif (!permissionTheme) return null\r\n\r\n\t\treturn {\r\n\t\t\tname: permissionTheme,\r\n\t\t\tcolor: permissionThemeColor\r\n\t\t}\r\n\t}\r\n}\r\n","import LoadUserOrganizationsAfterLogin from \"@Platon/platon/plugins/LoadUserOrganizationsAfterLogin\"\r\nimport PickOrganizationAfterAuth from \"@Platon/platon/plugins/PickOrganizationAfterAuth\"\r\nimport PlatonSentryPlugin from \"@Platon/platon/plugins/PlatonSentryPlugin\"\r\nimport SetLocaleOfUserAfterAuth from \"@Platon/platon/plugins/SetLocaleOfUserAfterAuth\"\r\nimport SetUserThemeAfterLogin from \"@Platon/platon/plugins/SetUserThemeAfterLogin\"\r\nimport AuditPlugin from \"@Platon/platon/plugins/AuditPlugin\"\r\n\r\n/**\r\n * @type {(PlatonPlugin|PlatonPluginRegisterOptions)[]}\r\n */\r\nconst plugins = [\r\n\t{ priority: 0, plugin: PlatonSentryPlugin },\r\n\t{ priority: 45, plugin: AuditPlugin },\r\n\t{ priority: 50, plugin: SetLocaleOfUserAfterAuth },\r\n\t{ priority: 100, plugin: LoadUserOrganizationsAfterLogin },\r\n\t{ priority: 200, plugin: PickOrganizationAfterAuth },\r\n\t{ priority: 300, plugin: SetUserThemeAfterLogin }\r\n]\r\n\r\nexport default plugins\r\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MultiKeyValueControl.vue?vue&type=style&index=0&id=ac9f2870&prod&lang=scss&scoped=true&\"","/**\r\n * @param {string} title\r\n * @param {string} text\r\n */\r\nimport { $language } from \"@Platon/core/translations\"\r\nimport { $rootToast } from \"@Platon/core/core\"\r\n\r\nexport function dangerToast(title, text) {\r\n\t$rootToast.toast(text, {\r\n\t\ttitle,\r\n\t\tappendToast: true,\r\n\t\tvariant: \"danger\"\r\n\t})\r\n}\r\n\r\n/**\r\n * @param {string} title\r\n * @param {string} text\r\n */\r\nexport function successToast(title, text) {\r\n\t$rootToast.toast(text, {\r\n\t\ttitle,\r\n\t\tappendToast: true,\r\n\t\tvariant: \"success\"\r\n\t})\r\n}\r\n\r\n/**\r\n * @param {string} title\r\n * @param {string} text\r\n */\r\nexport function infoToast(title, text) {\r\n\t$rootToast.toast(text, {\r\n\t\ttitle,\r\n\t\tappendToast: true,\r\n\t\tvariant: \"info\"\r\n\t})\r\n}\r\n\r\n/**\r\n * @param {string} text\r\n */\r\nexport function errorToast(text) {\r\n\tdangerToast($language(\"platon.toast_error_title\", \"Хатолик\"), text)\r\n}\r\n\r\n/**\r\n * @param {string} text\r\n */\r\nexport function greenToast(text) {\r\n\tsuccessToast($language(\"platon.toast_success_title\", \"Хабар\"), text)\r\n}\r\n","/**\r\n * @param {Vue} app\r\n * @param {UserOrganization[]} organizations\r\n * @param options\r\n */\r\nexport async function pickUserOrganization(app, organizations, options = { closeable: false }) {\r\n\tlet component = () => import(\"../components/login/PickUserOrganization.vue\")\r\n\r\n\treturn new Promise((resolve, reject) => {\r\n\t\tapp.$modal.show(\r\n\t\t\tcomponent,\r\n\t\t\t{\r\n\t\t\t\torganizations,\r\n\t\t\t\tcanCancel: options.closeable,\r\n\t\t\t\tonSelected: (/* string */ orgId) => {\r\n\t\t\t\t\tresolve(orgId)\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\t{ clickToClose: options.closeable, height: \"auto\" }\r\n\t\t)\r\n\t})\r\n}\r\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./actionButton.vue?vue&type=style&index=0&id=85492412&prod&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('item',{attrs:{\"link-class\":\"d-flex flex-row\"},on:{\"click\":function($event){return _vm.$emit('click')}}},[(_vm.icon)?_c('div',{staticClass:\"dropdown-icon\"},[(_vm.icon)?_c('i',{class:_vm.icon}):_vm._e()]):_vm._e(),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n - \r\n
\r\n \r\n
\r\n\r\n \r\n \r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DropdownItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DropdownItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DropdownItem.vue?vue&type=template&id=a74c2640&\"\nimport script from \"./DropdownItem.vue?vue&type=script&lang=js&\"\nexport * from \"./DropdownItem.vue?vue&type=script&lang=js&\"\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 (_vm.isAuth)?_c('div'):_c('div',[_c('PageRenderer',{attrs:{\"chimera-options\":_vm.landingPageOptions}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n\r\n \r\n\r\n\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HomePage.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HomePage.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HomePage.vue?vue&type=template&id=76061432&\"\nimport script from \"./HomePage.vue?vue&type=script&lang=js&\"\nexport * from \"./HomePage.vue?vue&type=script&lang=js&\"\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","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProfileDetails.vue?vue&type=style&index=0&id=e735d2e4&prod&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('BaseControl',_vm._b({staticClass:\"position-relative\",attrs:{\"has-append\":_vm.$attrs.hasControls,\"has-prepend\":_vm.$attrs.hasControls,\"errors\":_vm.combinedErrors},scopedSlots:_vm._u([(_vm.$attrs.hasControls)?{key:\"append\",fn:function(){return [_c('b-button',{attrs:{\"variant\":\"light-outline\"},on:{\"click\":function($event){return _vm.addDays(1)}}},[_c('i',{staticClass:\"fa fa-chevron-right\"})])]},proxy:true}:null,(_vm.$attrs.hasControls)?{key:\"prepend\",fn:function(){return [_c('b-button',{attrs:{\"variant\":\"light-outline\"},on:{\"click\":function($event){return _vm.addDays(-1)}}},[_c('i',{staticClass:\"fa fa-chevron-left\"})])]},proxy:true}:null],null,true)},'BaseControl',_vm.$attrs,false),[_c('p-datepicker',{ref:\"input\",staticClass:\"date-picker-input\",class:_vm.classes,attrs:{\"placeholder\":_vm._placeholder,\"config\":_vm.options,\"readonly\":_vm.isReadOnly,\"disabled\":_vm.isDisabled},model:{value:(_vm.local),callback:function ($$v) {_vm.local=$$v},expression:\"local\"}}),_c('div',{staticClass:\"icon position-absolute\",on:{\"click\":function($event){return _vm.focusField()}}},[_c('i',{staticClass:\"fa fa-calendar-alt\"})])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DatetimeControl.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DatetimeControl.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DatetimeControl.vue?vue&type=template&id=5bfa7b39&scoped=true&\"\nimport script from \"./DatetimeControl.vue?vue&type=script&lang=js&\"\nexport * from \"./DatetimeControl.vue?vue&type=script&lang=js&\"\nimport style0 from \"./DatetimeControl.vue?vue&type=style&index=0&id=5bfa7b39&prod&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 \"5bfa7b39\",\n null\n \n)\n\nexport default component.exports","export default {\r\n\tmethods: {\r\n\t\tasync uploadBase64File(base64, filename = \"image.jpg\", type = \"image/jpeg\") {\r\n\t\t\tif (this.$refs.manager && typeof this.$refs.manager.uploadBase64File === \"function\") {\r\n\t\t\t\treturn this.$refs.manager.uploadBase64File(base64, filename, type)\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\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!./TopbarContacts.vue?vue&type=style&index=0&id=7df963f6&prod&scoped=true&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TableFilterColumns.vue?vue&type=style&index=0&id=1d14d6a4&prod&lang=scss&\"","import { errorToast as ErrorToast, greenToast as GreenToast } from \"@Platon/core/functions/toast\"\r\n\r\nexport default {\r\n\tmethods: {\r\n\t\t/**\r\n\t\t * @param {string} title\r\n\t\t * @param {string} text\r\n\t\t */\r\n\t\tdangerToast(title, text) {\r\n\t\t\tthis.$platonApp.$bvToast.toast(text, {\r\n\t\t\t\ttitle,\r\n\t\t\t\tappendToast: true,\r\n\t\t\t\tvariant: \"danger\"\r\n\t\t\t})\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * @param {string} title\r\n\t\t * @param {string} text\r\n\t\t */\r\n\t\tsuccessToast(title, text) {\r\n\t\t\tthis.$platonApp.$bvToast.toast(text, {\r\n\t\t\t\ttitle,\r\n\t\t\t\tappendToast: true,\r\n\t\t\t\tvariant: \"success\"\r\n\t\t\t})\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * @param {string} title\r\n\t\t * @param {string} text\r\n\t\t */\r\n\t\tinfoToast(title, text) {\r\n\t\t\tthis.$platonApp.$bvToast.toast(text, {\r\n\t\t\t\ttitle,\r\n\t\t\t\tappendToast: true,\r\n\t\t\t\tvariant: \"info\"\r\n\t\t\t})\r\n\t\t},\r\n\r\n\t\t/**\r\n\t\t * @param {string} text\r\n\t\t */\r\n\t\terrorToast(text) {\r\n\t\t\tErrorToast(text)\r\n\t\t},\r\n\r\n\t\tgreenToast(text) {\r\n\t\t\tGreenToast(text)\r\n\t\t}\r\n\t}\r\n}\r\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Topbar.vue?vue&type=style&index=0&id=d0b3fe26&prod&lang=scss&scoped=true&\""],"sourceRoot":""}