@openremote/or-dashboard-builder 1.2.0-snapshot.20240512160221

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.
Files changed (167) hide show
  1. package/README.md +156 -0
  2. package/build.gradle +15 -0
  3. package/lib/controls/dashboard-refresh-controls.d.ts +17 -0
  4. package/lib/controls/dashboard-refresh-controls.js +17 -0
  5. package/lib/controls/dashboard-refresh-controls.js.map +1 -0
  6. package/lib/index.d.ts +71 -0
  7. package/lib/index.js +285 -0
  8. package/lib/index.js.map +1 -0
  9. package/lib/or-dashboard-boardsettings.d.ts +19 -0
  10. package/lib/or-dashboard-boardsettings.js +121 -0
  11. package/lib/or-dashboard-boardsettings.js.map +1 -0
  12. package/lib/or-dashboard-browser.d.ts +9 -0
  13. package/lib/or-dashboard-browser.js +35 -0
  14. package/lib/or-dashboard-browser.js.map +1 -0
  15. package/lib/or-dashboard-engine.d.ts +4 -0
  16. package/lib/or-dashboard-engine.js +1 -0
  17. package/lib/or-dashboard-engine.js.map +1 -0
  18. package/lib/or-dashboard-keyhandler.d.ts +6 -0
  19. package/lib/or-dashboard-keyhandler.js +1 -0
  20. package/lib/or-dashboard-keyhandler.js.map +1 -0
  21. package/lib/or-dashboard-preview.d.ts +70 -0
  22. package/lib/or-dashboard-preview.js +155 -0
  23. package/lib/or-dashboard-preview.js.map +1 -0
  24. package/lib/or-dashboard-settingspanel.d.ts +44 -0
  25. package/lib/or-dashboard-settingspanel.js +216 -0
  26. package/lib/or-dashboard-settingspanel.js.map +1 -0
  27. package/lib/or-dashboard-tree.d.ts +25 -0
  28. package/lib/or-dashboard-tree.js +62 -0
  29. package/lib/or-dashboard-tree.js.map +1 -0
  30. package/lib/or-dashboard-widget.d.ts +18 -0
  31. package/lib/or-dashboard-widget.js +15 -0
  32. package/lib/or-dashboard-widget.js.map +1 -0
  33. package/lib/or-dashboard-widgetcontainer.d.ts +23 -0
  34. package/lib/or-dashboard-widgetcontainer.js +20 -0
  35. package/lib/or-dashboard-widgetcontainer.js.map +1 -0
  36. package/lib/or-dashboard-widgetsettings.d.ts +15 -0
  37. package/lib/or-dashboard-widgetsettings.js +16 -0
  38. package/lib/or-dashboard-widgetsettings.js.map +1 -0
  39. package/lib/panels/assettypes-panel.d.ts +44 -0
  40. package/lib/panels/assettypes-panel.js +51 -0
  41. package/lib/panels/assettypes-panel.js.map +1 -0
  42. package/lib/panels/attributes-panel.d.ts +41 -0
  43. package/lib/panels/attributes-panel.js +126 -0
  44. package/lib/panels/attributes-panel.js.map +1 -0
  45. package/lib/panels/thresholds-panel.d.ts +39 -0
  46. package/lib/panels/thresholds-panel.js +129 -0
  47. package/lib/panels/thresholds-panel.js.map +1 -0
  48. package/lib/service/dashboard-service.d.ts +13 -0
  49. package/lib/service/dashboard-service.js +1 -0
  50. package/lib/service/dashboard-service.js.map +1 -0
  51. package/lib/service/widget-service.d.ts +8 -0
  52. package/lib/service/widget-service.js +1 -0
  53. package/lib/service/widget-service.js.map +1 -0
  54. package/lib/settings/attribute-input-settings.d.ts +13 -0
  55. package/lib/settings/attribute-input-settings.js +36 -0
  56. package/lib/settings/attribute-input-settings.js.map +1 -0
  57. package/lib/settings/chart-settings.d.ts +30 -0
  58. package/lib/settings/chart-settings.js +144 -0
  59. package/lib/settings/chart-settings.js.map +1 -0
  60. package/lib/settings/gauge-settings.d.ts +15 -0
  61. package/lib/settings/gauge-settings.js +37 -0
  62. package/lib/settings/gauge-settings.js.map +1 -0
  63. package/lib/settings/image-settings.d.ts +17 -0
  64. package/lib/settings/image-settings.js +52 -0
  65. package/lib/settings/image-settings.js.map +1 -0
  66. package/lib/settings/kpi-settings.d.ts +15 -0
  67. package/lib/settings/kpi-settings.js +47 -0
  68. package/lib/settings/kpi-settings.js.map +1 -0
  69. package/lib/settings/map-settings.d.ts +21 -0
  70. package/lib/settings/map-settings.js +72 -0
  71. package/lib/settings/map-settings.js.map +1 -0
  72. package/lib/settings/table-settings.d.ts +14 -0
  73. package/lib/settings/table-settings.js +33 -0
  74. package/lib/settings/table-settings.js.map +1 -0
  75. package/lib/style.d.ts +1 -0
  76. package/lib/style.js +99 -0
  77. package/lib/style.js.map +1 -0
  78. package/lib/util/or-asset-widget.d.ts +20 -0
  79. package/lib/util/or-asset-widget.js +1 -0
  80. package/lib/util/or-asset-widget.js.map +1 -0
  81. package/lib/util/or-widget.d.ts +31 -0
  82. package/lib/util/or-widget.js +1 -0
  83. package/lib/util/or-widget.js.map +1 -0
  84. package/lib/util/settings-panel.d.ts +9 -0
  85. package/lib/util/settings-panel.js +56 -0
  86. package/lib/util/settings-panel.js.map +1 -0
  87. package/lib/util/widget-config.d.ts +2 -0
  88. package/lib/util/widget-config.js +1 -0
  89. package/lib/util/widget-config.js.map +1 -0
  90. package/lib/util/widget-settings.d.ts +23 -0
  91. package/lib/util/widget-settings.js +1 -0
  92. package/lib/util/widget-settings.js.map +1 -0
  93. package/lib/widgets/attribute-input-widget.d.ts +24 -0
  94. package/lib/widgets/attribute-input-widget.js +31 -0
  95. package/lib/widgets/attribute-input-widget.js.map +1 -0
  96. package/lib/widgets/chart-widget.d.ts +25 -0
  97. package/lib/widgets/chart-widget.js +15 -0
  98. package/lib/widgets/chart-widget.js.map +1 -0
  99. package/lib/widgets/gauge-widget.d.ts +22 -0
  100. package/lib/widgets/gauge-widget.js +12 -0
  101. package/lib/widgets/gauge-widget.js.map +1 -0
  102. package/lib/widgets/image-widget.d.ts +25 -0
  103. package/lib/widgets/image-widget.js +54 -0
  104. package/lib/widgets/image-widget.js.map +1 -0
  105. package/lib/widgets/kpi-widget.d.ts +21 -0
  106. package/lib/widgets/kpi-widget.js +8 -0
  107. package/lib/widgets/kpi-widget.js.map +1 -0
  108. package/lib/widgets/map-widget.d.ts +39 -0
  109. package/lib/widgets/map-widget.js +9 -0
  110. package/lib/widgets/map-widget.js.map +1 -0
  111. package/lib/widgets/or-base-widget.d.ts +15 -0
  112. package/lib/widgets/or-base-widget.js +1 -0
  113. package/lib/widgets/or-base-widget.js.map +1 -0
  114. package/lib/widgets/or-chart-widget.d.ts +36 -0
  115. package/lib/widgets/or-chart-widget.js +112 -0
  116. package/lib/widgets/or-chart-widget.js.map +1 -0
  117. package/lib/widgets/or-gauge-widget.d.ts +46 -0
  118. package/lib/widgets/or-gauge-widget.js +60 -0
  119. package/lib/widgets/or-gauge-widget.js.map +1 -0
  120. package/lib/widgets/or-kpi-widget.d.ts +44 -0
  121. package/lib/widgets/or-kpi-widget.js +63 -0
  122. package/lib/widgets/or-kpi-widget.js.map +1 -0
  123. package/lib/widgets/or-map-widget.d.ts +49 -0
  124. package/lib/widgets/or-map-widget.js +75 -0
  125. package/lib/widgets/or-map-widget.js.map +1 -0
  126. package/lib/widgets/table-widget.d.ts +25 -0
  127. package/lib/widgets/table-widget.js +12 -0
  128. package/lib/widgets/table-widget.js.map +1 -0
  129. package/package.json +32 -0
  130. package/src/controls/dashboard-refresh-controls.ts +100 -0
  131. package/src/index.ts +731 -0
  132. package/src/or-dashboard-boardsettings.ts +249 -0
  133. package/src/or-dashboard-browser.ts +160 -0
  134. package/src/or-dashboard-engine.ts +17 -0
  135. package/src/or-dashboard-keyhandler.ts +25 -0
  136. package/src/or-dashboard-preview.ts +713 -0
  137. package/src/or-dashboard-tree.ts +304 -0
  138. package/src/or-dashboard-widgetcontainer.ts +155 -0
  139. package/src/or-dashboard-widgetsettings.ts +91 -0
  140. package/src/panels/assettypes-panel.ts +311 -0
  141. package/src/panels/attributes-panel.ts +304 -0
  142. package/src/panels/thresholds-panel.ts +285 -0
  143. package/src/service/dashboard-service.ts +89 -0
  144. package/src/service/widget-service.ts +48 -0
  145. package/src/settings/attribute-input-settings.ts +79 -0
  146. package/src/settings/chart-settings.ts +306 -0
  147. package/src/settings/gauge-settings.ts +93 -0
  148. package/src/settings/image-settings.ts +175 -0
  149. package/src/settings/kpi-settings.ts +106 -0
  150. package/src/settings/map-settings.ts +185 -0
  151. package/src/settings/table-settings.ts +92 -0
  152. package/src/style.ts +104 -0
  153. package/src/util/or-asset-widget.ts +110 -0
  154. package/src/util/or-widget.ts +60 -0
  155. package/src/util/settings-panel.ts +93 -0
  156. package/src/util/widget-config.ts +2 -0
  157. package/src/util/widget-settings.ts +58 -0
  158. package/src/widgets/attribute-input-widget.ts +143 -0
  159. package/src/widgets/chart-widget.ts +203 -0
  160. package/src/widgets/gauge-widget.ts +111 -0
  161. package/src/widgets/image-widget.ts +180 -0
  162. package/src/widgets/kpi-widget.ts +97 -0
  163. package/src/widgets/map-widget.ts +187 -0
  164. package/src/widgets/table-widget.ts +157 -0
  165. package/tsconfig.json +15 -0
  166. package/tsconfig.tsbuildinfo +1 -0
  167. package/webpack.config.js +10 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"widget-service.js","sourceRoot":"","sources":["../../src/service/widget-service.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAC,WAAW,EAAC,MAAM,UAAU,CAAC;AAErC,OAAO,EAAC,IAAI,EAAC,MAAM,kBAAkB,CAAC;AAGtC,MAAM,OAAO,aAAa;IAEf,MAAM,CAAC,WAAW,CAAC,YAAoB;QAC1C,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC/C,IAAG,CAAC,QAAQ,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAClF,CAAC;QACD,OAAO,QAAQ,CAAC;IACpB,CAAC;IAEM,MAAM,CAAO,QAAQ,CAAC,YAAoB,EAAE,CAAS,EAAE,CAAS;;YACnE,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;YAChD,MAAM,MAAM,GAAG;gBACX,EAAE,EAAE,QAAQ;gBACZ,WAAW,EAAE,QAAQ,CAAC,WAAW;gBACjC,QAAQ,EAAE;oBACN,EAAE,EAAE,QAAQ;oBACZ,CAAC,EAAE,CAAC;oBACJ,CAAC,EAAE,CAAC;oBACJ,CAAC,EAAE,CAAC;oBACJ,CAAC,EAAE,CAAC;oBACJ,IAAI,EAAE,QAAQ,CAAC,cAAc;oBAC7B,IAAI,EAAE,QAAQ,CAAC,eAAe;oBAC9B,SAAS,EAAE,QAAQ,CAAC,aAAa;oBACjC,SAAS,EAAE,QAAQ,CAAC,cAAc;oBAClC,QAAQ,EAAE,KAAK;oBACf,MAAM,EAAE,KAAK;oBACb,MAAM,EAAE,KAAK;iBAChB,EAAE,2DAA2D;gBAC9D,YAAY,EAAE,QAAQ,CAAC,gBAAgB,EAAE;gBACzC,YAAY,EAAE,YAAY;aACV,CAAC;YACrB,OAAO,MAAM,CAAC;QAClB,CAAC;KAAA;IAED,0DAA0D;IAC1D,4HAA4H;IACrH,MAAM,CAAC,mBAAmB,CAAC,QAAwB,EAAE,YAA0B;QAClF,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,gBAAgB,EAAE,EAAE,YAAY,EAAE,KAAK,CAAiB,CAAC;IAC/F,CAAC;CACJ"}
