@openremote/or-asset-viewer 1.7.0-snapshot.20250605081830 → 1.7.0-snapshot.20250605141506

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/umd/index.js CHANGED
@@ -1611,7 +1611,7 @@
1611
1611
  <div id="field-${e}" style="${t&&t.styles?Ni(t.styles):""}" class=${Ge({field:!0,mobileHidden:!!t&&!!t.hideOnMobile})}>
1612
1612
  ${n}
1613
1613
  </div>
1614
- `:z``}function Ms(e){return cs(this,void 0,void 0,(function*(){const t=!!e.id&&void 0!==e.version;let n,i;try{if(t){if(!e.id)throw new Error("Request to update existing asset but asset ID is not set");const t=yield Oi().rest.api.AssetResource.update(e.id,e);n=200===t.status,i=t.data}else{const t=yield Oi().rest.api.AssetResource.create(e);n=200===t.status,n&&(i=t.data)}}catch(e){n=!1,os(void 0,t?"saveAssetFailed":"createAssetFailed","dismiss"),console.error("Failed to save asset",e)}return{asset:i,success:n,isNew:!t}}))}ys.NAME="or-asset-viewer-load-alarm-event";const Ls=l(1896),Ts=["name","createdOn","type","parentId","accessPublicRead"],Es={viewerStyles:{},panels:[{type:"group",title:"underlyingAssets"},{type:"info",hideOnMobile:!0,properties:{include:[]},attributes:{include:["notes","manufacturer","model"]}},{title:"attributes",type:"info",properties:{include:[]},attributes:{exclude:["location","notes","manufacturer","model"]}},{type:"setup",hideOnMobile:!1},{title:"location",type:"info",column:1,properties:{include:[]},attributes:{include:["location"],itemConfig:{location:{label:"",readonly:!0}}}},{type:"history",column:1},{type:"linkedUsers",column:1},{type:"alarm.linkedAlarms",column:1,hideOnMobile:!0}]};let Ys=class extends((0,Ii.subscribe)(Oi())((0,Pi.translate)(To)(Le))){static get styles(){return[ce(Ls),ds,_r,gr]}constructor(){super(),this._validationResults=[],this._saveInProgress=!1,this.langChangedCallback=()=>{this._assetInfo&&(this._assetInfo.attributeTemplateMap={},this.requestUpdate("_assetInfo"))},this.addEventListener(Io.NAME,(e=>this._onAssetModified(e.detail)))}isModified(){return!!this.editMode&&this._assetInfo&&this._assetInfo.modified}shouldUpdate(e){return this._isReadonly()&&(this.editMode=!1),e.has("assetId")&&(this._assetInfo=void 0,this.asset=void 0,this.assetId?super.assetIds=[this.assetId]:super.assetIds=void 0),e.has("asset")&&(this._assetInfo=void 0,this.asset&&this.loadAssetInfo(this.asset).then((e=>this._assetInfo=e)).catch((e=>{}))),super.shouldUpdate(e)}updated(e){e.has("asset")&&this._doValidation()}loadAssetInfo(e){return cs(this,void 0,void 0,(function*(){if(!e)throw new Error("Asset has changed");e.attributes||(e.attributes={});const t=!!e.id,n=!t,i=this._getPanelConfig(e);if(!t)return{asset:e,modified:n,viewerConfig:i,attributeTemplateMap:{}};const a=yield function(e){return cs(this,void 0,void 0,(function*(){try{return yield Oi().rest.api.AssetResource.getUserAssetLinks({realm:Oi().displayRealm,assetId:e.id}).then((e=>{const t=e.data.map((e=>function(e){return cs(this,void 0,void 0,(function*(){const t=e.id.userId,n=e.userFullName,i=yield Oi().rest.api.UserResource.getUserClientRoles(Oi().displayRealm,t,Oi().clientId).then((e=>e.data)).catch((e=>(console.info("User not allowed to get roles",e),[])));return{userId:t,usernameAndId:n,roles:i,restrictedUser:yield Oi().rest.api.UserResource.getUserRealmRoles(Oi().displayRealm,t).then((e=>!!e.data&&!!e.data.find((e=>e===Ii.RESTRICTED_USER_REALM_ROLE))))}}))}(e)));return Promise.all(t)}))}catch(e){return console.log("Failed to get child assets: "+e),[]}}))}(e),r=yield function(e){return cs(this,void 0,void 0,(function*(){try{return yield Oi().rest.api.AlarmResource.getAlarms({realm:Oi().displayRealm,assetId:e.id}).then((e=>{const t=e.data;return Promise.all(t)}))}catch(e){return console.log("Failed to get child assets: "+e),[]}}))}(e);if(!this.assetId||this.assetId!==e.id)throw new Error("Asset has changed");let o;if("GroupAsset"===e.type&&(o=yield function(e,t){return cs(this,void 0,void 0,(function*(){let n;try{n=yield Oi().rest.api.AssetResource.queryAssets({parents:[{id:e}]})}catch(e){return console.log("Failed to get child assets: "+e),[]}return 200===n.status&&n.data?n.data.filter((e=>e.type===t)):[]}))}(e.id,e.attributes.childAssetType.value)),!this.assetId||this.assetId!==e.id)throw new Error("Asset has changed");return{asset:e,modified:n,viewerConfig:i,childAssets:o,userAssetLinks:a,alarmAssetLinks:r,attributeTemplateMap:{}}}))}_doValidation(){this.editMode&&this.editor&&(this._validationResults=this.editor.validate())}render(){if(!this.asset&&!this.assetId)return z`
1614
+ `:z``}function Ms(e){return cs(this,void 0,void 0,(function*(){const t=!!e.id&&void 0!==e.version;let n,i;try{if(t){if(!e.id)throw new Error("Request to update existing asset but asset ID is not set");const t=yield Oi().rest.api.AssetResource.update(e.id,e);n=200===t.status,i=t.data}else{const t=yield Oi().rest.api.AssetResource.create(e);n=200===t.status,n&&(i=t.data)}}catch(e){n=!1,os(void 0,t?"saveAssetFailed":"createAssetFailed","dismiss"),console.error("Failed to save asset",e)}return{asset:i,success:n,isNew:!t}}))}ys.NAME="or-asset-viewer-load-alarm-event";const Ls=l(1896),Ts=["name","createdOn","type","parentId","accessPublicRead"],Es={viewerStyles:{},panels:[{type:"group",title:"underlyingAssets"},{type:"info",hideOnMobile:!0,properties:{include:[]},attributes:{include:["notes","manufacturer","model"]}},{title:"attributes",type:"info",properties:{include:[]},attributes:{exclude:["location","notes","manufacturer","model"]}},{type:"setup",hideOnMobile:!1},{title:"location",type:"info",column:1,properties:{include:[]},attributes:{include:["location"],itemConfig:{location:{label:"",readonly:!0}}}},{type:"history",column:1},{type:"linkedUsers",column:1},{type:"alarm.linkedAlarms",column:1,hideOnMobile:!0}]};let Ys=class extends((0,Ii.subscribe)(Oi())((0,Pi.translate)(To)(Le))){static get styles(){return[ce(Ls),ds,_r,gr]}constructor(){super(),this._validationResults=[],this._saveInProgress=!1,this.langChangedCallback=()=>{this._assetInfo&&(this._assetInfo.attributeTemplateMap={},this.requestUpdate("_assetInfo"))},this.addEventListener(Io.NAME,(e=>this._onAssetModified(e.detail)))}isModified(){return!!this.editMode&&this._assetInfo&&this._assetInfo.modified}shouldUpdate(e){return this._isReadonly()&&(this.editMode=!1),e.has("assetId")&&(this._assetInfo=void 0,this.asset=void 0,this.assetId?super.assetIds=[this.assetId]:super.assetIds=void 0),e.has("asset")&&(this._assetInfo=void 0,this.asset&&this.loadAssetInfo(this.asset).then((e=>this._assetInfo=e)).catch((e=>{}))),super.shouldUpdate(e)}updated(e){e.has("asset")&&this._doValidation()}loadAssetInfo(e){return cs(this,void 0,void 0,(function*(){if(!e)throw new Error("Asset has changed");e.attributes||(e.attributes={});const t=!!e.id,n=!t,i=this._getPanelConfig(e);if(!t)return{asset:e,modified:n,viewerConfig:i,attributeTemplateMap:{}};const a=yield function(e){return cs(this,void 0,void 0,(function*(){try{return yield Oi().rest.api.AssetResource.getUserAssetLinks({realm:Oi().displayRealm,assetId:e.id}).then((e=>{const t=e.data.map((e=>function(e){return cs(this,void 0,void 0,(function*(){const t=e.id.userId;return{userId:t,usernameAndId:e.userFullName,restrictedUser:yield Oi().rest.api.UserResource.getUserRealmRoles(Oi().displayRealm,t).then((e=>!!e.data&&!!e.data.find((e=>e===Ii.RESTRICTED_USER_REALM_ROLE))))}}))}(e)));return Promise.all(t)}))}catch(e){return console.log("Failed to get child assets: "+e),[]}}))}(e),r=yield function(e){return cs(this,void 0,void 0,(function*(){try{return yield Oi().rest.api.AlarmResource.getAlarms({realm:Oi().displayRealm,assetId:e.id}).then((e=>{const t=e.data;return Promise.all(t)}))}catch(e){return console.log("Failed to get child assets: "+e),[]}}))}(e);if(!this.assetId||this.assetId!==e.id)throw new Error("Asset has changed");let o;if("GroupAsset"===e.type&&(o=yield function(e,t){return cs(this,void 0,void 0,(function*(){let n;try{n=yield Oi().rest.api.AssetResource.queryAssets({parents:[{id:e}]})}catch(e){return console.log("Failed to get child assets: "+e),[]}return 200===n.status&&n.data?n.data.filter((e=>e.type===t)):[]}))}(e.id,e.attributes.childAssetType.value)),!this.assetId||this.assetId!==e.id)throw new Error("Asset has changed");return{asset:e,modified:n,viewerConfig:i,childAssets:o,userAssetLinks:a,alarmAssetLinks:r,attributeTemplateMap:{}}}))}_doValidation(){this.editMode&&this.editor&&(this._validationResults=this.editor.validate())}render(){if(!this.asset&&!this.assetId)return z`
1615
1615
  <div class="msg"><or-translate value="noAssetSelected"></or-translate></div>
