Deployed build diff
File-by-file comparison of the deployed custom build and the archived upstream/source-reference build.
assets/js/EditActivityView-CJsbOUfl.js
modified
Upstream/source reference52,72589c920c36749b098d2182ba2ff339d2534699bc2ce7c86f8029b582256258703
Deployed build52,685c7b301378ab94ad2caf9918287df14cb3c52609fdab3fcfc16e8e2f07b54f4e8
File changes
Raw mode compares the exact textual file layout. Minified bundles may therefore appear as a single very long changed line.
upstream-2.1.0/assets/js/EditActivityView-CJsbOUfl.js→deployed-2.1.0-unfoldedtools.1/assets/js/EditActivityView-CJsbOUfl.jsraw
| @@ -1,3 +1,2 @@ | |||
| 1 | - | import{k as at,r,w as Le,c as ne,y as dt,A as $,B as d,I as F,D as t,E as k,C as Z,Q as X,K as P,L as q,M as re,O as tt,ak as Da,u as n,T as oe,H as J,J as ae,P as ia,n as Ua,i as Ha,N as et,al as xt,ap as za,R as Ja,ar as Wa}from"./vue-select-CSzUJrFr.js";import{u as vt,v as ft,aI as gt,aH as ja,m as kt,c as na,n as Fa,a0 as xa,a1 as pt,i as ut,a3 as Kt,a4 as st,j as Ka,a5 as Qa,_ as Qt,ai as Ct,ag as Xt,aL as Xa,ad as Ya,J as Za,o as S,K as ei,af as ti,A as sa,h as qt,N as ai,aM as fe,aN as ii,an as ot,ab as Yt,aO as ni,aP as Zt,b as si,aj as li,aA as oi,z as la,aB as ui,aC as ci,aD as ri,q as lt,x as di,V as ct,W as rt,d as vi,l as ea}from"./index-C1Y9Q2v_.js";import{_ as ta}from"./InfoPanel.vue_vue_type_script_setup_true_lang-Daj1vCFO.js";import{_ as fi,a as gi}from"./SelectVoiceAssistantProfile.vue_vue_type_script_setup_true_lang-CKqJ88sp.js";import{u as pi,_ as aa,a as yi}from"./AddCommand.vue_vue_type_script_setup_true_lang-Drs9F3BK.js";import{u as _i,_ as mi,g as hi,a as bi,b as wi,c as $i,v as ki,d as Ci,e as qi}from"./ButtonList.vue_vue_type_script_setup_true_lang-Canw95fQ.js";import{_ as Si}from"./add-page-8VHq_I3u.js";import"./UCColorTemp.vue_vue_type_script_setup_true_lang-BwXTO9iw.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";import"./ColorPicker.vue_vue_type_script_setup_true_lang-Clr8ZC9V.js";const Ai={class:"ep-settings__form__wrapper"},Ii={class:"ep-settings__form__header"},Ei={class:"ep-settings__form__state"},Ni={key:0,class:"ep-settings__form__state__text"},Pi={class:"select-extra"},Li={class:"select-extra__text"},Ti={class:"select-extra__label"},Oi={class:"select-voice-assistant-input-wrapper"},Vi={class:"select-extra"},Ri={class:"select-extra__text"},Bi={class:"select-extra__label"},Gi={key:0,class:"select-extra"},Mi={class:"select-extra__text"},Di={class:"select-extra__label"},Ui={class:"ep-settings__form__description"},Hi={href:"https://support.unfoldedcircle.com/hc/en-us/articles/24061019101596",target:"_blank",class:"voice-assistant-support-link"},zi={class:"ep-settings__form__info-panel-wrapper"},Ji={class:"ep-settings__included-entities panel-col panel-col--60"},Wi={class:"ep-settings__included-entities__wrapper"},ji={class:"ep-settings__available-entities__wrapper"},Fi={class:"ep-settings__available-entities__header"},xi=at({__name:"EditActivitySettings",props:{activityId:{type:String,required:!0},active:{type:Boolean,default:!1}},setup(R){vt();const{updateObjectByKeys:ge,standardizeLangTexts:pe,isNonEmptyObject:x}=pt(),{isSmallScreen:D}=ft(),E=gt(),U=ja(),ie=kt(),W=na(),C=R,c=r(null),ee=r([]),y=r({}),O=r(!1),se=r([]),ye=r([]),te=r([]),z=r([]),B=r([]),I=r(),V=r(),K=r({searchText:"",entityTypes:"",instances:""}),Q=r([]),qe=r(null),le=r({limit:Fa()??20,page:1}),ue=r(!1);E.$onAction(({name:i,args:o,after:_})=>{i==="socketUpdate"&&_(async()=>{const{entity_id:A,event_type:T}=o[0];if(A===C.activityId){if(T==="DELETE")xa.push({name:"activities-macros"});else if(A===C.activityId&&T==="CHANGE"&&o[0]&&o[0].new_state){const de=ge(JSON.parse(JSON.stringify(c.value)),o[0].new_state);ce(de,!1)}}})}),ie.$subscribe((i,o)=>{se.value=o.configuredEntities,z.value=o.instances}),W.$subscribe((i,o)=>{a()}),Le(()=>le.value.limit,i=>{ei(i)}),Le(O,i=>{i&&Ua(()=>{const o=V.value;if(!ti()&&o){const _=o.querySelector("input");_==null||_.focus()}})});const v=ne(()=>{var i,o;return c.value&&c.value.attributes&&(((i=c.value.attributes)==null?void 0:i.state)=="ON"||((o=c.value.attributes)==null?void 0:o.state)=="RUNNING")}),l=ne(()=>ee.value.map(i=>({label:ut(i.name),value:i.group_id}))),w=ne(()=>te.value?B.value&&B.value.length>0:!1),N=ne(()=>Q.value.find(i=>{var o,_,A,T;return i.entity_id===(((T=(A=(_=(o=c.value)==null?void 0:o.options)==null?void 0:_.voice_assistant)==null?void 0:A.target)==null?void 0:T.entity_id)??"")})),G=ne(()=>{var i;return((i=N.value)==null?void 0:i.profiles)??[]});function ce(i,o=!1){var be,we,H,Y,Ae,$e;if(!i||!x(i))return!1;const _=i,A=((be=y.value.name)==null?void 0:be.langCode)??Kt(),T=((we=y.value.description)==null?void 0:we.langCode)??Kt();c.value=JSON.parse(JSON.stringify(_));const de=st(_.name,A,!o),Se=st(_.description,T,!o);y.value={icon:_.icon||Ka(_),name:{value:de.value,langCode:de.lang},description:{value:Se.value,langCode:Se.lang},preventSleep:((H=_.options)==null?void 0:H.prevent_sleep)??!1,readyCheck:((Y=_.options)==null?void 0:Y.ready_check)??!0,activityGroup:(Ae=_.options)!=null&&Ae.activity_group?{label:ut(_.options.activity_group.name),value:_.options.activity_group.group_id}:{label:"",value:""}},te.value=(($e=_.options)==null?void 0:$e.included_entities)??[],B.value=te.value.filter(_e=>_e.available===!1).map(_e=>_e.entity_id),I.value&&I.value.updateSelected(te.value)}function Te(i){if(y.value.icon=i.value,!c.value||c.value==null)return;const o={icon:y.value.icon};me(o)}function He(i){if(!c.value||c.value==null)return;const _={name:pe({...c.value.name||{},[i.langCode]:i.value},i.langCode)};me(_)}function Ne(i){if(!c.value||c.value==null)return;const _={description:pe({...c.value.description||{},[i.langCode]:i.value},i.langCode)};me(_)}async function ze(){if(!(!c.value||c.value==null||!c.value.options))try{c.value=await E.update(c.value.entity_id,{options:{prevent_sleep:y.value.preventSleep}})}catch(i){S(i,"activity.settings.update")}}async function Oe(){if(!(!c.value||c.value==null||!c.value.options))try{c.value=await E.update(c.value.entity_id,{options:{ready_check:y.value.readyCheck}})}catch(i){S(i,"activity.settings.update")}}async function Pe(i){var o,_,A,T,de,Se,be,we,H;try{if((A=(_=(o=c.value)==null?void 0:o.options)==null?void 0:_.activity_group)!=null&&A.group_id){const Ae=await U.getActivityGroup((Se=(de=(T=c.value)==null?void 0:T.options)==null?void 0:de.activity_group)==null?void 0:Se.group_id),_e=(((be=Ae.activities)==null?void 0:be.filter(Fe=>{var Ie;return Fe.entity_id!=((Ie=c.value)==null?void 0:Ie.entity_id)}))||[]).map(Fe=>Fe.entity_id);await U.update(Ae.group_id,{activity_ids:_e})}if(i!=null&&i.value&&((we=c.value)!=null&&we.entity_id)){const Ae=await U.getActivityGroup(i.value),$e=((H=Ae.activities)==null?void 0:H.map(_e=>_e.entity_id))||[];$e.push(c.value.entity_id),await U.update(Ae.group_id,{activity_ids:$e})}const Y=await E.getActivity(C.activityId);ce(Y)}catch(Y){S(Y)}}async function me(i){if(c.value)try{const o=await E.update(c.value.entity_id,i);ce(o)}catch(o){S(o,"activity.settings.update"),M()}}function Re(i){y.value.name.langCode=i,c.value&&(y.value.name.value=st(c.value.name,i,!0).value)}function Je(i){y.value.description.langCode=i,c.value&&(y.value.description.value=st(c.value.description,i,!0).value)}async function We(){try{ee.value=await U.getAll()}catch(i){S(i)}}async function Be(i=!1){try{se.value=await ie.getConfiguredEntities(null,i),z.value=await ie.getInstances()}catch(o){S(o)}}async function Ge(i){if(!c.value)return;const o=te.value.length!=i.length;te.value=i;const _={options:{entity_ids:te.value.map(A=>A.entity_id)}};try{c.value=await E.update(c.value.entity_id,_),o&&await he(!0)}catch(A){S(A),M()}}function Me(i){const o=JSON.parse(JSON.stringify(te.value)).concat(i);Ge(o)}function je(){Be(!0)}function Qe(i){K.value=i,he(!0)}async function he(i=!1){i===!0&&(le.value.page=1);let o=K.value.searchText;try{const _=await ie.getConfiguredEntitiesByPageByLimit(K.value.instances||"",!1,le.value.page,le.value.limit,o,K.value.entityTypes,C.activityId);ye.value=_.data.configuredEntities;const A=_.headers;if(A){const T=Number(A["pagination-limit"]),de=T<=Number(A["pagination-count"])?le.value.limit:T;le.value={count:Number(A["pagination-count"])||0,limit:de||0,page:Number(A["pagination-page"])||0}}}catch(_){console.error(_)}}function Ve(i){le.value.page=i,he()}function u(i){le.value.page=1,le.value.limit=i,he()}function a(){var i,o,_,A;Q.value=((i=W.$state.list)==null?void 0:i.voiceAssistants)??[],qe.value=((A=(_=(o=W.$state.config)==null?void 0:o.voice)==null?void 0:_.voice_assistant)==null?void 0:A.active)??null}async function b(i){if(!c.value||c.value==null||!c.value.options)return;let o={};i!=null&&(o={entity_id:i.entity_id});try{c.value=await E.update(c.value.entity_id,{options:{voice_assistant:{...Object.keys(o).length>0&&{target:o}}}})}catch(_){S(_,"activity.settings.update")}}async function p(i){var _,A;if(!c.value||c.value==null||!c.value.options)return;let o={};i!=null?o={entity_id:((_=N.value)==null?void 0:_.entity_id)??"",profile_id:i.id}:o={entity_id:((A=N.value)==null?void 0:A.entity_id)??""};try{c.value=await E.update(c.value.entity_id,{options:{voice_assistant:{target:o}}})}catch(T){S(T,"activity.settings.update")}}async function M(){ue.value=!0;try{const i=await E.getActivity(C.activityId);await We(),await Be(),ce(i,!0),await he(),await W.getVoiceAssistants(!0)}catch(i){S(i)}ue.value=!1}return dt(async()=>{await M(),a()}),(i,o)=>{var A,T,de,Se,be,we,H;const _=ia("overflow-indicator");return d(),$("div",{class:Z(["ep-settings",{"ep-settings--has-info-panels":w.value&&v.value}])},[F((d(),$("div",{class:Z(["ep-settings__form panel-col panel-col--40",{"ep-settings__form--has-info-panel":w.value||v.value}])},[t("div",Ai,[t("div",Ii,[(d(),X(Qa,{key:y.value&&y.value.icon?y.value.icon:"fa-light fa-clapperboard",value:y.value&&y.value.icon?y.value.icon:"",fallback:"fa-light fa-clapperboard","change-callback":Te,"has-tv-channel":!0},null,8,["value"])),t("span",Ei,[t("span",{class:Z(["ep-settings__form__state__icon",{"ep-settings__form__state__icon--active":v.value}])},o[7]||(o[7]=[t("i",{class:"fa-light fa-clapperboard"},null,-1)]),2),c.value&&c.value.attributes&&c.value.attributes.state?(d(),$("span",Ni,q(i.$t("activity.edit.activity_state",{state:i.$t(`activity.edit.state.${c.value.attributes.state.toLowerCase()}`,c.value.attributes.state.toLowerCase())})),1)):P("",!0)])]),y.value.name?(d(),X(Qt,{key:0,modelValue:y.value.name,"onUpdate:modelValue":o[0]||(o[0]=Y=>y.value.name=Y),onSubmit:He,onChangeLang:Re,translations:(A=c.value)==null?void 0:A.name,"has-lang":!0,"full-w":!0,label:i.$t("form.name")},null,8,["modelValue","translations","label"])):P("",!0),y.value.description?(d(),X(Qt,{key:1,modelValue:y.value.description,"onUpdate:modelValue":o[1]||(o[1]=Y=>y.value.description=Y),onSubmit:Ne,onChangeLang:Je,translations:(T=c.value)==null?void 0:T.description,type:"textarea","has-lang":!0,"full-w":!0,label:i.$t("form.description")},null,8,["modelValue","translations","label"])):P("",!0),t("div",Pi,[t("div",Li,[t("span",Ti,q(i.$t("activity.edit.activity_group.label")),1)]),y.value.activityGroup?(d(),X(Ct,{key:0,modelValue:y.value.activityGroup,"onUpdate:modelValue":o[2]||(o[2]=Y=>y.value.activityGroup=Y),onSelect:Pe,options:l.value,position:"right",light:!0,"dynamic-width":!0,"dynamic-position":!0},null,8,["modelValue","options"])):P("",!0)]),o[9]||(o[9]=t("hr",null,null,-1)),typeof y.value.preventSleep<"u"?(d(),X(Xt,{key:2,modelValue:y.value.preventSleep,"onUpdate:modelValue":o[3]||(o[3]=Y=>y.value.preventSleep=Y),onChange:ze,label:i.$t("activity.edit.prevent_sleep.label"),description:i.$t("activity.edit.prevent_sleep.description"),"full-w":!0,light:!0},null,8,["modelValue","label","description"])):P("",!0),o[10]||(o[10]=t("hr",null,null,-1)),t("div",null,[t("div",Oi,[t("div",Vi,[t("div",Ri,[t("span",Bi,q(i.$t("settings.voice_control.voice_assistant.title")),1)]),k(fi,{onSave:b,value:N.value??null,options:Q.value},null,8,["value","options"])]),G.value&&G.value.length>0?(d(),$("div",Gi,[t("div",Mi,[t("span",Di,q(i.$t("settings.voice_control.voice_assistant.profile.title")),1)]),k(gi,{onSave:p,"active-id":((we=(be=(Se=(de=c.value)==null?void 0:de.options)==null?void 0:Se.voice_assistant)==null?void 0:be.target)==null?void 0:we.profile_id)??"",options:G.value,"preferred-profile-id":((H=N.value)==null?void 0:H.preferred_profile)??""},null,8,["active-id","options","preferred-profile-id"])])):P("",!0)]),t("p",Ui,[!Q.value||Q.value.length<1?(d(),$(re,{key:0},[tt(q(i.$t("settings.voice_control.voice_assistant.description.no_items")),1)],64)):qe.value!=null?(d(),$(re,{key:1},[tt(q(i.$t("activity.voice_assistant.override")),1)],64)):(d(),$(re,{key:2},[tt(q(i.$t("activity.voice_assistant.select")),1)],64))]),t("a",Hi,[o[8]||(o[8]=t("i",{class:"fa-light fa-memo-circle-info"},null,-1)),t("span",null,q(i.$t("settings.voice_control.voice_assistant.support_link")),1)])]),o[11]||(o[11]=t("hr",null,null,-1)),typeof y.value.readyCheck<"u"?(d(),X(Xt,{key:3,modelValue:y.value.readyCheck,"onUpdate:modelValue":o[4]||(o[4]=Y=>y.value.readyCheck=Y),onChange:Oe,label:i.$t("activity.edit.ready_check.label"),description:i.$t("activity.edit.ready_check.description"),"full-w":!0,light:!0},null,8,["modelValue","label","description"])):P("",!0),R.active&&!O.value?(d(),X(Da,{key:4,to:"body",disabled:!n(D)},[t("div",zi,[k(oe,{name:"opacity-fast"},{default:J(()=>[F(k(ta,{type:"warning",icon:"fa-skull-crossbones",text:i.$t("activity.edit.entities_no_exist_info")},null,8,["text"]),[[ae,w.value]])]),_:1}),k(oe,{name:"opacity-fast"},{default:J(()=>[F(k(ta,{text:i.$t("activity.edit.editing_info")},null,8,["text"]),[[ae,v.value]])]),_:1})])],8,["disabled"])):P("",!0)])],2)),[[_]]),t("div",Ji,[t("div",Wi,[k(Xa,{ref_key:"actiIncludedList",ref:I,onEntityListChanged:Ge,onReloadEntities:je,onClickAdd:o[5]||(o[5]=Y=>O.value=!0),entities:te.value,"dangling-entities":B.value,instances:z.value,"show-button-add":O.value==!1,"drag-group":"activity-entities",loading:ue.value,"text-add-first-descr":i.$t("activity.edit.empty")+" "+i.$t("entity.add_first_btn_below")},null,8,["entities","dangling-entities","instances","show-button-add","loading","text-add-first-descr"])])]),k(oe,{name:O.value==!0?"slide-tab-right":"slide-tab-left"},{default:J(()=>[F(t("div",{ref_key:"actiAvailableEntities",ref:V,class:"ep-settings__available-entities panel-col panel-col--40"},[t("div",ji,[t("div",Fi,[t("button",{onClick:o[6]||(o[6]=Y=>O.value=!1),class:"button button--blank button--icon"},o[12]||(o[12]=[t("i",{class:"fa-light fa-arrow-left"},null,-1)])),t("span",null,q(i.$t("activity.edit.add_entities")),1)]),k(Ya,{onAddEntities:Me,onChangeFilter:Qe,onReloadEntities:je,onChangePage:Ve,onChangePerPage:u,pagination:le.value,"all-entities":ye.value,instances:z.value,"drag-group":"activity-entities","has-quick-options":!0,parent:"edit-activity","exclude-entity-types":[n(Za).sensor]},null,8,["pagination","all-entities","instances","exclude-entity-types"])])],512),[[ae,O.value==!0]])]),_:1},8,["name"])],2)}}}),Ki={class:"ep-sequences ep-sequences--activity"},Qi={class:"ep-sequences__selector"},Xi=["alt"],Yi={key:2,class:"fa-light fa-check sequence-list__icon"},Zi=["disabled"],en={key:0,class:"ep-sequences__list panel-col"},tn={class:"sequence-list"},an={class:"sequence-list__header"},nn={class:"sequence-list__header__row sequence-list__header__row--descr-mobile"},sn={class:"sequence-list__header__description"},ln={class:"sequence-list__header__row sequence-list__header__row--title"},on={class:"sequence-list__header__base-items"},un=["alt"],cn={key:2,class:"fa-light fa-check sequence-list__icon"},rn=["disabled"],dn={class:"sequence-list__header__triggers"},vn=["disabled"],fn=["disabled"],gn=["disabled"],pn=["disabled"],yn={class:"sequence-list__header__row sequence-list__header__row--descr-desktop"},_n={class:"sequence-list__header__description"},mn={class:"sequence-list__no-command"},hn={key:1,class:"ep-sequences__list panel-col"},bn={class:"sequence-list"},wn={class:"sequence-list__header"},$n={class:"sequence-list__header__row sequence-list__header__row--descr-mobile"},kn={class:"sequence-list__header__description"},Cn={class:"sequence-list__header__row sequence-list__header__row--title"},qn={class:"sequence-list__header__base-items"},Sn=["alt"],An={key:2,class:"fa-light fa-check sequence-list__icon"},In=["disabled"],En={class:"sequence-list__header__triggers"},Nn=["disabled"],Pn=["disabled"],Ln=["disabled"],Tn=["disabled"],On={class:"sequence-list__header__row sequence-list__header__row--descr-desktop"},Vn={class:"sequence-list__header__description"},Rn={class:"sequence-list__no-command"},Bn=at({__name:"EditActivitySequences",props:{activityId:{type:String,required:!0},active:{type:Boolean,default:!1}},setup(R){const ge=sa.integrations,pe={type:null,state:"",steps:[],totalSteps:0},{t:x}=qt();vt();const{updateExistingObjectKeys:D,isNonEmptyObject:E}=pt(),{isSmallScreen:U}=ft(),ie=gt(),W=kt(),{activeSequence:C,updateActiveSequence:c,clearActiveSequence:ee,hasActiveSequence:y,getSequenceItemStatus:O}=pi(pe),se=R,{configuredEntities:ye,commands:te}=ai(W),z=r(null),B=r(Te()),I=r(He()),V=r([]),K=r([]),Q=r(!1),qe=r(!1),le=r("on"),ue=r(),v=r(),l=r(),w=r(!1),N=r([{value:"on_sequence",label:x("sequence.on_sequence.title")},{value:"off_sequence",label:x("sequence.off_sequence.title")}]),G=r({value:"on_sequence",label:x("sequence.on_sequence.title")});ie.$onAction(({name:u,args:a,after:b})=>{u==="socketUpdate"&&b(async()=>{const{entity_id:p,event_type:M}=a[0];if(p===se.activityId&&p===se.activityId&&M==="CHANGE"&&a[0]&&a[0].new_state){if(qe.value)return!1;const i=a[0].new_state;if(C.value.state===fe.RUNNING&&i.attributes&&i.attributes.state&&c(i.attributes),C.value.state===fe.RUNNING||C.value.state===fe.ERROR)return!1;if(se.active){w.value=!0;const o=D(JSON.parse(JSON.stringify(z.value)),i);ce(o),w.value=!1}}})}),Le(()=>se.active,(u,a)=>{u==!0&&a==!1&&Ve()});async function ce(u,a=!1){if(!u||!E(u))return!1;if(w.value=!0,z.value=u,a)try{await W.getConfiguredEntities(null,!0),await W.getCommandMetadata()}catch(b){S(b)}B.value=Te(),I.value=He(),ue.value&&(ue.value.updateEntity(z.value),ue.value.close()),w.value=!1}function Te(){var a,b;if(!z.value)return[];const u=((b=(a=z.value.options)==null?void 0:a.sequences)==null?void 0:b.on)||[];return Ne(u,"on")}function He(){var a,b;if(!z.value)return[];const u=((b=(a=z.value.options)==null?void 0:a.sequences)==null?void 0:b.off)||[];return Ne(u,"off")}function Ne(u,a){return ii(u,ye.value,te.value).map(b=>({...b,list:a}))}async function ze(u,a,b=[]){var i,o;const M=(u.list==="on"?B:I).value[u.pos];if(M.type===ni.delay)M.sequence.delay=a;else{let _=JSON.parse(JSON.stringify(M.sequence.command.params??{}));(Array.isArray(a)?a:[a]).forEach(T=>{T!=null&&T.paramName&&(_[T.paramName]=T.paramValue)}),b.length>0&&b.forEach(T=>{delete _[T]}),M.sequence.command={cmd_id:(i=u.cmd)==null?void 0:i.id,entity_id:(o=u.entity)==null?void 0:o.entity_id,params:_}}await Pe()}function Oe(u){le.value=u,ue.value.open()}async function Pe(){var p;if(!z.value)return;qe.value=!0;const u=(((p=z.value.options)==null?void 0:p.included_entities)??[]).map(M=>M.entity_id),a={...z.value.options,sequences:{on:Zt(B.value,u||[]),off:Zt(I.value,u||[])}},b={...z.value,options:a};try{await ie.update(z.value.entity_id,b)}catch(M){S(M,"activity.sequences.update"),await Ve()}try{const M=await ie.getActivity(se.activityId);await ce(M)}catch(M){S(M),await Ve()}qe.value=!1}async function me(){Pe()}function Re(u,a=!0){a?(V.value=[],u.forEach(b=>{V.value.push(b)})):(K.value=[],u.forEach(b=>{K.value.push(b)}))}function Je(u=!0){u?V.value=[]:K.value=[]}function We(u,a=!0){return a?V.value.findIndex(b=>b.pos===u.pos)>-1:K.value.findIndex(b=>b.pos===u.pos)>-1}function Be(u,a=!0){if(a){const b=V.value.findIndex(p=>p.pos===u.pos);b>-1?V.value.splice(b,1):V.value.push(u)}else{const b=K.value.findIndex(p=>p.pos===u.pos);b>-1?K.value.splice(b,1):K.value.push(u)}}function Ge(u,a=!0){let b=[];a?(b=B.value.filter(p=>p.pos!=u.pos),B.value=b,V.value=[]):(b=I.value.filter(p=>p.pos!=u.pos),I.value=b,K.value=[]),me()}function Me(u=!0){let a=[];u?(a=B.value.filter(b=>!V.value.some(p=>p.pos===b.pos)),B.value=a,V.value=[]):(a=I.value.filter(b=>!K.value.some(p=>p.pos===b.pos)),I.value=a,K.value=[]),me()}function je(u){G.value.label=u.label,G.value.value=u.value}function Qe(u){le.value=="on"?B.value.push(u):I.value.push(u),me(),ue.value.close()}async function he(u){if(u)try{C.value=JSON.parse(JSON.stringify(pe)),C.value.state=fe.RUNNING,C.value.type=u,await ge.executeEntityCommand(se.activityId,u)}catch(a){S(a),C.value.state=fe.ERROR}}async function Ve(){Q.value=!0;try{const u=await ie.getActivity(se.activityId);await ce(u,!0)}catch(u){S(u)}Q.value=!1}return dt(async()=>{se.active&&Ve()}),(u,a)=>{const b=ia("overflow-indicator");return d(),$("div",Ki,[t("div",Qi,[k(Ct,{modelValue:G.value,"onUpdate:modelValue":a[0]||(a[0]=p=>G.value=p),onSelect:je,options:N.value,position:"center",light:!0,disabled:n(y)()},null,8,["modelValue","options","disabled"]),n(C).type===(G.value.value=="on_sequence"?"on":"off")?(d(),$(re,{key:0},[n(C).state===n(fe).RUNNING?(d(),$("img",{key:0,src:ot,alt:u.$t("entity.state.running"),class:"img-loading img-loading--base"},null,8,Xi)):n(C).state===n(fe).ERROR?(d(),$(re,{key:1},[a[23]||(a[23]=t("i",{class:"fa-light fa-exclamation sequence-list__icon sequence-list__icon--error"},null,-1)),t("button",{onClick:a[1]||(a[1]=(...p)=>n(ee)&&n(ee)(...p)),class:"button button--secondary button--small sequence-list__button"},q(u.$t("ui.back_to_edit")),1)],64)):n(C).state===n(fe).DONE?(d(),$("i",Yi)):P("",!0)],64)):(d(),$("button",{key:1,onClick:a[2]||(a[2]=p=>he(G.value.value=="on_sequence"?"on":"off")),disabled:G.value.value=="on_sequence"?B.value.length<1:I.value.length<1,class:"button button--secondary button--icon"},a[24]||(a[24]=[t("i",{class:"fa-regular fa-play"},null,-1)]),8,Zi))]),!n(U)||G.value.value=="on_sequence"?(d(),$("div",en,[t("div",tn,[t("div",an,[t("div",nn,[t("p",sn,q(u.$t("sequence.on_sequence.description")),1)]),t("div",ln,[t("div",on,[t("h2",null,q(u.$t("sequence.on_sequence.title")),1),n(C).type==="on"?(d(),$(re,{key:0},[n(C).state===n(fe).RUNNING?(d(),$("img",{key:0,src:ot,alt:u.$t("entity.state.running"),class:"img-loading img-loading--base"},null,8,un)):n(C).state===n(fe).ERROR?(d(),$(re,{key:1},[a[25]||(a[25]=t("i",{class:"fa-light fa-exclamation sequence-list__icon sequence-list__icon--error"},null,-1)),t("button",{onClick:a[3]||(a[3]=(...p)=>n(ee)&&n(ee)(...p)),class:"button button--secondary button--small"},q(u.$t("ui.back_to_edit")),1)],64)):n(C).state===n(fe).DONE?(d(),$("i",cn)):P("",!0)],64)):(d(),$("button",{key:1,onClick:a[4]||(a[4]=p=>he("on")),disabled:B.value.length<1||n(y)(),class:"button button--secondary button--icon"},a[26]||(a[26]=[t("i",{class:"fa-regular fa-play"},null,-1)]),8,rn))]),t("div",dn,[t("button",{onClick:a[5]||(a[5]=p=>Oe("on")),disabled:n(y)("on"),class:"button button--secondary button--icon"},a[27]||(a[27]=[t("i",{class:"fa-light fa-plus"},null,-1)]),8,vn),B.value.length===V.value.length&&V.value.length>0?(d(),$("button",{key:0,onClick:a[6]||(a[6]=p=>Je(!0)),disabled:n(y)("on"),class:"button button--secondary button--icon button-assign"},a[28]||(a[28]=[t("i",{class:"fa-light fa-xmark"},null,-1)]),8,fn)):B.value.length>0?(d(),$("button",{key:1,onClick:a[7]||(a[7]=p=>Re(B.value,!0)),disabled:n(y)("on"),class:"button button--secondary button--icon button-assign"},a[29]||(a[29]=[t("i",{class:"fa-light fa-check"},null,-1)]),8,gn)):P("",!0),t("button",{onClick:a[8]||(a[8]=p=>Me(!0)),disabled:V.value.length<1||n(y)("on"),class:"button button--secondary button--icon"},a[30]||(a[30]=[t("i",{class:"fa-light fa-trash"},null,-1)]),8,pn)])]),t("div",yn,[t("p",_n,q(u.$t("sequence.on_sequence.description")),1)])]),t("div",{ref_key:"seqOnListBody",ref:v,class:"sequence-list__body"},[!Q.value&&B.value.length>0?F((d(),X(n(Yt),{key:0,modelValue:B.value,"onUpdate:modelValue":a[11]||(a[11]=p=>B.value=p),class:"sequence-list__items",group:"sequence-on","force-fallback":!0,"item-key":"id",onChange:me,handle:".sequence-item__drag"},{item:J(({element:p,index:M})=>[k(aa,{item:p,selected:We(p,!0),status:n(O)(M,"on"),onToggleCheckbox:a[9]||(a[9]=i=>Be(i,!0)),onChange:ze,onDelete:a[10]||(a[10]=i=>Ge(i,!0))},null,8,["item","selected","status"])]),_:1},8,["modelValue"])),[[b]]):P("",!0),k(oe,{name:"opacity-fast"},{default:J(()=>[F(t("div",mn,[t("h3",null,q(u.$t("sequence.add_first")),1),t("p",null,q(u.$t("sequence.on_sequence.empty"))+" "+q(u.$t("sequence.add_first_btn_below")),1),t("button",{onClick:a[12]||(a[12]=p=>Oe("on")),class:"button button--primary button--hybrid button--hybrid--reversed"},[tt(q(u.$t("ui.add"))+" ",1),a[31]||(a[31]=t("i",{class:"fa-light fa-plus"},null,-1))])],512),[[ae,B.value.length<1&&!Q.value]])]),_:1})],512)])])):P("",!0),!n(U)||G.value.value=="off_sequence"?(d(),$("div",hn,[t("div",bn,[t("div",wn,[t("div",$n,[t("p",kn,q(u.$t("sequence.off_sequence.description")),1)]),t("div",Cn,[t("div",qn,[t("h2",null,q(u.$t("sequence.off_sequence.title")),1),n(C).type==="off"?(d(),$(re,{key:0},[n(C).state===n(fe).RUNNING?(d(),$("img",{key:0,src:ot,alt:u.$t("entity.state.running"),class:"img-loading img-loading--base"},null,8,Sn)):n(C).state===n(fe).ERROR?(d(),$(re,{key:1},[a[32]||(a[32]=t("i",{class:"fa-light fa-exclamation sequence-list__icon sequence-list__icon--error"},null,-1)),t("button",{onClick:a[13]||(a[13]=(...p)=>n(ee)&&n(ee)(...p)),class:"button button--secondary button--small"},q(u.$t("ui.back_to_edit")),1)],64)):n(C).state===n(fe).DONE?(d(),$("i",An)):P("",!0)],64)):(d(),$("button",{key:1,onClick:a[14]||(a[14]=p=>he("off")),disabled:I.value.length<1||n(y)(),class:"button button--secondary button--icon"},a[33]||(a[33]=[t("i",{class:"fa-regular fa-play"},null,-1)]),8,In))]),t("div",En,[t("button",{onClick:a[15]||(a[15]=p=>Oe("off")),disabled:n(y)("off"),class:"button button--secondary button--icon"},a[34]||(a[34]=[t("i",{class:"fa-light fa-plus"},null,-1)]),8,Nn),I.value.length===K.value.length&&K.value.length>0?(d(),$("button",{key:0,onClick:a[16]||(a[16]=p=>Je(!1)),disabled:n(y)("off"),class:"button button--secondary button--icon button-assign"},a[35]||(a[35]=[t("i",{class:"fa-light fa-xmark"},null,-1)]),8,Pn)):I.value.length>0?(d(),$("button",{key:1,onClick:a[17]||(a[17]=p=>Re(I.value,!1)),disabled:n(y)("off"),class:"button button--secondary button--icon button-assign"},a[36]||(a[36]=[t("i",{class:"fa-light fa-check"},null,-1)]),8,Ln)):P("",!0),t("button",{onClick:a[18]||(a[18]=p=>Me(!1)),disabled:K.value.length<1||n(y)("off"),class:"button button--secondary button--icon"},a[37]||(a[37]=[t("i",{class:"fa-light fa-trash"},null,-1)]),8,Tn)])]),t("div",On,[t("p",Vn,q(u.$t("sequence.off_sequence.description")),1)])]),t("div",{ref_key:"seqOffListBody",ref:l,class:"sequence-list__body"},[!Q.value&&I.value.length>0?F((d(),X(n(Yt),{key:0,modelValue:I.value,"onUpdate:modelValue":a[21]||(a[21]=p=>I.value=p),class:"sequence-list__items",group:"sequence-off","force-fallback":!0,"item-key":"id",onChange:me,handle:".sequence-item__drag"},{item:J(({element:p,index:M})=>[k(aa,{item:p,selected:We(p,!1),status:n(O)(M,"off"),onToggleCheckbox:a[19]||(a[19]=i=>Be(i,!1)),onChange:ze,onDelete:a[20]||(a[20]=i=>Ge(i,!1))},null,8,["item","selected","status"])]),_:1},8,["modelValue"])),[[b]]):P("",!0),k(oe,{name:"opacity-fast"},{default:J(()=>[F(t("div",Rn,[t("h3",null,q(u.$t("sequence.add_first")),1),t("p",null,q(u.$t("sequence.off_sequence.empty"))+" "+q(u.$t("sequence.add_first_btn_below")),1),t("button",{onClick:a[22]||(a[22]=p=>Oe("off")),class:"button button--primary button--hybrid button--hybrid--reversed"},[tt(q(u.$t("ui.add"))+" ",1),a[38]||(a[38]=t("i",{class:"fa-light fa-plus"},null,-1))])],512),[[ae,I.value.length<1&&!Q.value]])]),_:1})],512)])])):P("",!0),z.value?(d(),X(yi,{key:2,onAddCommand:Qe,entity:z.value,"command-metadata":n(te),setting:w.value,ref_key:"elAddCommand",ref:ue},null,8,["entity","command-metadata","setting"])):P("",!0)])}}}),Gn=["title"],Mn={class:"remote-controller__tools"},Dn=["title"],Un=["title"],Hn=["title"],zn=["title"],Jn=["title"],Wn={class:"ui-page__head"},jn={class:"ui-page__name"},Fn={class:"ui-page__background"},xn={class:"ui-page__background__row"},Kn=["onClick"],Qn=["onClick"],Xn=["onClick"],Yn={class:"form-item form-item--checkbox-tick"},Zn=["id","checked"],es=["for"],ts={key:3,class:"ui-page__item__drag"},as={class:"ui-page__empty-list"},is=["onClick"],ns={class:"remote-controller__display__no-pages"},ss={class:"remote-controller__display__saving"},ls=at({__name:"ActivityRemote",props:{activity:{type:Object,required:!0},editButtonMapping:{type:Boolean,default:!1},highlightedRemoteButton:{type:Object,default:{}}},emits:["addPage","showPageList","update"],setup(R,{expose:ge,emit:pe}){const{t:x}=qt(),{sleep:D}=di(),{isSmallScreen:E,isMobileScreen:U}=ft(),{isNonEmptyObject:ie}=pt(),{getDeviceColor:W,getRemotControllerClasses:C}=oi();vt();const c=R,ee={label:x("ui.move"),value:"move"},y=[{label:x("ui.move"),value:"move"},{label:x("ui.edit"),value:"edit"},{label:x("ui.select"),value:"select"},{label:x("ui.test"),value:"test"}],O=si(),se=li(),ye=na(),te=gt(),z=kt(),B=sa.integrations,I=r(ee),V=r(null),K=r(""),Q=r(),qe=r(Lt()),{registerDragArea:le,registerGridItem:ue,pages:v,activePage:l,layouts:w,selectedItems:N,editButton:G,editButtonCoord:ce,editPopup:Te,newItemLocation:He,mediaPlayerMinHeight:Ne,setMediaPlayerMinHeight:ze,startButtonEdit:Oe,closeButtonEdit:Pe,toggleItemSelect:me,itemSelected:Re,movedGridItem:Je,resizedGridItem:We,addGridItem:Be,testWidgetPlacing:Ge,updateGridItem:Me,deleteGridItem:je,deleteGridItems:Qe,pasteGridItems:he,collectGridItems:Ve,buildLayout:u,getEmptyCells:a,isActivePageFull:b,preventCollision:p,isGridItemDragging:M,onGridMove:i,onGridNativeMove:o,getButtonSize:_,getEmptyItemStyle:A,resetNewItemMeta:T,isAddWidgetProgress:de}=_i(x,_a,Ze,Tt),Se=r([]),be=r(1),we=r([]),H=r({width:0,height:0,widgetMeta:{mediaPlayerMinHeight:Ne}}),Y=r([]),Ae=r(1),$e=r({label:"",value:""}),_e=r(!1),Fe=r("d"),Ie=r(!1),De=r(!1),xe=r(!1),yt=r(!1),St=r(),At=r(),It=r(),_t=r(),it=r(!0),mt=r(!1),ke=r(!1),Et=r(ye.$state.list.screenLayout.grid.max.height||12),ht=r(),Nt=r([]),Ue=r([]);ge({setActivePageById:Pt,isItemDragging:Ga,isSaving:Ma});const Xe=pe;Le(()=>c.activity,()=>{yt.value||Ke(c.activity)}),Le(G,async(e,s)=>{if(!s||!G.value||!ce.value)return;const g=ce.value.page,h=ce.value.index;v.value[g].items[h]=G.value,await Ze(g)},{deep:!0}),Le(v,()=>{Ot(),v.value[l.value]&&($e.value={label:v.value[l.value].name??"",value:v.value[l.value].page_id??""})}),Le(l,(e,s)=>{e!=s&&(N.value=[]),v.value[l.value]&&($e.value={label:v.value[l.value].name??"",value:v.value[l.value].page_id??""})});const oa=ne(()=>{var h,m,f,j;const e=(m=(h=v.value[l.value])==null?void 0:h.grid)==null?void 0:m.width;if(!e)return!1;const s=Math.ceil(Ne.value/(H.value.height/((j=(f=v.value[l.value])==null?void 0:f.grid)==null?void 0:j.height)));return Ge({size:{width:e,height:s},location:{x:1,y:1},type:"media_player"})}),ua=ne(()=>{var s,g;const e=[];for(let h=0;h<v.value.length;h++){const m=Array.from({length:(g=(s=v.value[h])==null?void 0:s.grid)==null?void 0:g.height},(f,j)=>j);e.push(m)}return e}),ca=ne(()=>{var s,g;const e=[];for(let h=0;h<v.value.length;h++){const m=Array.from({length:(g=(s=v.value[h])==null?void 0:s.grid)==null?void 0:g.width},(f,j)=>j);e.push(m)}return e}),ra=ne(()=>{let e="";return e+=De.value?"ui-page__content--selectable ":"",e}),Ye=ne(()=>{let e="";return E.value?e+="button--secondary button--icon":e+="button--tertiary button--hybrid",e}),da=ne(()=>{var e;return c.activity?(((e=c.activity.options)==null?void 0:e.included_entities)??[]).filter(s=>s.available===!1).map(s=>s.entity_id):[]}),va=ne(()=>{let e="**";return Ue.value.forEach(s=>{const g=Nt.value.find(h=>h.entity_id===s);e.length>2&&(e+=", "),e+=ut(g==null?void 0:g.name)||""}),x("entity.missing_entity.question_widget",{entities:`${e.replace(/[,\s]+$/g,"")}**`,count:Ue.value.length})});async function fa(){let e="",s=null;try{e=await ye.getDeviceModel()}catch(g){S(g)}try{s=await se.getSystemInfo()}catch(g){console.error(g)}(e==null?void 0:e.toLowerCase())=="ucr2"?(_e.value=!0,H.value.width=U.value?217:279,H.value.height=U.value?349:454):(_e.value=!1,H.value.width=U.value?228:292,H.value.height=U.value?329:429,s!=null&&s.serial_number&&(Fe.value=W(s.serial_number))),H.value.widgetMeta.mediaPlayerMinHeight=H.value.height/4,ze(H.value.widgetMeta.mediaPlayerMinHeight)}const ga=ne(()=>x("user_interface.pages.reset_page.question",{name:l.value!=null&&v.value[l.value]?v.value[l.value].name:""})),nt=ne(()=>v.value.map(e=>({label:e.name,value:e.page_id})));function Pt(e){const s=v.value.findIndex(g=>g.page_id===e);s>-1&&(l.value=s)}function Lt(){var e,s;return{name:ut((e=V.value)==null?void 0:e.name)||"",icon:((s=V.value)==null?void 0:s.icon)||"uc:clapperboard"}}async function Tt(){var e,s,g;w.value=(((g=(s=(e=V.value)==null?void 0:e.options)==null?void 0:s.user_interface)==null?void 0:g.pages)||[]).map(h=>u(h.items))}function Ke(e){var s,g,h,m,f;if(!e||!ie(e))return!1;if(V.value=JSON.parse(JSON.stringify(e)),qe.value=Lt(),v.value=((h=(g=(s=V.value)==null?void 0:s.options)==null?void 0:g.user_interface)==null?void 0:h.pages)||[],Tt(),K.value=((m=V.value)==null?void 0:m.icon)||"",Se.value=((f=ye.$state.list.buttonLayout[0])==null?void 0:f.buttons)||[],be.value=be.value*-1,Ot(),pa(),ya(),de()==!0){const j=v.value[l.value].items.length-1;Q.value.update(v.value[l.value].items[j])}}function Ot(){for(const e of v.value)e.name||(e.name="New page")}function pa(){const e=[];for(let s=0;s<v.value.length;s++){let g=1,h=1;const m=v.value[s].items;for(let f=0;f<m.length;f++){const j=m[f].location.y+(m[f].size&&m[f].size.height?m[f].size.height:1);if(j>h&&(h=j),m[f].type!="media_player"){const ve=m[f].location.x+(m[f].size&&m[f].size.width?m[f].size.width:1);ve>g&&(g=ve)}}e.push({width:g,height:h})}Y.value=e}function ya(){we.value=a()}async function _a(){if(!V.value)return;const e=v.value.map(h=>h.page_id),s={name:"new page",items:[]};ke.value=!0;try{const h=await te.addUiPage(V.value,s);Ke(h)}catch(h){S(h)}const g=v.value.findIndex(h=>!e.includes(h.page_id));l.value=Math.max(g,0),Ae.value++,ke.value=!1}const bt={};async function Ze(e,s=!1){if(ke.value=!0,!bt[e]){bt[e]=!0,w.value[e]=u(v.value[e].items);try{const g=await te.updateUiPage(c.activity.entity_id,v.value[e]);s||Ke(g),Xe("update")}catch(g){Q.value.isActive()?Q.value.closeModal():Pe(),Ke(c.activity),S(g,"activity.user_interface.update",ht.value)}bt[e]=!1,await D(500),ke.value=!1}}function ma(e){const{page:s,index:g}=ce.value;return ki(v.value[s].items,g,e)}function ha(e){return H.value.height/e}async function ba(){yt.value=!0;try{await Qe(N.value),wt()}catch(e){S(e)}yt.value=!1,await D(200),Ke(c.activity)}async function Vt(){var m;const s=((O.$state.clipboard.activity.pageItems||[])??[]).map(f=>{var j;return(j=f.command)==null?void 0:j.entity_id}).filter(f=>!!f),g=[...new Set(s)],h=(((m=c.activity.options)==null?void 0:m.included_entities)??[]).map(f=>f.entity_id);if(Ue.value=g.filter(f=>!h.includes(f)),Ue.value.length>0&&_t.value)try{Nt.value=await z.getConfiguredEntities(null,!1),_t.value.open()}catch(f){S(f)}else Rt()}async function Rt(){const e=O.$state.clipboard.activity.pageItems||[];if(e){try{await he(e),O.setClipboard([],"activity","pageItems")}catch(s){s&&s.message&&typeof s.message=="string"?S(s.message):S(s)}wt()}}async function wa(){var g;if(!c.activity)return;const e=(((g=c.activity.options)==null?void 0:g.included_entities)??[]).map(h=>h.entity_id),s={options:{entity_ids:JSON.parse(JSON.stringify(e.concat(Ue.value)))}};ke.value=!0;try{await te.update(c.activity.entity_id,s),await Rt(),Xe("update")}catch(h){S(h)}ke.value=!1}function $a(){if(!G.value)return!1;const e=new Array(G.value);O.setClipboard(e,"activity","pageItems")}function ka(){const e=Ve(N.value);O.setClipboard(e,"activity","pageItems"),wt()}function wt(){N.value=[]}function Ca(){St.value.open()}function qa(){At.value.open()}function Sa(){It.value.open()}async function Aa(){if(l.value==null)return!1;const e=v.value[l.value];if(!e)return!1;ct(rt.SAVING),await D(1e3),ke.value=!0;try{await te.updateUiPage(c.activity.entity_id,{...e,items:[]}),await te.getActivity(c.activity.entity_id),ct(rt.SUCCESS),Xe("update")}catch(s){S(s,"activity.user_interface.update",ht.value)}ke.value=!1}async function Ia(e){mt.value=!0;let s=v.value[l.value].grid.width,g=v.value[l.value].grid.height;e.width<s&&await Bt(e.width),v.value[l.value].grid.width=e.width,v.value[l.value].grid.height=e.height,await Ze(l.value),e.width>s&&await Bt(e.width),e.height>g&&await Ea(e.height),mt.value=!1}async function Bt(e){let s=!1;const g=v.value[l.value].items;for(const h of g)h.type=="media_player"&&(h.size.width=e,s=!0);s&&await Ze(l.value)}async function Ea(e){let s=!1;const g=v.value[l.value].items,h=Math.ceil(Ne.value/(H.value.height/e));for(const m of g){const f=h-m.size.height;if(m.type=="media_player"&&f>0){m.size.height=m.size.height+f;let j=!1;for(const ve of g)m.location.x!=ve.location.x&&m.location.y!=ve.location.y&&m.location.y+m.size.height>=ve.location.y&&(j=!0);if(j)for(const ve of g)m.location.y<ve.location.y&&(ve.location.y=ve.location.y+f);s=!0}}s&&await Ze(l.value)}function Na(){Q.value.open()}async function Pa(e,s){He.value={x:e,y:s},O.$state.clipboard.activity.pageItems.length>0?await Vt():Q.value.open()}function La(){Xe("addPage")}async function Ta(e){try{await Be(e,H.value.height)}catch(s){Q.value.closeModal(),s&&s.message&&typeof s.message=="string"?S(s.message):S(s)}}function Oa(){Xe("showPageList")}function Va(e){I.value=e,Ie.value=!1,De.value=!1,xe.value=!1,e.value=="edit"?Ie.value=!0:e.value=="select"?De.value=!0:e.value=="test"&&(xe.value=!0),e.value!="select"&&(N.value=[])}function Gt(e="icon",s,g=!1){var h,m,f,j;return g&&e==="media_player"?Math.ceil(Ne.value/(H.value.height/((m=(h=v.value[s])==null?void 0:h.grid)==null?void 0:m.height)))||3:e==="media_player"?((j=(f=v.value[s])==null?void 0:f.grid)==null?void 0:j.width)||4:1}function Ra(e){var s;return da.value.includes((s=e.command)==null?void 0:s.entity_id)}async function Ba(e){if(!(!e.command||!e.command.entity_id||!e.command.cmd_id||!e.command.params))try{await B.executeEntityCommand(e.command.entity_id,e.command.cmd_id,e.command.params)}catch(s){S(s,"entity.execute_command")}}function Ga(){return M.value}function Ma(){return ke.value}return dt(async()=>{it.value=!0;try{await fa(),Ke(c.activity)}catch(e){S(e)}it.value=!1}),(e,s)=>{const g=xt("grid-item"),h=xt("grid-layout");return d(),$(re,null,[t("div",{class:Z(["remote-controller remote-controller--activity",it.value?"":n(C)(_e.value,Fe.value)])},[t("div",{class:Z(["remote-controller__page-triggers",{"remote-controller__page-triggers--no-pages":nt.value.length<1}])},[nt.value&&nt.value.length>0?(d(),X(Ct,{key:0,modelValue:$e.value,"onUpdate:modelValue":s[0]||(s[0]=m=>$e.value=m),onSelect:s[1]||(s[1]=m=>{Pt(m.value)}),options:nt.value,light:!0},null,8,["modelValue","options"])):P("",!0),t("button",{onClick:Oa,title:e.$t("ui.edit"),class:"button button--secondary button--icon"},s[6]||(s[6]=[t("i",{class:"fa-light fa-edit"},null,-1)]),8,Gn)],2),k(oe,{name:"opacity"},{default:J(()=>[F(t("div",Mn,[F(t("button",{onClick:Na,title:e.$t("ui.add"),class:Z(["button",Ye.value])},[s[7]||(s[7]=t("i",{class:"fa-light fa-plus"},null,-1)),t("span",null,q(e.$t("ui.add")),1)],10,Dn),[[ae,n(v).length>0&&n(b)()==!1]]),n(v)[n(l)]?(d(),X(mi,{key:0,"actual-dimensions":{width:n(v)[n(l)].grid.width,height:n(v)[n(l)].grid.height},"min-dimensions":Y.value[n(l)]||{width:1,height:1},onSave:Ia},null,8,["actual-dimensions","min-dimensions"])):P("",!0),t("button",{onClick:Sa,title:e.$t("ui.reset"),class:Z(["button button-reset",Ye.value])},[s[8]||(s[8]=t("i",{class:"fa-light fa-arrow-rotate-left"},null,-1)),t("span",null,q(e.$t("ui.reset")),1)],10,Un),F(t("button",{onClick:Vt,title:e.$t("ui.paste"),class:Z(["button",Ye.value])},[s[9]||(s[9]=t("i",{class:"fa-light fa-paste"},null,-1)),t("span",null,q(e.$t("ui.paste")),1)],10,Hn),[[ae,n(O).$state.clipboard.activity.pageItems.length>0]]),F(t("button",{onClick:ka,title:e.$t("ui.copy"),class:Z(["button",Ye.value])},[s[10]||(s[10]=t("i",{class:"fa-light fa-copy"},null,-1)),t("span",null,q(e.$t("ui.copy")),1)],10,zn),[[ae,n(N).length>0]]),F(t("button",{onClick:qa,title:e.$t("ui.delete"),class:Z(["button",Ye.value])},[s[11]||(s[11]=t("i",{class:"fa-light fa-trash"},null,-1)),t("span",null,q(e.$t("ui.delete")),1)],10,Jn),[[ae,n(N).length>0]])],512),[[ae,R.editButtonMapping==!1&&n(v).length>0]])]),_:1}),k(oe,{name:"opacity"},{default:J(()=>[F(k(la,{onItemClick:Va,"list-data":y,"active-tab":I.value,responsive:!1,compact:!0},null,8,["active-tab"]),[[ae,R.editButtonMapping==!1&&n(v).length>0]])]),_:1}),t("div",{ref_key:"elRemoteControllerDevice",ref:ht,class:Z(["remote-controller__device",{"remote-controller__device--button-mapping":R.editButtonMapping}])},[t("div",{class:Z(["remote-controller__display",{"remote-controller__display--single-page":n(v).length<1,"remote-controller__display--disabled":R.editButtonMapping}])},[k(n(ui),{modelValue:n(l),"onUpdate:modelValue":s[4]||(s[4]=m=>Ha(l)?l.value=m:null),"items-to-show":1,"items-to-scroll":1,"wrap-around":!1,"mouse-drag":!1,"touch-drag":!1,"snap-align":"start",class:"remote-controller__carousel"},{addons:J(()=>[k(n(ri))]),default:J(()=>[(d(!0),$(re,null,et(n(v),(m,f)=>(d(),X(n(ci),{key:f,class:Z(["ui-page",{"ui-page--v2":_e.value}])},{default:J(()=>{var j,ve,Mt,Dt,Ut,Ht,zt,Jt,Wt,jt;return[t("div",Wn,[t("span",jn,q(m.name),1)]),t("div",{class:Z(["ui-page__content",ra.value])},[t("div",Fn,[(d(!0),$(re,null,et(ua.value[f],L=>(d(),$("div",xn,[(d(!0),$(re,null,et(ca.value[f],Ce=>(d(),$("span",{key:L+Ce,class:"ui-page__background__item"}))),128))]))),256))]),t("div",{class:Z(["ui-page__drag-area",n(_)((ve=(j=n(v)[f])==null?void 0:j.grid)==null?void 0:ve.width,(Dt=(Mt=n(v)[f])==null?void 0:Mt.grid)==null?void 0:Dt.height)])},[Array.isArray(n(w)[f])&&H.value.width>0?(d(),X(h,{key:0,layout:n(w)[f],"onUpdate:layout":L=>n(w)[f]=L,"col-num":(Ht=(Ut=n(v)[f])==null?void 0:Ut.grid)==null?void 0:Ht.width,"row-height":ha((Jt=(zt=n(v)[f])==null?void 0:zt.grid)==null?void 0:Jt.height),"max-rows":(jt=(Wt=n(v)[f])==null?void 0:Wt.grid)==null?void 0:jt.height,margin:[0,0],"is-draggable":!Ie.value,"is-resizable":!Ie.value&&!De.value&&!xe.value,"is-mirrored":!1,"is-bounded":!0,responsive:!1,"auto-size":!1,"vertical-compact":!1,"use-css-transforms":!0,"prevent-collision":n(p),ref_for:!0,ref:L=>{L&&n(le)(m.page_id,L)}},{default:J(()=>[(d(!0),$(re,null,et(n(w)[f],(L,Ce)=>{var $t,Ft;return d(),X(g,{x:L.x,y:L.y,w:L.w,h:L.h,i:L.i,key:L.i,minW:Gt(($t=L.item)==null?void 0:$t.type,f),minH:Gt((Ft=L.item)==null?void 0:Ft.type,f,!0),onMove:n(i),onPointerdown:s[2]||(s[2]=Ee=>M.value=!0),onPointermove:n(o),onPointerup:s[3]||(s[3]=Ee=>M.value=!1),onMoved:Ee=>n(Je)(m.page_id,n(w)[f],Et.value),onResized:Ee=>n(We)(m.page_id,n(w)[f],Et.value),ref_for:!0,ref:Ee=>{Ee&&n(ue)(m.page_id,Ce,Ee)},class:Z({"vue-grid-item--media-player":L.item.type=="media_player"})},{default:J(()=>[t("div",{class:Z(["ui-page__item",{selected:n(Re)(f,Ce),"ui-page__item--dangling":Ra(L.item)}])},[(d(),X(za(n(hi)(L.item.type)),{key:JSON.stringify(L),settings:L.item},null,8,["settings"])),!De.value&&!xe.value&&Ie.value?(d(),$("span",{key:0,class:"ui-page__item__edit",onClick:Ee=>n(Oe)(f,Ce,L.item,Ee)},s[12]||(s[12]=[t("i",{class:"fa-regular fa-edit"},null,-1)]),8,Kn)):P("",!0),!De.value&&!Ie.value&&xe.value?(d(),$("span",{key:1,class:Z(["ui-page__item__test",{"ui-page__item__test--disabled":L.item.type==="media_player"||L.item.type==="sensor"}]),onClick:Ee=>Ba(L.item)},null,10,Qn)):P("",!0),De.value?(d(),$("div",{key:2,class:"ui-page__item__select",onClick:Ee=>n(me)(f,Ce)},[t("div",Yn,[t("input",{id:`${f}-${Ce}-component-tick`,type:"checkbox",checked:n(Re)(f,Ce)},null,8,Zn),t("label",{class:"toggle",for:`${f}-${Ce}-component-tick`},null,8,es),s[13]||(s[13]=t("button",{class:"button--toggle-tick"},null,-1))])],8,Xn)):!Ie.value&&!xe.value?(d(),$("span",ts,s[14]||(s[14]=[t("i",{class:"fa-regular fa-up-down-left-right"},null,-1)]))):P("",!0)],2)]),_:2},1032,["x","y","w","h","i","minW","minH","onMove","onPointermove","onMoved","onResized","class"])}),128))]),_:2},1032,["layout","onUpdate:layout","col-num","row-height","max-rows","is-draggable","is-resizable","prevent-collision"])):P("",!0)],2),t("div",as,[(d(!0),$(re,null,et(we.value[f],(L,Ce)=>(d(),$("button",{key:`empty-cell-${f}-${Ce}`,onClick:$t=>Pa(L.x,L.y),style:Ja(n(A)(H.value,L.x,L.y,f)),class:"ui-page__empty-list__item"},[t("i",{class:Z(["fa-regular",n(O).$state.clipboard.activity.pageItems.length>0?"fa-paste":"fa-plus"])},null,2)],12,is))),128))])],2)]}),_:2},1032,["class"]))),128))]),_:1},8,["modelValue"]),k(oe,{name:"opacity-fast"},{default:J(()=>[F(t("div",ns,[t("img",{onClick:La,alt:"Add page",src:Si}),t("h2",null,q(e.$t("user_interface.no_pages.title")),1)],512),[[ae,n(v).length==0&&it.value==!1]])]),_:1}),k(oe,{name:"opacity-fast"},{default:J(()=>[F(t("div",ss,s[15]||(s[15]=[t("img",{src:ot,alt:"Loading",class:"list-loader__img img-loading"},null,-1)]),512),[[ae,mt.value]])]),_:1})],2),R.editButtonMapping&&!n(E)?(d(),X(bi,{key:0,button:R.highlightedRemoteButton},null,8,["button"])):P("",!0)],2)],2),k(wi,{ref_key:"elAddWidget",ref:Q,onAdd:Ta,onChange:n(Me),onClose:n(T),entity:R.activity,"entity-type":"activity",pages:n(v),"active-page":n(l),"enable-media":oa.value,"grid-dimensions":H.value,saving:ke.value},null,8,["onChange","onClose","entity","pages","active-page","enable-media","grid-dimensions","saving"]),k(oe,{name:"opacity-fast"},{default:J(()=>[F(t("div",{ref_key:"editPopup",ref:Te,class:"widget-popup-wrapper"},[t("div",{onClick:s[5]||(s[5]=(...m)=>n(Pe)&&n(Pe)(...m)),class:"widget-popup-wrapper__background"}),n(G)&&R.activity?(d(),X($i,{onChange:n(Me),onCopy:$a,onDelete:Ca,onClose:n(Pe),key:JSON.stringify(n(G)),settings:n(G),entity:R.activity,"entity-type":"activity","active-page":n(v)[n(l)],"validate-size":ma,"grid-dimensions":H.value,saving:ke.value},null,8,["onChange","onClose","settings","entity","active-page","grid-dimensions","saving"])):P("",!0)],512),[[ae,n(G)]])]),_:1}),k(lt,{ref_key:"dialogDelete",ref:St,onSubmit:n(je),title:e.$t("widget.popup.delete_widget.title",{count:1}),text:e.$t("widget.popup.delete_widget.question",{count:1}),"submit-text":e.$t("ui.delete"),"cancel-text":e.$t("ui.cancel")},null,8,["onSubmit","title","text","submit-text","cancel-text"]),k(lt,{ref_key:"dialogDeleteItems",ref:At,onSubmit:ba,title:e.$t("widget.popup.delete_widget.title",{count:n(N).length}),text:e.$t("widget.popup.delete_widget.question",{count:n(N).length}),"submit-text":e.$t("ui.delete"),"cancel-text":e.$t("ui.cancel")},null,8,["title","text","submit-text","cancel-text"]),k(lt,{ref_key:"dialogReset",ref:It,onSubmit:Aa,title:e.$t("user_interface.pages.reset_page.title"),text:ga.value,"submit-text":e.$t("ui.reset"),"cancel-text":e.$t("ui.cancel")},null,8,["title","text","submit-text","cancel-text"]),k(lt,{ref_key:"dialogMissingEntity",ref:_t,onSubmit:wa,markdown:!0,title:e.$t("entity.missing_entity.title",{count:Ue.value.length}),text:va.value,"submit-text":e.$t("entity.missing_entity.add",{count:Ue.value.length}),"cancel-text":e.$t("ui.cancel")},null,8,["title","text","submit-text","cancel-text"])],64)}}}),os={class:"ea-interfaces__list panel-col panel-col--40"},us={class:"ea-interfaces__list__wrapper"},cs={class:"ea-interfaces__list__tab"},rs={class:"ea-interfaces__list__tab"},ds=at({__name:"EditActivityInterfaces",props:{activityId:{type:String,required:!0},activeTab:{type:String,required:!0}},setup(R){vt();const{updateExistingObjectKeys:ge,isNonEmptyObject:pe}=pt(),{isSmallScreen:x}=ft(),D=gt(),E=R,U=r(null),ie=r(),W=r(),C=r({}),c=r(!1),ee=r(!1),y=r(!0),O=r(!1),se=r();D.$onAction(({name:l,args:w,after:N})=>{l==="socketUpdate"&&N(async()=>{const{entity_id:G,event_type:ce}=w[0];if(G===E.activityId&&G===E.activityId&&ce==="CHANGE"&&w[0]&&w[0].new_state){if(te.value)return!1;if(ye.value){const Te=ge(JSON.parse(JSON.stringify(U.value)),w[0].new_state);I(Te)}}})}),Le(E,l=>{!c.value&&(l.activeTab=="user-interface"||l.activeTab=="button-mapping")&&(c.value=!0)});const ye=ne(()=>E.activeTab=="user-interface"||E.activeTab=="button-mapping");Le(ye,(l,w)=>{l==!0&&w==!1&&ue()});const te=ne(()=>O.value||W.value&&W.value.isSaving()||se.value&&se.value.isSaving()||ie.value&&ie.value.isSaving()),z=ne(()=>E.activeTab=="user-interface"?"slide-tab-right":"slide-tab-left"),B=ne(()=>!x.value||E.activeTab=="button-mapping"?"none":ee.value?"slide-tab-right":"slide-tab-left");function I(l){if(!l||!pe(l))return!1;U.value=l}function V(l){W.value.setActivePageById(l)}async function K(l){if(l.cmd==null)throw new Error("Property 'msg.cmd' is required.");if(l.pressType==null)throw new Error("Property 'msg.pressType' is required.");O.value=!0;try{const w=await D.buttonUpdate(E.activityId,l.button.button,l.cmd,l.pressType);if(w&&pe(w)&&I(w),l.cmd){let N=JSON.parse(JSON.stringify(l));l.pressType&&(N.button[l.pressType]=l.cmd,ie.value.changePhysicalButtonEdit(N))}}catch(w){S(w)}O.value=!1}async function Q(l){O.value=!0;try{const w=await D.buttonReset(E.activityId,l.button.button,l.pressType);I(w);let N=JSON.parse(JSON.stringify(l));l.pressType&&(delete N.button[l.pressType],ie.value.changePhysicalButtonEdit(N))}catch(w){S(w)}O.value=!1}async function qe(){O.value=!0;try{ct(rt.SAVING);const l=await D.allButtonsReset(E.activityId);I(l),ct(rt.SUCCESS)}catch(l){S(l)}O.value=!1}function le(){se.value.setAddPage(!0)}async function ue(){y.value=!0;try{const l=await D.getActivity(E.activityId);I(l)}catch(l){S(l)}y.value=!1}async function v(){try{const l=await D.getActivity(E.activityId,!1);I(l)}catch(l){S(l)}}return dt(()=>{ye.value&&ue()}),(l,w)=>(d(),$("div",{class:Z(["ea-interfaces",`ea-interfaces--${R.activeTab}`])},[c.value?(d(),$("div",{key:0,class:Z([{"ea-interfaces__remote--overflow-hidden":W.value&&W.value.isItemDragging()},"ea-interfaces__remote panel-col panel-col--60"])},[U.value?(d(),X(ls,{key:0,activity:U.value||{},"edit-button-mapping":R.activeTab=="button-mapping","highlighted-remote-button":C.value,onAddPage:le,onShowPageList:w[0]||(w[0]=N=>ee.value=!0),onUpdate:v,ref_key:"elActivityRemote",ref:W},null,8,["activity","edit-button-mapping","highlighted-remote-button"])):P("",!0)],2)):P("",!0),k(oe,{name:B.value},{default:J(()=>[F(t("div",os,[t("div",us,[k(oe,{name:z.value},{default:J(()=>[F(t("div",cs,[k(Ci,{ref_key:"elActiPageList",ref:se,onEditPage:V,onUpdate:v,onHide:w[1]||(w[1]=N=>ee.value=!1),entity:U.value||{},entityType:"activity",loading:y.value},null,8,["entity","loading"])],512),[[ae,R.activeTab!="button-mapping"]])]),_:1},8,["name"]),k(oe,{name:z.value},{default:J(()=>[F(t("div",rs,[U.value?(d(),X(qi,{key:0,entity:U.value,"entity-type":"activity","text-instruction":l.$t("activity.button_mapping.instruction"),onChangeButton:K,onResetButton:Q,onResetAllButtons:qe,onHighlightButton:w[2]||(w[2]=N=>{C.value=N}),onHideHighlightedButton:w[3]||(w[3]=N=>C.value={}),onUpdate:v,ref_key:"elButtonList",ref:ie},null,8,["entity","text-instruction"])):P("",!0)],512),[[ae,R.activeTab!="user-interface"]])]),_:1},8,["name"])])],512),[[ae,!n(x)||R.activeTab=="button-mapping"||ee.value]])]),_:1},8,["name"])],2))}}),vs={class:"page-edit-activity"},fs={class:"page-edit-activity__navbar"},gs={class:"page-edit-activity__main"},ps={class:"page-edit-activity__tabs"},ys={class:"page-edit-activity__tab"},_s={class:"page-edit-activity__tab"},ms={class:"page-edit-activity__tab"},Es=at({__name:"EditActivityView",props:{activity_id:{type:String,required:!0}},setup(R){const{t:ge}=qt(),pe={icon:"fa-light fa-gear",label:ge("tab.settings"),value:"settings"},x=vi(async()=>{const W=await ea("fa-list-timeline"),C=await ea("fa-grid-2");return[{icon:"fa-light fa-gear",label:ge("tab.settings"),value:"settings"},{icon:`fa-light ${W}`,label:ge("tab.sequences"),value:"sequences"},{icon:"fa-light fa-icons",label:ge("tab.user_interface"),value:"user-interface"},{icon:`fa-light ${C}`,label:ge("tab.button_mapping"),value:"button-mapping"}]}),D=r(pe),E=r(!1),U=ne(()=>E.value==!0?"slide-tab-right":"slide-tab-left");function ie(W){const C=x.value.findIndex(ee=>ee.value==D.value.value),c=x.value.findIndex(ee=>ee.value==W.value);E.value=c<C,D.value=W}return(W,C)=>(d(),X(Wa,null,{default:J(()=>[t("div",vs,[t("div",fs,[n(x)?(d(),X(la,{key:0,onItemClick:ie,"list-data":n(x),"active-tab":D.value},null,8,["list-data","active-tab"])):P("",!0)]),t("div",gs,[t("div",ps,[k(oe,{name:U.value},{default:J(()=>[F(t("div",ys,[k(xi,{"activity-id":R.activity_id,active:D.value.value=="settings"},null,8,["activity-id","active"])],512),[[ae,D.value.value=="settings"]])]),_:1},8,["name"]),k(oe,{name:U.value},{default:J(()=>[F(t("div",_s,[k(Bn,{"activity-id":R.activity_id,active:D.value.value=="sequences"},null,8,["activity-id","active"])],512),[[ae,D.value.value=="sequences"]])]),_:1},8,["name"]),k(oe,{name:U.value},{default:J(()=>[F(t("div",ms,[k(ds,{"activity-id":R.activity_id,"active-tab":D.value.value},null,8,["activity-id","active-tab"])],512),[[ae,D.value.value=="user-interface"||D.value.value=="button-mapping"]])]),_:1},8,["name"])])])])]),_:1}))}});export{Es as default}; | |
| 2 | - | //# sourceMappingURL=EditActivityView-CJsbOUfl.js.map | |
| 1 | + | import{k as at,r,w as Le,c as ne,y as dt,A as $,B as d,I as F,D as t,E as k,C as Z,Q as X,K as P,L as q,M as re,O as tt,ak as Da,u as n,T as oe,H as J,J as ae,P as ia,n as Ua,i as Ha,N as et,al as xt,ap as za,R as Ja,ar as Wa}from"./vue-select-CSzUJrFr.js";import{u as vt,v as ft,aI as gt,aH as ja,m as kt,c as na,n as Fa,a0 as xa,a1 as pt,i as ut,a3 as Kt,a4 as st,j as Ka,a5 as Qa,_ as Qt,ai as Ct,ag as Xt,aL as Xa,ad as Ya,J as Za,o as S,K as ei,af as ti,A as sa,h as qt,N as ai,aM as fe,aN as ii,an as ot,ab as Yt,aO as ni,aP as Zt,b as si,aj as li,aA as oi,z as la,aB as ui,aC as ci,aD as ri,q as lt,x as di,V as ct,W as rt,d as vi,l as ea}from"./index-C1Y9Q2v_.js";import{_ as ta}from"./InfoPanel.vue_vue_type_script_setup_true_lang-Daj1vCFO.js";import{_ as fi,a as gi}from"./SelectVoiceAssistantProfile.vue_vue_type_script_setup_true_lang-CKqJ88sp.js";import{u as pi,_ as aa,a as yi}from"./AddCommand.vue_vue_type_script_setup_true_lang-Drs9F3BK.js";import{u as _i,_ as mi,g as hi,a as bi,b as wi,c as $i,v as ki,d as Ci,e as qi}from"./ButtonList.vue_vue_type_script_setup_true_lang-Canw95fQ.js";import{_ as Si}from"./add-page-8VHq_I3u.js";import"./UCColorTemp.vue_vue_type_script_setup_true_lang-BwXTO9iw.js";import"./_plugin-vue_export-helper-DlAUqK2U.js";import"./ColorPicker.vue_vue_type_script_setup_true_lang-Clr8ZC9V.js";const Ai={class:"ep-settings__form__wrapper"},Ii={class:"ep-settings__form__header"},Ei={class:"ep-settings__form__state"},Ni={key:0,class:"ep-settings__form__state__text"},Pi={class:"select-extra"},Li={class:"select-extra__text"},Ti={class:"select-extra__label"},Oi={class:"select-voice-assistant-input-wrapper"},Vi={class:"select-extra"},Ri={class:"select-extra__text"},Bi={class:"select-extra__label"},Gi={key:0,class:"select-extra"},Mi={class:"select-extra__text"},Di={class:"select-extra__label"},Ui={class:"ep-settings__form__description"},Hi={href:"https://support.unfoldedcircle.com/hc/en-us/articles/24061019101596",target:"_blank",class:"voice-assistant-support-link"},zi={class:"ep-settings__form__info-panel-wrapper"},Ji={class:"ep-settings__included-entities panel-col panel-col--60"},Wi={class:"ep-settings__included-entities__wrapper"},ji={class:"ep-settings__available-entities__wrapper"},Fi={class:"ep-settings__available-entities__header"},xi=at({__name:"EditActivitySettings",props:{activityId:{type:String,required:!0},active:{type:Boolean,default:!1}},setup(R){vt();const{updateObjectByKeys:ge,standardizeLangTexts:pe,isNonEmptyObject:x}=pt(),{isSmallScreen:D}=ft(),E=gt(),U=ja(),ie=kt(),W=na(),C=R,c=r(null),ee=r([]),y=r({}),O=r(!1),se=r([]),ye=r([]),te=r([]),z=r([]),B=r([]),I=r(),V=r(),K=r({searchText:"",entityTypes:"",instances:""}),Q=r([]),qe=r(null),le=r({limit:Fa()??20,page:1}),ue=r(!1);E.$onAction(({name:i,args:o,after:_})=>{i==="socketUpdate"&&_(async()=>{const{entity_id:A,event_type:T}=o[0];if(A===C.activityId){if(T==="DELETE")xa.push({name:"activities-macros"});else if(A===C.activityId&&T==="CHANGE"&&o[0]&&o[0].new_state){const de=ge(JSON.parse(JSON.stringify(c.value)),o[0].new_state);ce(de,!1)}}})}),ie.$subscribe((i,o)=>{se.value=o.configuredEntities,z.value=o.instances}),W.$subscribe((i,o)=>{a()}),Le(()=>le.value.limit,i=>{ei(i)}),Le(O,i=>{i&&Ua(()=>{const o=V.value;if(!ti()&&o){const _=o.querySelector("input");_==null||_.focus()}})});const v=ne(()=>{var i,o;return c.value&&c.value.attributes&&(((i=c.value.attributes)==null?void 0:i.state)=="ON"||((o=c.value.attributes)==null?void 0:o.state)=="RUNNING")}),l=ne(()=>ee.value.map(i=>({label:ut(i.name),value:i.group_id}))),w=ne(()=>te.value?B.value&&B.value.length>0:!1),N=ne(()=>Q.value.find(i=>{var o,_,A,T;return i.entity_id===(((T=(A=(_=(o=c.value)==null?void 0:o.options)==null?void 0:_.voice_assistant)==null?void 0:A.target)==null?void 0:T.entity_id)??"")})),G=ne(()=>{var i;return((i=N.value)==null?void 0:i.profiles)??[]});function ce(i,o=!1){var be,we,H,Y,Ae,$e;if(!i||!x(i))return!1;const _=i,A=((be=y.value.name)==null?void 0:be.langCode)??Kt(),T=((we=y.value.description)==null?void 0:we.langCode)??Kt();c.value=JSON.parse(JSON.stringify(_));const de=st(_.name,A,!o),Se=st(_.description,T,!o);y.value={icon:_.icon||Ka(_),name:{value:de.value,langCode:de.lang},description:{value:Se.value,langCode:Se.lang},preventSleep:((H=_.options)==null?void 0:H.prevent_sleep)??!1,readyCheck:((Y=_.options)==null?void 0:Y.ready_check)??!0,activityGroup:(Ae=_.options)!=null&&Ae.activity_group?{label:ut(_.options.activity_group.name),value:_.options.activity_group.group_id}:{label:"",value:""}},te.value=(($e=_.options)==null?void 0:$e.included_entities)??[],B.value=te.value.filter(_e=>_e.available===!1).map(_e=>_e.entity_id),I.value&&I.value.updateSelected(te.value)}function Te(i){if(y.value.icon=i.value,!c.value||c.value==null)return;const o={icon:y.value.icon};me(o)}function He(i){if(!c.value||c.value==null)return;const _={name:pe({...c.value.name||{},[i.langCode]:i.value},i.langCode)};me(_)}function Ne(i){if(!c.value||c.value==null)return;const _={description:pe({...c.value.description||{},[i.langCode]:i.value},i.langCode)};me(_)}async function ze(){if(!(!c.value||c.value==null||!c.value.options))try{c.value=await E.update(c.value.entity_id,{options:{prevent_sleep:y.value.preventSleep}})}catch(i){S(i,"activity.settings.update")}}async function Oe(){if(!(!c.value||c.value==null||!c.value.options))try{c.value=await E.update(c.value.entity_id,{options:{ready_check:y.value.readyCheck}})}catch(i){S(i,"activity.settings.update")}}async function Pe(i){var o,_,A,T,de,Se,be,we,H;try{if((A=(_=(o=c.value)==null?void 0:o.options)==null?void 0:_.activity_group)!=null&&A.group_id){const Ae=await U.getActivityGroup((Se=(de=(T=c.value)==null?void 0:T.options)==null?void 0:de.activity_group)==null?void 0:Se.group_id),_e=(((be=Ae.activities)==null?void 0:be.filter(Fe=>{var Ie;return Fe.entity_id!=((Ie=c.value)==null?void 0:Ie.entity_id)}))||[]).map(Fe=>Fe.entity_id);await U.update(Ae.group_id,{activity_ids:_e})}if(i!=null&&i.value&&((we=c.value)!=null&&we.entity_id)){const Ae=await U.getActivityGroup(i.value),$e=((H=Ae.activities)==null?void 0:H.map(_e=>_e.entity_id))||[];$e.push(c.value.entity_id),await U.update(Ae.group_id,{activity_ids:$e})}const Y=await E.getActivity(C.activityId);ce(Y)}catch(Y){S(Y)}}async function me(i){if(c.value)try{const o=await E.update(c.value.entity_id,i);ce(o)}catch(o){S(o,"activity.settings.update"),M()}}function Re(i){y.value.name.langCode=i,c.value&&(y.value.name.value=st(c.value.name,i,!0).value)}function Je(i){y.value.description.langCode=i,c.value&&(y.value.description.value=st(c.value.description,i,!0).value)}async function We(){try{ee.value=await U.getAll()}catch(i){S(i)}}async function Be(i=!1){try{se.value=await ie.getConfiguredEntities(null,i),z.value=await ie.getInstances()}catch(o){S(o)}}async function Ge(i){if(!c.value)return;const o=te.value.length!=i.length;te.value=i;const _={options:{entity_ids:te.value.map(A=>A.entity_id)}};try{c.value=await E.update(c.value.entity_id,_),o&&await he(!0)}catch(A){S(A),M()}}function Me(i){const o=JSON.parse(JSON.stringify(te.value)).concat(i);Ge(o)}function je(){Be(!0)}function Qe(i){K.value=i,he(!0)}async function he(i=!1){i===!0&&(le.value.page=1);let o=K.value.searchText;try{const _=await ie.getConfiguredEntitiesByPageByLimit(K.value.instances||"",!1,le.value.page,le.value.limit,o,K.value.entityTypes,C.activityId);ye.value=_.data.configuredEntities;const A=_.headers;if(A){const T=Number(A["pagination-limit"]),de=T<=Number(A["pagination-count"])?le.value.limit:T;le.value={count:Number(A["pagination-count"])||0,limit:de||0,page:Number(A["pagination-page"])||0}}}catch(_){console.error(_)}}function Ve(i){le.value.page=i,he()}function u(i){le.value.page=1,le.value.limit=i,he()}function a(){var i,o,_,A;Q.value=((i=W.$state.list)==null?void 0:i.voiceAssistants)??[],qe.value=((A=(_=(o=W.$state.config)==null?void 0:o.voice)==null?void 0:_.voice_assistant)==null?void 0:A.active)??null}async function b(i){if(!c.value||c.value==null||!c.value.options)return;let o={};i!=null&&(o={entity_id:i.entity_id});try{c.value=await E.update(c.value.entity_id,{options:{voice_assistant:{...Object.keys(o).length>0&&{target:o}}}})}catch(_){S(_,"activity.settings.update")}}async function p(i){var _,A;if(!c.value||c.value==null||!c.value.options)return;let o={};i!=null?o={entity_id:((_=N.value)==null?void 0:_.entity_id)??"",profile_id:i.id}:o={entity_id:((A=N.value)==null?void 0:A.entity_id)??""};try{c.value=await E.update(c.value.entity_id,{options:{voice_assistant:{target:o}}})}catch(T){S(T,"activity.settings.update")}}async function M(){ue.value=!0;try{const i=await E.getActivity(C.activityId);await We(),await Be(),ce(i,!0),await he(),await W.getVoiceAssistants(!0)}catch(i){S(i)}ue.value=!1}return dt(async()=>{await M(),a()}),(i,o)=>{var A,T,de,Se,be,we,H;const _=ia("overflow-indicator");return d(),$("div",{class:Z(["ep-settings",{"ep-settings--has-info-panels":w.value&&v.value}])},[F((d(),$("div",{class:Z(["ep-settings__form panel-col panel-col--40",{"ep-settings__form--has-info-panel":w.value||v.value}])},[t("div",Ai,[t("div",Ii,[(d(),X(Qa,{key:y.value&&y.value.icon?y.value.icon:"fa-light fa-clapperboard",value:y.value&&y.value.icon?y.value.icon:"",fallback:"fa-light fa-clapperboard","change-callback":Te,"has-tv-channel":!0},null,8,["value"])),t("span",Ei,[t("span",{class:Z(["ep-settings__form__state__icon",{"ep-settings__form__state__icon--active":v.value}])},o[7]||(o[7]=[t("i",{class:"fa-light fa-clapperboard"},null,-1)]),2),c.value&&c.value.attributes&&c.value.attributes.state?(d(),$("span",Ni,q(i.$t("activity.edit.activity_state",{state:i.$t(`activity.edit.state.${c.value.attributes.state.toLowerCase()}`,c.value.attributes.state.toLowerCase())})),1)):P("",!0)])]),y.value.name?(d(),X(Qt,{key:0,modelValue:y.value.name,"onUpdate:modelValue":o[0]||(o[0]=Y=>y.value.name=Y),onSubmit:He,onChangeLang:Re,translations:(A=c.value)==null?void 0:A.name,"has-lang":!0,"full-w":!0,label:i.$t("form.name")},null,8,["modelValue","translations","label"])):P("",!0),y.value.description?(d(),X(Qt,{key:1,modelValue:y.value.description,"onUpdate:modelValue":o[1]||(o[1]=Y=>y.value.description=Y),onSubmit:Ne,onChangeLang:Je,translations:(T=c.value)==null?void 0:T.description,type:"textarea","has-lang":!0,"full-w":!0,label:i.$t("form.description")},null,8,["modelValue","translations","label"])):P("",!0),t("div",Pi,[t("div",Li,[t("span",Ti,q(i.$t("activity.edit.activity_group.label")),1)]),y.value.activityGroup?(d(),X(Ct,{key:0,modelValue:y.value.activityGroup,"onUpdate:modelValue":o[2]||(o[2]=Y=>y.value.activityGroup=Y),onSelect:Pe,options:l.value,position:"right",light:!0,"dynamic-width":!0,"dynamic-position":!0},null,8,["modelValue","options"])):P("",!0)]),o[9]||(o[9]=t("hr",null,null,-1)),typeof y.value.preventSleep<"u"?(d(),X(Xt,{key:2,modelValue:y.value.preventSleep,"onUpdate:modelValue":o[3]||(o[3]=Y=>y.value.preventSleep=Y),onChange:ze,label:i.$t("activity.edit.prevent_sleep.label"),description:i.$t("activity.edit.prevent_sleep.description"),"full-w":!0,light:!0},null,8,["modelValue","label","description"])):P("",!0),o[10]||(o[10]=t("hr",null,null,-1)),t("div",null,[t("div",Oi,[t("div",Vi,[t("div",Ri,[t("span",Bi,q(i.$t("settings.voice_control.voice_assistant.title")),1)]),k(fi,{onSave:b,value:N.value??null,options:Q.value},null,8,["value","options"])]),G.value&&G.value.length>0?(d(),$("div",Gi,[t("div",Mi,[t("span",Di,q(i.$t("settings.voice_control.voice_assistant.profile.title")),1)]),k(gi,{onSave:p,"active-id":((we=(be=(Se=(de=c.value)==null?void 0:de.options)==null?void 0:Se.voice_assistant)==null?void 0:be.target)==null?void 0:we.profile_id)??"",options:G.value,"preferred-profile-id":((H=N.value)==null?void 0:H.preferred_profile)??""},null,8,["active-id","options","preferred-profile-id"])])):P("",!0)]),t("p",Ui,[!Q.value||Q.value.length<1?(d(),$(re,{key:0},[tt(q(i.$t("settings.voice_control.voice_assistant.description.no_items")),1)],64)):qe.value!=null?(d(),$(re,{key:1},[tt(q(i.$t("activity.voice_assistant.override")),1)],64)):(d(),$(re,{key:2},[tt(q(i.$t("activity.voice_assistant.select")),1)],64))]),t("a",Hi,[o[8]||(o[8]=t("i",{class:"fa-light fa-memo-circle-info"},null,-1)),t("span",null,q(i.$t("settings.voice_control.voice_assistant.support_link")),1)])]),o[11]||(o[11]=t("hr",null,null,-1)),typeof y.value.readyCheck<"u"?(d(),X(Xt,{key:3,modelValue:y.value.readyCheck,"onUpdate:modelValue":o[4]||(o[4]=Y=>y.value.readyCheck=Y),onChange:Oe,label:i.$t("activity.edit.ready_check.label"),description:i.$t("activity.edit.ready_check.description"),"full-w":!0,light:!0},null,8,["modelValue","label","description"])):P("",!0),R.active&&!O.value?(d(),X(Da,{key:4,to:"body",disabled:!n(D)},[t("div",zi,[k(oe,{name:"opacity-fast"},{default:J(()=>[F(k(ta,{type:"warning",icon:"fa-skull-crossbones",text:i.$t("activity.edit.entities_no_exist_info")},null,8,["text"]),[[ae,w.value]])]),_:1}),k(oe,{name:"opacity-fast"},{default:J(()=>[F(k(ta,{text:i.$t("activity.edit.editing_info")},null,8,["text"]),[[ae,v.value]])]),_:1})])],8,["disabled"])):P("",!0)])],2)),[[_]]),t("div",Ji,[t("div",Wi,[k(Xa,{ref_key:"actiIncludedList",ref:I,onEntityListChanged:Ge,onReloadEntities:je,onClickAdd:o[5]||(o[5]=Y=>O.value=!0),entities:te.value,"dangling-entities":B.value,instances:z.value,"show-button-add":O.value==!1,"drag-group":"activity-entities",loading:ue.value,"text-add-first-descr":i.$t("activity.edit.empty")+" "+i.$t("entity.add_first_btn_below")},null,8,["entities","dangling-entities","instances","show-button-add","loading","text-add-first-descr"])])]),k(oe,{name:O.value==!0?"slide-tab-right":"slide-tab-left"},{default:J(()=>[F(t("div",{ref_key:"actiAvailableEntities",ref:V,class:"ep-settings__available-entities panel-col panel-col--40"},[t("div",ji,[t("div",Fi,[t("button",{onClick:o[6]||(o[6]=Y=>O.value=!1),class:"button button--blank button--icon"},o[12]||(o[12]=[t("i",{class:"fa-light fa-arrow-left"},null,-1)])),t("span",null,q(i.$t("activity.edit.add_entities")),1)]),k(Ya,{onAddEntities:Me,onChangeFilter:Qe,onReloadEntities:je,onChangePage:Ve,onChangePerPage:u,pagination:le.value,"all-entities":ye.value,instances:z.value,"drag-group":"activity-entities","has-quick-options":!0,parent:"edit-activity","exclude-entity-types":[n(Za).sensor]},null,8,["pagination","all-entities","instances","exclude-entity-types"])])],512),[[ae,O.value==!0]])]),_:1},8,["name"])],2)}}}),Ki={class:"ep-sequences ep-sequences--activity"},Qi={class:"ep-sequences__selector"},Xi=["alt"],Yi={key:2,class:"fa-light fa-check sequence-list__icon"},Zi=["disabled"],en={key:0,class:"ep-sequences__list panel-col"},tn={class:"sequence-list"},an={class:"sequence-list__header"},nn={class:"sequence-list__header__row sequence-list__header__row--descr-mobile"},sn={class:"sequence-list__header__description"},ln={class:"sequence-list__header__row sequence-list__header__row--title"},on={class:"sequence-list__header__base-items"},un=["alt"],cn={key:2,class:"fa-light fa-check sequence-list__icon"},rn=["disabled"],dn={class:"sequence-list__header__triggers"},vn=["disabled"],fn=["disabled"],gn=["disabled"],pn=["disabled"],yn={class:"sequence-list__header__row sequence-list__header__row--descr-desktop"},_n={class:"sequence-list__header__description"},mn={class:"sequence-list__no-command"},hn={key:1,class:"ep-sequences__list panel-col"},bn={class:"sequence-list"},wn={class:"sequence-list__header"},$n={class:"sequence-list__header__row sequence-list__header__row--descr-mobile"},kn={class:"sequence-list__header__description"},Cn={class:"sequence-list__header__row sequence-list__header__row--title"},qn={class:"sequence-list__header__base-items"},Sn=["alt"],An={key:2,class:"fa-light fa-check sequence-list__icon"},In=["disabled"],En={class:"sequence-list__header__triggers"},Nn=["disabled"],Pn=["disabled"],Ln=["disabled"],Tn=["disabled"],On={class:"sequence-list__header__row sequence-list__header__row--descr-desktop"},Vn={class:"sequence-list__header__description"},Rn={class:"sequence-list__no-command"},Bn=at({__name:"EditActivitySequences",props:{activityId:{type:String,required:!0},active:{type:Boolean,default:!1}},setup(R){const ge=sa.integrations,pe={type:null,state:"",steps:[],totalSteps:0},{t:x}=qt();vt();const{updateExistingObjectKeys:D,isNonEmptyObject:E}=pt(),{isSmallScreen:U}=ft(),ie=gt(),W=kt(),{activeSequence:C,updateActiveSequence:c,clearActiveSequence:ee,hasActiveSequence:y,getSequenceItemStatus:O}=pi(pe),se=R,{configuredEntities:ye,commands:te}=ai(W),z=r(null),B=r(Te()),I=r(He()),V=r([]),K=r([]),Q=r(!1),qe=r(!1),le=r("on"),ue=r(),v=r(),l=r(),w=r(!1),N=r([{value:"on_sequence",label:x("sequence.on_sequence.title")},{value:"off_sequence",label:x("sequence.off_sequence.title")}]),G=r({value:"on_sequence",label:x("sequence.on_sequence.title")});ie.$onAction(({name:u,args:a,after:b})=>{u==="socketUpdate"&&b(async()=>{const{entity_id:p,event_type:M}=a[0];if(p===se.activityId&&p===se.activityId&&M==="CHANGE"&&a[0]&&a[0].new_state){if(qe.value)return!1;const i=a[0].new_state;if(C.value.state===fe.RUNNING&&i.attributes&&i.attributes.state&&c(i.attributes),C.value.state===fe.RUNNING||C.value.state===fe.ERROR)return!1;if(se.active){w.value=!0;const o=D(JSON.parse(JSON.stringify(z.value)),i);ce(o),w.value=!1}}})}),Le(()=>se.active,(u,a)=>{u==!0&&a==!1&&Ve()});async function ce(u,a=!1){if(!u||!E(u))return!1;if(w.value=!0,z.value=u,a)try{await W.getConfiguredEntities(null,!0),await W.getCommandMetadata()}catch(b){S(b)}B.value=Te(),I.value=He(),ue.value&&(ue.value.updateEntity(z.value),ue.value.close()),w.value=!1}function Te(){var a,b;if(!z.value)return[];const u=((b=(a=z.value.options)==null?void 0:a.sequences)==null?void 0:b.on)||[];return Ne(u,"on")}function He(){var a,b;if(!z.value)return[];const u=((b=(a=z.value.options)==null?void 0:a.sequences)==null?void 0:b.off)||[];return Ne(u,"off")}function Ne(u,a){return ii(u,ye.value,te.value).map(b=>({...b,list:a}))}async function ze(u,a,b=[]){var i,o;const M=(u.list==="on"?B:I).value[u.pos];if(M.type===ni.delay)M.sequence.delay=a;else{let _=JSON.parse(JSON.stringify(M.sequence.command.params??{}));(Array.isArray(a)?a:[a]).forEach(T=>{T!=null&&T.paramName&&(_[T.paramName]=T.paramValue)}),b.length>0&&b.forEach(T=>{delete _[T]}),M.sequence.command={cmd_id:(i=u.cmd)==null?void 0:i.id,entity_id:(o=u.entity)==null?void 0:o.entity_id,params:_}}await Pe()}function Oe(u){le.value=u,ue.value.open()}async function Pe(){var p;if(!z.value)return;qe.value=!0;const u=(((p=z.value.options)==null?void 0:p.included_entities)??[]).map(M=>M.entity_id),a={...z.value.options,sequences:{on:Zt(B.value,u||[]),off:Zt(I.value,u||[])}},b={...z.value,options:a};try{await ie.update(z.value.entity_id,b)}catch(M){S(M,"activity.sequences.update"),await Ve()}try{const M=await ie.getActivity(se.activityId);await ce(M)}catch(M){S(M),await Ve()}qe.value=!1}async function me(){Pe()}function Re(u,a=!0){a?(V.value=[],u.forEach(b=>{V.value.push(b)})):(K.value=[],u.forEach(b=>{K.value.push(b)}))}function Je(u=!0){u?V.value=[]:K.value=[]}function We(u,a=!0){return a?V.value.findIndex(b=>b.pos===u.pos)>-1:K.value.findIndex(b=>b.pos===u.pos)>-1}function Be(u,a=!0){if(a){const b=V.value.findIndex(p=>p.pos===u.pos);b>-1?V.value.splice(b,1):V.value.push(u)}else{const b=K.value.findIndex(p=>p.pos===u.pos);b>-1?K.value.splice(b,1):K.value.push(u)}}function Ge(u,a=!0){let b=[];a?(b=B.value.filter(p=>p.pos!=u.pos),B.value=b,V.value=[]):(b=I.value.filter(p=>p.pos!=u.pos),I.value=b,K.value=[]),me()}function Me(u=!0){let a=[];u?(a=B.value.filter(b=>!V.value.some(p=>p.pos===b.pos)),B.value=a,V.value=[]):(a=I.value.filter(b=>!K.value.some(p=>p.pos===b.pos)),I.value=a,K.value=[]),me()}function je(u){G.value.label=u.label,G.value.value=u.value}function Qe(u){le.value=="on"?B.value.push(u):I.value.push(u),me(),ue.value.close()}async function he(u){if(u)try{C.value=JSON.parse(JSON.stringify(pe)),C.value.state=fe.RUNNING,C.value.type=u,await ge.executeEntityCommand(se.activityId,u)}catch(a){S(a),C.value.state=fe.ERROR}}async function Ve(){Q.value=!0;try{const u=await ie.getActivity(se.activityId);await ce(u,!0)}catch(u){S(u)}Q.value=!1}return dt(async()=>{se.active&&Ve()}),(u,a)=>{const b=ia("overflow-indicator");return d(),$("div",Ki,[t("div",Qi,[k(Ct,{modelValue:G.value,"onUpdate:modelValue":a[0]||(a[0]=p=>G.value=p),onSelect:je,options:N.value,position:"center",light:!0,disabled:n(y)()},null,8,["modelValue","options","disabled"]),n(C).type===(G.value.value=="on_sequence"?"on":"off")?(d(),$(re,{key:0},[n(C).state===n(fe).RUNNING?(d(),$("img",{key:0,src:ot,alt:u.$t("entity.state.running"),class:"img-loading img-loading--base"},null,8,Xi)):n(C).state===n(fe).ERROR?(d(),$(re,{key:1},[a[23]||(a[23]=t("i",{class:"fa-light fa-exclamation sequence-list__icon sequence-list__icon--error"},null,-1)),t("button",{onClick:a[1]||(a[1]=(...p)=>n(ee)&&n(ee)(...p)),class:"button button--secondary button--small sequence-list__button"},q(u.$t("ui.back_to_edit")),1)],64)):n(C).state===n(fe).DONE?(d(),$("i",Yi)):P("",!0)],64)):(d(),$("button",{key:1,onClick:a[2]||(a[2]=p=>he(G.value.value=="on_sequence"?"on":"off")),disabled:G.value.value=="on_sequence"?B.value.length<1:I.value.length<1,class:"button button--secondary button--icon"},a[24]||(a[24]=[t("i",{class:"fa-regular fa-play"},null,-1)]),8,Zi))]),!n(U)||G.value.value=="on_sequence"?(d(),$("div",en,[t("div",tn,[t("div",an,[t("div",nn,[t("p",sn,q(u.$t("sequence.on_sequence.description")),1)]),t("div",ln,[t("div",on,[t("h2",null,q(u.$t("sequence.on_sequence.title")),1),n(C).type==="on"?(d(),$(re,{key:0},[n(C).state===n(fe).RUNNING?(d(),$("img",{key:0,src:ot,alt:u.$t("entity.state.running"),class:"img-loading img-loading--base"},null,8,un)):n(C).state===n(fe).ERROR?(d(),$(re,{key:1},[a[25]||(a[25]=t("i",{class:"fa-light fa-exclamation sequence-list__icon sequence-list__icon--error"},null,-1)),t("button",{onClick:a[3]||(a[3]=(...p)=>n(ee)&&n(ee)(...p)),class:"button button--secondary button--small"},q(u.$t("ui.back_to_edit")),1)],64)):n(C).state===n(fe).DONE?(d(),$("i",cn)):P("",!0)],64)):(d(),$("button",{key:1,onClick:a[4]||(a[4]=p=>he("on")),disabled:B.value.length<1||n(y)(),class:"button button--secondary button--icon"},a[26]||(a[26]=[t("i",{class:"fa-regular fa-play"},null,-1)]),8,rn))]),t("div",dn,[t("button",{onClick:a[5]||(a[5]=p=>Oe("on")),disabled:n(y)("on"),class:"button button--secondary button--icon"},a[27]||(a[27]=[t("i",{class:"fa-light fa-plus"},null,-1)]),8,vn),B.value.length===V.value.length&&V.value.length>0?(d(),$("button",{key:0,onClick:a[6]||(a[6]=p=>Je(!0)),disabled:n(y)("on"),class:"button button--secondary button--icon button-assign"},a[28]||(a[28]=[t("i",{class:"fa-light fa-xmark"},null,-1)]),8,fn)):B.value.length>0?(d(),$("button",{key:1,onClick:a[7]||(a[7]=p=>Re(B.value,!0)),disabled:n(y)("on"),class:"button button--secondary button--icon button-assign"},a[29]||(a[29]=[t("i",{class:"fa-light fa-check"},null,-1)]),8,gn)):P("",!0),t("button",{onClick:a[8]||(a[8]=p=>Me(!0)),disabled:V.value.length<1||n(y)("on"),class:"button button--secondary button--icon"},a[30]||(a[30]=[t("i",{class:"fa-light fa-trash"},null,-1)]),8,pn)])]),t("div",yn,[t("p",_n,q(u.$t("sequence.on_sequence.description")),1)])]),t("div",{ref_key:"seqOnListBody",ref:v,class:"sequence-list__body"},[!Q.value&&B.value.length>0?F((d(),X(n(Yt),{key:0,modelValue:B.value,"onUpdate:modelValue":a[11]||(a[11]=p=>B.value=p),class:"sequence-list__items",group:"sequence-on","force-fallback":!0,"item-key":"id",onChange:me,handle:".sequence-item__drag"},{item:J(({element:p,index:M})=>[k(aa,{item:p,selected:We(p,!0),status:n(O)(M,"on"),onToggleCheckbox:a[9]||(a[9]=i=>Be(i,!0)),onChange:ze,onDelete:a[10]||(a[10]=i=>Ge(i,!0))},null,8,["item","selected","status"])]),_:1},8,["modelValue"])),[[b]]):P("",!0),k(oe,{name:"opacity-fast"},{default:J(()=>[F(t("div",mn,[t("h3",null,q(u.$t("sequence.add_first")),1),t("p",null,q(u.$t("sequence.on_sequence.empty"))+" "+q(u.$t("sequence.add_first_btn_below")),1),t("button",{onClick:a[12]||(a[12]=p=>Oe("on")),class:"button button--primary button--hybrid button--hybrid--reversed"},[tt(q(u.$t("ui.add"))+" ",1),a[31]||(a[31]=t("i",{class:"fa-light fa-plus"},null,-1))])],512),[[ae,B.value.length<1&&!Q.value]])]),_:1})],512)])])):P("",!0),!n(U)||G.value.value=="off_sequence"?(d(),$("div",hn,[t("div",bn,[t("div",wn,[t("div",$n,[t("p",kn,q(u.$t("sequence.off_sequence.description")),1)]),t("div",Cn,[t("div",qn,[t("h2",null,q(u.$t("sequence.off_sequence.title")),1),n(C).type==="off"?(d(),$(re,{key:0},[n(C).state===n(fe).RUNNING?(d(),$("img",{key:0,src:ot,alt:u.$t("entity.state.running"),class:"img-loading img-loading--base"},null,8,Sn)):n(C).state===n(fe).ERROR?(d(),$(re,{key:1},[a[32]||(a[32]=t("i",{class:"fa-light fa-exclamation sequence-list__icon sequence-list__icon--error"},null,-1)),t("button",{onClick:a[13]||(a[13]=(...p)=>n(ee)&&n(ee)(...p)),class:"button button--secondary button--small"},q(u.$t("ui.back_to_edit")),1)],64)):n(C).state===n(fe).DONE?(d(),$("i",An)):P("",!0)],64)):(d(),$("button",{key:1,onClick:a[14]||(a[14]=p=>he("off")),disabled:I.value.length<1||n(y)(),class:"button button--secondary button--icon"},a[33]||(a[33]=[t("i",{class:"fa-regular fa-play"},null,-1)]),8,In))]),t("div",En,[t("button",{onClick:a[15]||(a[15]=p=>Oe("off")),disabled:n(y)("off"),class:"button button--secondary button--icon"},a[34]||(a[34]=[t("i",{class:"fa-light fa-plus"},null,-1)]),8,Nn),I.value.length===K.value.length&&K.value.length>0?(d(),$("button",{key:0,onClick:a[16]||(a[16]=p=>Je(!1)),disabled:n(y)("off"),class:"button button--secondary button--icon button-assign"},a[35]||(a[35]=[t("i",{class:"fa-light fa-xmark"},null,-1)]),8,Pn)):I.value.length>0?(d(),$("button",{key:1,onClick:a[17]||(a[17]=p=>Re(I.value,!1)),disabled:n(y)("off"),class:"button button--secondary button--icon button-assign"},a[36]||(a[36]=[t("i",{class:"fa-light fa-check"},null,-1)]),8,Ln)):P("",!0),t("button",{onClick:a[18]||(a[18]=p=>Me(!1)),disabled:K.value.length<1||n(y)("off"),class:"button button--secondary button--icon"},a[37]||(a[37]=[t("i",{class:"fa-light fa-trash"},null,-1)]),8,Tn)])]),t("div",On,[t("p",Vn,q(u.$t("sequence.off_sequence.description")),1)])]),t("div",{ref_key:"seqOffListBody",ref:l,class:"sequence-list__body"},[!Q.value&&I.value.length>0?F((d(),X(n(Yt),{key:0,modelValue:I.value,"onUpdate:modelValue":a[21]||(a[21]=p=>I.value=p),class:"sequence-list__items",group:"sequence-off","force-fallback":!0,"item-key":"id",onChange:me,handle:".sequence-item__drag"},{item:J(({element:p,index:M})=>[k(aa,{item:p,selected:We(p,!1),status:n(O)(M,"off"),onToggleCheckbox:a[19]||(a[19]=i=>Be(i,!1)),onChange:ze,onDelete:a[20]||(a[20]=i=>Ge(i,!1))},null,8,["item","selected","status"])]),_:1},8,["modelValue"])),[[b]]):P("",!0),k(oe,{name:"opacity-fast"},{default:J(()=>[F(t("div",Rn,[t("h3",null,q(u.$t("sequence.add_first")),1),t("p",null,q(u.$t("sequence.off_sequence.empty"))+" "+q(u.$t("sequence.add_first_btn_below")),1),t("button",{onClick:a[22]||(a[22]=p=>Oe("off")),class:"button button--primary button--hybrid button--hybrid--reversed"},[tt(q(u.$t("ui.add"))+" ",1),a[38]||(a[38]=t("i",{class:"fa-light fa-plus"},null,-1))])],512),[[ae,I.value.length<1&&!Q.value]])]),_:1})],512)])])):P("",!0),z.value?(d(),X(yi,{key:2,onAddCommand:Qe,entity:z.value,"command-metadata":n(te),setting:w.value,ref_key:"elAddCommand",ref:ue},null,8,["entity","command-metadata","setting"])):P("",!0)])}}}),Gn=["title"],Mn={class:"remote-controller__tools"},Dn=["title"],Un=["title"],Hn=["title"],zn=["title"],Jn=["title"],Wn={class:"ui-page__head"},jn={class:"ui-page__name"},Fn={class:"ui-page__background"},xn={class:"ui-page__background__row"},Kn=["onClick"],Qn=["onClick"],Xn=["onClick"],Yn={class:"form-item form-item--checkbox-tick"},Zn=["id","checked"],es=["for"],ts={key:3,class:"ui-page__item__drag"},as={class:"ui-page__empty-list"},is=["onClick"],ns={class:"remote-controller__display__no-pages"},ss={class:"remote-controller__display__saving"},ls=at({__name:"ActivityRemote",props:{activity:{type:Object,required:!0},editButtonMapping:{type:Boolean,default:!1},highlightedRemoteButton:{type:Object,default:{}}},emits:["addPage","showPageList","update"],setup(R,{expose:ge,emit:pe}){const{t:x}=qt(),{sleep:D}=di(),{isSmallScreen:E,isMobileScreen:U}=ft(),{isNonEmptyObject:ie}=pt(),{getDeviceColor:W,getRemotControllerClasses:C}=oi();vt();const c=R,ee={label:x("ui.move"),value:"move"},y=[{label:x("ui.move"),value:"move"},{label:x("ui.edit"),value:"edit"},{label:x("ui.select"),value:"select"},{label:x("ui.test"),value:"test"}],O=si(),se=li(),ye=na(),te=gt(),z=kt(),B=sa.integrations,I=r(ee),V=r(null),K=r(""),Q=r(),qe=r(Lt()),{registerDragArea:le,registerGridItem:ue,pages:v,activePage:l,layouts:w,selectedItems:N,editButton:G,editButtonCoord:ce,editPopup:Te,newItemLocation:He,mediaPlayerMinHeight:Ne,setMediaPlayerMinHeight:ze,startButtonEdit:Oe,closeButtonEdit:Pe,toggleItemSelect:me,itemSelected:Re,movedGridItem:Je,resizedGridItem:We,addGridItem:Be,testWidgetPlacing:Ge,updateGridItem:Me,deleteGridItem:je,deleteGridItems:Qe,pasteGridItems:he,collectGridItems:Ve,buildLayout:u,getEmptyCells:a,isActivePageFull:b,preventCollision:p,isGridItemDragging:M,onGridMove:i,onGridNativeMove:o,getButtonSize:_,getEmptyItemStyle:A,resetNewItemMeta:T,isAddWidgetProgress:de}=_i(x,_a,Ze,Tt),Se=r([]),be=r(1),we=r([]),H=r({width:0,height:0,widgetMeta:{mediaPlayerMinHeight:Ne}}),Y=r([]),Ae=r(1),$e=r({label:"",value:""}),_e=r(!1),Fe=r("d"),Ie=r(!1),De=r(!1),xe=r(!1),yt=r(!1),St=r(),At=r(),It=r(),_t=r(),it=r(!0),mt=r(!1),ke=r(!1),Et=r(ye.$state.list.screenLayout.grid.max.height||12),ht=r(),Nt=r([]),Ue=r([]);ge({setActivePageById:Pt,isItemDragging:Ga,isSaving:Ma});const Xe=pe;Le(()=>c.activity,()=>{yt.value||Ke(c.activity)}),Le(G,async(e,s)=>{if(!s||!G.value||!ce.value)return;const g=ce.value.page,h=ce.value.index;v.value[g].items[h]=G.value,await Ze(g)},{deep:!0}),Le(v,()=>{Ot(),v.value[l.value]&&($e.value={label:v.value[l.value].name??"",value:v.value[l.value].page_id??""})}),Le(l,(e,s)=>{e!=s&&(N.value=[]),v.value[l.value]&&($e.value={label:v.value[l.value].name??"",value:v.value[l.value].page_id??""})});const oa=ne(()=>{var h,m,f,j;const e=(m=(h=v.value[l.value])==null?void 0:h.grid)==null?void 0:m.width;if(!e)return!1;const s=Math.ceil(Ne.value/(H.value.height/((j=(f=v.value[l.value])==null?void 0:f.grid)==null?void 0:j.height)));return Ge({size:{width:e,height:s},location:{x:1,y:1},type:"media_player"})}),ua=ne(()=>{var s,g;const e=[];for(let h=0;h<v.value.length;h++){const m=Array.from({length:(g=(s=v.value[h])==null?void 0:s.grid)==null?void 0:g.height},(f,j)=>j);e.push(m)}return e}),ca=ne(()=>{var s,g;const e=[];for(let h=0;h<v.value.length;h++){const m=Array.from({length:(g=(s=v.value[h])==null?void 0:s.grid)==null?void 0:g.width},(f,j)=>j);e.push(m)}return e}),ra=ne(()=>{let e="";return e+=De.value?"ui-page__content--selectable ":"",e}),Ye=ne(()=>{let e="";return E.value?e+="button--secondary button--icon":e+="button--tertiary button--hybrid",e}),da=ne(()=>{var e;return c.activity?(((e=c.activity.options)==null?void 0:e.included_entities)??[]).filter(s=>s.available===!1).map(s=>s.entity_id):[]}),va=ne(()=>{let e="**";return Ue.value.forEach(s=>{const g=Nt.value.find(h=>h.entity_id===s);e.length>2&&(e+=", "),e+=ut(g==null?void 0:g.name)||""}),x("entity.missing_entity.question_widget",{entities:`${e.replace(/[,\s]+$/g,"")}**`,count:Ue.value.length})});async function fa(){let e="",s=null;try{e=await ye.getDeviceModel()}catch(g){S(g)}try{s=await se.getSystemInfo()}catch(g){console.error(g)}(e==null?void 0:e.toLowerCase())=="ucr2"?(_e.value=!0,H.value.width=U.value?217:279,H.value.height=U.value?349:454):(_e.value=!1,H.value.width=U.value?228:292,H.value.height=U.value?329:429,s!=null&&s.serial_number&&(Fe.value=W(s.serial_number))),H.value.widgetMeta.mediaPlayerMinHeight=H.value.height/4,ze(H.value.widgetMeta.mediaPlayerMinHeight)}const ga=ne(()=>x("user_interface.pages.reset_page.question",{name:l.value!=null&&v.value[l.value]?v.value[l.value].name:""})),nt=ne(()=>v.value.map(e=>({label:e.name,value:e.page_id})));function Pt(e){const s=v.value.findIndex(g=>g.page_id===e);s>-1&&(l.value=s)}function Lt(){var e,s;return{name:ut((e=V.value)==null?void 0:e.name)||"",icon:((s=V.value)==null?void 0:s.icon)||"uc:clapperboard"}}async function Tt(){var e,s,g;w.value=(((g=(s=(e=V.value)==null?void 0:e.options)==null?void 0:s.user_interface)==null?void 0:g.pages)||[]).map(h=>u(h.items))}function Ke(e){var s,g,h,m,f;if(!e||!ie(e))return!1;if(V.value=JSON.parse(JSON.stringify(e)),qe.value=Lt(),v.value=((h=(g=(s=V.value)==null?void 0:s.options)==null?void 0:g.user_interface)==null?void 0:h.pages)||[],Tt(),K.value=((m=V.value)==null?void 0:m.icon)||"",Se.value=((f=ye.$state.list.buttonLayout[0])==null?void 0:f.buttons)||[],be.value=be.value*-1,Ot(),pa(),ya(),de()==!0){const j=v.value[l.value].items.length-1;Q.value.update(v.value[l.value].items[j])}}function Ot(){for(const e of v.value)e.name||(e.name="New page")}function pa(){const e=[];for(let s=0;s<v.value.length;s++){let g=1,h=1;const m=v.value[s].items;for(let f=0;f<m.length;f++){const j=m[f].location.y+(m[f].size&&m[f].size.height?m[f].size.height:1);if(j>h&&(h=j),m[f].type!="media_player"){const ve=m[f].location.x+(m[f].size&&m[f].size.width?m[f].size.width:1);ve>g&&(g=ve)}}e.push({width:g,height:h})}Y.value=e}function ya(){we.value=a()}async function _a(){if(!V.value)return;const e=v.value.map(h=>h.page_id),s={name:"new page",items:[]};ke.value=!0;try{const h=await te.addUiPage(V.value,s);Ke(h)}catch(h){S(h)}const g=v.value.findIndex(h=>!e.includes(h.page_id));l.value=Math.max(g,0),Ae.value++,ke.value=!1}const bt={};async function Ze(e,s=!1){if(ke.value=!0,!bt[e]){bt[e]=!0,w.value[e]=u(v.value[e].items);try{const g=await te.updateUiPage(c.activity.entity_id,v.value[e]);s||Ke(g),Xe("update")}catch(g){Q.value.isActive()?Q.value.closeModal():Pe(),Ke(c.activity),S(g,"activity.user_interface.update",ht.value)}bt[e]=!1,await D(500),ke.value=!1}}function ma(e){const{page:s,index:g}=ce.value;return ki(v.value[s].items,g,e)}function ha(e){return H.value.height/e}async function ba(){yt.value=!0;try{await Qe(N.value),wt()}catch(e){S(e)}yt.value=!1,await D(200),Ke(c.activity)}async function Vt(){var m;const s=((O.$state.clipboard.activity.pageItems||[])??[]).map(f=>{var j;return(j=f.command)==null?void 0:j.entity_id}).filter(f=>!!f),g=[...new Set(s)],h=(((m=c.activity.options)==null?void 0:m.included_entities)??[]).map(f=>f.entity_id);if(Ue.value=g.filter(f=>!h.includes(f)),Ue.value.length>0&&_t.value)try{Nt.value=await z.getConfiguredEntities(null,!1),_t.value.open()}catch(f){S(f)}else Rt()}async function Rt(){const e=O.$state.clipboard.activity.pageItems||[];if(e){try{await he(e),O.setClipboard([],"activity","pageItems")}catch(s){s&&s.message&&typeof s.message=="string"?S(s.message):S(s)}wt()}}async function wa(){var g;if(!c.activity)return;const e=(((g=c.activity.options)==null?void 0:g.included_entities)??[]).map(h=>h.entity_id),s={options:{entity_ids:JSON.parse(JSON.stringify(e.concat(Ue.value)))}};ke.value=!0;try{await te.update(c.activity.entity_id,s),await Rt(),Xe("update")}catch(h){S(h)}ke.value=!1}function $a(){if(!G.value)return!1;const e=new Array(G.value);O.setClipboard(e,"activity","pageItems")}function ka(){const e=Ve(N.value);O.setClipboard(e,"activity","pageItems"),wt()}function wt(){N.value=[]}function Ca(){St.value.open()}function qa(){At.value.open()}function Sa(){It.value.open()}async function Aa(){if(l.value==null)return!1;const e=v.value[l.value];if(!e)return!1;ct(rt.SAVING),await D(1e3),ke.value=!0;try{await te.updateUiPage(c.activity.entity_id,{...e,items:[]}),await te.getActivity(c.activity.entity_id),ct(rt.SUCCESS),Xe("update")}catch(s){S(s,"activity.user_interface.update",ht.value)}ke.value=!1}async function Ia(e){mt.value=!0;let s=v.value[l.value].grid.width,g=v.value[l.value].grid.height;e.width<s&&await Bt(e.width),v.value[l.value].grid.width=e.width,v.value[l.value].grid.height=e.height,await Ze(l.value),e.width>s&&await Bt(e.width),e.height>g&&await Ea(e.height),mt.value=!1}async function Bt(e){let s=!1;const g=v.value[l.value].items;for(const h of g)h.type=="media_player"&&(h.size.width=e,s=!0);s&&await Ze(l.value)}async function Ea(e){let s=!1;const g=v.value[l.value].items,h=Math.ceil(Ne.value/(H.value.height/e));for(const m of g){const f=h-m.size.height;if(m.type=="media_player"&&f>0){m.size.height=m.size.height+f;let j=!1;for(const ve of g)m.location.x!=ve.location.x&&m.location.y!=ve.location.y&&m.location.y+m.size.height>=ve.location.y&&(j=!0);if(j)for(const ve of g)m.location.y<ve.location.y&&(ve.location.y=ve.location.y+f);s=!0}}s&&await Ze(l.value)}function Na(){Q.value.open()}async function Pa(e,s){He.value={x:e,y:s},O.$state.clipboard.activity.pageItems.length>0?await Vt():Q.value.open()}function La(){Xe("addPage")}async function Ta(e){try{await Be(e,H.value.height)}catch(s){Q.value.closeModal(),s&&s.message&&typeof s.message=="string"?S(s.message):S(s)}}function Oa(){Xe("showPageList")}function Va(e){I.value=e,Ie.value=!1,De.value=!1,xe.value=!1,e.value=="edit"?Ie.value=!0:e.value=="select"?De.value=!0:e.value=="test"&&(xe.value=!0),e.value!="select"&&(N.value=[])}function Gt(e="icon",s,g=!1){var h,m,f,j;return g&&e==="media_player"?Math.ceil(Ne.value/(H.value.height/((m=(h=v.value[s])==null?void 0:h.grid)==null?void 0:m.height)))||3:e==="media_player"?((j=(f=v.value[s])==null?void 0:f.grid)==null?void 0:j.width)||4:1}function Ra(e){var s;return da.value.includes((s=e.command)==null?void 0:s.entity_id)}async function Ba(e){if(!(!e.command||!e.command.entity_id||!e.command.cmd_id||!e.command.params))try{await B.executeEntityCommand(e.command.entity_id,e.command.cmd_id,e.command.params)}catch(s){S(s,"entity.execute_command")}}function Ga(){return M.value}function Ma(){return ke.value}return dt(async()=>{it.value=!0;try{await fa(),Ke(c.activity)}catch(e){S(e)}it.value=!1}),(e,s)=>{const g=xt("grid-item"),h=xt("grid-layout");return d(),$(re,null,[t("div",{class:Z(["remote-controller remote-controller--activity",it.value?"":n(C)(_e.value,Fe.value)])},[t("div",{class:Z(["remote-controller__page-triggers",{"remote-controller__page-triggers--no-pages":nt.value.length<1}])},[nt.value&&nt.value.length>0?(d(),X(Ct,{key:0,modelValue:$e.value,"onUpdate:modelValue":s[0]||(s[0]=m=>$e.value=m),onSelect:s[1]||(s[1]=m=>{Pt(m.value)}),options:nt.value,light:!0},null,8,["modelValue","options"])):P("",!0),t("button",{onClick:Oa,title:e.$t("ui.edit"),class:"button button--secondary button--icon"},s[6]||(s[6]=[t("i",{class:"fa-light fa-edit"},null,-1)]),8,Gn)],2),k(oe,{name:"opacity"},{default:J(()=>[F(t("div",Mn,[F(t("button",{onClick:Na,title:e.$t("ui.add"),class:Z(["button",Ye.value])},[s[7]||(s[7]=t("i",{class:"fa-light fa-plus"},null,-1)),t("span",null,q(e.$t("ui.add")),1)],10,Dn),[[ae,n(v).length>0&&n(b)()==!1]]),n(v)[n(l)]?(d(),X(mi,{key:0,"actual-dimensions":{width:n(v)[n(l)].grid.width,height:n(v)[n(l)].grid.height},"min-dimensions":Y.value[n(l)]||{width:1,height:1},onSave:Ia},null,8,["actual-dimensions","min-dimensions"])):P("",!0),t("button",{onClick:Sa,title:e.$t("ui.reset"),class:Z(["button button-reset",Ye.value])},[s[8]||(s[8]=t("i",{class:"fa-light fa-arrow-rotate-left"},null,-1)),t("span",null,q(e.$t("ui.reset")),1)],10,Un),F(t("button",{onClick:Vt,title:e.$t("ui.paste"),class:Z(["button",Ye.value])},[s[9]||(s[9]=t("i",{class:"fa-light fa-paste"},null,-1)),t("span",null,q(e.$t("ui.paste")),1)],10,Hn),[[ae,n(O).$state.clipboard.activity.pageItems.length>0]]),F(t("button",{onClick:ka,title:e.$t("ui.copy"),class:Z(["button",Ye.value])},[s[10]||(s[10]=t("i",{class:"fa-light fa-copy"},null,-1)),t("span",null,q(e.$t("ui.copy")),1)],10,zn),[[ae,n(N).length>0]]),F(t("button",{onClick:qa,title:e.$t("ui.delete"),class:Z(["button",Ye.value])},[s[11]||(s[11]=t("i",{class:"fa-light fa-trash"},null,-1)),t("span",null,q(e.$t("ui.delete")),1)],10,Jn),[[ae,n(N).length>0]])],512),[[ae,R.editButtonMapping==!1&&n(v).length>0]])]),_:1}),k(oe,{name:"opacity"},{default:J(()=>[F(k(la,{onItemClick:Va,"list-data":y,"active-tab":I.value,responsive:!1,compact:!0},null,8,["active-tab"]),[[ae,R.editButtonMapping==!1&&n(v).length>0]])]),_:1}),t("div",{ref_key:"elRemoteControllerDevice",ref:ht,class:Z(["remote-controller__device",{"remote-controller__device--button-mapping":R.editButtonMapping}])},[t("div",{class:Z(["remote-controller__display",{"remote-controller__display--single-page":n(v).length<1,"remote-controller__display--disabled":R.editButtonMapping}])},[k(n(ui),{modelValue:n(l),"onUpdate:modelValue":s[4]||(s[4]=m=>Ha(l)?l.value=m:null),"items-to-show":1,"items-to-scroll":1,"wrap-around":!1,"mouse-drag":!1,"touch-drag":!1,"snap-align":"start",class:"remote-controller__carousel"},{addons:J(()=>[k(n(ri))]),default:J(()=>[(d(!0),$(re,null,et(n(v),(m,f)=>(d(),X(n(ci),{key:f,class:Z(["ui-page",{"ui-page--v2":_e.value}])},{default:J(()=>{var j,ve,Mt,Dt,Ut,Ht,zt,Jt,Wt,jt;return[t("div",Wn,[t("span",jn,q(m.name),1)]),t("div",{class:Z(["ui-page__content",ra.value])},[t("div",Fn,[(d(!0),$(re,null,et(ua.value[f],L=>(d(),$("div",xn,[(d(!0),$(re,null,et(ca.value[f],Ce=>(d(),$("span",{key:L+Ce,class:"ui-page__background__item"}))),128))]))),256))]),t("div",{class:Z(["ui-page__drag-area",n(_)((ve=(j=n(v)[f])==null?void 0:j.grid)==null?void 0:ve.width,(Dt=(Mt=n(v)[f])==null?void 0:Mt.grid)==null?void 0:Dt.height)])},[Array.isArray(n(w)[f])&&H.value.width>0?(d(),X(h,{key:0,layout:n(w)[f],"onUpdate:layout":L=>n(w)[f]=L,"col-num":(Ht=(Ut=n(v)[f])==null?void 0:Ut.grid)==null?void 0:Ht.width,"row-height":ha((Jt=(zt=n(v)[f])==null?void 0:zt.grid)==null?void 0:Jt.height),"max-rows":(jt=(Wt=n(v)[f])==null?void 0:Wt.grid)==null?void 0:jt.height,margin:[0,0],"is-draggable":!Ie.value,"is-resizable":!Ie.value&&!De.value&&!xe.value,"is-mirrored":!1,"is-bounded":!0,responsive:!1,"auto-size":!1,"vertical-compact":!1,"use-css-transforms":!0,"prevent-collision":n(p),ref_for:!0,ref:L=>{L&&n(le)(m.page_id,L)}},{default:J(()=>[(d(!0),$(re,null,et(n(w)[f],(L,Ce)=>{var $t,Ft;return d(),X(g,{x:L.x,y:L.y,w:L.w,h:L.h,i:L.i,key:L.i,minW:Gt(($t=L.item)==null?void 0:$t.type,f),minH:Gt((Ft=L.item)==null?void 0:Ft.type,f,!0),onMove:n(i),onPointerdown:s[2]||(s[2]=Ee=>M.value=!0),onPointermove:n(o),onPointerup:s[3]||(s[3]=Ee=>M.value=!1),onMoved:Ee=>n(Je)(m.page_id,n(w)[f],Et.value),onResized:Ee=>n(We)(m.page_id,n(w)[f],Et.value),ref_for:!0,ref:Ee=>{Ee&&n(ue)(m.page_id,Ce,Ee)},class:Z({"vue-grid-item--media-player":L.item.type=="media_player"})},{default:J(()=>[t("div",{class:Z(["ui-page__item",{selected:n(Re)(f,Ce),"ui-page__item--dangling":Ra(L.item)}])},[(d(),X(za(n(hi)(L.item.type)),{key:JSON.stringify(L),settings:L.item},null,8,["settings"])),!De.value&&!xe.value&&Ie.value?(d(),$("span",{key:0,class:"ui-page__item__edit",onClick:Ee=>n(Oe)(f,Ce,L.item,Ee)},s[12]||(s[12]=[t("i",{class:"fa-regular fa-edit"},null,-1)]),8,Kn)):P("",!0),!De.value&&!Ie.value&&xe.value?(d(),$("span",{key:1,class:Z(["ui-page__item__test",{"ui-page__item__test--disabled":L.item.type==="media_player"||L.item.type==="sensor"}]),onClick:Ee=>Ba(L.item)},null,10,Qn)):P("",!0),De.value?(d(),$("div",{key:2,class:"ui-page__item__select",onClick:Ee=>n(me)(f,Ce)},[t("div",Yn,[t("input",{id:`${f}-${Ce}-component-tick`,type:"checkbox",checked:n(Re)(f,Ce)},null,8,Zn),t("label",{class:"toggle",for:`${f}-${Ce}-component-tick`},null,8,es),s[13]||(s[13]=t("button",{class:"button--toggle-tick"},null,-1))])],8,Xn)):!Ie.value&&!xe.value?(d(),$("span",ts,s[14]||(s[14]=[t("i",{class:"fa-regular fa-up-down-left-right"},null,-1)]))):P("",!0)],2)]),_:2},1032,["x","y","w","h","i","minW","minH","onMove","onPointermove","onMoved","onResized","class"])}),128))]),_:2},1032,["layout","onUpdate:layout","col-num","row-height","max-rows","is-draggable","is-resizable","prevent-collision"])):P("",!0)],2),t("div",as,[(d(!0),$(re,null,et(we.value[f],(L,Ce)=>(d(),$("button",{key:`empty-cell-${f}-${Ce}`,onClick:$t=>Pa(L.x,L.y),style:Ja(n(A)(H.value,L.x,L.y,f)),class:"ui-page__empty-list__item"},[t("i",{class:Z(["fa-regular",n(O).$state.clipboard.activity.pageItems.length>0?"fa-paste":"fa-plus"])},null,2)],12,is))),128))])],2)]}),_:2},1032,["class"]))),128))]),_:1},8,["modelValue"]),k(oe,{name:"opacity-fast"},{default:J(()=>[F(t("div",ns,[t("img",{onClick:La,alt:"Add page",src:Si}),t("h2",null,q(e.$t("user_interface.no_pages.title")),1)],512),[[ae,n(v).length==0&&it.value==!1]])]),_:1}),k(oe,{name:"opacity-fast"},{default:J(()=>[F(t("div",ss,s[15]||(s[15]=[t("img",{src:ot,alt:"Loading",class:"list-loader__img img-loading"},null,-1)]),512),[[ae,mt.value]])]),_:1})],2),R.editButtonMapping&&!n(E)?(d(),X(bi,{key:0,button:R.highlightedRemoteButton},null,8,["button"])):P("",!0)],2)],2),k(wi,{ref_key:"elAddWidget",ref:Q,onAdd:Ta,onChange:n(Me),onClose:n(T),entity:R.activity,"entity-type":"activity",pages:n(v),"active-page":n(l),"enable-media":oa.value,"grid-dimensions":H.value,saving:ke.value},null,8,["onChange","onClose","entity","pages","active-page","enable-media","grid-dimensions","saving"]),k(oe,{name:"opacity-fast"},{default:J(()=>[F(t("div",{ref_key:"editPopup",ref:Te,class:"widget-popup-wrapper"},[t("div",{onClick:s[5]||(s[5]=(...m)=>n(Pe)&&n(Pe)(...m)),class:"widget-popup-wrapper__background"}),n(G)&&(n(V)||R.activity)?(d(),X($i,{onChange:n(Me),onCopy:$a,onDelete:Ca,onClose:n(Pe),key:JSON.stringify(n(G)),settings:n(G),entity:n(V)||R.activity,"entity-type":"activity","active-page":n(v)[n(l)],"validate-size":ma,"grid-dimensions":H.value,saving:ke.value},null,8,["onChange","onClose","settings","entity","active-page","grid-dimensions","saving"])):P("",!0)],512),[[ae,n(G)]])]),_:1}),k(lt,{ref_key:"dialogDelete",ref:St,onSubmit:n(je),title:e.$t("widget.popup.delete_widget.title",{count:1}),text:e.$t("widget.popup.delete_widget.question",{count:1}),"submit-text":e.$t("ui.delete"),"cancel-text":e.$t("ui.cancel")},null,8,["onSubmit","title","text","submit-text","cancel-text"]),k(lt,{ref_key:"dialogDeleteItems",ref:At,onSubmit:ba,title:e.$t("widget.popup.delete_widget.title",{count:n(N).length}),text:e.$t("widget.popup.delete_widget.question",{count:n(N).length}),"submit-text":e.$t("ui.delete"),"cancel-text":e.$t("ui.cancel")},null,8,["title","text","submit-text","cancel-text"]),k(lt,{ref_key:"dialogReset",ref:It,onSubmit:Aa,title:e.$t("user_interface.pages.reset_page.title"),text:ga.value,"submit-text":e.$t("ui.reset"),"cancel-text":e.$t("ui.cancel")},null,8,["title","text","submit-text","cancel-text"]),k(lt,{ref_key:"dialogMissingEntity",ref:_t,onSubmit:wa,markdown:!0,title:e.$t("entity.missing_entity.title",{count:Ue.value.length}),text:va.value,"submit-text":e.$t("entity.missing_entity.add",{count:Ue.value.length}),"cancel-text":e.$t("ui.cancel")},null,8,["title","text","submit-text","cancel-text"])],64)}}}),os={class:"ea-interfaces__list panel-col panel-col--40"},us={class:"ea-interfaces__list__wrapper"},cs={class:"ea-interfaces__list__tab"},rs={class:"ea-interfaces__list__tab"},ds=at({__name:"EditActivityInterfaces",props:{activityId:{type:String,required:!0},activeTab:{type:String,required:!0}},setup(R){vt();const{updateExistingObjectKeys:ge,isNonEmptyObject:pe}=pt(),{isSmallScreen:x}=ft(),D=gt(),E=R,U=r(null),ie=r(),W=r(),C=r({}),c=r(!1),ee=r(!1),y=r(!0),O=r(!1),se=r();D.$onAction(({name:l,args:w,after:N})=>{l==="socketUpdate"&&N(async()=>{const{entity_id:G,event_type:ce}=w[0];if(G===E.activityId&&G===E.activityId&&ce==="CHANGE"&&w[0]&&w[0].new_state){if(te.value)return!1;if(ye.value){const Te=ge(JSON.parse(JSON.stringify(U.value)),w[0].new_state);I(Te)}}})}),Le(E,l=>{!c.value&&(l.activeTab=="user-interface"||l.activeTab=="button-mapping")&&(c.value=!0)});const ye=ne(()=>E.activeTab=="user-interface"||E.activeTab=="button-mapping");Le(ye,(l,w)=>{l==!0&&w==!1&&ue()});const te=ne(()=>O.value||W.value&&W.value.isSaving()||se.value&&se.value.isSaving()||ie.value&&ie.value.isSaving()),z=ne(()=>E.activeTab=="user-interface"?"slide-tab-right":"slide-tab-left"),B=ne(()=>!x.value||E.activeTab=="button-mapping"?"none":ee.value?"slide-tab-right":"slide-tab-left");function I(l){if(!l||!pe(l))return!1;U.value=l}function V(l){W.value.setActivePageById(l)}async function K(l){if(l.cmd==null)throw new Error("Property 'msg.cmd' is required.");if(l.pressType==null)throw new Error("Property 'msg.pressType' is required.");O.value=!0;try{const w=await D.buttonUpdate(E.activityId,l.button.button,l.cmd,l.pressType);if(w&&pe(w)&&I(w),l.cmd){let N=JSON.parse(JSON.stringify(l));l.pressType&&(N.button[l.pressType]=l.cmd,ie.value.changePhysicalButtonEdit(N))}}catch(w){S(w)}O.value=!1}async function Q(l){O.value=!0;try{const w=await D.buttonReset(E.activityId,l.button.button,l.pressType);I(w);let N=JSON.parse(JSON.stringify(l));l.pressType&&(delete N.button[l.pressType],ie.value.changePhysicalButtonEdit(N))}catch(w){S(w)}O.value=!1}async function qe(){O.value=!0;try{ct(rt.SAVING);const l=await D.allButtonsReset(E.activityId);I(l),ct(rt.SUCCESS)}catch(l){S(l)}O.value=!1}function le(){se.value.setAddPage(!0)}async function ue(){y.value=!0;try{const l=await D.getActivity(E.activityId);I(l)}catch(l){S(l)}y.value=!1}async function v(){try{const l=await D.getActivity(E.activityId,!1);I(l)}catch(l){S(l)}}return dt(()=>{ye.value&&ue()}),(l,w)=>(d(),$("div",{class:Z(["ea-interfaces",`ea-interfaces--${R.activeTab}`])},[c.value?(d(),$("div",{key:0,class:Z([{"ea-interfaces__remote--overflow-hidden":W.value&&W.value.isItemDragging()},"ea-interfaces__remote panel-col panel-col--60"])},[U.value?(d(),X(ls,{key:0,activity:U.value||{},"edit-button-mapping":R.activeTab=="button-mapping","highlighted-remote-button":C.value,onAddPage:le,onShowPageList:w[0]||(w[0]=N=>ee.value=!0),onUpdate:v,ref_key:"elActivityRemote",ref:W},null,8,["activity","edit-button-mapping","highlighted-remote-button"])):P("",!0)],2)):P("",!0),k(oe,{name:B.value},{default:J(()=>[F(t("div",os,[t("div",us,[k(oe,{name:z.value},{default:J(()=>[F(t("div",cs,[k(Ci,{ref_key:"elActiPageList",ref:se,onEditPage:V,onUpdate:v,onHide:w[1]||(w[1]=N=>ee.value=!1),entity:U.value||{},entityType:"activity",loading:y.value},null,8,["entity","loading"])],512),[[ae,R.activeTab!="button-mapping"]])]),_:1},8,["name"]),k(oe,{name:z.value},{default:J(()=>[F(t("div",rs,[U.value?(d(),X(qi,{key:0,entity:U.value,"entity-type":"activity","text-instruction":l.$t("activity.button_mapping.instruction"),onChangeButton:K,onResetButton:Q,onResetAllButtons:qe,onHighlightButton:w[2]||(w[2]=N=>{C.value=N}),onHideHighlightedButton:w[3]||(w[3]=N=>C.value={}),onUpdate:v,ref_key:"elButtonList",ref:ie},null,8,["entity","text-instruction"])):P("",!0)],512),[[ae,R.activeTab!="user-interface"]])]),_:1},8,["name"])])],512),[[ae,!n(x)||R.activeTab=="button-mapping"||ee.value]])]),_:1},8,["name"])],2))}}),vs={class:"page-edit-activity"},fs={class:"page-edit-activity__navbar"},gs={class:"page-edit-activity__main"},ps={class:"page-edit-activity__tabs"},ys={class:"page-edit-activity__tab"},_s={class:"page-edit-activity__tab"},ms={class:"page-edit-activity__tab"},Es=at({__name:"EditActivityView",props:{activity_id:{type:String,required:!0}},setup(R){const{t:ge}=qt(),pe={icon:"fa-light fa-gear",label:ge("tab.settings"),value:"settings"},x=vi(async()=>{const W=await ea("fa-list-timeline"),C=await ea("fa-grid-2");return[{icon:"fa-light fa-gear",label:ge("tab.settings"),value:"settings"},{icon:`fa-light ${W}`,label:ge("tab.sequences"),value:"sequences"},{icon:"fa-light fa-icons",label:ge("tab.user_interface"),value:"user-interface"},{icon:`fa-light ${C}`,label:ge("tab.button_mapping"),value:"button-mapping"}]}),D=r(pe),E=r(!1),U=ne(()=>E.value==!0?"slide-tab-right":"slide-tab-left");function ie(W){const C=x.value.findIndex(ee=>ee.value==D.value.value),c=x.value.findIndex(ee=>ee.value==W.value);E.value=c<C,D.value=W}return(W,C)=>(d(),X(Wa,null,{default:J(()=>[t("div",vs,[t("div",fs,[n(x)?(d(),X(la,{key:0,onItemClick:ie,"list-data":n(x),"active-tab":D.value},null,8,["list-data","active-tab"])):P("",!0)]),t("div",gs,[t("div",ps,[k(oe,{name:U.value},{default:J(()=>[F(t("div",ys,[k(xi,{"activity-id":R.activity_id,active:D.value.value=="settings"},null,8,["activity-id","active"])],512),[[ae,D.value.value=="settings"]])]),_:1},8,["name"]),k(oe,{name:U.value},{default:J(()=>[F(t("div",_s,[k(Bn,{"activity-id":R.activity_id,active:D.value.value=="sequences"},null,8,["activity-id","active"])],512),[[ae,D.value.value=="sequences"]])]),_:1},8,["name"]),k(oe,{name:U.value},{default:J(()=>[F(t("div",ms,[k(ds,{"activity-id":R.activity_id,"active-tab":D.value.value},null,8,["activity-id","active-tab"])],512),[[ae,D.value.value=="user-interface"||D.value.value=="button-mapping"]])]),_:1},8,["name"])])])])]),_:1}))}});export{Es as default}; | |
| 3 | 2 | ||
This page compares the deployed 2.1.0-unfoldedtools.1 browser build with the archived upstream/source-reference Web Configurator 2.1.0 distribution published in the source tree. Hashes are SHA-256.
Modified44
Deployed only30
Source only39
Identical59
| Status | Path | Source bytes | Deployed bytes |
|---|---|---|---|
| same | assets/css/AddCommand-CbLFbsS9.css | 102 | 102 |
| same | assets/css/index-DnYA-y8o.css | 499,065 | 499,065 |
| same | assets/css/UCColorTemp-CXjL72t3.css | 942 | 942 |
| modified | assets/js/_plugin-vue_export-helper-DlAUqK2U.js | 154 | 91 |
| source-only | assets/js/_plugin-vue_export-helper-DlAUqK2U.js.map | 118 | — |
| modified | assets/js/ActivitiesMacrosView-fgpBUjOs.js | 28,088 | 28,030 |
| source-only | assets/js/ActivitiesMacrosView-fgpBUjOs.js.map | 75,796 | — |
| modified | assets/js/add-page-8VHq_I3u.js | 106 | 81 |
| source-only | assets/js/add-page-8VHq_I3u.js.map | 225 | — |
| modified | assets/js/AddCommand.vue_vue_type_script_setup_true_lang-Drs9F3BK.js | 28,879 | 28,795 |
| source-only | assets/js/AddCommand.vue_vue_type_script_setup_true_lang-Drs9F3BK.js.map | 66,533 | — |
| modified | assets/js/AdminPassword-BShJiGQm.js | 1,930 | 1,879 |
| source-only | assets/js/AdminPassword-BShJiGQm.js.map | 4,002 | — |
| modified | assets/js/ApplicationCredentials-B6zGV1aG.js | 8,034 | 7,974 |
| source-only | assets/js/ApplicationCredentials-B6zGV1aG.js.map | 17,519 | — |
| modified | assets/js/ButtonList.vue_vue_type_script_setup_true_lang-Canw95fQ.js | 124,576 | 124,492 |
| source-only | assets/js/ButtonList.vue_vue_type_script_setup_true_lang-Canw95fQ.js.map | 338,616 | — |
| modified | assets/js/ColorPicker.vue_vue_type_script_setup_true_lang-Clr8ZC9V.js | 4,200 | 4,115 |
| source-only | assets/js/ColorPicker.vue_vue_type_script_setup_true_lang-Clr8ZC9V.js.map | 15,204 | — |
| modified | assets/js/Development-Bnpc5txt.js | 11,756 | 11,707 |
| source-only | assets/js/Development-Bnpc5txt.js.map | 25,399 | — |
| modified | assets/js/DevicesEntities-CBKp2tcA.js | 12,156 | 12,103 |
| source-only | assets/js/DevicesEntities-CBKp2tcA.js.map | 36,054 | — |
| modified | assets/js/DevicesIntegrations-SruI_49o.js | 14,578 | 13,900 |
| source-only | assets/js/DevicesIntegrations-SruI_49o.js.map | 32,821 | — |
| modified | assets/js/Display-Rf7oJV7E.js | 3,600 | 3,555 |
| source-only | assets/js/Display-Rf7oJV7E.js.map | 9,835 | — |
| modified | assets/js/downloadFile-BZwlOo1d.js | 314 | 264 |
| source-only | assets/js/downloadFile-BZwlOo1d.js.map | 1,010 | — |
| modified | assets/js/EditActivityGroupView-BbQJf-Vw.js | 8,392 | 8,333 |
| source-only | assets/js/EditActivityGroupView-BbQJf-Vw.js.map | 23,791 | — |
| modified | assets/js/EditActivityView-CJsbOUfl.js | 52,725 | 52,685 |
| source-only | assets/js/EditActivityView-CJsbOUfl.js.map | 135,887 | — |
| modified | assets/js/EditDockView-CQaPa6mI.js | 30,467 | 30,417 |
| source-only | assets/js/EditDockView-CQaPa6mI.js.map | 67,875 | — |
| modified | assets/js/EditEntityView-DTd7pKSo.js | 7,528 | 7,476 |
| source-only | assets/js/EditEntityView-DTd7pKSo.js.map | 17,210 | — |
| modified | assets/js/EditIntegrationView-D54EtPMd.js | 17,424 | 17,367 |
| source-only | assets/js/EditIntegrationView-D54EtPMd.js.map | 46,710 | — |
| modified | assets/js/EditMacroView-D6BYPpgI.js | 14,779 | 14,728 |
| source-only | assets/js/EditMacroView-D6BYPpgI.js.map | 40,858 | — |
| modified | assets/js/EditRemoteView-KV9P33Fl.js | 62,746 | 62,694 |
| source-only | assets/js/EditRemoteView-KV9P33Fl.js.map | 158,585 | — |
| modified | assets/js/FactoryReset-CSy5heR7.js | 1,726 | 1,676 |
| source-only | assets/js/FactoryReset-CSy5heR7.js.map | 4,303 | — |
| modified | assets/js/General-B-25fYoQ.js | 26,750 | 26,696 |
| source-only | assets/js/General-B-25fYoQ.js.map | 52,267 | — |
| modified | assets/js/gitInfo-D_9Lmuz-.js | 125 | 96 |
| source-only | assets/js/gitInfo-D_9Lmuz-.js.map | 399 | — |
| modified | assets/js/index-C1Y9Q2v_.js | 1,789,234 | 1,790,060 |
| source-only | assets/js/index-C1Y9Q2v_.js.map | 4,916,540 | — |
| modified | assets/js/InfoPanel.vue_vue_type_script_setup_true_lang-Daj1vCFO.js | 664 | 581 |
| source-only | assets/js/InfoPanel.vue_vue_type_script_setup_true_lang-Daj1vCFO.js.map | 1,105 | — |
| modified | assets/js/Localization-CipUmDWZ.js | 3,683 | 3,633 |
| source-only | assets/js/Localization-CipUmDWZ.js.map | 9,586 | — |
| modified | assets/js/LoginView-D-5aBttU.js | 3,557 | 3,531 |
| source-only | assets/js/LoginView-D-5aBttU.js.map | 9,693 | — |
| modified | assets/js/PowerSaving-B8Zgoof-.js | 4,035 | 3,986 |
| source-only | assets/js/PowerSaving-B8Zgoof-.js.map | 8,857 | — |
| modified | assets/js/ProgressBar.vue_vue_type_script_setup_true_lang-Bk1-AFwu.js | 407 | 322 |
| source-only | assets/js/ProgressBar.vue_vue_type_script_setup_true_lang-Bk1-AFwu.js.map | 507 | — |
| modified | assets/js/SelectVoiceAssistantProfile.vue_vue_type_script_setup_true_lang-CKqJ88sp.js | 6,427 | 6,326 |
| source-only | assets/js/SelectVoiceAssistantProfile.vue_vue_type_script_setup_true_lang-CKqJ88sp.js.map | 13,160 | — |
| modified | assets/js/SettingsOptionButton.vue_vue_type_script_setup_true_lang-Dmfy6i6T.js | 2,682 | 2,588 |
| source-only | assets/js/SettingsOptionButton.vue_vue_type_script_setup_true_lang-Dmfy6i6T.js.map | 4,159 | — |
| modified | assets/js/SettingsView-WPft1zzf.js | 1,706 | 1,936 |
| source-only | assets/js/SettingsView-WPft1zzf.js.map | 4,205 | — |
| modified | assets/js/SoundHaptic-0xREWoxX.js | 2,272 | 2,223 |
| source-only | assets/js/SoundHaptic-0xREWoxX.js.map | 5,145 | — |
| modified | assets/js/UCColorTemp.vue_vue_type_script_setup_true_lang-BwXTO9iw.js | 15,616 | 15,531 |
| source-only | assets/js/UCColorTemp.vue_vue_type_script_setup_true_lang-BwXTO9iw.js.map | 45,865 | — |
| modified | assets/js/UCRange.vue_vue_type_script_setup_true_lang-C5_84GVZ.js | 3,990 | 3,909 |
| source-only | assets/js/UCRange.vue_vue_type_script_setup_true_lang-C5_84GVZ.js.map | 10,128 | — |
| modified | assets/js/UserInterface-BdUBlw7b.js | 282 | 231 |
| source-only | assets/js/UserInterface-BdUBlw7b.js.map | 310 | — |
| modified | assets/js/VoiceControl-C2eahcIK.js | 3,647 | 3,597 |
| source-only | assets/js/VoiceControl-C2eahcIK.js.map | 9,224 | — |
| modified | assets/js/vue-select-CSzUJrFr.js | 135,371 | 135,323 |
| source-only | assets/js/vue-select-CSzUJrFr.js.map | 658,931 | — |
| modified | assets/js/WifiBluetooth-CxJ7o9Ta.js | 6,860 | 6,809 |
| source-only | assets/js/WifiBluetooth-CxJ7o9Ta.js.map | 15,585 | — |
| deployed-only | assets/material-symbols-compat.css | — | 212,530 |
| deployed-only | assets/remote-simulator-background.svg | — | 879 |
| deployed-only | assets/remote-ui/icon-mapping.json | — | 102,715 |
| deployed-only | assets/remote-ui/icons.otf | — | 3,293,220 |
| deployed-only | assets/remote-ui/images/button-layout.png | — | 9,652 |
| deployed-only | assets/remote-ui/images/dock_2.png | — | 69,479 |
| deployed-only | assets/remote-ui/images/dock3_dark_charging.png | — | 69,514 |
| deployed-only | assets/remote-ui/images/dock3_dark_non_charging.png | — | 66,171 |
| deployed-only | assets/remote-ui/images/dock3_silver_charging.png | — | 74,560 |
| deployed-only | assets/remote-ui/images/dock3_silver_non_charging.png | — | 71,334 |
| deployed-only | assets/remote-ui/images/help-overlay/Main1.png | — | 37,627 |
| deployed-only | assets/remote-ui/images/help-overlay/Main2.png | — | 18,881 |
| deployed-only | assets/remote-ui/images/help-overlay/Main3.png | — | 52,118 |
| deployed-only | assets/remote-ui/images/loader_small.png | — | 652 |
| deployed-only | assets/remote-ui/images/quarter_arc.svg | — | 466 |
| deployed-only | assets/remote-ui/LICENSE | — | 35,149 |
| deployed-only | assets/remote-ui/QML_SOURCE_MAP.md | — | 1,948 |
| deployed-only | assets/remote-ui/README.md | — | 2,628 |
| deployed-only | assets/remote-ui/remote-ui_licenses.md | — | 193,261 |
| deployed-only | assets/remote-ui/remote-ui-web.css | — | 52,902 |
| deployed-only | assets/remote-ui/remote-ui-web.js | — | 79,638 |
| deployed-only | assets/ucvr-enhancements.js | — | 13,642 |
| deployed-only | assets/ucvr-simulator.js | — | 152,812 |
| deployed-only | assets/unfolded-simulator-bootstrap.js | — | 3,032 |
| deployed-only | assets/unfolded-simulator-source-integration.css | — | 2,396 |
| same | favicon/android-chrome-192x192.png | 1,608 | 1,608 |
| same | favicon/android-chrome-512x512.png | 4,719 | 4,719 |
| same | favicon/apple-touch-icon.png | 1,609 | 1,609 |
| same | favicon/browserconfig.xml | 254 | 254 |
| same | favicon/favicon-16x16.png | 490 | 490 |
| same | favicon/favicon-32x32.png | 588 | 588 |
| same | favicon/favicon.ico | 7,406 | 7,406 |
| same | favicon/mstile-150x150.png | 1,479 | 1,479 |
| same | favicon/safari-pinned-tab.svg | 979 | 979 |
| same | favicon/site.webmanifest | 462 | 462 |
| deployed-only | fonts/material-symbols/LICENSE.txt | — | 11,358 |
| deployed-only | fonts/material-symbols/material-symbols-sharp.woff2 | — | 3,196,892 |
| deployed-only | fonts/material-symbols/NOTICE.md | — | 421 |
| same | fonts/poppins/poppins-latin-ext_latin-extralight.woff | 73,464 | 73,464 |
| same | fonts/poppins/poppins-latin-ext_latin-extralight.woff2 | 50,788 | 50,788 |
| same | fonts/poppins/poppins-latin-ext_latin-medium.woff | 72,764 | 72,764 |
| same | fonts/poppins/poppins-latin-ext_latin-medium.woff2 | 50,488 | 50,488 |
| same | fonts/poppins/poppins-v20-latin-ext_latin-300.woff | 14,448 | 14,448 |
| same | fonts/poppins/poppins-v20-latin-ext_latin-300.woff2 | 10,776 | 10,776 |
| same | fonts/poppins/poppins-v20-latin-ext_latin-regular.woff | 14,516 | 14,516 |
| same | fonts/poppins/poppins-v20-latin-ext_latin-regular.woff2 | 10,832 | 10,832 |
| same | fonts/space-mono/space-mono-v11-latin-ext_latin-700.woff | 30,156 | 30,156 |
| same | fonts/space-mono/space-mono-v11-latin-ext_latin-700.woff2 | 24,100 | 24,100 |
| same | fonts/space-mono/space-mono-v11-latin-ext_latin-regular.woff | 29,112 | 29,112 |
| same | fonts/space-mono/space-mono-v11-latin-ext_latin-regular.woff2 | 23,324 | 23,324 |
| same | icons/icon-fallback-mapping.json | 307 | 307 |
| same | icons/icon-list.json | 48,898 | 48,898 |
| same | icons/old-new-icon-mapping-free.json | 3,100 | 3,100 |
| same | icons/old-new-icon-mapping.json | 3,217 | 3,217 |
| same | images/add-page.svg | 3,467 | 3,467 |
| same | images/background/login-bg-1280.jpg | 77,755 | 77,755 |
| same | images/background/login-bg-1920.jpg | 77,755 | 77,755 |
| same | images/background/login-bg-2500.jpg | 73,187 | 73,187 |
| same | images/background/login-bg-phone.jpg | 46,078 | 46,078 |
| same | images/background/login-bg-v2-1280.jpg | 60,162 | 60,162 |
| same | images/background/login-bg-v2-1920.jpg | 84,922 | 84,922 |
| same | images/background/login-bg-v2-2500.jpg | 127,751 | 127,751 |
| same | images/background/login-bg-v2-phone.jpg | 96,071 | 96,071 |
| same | images/background/login-bg-v2.jpg | 203,803 | 203,803 |
| same | images/background/login-bg.jpg | 77,755 | 77,755 |
| same | images/cropper-corner.svg | 237 | 237 |
| same | images/customise-remote/add-entities.png | 2,506 | 2,506 |
| same | images/customise-remote/add-groups.png | 2,878 | 2,878 |
| same | images/customise-remote/configure-buttons.png | 3,191 | 3,191 |
| same | images/dock/dock-2.webp | 178,380 | 178,380 |
| same | images/dock/dock-d-c.webp | 281,806 | 281,806 |
| same | images/dock/dock-d-n.webp | 270,838 | 270,838 |
| same | images/dock/dock-s-c.webp | 298,122 | 298,122 |
| same | images/dock/dock-s-n.webp | 288,210 | 288,210 |
| same | images/loading-indicator-dark.png | 2,074 | 2,074 |
| same | images/loading-indicator.png | 3,320 | 3,320 |
| same | images/quick-tips/icon-contextual.svg | 1,403 | 1,403 |
| same | images/remote-2-front-min.webp | 63,456 | 63,456 |
| same | images/remote-2-front.webp | 397,556 | 397,556 |
| same | images/remote-3-dark-front-min.webp | 3,038 | 3,038 |
| modified | images/remote-3-dark-front.webp | 84,730 | 49,270 |
| same | images/remote-3-silver-front-min.webp | 3,106 | 3,106 |
| same | images/remote-3-silver-front.webp | 92,864 | 92,864 |
| modified | index.html | 1,379 | 2,191 |
| deployed-only | LICENSE | — | 35,149 |
| modified | licenses.md | 2,028,420 | 2,028,556 |
| same | logo-dark.svg | 847 | 847 |
| same | logo.svg | 597 | 597 |
| deployed-only | MODIFICATIONS.md | — | 7,343 |
| modified | release.json | 433 | 487 |
| modified | version.txt | 6 | 22 |