{"version":3,"sources":["webpack:///./src/views/pages/PlantDetail/PlantScenes/SceneWizard/SceneWizardStep3/SceneWizardStep3.vue?fb93","webpack:///./src/views/pages/PlantDetail/PlantScenes/SceneWizard/ScenePanelDeviceButtons/ScenePanelDeviceButtons.vue?df8a","webpack:///./src/views/pages/PlantDetail/PlantScenes/SceneWizard/ScenePanelDeviceButtons/ScenePanelDeviceButtons.ts","webpack:///./src/views/pages/PlantDetail/PlantScenes/SceneWizard/ScenePanelDeviceButtons/ScenePanelDeviceButtons.vue","webpack:///./src/views/pages/PlantDetail/PlantScenes/SceneWizard/SceneWizardStep3/SceneWizardStep3.ts","webpack:///./src/views/pages/PlantDetail/PlantScenes/SceneWizard/SceneWizardStep3/SceneWizardStep3.vue","webpack:///./src/views/pages/PlantDetail/PlantScenes/SceneWizard/ScenePanelDeviceButtons/ScenePanelDeviceButtons.scss?01e8"],"names":["_hoisted_1","class","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","render","_ctx","_cache","$props","$setup","$data","$options","_component_SceneStepItemsList","_component_ScenePanelDeviceButtons","_component_TabPanel","_component_ScenePanelObjects","_component_ScenePanelTime","_component_TabView","_component_DialogAddTriggerAndCondition","scene","triggers","length","triggerText","items","onEdit","handleEdit","onRemove","handleRemove","default","header","$t","currentDevices","currentDevicesCommands","assignableDevices","compatibleDevices","linkableObject","addToastMessage","ruleServiceType","SlotRuleServiceType","AUTOMATION_COMMAND","_","roomsWithObjects","triggersRoomsList","SceneWizardStepEnum","STEP_TRIGGER","onAddTrigger","handleAddTrigger","name","isVisibleDialogTrigger","$event","onConfirm","handleDoEditTrigger","triggerOrActionToAdd","tempTriggerToEdit","triggerOrConditionType","tempTriggerDTOToEdit","sceneObjectType","triggerOrConditionName","objectName","_component_InputText","_component_DeviceAndSlotDetail","_component_ElScrollbar","type","placeholder","modelValue","searchTerm","availableAssignableDevices","device","key","id","onAddDevice","addDevice","isSingleDeviceSelection","isOnlyDeviceSelection","this","filter","x","find","d","toLowerCase","includes","model","$emitter","on","deleteUnusedDevicesAction","off","deleteUnusedDevices","i","devices","slots","some","s","status","MarkedForLinking","Configured","linkedObjects","l","splice","props","Object","required","String","Number","Boolean","components","DeviceAndSlotDetail","__exports__","SceneWizardStep","fetchTriggersList","$store","dispatch","plants","sceneTriggersList","plantId","response","messageError","emit","$router","push","params","$route","toString","$toast","add","severity","summary","closable","life","trigger","idsArray","flatMap","triggerParams","uniqueId","Math","max","ScenePanelDeviceButtons","ScenePanelObjects","ScenePanelTime","SceneStepItemsList","DialogAddTriggerAndCondition"],"mappings":"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","file":"js/chunk-76dd081b.da371b06.js","sourcesContent":["import { toDisplayString as _toDisplayString, createVNode as _createVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, Fragment as _Fragment, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"wizard-panels\" }\nconst _hoisted_2 = { class: \"wizard-panels__left d-flex flex-column\" }\nconst _hoisted_3 = { class: \"d-flex align-items-center fs-18 mb-4\" }\nconst _hoisted_4 = { class: \"mr-1\" }\nconst _hoisted_5 = { class: \"wizard-panels__right p-4\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_SceneStepItemsList = _resolveComponent(\"SceneStepItemsList\")\n const _component_ScenePanelDeviceButtons = _resolveComponent(\"ScenePanelDeviceButtons\")\n const _component_TabPanel = _resolveComponent(\"TabPanel\")\n const _component_ScenePanelObjects = _resolveComponent(\"ScenePanelObjects\")\n const _component_ScenePanelTime = _resolveComponent(\"ScenePanelTime\")\n const _component_TabView = _resolveComponent(\"TabView\")\n const _component_DialogAddTriggerAndCondition = _resolveComponent(\"DialogAddTriggerAndCondition\")\n\n return (_openBlock(), _createBlock(_Fragment, null, [\n _createVNode(\"div\", _hoisted_1, [\n _createVNode(\"div\", _hoisted_2, [\n _createVNode(\"div\", _hoisted_3, [\n _createVNode(\"strong\", _hoisted_4, _toDisplayString(_ctx.scene.triggers.length), 1),\n _createVNode(\"span\", null, _toDisplayString(_ctx.triggerText), 1)\n ]),\n _createVNode(_component_SceneStepItemsList, {\n items: _ctx.scene.triggers,\n onEdit: _ctx.handleEdit,\n onRemove: _ctx.handleRemove,\n class: \"flex-shrink-1\"\n }, null, 8, [\"items\", \"onEdit\", \"onRemove\"])\n ]),\n _createVNode(\"div\", _hoisted_5, [\n _createVNode(_component_TabView, { class: \"p-tabview--custom\" }, {\n default: _withCtx(() => [\n _createVNode(_component_TabPanel, {\n header: _ctx.$t('AppResource.Button')\n }, {\n default: _withCtx(() => [\n _createVNode(_component_ScenePanelDeviceButtons, {\n currentDevices: _ctx.currentDevicesCommands,\n assignableDevices: _ctx.compatibleDevices,\n linkableObject: _ctx.scene,\n addToastMessage: _ctx.$t('general.commandAdded'),\n ruleServiceType: \n _ctx.SlotRuleServiceType.AUTOMATION_COMMAND\n \n }, null, 8, [\"currentDevices\", \"assignableDevices\", \"linkableObject\", \"addToastMessage\", \"ruleServiceType\"])\n ]),\n _: 1\n }, 8, [\"header\"]),\n _createVNode(_component_TabPanel, {\n header: _ctx.$t('AppResource.ObjectCapitalized')\n }, {\n default: _withCtx(() => [\n _createVNode(_component_ScenePanelObjects, {\n roomsWithObjects: _ctx.triggersRoomsList,\n \"step-to-add\": _ctx.SceneWizardStepEnum.STEP_TRIGGER,\n onAddTrigger: _ctx.handleAddTrigger\n }, null, 8, [\"roomsWithObjects\", \"step-to-add\", \"onAddTrigger\"])\n ]),\n _: 1\n }, 8, [\"header\"]),\n _createVNode(_component_TabPanel, {\n header: _ctx.$t('AppResource.DateAndTime')\n }, {\n default: _withCtx(() => [\n _createVNode(_component_ScenePanelTime, {\n name: _ctx.$t('AppResource.DateAndTime'),\n \"step-to-add\": _ctx.SceneWizardStepEnum.STEP_TRIGGER,\n onAddTrigger: _ctx.handleAddTrigger\n }, null, 8, [\"name\", \"step-to-add\", \"onAddTrigger\"])\n ]),\n _: 1\n }, 8, [\"header\"])\n ]),\n _: 1\n })\n ])\n ]),\n _createVNode(_component_DialogAddTriggerAndCondition, {\n \"is-visible\": _ctx.isVisibleDialogTrigger,\n \"onUpdate:is-visible\": _cache[1] || (_cache[1] = ($event: any) => (_ctx.isVisibleDialogTrigger = $event)),\n onConfirm: _ctx.handleDoEditTrigger,\n \"step-to-add\": _ctx.SceneWizardStepEnum.STEP_TRIGGER,\n triggerOrActionToAdd: _ctx.tempTriggerToEdit,\n triggerOrConditionType: \n _ctx.tempTriggerDTOToEdit ? _ctx.tempTriggerDTOToEdit.sceneObjectType : null\n ,\n triggerOrConditionName: \n _ctx.tempTriggerDTOToEdit ? _ctx.tempTriggerDTOToEdit.objectName : null\n \n }, null, 8, [\"is-visible\", \"onConfirm\", \"step-to-add\", \"triggerOrActionToAdd\", \"triggerOrConditionType\", \"triggerOrConditionName\"])\n ], 64))\n}","import { createVNode as _createVNode, resolveComponent as _resolveComponent, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createBlock as _createBlock, withCtx as _withCtx } from \"vue\"\n\nconst _hoisted_1 = { class: \"scene-panel-devices\" }\nconst _hoisted_2 = { class: \"d-flex mb-3\" }\nconst _hoisted_3 = { class: \"p-input-icon-left ml-auto input-filter-search\" }\nconst _hoisted_4 = /*#__PURE__*/_createVNode(\"i\", { class: \"pi pi-search\" }, null, -1)\nconst _hoisted_5 = { class: \"devices-grid\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_InputText = _resolveComponent(\"InputText\")\n const _component_DeviceAndSlotDetail = _resolveComponent(\"DeviceAndSlotDetail\")\n const _component_ElScrollbar = _resolveComponent(\"ElScrollbar\")\n\n return (_openBlock(), _createBlock(\"div\", _hoisted_1, [\n _createVNode(\"div\", _hoisted_2, [\n _createVNode(\"span\", _hoisted_3, [\n _hoisted_4,\n _createVNode(_component_InputText, {\n type: \"text\",\n placeholder: _ctx.$t('AppResource.FilterByText'),\n modelValue: _ctx.searchTerm,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => (_ctx.searchTerm = $event))\n }, null, 8, [\"placeholder\", \"modelValue\"])\n ])\n ]),\n _createVNode(_component_ElScrollbar, null, {\n default: _withCtx(() => [\n _createVNode(\"div\", _hoisted_5, [\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(_ctx.availableAssignableDevices, (device) => {\n return (_openBlock(), _createBlock(_component_DeviceAndSlotDetail, {\n device: device,\n key: device.id,\n class: \"flex-basis-1\",\n onAddDevice: _ctx.addDevice,\n \"is-add\": true,\n isSingleDeviceSelection: _ctx.isSingleDeviceSelection,\n isOnlyDeviceSelection: _ctx.isOnlyDeviceSelection,\n linkableObject: _ctx.linkableObject,\n ruleServiceType: _ctx.ruleServiceType\n }, null, 8, [\"device\", \"onAddDevice\", \"isSingleDeviceSelection\", \"isOnlyDeviceSelection\", \"linkableObject\", \"ruleServiceType\"]))\n }), 128))\n ])\n ]),\n _: 1\n })\n ]))\n}","import { Options, Vue } from 'vue-class-component';\nimport DeviceAndSlotDetail from '@/views/components/DeviceAndSlotDetail/DeviceAndSlotDetail.vue';\nimport { PropType } from 'vue';\nimport {\n DeviceDTO,\n ILinkableObject,\n SlotStatus,\n} from '@/../client-generator/generated-clients/plants';\nimport { SlotRuleServiceType } from '@/core/services/slots-assign-rules-service/slots-assign-rules-interfaces';\nimport { AUTOMATION_WIZARD_NEXT_CALLED } from '@/core/utils/emitter-events';\n\n@Options({\n name: 'ScenePanelDeviceButtons',\n props: {\n currentDevices: {\n type: Object as PropType,\n required: true,\n },\n assignableDevices: {\n type: Object as PropType,\n required: true,\n },\n linkableObject: {\n type: Object as PropType,\n required: true,\n },\n addToastMessage: {\n type: String,\n required: true,\n },\n ruleServiceType: {\n type: Number,\n required: true,\n },\n deleteUnusedDevices: {\n type: Boolean,\n default: false,\n },\n isSingleDeviceSelection: {\n type: Boolean,\n default: false,\n },\n isOnlyDeviceSelection: {\n type: Boolean,\n default: false,\n },\n },\n components: {\n DeviceAndSlotDetail,\n },\n})\nexport default class ScenePanelDeviceButtons extends Vue {\n currentDevices!: DeviceDTO[];\n assignableDevices!: DeviceDTO[];\n linkableObject!: ILinkableObject;\n addToastMessage!: string;\n ruleServiceType!: SlotRuleServiceType;\n deleteUnusedDevices!: boolean;\n isSingleDeviceSelection!: boolean;\n isOnlyDeviceSelection!: boolean;\n\n searchTerm = '';\n\n get availableAssignableDevices() {\n return this.assignableDevices.filter(\n (x) =>\n !this.currentDevices?.find((d) => d.id === x.id) &&\n (!this.searchTerm ||\n x.id?.toLowerCase().includes(this.searchTerm.toLowerCase()) ||\n x.model?.toLowerCase().includes(this.searchTerm.toLowerCase()))\n );\n }\n\n mounted() {\n this.$emitter.on(\n AUTOMATION_WIZARD_NEXT_CALLED,\n this.deleteUnusedDevicesAction\n );\n }\n\n beforeUnmount() {\n this.$emitter.off(\n AUTOMATION_WIZARD_NEXT_CALLED,\n this.deleteUnusedDevicesAction\n );\n }\n\n addDevice(device: DeviceDTO) {\n // if (this.isSingleDeviceSelection) {\n // for (let i = this.currentDevices.length - 1; i >= 0; i--) {\n // this.removeDevice(i, true);\n // }\n // }\n // if (this.isOnlyDeviceSelection) {\n // const slot = device.slots?.find((k) => !!k);\n // if (slot) {\n // slot.status = SlotStatus.MarkedForLinking;\n // switch (this.ruleServiceType) {\n // case SlotRuleServiceType.THERMO_THERMO:\n // slot.assignedComponentType = ComponentType.Thermo;\n // break;\n // case SlotRuleServiceType.THERMO_PROBE:\n // slot.assignedComponentType = ComponentType.Probe;\n // break;\n // }\n // }\n // }\n // this.linkableObject.devices?.push(device);\n // this.$toast.add({\n // severity: 'success',\n // summary: this.addToastMessage,\n // closable: false,\n // life: 3000,\n // });\n }\n\n deleteUnusedDevicesAction() {\n if (!this.deleteUnusedDevices) return;\n for (let i = (this.linkableObject.devices?.length ?? 0) - 1; i >= 0; i--) {\n if (\n !this.linkableObject.devices![i].slots?.some(\n (s) =>\n s.status === SlotStatus.MarkedForLinking ||\n (s.status === SlotStatus.Configured &&\n s.linkedObjects?.some((l) => l.id === this.linkableObject.id))\n )\n ) {\n this.linkableObject.devices!.splice(i, 1);\n }\n }\n }\n}\n","import { render } from \"./ScenePanelDeviceButtons.vue?vue&type=template&id=0dcf6565&ts=true\"\nimport script from \"./ScenePanelDeviceButtons.ts?vue&type=script&lang=ts\"\nexport * from \"./ScenePanelDeviceButtons.ts?vue&type=script&lang=ts\"\n\nimport \"./ScenePanelDeviceButtons.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 { Options } from 'vue-class-component';\nimport SceneWizardStep, { SceneWizardStepEnum } from '../SceneWizardStep';\nimport plantsClient from '@/core/services/plants';\nimport { SET_APP_LOADING } from '@/core/store/action-types';\nimport { SlotRuleServiceType } from '@/core/services/slots-assign-rules-service/slots-assign-rules-interfaces';\nimport { HANDLE_REFRESH_PLANT } from '@/core/utils/emitter-events';\nimport {\n ButtonTrigger,\n DateAndTimeTrigger,\n DeviceDTO,\n IObjectTrigger,\n ObjectTrigger,\n SceneObjectType,\n Trigger,\n TriggerDTO,\n TriggersAndConditionsRoomItemDTO,\n} from '@/../client-generator/generated-clients/plants';\nimport ScenePanelDeviceButtons from '../ScenePanelDeviceButtons/ScenePanelDeviceButtons.vue';\nimport ScenePanelObjects from '../ScenePanelObjects/ScenePanelObjects.vue';\nimport ScenePanelTime from '../ScenePanelTime/ScenePanelTime.vue';\nimport SceneStepItemsList from '../SceneStepItemsList/SceneStepItemsList.vue';\nimport DialogAddTriggerAndCondition from '../DialogAddTriggerAndCondition/DialogAddTriggerAndCondition.vue';\n\n@Options({\n name: 'SceneWizardStep3',\n components: {\n ScenePanelDeviceButtons,\n ScenePanelObjects,\n ScenePanelTime,\n SceneStepItemsList,\n DialogAddTriggerAndCondition,\n },\n})\nexport default class SceneWizardStep3 extends SceneWizardStep {\n SlotRuleServiceType = SlotRuleServiceType;\n SceneWizardStepEnum = SceneWizardStepEnum;\n compatibleDevices: DeviceDTO[] = [];\n triggersRoomsList: TriggersAndConditionsRoomItemDTO[] = [];\n isVisibleDialogTrigger = false;\n tempTriggerDTOToEdit: TriggerDTO | null = null;\n tempTriggerToEdit: Trigger | null = null;\n\n mounted() {\n this.fetchTriggersList();\n }\n\n get currentDevicesCommands() {\n return [];\n }\n\n get triggerText() {\n if (this.scene?.triggers?.length == 1){\n return this.$t('scenes.trigger')\n }else{\n return this.$t('AppResource.Triggers')\n }\n }\n\n async fetchTriggersList() {\n try {\n this.$store.dispatch(SET_APP_LOADING, true);\n const response = await plantsClient.sceneTriggersList(\n this.plantId as number\n );\n\n this.compatibleDevices = response.compatibleDevices as DeviceDTO[];\n this.triggersRoomsList = response.triggersRoomsList as TriggersAndConditionsRoomItemDTO[];\n } catch (error) {\n let messageError = '';\n switch (error.status) {\n case 409:\n this.$emitter.emit(HANDLE_REFRESH_PLANT);\n this.$router.push({\n name: 'page-plant-dashboard',\n params: this.$route.params,\n });\n break;\n default:\n messageError = this.$t('apiErrors.serverError').toString();\n }\n\n if (messageError) {\n this.$toast.add({\n severity: 'error',\n summary: this.$t('general.operationError'),\n closable: true,\n life: 3000,\n });\n }\n } finally {\n this.$store.dispatch(SET_APP_LOADING, false);\n }\n }\n\n handleAddTrigger(\n trigger: ObjectTrigger | ButtonTrigger | DateAndTimeTrigger,\n objectName: string,\n sceneObjectType: SceneObjectType\n ) {\n //TODO: align with xamarin -> guid converted in int?!? -> max + 1?\n const idsArray = (this.scene.triggers?.flatMap(\n (x) => x.triggerParams?.id\n ) ?? []) as number[];\n const uniqueId = idsArray.length ? Math.max(...idsArray) + 1 : 1;\n trigger.id = uniqueId;\n\n this.scene.triggers?.push(\n new TriggerDTO({\n objectName: objectName,\n sceneObjectType: sceneObjectType,\n triggerParams: trigger,\n })\n );\n }\n\n handleEdit(trigger: TriggerDTO) {\n this.tempTriggerDTOToEdit = trigger;\n this.tempTriggerToEdit = new Trigger(trigger.triggerParams);\n this.isVisibleDialogTrigger = true;\n }\n\n handleRemove(trigger: TriggerDTO) {\n this.scene.triggers = this.scene.triggers?.filter(\n (x) => x.triggerParams?.id !== trigger.triggerParams?.id\n );\n }\n\n handleDoEditTrigger() {\n if (!this.tempTriggerToEdit || !this.tempTriggerDTOToEdit?.triggerParams)\n return;\n\n this.tempTriggerDTOToEdit.triggerParams = this.tempTriggerToEdit;\n }\n}\n","import { render } from \"./SceneWizardStep3.vue?vue&type=template&id=76c4d3ca&ts=true\"\nimport script from \"./SceneWizardStep3.ts?vue&type=script&lang=ts\"\nexport * from \"./SceneWizardStep3.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__","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!./ScenePanelDeviceButtons.scss?vue&type=style&index=0&lang=scss\""],"sourceRoot":""}