{"version":3,"sources":["webpack:///./src/assets/images/icons/icon-plus-outline.svg","webpack:///./src/assets/images/entrancePlants/icon-riser.svg","webpack:///./src/assets/images/entrancePlants/icon-plant-configured.svg","webpack:///./src/assets/images/entrancePlants/icon-keypad.svg","webpack:///./src/assets/images/entrancePlants/icon-new-pe.svg","webpack:///./src/assets/images/entrancePlants/icon-gate.svg","webpack:///./src/assets/images/entrancePlants/icon-smart-reader.svg","webpack:///./src/assets/images/entrancePlants/plantType/enrtance-plant.webp","webpack:///./src/views/pages/EntrancePlantDetail/EntrancePlantBadges/EntrancePlantBadges.vue?3107","webpack:///./src/views/pages/EntrancePlantDetail/EntrancePlantBadges/EntrancePlantBadges.ts","webpack:///./src/views/pages/EntrancePlantDetail/EntrancePlantBadges/EntrancePlantBadges.vue"],"names":["module","exports","_hoisted_1","class","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","key","_hoisted_11","render","_ctx","_cache","$props","$setup","$data","$options","_component_router_link","_component_Button","_component_InlineSvgScoped","_component_ElDropdownItem","_component_ElDropdownMenu","_component_ElDropdown","_component_BadgeItem","_component_ElScrollbar","_component_DialogAddBadge","to","backLink","default","$t","currentEntrancePlant","name","_","trigger","placement","dropdown","style","onClick","$event","handleAddBadge","BadgeType","resident","src","disabled","hasEligibleGuests","guest","syncStatus","canEditWithPropagation","hasBadges","badges","badge","index","onDeleteBadge","handleDeleteBadge","toUpperCase","isVisibleAddBadge","plantBadges","guestBadge","isGuestBadgeDialog","onHideDialog","onUpdateList","fetchBadges","isGuestBadgeDisabled","this","params","$route","plants","badgeAll","desktopId","length","today","Date","parse","toDateString","hasValidGuestForBadge","gateGuests","some","guestNotExpired","undefined","durationUntil","valueOf","guestNotHasBadge","badgeCode","isRecurrent","type","$emit","$store","dispatch","badgeDELETE","setTimeout","$toast","add","severity","summary","closable","life","computed","components","BadgeItem","DialogAddBadge","emits","__exports__"],"mappings":"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","file":"js/page-entranceplant-badges.a0f01ebe.js","sourcesContent":["module.exports = __webpack_public_path__ + \"img/icon-plus-outline.6d157290.svg\";","module.exports = __webpack_public_path__ + \"img/icon-riser.9dcfcad0.svg\";","module.exports = __webpack_public_path__ + \"img/icon-plant-configured.35b6468f.svg\";","module.exports = __webpack_public_path__ + \"img/icon-keypad.46481c63.svg\";","module.exports = __webpack_public_path__ + \"img/icon-new-pe.23aa14a1.svg\";","module.exports = __webpack_public_path__ + \"img/icon-gate.89a8ac52.svg\";","module.exports = __webpack_public_path__ + \"img/icon-smart-reader.32311338.svg\";","module.exports = \"data:image/webp;base64,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\"","import { createVNode as _createVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"mb-3\" }\nconst _hoisted_2 = { class: \"d-flex align-items-start\" }\nconst _hoisted_3 = /*#__PURE__*/_createVNode(\"i\", { class: \"pi pi-chevron-left mr-1\" }, null, -1)\nconst _hoisted_4 = { class: \"mt-2\" }\nconst _hoisted_5 = { class: \"ml-auto d-flex align-items-center\" }\nconst _hoisted_6 = { class: \"btn-stripped d-flex align-items-center\" }\nconst _hoisted_7 = { class: \"bt-icon bt-icon--sm mr-3 text-gray\" }\nconst _hoisted_8 = { class: \"btn-stripped d-flex align-items-center\" }\nconst _hoisted_9 = { class: \"bt-icon bt-icon--sm mr-3 text-gray\" }\nconst _hoisted_10 = {\n key: 1,\n class: \"py-5 text-center\"\n}\nconst _hoisted_11 = { class: \"fs-18 text-gray\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_router_link = _resolveComponent(\"router-link\")\n const _component_Button = _resolveComponent(\"Button\")\n const _component_InlineSvgScoped = _resolveComponent(\"InlineSvgScoped\")\n const _component_ElDropdownItem = _resolveComponent(\"ElDropdownItem\")\n const _component_ElDropdownMenu = _resolveComponent(\"ElDropdownMenu\")\n const _component_ElDropdown = _resolveComponent(\"ElDropdown\")\n const _component_BadgeItem = _resolveComponent(\"BadgeItem\")\n const _component_ElScrollbar = _resolveComponent(\"ElScrollbar\")\n const _component_DialogAddBadge = _resolveComponent(\"DialogAddBadge\")\n\n return (_openBlock(), _createBlock(_Fragment, null, [\n _createVNode(\"header\", _hoisted_1, [\n _createVNode(\"div\", _hoisted_2, [\n _createVNode(\"div\", null, [\n _createVNode(_component_router_link, {\n to: _ctx.backLink,\n class: \"fs-18 text-decoration-none text-gray\"\n }, {\n default: _withCtx(() => [\n _hoisted_3,\n _createTextVNode(\" \" + _toDisplayString(_ctx.$t(\"general.backTo\")) + \": \" + _toDisplayString(_ctx.currentEntrancePlant.name), 1)\n ]),\n _: 1\n }, 8, [\"to\"]),\n _createVNode(\"h1\", _hoisted_4, _toDisplayString(_ctx.$t(\"AppResourceEP.Badges\")), 1)\n ]),\n _createVNode(\"div\", _hoisted_5, [\n _createVNode(_component_ElDropdown, {\n trigger: \"click\",\n placement: \"bottom-end\",\n \"popper-class\": \"el-dropdown__popper el-dropdown--context\"\n }, {\n dropdown: _withCtx(() => [\n _createVNode(_component_ElDropdownMenu, { style: {\"width\":\"240px\"} }, {\n default: _withCtx(() => [\n _createVNode(_component_ElDropdownItem, {\n onClick: _cache[1] || (_cache[1] = ($event: any) => (_ctx.handleAddBadge(_ctx.BadgeType.resident)))\n }, {\n default: _withCtx(() => [\n _createVNode(\"button\", _hoisted_6, [\n _createVNode(\"span\", _hoisted_7, [\n _createVNode(_component_InlineSvgScoped, {\n src: \n require('@/assets/images/entrancePlants/icon-resident.svg')\n ,\n \"aria-label\": \"icon-resident\"\n }, null, 8, [\"src\"])\n ]),\n _createVNode(\"span\", null, _toDisplayString(_ctx.$t(\n \"AppResourceEP.ToResidentActionMenu\"\n )), 1)\n ])\n ]),\n _: 1\n }),\n _createVNode(_component_ElDropdownItem, {\n disabled: !_ctx.hasEligibleGuests,\n onClick: _cache[2] || (_cache[2] = ($event: any) => (_ctx.handleAddBadge(_ctx.BadgeType.guest)))\n }, {\n default: _withCtx(() => [\n _createVNode(\"button\", _hoisted_8, [\n _createVNode(\"span\", _hoisted_9, [\n _createVNode(_component_InlineSvgScoped, {\n src: \n require('@/assets/images/entrancePlants/icon-guest.svg')\n ,\n \"aria-label\": \"icon-guest\"\n }, null, 8, [\"src\"])\n ]),\n _createVNode(\"span\", null, _toDisplayString(_ctx.$t(\n \"AppResourceEP.ToGuestActionMenu\"\n )), 1)\n ])\n ]),\n _: 1\n }, 8, [\"disabled\"])\n ]),\n _: 1\n })\n ]),\n default: _withCtx(() => [\n _createVNode(_component_Button, {\n disabled: !_ctx.currentEntrancePlant.syncStatus?.canEditWithPropagation,\n class: \"p-button-rounded p-button-raised p-button--m\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t(\"AppResourceEP.BadgeAdd\")), 1)\n ]),\n _: 1\n }, 8, [\"disabled\"])\n ]),\n _: 1\n })\n ])\n ])\n ]),\n (_ctx.hasBadges)\n ? (_openBlock(), _createBlock(_component_ElScrollbar, {\n key: 0,\n style: {\"margin\":\"0 -20px -10%\",\"height\":\"calc(100vh - 240px)\"}\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(_ctx.badges, (badge, index) => {\n return (_openBlock(), _createBlock(_component_BadgeItem, {\n style: {\"margin\":\"0 20px\"},\n key: index,\n disabled: !_ctx.currentEntrancePlant.syncStatus?.canEditWithPropagation,\n badge: badge,\n class: \"mt-3\",\n onDeleteBadge: _ctx.handleDeleteBadge\n }, null, 8, [\"disabled\", \"badge\", \"onDeleteBadge\"]))\n }), 128))\n ]),\n _: 1\n }))\n : (_openBlock(), _createBlock(\"div\", _hoisted_10, [\n _createVNode(\"h1\", null, _toDisplayString(_ctx.$t(\"entrancePlant.NoBadges\").toUpperCase()), 1),\n _createVNode(\"span\", _hoisted_11, _toDisplayString(_ctx.$t(\"entrancePlant.hintNewBadge\")), 1)\n ])),\n _createVNode(_component_DialogAddBadge, {\n \"is-visible\": _ctx.isVisibleAddBadge,\n plantBadges: _ctx.badges,\n guestBadge: _ctx.isGuestBadgeDialog,\n onHideDialog: _ctx.handleAddBadge,\n onUpdateList: _ctx.fetchBadges\n }, null, 8, [\"is-visible\", \"plantBadges\", \"guestBadge\", \"onHideDialog\", \"onUpdateList\"])\n ], 64))\n}","import { mapState } from 'vuex';\nimport plantsClient from '@/core/services/plants';\nimport BadgeItem from './BadgeItem/BadgeItem.vue';\nimport { Options, Vue } from 'vue-class-component';\nimport {\n BadgeDTO,\n EntrancePlantDetailDTO,\n} from '@/../client-generator/generated-clients/plants';\nimport { SET_APP_LOADING } from '@/core/store/action-types';\nimport DialogAddBadge from './DialogAddBadge/DialogAddBadge.vue';\n\nenum BadgeType {\n resident = 'resident',\n guest = 'guest',\n}\n\n@Options({\n name: 'EntrancePlantBadges',\n computed: {\n ...mapState(['currentEntrancePlant']),\n },\n components: {\n BadgeItem,\n DialogAddBadge,\n },\n emits: ['update-list'],\n})\nexport default class EntrancePlantBadges extends Vue {\n currentEntrancePlant!: EntrancePlantDetailDTO;\n badges: BadgeDTO[] = [];\n\n isVisibleAddBadge = false;\n isGuestBadgeDialog = false;\n isGuestBadgeDisabled = false;\n BadgeType = BadgeType;\n\n async mounted() {\n await this.fetchBadges();\n }\n\n get backLink() {\n return {\n name: 'page-entranceplant-dashboard',\n params: this.$route.params,\n };\n }\n\n async fetchBadges() {\n this.badges = await plantsClient.badgeAll(\n this.currentEntrancePlant.desktopId as number\n );\n }\n\n get hasBadges() {\n if (this.badges) {\n return this.badges.length > 0;\n }\n return false;\n }\n\n get hasEligibleGuests() {\n const today = Date.parse(new Date().toDateString());\n\n const hasValidGuestForBadge = this.currentEntrancePlant.gateGuests?.some(\n (guest) => {\n const guestNotExpired =\n guest.durationUntil === undefined ||\n (guest.durationUntil && guest.durationUntil.valueOf() >= today);\n const guestNotHasBadge = guest.badgeCode === '' || !guest.badgeCode;\n if (guest.isRecurrent && guestNotExpired && guestNotHasBadge) {\n return true;\n }\n }\n );\n return hasValidGuestForBadge;\n }\n\n handleAddBadge(type: BadgeType) {\n if (type !== undefined) {\n this.isGuestBadgeDialog = type === BadgeType.guest;\n }\n this.isVisibleAddBadge = !this.isVisibleAddBadge;\n if (!this.isVisibleAddBadge) {\n this.$emit('update-list');\n }\n }\n\n async handleDeleteBadge(badge: BadgeDTO) {\n this.$store.dispatch(SET_APP_LOADING, true);\n try {\n await plantsClient.badgeDELETE(\n this.currentEntrancePlant.desktopId as number,\n badge.badgeCode\n );\n\n this.$emit('update-list');\n this.fetchBadges();\n setTimeout(() => {\n this.$toast.add({\n severity: 'success',\n summary: this.$t('AppResourceEP.BadgeRemoved'),\n closable: false,\n life: 3000,\n });\n }, 1500);\n } catch {\n this.$toast.add({\n severity: 'error',\n summary: this.$t('general.operationError'),\n closable: true,\n life: 3000,\n });\n } finally {\n this.$store.dispatch(SET_APP_LOADING, false);\n }\n }\n}\n","import { render } from \"./EntrancePlantBadges.vue?vue&type=template&id=3d67f013&ts=true\"\nimport script from \"./EntrancePlantBadges.ts?vue&type=script&lang=ts\"\nexport * from \"./EntrancePlantBadges.ts?vue&type=script&lang=ts\"\n\nimport exportComponent from \"/home/vsts/work/1/s/Frontend/node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"sourceRoot":""}