@openremote/or-dashboard-builder 1.5.0-snapshot.20250422151242 → 1.5.0-snapshot.20250422162853

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.
@@ -1,4 +1,4 @@
1
- var __decorate=this&&this.__decorate||function(e,t,r,o){var a,s=arguments.length,d=s<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)d=Reflect.decorate(e,t,r,o);else for(var i=e.length-1;i>=0;i--)(a=e[i])&&(d=(s<3?a(d):s>3?a(t,r,d):a(t,r))||d);return s>3&&d&&Object.defineProperty(t,r,d),d},__awaiter=this&&this.__awaiter||function(e,t,r,o){return new(r||(r=Promise))((function(a,s){function d(e){try{n(o.next(e))}catch(e){s(e)}}function i(e){try{n(o.throw(e))}catch(e){s(e)}}function n(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(d,i)}n((o=o.apply(e,t||[])).next())}))};import{css,html,LitElement}from"lit";import{customElement,property}from"lit/decorators.js";import{InputType}from"@openremote/or-mwc-components/or-mwc-input";import"@openremote/or-icon";import{style}from"./style";import manager from"@openremote/core";import"@openremote/or-mwc-components/or-mwc-menu";import{showOkCancelDialog}from"@openremote/or-mwc-components/or-mwc-dialog";import{i18next}from"@openremote/or-translate";import{showSnackbar}from"@openremote/or-mwc-components/or-mwc-snackbar";import{style as OrAssetTreeStyle}from"@openremote/or-asset-tree";import{DashboardService,DashboardSizeOption}from"./service/dashboard-service";import{isAxiosError}from"@openremote/rest";const treeStyling=css`
1
+ var __decorate=this&&this.__decorate||function(e,t,r,o){var a,s=arguments.length,i=s<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(e,t,r,o);else for(var d=e.length-1;d>=0;d--)(a=e[d])&&(i=(s<3?a(i):s>3?a(t,r,i):a(t,r))||i);return s>3&&i&&Object.defineProperty(t,r,i),i},__awaiter=this&&this.__awaiter||function(e,t,r,o){return new(r||(r=Promise))((function(a,s){function i(e){try{n(o.next(e))}catch(e){s(e)}}function d(e){try{n(o.throw(e))}catch(e){s(e)}}function n(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,d)}n((o=o.apply(e,t||[])).next())}))};import{css,html,LitElement}from"lit";import{customElement,property}from"lit/decorators.js";import{InputType}from"@openremote/or-mwc-components/or-mwc-input";import"@openremote/or-icon";import{style}from"./style";import manager from"@openremote/core";import"@openremote/or-mwc-components/or-mwc-menu";import{showOkCancelDialog}from"@openremote/or-mwc-components/or-mwc-dialog";import{i18next}from"@openremote/or-translate";import{showSnackbar}from"@openremote/or-mwc-components/or-mwc-snackbar";import{style as OrAssetTreeStyle}from"@openremote/or-asset-tree";import{DashboardService,DashboardSizeOption}from"./service/dashboard-service";import{isAxiosError}from"@openremote/rest";const treeStyling=css`
2
2
  #header-btns {
3
3
  display: flex;
4
4
  flex-direction: row;
@@ -14,7 +14,7 @@ var __decorate=this&&this.__decorate||function(e,t,r,o){var a,s=arguments.length
14
14
  align-items: center;
15
15
  padding-left: 10px;
16
16
  }