@@ -0,0 +1,13 @@
1
+ import { TemplateResult } from "lit";
2
+ import { AttributeInputWidgetConfig } from "../widgets/attribute-input-widget";
3
+ import { AttributesSelectEvent } from "../panels/attributes-panel";
4
+ import { OrInputChangedEvent } from "@openremote/or-mwc-components/or-mwc-input";
5
+ import { AssetWidgetSettings } from "../util/or-asset-widget";
6
+ export declare class AttributeInputSettings extends AssetWidgetSettings {
7
+ protected readonly widgetConfig: AttributeInputWidgetConfig;
8
+ static get styles(): import("lit").CSSResult[];
9
+ protected render(): TemplateResult;
10
+ protected onAttributesSelect(ev: AttributesSelectEvent): void;
11
+ protected onReadonlyToggle(ev: OrInputChangedEvent): void;
12
+ protected onHelperTextToggle(ev: OrInputChangedEvent): void;
13
+ }
@@ -0,0 +1,36 @@
1
+ var __decorate=this&&this.__decorate||function(t,e,i,s){var n,r=arguments.length,a=r<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,i,s);else for(var o=t.length-1;o>=0;o--)(n=t[o])&&(a=(r<3?n(a):r>3?n(e,i,a):n(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};import{css,html}from"lit";import{customElement}from"lit/decorators.js";import{InputType}from"@openremote/or-mwc-components/or-mwc-input";import{AssetWidgetSettings}from"../util/or-asset-widget";const styling=css`
2
+ .switch-container {
3
+ display: flex;
4
+ align-items: center;
5
+ justify-content: space-between;
6
+ }
7
+ `;let AttributeInputSettings=class extends AssetWidgetSettings{static get styles(){return[...super.styles,styling]}render(){return html`
8
+ <div>
9
+ <!-- Attribute selection -->
10
+ <settings-panel displayName="attributes" expanded="${!0}">
11
+ <attributes-panel .attributeRefs="${this.widgetConfig.attributeRefs}" style="padding-bottom: 12px;"
12
+ @attribute-select="${t=>this.onAttributesSelect(t)}"
13
+ ></attributes-panel>
14
+ </settings-panel>
15
+
16
+ <!-- Other settings -->
17
+ <settings-panel displayName="settings" expanded="${!0}">
18
+ <div>
19
+ <!-- Toggle readonly -->
20
+ <div class="switch-container">
21
+ <span><or-translate value="dashboard.userCanEdit"></or-translate></span>
22
+ <or-mwc-input .type="${InputType.SWITCH}" style="margin: 0 -10px;" .value="${!this.widgetConfig.readonly}"
23
+ @or-mwc-input-changed="${t=>this.onReadonlyToggle(t)}"
24
+ ></or-mwc-input>
25
+ </div>
26
+ <!-- Toggle helper text -->
27
+ <div class="switch-container">
28
+ <span><or-translate value="dashboard.showHelperText"></or-translate></span>
29
+ <or-mwc-input .type="${InputType.SWITCH}" style="margin: 0 -10px;" .value="${this.widgetConfig.showHelperText}"
30
+ @or-mwc-input-changed="${t=>this.onHelperTextToggle(t)}"
31
+ ></or-mwc-input>
32
+ </div>
33
+ </div>
34
+ </settings-panel>
35
+ </div>
36
+ `}onAttributesSelect(t){if(this.widgetConfig.attributeRefs=t.detail.attributeRefs,1===t.detail.attributeRefs.length){const e=t.detail.assets.find((e=>e.id===t.detail.attributeRefs[0].id));e&&this.setDisplayName(e.name)}this.notifyConfigUpdate()}onReadonlyToggle(t){this.widgetConfig.readonly=!t.detail.value,this.notifyConfigUpdate()}onHelperTextToggle(t){this.widgetConfig.showHelperText=t.detail.value,this.notifyConfigUpdate()}};AttributeInputSettings=__decorate([customElement("attribute-input-settings")],AttributeInputSettings);export{AttributeInputSettings};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attribute-input-settings.js","sourceRoot":"","sources":["../../src/settings/attribute-input-settings.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAC,GAAG,EAAE,IAAI,EAAkB,MAAM,KAAK,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGlD,OAAO,EAAE,SAAS,EAAuB,MAAM,4CAA4C,CAAC;AAC5F,OAAO,EAAC,mBAAmB,EAAC,MAAM,yBAAyB,CAAC;AAE5D,MAAM,OAAO,GAAG,GAAG,CAAA;;;;;;CAMlB,CAAC;AAGK,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,mBAAmB;IAI3D,MAAM,KAAK,MAAM;QACb,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,CAAC;IAES,MAAM;QACZ,OAAO,IAAI,CAAA;;;qEAGkD,IAAI;wDACjB,IAAI,CAAC,YAAY,CAAC,aAAa;2DAC5B,CAAC,EAAyB,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC;;;;;mEAKlD,IAAI;;;;;mDAKpB,SAAS,CAAC,MAAM,sCAAsC,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ;mEACjE,CAAC,EAAuB,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;;;;;;mDAMtE,SAAS,CAAC,MAAM,sCAAsC,IAAI,CAAC,YAAY,CAAC,cAAc;mEACtE,CAAC,EAAuB,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC;;;;;;SAMlH,CAAC;IACN,CAAC;IAES,kBAAkB,CAAC,EAAyB;QAClD,IAAI,CAAC,YAAY,CAAC,aAAa,GAAG,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC;QAC1D,IAAG,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtC,MAAM,KAAK,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC3F,IAAG,KAAK,EAAE,CAAC;gBACP,IAAI,CAAC,cAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACrC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC9B,CAAC;IAES,gBAAgB,CAAC,EAAuB;QAC9C,IAAI,CAAC,YAAY,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;QAC9C,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC9B,CAAC;IAES,kBAAkB,CAAC,EAAuB;QAChD,IAAI,CAAC,YAAY,CAAC,cAAc,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;QACnD,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC9B,CAAC;CAEJ,CAAA;AA9DY,sBAAsB;IADlC,aAAa,CAAC,0BAA0B,CAAC;GAC7B,sBAAsB,CA8DlC"}
@@ -0,0 +1,30 @@
1
+ import { TemplateResult } from "lit";
2
+ import { WidgetSettings } from "../util/widget-settings";
3
+ import "../panels/attributes-panel";
4
+ import "../util/settings-panel";
5
+ import { AttributeActionEvent, AttributesSelectEvent } from "../panels/attributes-panel";
6
+ import { AttributeRef } from "@openremote/model";
7
+ import { ChartWidgetConfig } from "../widgets/chart-widget";
8
+ import { OrInputChangedEvent } from "@openremote/or-mwc-components/or-mwc-input";
9
+ import { TimePresetCallback } from "@openremote/or-chart";
10
+ export declare class ChartSettings extends WidgetSettings {
11
+ protected readonly widgetConfig: ChartWidgetConfig;
12
+ protected timePresetOptions: Map<string, TimePresetCallback>;
13
+ protected samplingOptions: Map<string, string>;
14
+ setTimePresetOptions(options: Map<string, TimePresetCallback>): void;
15
+ setSamplingOptions(options: Map<string, string>): void;
16
+ static get styles(): import("lit").CSSResult[];
17
+ protected render(): TemplateResult;
18
+ protected getSamplingOptionsTemplate(type: any): TemplateResult;
19
+ protected onAttributeAction(ev: AttributeActionEvent): void;
20
+ protected onAttributesSelect(ev: AttributesSelectEvent): void;
21
+ protected addToRightAxis(attributeRef: AttributeRef, notify?: boolean): void;
22
+ protected removeFromRightAxis(attributeRef: AttributeRef, notify?: boolean): void;
23
+ protected onTimePresetSelect(ev: OrInputChangedEvent): void;
24
+ protected onTimestampControlsToggle(ev: OrInputChangedEvent): void;
25
+ protected onShowLegendToggle(ev: OrInputChangedEvent): void;
26
+ protected setAxisMinMaxValue(axis: 'left' | 'right', type: 'min' | 'max', value?: number): void;
27
+ protected onMinMaxValueChange(axis: 'left' | 'right', type: 'min' | 'max', ev: OrInputChangedEvent): void;
28
+ protected onMinMaxValueToggle(axis: 'left' | 'right', type: 'min' | 'max', ev: OrInputChangedEvent): void;
29
+ protected onSamplingQueryChange(ev: OrInputChangedEvent): void;
30
+ }
@@ -0,0 +1,144 @@
1
+ var __decorate=this&&this.__decorate||function(t,i,e,n){var o,s=arguments.length,a=s<3?i:null===n?n=Object.getOwnPropertyDescriptor(i,e):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,i,e,n);else for(var l=t.length-1;l>=0;l--)(o=t[l])&&(a=(s<3?o(a):s>3?o(i,e,a):o(i,e))||a);return s>3&&a&&Object.defineProperty(i,e,a),a};import{css,html}from"lit";import{customElement}from"lit/decorators.js";import{WidgetSettings}from"../util/widget-settings";import"../panels/attributes-panel";import"../util/settings-panel";import{i18next}from"@openremote/or-translate";import{InputType}from"@openremote/or-mwc-components/or-mwc-input";import{when}from"lit/directives/when.js";const styling=css`
2
+ .switch-container {
3
+ display: flex;
4
+ align-items: center;
5
+ justify-content: space-between;
6
+ }
7
+ `;let ChartSettings=class extends WidgetSettings{constructor(){super(...arguments),this.timePresetOptions=new Map,this.samplingOptions=new Map}setTimePresetOptions(t){this.timePresetOptions=t}setSamplingOptions(t){this.samplingOptions=t}static get styles(){return[...super.styles,styling]}render(){var t,i,e,n,o,s;const a=null===(e=null===(i=null===(t=this.widgetConfig.chartOptions.options)||void 0===t?void 0:t.scales)||void 0===i?void 0:i.y)||void 0===e?void 0:e.min,l=null===(s=null===(o=null===(n=this.widgetConfig.chartOptions.options)||void 0===n?void 0:n.scales)||void 0===o?void 0:o.y)||void 0===s?void 0:s.max,r=this.widgetConfig.rightAxisAttributes.length>0,p=Array.from(this.samplingOptions.entries()).find((t=>t[1]===this.widgetConfig.datapointQuery.type))[0];return html`
8
+ <div>
9
+ <!-- Attribute selection -->
10
+ <settings-panel displayName="attributes" expanded="${!0}">
11
+ <attributes-panel .attributeRefs="${this.widgetConfig.attributeRefs}" multi="${!0}" onlyDataAttrs="${!0}" .attributeFilter="${t=>["boolean","positiveInteger","positiveNumber","number","long","integer","bigInteger","negativeInteger","negativeNumber","bigNumber","integerByte","direction"].includes(t.type)}" style="padding-bottom: 12px;"
12
+ .attributeLabelCallback="${(t,i,e)=>{const n=r&&void 0!==this.widgetConfig.rightAxisAttributes.find((e=>e.id===t.id&&e.name===i.name));return html`
13
+ <span>${t.name}</span>
14
+ <span style="font-size:14px; color:grey;">${e}</span>
15
+ ${when(n,(()=>html`
16
+ <span style="position: absolute; right: 0; margin-bottom: 16px; font-size:14px; color:grey;"><or-translate value="right"></or-translate></span>
17
+ `))}
18
+ `}}" .attributeActionCallback="${t=>[{icon:this.widgetConfig.rightAxisAttributes.includes(t)?"arrow-right-bold":"arrow-left-bold",tooltip:i18next.t("dashboard.toggleAxis"),disabled:!1}]}"
19
+ @attribute-action="${t=>this.onAttributeAction(t)}"
20
+ @attribute-select="${t=>this.onAttributesSelect(t)}"
21
+ ></attributes-panel>
22
+ </settings-panel>
23
+
24
+ <!-- Display options -->
25
+ <settings-panel displayName="display" expanded="${!0}">
26
+ <div style="padding-bottom: 12px; display: flex; flex-direction: column; gap: 6px;">
27
+ <!-- Timeframe -->
28
+ <div>
29
+ <or-mwc-input .type="${InputType.SELECT}" label="${i18next.t("timeframeDefault")}" style="width: 100%;"
30
+ .options="${Array.from(this.timePresetOptions.keys())}" value="${this.widgetConfig.defaultTimePresetKey}"
31
+ @or-mwc-input-changed="${t=>this.onTimePresetSelect(t)}"
32
+ ></or-mwc-input>
33
+ </div>
34
+ <!-- Y Min/max options -->
35
+ <div>
36
+ <div class="switch-container">
37
+ <span><or-translate value="dashboard.allowTimerangeSelect"></or-translate></span>
38
+ <or-mwc-input .type="${InputType.SWITCH}" style="margin: 0 -10px;" .value="${!this.widgetConfig.showTimestampControls}"
39
+ @or-mwc-input-changed="${t=>this.onTimestampControlsToggle(t)}"
40
+ ></or-mwc-input>
41
+ </div>
42
+ <div class="switch-container">
43
+ <span><or-translate value="dashboard.showLegend"></or-translate></span>
44
+ <or-mwc-input .type="${InputType.SWITCH}" style="margin: 0 -10px;" .value="${this.widgetConfig.showLegend}"
45
+ @or-mwc-input-changed="${t=>this.onShowLegendToggle(t)}"
46
+ ></or-mwc-input>
47
+ </div>
48
+ </div>
49
+ </div>
50
+ </settings-panel>
51
+
52
+ <!-- Axis configuration -->
53
+ <settings-panel displayName="dashboard.axisConfig" expanded="${!0}">
54
+ <div style="padding-bottom: 12px; display: flex; flex-direction: column; gap: 16px;">
55
+
56
+ <!-- Left axis configuration -->
57
+ <div>
58
+ ${when(r,(()=>html`
59
+ <div style="margin-bottom: 8px;">
60
+ <span><or-translate value="dashboard.leftAxis"></or-translate></span>
61
+ </div>
62
+ `))}
63
+ <div style="display: flex;">
64
+ ${void 0!==l?html`
65
+ <or-mwc-input .type="${InputType.NUMBER}" label="${i18next.t("yAxis")+" "+i18next.t("max")}" .value="${l}" style="width: 100%;"
66
+ @or-mwc-input-changed="${t=>this.onMinMaxValueChange("left","max",t)}"
67
+ ></or-mwc-input>
68
+ `:html`
69
+ <or-mwc-input .type="${InputType.TEXT}" label="${i18next.t("yAxis")+" "+i18next.t("max")}" disabled="true" value="auto" style="width: 100%;"></or-mwc-input>
70
+ `}
71
+ <or-mwc-input .type="${InputType.SWITCH}" style="margin: 0 -10px 0 0;" .value="${void 0!==l}"
72
+ @or-mwc-input-changed="${t=>this.onMinMaxValueToggle("left","max",t)}"
73
+ ></or-mwc-input>
74
+ </div>
75
+ <div style="display: flex; margin-top: 12px;">
76
+ ${void 0!==a?html`
77
+ <or-mwc-input .type="${InputType.NUMBER}" label="${i18next.t("yAxis")+" "+i18next.t("min")}" .value="${a}" style="width: 100%;"
78
+ @or-mwc-input-changed="${t=>this.onMinMaxValueChange("left","min",t)}"
79
+ ></or-mwc-input>
80
+ `:html`
81
+ <or-mwc-input .type="${InputType.TEXT}" label="${i18next.t("yAxis")+" "+i18next.t("min")}" disabled="true" value="auto" style="width: 100%;"></or-mwc-input>
82
+ `}
83
+ <or-mwc-input .type="${InputType.SWITCH}" style="margin: 0 -10px 0 0;" .value="${void 0!==a}"
84
+ @or-mwc-input-changed="${t=>this.onMinMaxValueToggle("left","min",t)}"
85
+ ></or-mwc-input>
86
+ </div>
87
+ </div>
88
+
89
+ <!-- Right axis configuration -->
90
+ ${when(r,(()=>{var t,i,e,n,o,s;const a=null===(e=null===(i=null===(t=this.widgetConfig.chartOptions.options)||void 0===t?void 0:t.scales)||void 0===i?void 0:i.y1)||void 0===e?void 0:e.min,l=null===(s=null===(o=null===(n=this.widgetConfig.chartOptions.options)||void 0===n?void 0:n.scales)||void 0===o?void 0:o.y1)||void 0===s?void 0:s.max;return html`
91
+ <div>
92
+ <div style="margin-bottom: 8px;">
93
+ <span><or-translate value="dashboard.rightAxis"></or-translate></span>
94
+ </div>
95
+ <div style="display: flex;">
96
+ ${void 0!==l?html`
97
+ <or-mwc-input .type="${InputType.NUMBER}" label="${i18next.t("yAxis")+" "+i18next.t("max")}" .value="${l}" style="width: 100%;"
98
+ @or-mwc-input-changed="${t=>this.onMinMaxValueChange("right","max",t)}"
99
+ ></or-mwc-input>
100
+ `:html`
101
+ <or-mwc-input .type="${InputType.TEXT}" label="${i18next.t("yAxis")+" "+i18next.t("max")}" disabled="true" value="auto"
102
+ style="width: 100%;"></or-mwc-input>
103
+ `}
104
+ <or-mwc-input .type="${InputType.SWITCH}" style="margin: 0 -10px 0 0;" .value="${void 0!==l}"
105
+ @or-mwc-input-changed="${t=>this.onMinMaxValueToggle("right","max",t)}"
106
+ ></or-mwc-input>
107
+ </div>
108
+ <div style="display: flex; margin-top: 12px;">
109
+ ${void 0!==a?html`
110
+ <or-mwc-input .type="${InputType.NUMBER}" label="${i18next.t("yAxis")+" "+i18next.t("min")}" .value="${a}" style="width: 100%;"
111
+ @or-mwc-input-changed="${t=>this.onMinMaxValueChange("right","min",t)}"
112
+ ></or-mwc-input>
113
+ `:html`
114
+ <or-mwc-input .type="${InputType.TEXT}" label="${i18next.t("yAxis")+" "+i18next.t("min")}" disabled="true" value="auto"
115
+ style="width: 100%;"></or-mwc-input>
116
+ `}
117
+ <or-mwc-input .type="${InputType.SWITCH}" style="margin: 0 -10px 0 0;" .value="${void 0!==a}"
118
+ @or-mwc-input-changed="${t=>this.onMinMaxValueToggle("right","min",t)}"
119
+ ></or-mwc-input>
120
+ </div>
121
+ </div>
122
+ `}))}
123
+ </div>
124
+ </settings-panel>
125
+
126
+ <!-- Data sampling options -->
127
+ <settings-panel displayName="dataSampling" expanded="${!0}">
128
+ <div style="padding-bottom: 12px; display: flex; flex-direction: column; gap: 12px;">
129
+ <div>
130
+ <or-mwc-input .type="${InputType.SELECT}" style="width: 100%" .options="${Array.from(this.samplingOptions.keys())}" .value="${p}"
131
+ label="${i18next.t("algorithm")}" @or-mwc-input-changed="${t=>this.onSamplingQueryChange(t)}"
132
+ ></or-mwc-input>
133
+ </div>
134
+ <div>
135
+ ${this.getSamplingOptionsTemplate(this.widgetConfig.datapointQuery.type)}
136
+ </div>
137
+ </div>
138
+ </settings-panel>
139
+ </div>
140
+ `}getSamplingOptionsTemplate(t){if("interval"===t){const t=this.widgetConfig.datapointQuery,i=["AVG","MIN","MAX"];return html`
141
+ <or-mwc-input .type="${InputType.SELECT}" style="width: 100%;" .options="${i}"
142
+ .value="${t.formula}" label="${i18next.t("algorithmMethod")}" @or-mwc-input-changed="${i=>{t.formula=i.detail.value,this.notifyConfigUpdate()}}"
143
+ ></or-mwc-input>
144
+ `}return html``}onAttributeAction(t){this.widgetConfig.attributeRefs.indexOf(t.detail.attributeRef)>=0&&(this.widgetConfig.rightAxisAttributes.includes(t.detail.attributeRef)?this.removeFromRightAxis(t.detail.attributeRef):this.addToRightAxis(t.detail.attributeRef),this.notifyConfigUpdate())}onAttributesSelect(t){this.widgetConfig.attributeRefs.filter((i=>!t.detail.attributeRefs.includes(i))).forEach((t=>this.removeFromRightAxis(t))),this.widgetConfig.attributeRefs=t.detail.attributeRefs,this.notifyConfigUpdate()}addToRightAxis(t,i=!1){this.widgetConfig.rightAxisAttributes.includes(t)||(this.widgetConfig.rightAxisAttributes.push(t),i&&this.notifyConfigUpdate())}removeFromRightAxis(t,i=!1){this.widgetConfig.rightAxisAttributes.includes(t)&&(this.widgetConfig.rightAxisAttributes.splice(this.widgetConfig.rightAxisAttributes.indexOf(t),1),i&&this.notifyConfigUpdate())}onTimePresetSelect(t){this.widgetConfig.defaultTimePresetKey=t.detail.value.toString(),this.notifyConfigUpdate()}onTimestampControlsToggle(t){this.widgetConfig.showTimestampControls=!t.detail.value,this.notifyConfigUpdate()}onShowLegendToggle(t){this.widgetConfig.showLegend=t.detail.value,this.notifyConfigUpdate()}setAxisMinMaxValue(t,i,e){"left"===t?"min"===i?this.widgetConfig.chartOptions.options.scales.y.min=e:this.widgetConfig.chartOptions.options.scales.y.max=e:"min"===i?this.widgetConfig.chartOptions.options.scales.y1.min=e:this.widgetConfig.chartOptions.options.scales.y1.max=e,this.notifyConfigUpdate()}onMinMaxValueChange(t,i,e){this.setAxisMinMaxValue(t,i,e.detail.value)}onMinMaxValueToggle(t,i,e){this.setAxisMinMaxValue(t,i,e.detail.value?"min"===i?0:100:void 0)}onSamplingQueryChange(t){this.widgetConfig.datapointQuery.type=this.samplingOptions.get(t.detail.value),this.notifyConfigUpdate()}};ChartSettings=__decorate([customElement("chart-settings")],ChartSettings);export{ChartSettings};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chart-settings.js","sourceRoot":"","sources":["../../src/settings/chart-settings.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { TemplateResult } from "lit";
2
+ import { WidgetSettings } from "../util/widget-settings";
3
+ import { GaugeWidgetConfig } from "../widgets/gauge-widget";
4
+ import { AttributesSelectEvent } from "../panels/attributes-panel";
5
+ import { OrInputChangedEvent } from "@openremote/or-mwc-components/or-mwc-input";
6
+ import { ThresholdChangeEvent } from "../panels/thresholds-panel";
7
+ import "../panels/thresholds-panel";
8
+ export declare class GaugeSettings extends WidgetSettings {
9
+ protected widgetConfig: GaugeWidgetConfig;
10
+ protected render(): TemplateResult;
11
+ protected onAttributesSelect(ev: AttributesSelectEvent): void;
12
+ protected onMinMaxValueChange(type: 'min' | 'max', ev: OrInputChangedEvent): void;
13
+ protected onDecimalsChange(ev: OrInputChangedEvent): void;
14
+ protected onThresholdChange(ev: ThresholdChangeEvent): void;
15
+ }
@@ -0,0 +1,37 @@
1
+ var __decorate=this&&this.__decorate||function(e,t,i,n){var a,s=arguments.length,o=s<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 l=e.length-1;l>=0;l--)(a=e[l])&&(o=(s<3?a(o):s>3?a(t,i,o):a(t,i))||o);return s>3&&o&&Object.defineProperty(t,i,o),o};import{html}from"lit";import{customElement}from"lit/decorators.js";import{WidgetSettings}from"../util/widget-settings";import{i18next}from"@openremote/or-translate";import{InputType}from"@openremote/or-mwc-components/or-mwc-input";import"../panels/thresholds-panel";let GaugeSettings=class extends WidgetSettings{render(){return html`
2
+ <div>
3
+ <!-- Attribute selection -->
4
+ <settings-panel displayName="attributes" expanded="${!0}">
5
+ <attributes-panel .attributeRefs="${this.widgetConfig.attributeRefs}" .attributeFilter="${e=>["positiveInteger","positiveNumber","number","long","integer","bigInteger","negativeInteger","negativeNumber","bigNumber","integerByte","direction"].includes(e.type)}" style="padding-bottom: 12px;"
6
+ @attribute-select="${e=>this.onAttributesSelect(e)}"
7
+ ></attributes-panel>
8
+ </settings-panel>
9
+
10
+ <!-- Min/max and decimals options-->
11
+ <settings-panel displayName="values" expanded="${!0}">
12
+ <div style="padding-bottom: 12px; display: flex; flex-direction: column; gap: 12px;">
13
+ <div style="display: flex; gap: 8px;">
14
+ <or-mwc-input .type="${InputType.NUMBER}" label="${i18next.t("min")}" .max="${this.widgetConfig.max}" .value="${this.widgetConfig.min}"
15
+ @or-mwc-input-changed="${e=>this.onMinMaxValueChange("min",e)}"
16
+ ></or-mwc-input>
17
+ <or-mwc-input .type="${InputType.NUMBER}" label="${i18next.t("max")}" .min="${this.widgetConfig.min}" .value="${this.widgetConfig.max}"
18
+ @or-mwc-input-changed="${e=>this.onMinMaxValueChange("max",e)}"
19
+ ></or-mwc-input>
20
+ </div>
21
+ <div>
22
+ <or-mwc-input .type="${InputType.NUMBER}" style="width: 100%;" .value="${this.widgetConfig.decimals}" label="${i18next.t("decimals")}" .min="${0}"
23
+ @or-mwc-input-changed="${e=>this.onDecimalsChange(e)}"
24
+ ></or-mwc-input>
25
+ </div>
26
+ </div>
27
+ </settings-panel>
28
+
29
+ <!-- Thresholds panel -->
30
+ <settings-panel displayName="thresholds" expanded="${!0}">
31
+ <thresholds-panel .thresholds="${this.widgetConfig.thresholds}" .valueType="${"number"}" style="padding-bottom: 12px;"
32
+ .min="${this.widgetConfig.min}" .max="${this.widgetConfig.max}"
33
+ @threshold-change="${e=>this.onThresholdChange(e)}">
34
+ </thresholds-panel>
35
+ </settings-panel>
36
+ </div>
37
+ `}onAttributesSelect(e){if(this.widgetConfig.attributeRefs=e.detail.attributeRefs,1===e.detail.attributeRefs.length){const t=e.detail.attributeRefs[0],i=e.detail.assets.find((e=>e.id===t.id));this.setDisplayName(i?`${i.name} - ${t.name}`:`${t.name}`)}this.notifyConfigUpdate()}onMinMaxValueChange(e,t){switch(e){case"max":this.widgetConfig.max=t.detail.value;break;case"min":this.widgetConfig.min=t.detail.value}this.notifyConfigUpdate()}onDecimalsChange(e){this.widgetConfig.decimals=e.detail.value,this.notifyConfigUpdate()}onThresholdChange(e){this.widgetConfig.thresholds=e.detail,this.notifyConfigUpdate()}};GaugeSettings=__decorate([customElement("gauge-settings")],GaugeSettings);export{GaugeSettings};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gauge-settings.js","sourceRoot":"","sources":["../../src/settings/gauge-settings.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { PropertyValues, TemplateResult } from "lit";
2
+ import { ImageWidgetConfig } from "../widgets/image-widget";
3
+ import { AttributesSelectEvent } from "../panels/attributes-panel";
4
+ import { OrInputChangedEvent } from "@openremote/or-mwc-components/or-mwc-input";
5
+ import { AssetWidgetSettings } from "../util/or-asset-widget";
6
+ export declare class ImageSettings extends AssetWidgetSettings {
7
+ protected readonly widgetConfig: ImageWidgetConfig;
8
+ static get styles(): import("lit").CSSResult[];
9
+ protected willUpdate(changedProps: PropertyValues): void;
10
+ protected loadAssets(): void;
11
+ protected render(): TemplateResult;
12
+ protected onAttributesSelect(ev: AttributesSelectEvent): void;
13
+ protected onImageUrlUpdate(ev: OrInputChangedEvent): void;
14
+ updateCoordinateMap(config: ImageWidgetConfig): void;
15
+ private draftCoordinateEntries;
16
+ protected onCoordinateUpdate(index: number, coordinate: 'x' | 'y', value: number): void;
17
+ }
@@ -0,0 +1,52 @@
1
+ var __decorate=this&&this.__decorate||function(t,e,i,s){var n,r=arguments.length,a=r<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,i):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,i,s);else for(var o=t.length-1;o>=0;o--)(n=t[o])&&(a=(r<3?n(a):r>3?n(e,i,a):n(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a};import{css,html}from"lit";import{customElement}from"lit/decorators.js";import{i18next}from"@openremote/or-translate";import{AssetModelUtil}from"@openremote/model";import{map}from"lit/directives/map.js";import{InputType}from"@openremote/or-mwc-components/or-mwc-input";import{Util}from"@openremote/core";import{when}from"lit/directives/when.js";import{AssetWidgetSettings}from"../util/or-asset-widget";const styling=css`
2
+ #marker-container {
3
+ display: flex;
4
+ justify-content: flex-end;
5
+ align-items: center;
6
+ }
7
+ `;let ImageSettings=class extends AssetWidgetSettings{static get styles(){return[...super.styles,styling]}willUpdate(t){super.willUpdate(t),t.has("widgetConfig")&&this.widgetConfig&&(this.updateCoordinateMap(this.widgetConfig),this.loadAssets())}loadAssets(){this.widgetConfig.attributeRefs.filter((t=>!this.isAttributeRefLoaded(t))).length>0&&this.fetchAssets(this.widgetConfig.attributeRefs).then((t=>{this.loadedAssets=void 0===t?[]:t}))}render(){return html`
8
+ <div>
9
+ <!-- Attributes selector -->
10
+ <settings-panel displayName="'attributes" expanded="${!0}">
11
+ <attributes-panel .attributeRefs="${this.widgetConfig.attributeRefs}" onlyDataAttrs="${!1}" multi="${!0}"
12
+ @attribute-select="${t=>this.onAttributesSelect(t)}"
13
+ ></attributes-panel>
14
+ </settings-panel>
15
+
16
+ <!-- Marker coordinates -->
17
+ <settings-panel displayName="dashboard.markerCoordinates" expanded="${!0}">
18
+ <div style="display: flex; flex-direction: column; gap: 8px;">
19
+ ${map(this.draftCoordinateEntries(this.widgetConfig),(t=>t))}
20
+ </div>
21
+ </settings-panel>
22
+
23
+ <!-- Image settings -->
24
+ <settings-panel displayName="dashboard.imageSettings" expanded="${!0}">
25
+ <div>
26
+ <or-mwc-input style="width: 100%;" type="${InputType.TEXT}" label="${i18next.t("dashboard.imageUrl")}" .value="${this.widgetConfig.imagePath}"
27
+ @or-mwc-input-changed="${t=>this.onImageUrlUpdate(t)}"
28
+ ></or-mwc-input>
29
+ </div>
30
+ </settings-panel>
31
+ </div>
32
+ `}onAttributesSelect(t){this.widgetConfig.attributeRefs=t.detail.attributeRefs,this.notifyConfigUpdate()}onImageUrlUpdate(t){this.widgetConfig.imagePath=t.detail.value,this.notifyConfigUpdate()}updateCoordinateMap(t){for(let e=0;e<t.attributeRefs.length;e++){const i=t.attributeRefs[e];if(void 0===i)return void console.error("attributeRef is undefined");-1===t.markers.findIndex((t=>t.attributeRef.id===i.id&&t.attributeRef.name===i.name))&&t.markers.push({attributeRef:i,coordinates:[50,50]})}}draftCoordinateEntries(t){return t.markers.length>0?t.attributeRefs.map((e=>{var i,s,n;const r=t.markers.find((t=>t.attributeRef.id===e.id&&t.attributeRef.name===e.name));if(void 0===r)return console.error("A marker could not be found during drafting coordinate entries."),html``;const a=t.markers.indexOf(r),o=r.coordinates,d=null===(i=this.loadedAssets)||void 0===i?void 0:i.find((t=>t.id===e.id));let l;if(d){const t=d.attributes[e.name],i=AssetModelUtil.getAttributeAndValueDescriptors(d.type,e.name,t);l=Util.getAttributeLabel(t,i[0],d.type,!1)}return html`
33
+ <div id="marker-container">
34
+ <div style="flex: 1; display: flex; flex-direction: column;">
35
+ <span>${null===(n=null===(s=this.loadedAssets)||void 0===s?void 0:s.find((t=>t.id===e.id)))||void 0===n?void 0:n.name}</span>
36
+ ${when(l,(()=>html`
37
+ <span style="color: gray;">${l}</span>
38
+ `))}
39
+ </div>
40
+ <div style="display: flex; gap: 8px;">
41
+ <or-mwc-input .disableSliderNumberInput="${!0}" compact style="max-width: 64px;"
42
+ .type="${InputType.NUMBER}" .min="${0}" .max="${100}" .value="${o[0]}"
43
+ @or-mwc-input-changed="${t=>this.onCoordinateUpdate(a,"x",t.detail.value)}"
44
+ ></or-mwc-input>
45
+
46
+ <or-mwc-input .disableSliderNumberInput="${!0}" compact style="max-width: 64px;"
47
+ .type="${InputType.NUMBER}" .min="${0}" .max="${100}" .value="${o[1]}"
48
+ @or-mwc-input-changed="${t=>this.onCoordinateUpdate(a,"y",t.detail.value)}"
49
+ ></or-mwc-input>
50
+ </div>
51
+ </div>
52
+ `})):[html`<span><or-translate value="noAttributeConnected"></or-translate></span>`]}onCoordinateUpdate(t,e,i){let s=this.widgetConfig.markers[t].coordinates;s||(s=[0,0]),"x"===e?s[0]=i:"y"===e&&(s[1]=i),this.widgetConfig.markers[t].coordinates=s,this.notifyConfigUpdate()}};ImageSettings=__decorate([customElement("image-settings")],ImageSettings);export{ImageSettings};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"image-settings.js","sourceRoot":"","sources":["../../src/settings/image-settings.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { TemplateResult } from "lit";
2
+ import { AssetWidgetSettings } from "../util/or-asset-widget";
3
+ import { KpiWidgetConfig } from "../widgets/kpi-widget";
4
+ import { AttributesSelectEvent } from "../panels/attributes-panel";
5
+ import { OrInputChangedEvent } from "@openremote/or-mwc-components/or-mwc-input";
6
+ export declare class KpiSettings extends AssetWidgetSettings {
7
+ protected widgetConfig: KpiWidgetConfig;
8
+ static get styles(): import("lit").CSSResult[];
9
+ protected render(): TemplateResult;
10
+ protected onAttributesSelect(ev: AttributesSelectEvent): void;
11
+ protected onTimeframeSelect(ev: OrInputChangedEvent): void;
12
+ protected onTimeframeToggle(ev: OrInputChangedEvent): void;
13
+ protected onDeltaFormatSelect(ev: OrInputChangedEvent): void;
14
+ protected onDecimalsChange(ev: OrInputChangedEvent): void;
15
+ }
@@ -0,0 +1,47 @@
1
+ var __decorate=this&&this.__decorate||function(t,e,i,n){var s,a=arguments.length,o=a<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(t,e,i,n);else for(var l=t.length-1;l>=0;l--)(s=t[l])&&(o=(a<3?s(o):a>3?s(e,i,o):s(e,i))||o);return a>3&&o&&Object.defineProperty(e,i,o),o};import{css,html}from"lit";import{customElement}from"lit/decorators.js";import{AssetWidgetSettings}from"../util/or-asset-widget";import{i18next}from"@openremote/or-translate";import{InputType}from"@openremote/or-mwc-components/or-mwc-input";const styling=css`
2
+ .switchMwcInputContainer {
3
+ display: flex;
4
+ align-items: center;
5
+ justify-content: space-between;
6
+ }
7
+ `;let KpiSettings=class extends AssetWidgetSettings{static get styles(){return[...super.styles,styling]}render(){return html`
8
+ <div>
9
+ <!-- Attribute selector -->
10
+ <settings-panel displayName="attributes" expanded="${!0}">
11
+ <attributes-panel .attributeRefs="${this.widgetConfig.attributeRefs}" onlyDataAttrs="${!1}" .attributeFilter="${t=>["positiveInteger","positiveNumber","number","long","integer","bigInteger","negativeInteger","negativeNumber","bigNumber","integerByte","direction"].includes(t.type)}" style="padding-bottom: 12px;"
12
+ @attribute-select="${t=>this.onAttributesSelect(t)}"
13
+ ></attributes-panel>
14
+ </settings-panel>
15
+
16
+ <!-- Display settings -->
17
+ <settings-panel displayName="display" expanded="${!0}">
18
+ <div style="display: flex; flex-direction: column; gap: 8px;">
19
+ <or-mwc-input .type="${InputType.SELECT}" style="width: 100%;"
20
+ .options="${["year","month","week","day","hour"]}"
21
+ .value="${this.widgetConfig.period}" label="${i18next.t("timeframe")}"
22
+ @or-mwc-input-changed="${t=>this.onTimeframeSelect(t)}"
23
+ ></or-mwc-input>
24
+ <div class="switchMwcInputContainer">
25
+ <span><or-translate value="dashboard.allowTimerangeSelect"></or-translate></span>
26
+ <or-mwc-input .type="${InputType.SWITCH}" style="margin: 0 -10px;" .value="${this.widgetConfig.showTimestampControls}"
27
+ @or-mwc-input-changed="${t=>this.onTimeframeToggle(t)}"
28
+ ></or-mwc-input>
29
+ </div>
30
+ </div>
31
+ </settings-panel>
32
+
33
+ <settings-panel displayName="values" expanded="${!0}">
34
+ <div style="display: flex; flex-direction: column; gap: 8px;">
35
+ <or-mwc-input .type="${InputType.SELECT}" style="width: 100%;" .options="${["absolute","percentage"]}" .value="${this.widgetConfig.deltaFormat}"
36
+ label="${i18next.t("dashboard.showValueAs")}"
37
+ @or-mwc-input-changed="${t=>this.onDeltaFormatSelect(t)}"
38
+ ></or-mwc-input>
39
+ <or-mwc-input .type="${InputType.NUMBER}" style="width: 100%;" .value="${this.widgetConfig.decimals}" label="${i18next.t("decimals")}"
40
+ @or-mwc-input-changed="${t=>this.onDecimalsChange(t)}"
41
+ ></or-mwc-input>
42
+ </div>
43
+ </settings-panel>
44
+
45
+ <!-- -->
46
+ </div>
47
+ `}onAttributesSelect(t){if(this.widgetConfig.attributeRefs=t.detail.attributeRefs,1===t.detail.attributeRefs.length){const e=t.detail.attributeRefs[0],i=t.detail.assets.find((t=>t.id===e.id));this.setDisplayName(i?`${i.name} - ${e.name}`:`${e.name}`)}this.notifyConfigUpdate()}onTimeframeSelect(t){this.widgetConfig.period=t.detail.value,this.notifyConfigUpdate()}onTimeframeToggle(t){this.widgetConfig.showTimestampControls=t.detail.value,this.notifyConfigUpdate()}onDeltaFormatSelect(t){this.widgetConfig.deltaFormat=t.detail.value,this.notifyConfigUpdate()}onDecimalsChange(t){this.widgetConfig.decimals=t.detail.value,this.notifyConfigUpdate()}};KpiSettings=__decorate([customElement("kpi-settings")],KpiSettings);export{KpiSettings};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kpi-settings.js","sourceRoot":"","sources":["../../src/settings/kpi-settings.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { TemplateResult } from "lit";
2
+ import { AssetWidgetSettings } from "../util/or-asset-widget";
3
+ import { OrInputChangedEvent } from "@openremote/or-mwc-components/or-mwc-input";
4
+ import { MapWidgetConfig } from "../widgets/map-widget";
5
+ import "../panels/assettypes-panel";
6
+ import "../panels/thresholds-panel";
7
+ import { AssetTypeSelectEvent, AttributeNamesSelectEvent } from "../panels/assettypes-panel";
8
+ import { ThresholdChangeEvent } from "../panels/thresholds-panel";
9
+ export declare class MapSettings extends AssetWidgetSettings {
10
+ protected widgetConfig: MapWidgetConfig;
11
+ static get styles(): import("lit").CSSResult[];
12
+ protected render(): TemplateResult;
13
+ protected onZoomUpdate(ev: OrInputChangedEvent): void;
14
+ protected onCenterUpdate(ev: OrInputChangedEvent): void;
15
+ protected onGeoJsonToggle(ev: OrInputChangedEvent): void;
16
+ protected onAssetTypeSelect(ev: AssetTypeSelectEvent): void;
17
+ protected onAttributeNameSelect(ev: AttributeNamesSelectEvent): Promise<void>;
18
+ protected onShowLabelsToggle(ev: OrInputChangedEvent): void;
19
+ protected onShowUnitsToggle(ev: OrInputChangedEvent): void;
20
+ protected onThresholdsChange(ev: ThresholdChangeEvent): void;
21
+ }