@openremote/or-chart 1.2.0-snapshot.20240512154942
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/@types/chartjs-plugin-annotation.d.ts +4 -0
- package/README.md +31 -0
- package/lib/index.d.ts +118 -0
- package/lib/index.js +308 -0
- package/lib/index.js.map +1 -0
- package/package.json +43 -0
package/README.md
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# @openremote/or-chart \<or-attribute-history\>
|
|
2
|
+
[![NPM Version][npm-image]][npm-url]
|
|
3
|
+
[![Linux Build][travis-image]][travis-url]
|
|
4
|
+
[![Test Coverage][coveralls-image]][coveralls-url]
|
|
5
|
+
|
|
6
|
+
Web Component for displaying chart values.
|
|
7
|
+
|
|
8
|
+
## Install
|
|
9
|
+
```bash
|
|
10
|
+
npm i @openremote/or-chart
|
|
11
|
+
yarn add @openremote/or-chart
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Usage
|
|
15
|
+
For a full list of properties, methods and options refer to the TypeDoc generated [documentation]().
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
## Supported Browsers
|
|
19
|
+
The last 2 versions of all modern browsers are supported, including Chrome, Safari, Opera, Firefox, Edge. In addition,
|
|
20
|
+
Internet Explorer 11 is also supported.
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
## License
|
|
24
|
+
[GNU AGPL](https://www.gnu.org/licenses/agpl-3.0.en.html)
|
|
25
|
+
|
|
26
|
+
[npm-image]: https://img.shields.io/npm/v/live-xxx.svg
|
|
27
|
+
[npm-url]: https://npmjs.org/package/@openremote/or-chart
|
|
28
|
+
[travis-image]: https://img.shields.io/travis/live-js/live-xxx/master.svg
|
|
29
|
+
[travis-url]: https://travis-ci.org/live-js/live-xxx
|
|
30
|
+
[coveralls-image]: https://img.shields.io/coveralls/live-js/live-xxx/master.svg
|
|
31
|
+
[coveralls-url]: https://coveralls.io/r/live-js/live-xxx?branch=master
|
package/lib/index.d.ts
ADDED
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { LitElement, PropertyValues, TemplateResult } from "lit";
|
|
2
|
+
import { Asset, AssetDatapointQueryUnion, Attribute, AttributeRef, DatapointInterval } from "@openremote/model";
|
|
3
|
+
import "@openremote/or-asset-tree";
|
|
4
|
+
import "@openremote/or-mwc-components/or-mwc-input";
|
|
5
|
+
import "@openremote/or-components/or-panel";
|
|
6
|
+
import "@openremote/or-translate";
|
|
7
|
+
import { Chart, ChartDataset, ScatterDataPoint, TimeUnit } from "chart.js";
|
|
8
|
+
import "@openremote/or-components/or-loading-indicator";
|
|
9
|
+
import moment from "moment";
|
|
10
|
+
import { OrAssetTreeSelectionEvent } from "@openremote/or-asset-tree";
|
|
11
|
+
import "chartjs-adapter-moment";
|
|
12
|
+
export declare class OrChartEvent extends CustomEvent<OrChartEventDetail> {
|
|
13
|
+
static readonly NAME = "or-chart-event";
|
|
14
|
+
constructor(value?: any, previousValue?: any);
|
|
15
|
+
}
|
|
16
|
+
export type TimePresetCallback = (date: Date) => [Date, Date];
|
|
17
|
+
export interface ChartViewConfig {
|
|
18
|
+
attributeRefs?: AttributeRef[];
|
|
19
|
+
fromTimestamp?: number;
|
|
20
|
+
toTimestamp?: number;
|
|
21
|
+
period?: moment.unitOfTime.Base;
|
|
22
|
+
deltaFormat?: "absolute" | "percentage";
|
|
23
|
+
decimals?: number;
|
|
24
|
+
}
|
|
25
|
+
export interface OrChartEventDetail {
|
|
26
|
+
value?: any;
|
|
27
|
+
previousValue?: any;
|
|
28
|
+
}
|
|
29
|
+
declare global {
|
|
30
|
+
export interface HTMLElementEventMap {
|
|
31
|
+
[OrChartEvent.NAME]: OrChartEvent;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export interface ChartConfig {
|
|
35
|
+
xLabel?: string;
|
|
36
|
+
yLabel?: string;
|
|
37
|
+
}
|
|
38
|
+
export interface OrChartConfig {
|
|
39
|
+
chart?: ChartConfig;
|
|
40
|
+
realm?: string;
|
|
41
|
+
views: {
|
|
42
|
+
[name: string]: {
|
|
43
|
+
[panelName: string]: ChartViewConfig;
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
declare const OrChart_base: (new (...args: any[]) => {
|
|
48
|
+
_i18nextJustInitialized: boolean;
|
|
49
|
+
connectedCallback(): void;
|
|
50
|
+
disconnectedCallback(): void;
|
|
51
|
+
shouldUpdate(changedProps: import("lit").PropertyValueMap<any> | Map<PropertyKey, unknown>): any;
|
|
52
|
+
initCallback: (options: import("i18next").InitOptions) => void;
|
|
53
|
+
langChangedCallback: () => void;
|
|
54
|
+
readonly isConnected: boolean;
|
|
55
|
+
}) & typeof LitElement;
|
|
56
|
+
export declare class OrChart extends OrChart_base {
|
|
57
|
+
static DEFAULT_TIMESTAMP_FORMAT: string;
|
|
58
|
+
static get styles(): import("lit").CSSResult[];
|
|
59
|
+
assets: Asset[];
|
|
60
|
+
private activeAsset?;
|
|
61
|
+
assetAttributes: [number, Attribute<any>][];
|
|
62
|
+
rightAxisAttributes: AttributeRef[];
|
|
63
|
+
dataProvider?: (startOfPeriod: number, endOfPeriod: number, timeUnits: TimeUnit, stepSize: number) => Promise<ChartDataset<"line", ScatterDataPoint[]>[]>;
|
|
64
|
+
colors: string[];
|
|
65
|
+
readonly datapointQuery: AssetDatapointQueryUnion;
|
|
66
|
+
config?: OrChartConfig;
|
|
67
|
+
chartOptions?: any;
|
|
68
|
+
realm?: string;
|
|
69
|
+
panelName?: string;
|
|
70
|
+
attributeControls: boolean;
|
|
71
|
+
timeframe?: [Date, Date];
|
|
72
|
+
timestampControls: boolean;
|
|
73
|
+
timePresetOptions?: Map<string, TimePresetCallback>;
|
|
74
|
+
timePresetKey?: string;
|
|
75
|
+
showLegend: boolean;
|
|
76
|
+
denseLegend: boolean;
|
|
77
|
+
protected _loading: boolean;
|
|
78
|
+
protected _data?: ChartDataset<"line", ScatterDataPoint[]>[];
|
|
79
|
+
protected _tableTemplate?: TemplateResult;
|
|
80
|
+
protected _chartElem: HTMLCanvasElement;
|
|
81
|
+
protected _dialogElem: HTMLElement;
|
|
82
|
+
protected _chart?: Chart;
|
|
83
|
+
protected _style: CSSStyleDeclaration;
|
|
84
|
+
protected _startOfPeriod?: number;
|
|
85
|
+
protected _endOfPeriod?: number;
|
|
86
|
+
protected _timeUnits?: TimeUnit;
|
|
87
|
+
protected _stepSize?: number;
|
|
88
|
+
protected _updateTimestampTimer: number | null;
|
|
89
|
+
constructor();
|
|
90
|
+
connectedCallback(): void;
|
|
91
|
+
disconnectedCallback(): void;
|
|
92
|
+
firstUpdated(): void;
|
|
93
|
+
updated(changedProperties: PropertyValues): void;
|
|
94
|
+
applyChartResponsiveness(): void;
|
|
95
|
+
render(): TemplateResult<1>;
|
|
96
|
+
protected _onTreeSelectionChanged(event: OrAssetTreeSelectionEvent): Promise<void>;
|
|
97
|
+
removeDatasetHighlight(bgColor: string): void;
|
|
98
|
+
addDatasetHighlight(assetId?: string, attrName?: string): void;
|
|
99
|
+
loadSettings(reset: boolean): Promise<void>;
|
|
100
|
+
saveSettings(): Promise<void>;
|
|
101
|
+
protected _openDialog(): void;
|
|
102
|
+
protected _openTimeDialog(startTimestamp?: number, endTimestamp?: number): void;
|
|
103
|
+
protected _addAttribute(selectedAttrs?: AttributeRef[]): Promise<void>;
|
|
104
|
+
protected _getSelectedAttributes(): {
|
|
105
|
+
id: any;
|
|
106
|
+
name: any;
|
|
107
|
+
}[];
|
|
108
|
+
onCompleted(): Promise<void>;
|
|
109
|
+
protected _cleanup(): void;
|
|
110
|
+
protected _deleteAttribute(index: number): void;
|
|
111
|
+
protected _getAttributeOptionsOld(): [string, string][] | undefined;
|
|
112
|
+
protected _getAttributeOptions(): [string, string][] | undefined;
|
|
113
|
+
protected _getDefaultTimestampOptions(): Map<string, TimePresetCallback>;
|
|
114
|
+
protected _getInterval(diffInHours: number): [number, DatapointInterval];
|
|
115
|
+
protected _loadData(): Promise<void>;
|
|
116
|
+
protected _loadAttributeData(asset: Asset, attribute: Attribute<any>, color: string | undefined, from: number, to: number, predicted: boolean, label: string | undefined): Promise<ChartDataset<"line", ScatterDataPoint[]>>;
|
|
117
|
+
}
|
|
118
|
+
export {};
|
package/lib/index.js
ADDED
|
@@ -0,0 +1,308 @@
|
|
|
1
|
+
var __decorate=this&&this.__decorate||function(t,e,i,r){var o,a=arguments.length,s=a<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,i):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(t,e,i,r);else for(var n=t.length-1;n>=0;n--)(o=t[n])&&(s=(a<3?o(s):a>3?o(e,i,s):o(e,i))||s);return a>3&&s&&Object.defineProperty(e,i,s),s},__awaiter=this&&this.__awaiter||function(t,e,i,r){return new(i||(i=Promise))((function(o,a){function s(t){try{l(r.next(t))}catch(t){a(t)}}function n(t){try{l(r.throw(t))}catch(t){a(t)}}function l(t){var e;t.done?o(t.value):(e=t.value,e instanceof i?e:new i((function(t){t(e)}))).then(s,n)}l((r=r.apply(t,e||[])).next())}))};import{css,html,LitElement,unsafeCSS}from"lit";import{customElement,property,query}from"lit/decorators.js";import i18next from"i18next";import{translate}from"@openremote/or-translate";import{AssetModelUtil}from"@openremote/model";import manager,{DefaultColor2,DefaultColor3,DefaultColor4,DefaultColor5,Util}from"@openremote/core";import"@openremote/or-asset-tree";import"@openremote/or-mwc-components/or-mwc-input";import"@openremote/or-components/or-panel";import"@openremote/or-translate";import{Chart,Filler,Legend,LinearScale,LineController,LineElement,PointElement,ScatterController,TimeScale,Title,Tooltip}from"chart.js";import{InputType}from"@openremote/or-mwc-components/or-mwc-input";import"@openremote/or-components/or-loading-indicator";import moment from"moment";import{OrAssetTreeSelectionEvent}from"@openremote/or-asset-tree";import{getAssetDescriptorIconTemplate}from"@openremote/or-icon";import ChartAnnotation from"chartjs-plugin-annotation";import"chartjs-adapter-moment";import{OrAttributePicker,OrAttributePickerPickedEvent}from"@openremote/or-attribute-picker";import{OrMwcDialog,showDialog}from"@openremote/or-mwc-components/or-mwc-dialog";import{cache}from"lit/directives/cache.js";import{throttle}from"lodash";import{getContentWithMenuTemplate}from"@openremote/or-mwc-components/or-mwc-menu";import{when}from"lit/directives/when.js";import{createRef,ref}from"lit/directives/ref.js";Chart.register(LineController,ScatterController,LineElement,PointElement,LinearScale,TimeScale,Title,Filler,Legend,Tooltip,ChartAnnotation);export class OrChartEvent extends CustomEvent{constructor(t,e){super(OrChartEvent.NAME,{detail:{value:t,previousValue:e},bubbles:!0,composed:!0})}}OrChartEvent.NAME="or-chart-event";const dialogStyle=require("@material/dialog/dist/mdc.dialog.css"),tableStyle=require("@material/data-table/dist/mdc.data-table.css"),style=css`
|
|
2
|
+
:host {
|
|
3
|
+
|
|
4
|
+
--internal-or-chart-background-color: var(--or-chart-background-color, var(--or-app-color2, ${unsafeCSS(DefaultColor2)}));
|
|
5
|
+
--internal-or-chart-text-color: var(--or-chart-text-color, var(--or-app-color3, ${unsafeCSS(DefaultColor3)}));
|
|
6
|
+
--internal-or-chart-controls-margin: var(--or-chart-controls-margin, 0 0 20px 0);
|
|
7
|
+
--internal-or-chart-controls-margin-children: var(--or-chart-controls-margin-children, 0 auto 20px auto);
|
|
8
|
+
--internal-or-chart-graph-fill-color: var(--or-chart-graph-fill-color, var(--or-app-color4, ${unsafeCSS(DefaultColor4)}));
|
|
9
|
+
--internal-or-chart-graph-fill-opacity: var(--or-chart-graph-fill-opacity, 1);
|
|
10
|
+
--internal-or-chart-graph-line-color: var(--or-chart-graph-line-color, var(--or-app-color4, ${unsafeCSS(DefaultColor4)}));
|
|
11
|
+
--internal-or-chart-graph-point-color: var(--or-chart-graph-point-color, var(--or-app-color3, ${unsafeCSS(DefaultColor3)}));
|
|
12
|
+
--internal-or-chart-graph-point-border-color: var(--or-chart-graph-point-border-color, var(--or-app-color5, ${unsafeCSS(DefaultColor5)}));
|
|
13
|
+
--internal-or-chart-graph-point-radius: var(--or-chart-graph-point-radius, 4);
|
|
14
|
+
--internal-or-chart-graph-point-hit-radius: var(--or-chart-graph-point-hit-radius, 20);
|
|
15
|
+
--internal-or-chart-graph-point-border-width: var(--or-chart-graph-point-border-width, 2);
|
|
16
|
+
--internal-or-chart-graph-point-hover-color: var(--or-chart-graph-point-hover-color, var(--or-app-color5, ${unsafeCSS(DefaultColor5)}));
|
|
17
|
+
--internal-or-chart-graph-point-hover-border-color: var(--or-chart-graph-point-hover-border-color, var(--or-app-color3, ${unsafeCSS(DefaultColor3)}));
|
|
18
|
+
--internal-or-chart-graph-point-hover-radius: var(--or-chart-graph-point-hover-radius, 4);
|
|
19
|
+
--internal-or-chart-graph-point-hover-border-width: var(--or-chart-graph-point-hover-border-width, 2);
|
|
20
|
+
|
|
21
|
+
width: 100%;
|
|
22
|
+
display: block;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.line-label {
|
|
26
|
+
border-width: 1px;
|
|
27
|
+
border-color: var(--or-app-color3);
|
|
28
|
+
margin-right: 5px;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.line-label.solid {
|
|
32
|
+
border-style: solid;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.line-label.dashed {
|
|
36
|
+
background-image: linear-gradient(to bottom, var(--or-app-color3) 50%, white 50%);
|
|
37
|
+
width: 2px;
|
|
38
|
+
border: none;
|
|
39
|
+
background-size: 10px 16px;
|
|
40
|
+
background-repeat: repeat-y;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.button-icon {
|
|
44
|
+
align-self: center;
|
|
45
|
+
padding: 10px;
|
|
46
|
+
cursor: pointer;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
a {
|
|
50
|
+
display: flex;
|
|
51
|
+
cursor: pointer;
|
|
52
|
+
text-decoration: underline;
|
|
53
|
+
font-weight: bold;
|
|
54
|
+
color: var(--or-app-color1);
|
|
55
|
+
--or-icon-width: 12px;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
.mdc-dialog .mdc-dialog__surface {
|
|
59
|
+
min-width: 600px;
|
|
60
|
+
height: calc(100vh - 50%);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
:host([hidden]) {
|
|
64
|
+
display: none;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
#container {
|
|
68
|
+
display: flex;
|
|
69
|
+
min-width: 0;
|
|
70
|
+
flex-direction: row;
|
|
71
|
+
height: 100%;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
#msg {
|
|
75
|
+
height: 100%;
|
|
76
|
+
width: 100%;
|
|
77
|
+
justify-content: center;
|
|
78
|
+
align-items: center;
|
|
79
|
+
text-align: center;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
#msg:not([hidden]) {
|
|
83
|
+
display: flex;
|
|
84
|
+
}
|
|
85
|
+
.period-controls {
|
|
86
|
+
display: flex;
|
|
87
|
+
min-width: 180px;
|
|
88
|
+
align-items: center;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
#controls {
|
|
92
|
+
display: flex;
|
|
93
|
+
flex-wrap: wrap;
|
|
94
|
+
margin: var(--internal-or-chart-controls-margin);
|
|
95
|
+
width: 100%;
|
|
96
|
+
flex-direction: column;
|
|
97
|
+
margin: 0;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
#attribute-list {
|
|
101
|
+
overflow: hidden auto;
|
|
102
|
+
min-height: 50px;
|
|
103
|
+
flex: 1 1 0;
|
|
104
|
+
width: 100%;
|
|
105
|
+
display: flex;
|
|
106
|
+
flex-direction: column;
|
|
107
|
+
}
|
|
108
|
+
.attribute-list-dense {
|
|
109
|
+
flex-wrap: wrap;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
.attribute-list-item {
|
|
113
|
+
cursor: pointer;
|
|
114
|
+
display: flex;
|
|
115
|
+
flex-direction: row;
|
|
116
|
+
align-items: center;
|
|
117
|
+
padding: 0;
|
|
118
|
+
min-height: 50px;
|
|
119
|
+
}
|
|
120
|
+
.attribute-list-item-dense {
|
|
121
|
+
min-height: 28px;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
.button-clear {
|
|
125
|
+
background: none;
|
|
126
|
+
visibility: hidden;
|
|
127
|
+
color: ${unsafeCSS(DefaultColor5)};
|
|
128
|
+
--or-icon-fill: ${unsafeCSS(DefaultColor5)};
|
|
129
|
+
display: inline-block;
|
|
130
|
+
border: none;
|
|
131
|
+
padding: 0;
|
|
132
|
+
cursor: pointer;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
.attribute-list-item:hover .button-clear {
|
|
136
|
+
visibility: visible;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
.button-clear:hover {
|
|
140
|
+
--or-icon-fill: var(--or-app-color4);
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
.attribute-list-item-label {
|
|
144
|
+
display: flex;
|
|
145
|
+
flex: 1 1 0;
|
|
146
|
+
line-height: 16px;
|
|
147
|
+
flex-direction: column;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
.attribute-list-item-bullet {
|
|
151
|
+
width: 12px;
|
|
152
|
+
height: 12px;
|
|
153
|
+
border-radius: 7px;
|
|
154
|
+
margin-right: 10px;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
.attribute-list-item .button.delete {
|
|
158
|
+
display: none;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
.attribute-list-item:hover .button.delete {
|
|
162
|
+
display: block;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
#controls > * {
|
|
166
|
+
margin-top: 5px;
|
|
167
|
+
margin-bottom: 5px;
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
.dialog-container {
|
|
171
|
+
display: flex;
|
|
172
|
+
flex-direction: row;
|
|
173
|
+
flex: 1 1 0;
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
.dialog-container > * {
|
|
177
|
+
flex: 1 1 0;
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
.dialog-container > or-mwc-input {
|
|
181
|
+
background-color: var(--or-app-color2);
|
|
182
|
+
border-left: 3px solid var(--or-app-color4);
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
#chart-container {
|
|
186
|
+
flex: 1 1 0;
|
|
187
|
+
position: relative;
|
|
188
|
+
overflow: hidden;
|
|
189
|
+
/*min-height: 400px;
|
|
190
|
+
max-height: 550px;*/
|
|
191
|
+
}
|
|
192
|
+
#chart-controls {
|
|
193
|
+
display: flex;
|
|
194
|
+
flex-direction: column;
|
|
195
|
+
align-items: center;
|
|
196
|
+
}
|
|
197
|
+
canvas {
|
|
198
|
+
width: 100% !important;
|
|
199
|
+
height: 100%; !important;
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
@media screen and (max-width: 1280px) {
|
|
203
|
+
#chart-container {
|
|
204
|
+
max-height: 330px;
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
@media screen and (max-width: 769px) {
|
|
209
|
+
.mdc-dialog .mdc-dialog__surface {
|
|
210
|
+
min-width: auto;
|
|
211
|
+
|
|
212
|
+
max-width: calc(100vw - 32px);
|
|
213
|
+
max-height: calc(100% - 32px);
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
#container {
|
|
217
|
+
flex-direction: column;
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
#controls {
|
|
221
|
+
min-width: 100%;
|
|
222
|
+
padding-left: 0;
|
|
223
|
+
}
|
|
224
|
+
.interval-controls,
|
|
225
|
+
.period-controls {
|
|
226
|
+
flex-direction: row;
|
|
227
|
+
justify-content: left;
|
|
228
|
+
align-items: center;
|
|
229
|
+
gap: 8px;
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
`;let OrChart=class extends(translate(i18next)(LitElement)){static get styles(){return[css`${unsafeCSS(tableStyle)}`,css`${unsafeCSS(dialogStyle)}`,style]}constructor(){super(),this.assets=[],this.assetAttributes=[],this.rightAxisAttributes=[],this.colors=["#3869B1","#DA7E30","#3F9852","#CC2428","#6B4C9A","#922427","#958C3D","#535055"],this.attributeControls=!0,this.timestampControls=!0,this.showLegend=!0,this.denseLegend=!1,this._loading=!1,this._data=void 0,this._updateTimestampTimer=null,this.addEventListener(OrAssetTreeSelectionEvent.NAME,this._onTreeSelectionChanged)}connectedCallback(){super.connectedCallback(),this._style=window.getComputedStyle(this)}disconnectedCallback(){super.disconnectedCallback(),this._cleanup()}firstUpdated(){this.loadSettings(!1)}updated(t){if(super.updated(t),t.has("realm")&&null!=t.get("realm")&&(this.assets=[],this.loadSettings(!0)),(t.has("datapointQuery")||t.has("timePresetKey")||t.has("timeframe")||t.has("rightAxisAttributes")||t.has("assetAttributes")||t.has("realm")||t.has("dataProvider"))&&(this._data=void 0,this._chart&&(this._chart.destroy(),this._chart=void 0),this._loadData()),!this._data)return;const e=moment().toDate().getTime();if(this._chart)t.has("_data")&&(this._chart.options.scales.x.min=this._startOfPeriod,this._chart.options.scales.x.max=this._endOfPeriod,this._chart.options.scales.x.time.unit=this._timeUnits,this._chart.options.scales.x.time.stepSize=this._stepSize,this._chart.options.plugins.annotation.annotations[0].xMin=e,this._chart.options.plugins.annotation.annotations[0].xMax=e,this._chart.data.datasets=this._data,this._chart.update());else{const t={type:"line",data:{datasets:this._data},options:{responsive:!0,maintainAspectRatio:!1,onResize:throttle((()=>{this.dispatchEvent(new OrChartEvent("resize")),this.applyChartResponsiveness()}),200),showLines:!0,plugins:{legend:{display:!1},tooltip:{mode:"x",intersect:!1,xPadding:10,yPadding:10,titleMarginBottom:10,callbacks:{label:t=>t.dataset.label+": "+t.formattedValue+t.dataset.unit}},annotation:{annotations:[{type:"line",xMin:e,xMax:e,borderColor:"#275582",borderWidth:2}]}},hover:{mode:"x",intersect:!1},scales:{y:{ticks:{beginAtZero:!0},grid:{color:"#cccccc"}},y1:{display:this.rightAxisAttributes.length>0,position:"right",ticks:{beginAtZero:!0},grid:{drawOnChartArea:!1}},x:{type:"time",min:this._startOfPeriod,max:this._endOfPeriod,time:{tooltipFormat:"MMM D, YYYY, HH:mm:ss",displayFormats:{millisecond:"HH:mm:ss.SSS",second:"HH:mm:ss",minute:"HH:mm",hour:this._endOfPeriod&&this._startOfPeriod&&this._endOfPeriod-this._startOfPeriod>864e5?"MMM DD, HH:mm":"HH:mm",day:"MMM DD",week:"w"},unit:this._timeUnits,stepSize:this._stepSize},ticks:{autoSkip:!0,color:"#000",font:{family:"'Open Sans', Helvetica, Arial, Lucida, sans-serif",size:9,style:"normal"}},gridLines:{color:"#cccccc"}}}}},i=Util.mergeObjects(t,this.chartOptions,!1);this._chart=new Chart(this._chartElem.getContext("2d"),i)}this.onCompleted().then((()=>{this.dispatchEvent(new OrChartEvent("rendered"))}))}applyChartResponsiveness(){if(this.shadowRoot){const t=this.shadowRoot.getElementById("container");if(t){const e=t.clientWidth<600;t.style.flexDirection=e?"column":"row";const i=this.shadowRoot.querySelector(".period-controls");i&&(i.style.justifyContent=e?"center":"space-between",i.style.paddingLeft=e?"":"18px");const r=this.shadowRoot.getElementById("attribute-list");r&&(r.style.gap=e?"4px 12px":"",r.style.maxHeight=e?"90px":"",r.style.flexFlow=e?"row wrap":"column nowrap",r.style.padding=e?"0":"12px 0"),this.shadowRoot.querySelectorAll(".attribute-list-item").forEach((t=>{t.style.minHeight=e?"0px":"44px",t.style.paddingLeft=e?"":"16px",t.children[1].style.flexDirection=e?"row":"column",t.children[1].style.gap=e?"4px":""}))}}}render(){const t=this._loading;return html`
|
|
233
|
+
<div id="container">
|
|
234
|
+
<div id="chart-container">
|
|
235
|
+
${t?html`
|
|
236
|
+
<div style="position: absolute; height: 100%; width: 100%;">
|
|
237
|
+
<or-loading-indicator ?overlay="false"></or-loading-indicator>
|
|
238
|
+
</div>
|
|
239
|
+
`:void 0}
|
|
240
|
+
<canvas id="chart" style="visibility: ${t?"hidden":"visible"}"></canvas>
|
|
241
|
+
</div>
|
|
242
|
+
|
|
243
|
+
${this.timestampControls||this.attributeControls||this.showLegend?html`
|
|
244
|
+
<div id="chart-controls">
|
|
245
|
+
<div id="controls">
|
|
246
|
+
<div class="period-controls">
|
|
247
|
+
${this.timePresetOptions&&this.timePresetKey?html`
|
|
248
|
+
${this.timestampControls?html`
|
|
249
|
+
${getContentWithMenuTemplate(html`<or-mwc-input .type="${InputType.BUTTON}" label="${this.timeframe?"dashboard.customTimeSpan":this.timePresetKey}"></or-mwc-input>`,Array.from(this.timePresetOptions.keys()).map((t=>({value:t}))),this.timePresetKey,(t=>{this.timeframe=void 0,this.timePresetKey=t.toString()}),void 0,void 0,void 0,!0)}
|
|
250
|
+
<!-- Button that opens custom time selection -->
|
|
251
|
+
<or-mwc-input .type="${InputType.BUTTON}" icon="calendar-clock" @or-mwc-input-changed="${()=>this._openTimeDialog(this._startOfPeriod,this._endOfPeriod)}"></or-mwc-input>
|
|
252
|
+
`:html`
|
|
253
|
+
<or-mwc-input .type="${InputType.BUTTON}" label="${this.timePresetKey}" disabled="true"></or-mwc-input>
|
|
254
|
+
`}
|
|
255
|
+
`:void 0}
|
|
256
|
+
</div>
|
|
257
|
+
${this.timeframe?html`
|
|
258
|
+
<div style="margin-left: 18px; font-size: 12px;">
|
|
259
|
+
<table style="width: 100%;">
|
|
260
|
+
<thead>
|
|
261
|
+
<tr>
|
|
262
|
+
<th style="font-weight: normal; text-align: left;">${i18next.t("from")}:</th>
|
|
263
|
+
<th style="font-weight: normal; text-align: left;">${moment(this.timeframe[0]).format("L HH:mm")}</th>
|
|
264
|
+
</tr>
|
|
265
|
+
</thead>
|
|
266
|
+
<tbody>
|
|
267
|
+
<tr>
|
|
268
|
+
<td>${i18next.t("to")}:</td>
|
|
269
|
+
<td>${moment(this.timeframe[1]).format("L HH:mm")}</td>
|
|
270
|
+
</tr>
|
|
271
|
+
</tbody>
|
|
272
|
+
</table>
|
|
273
|
+
</div>
|
|
274
|
+
`:void 0}
|
|
275
|
+
${this.attributeControls?html`
|
|
276
|
+
<or-mwc-input class="button" .type="${InputType.BUTTON}" ?disabled="${t}" label="selectAttributes" icon="plus" @or-mwc-input-changed="${()=>this._openDialog()}"></or-mwc-input>
|
|
277
|
+
`:void 0}
|
|
278
|
+
</div>
|
|
279
|
+
${cache(this.showLegend?html`
|
|
280
|
+
<div id="attribute-list" class="${this.denseLegend?"attribute-list-dense":void 0}">
|
|
281
|
+
${null==this.assetAttributes||0==this.assetAttributes.length?html`
|
|
282
|
+
<div>
|
|
283
|
+
<span>${i18next.t("noAttributesConnected")}</span>
|
|
284
|
+
</div>
|
|
285
|
+
`:void 0}
|
|
286
|
+
${this.assetAttributes&&this.assetAttributes.map((([t,e],i)=>{const r=this.assets[t],o=i%this.colors.length,a=AssetModelUtil.getAttributeAndValueDescriptors(r.type,e.name,e),s=Util.getAttributeLabel(e,a[0],r.type,!0),n=this.rightAxisAttributes.find((t=>r.id===t.id&&e.name===t.name))?i18next.t("right"):void 0,l=this.colors[o]||"";return html`
|
|
287
|
+
<div class="attribute-list-item ${this.denseLegend?"attribute-list-item-dense":void 0}" @mouseover="${()=>this.addDatasetHighlight(this.assets[t].id,e.name)}" @mouseout="${()=>this.removeDatasetHighlight(l)}">
|
|
288
|
+
<span style="margin-right: 10px; --or-icon-width: 20px;">${getAssetDescriptorIconTemplate(AssetModelUtil.getAssetDescriptor(this.assets[t].type),void 0,void 0,l.split("#")[1])}</span>
|
|
289
|
+
<div class="attribute-list-item-label ${this.denseLegend?"attribute-list-item-label-dense":void 0}">
|
|
290
|
+
<div style="display: flex; justify-content: space-between;">
|
|
291
|
+
<span style="font-size:12px; ${this.denseLegend?"margin-right: 8px":void 0}">${this.assets[t].name}</span>
|
|
292
|
+
${when(n,(()=>html`<span style="font-size:12px; color:grey">(${n})</span>`))}
|
|
293
|
+
</div>
|
|
294
|
+
<span style="font-size:12px; color:grey;">${s}</span>
|
|
295
|
+
</div>
|
|
296
|
+
</div>
|
|
297
|
+
`}))}
|
|
298
|
+
</div>
|
|
299
|
+
`:void 0)}
|
|
300
|
+
</div>
|
|
301
|
+
`:void 0}
|
|
302
|
+
</div>
|
|
303
|
+
`}_onTreeSelectionChanged(t){return __awaiter(this,void 0,void 0,(function*(){if(!manager.events)return;const e=t.detail&&t.detail.newNodes.length>0?t.detail.newNodes[0]:void 0;if(e){const t=yield manager.events.sendEventWithReply({event:{eventType:"read-asset",assetId:e.asset.id}});this.activeAsset=t.asset}else this.activeAsset=void 0}))}removeDatasetHighlight(t){this._chart&&this._chart.data&&this._chart.data.datasets&&(this._chart.data.datasets.map(((t,e)=>{t.borderColor&&"string"==typeof t.borderColor&&9===t.borderColor.length&&(t.borderColor=t.borderColor.slice(0,-2),t.backgroundColor=t.borderColor)})),this._chart.update())}addDatasetHighlight(t,e){t&&e&&this._chart&&this._chart.data&&this._chart.data.datasets&&(this._chart.data.datasets.map(((i,r)=>{i.assetId===t&&i.attrName===e||(i.borderColor=i.borderColor+"36",i.backgroundColor=i.borderColor)})),this._chart.update())}loadSettings(t){return __awaiter(this,void 0,void 0,(function*(){if((null==this.assetAttributes||t)&&(this.assetAttributes=[]),this.realm||(this.realm=manager.getRealm()),this.timePresetOptions||(this.timePresetOptions=this._getDefaultTimestampOptions()),this.timePresetKey||(this.timePresetKey=this.timePresetOptions.keys().next().value.toString()),!this.panelName)return;const e=window.location.hash,i=(yield manager.console.retrieveData("OrChartConfig"))||[];Array.isArray(i)||manager.console.storeData("OrChartConfig",[i]);let r=i.find((t=>t.realm===this.realm));if(!r)return;const o=r.views&&r.views[e]?r.views[e][this.panelName]:void 0;if(!o)return;if(!o.attributeRefs){delete r.views[e][this.panelName];const t=[...i.filter((t=>t.realm!==this.realm)),r];return void manager.console.storeData("OrChartConfig",t)}const a=o.attributeRefs.map((t=>t.id));if(0!==a.length&&(this._loading=!0,!a.every((t=>!!this.assets.find((e=>e.id===t)))))){const t={ids:a};try{const e=(yield manager.rest.api.AssetResource.queryAssets(t)).data||[];o.attributeRefs=o.attributeRefs.filter((t=>!!e.find((e=>e.id===t.id&&e.attributes&&e.attributes.hasOwnProperty(t.name))))),manager.console.storeData("OrChartConfig",[...i.filter((t=>t.realm!==this.realm)),r]),this.assets=e.filter((t=>o.attributeRefs.find((e=>e.id===t.id))))}catch(t){console.error("Failed to get assets requested in settings",t)}this._loading=!1,this.assets&&this.assets.length>0&&(this.assetAttributes=o.attributeRefs.map((t=>{const e=this.assets.findIndex((e=>e.id===t.id)),i=e>=0?this.assets[e]:void 0;return i&&i.attributes?[e,i.attributes[t.name]]:void 0})).filter((t=>!!t)))}}))}saveSettings(){return __awaiter(this,void 0,void 0,(function*(){if(!this.panelName)return;const t=window.location.hash,e=(yield manager.console.retrieveData("OrChartConfig"))||[];let i=e.find((t=>t.realm===this.realm));i||(i={realm:this.realm,views:{}}),i.views[t]||(i.views[t]={}),this.assets&&this.assetAttributes&&0!==this.assets.length&&0!==this.assetAttributes.length?(i.realm=this.realm,i.views[t][this.panelName]={attributeRefs:this.assetAttributes.map((([t,e])=>{const i=this.assets[t];return i?{id:i.id,name:e.name}:void 0})).filter((t=>!!t))}):delete i.views[t][this.panelName],manager.console.storeData("OrChartConfig",[...e.filter((t=>t.realm!==this.realm)),i])}))}_openDialog(){showDialog((new OrAttributePicker).setShowOnlyDatapointAttrs(!0).setMultiSelect(!0).setSelectedAttributes(this._getSelectedAttributes())).addEventListener(OrAttributePickerPickedEvent.NAME,(t=>this._addAttribute(t.detail)))}_openTimeDialog(t,e){const i=createRef(),r=createRef();showDialog((new OrMwcDialog).setHeading(i18next.t("timeframe")).setContent((()=>html`
|
|
304
|
+
<div>
|
|
305
|
+
<or-mwc-input ${ref(i)} type="${InputType.DATETIME}" required label="${i18next.t("start")}" .value="${t}"></or-mwc-input>
|
|
306
|
+
<or-mwc-input ${ref(r)} type="${InputType.DATETIME}" required label="${i18next.t("ending")}" .value="${e}"></or-mwc-input>
|
|
307
|
+
</div>
|
|
308
|
+
`)).setActions([{actionName:"cancel",content:"cancel"},{actionName:"ok",content:"ok",action:()=>{var t,e;this.timePresetOptions&&(null===(t=i.value)||void 0===t?void 0:t.value)&&(null===(e=r.value)||void 0===e?void 0:e.value)&&(this.timeframe=[new Date(i.value.value),new Date(r.value.value)])}}]))}_addAttribute(t){return __awaiter(this,void 0,void 0,(function*(){if(t){this.assetAttributes=[];for(const e of t){const t=yield manager.rest.api.AssetResource.get(e.id);if(this.activeAsset=t.data,this.activeAsset){let t=this.assets.findIndex((t=>t.id===e.id));t<0&&(t=this.assets.length,this.assets=[...this.assets,this.activeAsset]),this.assetAttributes.push([t,e])}}this.assetAttributes=[...this.assetAttributes],this.saveSettings()}}))}_getSelectedAttributes(){return this.assetAttributes.map((([t,e])=>({id:this.assets[t].id,name:e.name})))}onCompleted(){return __awaiter(this,void 0,void 0,(function*(){yield this.updateComplete}))}_cleanup(){this._chart&&(this._chart.destroy(),this._chart=void 0,this.requestUpdate())}_deleteAttribute(t){const e=this.assetAttributes.splice(t,1)[0][0];this.assetAttributes=[...this.assetAttributes],this.assetAttributes.some((([t,i])=>t===e))||(this.assets.splice(t,1),this.assetAttributes.forEach((t=>{t[0]>=e&&(t[0]-=1)}))),this.saveSettings()}_getAttributeOptionsOld(){if(!this.activeAsset||!this.activeAsset.attributes)return;this.shadowRoot&&this.shadowRoot.getElementById("chart-attribute-picker")&&(this.shadowRoot.getElementById("chart-attribute-picker").value="");const t=Object.values(this.activeAsset.attributes);return t&&t.length>0?t.filter((t=>t.meta&&(t.meta.hasOwnProperty("storeDataPoints")?t.meta.storeDataPoints:t.meta.hasOwnProperty("agentLink")))).filter((t=>this.assetAttributes&&!this.assetAttributes.some((([e,i])=>i.name===t.name&&this.assets[e].id===this.activeAsset.id)))).map((t=>{const e=AssetModelUtil.getAttributeAndValueDescriptors(this.activeAsset.type,t.name,t),i=Util.getAttributeLabel(t,e[0],this.activeAsset.type,!1);return[t.name,i]})):void 0}_getAttributeOptions(){if(!this.activeAsset||!this.activeAsset.attributes)return;this.shadowRoot&&this.shadowRoot.getElementById("chart-attribute-picker")&&(this.shadowRoot.getElementById("chart-attribute-picker").value="");const t=Object.values(this.activeAsset.attributes);return t&&t.length>0?t.filter((t=>t.meta&&(t.meta.hasOwnProperty("storeDataPoints")?t.meta.storeDataPoints:t.meta.hasOwnProperty("agentLink")))).filter((t=>this.assetAttributes&&!this.assetAttributes.some((([e,i])=>i.name===t.name&&this.assets[e].id===this.activeAsset.id)))).map((t=>{const e=AssetModelUtil.getAttributeAndValueDescriptors(this.activeAsset.type,t.name,t),i=Util.getAttributeLabel(t,e[0],this.activeAsset.type,!1);return[t.name,i]})):void 0}_getDefaultTimestampOptions(){return new Map([["lastHour",t=>[moment(t).subtract(1,"hour").toDate(),t]],["last24Hours",t=>[moment(t).subtract(24,"hours").toDate(),t]],["last7Days",t=>[moment(t).subtract(7,"days").toDate(),t]],["last30Days",t=>[moment(t).subtract(30,"days").toDate(),t]],["last90Days",t=>[moment(t).subtract(90,"days").toDate(),t]],["last6Months",t=>[moment(t).subtract(6,"months").toDate(),t]],["lastYear",t=>[moment(t).subtract(1,"year").toDate(),t]]])}_getInterval(t){return t<=1?[5,"MINUTE"]:t<=3?[10,"MINUTE"]:t<=6?[30,"MINUTE"]:t<=24?[1,"HOUR"]:t<=48?[3,"HOUR"]:t<=96?[12,"HOUR"]:t<=744?[1,"DAY"]:[1,"MONTH"]}_loadData(){return __awaiter(this,void 0,void 0,(function*(){if(this._loading||this._data||!this.assetAttributes||!this.assets||0===this.assets.length&&!this.dataProvider||0===this.assetAttributes.length&&!this.dataProvider||!this.datapointQuery)return;this._loading=!0;const t=this.timePresetOptions.get(this.timePresetKey)(new Date);this._startOfPeriod=this.timeframe?this.timeframe[0].getTime():t[0].getTime(),this._endOfPeriod=this.timeframe?this.timeframe[1].getTime():t[1].getTime();const e=(this._endOfPeriod-this._startOfPeriod)/1e3/60/60,i=this._getInterval(e),r=i[0],o=i[1],a=o.toLowerCase();this._timeUnits=a,this._stepSize=r;const s=moment().toDate().getTime();let n=s<this._startOfPeriod?this._startOfPeriod:s;const l=[];let h;this.dataProvider?yield this.dataProvider(this._startOfPeriod,this._endOfPeriod,o.toString(),r).then((t=>{t.forEach((t=>{l.push(t)}))})):h=this.assetAttributes.map((([t,e],i)=>__awaiter(this,void 0,void 0,(function*(){const r=this.assets[t],o=!!this.rightAxisAttributes.find((t=>t.id===r.id&&t.name===e.name)),a=AssetModelUtil.getAttributeAndValueDescriptors(r.type,e.name,e),s=Util.getAttributeLabel(e,a[0],r.type,!1),h=Util.resolveUnits(Util.getAttributeUnits(e,a[0],r.type)),d=i%this.colors.length;let c=yield this._loadAttributeData(r,e,this.colors[d],this._startOfPeriod,this._endOfPeriod,!1,r.name+" "+s);c.assetId=r.id,c.attrName=e.name,c.unit=h,c.yAxisID=o?"y1":"y",l.push(c),c=yield this._loadAttributeData(this.assets[t],e,this.colors[d],n,this._endOfPeriod,!0,r.name+" "+s+" "+i18next.t("predicted")),l.push(c)})))),h&&(yield Promise.all(h)),this._loading=!1,this._data=l}))}_loadAttributeData(t,e,i,r,o,a,s){var n,l,h;return __awaiter(this,void 0,void 0,(function*(){const r={borderColor:i,backgroundColor:i,label:s,pointRadius:2,fill:!1,data:[],borderDash:a?[2,4]:void 0};if(t.id&&e.name&&this.datapointQuery){let i;const o=JSON.parse(JSON.stringify(this.datapointQuery));if(o.fromTimestamp=this._startOfPeriod,o.toTimestamp=this._endOfPeriod,"lttb"==o.type)o.amountOfPoints?(null===(n=this._chartElem)||void 0===n?void 0:n.clientWidth)>0&&(o.amountOfPoints=Math.min(o.amountOfPoints,null===(l=this._chartElem)||void 0===l?void 0:l.clientWidth)):(null===(h=this._chartElem)||void 0===h?void 0:h.clientWidth)>0?o.amountOfPoints=Math.round(this._chartElem.clientWidth/5):(console.warn("Could not grab width of the Chart for estimating amount of data points. Using 100 points instead."),o.amountOfPoints=100);else if("interval"===o.type&&!o.interval){const t=(this.datapointQuery.toTimestamp-this.datapointQuery.fromTimestamp)/1e3/60/60,e=this._getInterval(t);o.interval=e[0].toString()+" "+e[1].toString()}i=a?yield manager.rest.api.AssetPredictedDatapointResource.getPredictedDatapoints(t.id,e.name,o):yield manager.rest.api.AssetDatapointResource.getDatapoints(t.id,e.name,o),200===i.status&&(r.data=i.data.filter((t=>null!==t.y&&void 0!==t.y)))}return r}))}};OrChart.DEFAULT_TIMESTAMP_FORMAT="L HH:mm:ss",__decorate([property({type:Object})],OrChart.prototype,"assets",void 0),__decorate([property({type:Object})],OrChart.prototype,"activeAsset",void 0),__decorate([property({type:Object})],OrChart.prototype,"assetAttributes",void 0),__decorate([property({type:Array})],OrChart.prototype,"rightAxisAttributes",void 0),__decorate([property()],OrChart.prototype,"dataProvider",void 0),__decorate([property({type:Array})],OrChart.prototype,"colors",void 0),__decorate([property({type:Object})],OrChart.prototype,"datapointQuery",void 0),__decorate([property({type:Object})],OrChart.prototype,"config",void 0),__decorate([property({type:Object})],OrChart.prototype,"chartOptions",void 0),__decorate([property({type:String})],OrChart.prototype,"realm",void 0),__decorate([property()],OrChart.prototype,"panelName",void 0),__decorate([property()],OrChart.prototype,"attributeControls",void 0),__decorate([property()],OrChart.prototype,"timeframe",void 0),__decorate([property()],OrChart.prototype,"timestampControls",void 0),__decorate([property()],OrChart.prototype,"timePresetOptions",void 0),__decorate([property()],OrChart.prototype,"timePresetKey",void 0),__decorate([property()],OrChart.prototype,"showLegend",void 0),__decorate([property()],OrChart.prototype,"denseLegend",void 0),__decorate([property()],OrChart.prototype,"_loading",void 0),__decorate([property()],OrChart.prototype,"_data",void 0),__decorate([property()],OrChart.prototype,"_tableTemplate",void 0),__decorate([query("#chart")],OrChart.prototype,"_chartElem",void 0),OrChart=__decorate([customElement("or-chart")],OrChart);export{OrChart};
|
package/lib/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@openremote/or-chart",
|
|
3
|
+
"version": "1.2.0-snapshot.20240512154942",
|
|
4
|
+
"description": "OpenRemote chart",
|
|
5
|
+
"main": "dist/umd/index.bundle.js",
|
|
6
|
+
"module": "lib/index.js",
|
|
7
|
+
"exports": {
|
|
8
|
+
".": "./lib/index.js",
|
|
9
|
+
"./*": "./lib/*.js"
|
|
10
|
+
},
|
|
11
|
+
"types": "lib/index.d.ts",
|
|
12
|
+
"scripts": {
|
|
13
|
+
"test": "echo \"No tests\" && exit 0",
|
|
14
|
+
"prepublishOnly": "npx webpack"
|
|
15
|
+
},
|
|
16
|
+
"author": "OpenRemote",
|
|
17
|
+
"license": "AGPL-3.0-or-later",
|
|
18
|
+
"dependencies": {
|
|
19
|
+
"@material/data-table": "^9.0.0",
|
|
20
|
+
"@material/dialog": "^9.0.0",
|
|
21
|
+
"@openremote/core": "1.2.0-snapshot.20240512154942",
|
|
22
|
+
"@openremote/or-asset-tree": "1.2.0-snapshot.20240512154942",
|
|
23
|
+
"@openremote/or-attribute-picker": "1.2.0-snapshot.20240512154942",
|
|
24
|
+
"@openremote/or-components": "1.2.0-snapshot.20240512154942",
|
|
25
|
+
"@openremote/or-icon": "1.2.0-snapshot.20240512154942",
|
|
26
|
+
"@openremote/or-mwc-components": "1.2.0-snapshot.20240512154942",
|
|
27
|
+
"@openremote/or-translate": "1.2.0-snapshot.20240512154942",
|
|
28
|
+
"chart.js": "^3.6.0",
|
|
29
|
+
"chartjs-adapter-moment": "^1.0.0",
|
|
30
|
+
"chartjs-plugin-annotation": "^1.1.0",
|
|
31
|
+
"jsonpath-plus": "^6.0.1",
|
|
32
|
+
"lit": "^2.0.2",
|
|
33
|
+
"moment": "^2.29.4"
|
|
34
|
+
},
|
|
35
|
+
"devDependencies": {
|
|
36
|
+
"@openremote/util": "1.2.0-snapshot.20240512154942",
|
|
37
|
+
"@types/chart.js": "^2.9.34",
|
|
38
|
+
"@types/offscreencanvas": "^2019.6.4"
|
|
39
|
+
},
|
|
40
|
+
"publishConfig": {
|
|
41
|
+
"access": "public"
|
|
42
|
+
}
|
|
43
|
+
}
|