17
- `;let OrDashboardTree=class extends LitElement{constructor(){super(...arguments),this.realm=manager.displayRealm,this.readonly=!0,this.hasChanged=!1,this.showControls=!0}static get styles(){return[style,treeStyling,OrAssetTreeStyle]}shouldUpdate(e){return(1!==e.size||!e.has("hasChanged")||!this.hasChanged)&&super.shouldUpdate(e)}updated(e){this.dashboards||this.getAllDashboards(),e.has("dashboards")&&null!=e.get("dashboards")&&this.dispatchEvent(new CustomEvent("updated",{detail:this.dashboards})),e.has("selected")&&this.dispatchEvent(new CustomEvent("select",{detail:this.selected}))}getAllDashboards(){return __awaiter(this,void 0,void 0,(function*(){return manager.rest.api.DashboardResource.getAllRealmDashboards(this.realm).then((e=>{this.dashboards=e.data})).catch((e=>{console.error(e),showSnackbar(void 0,"errorOccurred")}))}))}selectDashboard(e){var t;this.selected="string"==typeof e?null===(t=this.dashboards)||void 0===t?void 0:t.find((t=>t.id===e)):e}createDashboard(e){DashboardService.create(void 0,e,this.realm).then((e=>{this.dashboards?(this.dashboards.push(e),this.requestUpdate("dashboards")):this.dashboards=[e],this.dispatchEvent(new CustomEvent("created",{detail:{d:e}})),this.selectDashboard(e)})).catch((e=>{var t;console.error(e),isAxiosError(e)&&404===(null===(t=e.response)||void 0===t?void 0:t.status)?showSnackbar(void 0,"noDashboardFound"):showSnackbar(void 0,"errorOccurred")}))}duplicateDashboard(e){null!==(null==e?void 0:e.id)?this.hasChanged?this.showDiscardChangesModal().then((t=>{t&&this._doDuplicateDashboard(e)})):this._doDuplicateDashboard(e):console.warn("Tried duplicating a NULL dashboard!")}_doDuplicateDashboard(e){const t=JSON.parse(JSON.stringify(e));t.displayName=t.displayName+" copy",t.template&&(t.template.id=Math.random().toString(36).slice(2,String(t.template.id).length+2)),DashboardService.create(t,void 0,this.realm).then((e=>{this.dashboards?(this.dashboards.push(e),this.requestUpdate("dashboards")):this.dashboards=[e],this.dispatchEvent(new CustomEvent("created",{detail:{d:e}})),this.selectDashboard(e.id)})).catch((e=>{var t;console.error(e),isAxiosError(e)&&404===(null===(t=e.response)||void 0===t?void 0:t.status)?showSnackbar(void 0,"noDashboardFound"):showSnackbar(void 0,"errorOccurred")}))}deleteDashboard(e){null!=e.id&&DashboardService.delete(e.id,this.realm).then((()=>{this.getAllDashboards()})).catch((e=>{console.error(e),showSnackbar(void 0,"errorOccurred")}))}onDashboardClick(e){var t;e!==(null===(t=this.selected)||void 0===t?void 0:t.id)&&(this.hasChanged?this.showDiscardChangesModal().then((t=>{t&&this.selectDashboard(e)})):this.selectDashboard(e))}showDiscardChangesModal(){return showOkCancelDialog(i18next.t("areYouSure"),i18next.t("confirmContinueDashboardModified"),i18next.t("discard"))}render(){var e;const t=[];if(this.dashboards&&this.dashboards.length>0&&this.userId){const r=[],o=[];if(null===(e=this.dashboards)||void 0===e||e.forEach((e=>{e.ownerId===this.userId?r.push(e):o.push(e)})),r.length>0){const e=[];r.sort(((e,t)=>e.displayName?e.displayName.localeCompare(t.displayName):0)).forEach((t=>{e.push({icon:"view-dashboard",text:t.displayName,value:t.id})})),t.push(e)}if(o.length>0){const e=[];o.sort(((e,t)=>e.displayName?e.displayName.localeCompare(t.displayName):0)).forEach((t=>{e.push({icon:"view-dashboard",text:t.displayName,value:t.id})})),t.push(e)}}return html`
17
+ `;let OrDashboardTree=class extends LitElement{constructor(){super(...arguments),this.realm=manager.displayRealm,this.readonly=!0,this.hasChanged=!1,this.showControls=!0}static get styles(){return[style,treeStyling,OrAssetTreeStyle]}shouldUpdate(e){return(1!==e.size||!e.has("hasChanged")||!this.hasChanged)&&super.shouldUpdate(e)}updated(e){this.dashboards||this.getAllDashboards(),e.has("dashboards")&&null!=e.get("dashboards")&&this.dispatchEvent(new CustomEvent("updated",{detail:this.dashboards})),e.has("selected")&&this.dispatchEvent(new CustomEvent("select",{detail:this.selected}))}getAllDashboards(){return __awaiter(this,void 0,void 0,(function*(){return manager.rest.api.DashboardResource.getAllRealmDashboards(this.realm).then((e=>{this.dashboards=e.data})).catch((e=>{console.error(e),showSnackbar(void 0,"errorOccurred")}))}))}selectDashboard(e){var t;this.selected="string"==typeof e?null===(t=this.dashboards)||void 0===t?void 0:t.find((t=>t.id===e)):e}createDashboard(e){DashboardService.create(void 0,e,this.realm).then((e=>{this.dashboards?(this.dashboards.push(e),this.requestUpdate("dashboards")):this.dashboards=[e],this.dispatchEvent(new CustomEvent("created",{detail:{d:e}})),this.selectDashboard(e)})).catch((e=>{var t;console.error(e),isAxiosError(e)&&404===(null===(t=e.response)||void 0===t?void 0:t.status)?showSnackbar(void 0,"noDashboardFound"):showSnackbar(void 0,"errorOccurred")}))}duplicateDashboard(e){null!==(null==e?void 0:e.id)?this.hasChanged?this.showDiscardChangesModal().then((t=>{t&&this._doDuplicateDashboard(e)})):this._doDuplicateDashboard(e):console.warn("Tried duplicating a NULL dashboard!")}_doDuplicateDashboard(e){const t=JSON.parse(JSON.stringify(e));t.displayName=t.displayName+" copy",t.template&&(t.template.id=Math.random().toString(36).slice(2,String(t.template.id).length+2)),DashboardService.create(t,void 0,this.realm).then((e=>{this.dashboards?(this.dashboards.push(e),this.requestUpdate("dashboards")):this.dashboards=[e],this.dispatchEvent(new CustomEvent("created",{detail:{d:e}})),this.selectDashboard(e.id)})).catch((e=>{var t;console.error(e),isAxiosError(e)&&404===(null===(t=e.response)||void 0===t?void 0:t.status)?showSnackbar(void 0,"noDashboardFound"):showSnackbar(void 0,"errorOccurred")}))}deleteDashboard(e){null!=e.id&&DashboardService.delete(e.id,this.realm).then((()=>{this.getAllDashboards()})).catch((e=>{console.error(e),showSnackbar(void 0,"errorOccurred")}))}onDashboardClick(e){var t;e!==(null===(t=this.selected)||void 0===t?void 0:t.id)&&(this.hasChanged?this.showDiscardChangesModal().then((t=>{t&&this.selectDashboard(e)})):this.selectDashboard(e))}showDiscardChangesModal(){return showOkCancelDialog(i18next.t("areYouSure"),i18next.t("confirmContinueDashboardModified"),i18next.t("discard"))}render(){var e;const t=(null===(e=this.dashboards)||void 0===e?void 0:e.sort(((e,t)=>e.displayName?e.displayName.localeCompare(t.displayName):0)).map((e=>({icon:"view-dashboard",text:e.displayName,value:e.id}))))||[];return html`
18
18
  <div id="menu-header">
