{"version":3,"sources":["webpack:///./src/assets/images/icons/icon-plus-outline.svg","webpack:///./src/views/components/CardContainer/CardContainer.scss?6b44","webpack:///./src/assets/images/entrancePlants/icon-message.svg","webpack:///./src/assets/images/entrancePlants/icon-parameters.svg","webpack:///./src/views/pages/EntrancePlantDetail/EntrancePlantDashboard/EntrancePlantDashboard.vue?60fb","webpack:///./src/views/pages/EntrancePlantDetail/EntrancePlantDashboard/EntrancePlantDashboardGate/EntrancePlantDashboardGate.vue?6959","webpack:///./src/views/pages/EntrancePlantDetail/EntrancePlantDashboard/EntrancePlantDashboardGate/EntrancePlantDashboardGate.ts","webpack:///./src/views/pages/EntrancePlantDetail/EntrancePlantDashboard/EntrancePlantDashboardGate/EntrancePlantDashboardGate.vue","webpack:///./src/views/pages/EntrancePlantDetail/EntrancePlantDashboard/EntrancePlantStatusBanner/EntrancePlantStatusBanner.vue?0749","webpack:///./src/views/pages/EntrancePlantDetail/EntrancePlantDashboard/EntrancePlantStatusBanner/EntrancePlantStatusBanner.ts","webpack:///./src/views/pages/EntrancePlantDetail/EntrancePlantDashboard/EntrancePlantStatusBanner/EntrancePlantStatusBanner.vue","webpack:///./src/views/pages/EntrancePlantDetail/EntrancePlantDashboard/EntrancePlantDashboard.ts","webpack:///./src/views/pages/EntrancePlantDetail/EntrancePlantDashboard/EntrancePlantDashboard.vue","webpack:///./src/assets/images/icons/icon-sync.svg","webpack:///./src/assets/images/icons/icon-add.svg","webpack:///./src/assets/images/entrancePlants/icon-gate.svg","webpack:///./src/views/components/CardContainer/CardContainer.vue?1f0f","webpack:///./src/views/components/CardContainer/CardContainer.ts","webpack:///./src/views/components/CardContainer/CardContainer.vue","webpack:///./src/views/pages/EntrancePlantDetail/EntrancePlantDashboard/EntrancePlantStatusBanner/EntrancePlantStatusBanner.scss?df58","webpack:///./src/assets/images/icon-check.svg","webpack:///./src/assets/images/entrancePlants/icon-building.svg","webpack:///./src/assets/images/entrancePlants/icon-apartment.svg","webpack:///./src/assets/images/entrancePlants/icon-resident.svg","webpack:///./src/views/pages/EntrancePlantDetail/EntrancePlantDashboard/EntrancePlantDashboard.scss?191c","webpack:///./src/assets/images/entrancePlants/icon-badge.svg","webpack:///./src/assets/images/icons/icon-alert-medium-full.svg","webpack:///./src/assets/images/entrancePlants/icon-switchboard.svg","webpack:///./src/assets/images/entrancePlants/icon-guest.svg","webpack:///./src/views/pages/EntrancePlantDetail/EntrancePlantDashboard/EntrancePlantDashboardGate/EntrancePlantDashboardGate.scss?b496","webpack:///./node_modules/lodash.debounce/index.js"],"names":["module","exports","_hoisted_1","class","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","key","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","_hoisted_31","_hoisted_32","_hoisted_33","_hoisted_34","_hoisted_35","_hoisted_36","_hoisted_37","_hoisted_38","_hoisted_39","_hoisted_40","_hoisted_41","_hoisted_42","render","_ctx","_cache","$props","$setup","$data","$options","_component_InlineSvgScoped","_component_EntrancePlantStatusBanner","_component_Gate","_component_CardContainer","_component_Button","_component_Card","_component_ElDropdownItem","_component_ElDropdownMenu","_component_ElDropdown","src","imageURLs","srcset","imageSrcSetURLs","alt","currentEntrancePlant","name","address","country","$slots","syncStatus","connected","$t","isPlantActive","plant","disabled","titleIcon","title","gates","length","showActionButton","adminView","onOnActionButtonClick","toggleCreateGateDialog","actionButtonLabel","default","gate","index","gateId","plantId","desktopId","_","fn","countBuildings","countApartments","undefined","onClick","goToAddressBook","content","icon","goToBadges","countBadges","trigger","placement","dropdown","style","goToGuests","goToMessages","goToSwitchboards","goToAddSwitchboard","goToParametersSettings","_component_InputText","_component_Dialog","type","id","modelValue","$event","plantInlineRenameEnabled","goToGateDetail","gateDeviceCount","handleAddDevice","modal","visible","isValidName","width","closable","header","footer","onHideNameValidationDialog","invalidNameReason","this","devices","verifyValidityOfName","updateCounts","initialName","validName","isValidEntityTypeName","$store","dispatch","updateGateName","$toast","add","severity","summary","life","forcefullyRenameFirstEntityWithinCachedOnes","e","$emitter","emit","$router","push","params","emits","props","Object","required","Number","Boolean","watch","computed","__exports__","isGrayBanner","isBlueBanner","isOrangeBanner","orange","subtitle","showLastSyncData","bannerDetails","isVisibleSyncButton","enableSyncButton","onClickSyncNow","lastSyncDate","lastSyncTime","config","lastSyncDateTime","toLocaleDateString","toLocaleTimeString","synchronized","changesToSyncCount","date","time","plants","syncwitheliot","alert","components","customIconImageUrl","plantType","buildings","apartmentsTotal","building","apartments","doCountBadges","badgeAll","badgesList","query","addSwitchboard","Gate","CardContainer","EntrancePlantStatusBanner","onActionButtonClick","$emit","String","FUNC_ERROR_TEXT","NAN","symbolTag","reTrim","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","parseInt","freeGlobal","global","freeSelf","self","root","Function","objectProto","prototype","objectToString","toString","nativeMax","Math","max","nativeMin","min","now","Date","debounce","func","wait","options","lastArgs","lastThis","maxWait","result","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","TypeError","invokeFunc","args","thisArg","apply","leadingEdge","setTimeout","timerExpired","remainingWait","timeSinceLastCall","timeSinceLastInvoke","shouldInvoke","trailingEdge","cancel","clearTimeout","flush","debounced","isInvoking","arguments","toNumber","isObject","value","isObjectLike","isSymbol","call","other","valueOf","replace","isBinary","test","slice"],"mappings":"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","file":"js/page-entranceplant-dashboard.a8404cf7.js","sourcesContent":["module.exports = __webpack_public_path__ + \"img/icon-plus-outline.6d157290.svg\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!./CardContainer.scss?vue&type=style&index=0&lang=scss\"","module.exports = __webpack_public_path__ + \"img/icon-message.297290d6.svg\";","module.exports = __webpack_public_path__ + \"img/icon-parameters.b57aa86c.svg\";","import { createVNode as _createVNode, toDisplayString as _toDisplayString, renderSlot as _renderSlot, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, withCtx as _withCtx, createSlots as _createSlots } from \"vue\"\n\nconst _hoisted_1 = { class: \"d-flex\" }\nconst _hoisted_2 = { class: \"apartment__thumb mr-3\" }\nconst _hoisted_3 = { class: \"mb-0\" }\nconst _hoisted_4 = { class: \"fs-18 text-gray\" }\nconst _hoisted_5 = { class: \"d-flex align-items-center mt-3\" }\nconst _hoisted_6 = {\n key: 0,\n class: \"connected-icon-wrapper\"\n}\nconst _hoisted_7 = { class: \"connected-icon\" }\nconst _hoisted_8 = { class: \"fs-18 text-gray\" }\nconst _hoisted_9 = { class: \"apartment-dashboard\" }\nconst _hoisted_10 = { class: \"apartment-dashboard__main\" }\nconst _hoisted_11 = { class: \"d-flex align-items-center\" }\nconst _hoisted_12 = { class: \"mr-3\" }\nconst _hoisted_13 = { class: \"ml-2\" }\nconst _hoisted_14 = { class: \"mx-3 center_title_cardcontainer\" }\nconst _hoisted_15 = { class: \"ml-2\" }\nconst _hoisted_16 = { class: \"ml-3\" }\nconst _hoisted_17 = { class: \"ml-2\" }\nconst _hoisted_18 = { class: \"list-blocks\" }\nconst _hoisted_19 = { class: \"apartment-dashboard__meta\" }\nconst _hoisted_20 = { class: \"apartment-meta__content\" }\nconst _hoisted_21 = { class: \"apartment-meta__head\" }\nconst _hoisted_22 = { class: \"apartment-meta__icon bt-icon bt-icon--sm\" }\nconst _hoisted_23 = { class: \"apartment-meta__content\" }\nconst _hoisted_24 = { class: \"apartment-meta__head\" }\nconst _hoisted_25 = { class: \"apartment-meta__icon bt-icon bt-icon--sm\" }\nconst _hoisted_26 = { class: \"list-bubbles list-bubbles--xs ml-auto\" }\nconst _hoisted_27 = { class: \"p-button p-button-rounded p-button-secondary fs-14\" }\nconst _hoisted_28 = { class: \"apartment-meta__content\" }\nconst _hoisted_29 = { class: \"apartment-meta__head\" }\nconst _hoisted_30 = { class: \"apartment-meta__icon bt-icon bt-icon--sm\" }\nconst _hoisted_31 = { class: \"btn-stripped d-flex align-items-center\" }\nconst _hoisted_32 = { class: \"bt-icon bt-icon--sm mr-3 text-gray\" }\nconst _hoisted_33 = { class: \"btn-stripped d-flex align-items-center\" }\nconst _hoisted_34 = { class: \"bt-icon bt-icon--sm mr-3 text-gray\" }\nconst _hoisted_35 = { class: \"apartment-meta__content\" }\nconst _hoisted_36 = { class: \"apartment-meta__head\" }\nconst _hoisted_37 = { class: \"apartment-meta__icon bt-icon bt-icon--sm\" }\nconst _hoisted_38 = { class: \"bt-icon bt-icon--xs\" }\nconst _hoisted_39 = { class: \"ml-2\" }\nconst _hoisted_40 = { class: \"apartment-meta__content\" }\nconst _hoisted_41 = { class: \"apartment-meta__head\" }\nconst _hoisted_42 = { class: \"apartment-meta__icon bt-icon bt-icon--sm\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_InlineSvgScoped = _resolveComponent(\"InlineSvgScoped\")\n const _component_EntrancePlantStatusBanner = _resolveComponent(\"EntrancePlantStatusBanner\")\n const _component_Gate = _resolveComponent(\"Gate\")\n const _component_CardContainer = _resolveComponent(\"CardContainer\")\n const _component_Button = _resolveComponent(\"Button\")\n const _component_Card = _resolveComponent(\"Card\")\n const _component_ElDropdownItem = _resolveComponent(\"ElDropdownItem\")\n const _component_ElDropdownMenu = _resolveComponent(\"ElDropdownMenu\")\n const _component_ElDropdown = _resolveComponent(\"ElDropdown\")\n\n return (_openBlock(), _createBlock(_Fragment, null, [\n _createVNode(\"header\", null, [\n _createVNode(\"div\", _hoisted_1, [\n _createVNode(\"span\", _hoisted_2, [\n _createVNode(\"img\", {\n src: _ctx.imageURLs[0],\n srcset: _ctx.imageSrcSetURLs,\n alt: \"img\"\n }, null, 8, [\"src\", \"srcset\"])\n ]),\n _createVNode(\"div\", null, [\n _createVNode(\"h1\", _hoisted_3, _toDisplayString(_ctx.currentEntrancePlant?.name), 1),\n _createVNode(\"address\", _hoisted_4, _toDisplayString(_ctx.currentEntrancePlant.address) + \", \" + _toDisplayString(_ctx.currentEntrancePlant.country), 1)\n ]),\n _renderSlot(_ctx.$slots, \"head-menu\")\n ]),\n _createVNode(\"div\", _hoisted_5, [\n (_ctx.currentEntrancePlant.syncStatus?.connected)\n ? (_openBlock(), _createBlock(\"div\", _hoisted_6, [\n _createVNode(\"div\", _hoisted_7, [\n _createVNode(_component_InlineSvgScoped, {\n src: require(`@/assets/images/icon-check.svg`),\n \"aria-label\": \"icon-blueprint\"\n }, null, 8, [\"src\"])\n ]),\n _createVNode(\"span\", _hoisted_8, _toDisplayString(_ctx.$t(\"AppResource.Connected\")), 1)\n ]))\n : _createCommentVNode(\"\", true),\n _renderSlot(_ctx.$slots, \"update-time-meta\")\n ])\n ]),\n (_ctx.currentEntrancePlant.syncStatus?.isPlantActive)\n ? (_openBlock(), _createBlock(_component_EntrancePlantStatusBanner, {\n key: 0,\n plant: _ctx.currentEntrancePlant\n }, null, 8, [\"plant\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(\"section\", _hoisted_9, [\n _createVNode(\"div\", _hoisted_10, [\n _createVNode(_component_CardContainer, {\n disabled: _ctx.currentEntrancePlant.syncStatus?.isPlantActive,\n titleIcon: \n require('@/assets/images/entrancePlants/icon-gate.svg')\n ,\n title: `${_ctx.currentEntrancePlant.gates?.length ?? 0} ${_ctx.$t(\n 'AppResourceEP.Gates'\n )}`,\n showActionButton: !_ctx.adminView,\n onOnActionButtonClick: _ctx.toggleCreateGateDialog,\n actionButtonLabel: _ctx.$t('entrancePlant.addGate')\n }, _createSlots({\n default: _withCtx(() => [\n _createVNode(\"ul\", _hoisted_18, [\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(_ctx.currentEntrancePlant.gates, (gate, index) => {\n return (_openBlock(), _createBlock(_component_Gate, {\n key: `${gate.gateId}-${index}`,\n gate: gate,\n plantId: _ctx.currentEntrancePlant.desktopId,\n showActionButton: !_ctx.adminView\n }, null, 8, [\"gate\", \"plantId\", \"showActionButton\"]))\n }), 128))\n ])\n ]),\n _: 2\n }, [\n (_ctx.adminView)\n ? {\n name: \"title\",\n fn: _withCtx(() => [\n _createVNode(\"h3\", _hoisted_11, [\n _createVNode(\"span\", _hoisted_12, [\n _createVNode(_component_InlineSvgScoped, {\n src: \n require('@/assets/images/entrancePlants/icon-gate.svg')\n \n }, null, 8, [\"src\"]),\n _createVNode(\"span\", _hoisted_13, _toDisplayString(`${\n _ctx.currentEntrancePlant.gates?.length ?? 0\n } ${_ctx.$t(\"AppResourceEP.Gates\")}`), 1)\n ]),\n _createVNode(\"span\", _hoisted_14, [\n _createVNode(_component_InlineSvgScoped, {\n src: \n require('@/assets/images/entrancePlants/icon-building.svg')\n \n }, null, 8, [\"src\"]),\n _createVNode(\"span\", _hoisted_15, _toDisplayString(`${_ctx.countBuildings ?? 0} ${_ctx.$t(\n \"AppResourceEP.Buildings\"\n )}`), 1)\n ]),\n _createVNode(\"span\", _hoisted_16, [\n _createVNode(_component_InlineSvgScoped, {\n src: \n require('@/assets/images/entrancePlants/icon-apartment.svg')\n \n }, null, 8, [\"src\"]),\n _createVNode(\"span\", _hoisted_17, _toDisplayString(`${_ctx.countApartments ?? 0} ${_ctx.$t(\n \"AppResourceEP.Apartments\"\n )}`), 1)\n ])\n ])\n ])\n }\n : undefined\n ]), 1032, [\"disabled\", \"titleIcon\", \"title\", \"showActionButton\", \"onOnActionButtonClick\", \"actionButtonLabel\"])\n ]),\n _createVNode(\"div\", _hoisted_19, [\n _createVNode(_component_Card, {\n class: \"apartment-meta card--slim\",\n onClick: _ctx.goToAddressBook\n }, {\n content: _withCtx(() => [\n _createVNode(\"div\", _hoisted_20, [\n _createVNode(\"div\", _hoisted_21, [\n _createVNode(\"span\", _hoisted_22, [\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(\"h5\", null, _toDisplayString(_ctx.$t(\"AppResourceEP.AddressBookResidents\")), 1)\n ]),\n _createVNode(_component_Button, {\n onClick: _ctx.goToAddressBook,\n icon: \"pi pi-chevron-right\",\n class: \"p-button-text p-button-secondary ml-2 ml-auto\"\n }, null, 8, [\"onClick\"])\n ])\n ]),\n _: 1\n }, 8, [\"onClick\"]),\n _createVNode(_component_Card, {\n class: \"apartment-meta card--slim\",\n onClick: _ctx.goToBadges\n }, {\n content: _withCtx(() => [\n _createVNode(\"div\", _hoisted_23, [\n _createVNode(\"div\", _hoisted_24, [\n _createVNode(\"span\", _hoisted_25, [\n _createVNode(_component_InlineSvgScoped, {\n src: \n require('@/assets/images/entrancePlants/icon-badge.svg')\n ,\n \"aria-label\": \"icon-badge\"\n }, null, 8, [\"src\"])\n ]),\n _createVNode(\"h5\", null, _toDisplayString(_ctx.$t(\"AppResourceEP.Badges\")), 1)\n ]),\n _createVNode(\"div\", _hoisted_26, [\n _createVNode(\"div\", _hoisted_27, _toDisplayString(_ctx.countBadges), 1)\n ]),\n _createVNode(_component_Button, {\n icon: \"pi pi-chevron-right\",\n class: \"p-button-text p-button-secondary\",\n onClick: _ctx.goToBadges\n }, null, 8, [\"onClick\"])\n ])\n ]),\n _: 1\n }, 8, [\"onClick\"]),\n _createVNode(_component_Card, { class: \"apartment-meta card--slim\" }, {\n content: _withCtx(() => [\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\":\"300px\"} }, {\n default: _withCtx(() => [\n _createVNode(_component_ElDropdownItem, { onClick: _ctx.goToGuests }, {\n default: _withCtx(() => [\n _createVNode(\"button\", _hoisted_31, [\n _createVNode(\"span\", _hoisted_32, [\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(\"AppResourceEP.Guests\")), 1)\n ])\n ]),\n _: 1\n }, 8, [\"onClick\"]),\n _createVNode(_component_ElDropdownItem, { onClick: _ctx.goToMessages }, {\n default: _withCtx(() => [\n _createVNode(\"button\", _hoisted_33, [\n _createVNode(\"span\", _hoisted_34, [\n _createVNode(_component_InlineSvgScoped, {\n src: \n require('@/assets/images/entrancePlants/icon-message.svg')\n ,\n \"aria-label\": \"icon-message\"\n }, null, 8, [\"src\"])\n ]),\n _createVNode(\"span\", null, _toDisplayString(_ctx.$t(\"AppResourceEP.Messages\")), 1)\n ])\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]),\n _: 1\n })\n ]),\n default: _withCtx(() => [\n _createVNode(\"div\", _hoisted_28, [\n _createVNode(\"div\", _hoisted_29, [\n _createVNode(\"span\", _hoisted_30, [\n _createVNode(_component_InlineSvgScoped, {\n src: \n require(`@/assets/images/icons/icon-add.svg`)\n ,\n \"aria-label\": \"icon-additional-services\"\n }, null, 8, [\"src\"])\n ]),\n _createVNode(\"h5\", null, _toDisplayString(_ctx.$t(\"AppResourceEP.AdditionalServices\")), 1)\n ]),\n _createVNode(_component_Button, {\n icon: \"pi pi-chevron-right\",\n class: \"p-button-text p-button-secondary ml-2 ml-auto\"\n })\n ])\n ]),\n _: 1\n })\n ]),\n _: 1\n }),\n (!_ctx.adminView)\n ? (_openBlock(), _createBlock(_component_Card, {\n key: 0,\n class: \"apartment-meta card--slim\",\n onClick: _ctx.goToSwitchboards\n }, {\n content: _withCtx(() => [\n _createVNode(\"div\", _hoisted_35, [\n _createVNode(\"div\", _hoisted_36, [\n _createVNode(\"span\", _hoisted_37, [\n _createVNode(_component_InlineSvgScoped, {\n src: \n require(`@/assets/images/entrancePlants/icon-switchboard.svg`)\n ,\n \"aria-label\": \"icon-switchboard\"\n }, null, 8, [\"src\"])\n ]),\n _createVNode(\"h5\", null, _toDisplayString(_ctx.$t(\"AppResourceEP.Switchboard\")), 1)\n ]),\n _createVNode(_component_Button, {\n class: \"p-button-outlined p-button-rounded ml-auto\",\n onClick: _ctx.goToAddSwitchboard\n }, {\n default: _withCtx(() => [\n _createVNode(\"span\", _hoisted_38, [\n _createVNode(_component_InlineSvgScoped, {\n src: \n require(`@/assets/images/icons/icon-plus-outline.svg`)\n ,\n \"aria-label\": \"icon-plus-outline\"\n }, null, 8, [\"src\"])\n ]),\n _createVNode(\"span\", _hoisted_39, _toDisplayString(_ctx.$t(\"AppResource.Add\")), 1)\n ]),\n _: 1\n }, 8, [\"onClick\"]),\n _createVNode(_component_Button, {\n icon: \"pi pi-chevron-right\",\n class: \"p-button-text p-button-secondary\",\n onClick: _ctx.goToSwitchboards\n }, null, 8, [\"onClick\"])\n ])\n ]),\n _: 1\n }, 8, [\"onClick\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_Card, {\n class: \"apartment-meta card--slim\",\n onClick: _ctx.goToParametersSettings\n }, {\n content: _withCtx(() => [\n _createVNode(\"div\", _hoisted_40, [\n _createVNode(\"div\", _hoisted_41, [\n _createVNode(\"span\", _hoisted_42, [\n _createVNode(_component_InlineSvgScoped, {\n src: \n require('@/assets/images/entrancePlants/icon-parameters.svg')\n ,\n \"aria-label\": \"icon-parameters\"\n }, null, 8, [\"src\"])\n ]),\n _createVNode(\"h5\", null, _toDisplayString(_ctx.$t(\"AppResourceEP.ParametersAndSettings\")), 1)\n ]),\n _createVNode(_component_Button, {\n onClick: _ctx.goToParametersSettings,\n icon: \"pi pi-chevron-right\",\n class: \"p-button-text p-button-secondary ml-2 ml-auto\"\n }, null, 8, [\"onClick\"])\n ])\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ])\n ])\n ], 64))\n}","import { resolveComponent as _resolveComponent, createVNode as _createVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createBlock as _createBlock, withCtx as _withCtx, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, Fragment as _Fragment } from \"vue\"\n\nconst _hoisted_1 = { class: \"gate\" }\nconst _hoisted_2 = { class: \"gate__header form-custom\" }\nconst _hoisted_3 = { class: \"d-flex align-items-center\" }\nconst _hoisted_4 = { class: \"bt-icon bt-icon--m\" }\nconst _hoisted_5 = { class: \"p-field\" }\nconst _hoisted_6 = { class: \"list-bubbles list-bubbles--xs ml-auto mr-3\" }\nconst _hoisted_7 = { class: \"bt-icon bt-icon--xs\" }\nconst _hoisted_8 = { class: \"ml-2\" }\nconst _hoisted_9 = { class: \"confirmation-content\" }\nconst _hoisted_10 = { class: \"text-center\" }\nconst _hoisted_11 = /*#__PURE__*/_createVNode(\"br\", null, null, -1)\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_InlineSvgScoped = _resolveComponent(\"InlineSvgScoped\")\n const _component_InputText = _resolveComponent(\"InputText\")\n const _component_Button = _resolveComponent(\"Button\")\n const _component_Dialog = _resolveComponent(\"Dialog\")\n\n return (_openBlock(), _createBlock(_Fragment, null, [\n _createVNode(\"li\", _hoisted_1, [\n _createVNode(\"div\", _hoisted_2, [\n _createVNode(\"div\", _hoisted_3, [\n _createVNode(\"span\", _hoisted_4, [\n _createVNode(_component_InlineSvgScoped, {\n src: \n require(`@/assets/images/entrancePlants/icon-gate.svg`)\n ,\n \"aria-label\": \"icon-gate\"\n }, null, 8, [\"src\"])\n ]),\n _createVNode(\"div\", _hoisted_5, [\n _createVNode(_component_InputText, {\n type: \"text\",\n id: \"plantname\",\n modelValue: _ctx.gate.name,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => (_ctx.gate.name = $event)),\n class: \"w-100 ml-3 text-uppercase\",\n disabled: !_ctx.plantInlineRenameEnabled\n }, null, 8, [\"modelValue\", \"disabled\"])\n ])\n ]),\n _createVNode(\"div\", {\n class: \"spacer\",\n onClick: _cache[2] || (_cache[2] = \n//@ts-ignore\n(...args) => (_ctx.goToGateDetail && _ctx.goToGateDetail(...args)))\n }, \"_\"),\n _createVNode(\"div\", _hoisted_6, [\n (_openBlock(), _createBlock(\"div\", {\n key: _ctx.gateDeviceCount,\n class: \"p-button p-button-rounded p-button-secondary fs-14 no-click\"\n }, _toDisplayString(_ctx.gateDeviceCount), 1))\n ]),\n (_ctx.showActionButton)\n ? (_openBlock(), _createBlock(_component_Button, {\n key: 0,\n disabled: true,\n class: \"apartment__action p-button-rounded p-button-outlined\",\n onClick: _ctx.handleAddDevice\n }, {\n default: _withCtx(() => [\n _createVNode(\"span\", _hoisted_7, [\n _createVNode(_component_InlineSvgScoped, {\n src: \n require(`@/assets/images/icons/icon-plus-outline.svg`)\n ,\n \"aria-label\": \"icon-grid\"\n }, null, 8, [\"src\"])\n ]),\n _createVNode(\"span\", _hoisted_8, _toDisplayString(_ctx.$t(\"entrancePlant.addDevice\")), 1)\n ]),\n _: 1\n }, 8, [\"onClick\"]))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_Button, {\n icon: \"pi pi-chevron-right\",\n class: \"p-button-text p-button-secondary ml-3\",\n onClick: _ctx.goToGateDetail\n }, null, 8, [\"onClick\"])\n ])\n ]),\n _createVNode(_component_Dialog, {\n modal: true,\n visible: !_ctx.isValidName,\n style: { width: '350px' },\n closable: false,\n header: _ctx.$t('uniqueNaming.unavailableName')\n }, {\n footer: _withCtx(() => [\n _createVNode(_component_Button, {\n class: \"p-button-primary p-button-rounded p-button--m\",\n onClick: _ctx.onHideNameValidationDialog\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t(\"AppResource.Ok\")), 1)\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]),\n default: _withCtx(() => [\n _createVNode(\"div\", _hoisted_9, [\n _createVNode(\"p\", _hoisted_10, [\n _createTextVNode(_toDisplayString(_ctx.invalidNameReason) + \" \", 1),\n _hoisted_11,\n _createVNode(\"sub\", null, _toDisplayString(_ctx.$t(\"uniqueNaming.nameResetDisclaimer\")), 1)\n ])\n ])\n ]),\n _: 1\n }, 8, [\"visible\", \"header\"])\n ], 64))\n}","import { NAME_VALIDATION_DEBOUNCE_TIME } from '@/core/utils/utils';\nimport { PropType } from 'vue';\nimport { mapGetters } from 'vuex';\nimport debounce from 'lodash.debounce';\nimport { Vue, Options } from 'vue-class-component';\nimport { GateDTO } from '@/../client-generator/generated-clients/plants';\nimport { FETCH_PLANT } from '@/core/utils/emitter-events';\nimport { SET_APP_LOADING } from '@/core/store/action-types';\nimport { NamingService } from '@/core/services/naming.service';\n\n@Options({\n name: 'EntrancePlantDashboardGate',\n emits: ['add-object'],\n props: {\n gate: {\n type: Object as PropType,\n required: false,\n },\n plantId: {\n type: Number,\n required: true,\n },\n showActionButton: {\n type: Boolean,\n },\n },\n watch: {\n gate: function () {\n this.updateCounts();\n },\n 'gate.name': function () {\n this.verifyValidityOfName();\n },\n },\n computed: {\n ...mapGetters('UI', ['plantInlineRenameEnabled']),\n },\n})\nexport default class EntrancePlantDashboardGate extends Vue {\n gate!: GateDTO;\n plantId!: number;\n showActionButton!: boolean;\n plantInlineRenameEnabled!: boolean;\n isValidName = true;\n initialName!: string;\n invalidNameReason: string = '';\n\n get gateDeviceCount() {\n return this.gate.devices?.length ?? 0;\n }\n\n async created() {\n this.verifyValidityOfName = debounce(\n this.verifyValidityOfName,\n NAME_VALIDATION_DEBOUNCE_TIME + 1000\n );\n }\n\n mounted() {\n this.updateCounts();\n this.initialName = this.gate.name!;\n }\n\n private async verifyValidityOfName() {\n if (this.gate.name === this.initialName) return;\n const validName = NamingService.isValidEntityTypeName(this.gate.name);\n\n if (this.initialName !== this.gate.name && !validName) {\n this.$store.dispatch(SET_APP_LOADING, true);\n\n this.isValidName = validName;\n this.invalidNameReason = this.$t(\n `uniqueNaming.validationErrorWithSuggestion`\n );\n this.$store.dispatch(SET_APP_LOADING, false);\n } else {\n this.isValidName = true;\n this.invalidNameReason = '';\n await this.updateGateName();\n }\n }\n\n private async updateGateName() {\n try {\n this.$store.dispatch(SET_APP_LOADING, true);\n //await plantsClient.gatePUT(this.plantId, this.gate.gateId!, this.gate);\n this.$toast.add({\n severity: 'success',\n summary: this.$t('uniqueNaming.roomInlineNamingSuccess'),\n life: 3000,\n });\n NamingService.forcefullyRenameFirstEntityWithinCachedOnes(\n this.initialName,\n this.gate.name!\n );\n this.initialName = this.gate.name!;\n } catch (e) {\n this.gate.name = this.initialName;\n this.$toast.add({\n severity: 'error',\n summary: this.$t('uniqueNaming.roomInlineNamingError'),\n life: 3000,\n });\n } finally {\n this.$store.dispatch(SET_APP_LOADING, false);\n this.$emitter.emit(FETCH_PLANT);\n }\n }\n\n onHideNameValidationDialog() {\n this.gate.name = this.initialName;\n this.isValidName = true;\n }\n\n updateCounts() {}\n\n async handleAddDevice() {}\n\n goToGateDetail() {\n this.$router.push({\n name: 'page-entranceplant-gate',\n params: {\n gateId: this.gate.gateId ?? '',\n },\n });\n }\n}\n","import { render } from \"./EntrancePlantDashboardGate.vue?vue&type=template&id=0ac21de8&ts=true\"\nimport script from \"./EntrancePlantDashboardGate.ts?vue&type=script&lang=ts\"\nexport * from \"./EntrancePlantDashboardGate.ts?vue&type=script&lang=ts\"\n\nimport \"./EntrancePlantDashboardGate.scss?vue&type=style&index=0&lang=scss\"\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__","import { resolveComponent as _resolveComponent, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, withCtx as _withCtx } from \"vue\"\n\nconst _hoisted_1 = {\n key: 0,\n class: \"icon\"\n}\nconst _hoisted_2 = { class: \"text-box\" }\nconst _hoisted_3 = { class: \"title\" }\nconst _hoisted_4 = { class: \"subtitle\" }\nconst _hoisted_5 = {\n key: 0,\n class: \"text-gray mr-3\"\n}\nconst _hoisted_6 = {\n key: 2,\n class: \"banner-button\"\n}\nconst _hoisted_7 = { class: \"bt-icon bt-icon--xs\" }\nconst _hoisted_8 = { class: \"ml-2\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_InlineSvgScoped = _resolveComponent(\"InlineSvgScoped\")\n const _component_Button = _resolveComponent(\"Button\")\n\n return (_openBlock(), _createBlock(\"div\", {\n class: [\"banner-container\", {\n 'gray-banner': _ctx.isGrayBanner,\n 'blue-banner': _ctx.isBlueBanner,\n 'orange-banner': _ctx.isOrangeBanner,\n }]\n }, [\n (_ctx.isGrayBanner)\n ? (_openBlock(), _createBlock(\"div\", _hoisted_1, [\n _createVNode(_component_InlineSvgScoped, {\n src: require(`@/assets/images/icon-check.svg`),\n \"aria-label\": \"icon-blueprint\"\n }, null, 8, [\"src\"])\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.isBlueBanner || _ctx.isOrangeBanner)\n ? (_openBlock(), _createBlock(\"div\", {\n key: 1,\n class: [\"icon-warning\", { orange: _ctx.isOrangeBanner }]\n }, [\n _createVNode(_component_InlineSvgScoped, {\n class: \"fill-icon\",\n src: \n require(`@/assets/images/icons/icon-alert-medium-full.svg`)\n ,\n \"aria-label\": \"icon-blueprint\"\n }, null, 8, [\"src\"])\n ], 2))\n : _createCommentVNode(\"\", true),\n _createVNode(\"div\", _hoisted_2, [\n _createVNode(\"div\", _hoisted_3, _toDisplayString(_ctx.title), 1),\n _createVNode(\"div\", _hoisted_4, _toDisplayString(_ctx.subtitle), 1),\n (_ctx.showLastSyncData)\n ? (_openBlock(), _createBlock(\"small\", _hoisted_5, _toDisplayString(_ctx.bannerDetails), 1))\n : _createCommentVNode(\"\", true)\n ]),\n (_ctx.isVisibleSyncButton)\n ? (_openBlock(), _createBlock(\"div\", _hoisted_6, [\n _createVNode(_component_Button, {\n class: \"p-button-rounded p-button-outlined px-4\",\n disabled: !_ctx.enableSyncButton,\n onClick: _ctx.onClickSyncNow\n }, {\n default: _withCtx(() => [\n _createVNode(\"span\", _hoisted_7, [\n _createVNode(_component_InlineSvgScoped, {\n src: require(`@/assets/images/icons/icon-sync.svg`),\n \"aria-label\": \"icon-grid\"\n }, null, 8, [\"src\"])\n ]),\n _createVNode(\"span\", _hoisted_8, _toDisplayString(_ctx.$t(\"AppResourceEP.SyncNow\")), 1)\n ]),\n _: 1\n }, 8, [\"disabled\", \"onClick\"])\n ]))\n : _createCommentVNode(\"\", true)\n ], 2))\n}","import {\n EntrancePlantDetailDTO,\n PlantSyncStatusDTO,\n} from 'client-generator/generated-clients/plants';\nimport { Options, Vue } from 'vue-class-component';\nimport plantsClient from '@/core/services/plants';\nimport { SET_APP_LOADING } from '@/core/store/action-types';\n@Options({\n name: 'EntrancePlantStatusBanner',\n components: {},\n props: {\n plant: {\n required: true,\n type: Object as () => EntrancePlantDetailDTO,\n },\n },\n computed: {},\n emits: [],\n watch: {},\n})\nexport default class EntrancePlantStatusBanner extends Vue {\n isBlueBanner: boolean = false;\n isGrayBanner: boolean = false;\n isOrangeBanner: boolean = false;\n enableSyncButton: boolean = false;\n isVisibleSyncButton: boolean = false;\n showLastSyncData: boolean = false;\n bannerDetails: string = '';\n\n title: string = '';\n subtitle: string = '';\n\n plant!: EntrancePlantDetailDTO;\n lastSyncDate: string = '';\n lastSyncTime: string = '';\n config = this.plant.syncStatus as PlantSyncStatusDTO;\n\n async mounted(): Promise {\n if (this.config.lastSyncDateTime) {\n this.lastSyncDate = this.config.lastSyncDateTime.toLocaleDateString();\n this.lastSyncTime = this.config.lastSyncDateTime!.toLocaleTimeString();\n }\n\n if (this.config.isPlantActive) {\n if (this.config.connected) {\n if (this.config.synchronized) {\n this.isBlueBanner = true;\n this.isGrayBanner = false;\n this.isVisibleSyncButton = true;\n this.enableSyncButton = false;\n this.showLastSyncData = true;\n this.title = this.$t('general.synced');\n this.subtitle = this.$t('AppResourceEP.NoChangesToSync');\n this.bannerDetails =\n this.$t('AppResourceEP.LastSync') +\n ' ' +\n this.$t('AppResourceEP.Now');\n } else if (\n this.config.changesToSyncCount &&\n this.config.changesToSyncCount > 0\n ) {\n this.isBlueBanner = true;\n this.isGrayBanner = false;\n this.isVisibleSyncButton = true;\n this.enableSyncButton = true;\n this.showLastSyncData = true;\n this.title = this.$t('AppResourceEP.NewChangesToSync');\n this.subtitle =\n this.config.changesToSyncCount +\n ' ' +\n this.$t('AppResourceEP.ChangesToSync');\n this.bannerDetails = this.$t('PlantBannerNewChangesToSyncDetails', {\n date: this.lastSyncDate,\n time: this.lastSyncTime,\n });\n } else {\n this.isOrangeBanner = true;\n this.isVisibleSyncButton = false;\n this.title = this.$t('PlantBannerChangeNoSync');\n this.subtitle = this.$t('PlantBannerNeedBTConnection');\n }\n } else {\n if (this.config.synchronized) {\n this.isGrayBanner = true;\n this.isBlueBanner = false;\n this.isVisibleSyncButton = false;\n this.title = this.$t('PlantActiveNoConnectedTitle');\n this.subtitle = this.$t('PlantActiveNoConnectedSubtitle');\n } else {\n this.isBlueBanner = true;\n this.isGrayBanner = false;\n this.isOrangeBanner = false;\n this.showLastSyncData = true;\n this.title = this.$t('AppResourceEP.NewChangesToSync');\n this.subtitle = this.$t('PlantBannerNeedBTConnection');\n\n this.bannerDetails =\n this.$t('AppResourceEP.LastSync') +\n ' ' +\n this.lastSyncDate +\n ' ' +\n this.lastSyncTime;\n }\n }\n }\n }\n\n async onClickSyncNow() {\n try {\n this.$store.dispatch(SET_APP_LOADING, true);\n await plantsClient.syncwitheliot(this.plant.desktopId as number);\n } catch (error) {\n alert('Error syncing with Eliot');\n } finally {\n this.$store.dispatch(SET_APP_LOADING, false);\n }\n }\n}\n","import { render } from \"./EntrancePlantStatusBanner.vue?vue&type=template&id=2d04dd01&ts=true\"\nimport script from \"./EntrancePlantStatusBanner.ts?vue&type=script&lang=ts\"\nexport * from \"./EntrancePlantStatusBanner.ts?vue&type=script&lang=ts\"\n\nimport \"./EntrancePlantStatusBanner.scss?vue&type=style&index=0&lang=scss\"\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__","import { mapState } from 'vuex';\nimport { Vue, Options } from 'vue-class-component';\nimport { getPlantIconImageUrlsByType } from '@/core/utils/utils';\nimport Gate from './EntrancePlantDashboardGate/EntrancePlantDashboardGate.vue';\nimport CardContainer from '@/views/components/CardContainer/CardContainer.vue';\nimport {\n EntrancePlantDetailDTO,\n} from 'client-generator/generated-clients/plants';\nimport plantsClient from '@/core/services/plants';\nimport EntrancePlantStatusBanner from './EntrancePlantStatusBanner/EntrancePlantStatusBanner.vue';\n\n@Options({\n name: 'EntrancePlantDashboard',\n components: {\n Gate,\n CardContainer,\n EntrancePlantStatusBanner,\n },\n props: {},\n computed: {\n ...mapState(['currentEntrancePlant', 'adminView']),\n },\n emits: ['update-list'],\n watch: {},\n})\nexport default class EntrancePlantDashboard extends Vue {\n currentEntrancePlant!: EntrancePlantDetailDTO;\n countBadges = 0;\n adminView!: boolean;\n\n get imageURLs() {\n return getPlantIconImageUrlsByType(\n this.currentEntrancePlant.icon,\n this.currentEntrancePlant.customIconImageUrl,\n this.currentEntrancePlant.plantType\n );\n }\n\n get imageSrcSetURLs() {\n if (this.imageURLs.length <= 1) return this.imageURLs[0];\n return `${this.imageURLs[0]}, ${this.imageURLs[1]} 2x, ${this.imageURLs[2]} 3x`;\n }\n\n get countBuildings() {\n if (this.currentEntrancePlant.buildings === undefined) return 0;\n return this.currentEntrancePlant.buildings.length;\n }\n\n get countApartments() {\n if (this.currentEntrancePlant.buildings === undefined) return 0;\n let apartmentsTotal = 0;\n for (const building of this.currentEntrancePlant.buildings) {\n if (building.apartments !== undefined) {\n apartmentsTotal += building.apartments.length;\n }\n }\n return apartmentsTotal;\n }\n\n async mounted() {\n await this.doCountBadges();\n }\n\n async doCountBadges() {\n const badgesList = await plantsClient.badgeAll(\n this.currentEntrancePlant.desktopId as number\n );\n this.countBadges = badgesList.length;\n }\n\n toggleCreateGateDialog() {}\n\n goToParametersSettings() {\n this.$router.push({\n name: 'page-entranceplant-settings',\n });\n }\n\n goToResidents() {\n this.$router.push({\n name: 'page-entranceplant-residents',\n });\n }\n\n goToGuests() {\n this.$router.push({\n name: 'page-entranceplant-guests',\n });\n }\n\n goToMessages() {\n this.$router.push({\n name: 'page-entranceplant-messages',\n });\n }\n\n goToBadges() {\n this.$router.push({\n name: 'page-entranceplant-badges',\n });\n }\n\n goToSwitchboards() {\n this.$router.push({\n name: 'page-entranceplant-switchboards',\n });\n }\n\n goToAddSwitchboard() {\n this.$router.push({\n name: 'page-entranceplant-switchboards',\n query: { addSwitchboard: 'add-switchboard' },\n });\n }\n\n goToAddressBook() {\n this.$router.push({\n name: 'page-entranceplant-residents',\n });\n }\n}\n","import { render } from \"./EntrancePlantDashboard.vue?vue&type=template&id=0629021a&ts=true\"\nimport script from \"./EntrancePlantDashboard.ts?vue&type=script&lang=ts\"\nexport * from \"./EntrancePlantDashboard.ts?vue&type=script&lang=ts\"\n\nimport \"./EntrancePlantDashboard.scss?vue&type=style&index=0&lang=scss\"\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__","module.exports = __webpack_public_path__ + \"img/icon-sync.504e71f4.svg\";","module.exports = __webpack_public_path__ + \"img/icon-add.e7fd00be.svg\";","module.exports = __webpack_public_path__ + \"img/icon-gate.89a8ac52.svg\";","import { renderSlot as _renderSlot, resolveComponent as _resolveComponent, createVNode as _createVNode, toDisplayString as _toDisplayString, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"card__head d-flex align-items-center\" }\nconst _hoisted_2 = { class: \"d-flex align-items-center\" }\nconst _hoisted_3 = { class: \"ml-2\" }\nconst _hoisted_4 = { class: \"ml-auto mr-2\" }\nconst _hoisted_5 = { class: \"bt-icon bt-icon--xs\" }\nconst _hoisted_6 = { class: \"ml-2\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_InlineSvgScoped = _resolveComponent(\"InlineSvgScoped\")\n const _component_Button = _resolveComponent(\"Button\")\n const _component_Card = _resolveComponent(\"Card\")\n\n return (_openBlock(), _createBlock(_component_Card, { class: \"card--primary\" }, {\n content: _withCtx(() => [\n _createVNode(\"div\", _hoisted_1, [\n _renderSlot(_ctx.$slots, \"title\", {}, () => [\n _createVNode(\"h3\", _hoisted_2, [\n _createVNode(_component_InlineSvgScoped, { src: _ctx.titleIcon }, null, 8, [\"src\"]),\n _createVNode(\"span\", _hoisted_3, _toDisplayString(_ctx.title), 1)\n ])\n ]),\n _createVNode(\"div\", _hoisted_4, [\n _renderSlot(_ctx.$slots, \"actionButton\", {}, () => [\n (_ctx.showActionButton)\n ? (_openBlock(), _createBlock(_component_Button, {\n key: 0,\n disabled: _ctx.disabled,\n onClick: _ctx.onActionButtonClick,\n class: \"p-button-rounded p-button-outlined\"\n }, {\n default: _withCtx(() => [\n _createVNode(\"span\", _hoisted_5, [\n _createVNode(_component_InlineSvgScoped, {\n src: \n require(`@/assets/images/icons/icon-plus-outline.svg`)\n ,\n \"aria-label\": \"icon-grid\"\n }, null, 8, [\"src\"])\n ]),\n _createVNode(\"span\", _hoisted_6, _toDisplayString(_ctx.actionButtonLabel), 1)\n ]),\n _: 1\n }, 8, [\"disabled\", \"onClick\"]))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ]),\n _renderSlot(_ctx.$slots, \"default\")\n ]),\n _: 1\n }))\n}","import { Vue, Options } from 'vue-class-component';\n\n@Options({\n name: 'CardContainer',\n components: {},\n props: {\n titleIcon: {\n type: String,\n required: true,\n },\n title: {\n type: String,\n required: true,\n },\n showActionButton: {\n type: Boolean,\n required: false,\n },\n actionButtonLabel: {\n type: String,\n required: false,\n },\n disabled: {\n type:Boolean,\n required: false, \n default: false\n\n }\n },\n watch: {},\n emits: ['on-Action-Button-Click']\n})\n\nexport default class CardContainer extends Vue {\n titleIcon!: string;\n title!: string;\n showActionButton!: boolean;\n actionButtonLabel!: string;\n disabled!:boolean;\n\n\n\n onActionButtonClick () {\n this.$emit('on-Action-Button-Click');\n }\n}\n","import { render } from \"./CardContainer.vue?vue&type=template&id=5aab2bae&ts=true\"\nimport script from \"./CardContainer.ts?vue&type=script&lang=ts\"\nexport * from \"./CardContainer.ts?vue&type=script&lang=ts\"\n\nimport \"./CardContainer.scss?vue&type=style&index=0&lang=scss\"\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__","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!./EntrancePlantStatusBanner.scss?vue&type=style&index=0&lang=scss\"","module.exports = __webpack_public_path__ + \"img/icon-check.ea86f165.svg\";","module.exports = __webpack_public_path__ + \"img/icon-building.7c6caebd.svg\";","module.exports = __webpack_public_path__ + \"img/icon-apartment.5ae334cb.svg\";","module.exports = __webpack_public_path__ + \"img/icon-resident.fa4efdcd.svg\";","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!./EntrancePlantDashboard.scss?vue&type=style&index=0&lang=scss\"","module.exports = __webpack_public_path__ + \"img/icon-badge.0c90095c.svg\";","module.exports = __webpack_public_path__ + \"img/icon-alert-medium-full.bcb368fc.svg\";","module.exports = __webpack_public_path__ + \"img/icon-switchboard.8b491d14.svg\";","module.exports = __webpack_public_path__ + \"img/icon-guest.8344f74b.svg\";","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!./EntrancePlantDashboardGate.scss?vue&type=style&index=0&lang=scss\"","/**\n * lodash (Custom Build) \n * Build: `lodash modularize exports=\"npm\" -o ./`\n * Copyright jQuery Foundation and other contributors \n * Released under MIT license \n * Based on Underscore.js 1.8.3 \n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n\n/** Used as the `TypeError` message for \"Functions\" methods. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/** Used as references for various `Number` constants. */\nvar NAN = 0 / 0;\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/** Used to match leading and trailing whitespace. */\nvar reTrim = /^\\s+|\\s+$/g;\n\n/** Used to detect bad signed hexadecimal string values. */\nvar reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n/** Used to detect binary string values. */\nvar reIsBinary = /^0b[01]+$/i;\n\n/** Used to detect octal string values. */\nvar reIsOctal = /^0o[0-7]+$/i;\n\n/** Built-in method references without a dependency on `root`. */\nvar freeParseInt = parseInt;\n\n/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar objectToString = objectProto.toString;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n result = wait - timeSinceLastCall;\n\n return maxing ? nativeMin(result, maxWait - timeSinceLastInvoke) : result;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\n/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return !!value && (type == 'object' || type == 'function');\n}\n\n/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return !!value && typeof value == 'object';\n}\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && objectToString.call(value) == symbolTag);\n}\n\n/**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\nfunction toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = value.replace(reTrim, '');\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n}\n\nmodule.exports = debounce;\n"],"sourceRoot":""}