{"version":3,"sources":["webpack:///./node_modules/eslint-loader/index.js"],"names":["actions","clients_store","StaffsInviteFunctionsMixin","add_new_client","add_new_client_key","client_id","client_exists_dialog","loading","payload","is_valid","client","this","data","title","code","ResponseStatuses","Success","CREATED","Fail","UNAUTHORIZED","FORBIDDEN","UNPROCESSABLE","CONFLICT","String","$dialog","open","center_title","bts_align","BtnsPosition","CENTER","url","$router","resolve","name","Clients","Pages","CLIENT_DETAIL","params","id","href","window","close","mutations","CLEAR_CLIENT","Vue","Component"],"mappings":"oQAMQA,EAAYC,OAAZD,QAGaE,EAA0B,wDAA/C,iD,0BACE,EAAAC,gBAAiB,EACjB,EAAAC,mBAAqB,EAErB,EAAAC,UAAY,GACZ,EAAAC,sBAAuB,EAEvB,EAAAC,SAAU,EAPZ,EAA+C,0GAS7C,WAAiBC,GAAjB,kGACUC,EAAqBD,EAArBC,SAAUC,EAAWF,EAAXE,QAEdD,EAHN,wBAIIE,KAAKJ,SAAU,EAJnB,SAKuBP,EAAQG,eAAeO,GAL9C,OAKUE,EALV,OAOID,KAAKR,gBAAiB,EAClBU,EAAQ,GARhB,KAUYD,EAAKE,KAVjB,cAWWC,QAAiBC,QAAQC,QAXpC,UAeWF,QAAiBG,KAAKC,aAfjC,UAmBWJ,QAAiBG,KAAKE,UAnBjC,UAuBWL,QAAiBG,KAAKG,cAvBjC,UA2BWN,QAAiBG,KAAKI,SA3BjC,2BAYQT,EAAQ,iCAZhB,oCAgBQA,EAAQ,yBAhBhB,oCAoBQA,EAAQ,0BApBhB,oCAwBQA,EAAQ,mBAxBhB,oCA4BQA,EAAQ,YACRF,KAAKN,UAAYkB,OAAM,UAACX,EAAKA,YAAN,aAAC,EAAWP,WACnCM,KAAKL,sBAAuB,EAC5BK,KAAKJ,SAAU,EA/BvB,kCAmCQM,EAAQ,oBAnChB,6BAsCIF,KAAKJ,SAAU,EAEfI,KAAKa,QAAQC,KAAK,CAChBC,cAAc,EACdC,UAAWC,OAAaC,OACxBhB,UA3CN,iDAT6C,0FAyD7C,WACEF,KAAKL,sBAAuB,EAE5B,IAAMwB,EAAMnB,KAAKoB,QAAQC,QAAQ,CAC/BC,KAAMC,aAAQC,MAAMC,cACpBC,OAAQ,CAAEC,GAAI3B,KAAKN,aAClBkC,KAEHC,OAAOf,KAAKK,EAAK,UACjBnB,KAAK8B,UAlEsC,mBAqE7C,WACE9B,KAAKL,sBAAuB,EAC5BL,OAAcyC,UAAUC,eACxBhC,KAAKP,oBAAsB,IAxEgB,wCA2E7C,WACEO,KAAKL,sBAAuB,EAC5BK,KAAKR,gBAAiB,MA7EqB,GAASyC,QAAnC1C,EAA0B,gBAD9C2C,eAAU,KACU3C","file":"js/home184.172e3905.js","sourcesContent":["import { Vue, Component } from 'vue-property-decorator';\nimport { clients_store } from '@/store';\nimport { ResponseStatuses } from '@/enums';\nimport { BtnsPosition } from '@/components/dialogs/simple/types';\nimport { Clients, AddClientResponse } from '../types';\n\nconst { actions } = clients_store;\n\n@Component({})\nexport default class StaffsInviteFunctionsMixin extends Vue {\n add_new_client = false;\n add_new_client_key = 0;\n\n client_id = '';\n client_exists_dialog = false;\n\n loading = false;\n\n async add_client(payload: { is_valid: boolean; client: Clients.Client }) {\n const { is_valid, client } = payload;\n\n if (is_valid) {\n this.loading = true;\n const data = await actions.add_new_client(client) as AddClientResponse;\n\n this.add_new_client = false;\n let title = '';\n\n switch (data.code) {\n case ResponseStatuses.Success.CREATED:\n title = 'Новый клиент успешно добавлен.';\n break;\n\n case ResponseStatuses.Fail.UNAUTHORIZED:\n title = 'Необходима авторизация';\n break;\n\n case ResponseStatuses.Fail.FORBIDDEN:\n title = 'Компания на верификации';\n break;\n\n case ResponseStatuses.Fail.UNPROCESSABLE:\n title = 'Ошибка валидации';\n break;\n\n case ResponseStatuses.Fail.CONFLICT:\n title = 'Внимание!';\n this.client_id = String(data.data?.client_id);\n this.client_exists_dialog = true;\n this.loading = false;\n return;\n\n default:\n title = 'Внутренняя ошибка';\n break;\n }\n this.loading = false;\n\n this.$dialog.open({\n center_title: true,\n bts_align: BtnsPosition.CENTER,\n title,\n });\n }\n }\n\n go_to_exist_client() {\n this.client_exists_dialog = false;\n\n const url = this.$router.resolve({\n name: Clients.Pages.CLIENT_DETAIL,\n params: { id: this.client_id },\n }).href;\n\n window.open(url, '_blank');\n this.close();\n }\n\n close() {\n this.client_exists_dialog = false;\n clients_store.mutations.CLEAR_CLIENT();\n this.add_new_client_key += 1;\n }\n\n close_client_exists_dialog() {\n this.client_exists_dialog = false;\n this.add_new_client = true;\n }\n}\n"],"sourceRoot":""}