19
19
  <div id="title-container">
20
20
  <span id="title"><or-translate value="insights"></or-translate></span>
@@ -43,25 +43,16 @@ var __decorate=this&&this.__decorate||function(e,t,r,o){var a,s=arguments.length
43
43
 
44
44
  <!-- List of dashboards -->
45
45
  <div id="content">
46
- <div style="padding-top: 8px;">
47
- ${t.map(((e,t)=>null!=e&&e.length>0?html`
48
- <div style="padding: 8px 0;">
49
- <span style="font-weight: 500; padding-left: 14px; color: #000000;">
50
- <or-translate value="${0===t?"dashboard.myDashboards":"dashboard.createdByOthers"}"></or-translate>
51
- </span>
52
- <div id="list-container" style="overflow: hidden;">
53
- <ol id="list">
54
- ${e.map((e=>{var t;return html`
55
- <li ?data-selected="${e.value===(null===(t=this.selected)||void 0===t?void 0:t.id)}" @click="${t=>{this.onDashboardClick(e.value)}}">
56
- <div class="node-container">
57
- <span class="node-name">${e.text} </span>
58
- </div>
59
- </li>
60
- `}))}
61
- </ol>
46
+ <div id="list-container" style="overflow: hidden;">
47
+ <ol id="list">
48
+ ${t.map((e=>{var t;return html`
49
+ <li ?data-selected="${e.value===(null===(t=this.selected)||void 0===t?void 0:t.id)}" @click="${t=>this.onDashboardClick(e.value)}">
50
+ <div class="node-container">
51
+ <span class="node-name">${e.text} </span>
62
52
  </div>
63
- </div>
64
- `:void 0))}
53
+ </li>
54
+ `}))}
55
+ </ol>
65
56
  </div>
66
57
  </div>
