{"version":3,"sources":["webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/AutomationWizard.vue?c83c","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step1/Step1.vue?a9e8","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/AssignRoomObjectGeneralStep.ts","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step1/ObjectFields/FieldsLight.vue?b340","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step1/ObjectFields/FieldsLight.ts","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step1/ObjectFields/FieldsLight.vue","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step1/ObjectFields/FieldsShutter.vue?cb2d","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step1/ObjectFields/FieldsShutter.ts","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step1/ObjectFields/FieldsShutter.vue","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step1/ObjectFields/FieldsFancoil.vue?5168","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step1/ObjectFields/FieldsFancoil.ts","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step1/ObjectFields/FieldsFancoil.vue","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step1/Step1.ts","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step1/Step1.vue","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step2/Step2.vue?a782","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step2/Step2.ts","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step2/Step2.vue","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step3/Step3.vue?839e","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step3/Step3.ts","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step3/Step3.vue","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step4/Step4.vue?7deb","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step4/Step4.ts","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/Step4/Step4.vue","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/AutomationWizard.ts","webpack:///./src/views/pages/PlantDetail/PlantRoom/AutomationWizard/AutomationWizard.vue","webpack:///./src/core/services/device-settings-service.ts","webpack:///./src/views/components/AddDeviceToLinkableObject/AddDeviceToLinkableObject.vue?31b0","webpack:///./src/views/components/AddDeviceToLinkableObject/AddDeviceToLinkableObject.ts","webpack:///./src/views/components/AddDeviceToLinkableObject/AddDeviceToLinkableObject.vue","webpack:///./src/views/components/AddDeviceToLinkableObject/AddDeviceToLinkableObject.scss?540d","webpack:///./src/core/services/device-settings-services/device-settings-service.ts"],"names":["_hoisted_1","class","_hoisted_2","_hoisted_3","render","_ctx","_cache","$props","$setup","$data","$options","_component_ElStep","_component_ElSteps","_component_Button","_component_WizardStepper","default","currentStepTitle","active","activeStep","steps","step","key","title","_","roomObject","id","activeStepComponent","plantId","roomId","roomName","roomType","defaultSettings","devicesSettings","$event","onNextEnabled","nextEnabledEvent","onClick","handleButtonBackAction","label","$t","handleButtonSubmitAction","buttonSubmitLabel","disabled","nextDisabled","for","_component_InputText","type","isValidName","modelValue","name","if","invalidNameReason","fieldsComponent","SlotRuleServiceType","nextEnabled","this","$emit","props","Object","required","Number","String","emits","watch","emitIsNextEnabled","_hoisted_4","_component_RadioButton","typeOptions","value","lightType","getOptionName","keys","filter","isNaN","None","map","Dimmer","OnOff","__exports__","_component_Checkbox","isManagePosition","binary","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","thermoTypeOfObject","associatedPumpOptions","thermoAssociatedPump","getAssociatedPumpOptionName","initialName","verifyValidityOfName","$store","dispatch","isValidEntityTypeName","validName","suggestNextValidEntityName","eType","ROOM_OBJECT","metadata","roomObjectType","room","suggestedName","typeMap","Light","Shutter","Socket","Lock","Fancoil","TowelWarmer","WirelessCommand","Player","components","FieldsLight","FieldsShutter","FieldsFancoil","_component_AddDeviceToLinkableObject","currentDevices","currentDevicesActuators","assignableDevices","devicesActuators","linkableObject","deleteUnusedDevices","addToastMessage","ruleServiceType","AUTOMATION_ACTUATOR","devices","x","isActuatorDevice","validateNextEnabled","ACTUATORS","undefined","messageError","status","$emitter","emit","$router","push","params","$route","toString","$toast","add","severity","summary","closable","life","some","k","slots","s","MarkedForLinking","Configured","linkedObjects","l","atLeastOneDeviceAndSlotSelected","AddDeviceToLinkableObject","currentDevicesCommands","devicesCommands","AUTOMATION_COMMAND","isCommandDevice","COMMANDS","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","_hoisted_18","_hoisted_19","_hoisted_20","_component_InlineSvgScoped","_component_Card","_component_ObjectSettings","_component_ElScrollbar","content","src","getObjectIconFromType","getObjectDescLabel","length","deviceSetting","getDeviceIconFromSettings","getDeviceName","deviceUid","activeLinksLabel","getDeviceIconName","selectedCommandIcon","hasDeviceCommandIconButtonVisible","showDeviceCommandIcon","hasDeviceSettingsButtonVisible","showDeviceSettings","isHidden","openAdvancedSettings","showRightPanel","hideRightPanel","width","height","currentDefaultSetting","deviceName","currentDeviceName","activeSettingsComponent","roomObjectDefault","fromJS","response","console","log","setting","deviceUuid","device","find","uid","model","CommandIconComponent","ObjectSettings","roomObjectId","query","fetchRoomObject","roomObjectsGET","dto","deviceSettings","generateDeviceSettingsResultDto","roomObjectsPUT","refresh","flushCache","Step1","Step2","Step3","Step4","deviceSettingsClient","_component_DeviceAndSlotDetail","_component_TabPanel","_component_TabView","index","onRemoveDevice","removeDevice","isSingleDeviceSelection","isOnlyDeviceSelection","header","placeholder","searchTerm","availableAssignableDevices","onAddDevice","addDevice","d","toLowerCase","includes","on","deleteUnusedDevicesAction","off","i","slot","THERMO_THERMO","assignedComponentType","Thermo","THERMO_PROBE","Probe","removeSlots","NotConfigured","realIndex","indexOf","splice","Boolean","DeviceAndSlotDetail","DeviceSettingsService","settingsResultList","isAggregateRoomObject","settingResult","deviceId","commandIcon","lightsActuatorSettings","transformLightsActuatorSettings","lightsCommandSettings","transformLightsCommandSettings","lockActuatorSettings","transformLockActuatorSettings","lockCommandSettings","transformLockCommandSettings","thermoProbeSettings","transformThermoProbeSettings","shuttersActuatorSettings","transformShuttersActuatorSettings","shuttersCommandSettings","transformShuttersCommandSettings","settings","results","saveTo","hasPul","hasPUL","isMinimumregulationLevelEnabled","loadType","minimumRegulationLevelValue","voltageType","isRestoreStateAfterResetEnabled","isZeroCrossingEnabled","relayStatusAfterReset","result","lightsOnOffMode","lightsOnOffTimedDelay","Timed","timedDelayPickerSelectedValue","minimumRegulationLevel","commandOpeningTime","lockCommandSettingsResult","isLedmanaged","externalSensorType","shutterActuatorSettings","shutterMotorType","stopPulseDuration","upDownPulseDuration","shutterMode","hasPreset","presetValue","stopTime","delayBetweenDoorsTime","commandDirection","shutterCommandSettings","stopTimeValue","remainder","quotient","Math","floor"],"mappings":"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","file":"js/page-assign-room-object.b44e687a.js","sourcesContent":["import { toDisplayString as _toDisplayString, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createBlock as _createBlock, resolveComponent as _resolveComponent, withCtx as _withCtx, resolveDynamicComponent as _resolveDynamicComponent, createCommentVNode as _createCommentVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"page-assign-room-object\" }\nconst _hoisted_2 = { class: \"assign-object-content mt-3\" }\nconst _hoisted_3 = { class: \"custom-footer\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_ElStep = _resolveComponent(\"ElStep\")\n const _component_ElSteps = _resolveComponent(\"ElSteps\")\n const _component_Button = _resolveComponent(\"Button\")\n const _component_WizardStepper = _resolveComponent(\"WizardStepper\")\n\n return (_openBlock(), _createBlock(\"div\", _hoisted_1, [\n _createVNode(_component_WizardStepper, null, {\n default: _withCtx(() => [\n _createVNode(\"h1\", null, _toDisplayString(_ctx.currentStepTitle), 1),\n _createVNode(\"div\", _hoisted_2, [\n _createVNode(_component_ElSteps, {\n active: _ctx.activeStep,\n class: \"col-lg-6\"\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(_ctx.steps, (step) => {\n return (_openBlock(), _createBlock(_component_ElStep, {\n key: step.title\n }))\n }), 128))\n ]),\n _: 1\n }, 8, [\"active\"]),\n (!!_ctx.roomObject?.id)\n ? (_openBlock(), _createBlock(_resolveDynamicComponent(_ctx.activeStepComponent), {\n key: 0,\n roomObject: _ctx.roomObject,\n plantId: _ctx.plantId,\n roomId: _ctx.roomId,\n roomName: _ctx.roomName,\n roomType: +_ctx.roomType,\n defaultSettings: _ctx.devicesSettings,\n \"onUpdate:defaultSettings\": _cache[1] || (_cache[1] = ($event: any) => (_ctx.devicesSettings = $event)),\n onNextEnabled: _ctx.nextEnabledEvent\n }, null, 8, [\"roomObject\", \"plantId\", \"roomId\", \"roomName\", \"roomType\", \"defaultSettings\", \"onNextEnabled\"]))\n : _createCommentVNode(\"\", true)\n ]),\n _createVNode(\"footer\", _hoisted_3, [\n _createVNode(_component_Button, {\n class: \"p-button-text\",\n onClick: _ctx.handleButtonBackAction,\n label: _ctx.$t('AppResource.Back')\n }, null, 8, [\"onClick\", \"label\"]),\n _createVNode(_component_Button, {\n class: \"p-button-text ml-auto\",\n onClick: _ctx.handleButtonSubmitAction,\n label: _ctx.buttonSubmitLabel,\n disabled: _ctx.nextDisabled\n }, null, 8, [\"onClick\", \"label\", \"disabled\"])\n ])\n ]),\n _: 1\n })\n ]))\n}","import { toDisplayString as _toDisplayString, createVNode as _createVNode, resolveComponent as _resolveComponent, resolveDynamicComponent as _resolveDynamicComponent, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"form-custom col-lg-6\" }\nconst _hoisted_2 = { class: \"p-field\" }\nconst _hoisted_3 = {\n class: \"p-field-label\",\n for: \"name\"\n}\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_InputText = _resolveComponent(\"InputText\")\n\n return (_openBlock(), _createBlock(\"div\", _hoisted_1, [\n _createVNode(\"div\", _hoisted_2, [\n _createVNode(\"label\", _hoisted_3, _toDisplayString(_ctx.$t(\"AppResource.Name\")), 1),\n _createVNode(_component_InputText, {\n id: \"name\",\n type: \"text\",\n class: [\"w-100\", { 'input-error': !_ctx.isValidName }],\n modelValue: _ctx.roomObject.name,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => (_ctx.roomObject.name = $event))\n }, null, 8, [\"modelValue\", \"class\"]),\n _createVNode(\"label\", {\n if: !_ctx.isValidName,\n for: \"name\",\n class: \"fs-13 label-error\"\n }, _toDisplayString(_ctx.invalidNameReason), 9, [\"if\"])\n ]),\n (_openBlock(), _createBlock(_resolveDynamicComponent(_ctx.fieldsComponent), { roomObject: _ctx.roomObject }, null, 8, [\"roomObject\"]))\n ]))\n}","import { Vue, Options } from 'vue-class-component';\nimport {\n IRoomObjectDTO,\n RoomDTO,\n} from 'client-generator/generated-clients/plants';\nimport { PropType } from 'vue';\nimport { SlotRuleServiceType } from '@/core/services/slots-assign-rules-service/slots-assign-rules-interfaces';\nimport { IDefaultDevicesSettingsDTO } from '@/../client-generator/generated-clients/device-settings';\n\n@Options({\n name: 'AssignRoomObjectGeneralStep',\n props: {\n roomObject: {\n type: Object as PropType,\n required: true,\n },\n plantId: {\n type: Number,\n required: true,\n },\n roomId: {\n type: String,\n required: true,\n },\n roomName: {\n type: String,\n required: true,\n },\n roomType: {\n type: Number,\n required: true,\n },\n defaultSettings: {\n type: Object as PropType,\n required: true,\n },\n },\n emits: ['update:defaultSettings', 'next-enabled'],\n watch: {\n nextEnabled: function () {\n this.emitIsNextEnabled();\n },\n },\n})\nexport default class AssignRoomObjectGeneralStep extends Vue {\n defaultSettings!: IDefaultDevicesSettingsDTO[];\n roomObject!: IRoomObjectDTO;\n plantId!: number;\n roomId!: string;\n roomName!: string;\n roomType!: number;\n SlotRuleServiceType = SlotRuleServiceType;\n\n nextEnabled = true;\n\n emitIsNextEnabled() {\n this.$emit('next-enabled', this.nextEnabled);\n }\n}\n","import { toDisplayString as _toDisplayString, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createBlock as _createBlock, resolveComponent as _resolveComponent } from \"vue\"\n\nconst _hoisted_1 = { class: \"p-field\" }\nconst _hoisted_2 = { class: \"p-field-label\" }\nconst _hoisted_3 = /*#__PURE__*/_createVNode(\"hr\", null, null, -1)\nconst _hoisted_4 = { class: \"p-field-radiobutton\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_RadioButton = _resolveComponent(\"RadioButton\")\n\n return (_openBlock(), _createBlock(\"div\", _hoisted_1, [\n _createVNode(\"label\", _hoisted_2, _toDisplayString(_ctx.$t(\"AppResource.TypeOfObject\")), 1),\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(_ctx.typeOptions, (type) => {\n return (_openBlock(), _createBlock(\"div\", {\n key: `option-${type}`\n }, [\n _hoisted_3,\n _createVNode(\"div\", _hoisted_4, [\n _createVNode(_component_RadioButton, {\n id: `option-${type}`,\n name: \"option\",\n value: type,\n modelValue: _ctx.roomObject.lightType,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => (_ctx.roomObject.lightType = $event))\n }, null, 8, [\"id\", \"value\", \"modelValue\"]),\n _createVNode(\"label\", {\n for: `option-${type}`\n }, _toDisplayString(_ctx.getOptionName(type)), 9, [\"for\"])\n ])\n ]))\n }), 128))\n ]))\n}","import { Options, Vue } from 'vue-class-component';\nimport {\n IRoomObjectDTO,\n LightType,\n} from '@/../client-generator/generated-clients/plants';\nimport { PropType } from 'vue';\n\n@Options({\n name: 'FieldsLight',\n props: {\n roomObject: {\n type: Object as PropType,\n required: true,\n },\n },\n})\nexport default class FieldsLight extends Vue {\n roomObject!: IRoomObjectDTO;\n\n get typeOptions() {\n return Object.keys(LightType)\n .filter(\n (value) => !isNaN(Number(value)) && Number(value) != LightType.None\n )\n .map((value) => Number(value));\n }\n\n getOptionName(type: LightType) {\n switch (type) {\n case LightType.Dimmer:\n return this.$t(`AppResource.DimmerLight`);\n case LightType.OnOff:\n return this.$t(`AppResource.OnOffLight`);\n default:\n return ''\n }\n }\n}\n","import { render } from \"./FieldsLight.vue?vue&type=template&id=1a5d28b4&ts=true\"\nimport script from \"./FieldsLight.ts?vue&type=script&lang=ts\"\nexport * from \"./FieldsLight.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__","import { toDisplayString as _toDisplayString, createVNode as _createVNode, resolveComponent as _resolveComponent, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"p-field\" }\nconst _hoisted_2 = { class: \"p-field-label\" }\nconst _hoisted_3 = { class: \"p-field-checkbox\" }\nconst _hoisted_4 = { for: \"isManagePosition\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_Checkbox = _resolveComponent(\"Checkbox\")\n\n return (_openBlock(), _createBlock(\"div\", _hoisted_1, [\n _createVNode(\"label\", _hoisted_2, _toDisplayString(_ctx.$t(\"AppResource.ManagePosition\")), 1),\n _createVNode(\"div\", _hoisted_3, [\n _createVNode(_component_Checkbox, {\n id: \"isManagePosition\",\n name: \"isManagePosition\",\n modelValue: _ctx.roomObject.isManagePosition,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => (_ctx.roomObject.isManagePosition = $event)),\n binary: true\n }, null, 8, [\"modelValue\"]),\n _createVNode(\"label\", _hoisted_4, _toDisplayString(_ctx.$t(\"AppResource.ManagePosition\")), 1)\n ])\n ]))\n}","import { Options, Vue } from 'vue-class-component';\nimport {\n IRoomObjectDTO,\n} from '@/../client-generator/generated-clients/plants';\nimport { PropType } from 'vue';\n\n@Options({\n name: 'FieldsShutter',\n props: {\n roomObject: {\n type: Object as PropType,\n required: true,\n },\n },\n})\nexport default class FieldsShutter extends Vue {\n roomObject!: IRoomObjectDTO;\n}\n","import { render } from \"./FieldsShutter.vue?vue&type=template&id=29baeda0&ts=true\"\nimport script from \"./FieldsShutter.ts?vue&type=script&lang=ts\"\nexport * from \"./FieldsShutter.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__","import { toDisplayString as _toDisplayString, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createBlock as _createBlock, resolveComponent as _resolveComponent } from \"vue\"\n\nconst _hoisted_1 = { class: \"p-field\" }\nconst _hoisted_2 = { class: \"p-field-label\" }\nconst _hoisted_3 = /*#__PURE__*/_createVNode(\"hr\", null, null, -1)\nconst _hoisted_4 = { class: \"p-field-radiobutton\" }\nconst _hoisted_5 = { class: \"p-field\" }\nconst _hoisted_6 = { class: \"p-field-label\" }\nconst _hoisted_7 = /*#__PURE__*/_createVNode(\"hr\", null, null, -1)\nconst _hoisted_8 = { class: \"p-field-radiobutton\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_RadioButton = _resolveComponent(\"RadioButton\")\n\n return (_openBlock(), _createBlock(_Fragment, null, [\n _createVNode(\"div\", _hoisted_1, [\n _createVNode(\"label\", _hoisted_2, _toDisplayString(_ctx.$t(\"AppResource.TypeOfObject\")), 1),\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(_ctx.typeOptions, (type) => {\n return (_openBlock(), _createBlock(\"div\", {\n key: `option-${type}`\n }, [\n _hoisted_3,\n _createVNode(\"div\", _hoisted_4, [\n _createVNode(_component_RadioButton, {\n id: `type-option-${type}`,\n name: \"type-option\",\n value: type,\n modelValue: _ctx.roomObject.thermoTypeOfObject,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => (_ctx.roomObject.thermoTypeOfObject = $event))\n }, null, 8, [\"id\", \"value\", \"modelValue\"]),\n _createVNode(\"label\", {\n for: `type-option-${type}`\n }, _toDisplayString(_ctx.getOptionName(type)), 9, [\"for\"])\n ])\n ]))\n }), 128))\n ]),\n _createVNode(\"div\", _hoisted_5, [\n _createVNode(\"label\", _hoisted_6, _toDisplayString(_ctx.$t(\"AppResource.AssociatedPump\")), 1),\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(_ctx.associatedPumpOptions, (type) => {\n return (_openBlock(), _createBlock(\"div\", {\n key: `option-${type}`\n }, [\n _hoisted_7,\n _createVNode(\"div\", _hoisted_8, [\n _createVNode(_component_RadioButton, {\n id: `pump-option-${type}`,\n name: \"pump-option\",\n value: type,\n modelValue: _ctx.roomObject.thermoAssociatedPump,\n \"onUpdate:modelValue\": _cache[2] || (_cache[2] = ($event: any) => (_ctx.roomObject.thermoAssociatedPump = $event))\n }, null, 8, [\"id\", \"value\", \"modelValue\"]),\n _createVNode(\"label\", {\n for: `pump-option-${type}`\n }, _toDisplayString(_ctx.getAssociatedPumpOptionName(type)), 9, [\"for\"])\n ])\n ]))\n }), 128))\n ])\n ], 64))\n}","import { Options, Vue } from 'vue-class-component';\nimport {\n IRoomObjectDTO,\n ThermoAssociatedPump,\n ThermoTypeOfObject,\n} from '@/../client-generator/generated-clients/plants';\nimport { PropType } from 'vue';\n\n@Options({\n name: 'FieldsFancoil',\n props: {\n roomObject: {\n type: Object as PropType,\n required: true,\n },\n },\n})\nexport default class FieldsFancoil extends Vue {\n roomObject!: IRoomObjectDTO;\n\n get typeOptions() {\n return Object.keys(ThermoTypeOfObject)\n .filter((value) => !isNaN(Number(value)))\n .map((value) => Number(value));\n }\n\n getOptionName(type: ThermoTypeOfObject) {\n return this.$t(`AppResource.${ThermoTypeOfObject[type]}`);\n }\n\n get associatedPumpOptions() {\n return Object.keys(ThermoAssociatedPump)\n .filter((value) => !isNaN(Number(value)))\n .map((value) => Number(value));\n }\n\n getAssociatedPumpOptionName(type: ThermoAssociatedPump) {\n return this.$t(`AppResource.${ThermoAssociatedPump[type]}`);\n }\n}\n","import { render } from \"./FieldsFancoil.vue?vue&type=template&id=455441ba&ts=true\"\nimport script from \"./FieldsFancoil.ts?vue&type=script&lang=ts\"\nexport * from \"./FieldsFancoil.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__","import debounce from 'lodash.debounce';\nimport { Options } from 'vue-class-component';\nimport AssignRoomObjectGeneralStep from '../AssignRoomObjectGeneralStep';\nimport { RoomObjectType } from '@/../client-generator/generated-clients/plants';\nimport FieldsLight from './ObjectFields/FieldsLight.vue';\nimport FieldsShutter from './ObjectFields/FieldsShutter.vue';\nimport FieldsFancoil from './ObjectFields/FieldsFancoil.vue';\nimport { SET_APP_LOADING } from '@/core/store/action-types';\nimport { NamingService } from '@/core/services/naming.service';\nimport { PlantEntityType } from '@/../client-generator/generated-clients/configurations';\nimport { NAME_VALIDATION_DEBOUNCE_TIME } from '@/core/utils/utils';\n\n@Options({\n name: 'Step1',\n components: {\n FieldsLight,\n FieldsShutter,\n FieldsFancoil,\n },\n watch: {\n 'roomObject.name': function () {\n this.verifyValidityOfName();\n },\n },\n})\nexport default class Step1 extends AssignRoomObjectGeneralStep {\n isValidName = true;\n initialName!: string;\n invalidNameReason: string = '';\n\n mounted() {\n this.initialName = this.roomObject.name ?? '';\n\n this.verifyValidityOfName = debounce(\n this.verifyValidityOfName,\n NAME_VALIDATION_DEBOUNCE_TIME\n );\n }\n\n private async verifyValidityOfName() {\n this.$store.dispatch(SET_APP_LOADING, true);\n const validName = await NamingService.isValidEntityTypeName(\n this.roomObject.name\n );\n\n if (this.initialName !== this.roomObject.name && !validName) {\n const suggestedName = await NamingService.suggestNextValidEntityName({\n eType: PlantEntityType.ROOM_OBJECT,\n plantId: this.plantId,\n metadata: {\n roomType: +this.roomType,\n roomObjectType: this.roomObject.type,\n room: { name: this.roomName } as any,\n },\n });\n this.isValidName = validName;\n this.invalidNameReason = this.$t(\n `uniqueNaming.validationErrorWithSuggestion`,\n { suggestedName }\n );\n this.$emit('next-enabled', false);\n } else {\n this.isValidName = true;\n this.invalidNameReason = '';\n this.$emit('next-enabled', true);\n }\n this.$store.dispatch(SET_APP_LOADING, false);\n }\n\n get fieldsComponent() {\n const typeMap: {\n [key: string]: string;\n } = {\n [RoomObjectType.Light]: 'Light',\n [RoomObjectType.Shutter]: 'Shutter',\n [RoomObjectType.Socket]: 'Socket',\n [RoomObjectType.Lock]: 'Lock',\n [RoomObjectType.Fancoil]: 'Fancoil',\n [RoomObjectType.TowelWarmer]: 'TowelWarmer',\n [RoomObjectType.WirelessCommand]: 'WirelessCommand',\n [RoomObjectType.Player]: 'Player',\n [RoomObjectType.None]: '',\n '': '',\n };\n return `Fields${typeMap[this.roomObject.type ?? '']}`;\n }\n}\n","import { render } from \"./Step1.vue?vue&type=template&id=84bfcb0c&ts=true\"\nimport script from \"./Step1.ts?vue&type=script&lang=ts\"\nexport * from \"./Step1.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__","import { resolveComponent as _resolveComponent, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"assign-object-step2\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_AddDeviceToLinkableObject = _resolveComponent(\"AddDeviceToLinkableObject\")\n\n return (_openBlock(), _createBlock(\"div\", _hoisted_1, [\n _createVNode(_component_AddDeviceToLinkableObject, {\n currentDevices: _ctx.currentDevicesActuators,\n assignableDevices: _ctx.devicesActuators,\n linkableObject: _ctx.roomObject,\n deleteUnusedDevices: true,\n addToastMessage: _ctx.$t('general.actuatorAdded'),\n ruleServiceType: _ctx.SlotRuleServiceType.AUTOMATION_ACTUATOR\n }, null, 8, [\"currentDevices\", \"assignableDevices\", \"linkableObject\", \"addToastMessage\", \"ruleServiceType\"])\n ]))\n}","import { Options } from 'vue-class-component';\nimport AssignRoomObjectGeneralStep from '../AssignRoomObjectGeneralStep';\nimport {\n DeviceDTO,\n DevicesFilterByType,\n SlotStatus,\n} from '@/../client-generator/generated-clients/plants';\nimport plantsClient from '@/core/services/plants';\nimport AddDeviceToLinkableObject from '@/views/components/AddDeviceToLinkableObject/AddDeviceToLinkableObject.vue';\nimport { SET_APP_LOADING } from '@/core/store/action-types';\nimport { HANDLE_REFRESH_PLANT } from '@/core/utils/emitter-events';\n\n@Options({\n name: 'Step2',\n components: {\n AddDeviceToLinkableObject,\n },\n watch: {\n atLeastOneDeviceAndSlotSelected: function () {\n this.validateNextEnabled();\n },\n },\n})\nexport default class Step2 extends AssignRoomObjectGeneralStep {\n devicesActuators: DeviceDTO[] = [];\n\n get currentDevicesActuators() {\n return this.roomObject.devices?.filter((x) => x.isActuatorDevice);\n }\n\n created() {\n this.validateNextEnabled();\n }\n\n async mounted() {\n this.$store.dispatch(SET_APP_LOADING, true);\n try {\n this.devicesActuators = await plantsClient.devices(\n this.plantId,\n this.roomId,\n this.roomObject.id ?? '',\n DevicesFilterByType.ACTUATORS,\n this.roomObject.lightType || undefined,\n undefined,\n undefined,\n undefined\n );\n } catch (error) {\n let messageError = '';\n\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 get atLeastOneDeviceAndSlotSelected() {\n return (\n this.currentDevicesActuators?.some((k) =>\n k.slots?.some(\n (s) =>\n s.status == SlotStatus.MarkedForLinking ||\n (s.status == SlotStatus.Configured &&\n s.linkedObjects?.some((l) => l.id === this.roomObject.id))\n )\n ) ?? false\n );\n }\n\n validateNextEnabled() {\n this.nextEnabled = this.atLeastOneDeviceAndSlotSelected;\n }\n}\n","import { render } from \"./Step2.vue?vue&type=template&id=531287b2&ts=true\"\nimport script from \"./Step2.ts?vue&type=script&lang=ts\"\nexport * from \"./Step2.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__","import { resolveComponent as _resolveComponent, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"assign-object-step3\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_AddDeviceToLinkableObject = _resolveComponent(\"AddDeviceToLinkableObject\")\n\n return (_openBlock(), _createBlock(\"div\", _hoisted_1, [\n _createVNode(_component_AddDeviceToLinkableObject, {\n currentDevices: _ctx.currentDevicesCommands,\n assignableDevices: _ctx.devicesCommands,\n linkableObject: _ctx.roomObject,\n addToastMessage: _ctx.$t('general.commandAdded'),\n ruleServiceType: _ctx.SlotRuleServiceType.AUTOMATION_COMMAND\n }, null, 8, [\"currentDevices\", \"assignableDevices\", \"linkableObject\", \"addToastMessage\", \"ruleServiceType\"])\n ]))\n}","import { Options } from 'vue-class-component';\nimport AssignRoomObjectGeneralStep from '../AssignRoomObjectGeneralStep';\nimport AddDeviceToLinkableObject from '@/views/components/AddDeviceToLinkableObject/AddDeviceToLinkableObject.vue';\nimport plantsClient from '@/core/services/plants';\nimport { SET_APP_LOADING } from '@/core/store/action-types';\nimport {\n DeviceDTO,\n DevicesFilterByType,\n} from '@/../client-generator/generated-clients/plants';\nimport { HANDLE_REFRESH_PLANT } from '@/core/utils/emitter-events';\n\n@Options({\n name: 'Step3',\n components: {\n AddDeviceToLinkableObject,\n },\n})\nexport default class Step3 extends AssignRoomObjectGeneralStep {\n devicesCommands: DeviceDTO[] = [];\n\n get currentDevicesCommands() {\n return this.roomObject.devices?.filter((x) => x.isCommandDevice);\n }\n\n async mounted() {\n this.$store.dispatch(SET_APP_LOADING, true);\n\n try {\n this.devicesCommands = await plantsClient.devices(\n this.plantId,\n this.roomId,\n this.roomObject.id ?? '',\n DevicesFilterByType.COMMANDS,\n this.roomObject.lightType || undefined,\n undefined,\n undefined,\n undefined\n );\n } catch (error) {\n let messageError = '';\n\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","import { render } from \"./Step3.vue?vue&type=template&id=77f24bc6&ts=true\"\nimport script from \"./Step3.ts?vue&type=script&lang=ts\"\nexport * from \"./Step3.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__","import { resolveComponent as _resolveComponent, createVNode as _createVNode, toDisplayString as _toDisplayString, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, withCtx as _withCtx } from \"vue\"\n\nconst _hoisted_1 = { class: \"assign-object-step4 step-overview\" }\nconst _hoisted_2 = { class: \"left-panel\" }\nconst _hoisted_3 = { class: \"card__head d-flex align-items-center\" }\nconst _hoisted_4 = { class: \"d-flex align-items-center text-uppercase mb-0\" }\nconst _hoisted_5 = { class: \"bt-icon bt-icon--m\" }\nconst _hoisted_6 = { class: \"ml-2\" }\nconst _hoisted_7 = { class: \"ml-3\" }\nconst _hoisted_8 = {\n key: 0,\n class: \"list-blocks\"\n}\nconst _hoisted_9 = { class: \"object__head\" }\nconst _hoisted_10 = { class: \"object__icon bt-icon bt-icon--s\" }\nconst _hoisted_11 = { class: \"object__title\" }\nconst _hoisted_12 = { class: \"object__channel\" }\nconst _hoisted_13 = { class: \"ml-auto\" }\nconst _hoisted_14 = { class: \"p-field-checkbox mt-5 align-items-center d-flex ml-3\" }\nconst _hoisted_15 = {\n for: \"hiddenToTheUser\",\n class: \"fw-bold\"\n}\nconst _hoisted_16 = { class: \"advanced-settings__content\" }\nconst _hoisted_17 = { class: \"advanced-settings__head\" }\nconst _hoisted_18 = { class: \"advanced-settings__icon bt-icon bt-icon--sm\" }\nconst _hoisted_19 = {\n key: 0,\n class: \"right-panel p-4\"\n}\nconst _hoisted_20 = { class: \"d-flex right-panel__close\" }\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 const _component_Checkbox = _resolveComponent(\"Checkbox\")\n const _component_ObjectSettings = _resolveComponent(\"ObjectSettings\")\n const _component_ElScrollbar = _resolveComponent(\"ElScrollbar\")\n\n return (_openBlock(), _createBlock(\"div\", _hoisted_1, [\n _createVNode(\"div\", _hoisted_2, [\n _createVNode(_component_Card, { class: \"card--primary\" }, {\n content: _withCtx(() => [\n _createVNode(\"div\", _hoisted_3, [\n _createVNode(\"h4\", _hoisted_4, [\n _createVNode(\"span\", _hoisted_5, [\n _createVNode(_component_InlineSvgScoped, {\n src: \n require(`@/assets/images/icons/${_ctx.getObjectIconFromType(\n _ctx.roomObject.type\n )}.svg`)\n ,\n \"aria-label\": \"icon-blueprint\"\n }, null, 8, [\"src\"])\n ]),\n _createVNode(\"span\", _hoisted_6, _toDisplayString(_ctx.roomObject.name), 1)\n ]),\n _createVNode(\"span\", _hoisted_7, _toDisplayString(_ctx.getObjectDescLabel(_ctx.roomObject)), 1)\n ]),\n (_ctx.defaultSettings.length > 0)\n ? (_openBlock(), _createBlock(\"ul\", _hoisted_8, [\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(_ctx.defaultSettings, (deviceSetting) => {\n return (_openBlock(), _createBlock(\"li\", {\n key: deviceSetting.id,\n class: \"object d-flex\"\n }, [\n _createVNode(\"div\", _hoisted_9, [\n _createVNode(\"div\", _hoisted_10, [\n _createVNode(_component_InlineSvgScoped, {\n src: \n require(`@/assets/images/icons/${_ctx.getDeviceIconFromSettings(\n deviceSetting\n )}.svg`)\n \n }, null, 8, [\"src\"])\n ]),\n _createVNode(\"div\", null, [\n _createVNode(\"div\", _hoisted_11, _toDisplayString(_ctx.getDeviceName(\n deviceSetting.deviceUid\n )), 1),\n _createVNode(\"div\", _hoisted_12, _toDisplayString(deviceSetting.activeLinksLabel) + \" \" + _toDisplayString(_ctx.getDeviceIconName(\n deviceSetting.selectedCommandIcon\n )), 1)\n ])\n ]),\n _createVNode(\"div\", _hoisted_13, [\n (\n _ctx.hasDeviceCommandIconButtonVisible(\n deviceSetting\n )\n )\n ? (_openBlock(), _createBlock(_component_Button, {\n key: 0,\n onClick: ($event: any) => (\n _ctx.showDeviceCommandIcon(deviceSetting)\n ),\n label: \n _ctx.$t('AppResource.CommandIcon')\n ,\n class: \"p-button-text\"\n }, null, 8, [\"onClick\", \"label\"]))\n : _createCommentVNode(\"\", true),\n (\n _ctx.hasDeviceSettingsButtonVisible(\n deviceSetting\n )\n )\n ? (_openBlock(), _createBlock(_component_Button, {\n key: 1,\n onClick: ($event: any) => (_ctx.showDeviceSettings(deviceSetting)),\n label: _ctx.$t('AppResource.Settings'),\n class: \"ml-2 p-button-text\"\n }, null, 8, [\"onClick\", \"label\"]))\n : _createCommentVNode(\"\", true)\n ])\n ]))\n }), 128))\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }),\n _createVNode(\"div\", _hoisted_14, [\n _createVNode(_component_Checkbox, {\n modelValue: _ctx.roomObject.isHidden,\n \"onUpdate:modelValue\": _cache[1] || (_cache[1] = ($event: any) => (_ctx.roomObject.isHidden = $event)),\n id: \"hiddenToTheUser\",\n name: \"hiddenToTheUser\",\n binary: true\n }, null, 8, [\"modelValue\"]),\n _createVNode(\"label\", _hoisted_15, _toDisplayString(_ctx.$t(\"AppResource.HiddenToTheUser\")), 1)\n ]),\n _createVNode(_component_Card, { class: \"advanced-settings card--slim mocked\" }, {\n content: _withCtx(() => [\n _createVNode(\"div\", _hoisted_16, [\n _createVNode(\"div\", null, [\n _createVNode(\"div\", _hoisted_17, [\n _createVNode(\"span\", _hoisted_18, [\n _createVNode(_component_InlineSvgScoped, {\n src: \n require(`@/assets/images/icons/icon-setting.svg`)\n ,\n \"aria-label\": \"icon-settings\"\n }, null, 8, [\"src\"])\n ]),\n _createVNode(\"h5\", null, _toDisplayString(_ctx.$t(\n \"AppResource.AdvancedSettings\"\n )), 1)\n ])\n ]),\n _createVNode(_component_Button, {\n label: _ctx.$t('AppResource.Edit'),\n class: \"ml-auto p-button-text\",\n onClick: _ctx.openAdvancedSettings\n }, null, 8, [\"label\", \"onClick\"])\n ])\n ]),\n _: 1\n })\n ]),\n (_ctx.showRightPanel)\n ? (_openBlock(), _createBlock(\"div\", _hoisted_19, [\n _createVNode(\"div\", _hoisted_20, [\n _createVNode(_component_Button, {\n onClick: _ctx.hideRightPanel,\n class: \"p-button-text ml-auto\"\n }, {\n default: _withCtx(() => [\n _createVNode(_component_InlineSvgScoped, {\n width: \"30\",\n height: \"30\",\n src: require(`@/assets/images/icons/icon-close.svg`)\n }, null, 8, [\"src\"])\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]),\n _createVNode(_component_ElScrollbar, null, {\n default: _withCtx(() => [\n _createVNode(_component_ObjectSettings, {\n defaultSettings: _ctx.currentDefaultSetting,\n \"onUpdate:defaultSettings\": _cache[2] || (_cache[2] = ($event: any) => (_ctx.currentDefaultSetting = $event)),\n deviceName: _ctx.currentDeviceName\n }, null, 8, [\"defaultSettings\", \"deviceName\"])\n ]),\n _: 1\n })\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n}","import { Options } from 'vue-class-component';\nimport AssignRoomObjectGeneralStep from '../AssignRoomObjectGeneralStep';\nimport {\n getObjectIconFromType,\n getObjectDescLabel,\n getDeviceIconFromSettings,\n getDeviceIconName,\n hasDeviceCommandIconButtonVisible,\n hasDeviceSettingsButtonVisible,\n parseShutterActuatorSettings,\n} from '@/core/utils/utils';\nimport { SET_APP_LOADING } from '@/core/store/action-types';\nimport deviceSettingsClient from '@/core/services/device-settings-service';\nimport { IDefaultDevicesSettingsDTO } from '@/../client-generator/generated-clients/device-settings';\nimport { HANDLE_REFRESH_PLANT } from '@/core/utils/emitter-events';\nimport CommandIconComponent from '@/views/components/CommandIcon/CommandIconComponent.vue';\nimport ObjectSettings from '@/views/components/ObjectSettings/ObjectSettings.vue';\nimport { RoomObjectDTO } from '@/../client-generator/generated-clients/plants';\n\n@Options({\n name: 'Step4',\n components: {\n CommandIconComponent,\n ObjectSettings,\n },\n})\nexport default class Step4 extends AssignRoomObjectGeneralStep {\n getObjectIconFromType = getObjectIconFromType;\n getObjectDescLabel = getObjectDescLabel;\n getDeviceIconFromSettings = getDeviceIconFromSettings;\n getDeviceIconName = getDeviceIconName;\n hasDeviceSettingsButtonVisible = hasDeviceSettingsButtonVisible;\n hasDeviceCommandIconButtonVisible = hasDeviceCommandIconButtonVisible;\n\n showRightPanel = false;\n activeSettingsComponent = '';\n currentDefaultSetting: IDefaultDevicesSettingsDTO | null = null;\n currentDeviceName: string | null = null;\n\n async mounted() {\n this.$store.dispatch(SET_APP_LOADING, true);\n try {\n const response = await deviceSettingsClient.roomObjectDefault(\n this.roomObject.id!,\n RoomObjectDTO.fromJS(this.roomObject as any)\n );\n\n for (const deviceSetting of response) {\n parseShutterActuatorSettings(deviceSetting);\n }\n\n this.$emit('update:defaultSettings', response);\n } catch (error) {\n console.log(error);\n let messageError = '';\n\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 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 openAdvancedSettings() {\n this.showRightPanel = true;\n }\n\n showDeviceSettings(setting: IDefaultDevicesSettingsDTO) {\n this.currentDefaultSetting = setting;\n this.showRightPanel = true;\n this.currentDeviceName = this.getDeviceName(setting.deviceUid as string);\n }\n\n showDeviceCommandIcon(setting: IDefaultDevicesSettingsDTO) {\n this.currentDefaultSetting = setting;\n this.showRightPanel = true;\n this.currentDeviceName = this.getDeviceName(setting.deviceUid as string);\n this.activeSettingsComponent = 'CommandIconComponent';\n }\n\n hideRightPanel() {\n this.currentDefaultSetting = null;\n this.showRightPanel = false;\n this.currentDeviceName = '';\n }\n\n getDeviceName(deviceUuid: string) {\n const device = this.roomObject.devices?.find((k) => k.uid === deviceUuid);\n if (!device) return '';\n return `${device.model} - ID ${device.id}`;\n }\n}\n","import { render } from \"./Step4.vue?vue&type=template&id=65a53372&ts=true\"\nimport script from \"./Step4.ts?vue&type=script&lang=ts\"\nexport * from \"./Step4.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__","import { Vue, Options } from 'vue-class-component';\nimport Step1 from './Step1/Step1.vue';\nimport Step2 from './Step2/Step2.vue';\nimport Step3 from './Step3/Step3.vue';\nimport Step4 from './Step4/Step4.vue';\nimport {\n AddRoomObjectDTO,\n EditRoomObjectDTO,\n IEditRoomObjectDTO,\n IRoomObjectDTO,\n} from '@/../client-generator/generated-clients/plants';\nimport plantsClient from '@/core/services/plants';\nimport { SET_APP_LOADING } from '@/core/store/action-types';\nimport {\n AUTOMATION_WIZARD_NEXT_CALLED,\n HANDLE_REFRESH_PLANT,\n} from '@/core/utils/emitter-events';\nimport { DefaultDevicesSettingsDTO } from '@/../client-generator/generated-clients/device-settings';\nimport DeviceSettingsService from '@/core/services/device-settings-services/device-settings-service';\nimport { NamingService } from '../../../../../core/services/naming.service';\n\n@Options({\n name: 'AutomationWizard',\n components: {\n Step1,\n Step2,\n Step3,\n Step4,\n },\n})\nexport default class AutomationWizard extends Vue {\n activeStep = 0;\n roomObject: IRoomObjectDTO = {};\n devicesSettings: DefaultDevicesSettingsDTO[] = [];\n plantId = -1;\n roomId = '';\n roomName = '';\n roomType = '';\n roomObjectId = '';\n nextDisabled = false;\n\n steps = [\n {\n title: 'AppResource.NameAndProperties',\n },\n {\n title: 'AppResource.AssignTheActuator',\n },\n {\n title: 'AppResource.AssignTheCommands',\n },\n {\n title: 'AppResource.EndTheConfiguration',\n },\n ];\n\n get currentStepTitle() {\n return this.$t(this.steps[this.activeStep].title);\n }\n\n get buttonSubmitLabel() {\n if (this.activeStep < this.steps.length - 1) {\n return this.$t('AppResource.Next');\n }\n\n return this.$t('AppResource.SaveAndExit');\n }\n\n get activeStepComponent() {\n return `Step${this.activeStep + 1}`;\n }\n\n created() {\n this.plantId = +this.$route.params.plantId;\n this.roomId = this.$route.params.roomId as string;\n this.roomObjectId = this.$route.params.roomObjectId as string;\n\n this.roomName = this.$route.query.roomName as string;\n this.roomType = this.$route.query.roomType as string;\n\n this.fetchRoomObject();\n }\n\n async fetchRoomObject() {\n this.$store.dispatch(SET_APP_LOADING, true);\n this.roomObject = await plantsClient.roomObjectsGET(\n this.plantId,\n this.roomId,\n this.roomObjectId\n );\n this.$store.dispatch(SET_APP_LOADING, false);\n }\n\n async handleButtonSubmitAction() {\n this.$emitter.emit(AUTOMATION_WIZARD_NEXT_CALLED);\n if (this.activeStep < this.steps.length - 1) {\n this.activeStep++;\n return;\n }\n\n this.$store.dispatch(SET_APP_LOADING, true);\n\n const dto: IEditRoomObjectDTO = {\n deviceSettings: DeviceSettingsService.generateDeviceSettingsResultDto(\n this.devicesSettings\n ),\n roomObject: AddRoomObjectDTO.fromJS(this.roomObject),\n };\n\n try {\n await plantsClient.roomObjectsPUT(\n this.plantId,\n this.roomId,\n this.roomObjectId,\n new EditRoomObjectDTO(dto)\n );\n\n this.$router.push({\n name: 'page-plant-room',\n query: { refresh: 'true' },\n });\n } catch (error) {\n let messageError = '';\n console.log(error);\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 NamingService.flushCache();\n this.$store.dispatch(SET_APP_LOADING, false);\n }\n }\n\n handleButtonBackAction() {\n if (this.activeStep > 0) {\n this.nextDisabled = false;\n this.activeStep--;\n } else {\n this.$router.push({ name: 'page-plant-room' });\n }\n }\n\n nextEnabledEvent(nextEnabled: boolean) {\n this.nextDisabled = !nextEnabled;\n }\n}\n","import { render } from \"./AutomationWizard.vue?vue&type=template&id=34fbb2c2&ts=true\"\nimport script from \"./AutomationWizard.ts?vue&type=script&lang=ts\"\nexport * from \"./AutomationWizard.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__","import { Client } from '@/../client-generator/generated-clients/device-settings';\nimport axiosInstance from '../utils/axios-instance';\n\nconst deviceSettingsClient = new Client('', axiosInstance);\n\nexport default deviceSettingsClient;\n","import { toDisplayString as _toDisplayString, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createBlock as _createBlock, resolveComponent as _resolveComponent, withCtx as _withCtx, createTextVNode as _createTextVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"add-device-to-linkable-object wizard-panels\" }\nconst _hoisted_2 = { class: \"wizard-panels__left\" }\nconst _hoisted_3 = { class: \"devices-list\" }\nconst _hoisted_4 = { class: \"wizard-panels__right p-4\" }\nconst _hoisted_5 = { class: \"d-flex mb-3\" }\nconst _hoisted_6 = { class: \"p-input-icon-left ml-auto input-filter-search\" }\nconst _hoisted_7 = /*#__PURE__*/_createVNode(\"i\", { class: \"pi pi-search\" }, null, -1)\nconst _hoisted_8 = { class: \"devices-grid\" }\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_DeviceAndSlotDetail = _resolveComponent(\"DeviceAndSlotDetail\")\n const _component_ElScrollbar = _resolveComponent(\"ElScrollbar\")\n const _component_InputText = _resolveComponent(\"InputText\")\n const _component_TabPanel = _resolveComponent(\"TabPanel\")\n const _component_TabView = _resolveComponent(\"TabView\")\n\n return (_openBlock(), _createBlock(\"div\", _hoisted_1, [\n _createVNode(\"div\", _hoisted_2, [\n _createVNode(\"div\", null, _toDisplayString(_ctx.$t(\"AppResource.SelectManuallyFromList\")), 1),\n _createVNode(_component_ElScrollbar, null, {\n default: _withCtx(() => [\n _createVNode(\"div\", _hoisted_3, [\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(_ctx.currentDevices, (device, index) => {\n return (_openBlock(), _createBlock(_component_DeviceAndSlotDetail, {\n device: device,\n key: device.id,\n onRemoveDevice: ($event: any) => (_ctx.removeDevice(index)),\n class: \"flex-basis-1\",\n isSingleDeviceSelection: _ctx.isSingleDeviceSelection,\n isOnlyDeviceSelection: _ctx.isOnlyDeviceSelection,\n linkableObject: _ctx.linkableObject,\n ruleServiceType: _ctx.ruleServiceType\n }, null, 8, [\"device\", \"onRemoveDevice\", \"isSingleDeviceSelection\", \"isOnlyDeviceSelection\", \"linkableObject\", \"ruleServiceType\"]))\n }), 128))\n ])\n ]),\n _: 1\n })\n ]),\n _createVNode(\"div\", _hoisted_4, [\n _createVNode(_component_TabView, { class: \"p-tabview--custom\" }, {\n default: _withCtx(() => [\n _createVNode(_component_TabPanel, {\n header: _ctx.$t('assignObject.selectFromLastScan')\n }, {\n default: _withCtx(() => [\n _createVNode(\"div\", _hoisted_5, [\n _createVNode(\"span\", _hoisted_6, [\n _hoisted_7,\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_8, [\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: \n _ctx.isSingleDeviceSelection\n ,\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 _: 1\n }, 8, [\"header\"]),\n _createVNode(_component_TabPanel, {\n header: _ctx.$t('assignObject.selectFromCatalogue')\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(_ctx.$t(\"assignObject.selectFromCatalogue\")), 1)\n ]),\n _: 1\n }, 8, [\"header\"])\n ]),\n _: 1\n })\n ])\n ]))\n}","import { Options, Vue } from 'vue-class-component';\nimport DeviceAndSlotDetail from '@/views/components/DeviceAndSlotDetail/DeviceAndSlotDetail.vue';\nimport { PropType } from 'vue';\nimport {\n ComponentType,\n DeviceDTO,\n IAggregateCommandDTO,\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: 'AddDeviceToLinkableObject',\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 AddDeviceToLinkableObject 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\n this.$toast.add({\n severity: 'success',\n summary: this.addToastMessage,\n closable: false,\n life: 3000,\n });\n }\n\n removeDevice(index: number, removeSlots: boolean = false) {\n if (!this.currentDevices) return;\n if (removeSlots) {\n const slot = this.currentDevices[index].slots?.find((k) => !!k);\n if (slot) slot.status = SlotStatus.NotConfigured;\n }\n const realIndex = this.linkableObject.devices?.indexOf(\n this.currentDevices[index]\n );\n if (realIndex != undefined && realIndex >= 0) {\n this.linkableObject.devices?.splice(realIndex, 1);\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 \"./AddDeviceToLinkableObject.vue?vue&type=template&id=e91d6346&ts=true\"\nimport script from \"./AddDeviceToLinkableObject.ts?vue&type=script&lang=ts\"\nexport * from \"./AddDeviceToLinkableObject.ts?vue&type=script&lang=ts\"\n\nimport \"./AddDeviceToLinkableObject.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!./AddDeviceToLinkableObject.scss?vue&type=style&index=0&lang=scss\"","import {\n DefaultDevicesSettingsDTO,\n LightsActuatorSettingsObjectDTO,\n LightsCommandSettingsObjectDTO,\n LightsOnOffMode,\n LockActuatorSettingsObjectParam,\n LockCommandSettingsObjectDTO,\n ShuttersActuatorSettingsObjectParam,\n ShuttersCommandSettingsObjectDTO,\n ThermoProbeSettingsObjectParam,\n} from '@/../client-generator/generated-clients/device-settings';\nimport {\n CommandIcon,\n DeviceSettingsDTO,\n IDeviceSettingsDTO,\n ILightsActuatorSettingsResult,\n ILightsActuatorSettingsResultList,\n ILightsCommandSettingsResult,\n ILightsCommandSettingsResultList,\n ILockActuatorSettingsResult,\n ILockCommandSettingsResult,\n ILockCommandSettingsResultList,\n IShutterActuatorSettingsResult,\n IShutterCommandSettingsResult,\n IShutterCommandSettingsResultList,\n IThermoProbeSettingsResult,\n LightsActuatorSettingsResult,\n LightsActuatorSettingsResultList,\n LightsCommandSettingsResult,\n LightsCommandSettingsResultList,\n LockActuatorSettingsResult,\n LockCommandSettingsResult,\n LockCommandSettingsResultList,\n ShutterActuatorSettingsResult,\n ShutterCommandSettingsResult,\n ShutterCommandSettingsResultList,\n ThermoProbeSettingsResult,\n} from '@/../client-generator/generated-clients/plants';\n\nexport default class DeviceSettingsService {\n static generateDeviceSettingsResultDto(\n deviceSettings: DefaultDevicesSettingsDTO[]\n ) {\n const settingsResultList: DeviceSettingsDTO[] = [];\n\n for (const setting of deviceSettings) {\n if (setting.isAggregateRoomObject) continue;\n if (!setting.deviceUid) return;\n let settingResult: IDeviceSettingsDTO = {\n deviceId: setting.deviceUid,\n commandIcon: setting.selectedCommandIcon,\n };\n\n if (setting.lightsActuatorSettings != null)\n settingResult = this.transformLightsActuatorSettings(\n setting.lightsActuatorSettings,\n setting.deviceUid\n );\n else if (setting.lightsCommandSettings != null)\n settingResult = this.transformLightsCommandSettings(\n setting.lightsCommandSettings,\n setting.deviceUid,\n setting.selectedCommandIcon\n );\n else if (setting.lockActuatorSettings != null)\n settingResult = this.transformLockActuatorSettings(\n setting.lockActuatorSettings,\n setting.deviceUid\n );\n else if (setting.lockCommandSettings != null)\n settingResult = this.transformLockCommandSettings(\n setting.lockCommandSettings,\n setting.deviceUid,\n setting.selectedCommandIcon\n );\n else if (setting.thermoProbeSettings != null)\n settingResult = this.transformThermoProbeSettings(\n setting.thermoProbeSettings,\n setting.deviceUid\n );\n else if (setting.shuttersActuatorSettings != null)\n settingResult = this.transformShuttersActuatorSettings(\n setting.shuttersActuatorSettings,\n setting.deviceUid\n );\n else if (setting.shuttersCommandSettings != null)\n settingResult = this.transformShuttersCommandSettings(\n setting.shuttersCommandSettings,\n setting.deviceUid,\n setting.selectedCommandIcon\n );\n\n settingsResultList.push(new DeviceSettingsDTO(settingResult));\n }\n\n return settingsResultList;\n }\n\n // Xamarin --> LightsActuatorSettingsViewModel.cs | DoConfirmCommand()\n private static transformLightsActuatorSettings(\n settings: LightsActuatorSettingsObjectDTO,\n deviceId: string\n ) {\n const results: LightsActuatorSettingsResult[] = [];\n for (const slot of settings.slots!) {\n for (const index of slot.saveTo!) {\n results.push(\n new LightsActuatorSettingsResult({\n index,\n hasPul: slot.hasPUL,\n isMinimumregulationLevelEnabled:\n slot.isMinimumregulationLevelEnabled,\n loadType: slot.loadType,\n minimumRegulationLevelValue: slot.minimumRegulationLevelValue,\n voltageType: slot.voltageType,\n isRestoreStateAfterResetEnabled:\n slot.isRestoreStateAfterResetEnabled,\n isZeroCrossingEnabled: slot.isZeroCrossingEnabled,\n relayStatusAfterReset: slot.relayStatusAfterReset,\n } as ILightsActuatorSettingsResult)\n );\n }\n }\n\n const result: IDeviceSettingsDTO = {\n lightsActuatorSettings: new LightsActuatorSettingsResultList({\n results,\n } as ILightsActuatorSettingsResultList),\n deviceId,\n };\n return result;\n }\n\n // Xamarin --> LightsCommandSettingsViewModel.cs | DoConfirmCommand()\n private static transformLightsCommandSettings(\n settings: LightsCommandSettingsObjectDTO,\n deviceId: string,\n commandIcon?: CommandIcon\n ) {\n const results: LightsCommandSettingsResult[] = [];\n for (const slot of settings.slots!) {\n for (const index of slot.saveTo!) {\n results.push(\n new LightsCommandSettingsResult({\n index,\n lightsOnOffMode: slot.lightsOnOffMode,\n lightsOnOffTimedDelay:\n slot.lightsOnOffMode == LightsOnOffMode.Timed\n ? slot.timedDelayPickerSelectedValue!.value\n : slot.defaultSettings!.lightsOnOffTimedDelay,\n minimumRegulationLevel: slot.minimumRegulationLevel,\n } as ILightsCommandSettingsResult)\n );\n }\n }\n\n const result: IDeviceSettingsDTO = {\n lightsCommandSettings: new LightsCommandSettingsResultList({\n results,\n } as ILightsCommandSettingsResultList),\n deviceId,\n commandIcon,\n };\n return result;\n }\n\n // Xamarin --> LockActuatorSettingsViewModel.cs | DoConfirmCommand()\n private static transformLockActuatorSettings(\n settings: LockActuatorSettingsObjectParam,\n deviceId: string\n ) {\n const result: IDeviceSettingsDTO = {\n lockActuatorSettings: new LockActuatorSettingsResult({\n isZeroCrossingEnabled: settings.isZeroCrossingEnabled,\n } as ILockActuatorSettingsResult),\n deviceId,\n };\n return result;\n }\n\n // Xamarin --> LockCommandSettingsViewModel.cs | DoConfirmCommand()\n private static transformLockCommandSettings(\n settings: LockCommandSettingsObjectDTO,\n deviceId: string,\n commandIcon?: CommandIcon\n ) {\n const results: LockCommandSettingsResult[] = [];\n for (const slot of settings.slots!) {\n for (const index of slot.saveTo!) {\n results.push(\n new LockCommandSettingsResult({\n index,\n commandOpeningTime: slot.commandOpeningTime,\n } as ILockCommandSettingsResult)\n );\n }\n }\n\n const result: IDeviceSettingsDTO = {\n lockCommandSettingsResult: new LockCommandSettingsResultList({\n results,\n } as ILockCommandSettingsResultList),\n deviceId,\n commandIcon,\n };\n return result;\n }\n\n // Xamarin --> ThermoProbeSettingsViewModel.cs | DoConfirmCommand()\n private static transformThermoProbeSettings(\n settings: ThermoProbeSettingsObjectParam,\n deviceId: string\n ) {\n const result: IDeviceSettingsDTO = {\n thermoProbeSettings: new ThermoProbeSettingsResult({\n isLedmanaged: settings.isLedmanaged,\n externalSensorType: settings.externalSensorType,\n } as IThermoProbeSettingsResult),\n deviceId,\n };\n return result;\n }\n\n // Xamarin --> ShutterActuatorSettingsViewModel.cs | DoConfirmCommand()\n private static transformShuttersActuatorSettings(\n settings: ShuttersActuatorSettingsObjectParam,\n deviceId: string\n ) {\n const result: IDeviceSettingsDTO = {\n shutterActuatorSettings: new ShutterActuatorSettingsResult({\n hasPUL: settings.hasPUL,\n shutterMotorType: settings.shutterMotorType,\n stopPulseDuration: settings.stopPulseDuration! / 100,\n upDownPulseDuration: settings.upDownPulseDuration! / 100,\n shutterMode: settings.shutterMode,\n hasPreset: settings.hasPreset,\n presetValue: settings.presetValue! / 10,\n stopTime: settings.stopTime!,\n delayBetweenDoorsTime: settings.delayBetweenDoorsTime! / 1000,\n } as IShutterActuatorSettingsResult),\n deviceId,\n };\n return result;\n }\n\n // Xamarin --> ShutterCommandSettingsViewModel.cs | DoConfirmCommand()\n private static transformShuttersCommandSettings(\n settings: ShuttersCommandSettingsObjectDTO,\n deviceId: string,\n commandIcon?: CommandIcon\n ) {\n const results: ShutterCommandSettingsResult[] = [];\n for (const slot of settings.slots!) {\n for (const index of slot.saveTo!) {\n results.push(\n new ShutterCommandSettingsResult({\n index,\n shutterMode: slot.shutterMode,\n presetValue: slot.presetValue,\n hasPreset: slot.hasPreset,\n commandDirection: slot.commandDirection,\n } as IShutterCommandSettingsResult)\n );\n }\n }\n\n const result: IDeviceSettingsDTO = {\n shutterCommandSettings: new ShutterCommandSettingsResultList({\n results,\n } as IShutterCommandSettingsResultList),\n deviceId,\n commandIcon,\n };\n return result;\n }\n\n // QUESTO ANDRĂ  SPOSTATO ????\n private static CalculateStopTime(value: number) {\n let stopTimeValue: number;\n let remainder: number = value % 60000;\n let quotient: number = Math.floor(value / 60000);\n if (quotient > 0) {\n if (quotient == 1) {\n stopTimeValue = 60;\n } else {\n stopTimeValue = 60 + quotient;\n }\n } else {\n stopTimeValue = remainder / 1000;\n }\n\n return stopTimeValue;\n }\n}\n"],"sourceRoot":""}