1616
1616
  `;if(!this._assetInfo)return z`
1617
1617
  <div class="msg"><or-translate value="loading"></or-translate></div>
@@ -1707,7 +1707,7 @@
1707
1707
  </style>
1708
1708
  <or-mwc-input .type="${ha.BUTTON}" class="asset-group-add-remove-button" icon="pencil" @click="${()=>h()}"></or-mwc-input>
1709
1709
  <or-mwc-table .columns="${f[0]}" .rows="${f[1]}" .id="${e}-attribute-table" .config="${{stickyFirstColumn:!0}}"></or-mwc-table>
1710
- `}if("linkedUsers"===a.type){const e=Oi().hasRole("read:admin"),i=t.userAssetLinks;if(!e)return;if(!i||0===i.length)return;const a=[To.t("username"),To.t("roles"),To.t("restrictedUser")],r=i.sort(Ii.Util.sortByString((e=>e.usernameAndId))).map((e=>[e.usernameAndId,e.roles.join(", "),e.restrictedUser?To.t("yes"):To.t("no")]));return z`<or-mwc-table id="linked-users-table" .rows="${r}" .config="${{stickyFirstColumn:!1}}" .columns="${a}"
1710
+ `}if("linkedUsers"===a.type){const e=Oi().hasRole("read:admin"),i=t.userAssetLinks;if(!e)return;if(!i||0===i.length)return;const a=[To.t("username"),To.t("restrictedUser")],r=i.sort(Ii.Util.sortByString((e=>e.usernameAndId))).map((e=>[e.usernameAndId,e.restrictedUser?To.t("yes"):To.t("no")]));return z`<or-mwc-table id="linked-users-table" .rows="${r}" .config="${{stickyFirstColumn:!1}}" .columns="${a}"
1711
1711
  @or-mwc-table-row-click="${e=>{n.dispatchEvent(new bs(i[e.detail.index].userId))}}">
1712
1712
  </or-mwc-table>`}if("alarm.linkedAlarms"===a.type){const e=Oi().hasRole("read:alarms"),i=t.alarmAssetLinks;if(!e)return;if(!i||0===i.length)return;const a=[To.t("alarm.title"),To.t("alarm.severity"),To.t("status")],r=i.sort().map((e=>[e.title,e.severity,e.status]));return z`<or-mwc-table .rows="${r}" .config="${{stickyFirstColumn:!1}}" .columns="${a}"
1713
1713
  @or-mwc-table-row-click="${e=>{n.dispatchEvent(new ys(i[e.detail.index].id))}}">