67
58
  `}};__decorate([property()],OrDashboardTree.prototype,"dashboards",void 0),__decorate([property()],OrDashboardTree.prototype,"selected",void 0),__decorate([property()],OrDashboardTree.prototype,"realm",void 0),__decorate([property()],OrDashboardTree.prototype,"userId",void 0),__decorate([property()],OrDashboardTree.prototype,"readonly",void 0),__decorate([property()],OrDashboardTree.prototype,"hasChanged",void 0),__decorate([property()],OrDashboardTree.prototype,"showControls",void 0),OrDashboardTree=__decorate([customElement("or-dashboard-tree")],OrDashboardTree);export{OrDashboardTree};
@@ -1 +1 @@
1
- {"version":3,"file":"or-dashboard-tree.js","sourceRoot":"","sources":["../src/or-dashboard-tree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"or-dashboard-tree.js","sourceRoot":"","sources":["../src/or-dashboard-tree.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,9 @@
1
- var __decorate=this&&this.__decorate||function(e,t,i,n){var r,o=arguments.length,a=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,i,n);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(a=(o<3?r(a):o>3?r(t,i,a):r(t,i))||a);return o>3&&a&&Object.defineProperty(t,i,a),a},__awaiter=this&&this.__awaiter||function(e,t,i,n){return new(i||(i=Promise))((function(r,o){function a(e){try{l(n.next(e))}catch(e){o(e)}}function s(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(a,s)}l((n=n.apply(e,t||[])).next())}))};import{css,html,LitElement}from"lit";import{customElement,property}from"lit/decorators.js";import{until}from"lit/directives/until.js";import{when}from"lit/directives/when.js";import{classMap}from"lit/directives/class-map.js";import{style}from"../style";const styling=css`
1
+ var __decorate=this&&this.__decorate||function(e,t,i,n){var r,a=arguments.length,o=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,i,n);else for(var s=e.length-1;s>=0;s--)(r=e[s])&&(o=(a<3?r(o):a>3?r(t,i,o):r(t,i))||o);return a>3&&o&&Object.defineProperty(t,i,o),o},__awaiter=this&&this.__awaiter||function(e,t,i,n){return new(i||(i=Promise))((function(r,a){function o(e){try{l(n.next(e))}catch(e){a(e)}}function s(e){try{l(n.throw(e))}catch(e){a(e)}}function l(e){var t;e.done?r(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(o,s)}l((n=n.apply(e,t||[])).next())}))};import{css,html,LitElement}from"lit";import{customElement,property}from"lit/decorators.js";import{until}from"lit/directives/until.js";import{when}from"lit/directives/when.js";import{classMap}from"lit/directives/class-map.js";import{style}from"../style";const styling=css`
2
2
  :host {
3
3
  height: auto !important;
4
4
  }
5
5
 
6
6
  #panel-wrapper {
7
- border-top: 1px solid #E0E0E0;
8
7
  border-bottom: 1px solid #E0E0E0;
9
8
  }
10
9
 
@@ -1 +1 @@
1
- {"version":3,"file":"settings-panel.js","sourceRoot":"","sources":["../../src/util/settings-panel.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,OAAO,EAAC,GAAG,EAAE,IAAI,EAAE,UAAU,EAAkB,MAAM,KAAK,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAC,KAAK,EAAC,MAAM,UAAU,CAAC;AAE/B,MAAM,OAAO,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmClB,CAAC;AAGK,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,UAAU;IAAtC;;QAGO,aAAQ,GAAY,KAAK,CAAC;IA4CxC,CAAC;IAvCG,MAAM,KAAK,MAAM;QACb,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IAC3B,CAAC;IAES,MAAM;QACZ,MAAM,cAAc,GAAG;YACnB,eAAe,EAAE,IAAI;YACrB,yBAAyB,EAAE,IAAI,CAAC,QAAQ;SAC3C,CAAA;QACD,OAAO,IAAI,CAAA;;kBAED,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,IAAI,CAAA,EAAE,CAAC;8BACvD,QAAQ,CAAC,cAAc,CAAC;;;;;;SAM7C,CAAC;IACN,CAAC;IAEM,MAAM,CAAC,KAAe;QACzB,IAAI,CAAC,QAAQ,GAAG,KAAK,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAA;IAC3C,CAAC;IAEe,cAAc,CAAC,QAAiB,EAAE,KAAc;;YAC5D,OAAO,IAAI,CAAA;6CAC0B,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE;;qCAE3B,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,eAAe;;kBAE9D,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAA;;qDAEa,IAAI,CAAC,WAAW;;iBAEpD,CAAC;;SAET,CAAA;QACL,CAAC;KAAA;CACJ,CAAA;AA5Ca;IADT,QAAQ,EAAE;+CACyB;AAG1B;IADT,QAAQ,EAAE;kDACoB;AANtB,aAAa;IADzB,aAAa,CAAC,gBAAgB,CAAC;GACnB,aAAa,CA+CzB"}
1
+ {"version":3,"file":"settings-panel.js","sourceRoot":"","sources":["../../src/util/settings-panel.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,OAAO,EAAC,GAAG,EAAE,IAAI,EAAE,UAAU,EAAkB,MAAM,KAAK,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAC,KAAK,EAAC,MAAM,UAAU,CAAC;AAE/B,MAAM,OAAO,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkClB,CAAC;AAGK,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,UAAU;IAAtC;;QAGO,aAAQ,GAAY,KAAK,CAAC;IA4CxC,CAAC;IAvCG,MAAM,KAAK,MAAM;QACb,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IAC3B,CAAC;IAES,MAAM;QACZ,MAAM,cAAc,GAAG;YACnB,eAAe,EAAE,IAAI;YACrB,yBAAyB,EAAE,IAAI,CAAC,QAAQ;SAC3C,CAAA;QACD,OAAO,IAAI,CAAA;;kBAED,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,IAAI,CAAA,EAAE,CAAC;8BACvD,QAAQ,CAAC,cAAc,CAAC;;;;;;SAM7C,CAAC;IACN,CAAC;IAEM,MAAM,CAAC,KAAe;QACzB,IAAI,CAAC,QAAQ,GAAG,KAAK,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAA;IAC3C,CAAC;IAEe,cAAc,CAAC,QAAiB,EAAE,KAAc;;YAC5D,OAAO,IAAI,CAAA;6CAC0B,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE;;qCAE3B,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,eAAe;;kBAE9D,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAA;;qDAEa,IAAI,CAAC,WAAW;;iBAEpD,CAAC;;SAET,CAAA;QACL,CAAC;KAAA;CACJ,CAAA;AA5Ca;IADT,QAAQ,EAAE;+CACyB;AAG1B;IADT,QAAQ,EAAE;kDACoB;AANtB,aAAa;IADzB,aAAa,CAAC,gBAAgB,CAAC;GACnB,aAAa,CA+CzB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openremote/or-dashboard-builder",
3
- "version": "1.5.0-snapshot.20250422151242",
3
+ "version": "1.5.0-snapshot.20250422162853",
4
4
  "description": "OpenRemote Dashboard Builder",
5
5
  "main": "dist/umd/index.bundle.js",
6
6
  "module": "lib/index.js",
@@ -16,15 +16,15 @@
16
16
  "author": "OpenRemote",
17
17
  "license": "AGPL-3.0-or-later",
18
18
  "dependencies": {
19
- "@openremote/core": "1.5.0-snapshot.20250422151242",
20
- "@openremote/model": "1.5.0-snapshot.20250422151242",
21
- "@openremote/or-chart": "1.5.0-snapshot.20250422151242",
22
- "@openremote/rest": "1.5.0-snapshot.20250422151242",
19
+ "@openremote/core": "1.5.0-snapshot.20250422162853",
20
+ "@openremote/model": "1.5.0-snapshot.20250422162853",
21
+ "@openremote/or-chart": "1.5.0-snapshot.20250422162853",
22
+ "@openremote/rest": "1.5.0-snapshot.20250422162853",
23
23
  "gridstack": "^7.2.0",
24
24
  "lit": "^2.0.2"
25
25
  },
26
26
  "devDependencies": {
27
- "@openremote/util": "1.5.0-snapshot.20250422151242"
27
+ "@openremote/util": "1.5.0-snapshot.20250422162853"
28
28
  },
29
29
  "publishConfig": {
30
30
  "access": "public"
package/src/index.ts CHANGED
@@ -544,13 +544,13 @@ export class OrDashboardBuilder extends LitElement {
544
544
  }
545
545
 
546
546
  protected _isReadonly(): boolean {
547
- return this.readonly || !manager.hasRole(ClientRole.WRITE_INSIGHTS);
547
+ return this.readonly;
548
548
  }
549
549
  protected _hasEditAccess(): boolean {
550
- return this.userId != null && (this.selectedDashboard?.editAccess == DashboardAccess.PRIVATE ? this.selectedDashboard?.ownerId == this.userId : true)
550
+ return manager.hasRole(ClientRole.WRITE_INSIGHTS);
551
551
  }
552
552
  protected _hasViewAccess(): boolean {
553
- return this.userId != null && (this.selectedDashboard?.viewAccess == DashboardAccess.PRIVATE ? this.selectedDashboard?.ownerId == this.userId : true)
553
+ return manager.hasRole(ClientRole.READ_INSIGHTS) && this.userId != null && (this.selectedDashboard?.access == DashboardAccess.PRIVATE ? this.selectedDashboard?.ownerId == this.userId : true)
554
554
  }
555
555
 
556
556
  /* ----------------- */
@@ -597,8 +597,8 @@ export class OrDashboardBuilder extends LitElement {
597
597
  <div id="header-title">
598
598
  <or-icon icon="view-dashboard"></or-icon>
599
599
  ${this.selectedDashboard != null ? html`
600
- <or-mwc-input .type="${InputType.TEXT}" min="1" max="1023" comfortable required outlined .label="${i18next.t('name') + '*\xa0'}"
601
- ?readonly="${this._isReadonly()}" .value="${this.selectedDashboard.displayName}"
600
+ <or-mwc-input .type="${InputType.TEXT}" min="1" max="1023" comfortable required outlined .label="${i18next.t('name')}"
601
+ ?readonly="${this._isReadonly() || !this._hasEditAccess()}" .value="${this.selectedDashboard.displayName}"
602
602
  .disabled="${this.isLoading}" style="width: 300px;"
603
603
  @or-mwc-input-changed="${(event: OrInputChangedEvent) => { this.changeDashboardName(event.detail.value); }}"
604
604
  ></or-mwc-input>
@@ -668,7 +668,7 @@ export class OrDashboardBuilder extends LitElement {
668
668
  <or-dashboard-preview class="editor" style="background: transparent;"
669
669
  .realm="${this.realm}" .template="${this.currentTemplate}"
670
670
  .selectedWidget="${this.selectedDashboard?.template?.widgets?.find(w => w.id == this.selectedWidgetId)}" .editMode="${this.editMode}"
671
- .fullscreen="${this.fullscreen}" .readonly="${this._isReadonly()}"
671
+ .fullscreen="${this.fullscreen}" .readonly="${this._isReadonly() || !this._hasEditAccess()}"
672
672
  @selected="${(event: CustomEvent) => { this.selectWidget(event.detail); }}"
673
673
  @deselected="${() => { this.deselectWidget(); }}"
674
674
  @created="${(event: CustomEvent) => { this.onWidgetCreation(event.detail); }}"
@@ -721,7 +721,7 @@ export class OrDashboardBuilder extends LitElement {
721
721
  <div style="position: relative;">
722
722
  <or-dashboard-browser id="browser" style="position: absolute; ${this.sidebarMenuIndex != 0 ? css`display: none` : null}"></or-dashboard-browser>
723
723
  <or-dashboard-boardsettings style="position: absolute; ${this.sidebarMenuIndex != 1 ? css`display: none` : null}"
724
- .dashboard="${this.selectedDashboard}" .showPerms="${this.selectedDashboard?.ownerId == this.userId}"
724
+ .dashboard="${this.selectedDashboard}" showPerms
725
725
  @update="${(event: CustomEvent) => {
726
726
  this.currentTemplate = Object.assign({}, this.selectedDashboard?.template);
727
727
  if(event.detail.force) { this.deselectWidget(); this.dashboardPreview?.refreshPreview(); }}}"
@@ -18,11 +18,11 @@ const boardSettingsStyling = css`
18
18
  @customElement("or-dashboard-boardsettings")
19
19
  export class OrDashboardBoardsettings extends LitElement {
20
20
 
21
- @property()
22
- protected readonly dashboard!: Dashboard;
21
+ @property({ type: Object })
22
+ public readonly dashboard!: Dashboard;
23
23
 
24
- @property()
25
- protected readonly showPerms?: boolean;
24
+ @property({ type: Boolean })
25
+ public readonly showPerms?: boolean;
26
26
 
27
27
  /* ------------------------- */
28
28
 
@@ -36,17 +36,8 @@ export class OrDashboardBoardsettings extends LitElement {
36
36
 
37
37
  /* -------------------------------- */
38
38
 
39
- private setViewAccess(access: DashboardAccess) {
40
- this.dashboard.viewAccess = access;
41
- if (access === DashboardAccess.PRIVATE) {
42
- this.dashboard.editAccess = DashboardAccess.PRIVATE; // if viewAccess changed to PRIVATE, make editAccess private as well.
43
- }
44
- this.requestUpdate();
45
- this.forceParentUpdate(false);
46
- }
47
-
48
- private setEditAccess(access: DashboardAccess) {
49
- this.dashboard.editAccess = access;
39
+ private setAccess(access: DashboardAccess) {
40
+ this.dashboard.access = access;
50
41
  this.requestUpdate();
51
42
  this.forceParentUpdate(false);
52
43
  }
@@ -66,8 +57,7 @@ export class OrDashboardBoardsettings extends LitElement {
66
57
  protected render() {
67
58
  if (this.dashboard.template?.screenPresets != null) {
68
59
  const screenPresets = sortScreenPresets(this.dashboard.template.screenPresets, true);
69
- const viewAccessOptions = [DashboardAccess.PRIVATE, DashboardAccess.SHARED, DashboardAccess.PUBLIC].map((access) => ({key: access, value: dashboardAccessToString(access)}));
70
- const editAccessOptions = [DashboardAccess.PRIVATE, DashboardAccess.SHARED].map((access) => ({key: access, value: dashboardAccessToString(access)}));
60
+ const accessOptions = [DashboardAccess.PRIVATE, DashboardAccess.SHARED, DashboardAccess.PUBLIC].map((access) => ({key: access, value: dashboardAccessToString(access)}));
71
61
  const refreshIntervalOptions = [DashboardRefreshInterval.OFF, DashboardRefreshInterval.ONE_MIN, DashboardRefreshInterval.FIVE_MIN, DashboardRefreshInterval.QUARTER, DashboardRefreshInterval.ONE_HOUR].map(interval => ({key: interval, value: `dashboard.interval.${interval.toLowerCase()}`}))
72
62
  const scalingPresets: { key: DashboardScalingPreset, value: string }[] = [];
73
63
  [DashboardScalingPreset.KEEP_LAYOUT, DashboardScalingPreset.WRAP_TO_SINGLE_COLUMN, /*DashboardScalingPreset.REDIRECT,*/ DashboardScalingPreset.BLOCK_DEVICE].forEach((preset: DashboardScalingPreset) => {
@@ -79,31 +69,16 @@ export class OrDashboardBoardsettings extends LitElement {
79
69
  ${when(this.showPerms, () => html`
80
70
  <settings-panel displayName="permissions" expanded="${true}">
81
71
  <div>
82
- <div style="margin-bottom: 24px;">
83
- <div class="label">
84
- ${html`<span>${unsafeHTML(i18next.t('dashboard.whoCanView').toString())}</span>`}
85
- </div>
86
- <or-mwc-input class="permissionInput" comfortable type="${InputType.SELECT}" style="width: 100%;"
87
- .options="${viewAccessOptions.map((access) => access.value)}"
88
- .value="${dashboardAccessToString(this.dashboard.viewAccess!)}"
89
- @or-mwc-input-changed="${(event: OrInputChangedEvent) => {
90
- this.setViewAccess(viewAccessOptions.find((access) => access.value == event.detail.value)?.key!);
91
- }}"
92
- ></or-mwc-input>
93
- </div>
94
- <div style="margin-bottom: 24px;">
95
- <div class="label">
96
- ${html`<span>${unsafeHTML(i18next.t('dashboard.whoCanEdit').toString())}</span>`}
97
- </div>
98
- <or-mwc-input class="permissionInput" comfortable type="${InputType.SELECT}" style="width: 100%;"
99
- .disabled="${(this.dashboard.viewAccess == DashboardAccess.PRIVATE)}"
100
- .options="${editAccessOptions.map((access) => access.value)}"
101
- .value="${dashboardAccessToString(this.dashboard.editAccess!)}"
102
- @or-mwc-input-changed="${(event: OrInputChangedEvent) => {
103
- this.setEditAccess(editAccessOptions.find((access) => access.value == event.detail.value)?.key!);
104
- }}"
105
- ></or-mwc-input>
72
+ <div class="label">
73
+ ${html`<span>${unsafeHTML(i18next.t('dashboard.whoCanView').toString())}</span>`}
106
74
  </div>
