{"version":3,"sources":["webpack:///./node_modules/eslint-loader/index.js","webpack:///./src/modules/companies-users/views/AdminStaffEdit.vue?f473","webpack:///./node_modules/cache-loader/dist/cjs.js","webpack:///./src/modules/companies-users/views/AdminStaffEdit.vue?5d27","webpack:///./src/modules/companies-users/views/AdminStaffEdit.vue","webpack:///./src/modules/companies-users/views/AdminStaffEdit.vue?daa3","webpack:///./src/modules/companies-users/views/AdminStaffEdit.vue?463c"],"names":["companies_users_store","modules","company_user_staff","state","actions","getters","mutations","AdminStaffsGuardMixin","to","from","next","id","params","company_id","company_page","name","CompaniesUsers","Pages","COMPANIES_USERS_MANAGERS","get_company_user_staff","code_staff","ResponseStatuses","Success","OK","current_staff","find","e","SET_CURRENT_STAFF","Vue","Component","components","render","_vm","this","_h","$createElement","_c","_self","attrs","go_to_company_user_staff","scopedSlots","_u","key","fn","_v","proxy","staticClass","class","$style","mark","edit_fields","editable_staff","on","save_changes","cancel","update_field","staticRenderFns","AdminStaffEditPage","disable_patronymic","$route","undefined","roles","map","role","slug","UPD_CURRENT_STAFF_FIELD","value","RESET_EDITABLE_STAFF","title","rows","wide","field_type","EditFormRowTypes","TEXT","is_require","field_name","label","rules","v","is_correct_name","wrong_name","disabled","CHECKBOX","hide_details","event_handler_name","handler","patronymic_handler","SELECT","is_array_filled","require_message","select","items","UserRolesSelect","is_multiple","DATE","max_date","Date","setFullYear","getFullYear","toISOString","substring","clearable","is_email","invalid_email","current_user_company","COMPANY_USER_STAFF","String","current_company_id","is_patronymic","UPD_EDITABLE_FIELD","$router","push","surname","patronymic","email","is_active","city","birth_date","payload","user_id","update_staff_details","success","$dialog","open","center_title","bts_align","BtnsPosition","CENTER","on_close","Mixins","ValidateMixin","PageTitle","BackBtn","EditFormBuilder","injectStyles","context","locals","component","VCard","VCol","VRow","module","exports"],"mappings":"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","file":"js/home366.eaf0e1c2.js","sourcesContent":["import { Vue, Component } from 'vue-property-decorator';\nimport { NavigationGuardNext, Route } from 'vue-router';\nimport { companies_users_store } from '@/store';\nimport { ResponseStatuses } from '@/enums';\nimport { Staffs } from '@/modules/staffs/types/';\nimport { CompaniesUsers } from '../types';\n\nconst {\n state, getters, actions, mutations,\n} = companies_users_store.modules.company_user_staff;\n\n@Component({\n components: {},\n})\nexport default class AdminStaffsGuardMixin extends Vue {\n async beforeRouteEnter(to: Route, from: Route, next: NavigationGuardNext) {\n const id = to.params?.id || '';\n const company_id = to.params?.company_id || '';\n const company_page = { name: CompaniesUsers.Pages.COMPANIES_USERS_MANAGERS };\n\n if (id && company_id) {\n const code_staff = await actions.get_company_user_staff(company_id);\n\n if (code_staff === ResponseStatuses.Success.OK) {\n const current_staff = state.company_user_staff.find((e: Staffs.Staff) => e.id === +id);\n\n if (current_staff) {\n mutations.SET_CURRENT_STAFF(current_staff);\n next();\n }\n }\n } else {\n next(company_page);\n }\n }\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('BackBtn',{attrs:{\"go_to\":_vm.go_to_company_user_staff}}),_c('PageTitle',{attrs:{\"hide_btns\":\"\"},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\" Редактирование учетной записи \")]},proxy:true}])}),_c('v-row',{staticClass:\"mt-1\"},[_c('v-col',{attrs:{\"cols\":\"8\"}},[_c('v-card',{staticClass:\"pa-4\"},[_c('div',{staticClass:\"pb-4\"},[_vm._v(\"Поля, отмеченные \"),_c('span',{class:_vm.$style.mark},[_vm._v(\"*\")]),_vm._v(\", обязательны к заполнению\")]),_c('EditFormBuilder',{attrs:{\"edit_fields\":_vm.edit_fields,\"initial_obj\":_vm.current_staff,\"ediatable_obj\":_vm.editable_staff},on:{\"save\":_vm.save_changes,\"cancel\":_vm.cancel,\"update_field\":_vm.update_field}})],1)],1)],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\nimport { Component, Mixins } from 'vue-property-decorator';\nimport { companies_users_store } from '@/store';\nimport {\n PageTitle,\n BackBtn,\n EditFormBuilder,\n} from '@/components';\nimport ValidateMixin from '@/mixins/validate';\nimport { EditFormRows } from '@/types';\nimport { EditFormRowTypes, UserRolesSelect } from '@/enums';\nimport { BtnsPosition } from '@/components/dialogs/simple/types';\nimport { Staffs } from '@/modules/staffs/types/';\nimport { CompaniesUsers } from '../types';\nimport AdminStaffsGuardMixin from '../mixins/guard';\n\nconst {\n actions, state, mutations, getters,\n} = companies_users_store.modules.company_user_staff;\n\n@Component({\n components: {\n PageTitle,\n BackBtn,\n EditFormBuilder,\n },\n})\nexport default class AdminStaffEditPage extends Mixins(ValidateMixin, AdminStaffsGuardMixin) {\n async mounted() {\n const { id = undefined } = this.$route.params;\n\n if (typeof id !== 'undefined') {\n const roles = state.current_staff.roles.map((role) => role.slug);\n\n mutations.UPD_CURRENT_STAFF_FIELD({ key: 'roles', value: roles });\n mutations.RESET_EDITABLE_STAFF();\n }\n }\n\n get edit_fields(): EditFormRows[] {\n return [\n {\n title: '',\n rows: [\n [\n {\n wide: false,\n field_type: EditFormRowTypes.TEXT,\n is_require: true,\n field_name: 'surname',\n label: 'Фамилия',\n rules: [(v:string) => this.is_correct_name(v) || this.wrong_name],\n },\n {\n wide: false,\n field_type: EditFormRowTypes.TEXT,\n is_require: true,\n field_name: 'name',\n label: 'Имя',\n rules: [(v:string) => this.is_correct_name(v) || this.wrong_name],\n },\n ],\n [\n {\n wide: false,\n field_type: EditFormRowTypes.TEXT,\n is_require: false,\n field_name: 'patronymic',\n label: 'Отчество',\n rules: [(v:string) => this.is_correct_name(v) || this.wrong_name],\n disabled: this.disable_patronymic,\n },\n {\n wide: false,\n field_type: EditFormRowTypes.CHECKBOX,\n is_require: false,\n field_name: 'hide_patronymic',\n label: 'Нет отчества',\n hide_details: true,\n event_handler_name: 'change',\n handler: this.patronymic_handler,\n },\n ],\n [\n {\n wide: false,\n field_type: EditFormRowTypes.SELECT,\n is_require: true,\n field_name: 'roles',\n label: 'Роль/роли',\n hide_details: false,\n rules: [(v: string[]) => this.is_array_filled(v) || this.require_message],\n select: {\n items: UserRolesSelect,\n is_multiple: true,\n },\n },\n ],\n [\n {\n wide: false,\n field_type: EditFormRowTypes.DATE,\n is_require: false,\n field_name: 'birth_date',\n label: 'Дата рождения',\n hide_details: true,\n max_date: new Date(new Date().setFullYear(new Date().getFullYear() - 18))\n .toISOString()\n .substring(0, 10),\n },\n {\n wide: false,\n field_type: EditFormRowTypes.TEXT,\n is_require: false,\n field_name: 'city',\n label: 'Город',\n clearable: true,\n },\n ],\n ],\n },\n {\n title: '',\n rows: [\n [\n {\n wide: false,\n field_type: EditFormRowTypes.TEXT,\n is_require: true,\n field_name: 'email',\n label: 'E-mail',\n rules: [(v: string) => this.is_email(v) || this.invalid_email],\n },\n ],\n ],\n },\n ];\n }\n\n get editable_staff() {\n return state.editable_staff;\n }\n\n get current_company_id() {\n return getters.current_user_company?.id;\n }\n\n get go_to_company_user_staff() {\n return {\n name: CompaniesUsers.Pages.COMPANY_USER_STAFF,\n params: {\n id: String(this.current_company_id),\n },\n };\n }\n\n get current_staff() {\n return state.current_staff;\n }\n\n disable_patronymic = false;\n\n patronymic_handler(is_patronymic: boolean) {\n if (is_patronymic) {\n this.disable_patronymic = true;\n this.update_field({ key: 'patronymic', value: '' });\n } else {\n this.disable_patronymic = false;\n }\n }\n\n update_field({ key, value }: { key: keyof Staffs.Staff, value: unknown }) {\n mutations.UPD_EDITABLE_FIELD({ key, value });\n }\n\n cancel() {\n mutations.RESET_EDITABLE_STAFF();\n this.$router.push({\n name: CompaniesUsers.Pages.COMPANY_USER_STAFF,\n params: {\n id: `${this.current_company_id}`,\n },\n });\n }\n\n async save_changes() {\n const {\n id, surname, name, patronymic, email, roles, is_active, city, birth_date,\n } = state.editable_staff;\n\n const payload: CompaniesUsers.StaffPayloadAdmin = {\n user_id: id,\n surname,\n name,\n patronymic,\n email,\n is_active,\n roles,\n city,\n birth_date,\n };\n\n const success = await actions.update_staff_details(payload);\n\n if (success) {\n this.$dialog.open({\n title: 'Данные учетной записи изменены',\n center_title: true,\n bts_align: BtnsPosition.CENTER,\n }).on_close(() => {\n this.$router.push({\n name: CompaniesUsers.Pages.COMPANY_USER_STAFF,\n params: {\n id: `${this.current_company_id}`,\n },\n });\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!./AdminStaffEdit.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!./AdminStaffEdit.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./AdminStaffEdit.vue?vue&type=template&id=349e5eb7&\"\nimport script from \"./AdminStaffEdit.vue?vue&type=script&lang=ts&\"\nexport * from \"./AdminStaffEdit.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./AdminStaffEdit.vue?vue&type=style&index=0&module=true&lang=scss&\"\n\n\n\n\nfunction injectStyles (context) {\n \n this[\"$style\"] = (style0.locals || style0)\n\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 injectStyles,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCard,VCol,VRow})\n","export { default } from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-0-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-0-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-0-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-0-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminStaffEdit.vue?vue&type=style&index=0&module=true&lang=scss&\"; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-0-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-0-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-0-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-0-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminStaffEdit.vue?vue&type=style&index=0&module=true&lang=scss&\"","// extracted by mini-css-extract-plugin\nmodule.exports = {\"v-application\":\"AdminStaffEdit_v-application_3CNfe\",\"text-h1\":\"AdminStaffEdit_text-h1_AvoHx\",\"text-h2\":\"AdminStaffEdit_text-h2_336Z9\",\"mark\":\"AdminStaffEdit_mark_oLd_S\"};"],"sourceRoot":""}