75
+ <or-mwc-input class="permissionInput" comfortable type="${InputType.SELECT}" style="width: 100%;"
76
+ .options="${accessOptions.map((access) => access.value)}"
77
+ .value="${dashboardAccessToString(this.dashboard.access!)}"
78
+ @or-mwc-input-changed="${(event: OrInputChangedEvent) => {
79
+ this.setAccess(accessOptions.find((access) => access.value == event.detail.value)?.key!);
80
+ }}"
81
+ ></or-mwc-input>
107
82
  </div>
108
83
  </settings-panel>
109
84
  `)}
@@ -647,10 +647,12 @@ export class OrDashboardPreview extends LitElement {
647
647
  }
648
648
 
649
649
  protected resizeObserverCallback: ResizeObserverCallback = (entries: ResizeObserverEntry[]) => {
650
- if((this.previousObserverEntry?.contentRect.width + "px") !== (entries[0].contentRect.width + "px")) {
651
- this._onGridResize();
652
- }
653
- this.previousObserverEntry = entries[0];
650
+ requestAnimationFrame(() => {
651
+ if((this.previousObserverEntry?.contentRect.width + "px") !== (entries[0].contentRect.width + "px")) {
652
+ this._onGridResize();
653
+ }
654
+ this.previousObserverEntry = entries[0];
655
+ });
654
656
  }
655
657
 
656
658
  protected _onGridResize() {
@@ -213,30 +213,8 @@ export class OrDashboardTree extends LitElement {
213
213
  // Element render method
214
214
  // TODO: Move dashboard filtering to separate method.
215
215
  protected render() {
216
- const dashboardItems: ListItem[][] = [];
217
- if (this.dashboards && this.dashboards.length > 0) {
218
- if (this.userId) {
219
- const myDashboards: Dashboard[] = [];
220
- const otherDashboards: Dashboard[] = [];
221
- this.dashboards?.forEach(d => {
222
- (d.ownerId === this.userId) ? myDashboards.push(d) : otherDashboards.push(d);
223
- });
224
- if (myDashboards.length > 0) {
225
- const items: ListItem[] = [];
226
- myDashboards.sort((a, b) => a.displayName ? a.displayName.localeCompare(b.displayName!) : 0).forEach(d => {
227
- items.push({icon: 'view-dashboard', text: d.displayName, value: d.id});
228
- });
229
- dashboardItems.push(items);
230
- }
231
- if (otherDashboards.length > 0) {
232
- const items: ListItem[] = [];
233
- otherDashboards.sort((a, b) => a.displayName ? a.displayName.localeCompare(b.displayName!) : 0).forEach(d => {
234
- items.push({icon: 'view-dashboard', text: d.displayName, value: d.id});
235
- });
236
- dashboardItems.push(items);
237
- }
238
- }
239
- }
216
+ const dashboardItems = this.dashboards?.sort((a, b) => a.displayName ? a.displayName.localeCompare(b.displayName!) : 0)
217
+ .map(d => ({ icon: 'view-dashboard', text: d.displayName, value: d.id} as ListItem)) || []
240
218
  return html`
241
219
  <div id="menu-header">
242
220
  <div id="title-container">
@@ -280,31 +258,16 @@ export class OrDashboardTree extends LitElement {
280
258
 
281
259
  <!-- List of dashboards -->
282
260
  <div id="content">
283
- <div style="padding-top: 8px;">
284
- ${dashboardItems.map((items, index) => {
285
- return (items != null && items.length > 0) ? html`
286
- <div style="padding: 8px 0;">
287
- <span style="font-weight: 500; padding-left: 14px; color: #000000;">
288
- <or-translate value="${(index === 0 ? 'dashboard.myDashboards' : 'dashboard.createdByOthers')}"></or-translate>
289
- </span>
290
- <div id="list-container" style="overflow: hidden;">
291
- <ol id="list">
292
- ${items.map((listItem: ListItem) => {
293
- return html`
294
- <li ?data-selected="${listItem.value === this.selected?.id}" @click="${(_evt: MouseEvent) => {
295
- this.onDashboardClick(listItem.value);
296
- }}">
297
- <div class="node-container">
298
- <span class="node-name">${listItem.text} </span>
299
- </div>
300
- </li>
301
- `;
302
- })}
303
- </ol>
261
+ <div id="list-container" style="overflow: hidden;">
262
+ <ol id="list">
263
+ ${dashboardItems.map((listItem: ListItem) => html`
264
+ <li ?data-selected="${listItem.value === this.selected?.id}" @click="${(_evt: MouseEvent) => this.onDashboardClick(listItem.value)}">
265
+ <div class="node-container">
266
+ <span class="node-name">${listItem.text} </span>
304
267
  </div>
305
- </div>
306
- ` : undefined;
307
- })}
268
+ </li>
269
+ `)}
270
+ </ol>
308
271
  </div>
309
272
  </div>
310
273
  `;
@@ -11,7 +11,6 @@ const styling = css`
11
11
  }
12
12
 
13
13
  #panel-wrapper {
14
- border-top: 1px solid #E0E0E0;
15
14
  border-bottom: 1px solid #E0E0E0;
16
15
  }
17
16