@operato/scene-chartjs 2.0.0-beta.0 → 7.0.0-rc.0
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/CHANGELOG.md +17 -0
- package/dist/editors/property-editor-chartjs-abstract.d.ts +3 -3
- package/dist/editors/property-editor-chartjs-abstract.js +0 -8
- package/dist/editors/property-editor-chartjs-abstract.js.map +1 -1
- package/dist/editors/property-editor-chartjs-hbar.d.ts +3 -4
- package/dist/editors/property-editor-chartjs-hbar.js +38 -42
- package/dist/editors/property-editor-chartjs-hbar.js.map +1 -1
- package/dist/editors/property-editor-chartjs-mixed.d.ts +1 -1
- package/dist/editors/property-editor-chartjs-multi-series-abstract.d.ts +6 -8
- package/dist/editors/property-editor-chartjs-multi-series-abstract.js +90 -97
- package/dist/editors/property-editor-chartjs-multi-series-abstract.js.map +1 -1
- package/dist/editors/property-editor-chartjs-pie.d.ts +1 -1
- package/dist/editors/property-editor-chartjs-radar.d.ts +1 -1
- package/dist/editors/property-editor-chartjs-styles.js +35 -29
- package/dist/editors/property-editor-chartjs-styles.js.map +1 -1
- package/dist/editors/property-editor-chartjs.d.ts +1 -1
- package/dist/editors/property-editor-chartjs.js +3 -1
- package/dist/editors/property-editor-chartjs.js.map +1 -1
- package/dist/ox-chart.d.ts +1 -1
- package/package.json +2 -4
- package/schema.graphql +76 -43
- package/src/editors/property-editor-chartjs-abstract.ts +0 -12
- package/src/editors/property-editor-chartjs-hbar.ts +38 -44
- package/src/editors/property-editor-chartjs-multi-series-abstract.ts +111 -120
- package/src/editors/property-editor-chartjs-styles.ts +35 -29
- package/src/editors/property-editor-chartjs.ts +3 -1
- package/tsconfig.tsbuildinfo +1 -1
@@ -1,7 +1,5 @@
|
|
1
1
|
import { __decorate } from "tslib";
|
2
|
-
import '@material/web/
|
3
|
-
import '@polymer/iron-pages/iron-pages';
|
4
|
-
import '@polymer/paper-tabs/paper-tabs';
|
2
|
+
import '@material/web/icon/icon.js';
|
5
3
|
import '@operato/i18n/ox-i18n.js';
|
6
4
|
import { css, html } from 'lit';
|
7
5
|
import { query } from 'lit/decorators.js';
|
@@ -68,8 +66,7 @@ class PropertyEditorChartJSMultiSeriesAbstract extends PropertyEditorChartJSAbst
|
|
68
66
|
this.value.options.multiAxis = multiAxis;
|
69
67
|
}
|
70
68
|
get tabContainer() {
|
71
|
-
|
72
|
-
return (_a = this.tabs.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('#tabsContainer');
|
69
|
+
return this.tabs;
|
73
70
|
}
|
74
71
|
firstUpdated() {
|
75
72
|
var _a;
|
@@ -179,129 +176,125 @@ class PropertyEditorChartJSMultiSeriesAbstract extends PropertyEditorChartJSAbst
|
|
179
176
|
return html `
|
180
177
|
<div id="series-properties-container" fullwidth>
|
181
178
|
<div id="tab-header">
|
182
|
-
<md-
|
179
|
+
<md-icon
|
183
180
|
id="tab-nav-left-button"
|
184
|
-
@
|
181
|
+
@tap=${(e) => {
|
185
182
|
this._onTabScrollNavLeft(e);
|
186
183
|
}}
|
187
184
|
disabled
|
188
|
-
|
185
|
+
>chevron_left</md-icon
|
189
186
|
>
|
190
|
-
<
|
187
|
+
<div
|
191
188
|
id="tabs"
|
192
|
-
@
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
scrollable
|
197
|
-
hide-scroll-buttons
|
189
|
+
@change=${(e) => {
|
190
|
+
this.currentSeriesIndex = e.target.activeTabIndex;
|
191
|
+
}}
|
192
|
+
active-tab-index=${this.currentSeriesIndex}
|
198
193
|
fit-container
|
199
194
|
>
|
200
195
|
${this.datasets.map((dataset, index) => html `
|
201
|
-
<
|
202
|
-
|
196
|
+
<div
|
197
|
+
data-series=${index + 1}
|
198
|
+
data-tab-index=${index}
|
199
|
+
tab
|
200
|
+
?selected=${index == this.currentSeriesIndex}
|
201
|
+
@click=${(e) => {
|
202
|
+
const target = e.target;
|
203
|
+
this.currentSeriesIndex = Number(target.getAttribute('data-tab-index'));
|
204
|
+
}}
|
205
|
+
>
|
206
|
+
${index + 1}
|
203
207
|
${!this.datasets || (this.datasets.length != 1 && this.currentSeriesIndex == index)
|
204
|
-
? html `
|
205
|
-
<md-elevated-button @tap=${(e) => this.onTapRemoveCurrentTab(e)}>
|
206
|
-
<md-icon>close</md-icon>
|
207
|
-
</md-elevated-button>
|
208
|
-
`
|
208
|
+
? html ` <md-icon @tap="${(e) => this.onTapRemoveCurrentTab(e)}"> close </md-icon> `
|
209
209
|
: html ``}
|
210
|
-
</
|
210
|
+
</div>
|
211
211
|
`)}
|
212
|
-
</
|
213
|
-
<md-
|
212
|
+
</div>
|
213
|
+
<md-icon
|
214
214
|
id="tab-nav-right-button"
|
215
215
|
@click=${(e) => {
|
216
216
|
this._onTabScrollNavRight(e);
|
217
217
|
}}
|
218
218
|
disabled
|
219
|
-
|
219
|
+
>chevron_right</md-icon
|
220
220
|
>
|
221
221
|
</div>
|
222
222
|
<div id="add-series-button-container">
|
223
|
-
<md-
|
224
|
-
><md-icon>add</md-icon></md-elevated-button
|
225
|
-
>
|
223
|
+
<md-icon id="add-series-button" @tap=${(e) => this.onTapAddTab(e)}>add</md-icon>
|
226
224
|
</div>
|
227
225
|
|
228
|
-
<
|
229
|
-
|
230
|
-
|
231
|
-
<label> <ox-i18n msgid="label.data-key">Data Key</ox-i18n> </label>
|
232
|
-
<input type="text" value-key="dataKey" .value=${this.dataKey} />
|
226
|
+
<div class="tab-content">
|
227
|
+
<label> <ox-i18n msgid="label.data-key">Data Key</ox-i18n> </label>
|
228
|
+
<input type="text" value-key="dataKey" .value=${this.dataKey} />
|
233
229
|
|
234
|
-
|
230
|
+
${this.value.type == 'bar'
|
235
231
|
? html `
|
236
|
-
|
237
|
-
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
232
|
+
<label> <ox-i18n msgid="label.type">type</ox-i18n> </label>
|
233
|
+
<select class="select-content" value-key="series.type" .value=${this.series.type}>
|
234
|
+
<option value="bar" selected>bar</option>
|
235
|
+
<option value="line">line</option>
|
236
|
+
</select>
|
237
|
+
`
|
242
238
|
: html ``}
|
243
239
|
|
244
|
-
|
245
|
-
|
240
|
+
<label> <ox-i18n msgid="label.label">label</ox-i18n> </label>
|
241
|
+
<input type="text" value-key="series.label" .value=${this.series.label} />
|
246
242
|
|
247
|
-
|
243
|
+
${this.series.type == 'line'
|
248
244
|
? html `
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
245
|
+
<label> <ox-i18n msgid="label.line-tension">line tension</ox-i18n> </label>
|
246
|
+
<select class="select-content" value-key="series.lineTension" .value=${this.series.lineTension}>
|
247
|
+
<option value="0.4">smooth</option>
|
248
|
+
<option value="0">angled</option>
|
249
|
+
</select>
|
250
|
+
`
|
255
251
|
: html ``}
|
256
|
-
|
252
|
+
${this.series.type == 'line'
|
257
253
|
? html `
|
258
|
-
|
259
|
-
|
260
|
-
|
254
|
+
<label> <ox-i18n msgid="label.border-width">border width</ox-i18n> </label>
|
255
|
+
<input type="number" value-key="series.borderWidth" .value=${this.series.borderWidth} />
|
256
|
+
`
|
261
257
|
: html ``}
|
262
258
|
|
263
|
-
|
264
|
-
|
259
|
+
<label> <ox-i18n msgid="label.color">color</ox-i18n> </label>
|
260
|
+
<ox-input-color value-key="color" .value=${this.color}></ox-input-color>
|
265
261
|
|
266
|
-
|
262
|
+
${this.series.type == 'line'
|
267
263
|
? html `
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
|
264
|
+
<label> <ox-i18n msgid="label.point-shape">point shape</ox-i18n> </label>
|
265
|
+
<select class="select-content" value-key="series.pointStyle" .value=${this.series.pointStyle}>
|
266
|
+
<option value="circle">⚬</option>
|
267
|
+
<option value="triangle">▵</option>
|
268
|
+
<option value="rect">□</option>
|
269
|
+
<option value="rectRot">◇</option>
|
270
|
+
<option value="cross">+</option>
|
271
|
+
<option value="crossRot">⨉</option>
|
272
|
+
<option value="star">✱</option>
|
273
|
+
<option value="line">―</option>
|
274
|
+
<option value="dash">┄</option>
|
275
|
+
</select>
|
280
276
|
|
281
|
-
|
282
|
-
|
283
|
-
|
277
|
+
<label> <ox-i18n msgid="label.point-size">point size</ox-i18n> </label>
|
278
|
+
<input type="number" value-key="series.pointRadius" .value=${this.series.pointRadius} />
|
279
|
+
`
|
284
280
|
: html ``} <label> <ox-i18n msgid="label.stack-group">Stack group</ox-i18n> </label>
|
285
|
-
|
286
|
-
'line'
|
281
|
+
<input type="text" value-key="series.stack" .value=${this.series.stack || ''} /> ${this.series.type == 'line'
|
287
282
|
? html `
|
288
|
-
|
289
|
-
|
290
|
-
|
283
|
+
<input type="checkbox" value-key="series.fill" .checked=${this.series.fill} />
|
284
|
+
<label> <ox-i18n msgid="label.fill">fill</ox-i18n> </label>
|
285
|
+
`
|
291
286
|
: html ``}
|
292
|
-
|
287
|
+
${this.multiAxis
|
293
288
|
? html `
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
|
289
|
+
<label> <ox-i18n msgid="label.target-axis">target axis</ox-i18n> </label>
|
290
|
+
<select class="select-content" value-key="series.yAxisID" .value=${this.series.yAxisID}>
|
291
|
+
<option value="left">left</option>
|
292
|
+
<option value="right">right</option>
|
293
|
+
</select>
|
294
|
+
`
|
300
295
|
: html ``}
|
301
|
-
|
302
|
-
|
303
|
-
`)}
|
304
|
-
</iron-pages>
|
296
|
+
${this.displayValueTemplate()}
|
297
|
+
</div>
|
305
298
|
</div>
|
306
299
|
`;
|
307
300
|
}
|
@@ -310,22 +303,22 @@ class PropertyEditorChartJSMultiSeriesAbstract extends PropertyEditorChartJSAbst
|
|
310
303
|
return;
|
311
304
|
}
|
312
305
|
if (this.tabContainer.clientWidth == this.tabContainer.scrollWidth) {
|
313
|
-
this.tabNavLeftButton.disabled
|
314
|
-
this.tabNavRightButton.disabled
|
306
|
+
this.tabNavLeftButton.setAttribute('disabled', '');
|
307
|
+
this.tabNavRightButton.setAttribute('disabled', '');
|
315
308
|
}
|
316
309
|
// left-end
|
317
310
|
else if (this.tabContainer.scrollLeft == 0) {
|
318
|
-
this.tabNavLeftButton.disabled
|
319
|
-
this.tabNavRightButton.disabled
|
311
|
+
this.tabNavLeftButton.setAttribute('disabled', '');
|
312
|
+
this.tabNavRightButton.removeAttribute('disabled');
|
320
313
|
}
|
321
314
|
// right-end
|
322
315
|
else if (this.tabContainer.scrollLeft + this.tabContainer.clientWidth >= this.tabContainer.scrollWidth) {
|
323
|
-
this.tabNavLeftButton.disabled
|
324
|
-
this.tabNavRightButton.disabled
|
316
|
+
this.tabNavLeftButton.removeAttribute('disabled');
|
317
|
+
this.tabNavRightButton.setAttribute('disabled', '');
|
325
318
|
}
|
326
319
|
else {
|
327
|
-
this.tabNavLeftButton.disabled
|
328
|
-
this.tabNavRightButton.disabled
|
320
|
+
this.tabNavLeftButton.removeAttribute('disabled');
|
321
|
+
this.tabNavRightButton.removeAttribute('disabled');
|
329
322
|
}
|
330
323
|
}
|
331
324
|
_onTabScrollNavLeft(e) {
|
@@ -348,7 +341,7 @@ class PropertyEditorChartJSMultiSeriesAbstract extends PropertyEditorChartJSAbst
|
|
348
341
|
PropertyEditorChartJSMultiSeriesAbstract.styles = [
|
349
342
|
...PropertyEditorChartJSAbstract.styles,
|
350
343
|
css `
|
351
|
-
|
344
|
+
md-tabs {
|
352
345
|
background-color: rgb(204, 204, 204);
|
353
346
|
}
|
354
347
|
input[type='text'],
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"property-editor-chartjs-multi-series-abstract.js","sourceRoot":"","sources":["../../src/editors/property-editor-chartjs-multi-series-abstract.ts"],"names":[],"mappings":"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","sourcesContent":["import '@material/web/button/elevated-button.js'\nimport '@polymer/iron-pages/iron-pages'\nimport '@polymer/paper-tabs/paper-tabs'\n\nimport '@operato/i18n/ox-i18n.js'\n\nimport { css, html } from 'lit'\nimport { query } from 'lit/decorators.js'\n\nimport { Properties } from '@hatiolab/things-scene'\nimport { MdElevatedButton } from '@material/web/button/elevated-button.js'\n\nimport PropertyEditorChartJSAbstract from './property-editor-chartjs-abstract'\n\nexport default class PropertyEditorChartJSMultiSeriesAbstract extends PropertyEditorChartJSAbstract {\n static styles = [\n ...PropertyEditorChartJSAbstract.styles,\n css`\n paper-tabs {\n background-color: rgb(204, 204, 204);\n }\n input[type='text'],\n input[type='number'] {\n border: 1px solid rgba(0, 0, 0, 0.2);\n }\n `\n ]\n\n constructor() {\n super()\n\n this.value = {\n options: {\n legend: {},\n scales: {\n xAxes: [\n {\n ticks: {}\n }\n ],\n yAxes: [\n {\n ticks: {}\n }\n ]\n }\n },\n data: {\n datasets: []\n }\n }\n }\n\n @query('#tabs') tabs!: HTMLElement\n @query('#tab-nav-left-button') tabNavLeftButton!: MdElevatedButton\n @query('#tab-nav-right-button') tabNavRightButton!: MdElevatedButton\n\n get color() {\n var oldVersionColor = this.series.backgroundColor\n if (this.series.type == 'line') oldVersionColor = this.series.borderColor\n if (this.series.type == 'radar') oldVersionColor = this.series.borderColor\n return this.series.color || oldVersionColor\n }\n\n set color(color) {\n this.series.color = color\n delete this.series.backgroundColor\n delete this.series.borderColor\n }\n\n get xAxes0() {\n return this.scales.xAxes[0]\n }\n\n set xAxes0(xAxes0) {\n this.scales.xAxes[0] = xAxes0\n }\n\n get yAxes0() {\n return this.scales.yAxes[0]\n }\n\n set yAxes0(yAxes0) {\n this.scales.yAxes[0] = yAxes0\n }\n\n get yAxes1() {\n return this.scales.yAxes[1]\n }\n\n set yAxes1(yAxes1) {\n this.scales.yAxes[1] = yAxes1\n }\n\n get multiAxis() {\n return this.value.options.multiAxis\n }\n\n set multiAxis(multiAxis) {\n this.value.options.multiAxis = multiAxis\n }\n\n get tabContainer(): HTMLElement | null | undefined {\n return this.tabs.shadowRoot?.querySelector('#tabsContainer')\n }\n\n firstUpdated() {\n super.firstUpdated()\n\n this.tabContainer?.addEventListener('scroll', e => {\n this._onTabScroll(e)\n })\n }\n\n editorTemplate(props: Properties) {\n return html`\n <input type=\"checkbox\" value-key=\"multiAxis\" .checked=${this.multiAxis} />\n <label> <ox-i18n msgid=\"label.multi-axis\">Multi Axis</ox-i18n> </label>\n\n <legend><ox-i18n msgid=\"label.series\">Series</ox-i18n></legend>\n\n ${this.multiSeriesTabTemplate()}\n\n <legend><ox-i18n msgid=\"label.x-axes\">X Axes</ox-i18n></legend>\n\n <label> <ox-i18n msgid=\"label.data-key\">Data Key</ox-i18n> </label>\n <input type=\"text\" value-key=\"labelDataKey\" .value=${this.labelDataKey} />\n\n <label> <ox-i18n msgid=\"label.title\">Title</ox-i18n> </label>\n <input type=\"text\" value-key=\"xAxes0.axisTitle\" .value=${this.xAxes0.axisTitle || ''} />\n\n <label> <ox-i18n msgid=\"label.thickness\">Thickness</ox-i18n> </label>\n <input type=\"number\" value-key=\"xAxes0.barPercentage\" .value=${this.xAxes0.barPercentage} />\n\n <input type=\"checkbox\" value-key=\"value.options.xGridLine\" .checked=${this.value.options.xGridLine} />\n <label> <ox-i18n msgid=\"label.grid-line\">Grid Line</ox-i18n> </label>\n\n <input type=\"checkbox\" value-key=\"xAxes0.ticks.display\" .checked=${this.xAxes0.ticks.display} />\n <label> <ox-i18n msgid=\"label.display-tick\">Display Tick</ox-i18n> </label>\n\n <legend><ox-i18n msgid=\"label.y-axes\">Y Axes</ox-i18n></legend>\n\n <label> <ox-i18n msgid=\"label.title\">Title</ox-i18n> </label>\n <input type=\"text\" value-key=\"yAxes0.axisTitle\" .value=${this.yAxes0.axisTitle || ''} />\n\n <input type=\"checkbox\" value-key=\"yAxes0.ticks.autoMin\" .checked=${this.yAxes0.ticks.autoMin} />\n <label> <ox-i18n msgid=\"label.axis-min-auto\">Min Auto</ox-i18n> </label>\n\n <input type=\"checkbox\" value-key=\"yAxes0.ticks.autoMax\" .checked=${this.yAxes0.ticks.autoMax} />\n <label> <ox-i18n msgid=\"label.axis-max-auto\">Max Auto</ox-i18n> </label>\n\n ${!this.yAxes0.ticks.autoMin\n ? html`\n <label> <ox-i18n msgid=\"label.axis-min\">Min</ox-i18n> </label>\n <input type=\"number\" value-key=\"yAxes0.ticks.min\" .value=${this.yAxes0.ticks.min} />\n `\n : html``}\n ${!this.yAxes0.ticks.autoMax\n ? html`\n <label> <ox-i18n msgid=\"label.axis-max\">Max</ox-i18n> </label>\n <input type=\"number\" value-key=\"yAxes0.ticks.max\" .value=${this.yAxes0.ticks.max} />\n `\n : html``}\n\n <label> <ox-i18n msgid=\"label.axis-step-size\">StepSize</ox-i18n> </label>\n <input type=\"number\" value-key=\"yAxes0.ticks.stepSize\" .value=${this.yAxes0.ticks.stepSize} />\n\n <input type=\"checkbox\" value-key=\"value.options.yGridLine\" .checked=${this.value.options.yGridLine} />\n <label> <ox-i18n msgid=\"label.grid-line\">Grid Line</ox-i18n> </label>\n\n <input type=\"checkbox\" value-key=\"yAxes0.ticks.display\" .checked=${this.yAxes0.ticks.display} />\n <label> <ox-i18n msgid=\"label.display-tick\">Display Tick</ox-i18n> </label>\n\n ${this.value.options.multiAxis\n ? html`\n <legend><ox-i18n msgid=\"label.y-2nd-axes\">Y 2nd Axes</ox-i18n></legend>\n\n <label> <ox-i18n msgid=\"label.title\">Title</ox-i18n> </label>\n <input type=\"text\" value-key=\"yAxes1.axisTitle\" .value=${this.yAxes1.axisTitle || ''} />\n\n <input type=\"checkbox\" value-key=\"yAxes1.ticks.autoMin\" .checked=${this.yAxes1.ticks.autoMin} />\n <label> <ox-i18n msgid=\"label.axis-min-auto\">Min Auto</ox-i18n> </label>\n\n <input type=\"checkbox\" value-key=\"yAxes1.ticks.autoMax\" .checked=${this.yAxes1.ticks.autoMax} />\n <label> <ox-i18n msgid=\"label.axis-max-auto\">Max Auto</ox-i18n> </label>\n\n ${!this.yAxes1.ticks.autoMin\n ? html`\n <label> <ox-i18n msgid=\"label.axis-min\">Min</ox-i18n> </label>\n <input type=\"number\" value-key=\"yAxes1.ticks.min\" .value=${this.yAxes1.ticks.min} />\n `\n : html``}\n ${!this.yAxes1.ticks.autoMax\n ? html`\n <label> <ox-i18n msgid=\"label.axis-max\">Max</ox-i18n> </label>\n <input type=\"number\" value-key=\"yAxes1.ticks.max\" .value=${this.yAxes1.ticks.max} />\n `\n : html``}\n\n <label> <ox-i18n msgid=\"label.axis-step-size\">StepSize</ox-i18n> </label>\n <input type=\"number\" value-key=\"yAxes1.ticks.stepSize\" .value=${this.yAxes1.ticks.stepSize} />\n\n <input type=\"checkbox\" value-key=\"value.options.y2ndGridLine\" .checked=${this.value.options.y2ndGridLine} />\n <label> <ox-i18n msgid=\"label.grid-line\">Grid Line</ox-i18n> </label>\n\n <input type=\"checkbox\" value-key=\"yAxes1.ticks.display\" .checked=${this.yAxes1.ticks.display} />\n <label> <ox-i18n msgid=\"label.display-tick\">Display Tick</ox-i18n> </label>\n `\n : html``}\n `\n }\n\n multiSeriesTabTemplate() {\n return html`\n <div id=\"series-properties-container\" fullwidth>\n <div id=\"tab-header\">\n <md-elevated-button\n id=\"tab-nav-left-button\"\n @click=${(e: Event) => {\n this._onTabScrollNavLeft(e)\n }}\n disabled\n ><md-icon>chevron_left</md-icon></md-elevated-button\n >\n <paper-tabs\n id=\"tabs\"\n @iron-select=${(e: Event) => (this.currentSeriesIndex = (e.target as any).selected)}\n .selected=${this.currentSeriesIndex}\n no-bar\n noink\n scrollable\n hide-scroll-buttons\n fit-container\n >\n ${this.datasets.map(\n (dataset: any, index: number) => html`\n <paper-tab data-series=\"${index + 1}\" noink\n >${index + 1}\n ${!this.datasets || (this.datasets.length != 1 && this.currentSeriesIndex == index)\n ? html`\n <md-elevated-button @tap=${(e: Event) => this.onTapRemoveCurrentTab(e)}>\n <md-icon>close</md-icon>\n </md-elevated-button>\n `\n : html``}\n </paper-tab>\n `\n )}\n </paper-tabs>\n <md-elevated-button\n id=\"tab-nav-right-button\"\n @click=${(e: Event) => {\n this._onTabScrollNavRight(e)\n }}\n disabled\n ><md-icon>chevron_right</md-icon></md-elevated-button\n >\n </div>\n <div id=\"add-series-button-container\">\n <md-elevated-button id=\"add-series-button\" @tap=${(e: Event) => this.onTapAddTab(e)}\n ><md-icon>add</md-icon></md-elevated-button\n >\n </div>\n\n <iron-pages .selected=${this.currentSeriesIndex} .attr-for-selected=\"series-index\">\n ${this.datasets.map(\n (dataset: any, index: number) => html`\n <div class=\"tab-content\" series-index=\"${index}\">\n <label> <ox-i18n msgid=\"label.data-key\">Data Key</ox-i18n> </label>\n <input type=\"text\" value-key=\"dataKey\" .value=${this.dataKey} />\n\n ${this.value.type == 'bar'\n ? html`\n <label> <ox-i18n msgid=\"label.type\">type</ox-i18n> </label>\n <select class=\"select-content\" value-key=\"series.type\" .value=${this.series.type}>\n <option value=\"bar\" selected>bar</option>\n <option value=\"line\">line</option>\n </select>\n `\n : html``}\n\n <label> <ox-i18n msgid=\"label.label\">label</ox-i18n> </label>\n <input type=\"text\" value-key=\"series.label\" .value=${this.series.label} />\n\n ${this.series.type == 'line'\n ? html`\n <label> <ox-i18n msgid=\"label.line-tension\">line tension</ox-i18n> </label>\n <select class=\"select-content\" value-key=\"series.lineTension\" .value=${this.series.lineTension}>\n <option value=\"0.4\">smooth</option>\n <option value=\"0\">angled</option>\n </select>\n `\n : html``}\n ${this.series.type == 'line'\n ? html`\n <label> <ox-i18n msgid=\"label.border-width\">border width</ox-i18n> </label>\n <input type=\"number\" value-key=\"series.borderWidth\" .value=${this.series.borderWidth} />\n `\n : html``}\n\n <label> <ox-i18n msgid=\"label.color\">color</ox-i18n> </label>\n <ox-input-color value-key=\"color\" .value=${this.color}></ox-input-color>\n\n ${this.series.type == 'line'\n ? html`\n <label> <ox-i18n msgid=\"label.point-shape\">point shape</ox-i18n> </label>\n <select class=\"select-content\" value-key=\"series.pointStyle\" .value=${this.series.pointStyle}>\n <option value=\"circle\">⚬</option>\n <option value=\"triangle\">▵</option>\n <option value=\"rect\">□</option>\n <option value=\"rectRot\">◇</option>\n <option value=\"cross\">+</option>\n <option value=\"crossRot\">⨉</option>\n <option value=\"star\">✱</option>\n <option value=\"line\">―</option>\n <option value=\"dash\">┄</option>\n </select>\n\n <label> <ox-i18n msgid=\"label.point-size\">point size</ox-i18n> </label>\n <input type=\"number\" value-key=\"series.pointRadius\" .value=${this.series.pointRadius} />\n `\n : html``} <label> <ox-i18n msgid=\"label.stack-group\">Stack group</ox-i18n> </label>\n <input type=\"text\" value-key=\"series.stack\" .value=${this.series.stack || ''} /> ${this.series.type ==\n 'line'\n ? html`\n <input type=\"checkbox\" value-key=\"series.fill\" .checked=${this.series.fill} />\n <label> <ox-i18n msgid=\"label.fill\">fill</ox-i18n> </label>\n `\n : html``}\n ${this.multiAxis\n ? html`\n <label> <ox-i18n msgid=\"label.target-axis\">target axis</ox-i18n> </label>\n <select class=\"select-content\" value-key=\"series.yAxisID\" .value=${this.series.yAxisID}>\n <option value=\"left\">left</option>\n <option value=\"right\">right</option>\n </select>\n `\n : html``}\n ${this.displayValueTemplate()}\n </div>\n `\n )}\n </iron-pages>\n </div>\n `\n }\n\n _onTabScroll(e: Event) {\n if (!this.tabContainer) {\n return\n }\n\n if (this.tabContainer.clientWidth == this.tabContainer.scrollWidth) {\n this.tabNavLeftButton.disabled = true\n this.tabNavRightButton.disabled = true\n }\n // left-end\n else if (this.tabContainer.scrollLeft == 0) {\n this.tabNavLeftButton.disabled = true\n this.tabNavRightButton.disabled = false\n }\n // right-end\n else if (this.tabContainer.scrollLeft + this.tabContainer.clientWidth >= this.tabContainer.scrollWidth) {\n this.tabNavLeftButton.disabled = false\n this.tabNavRightButton.disabled = true\n } else {\n this.tabNavLeftButton.disabled = false\n this.tabNavRightButton.disabled = false\n }\n }\n\n _onTabScrollNavLeft(e: Event) {\n if (!this.tabContainer) {\n return\n }\n\n this.tabContainer.style.scrollBehavior = 'smooth'\n this.tabContainer.scrollLeft -= this.tabContainer.clientWidth\n this.tabContainer.style.scrollBehavior = 'auto'\n }\n\n _onTabScrollNavRight(e: Event) {\n if (!this.tabContainer) {\n return\n }\n\n this.tabContainer.style.scrollBehavior = 'smooth'\n this.tabContainer.scrollLeft += this.tabContainer.clientWidth\n this.tabContainer.style.scrollBehavior = 'auto'\n }\n}\n"]}
|
1
|
+
{"version":3,"file":"property-editor-chartjs-multi-series-abstract.js","sourceRoot":"","sources":["../../src/editors/property-editor-chartjs-multi-series-abstract.ts"],"names":[],"mappings":"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","sourcesContent":["import '@material/web/icon/icon.js'\nimport '@operato/i18n/ox-i18n.js'\n\nimport { css, html } from 'lit'\nimport { query } from 'lit/decorators.js'\n\nimport { Properties } from '@hatiolab/things-scene'\nimport { MdIcon } from '@material/web/icon/icon.js'\n\nimport PropertyEditorChartJSAbstract from './property-editor-chartjs-abstract'\n\nexport default class PropertyEditorChartJSMultiSeriesAbstract extends PropertyEditorChartJSAbstract {\n static styles = [\n ...PropertyEditorChartJSAbstract.styles,\n css`\n md-tabs {\n background-color: rgb(204, 204, 204);\n }\n input[type='text'],\n input[type='number'] {\n border: 1px solid rgba(0, 0, 0, 0.2);\n }\n `\n ]\n\n constructor() {\n super()\n\n this.value = {\n options: {\n legend: {},\n scales: {\n xAxes: [\n {\n ticks: {}\n }\n ],\n yAxes: [\n {\n ticks: {}\n }\n ]\n }\n },\n data: {\n datasets: []\n }\n }\n }\n\n @query('#tabs') tabs!: HTMLElement\n @query('#tab-nav-left-button') tabNavLeftButton!: MdIcon\n @query('#tab-nav-right-button') tabNavRightButton!: MdIcon\n\n get color() {\n var oldVersionColor = this.series.backgroundColor\n if (this.series.type == 'line') oldVersionColor = this.series.borderColor\n if (this.series.type == 'radar') oldVersionColor = this.series.borderColor\n return this.series.color || oldVersionColor\n }\n\n set color(color) {\n this.series.color = color\n delete this.series.backgroundColor\n delete this.series.borderColor\n }\n\n get xAxes0() {\n return this.scales.xAxes[0]\n }\n\n set xAxes0(xAxes0) {\n this.scales.xAxes[0] = xAxes0\n }\n\n get yAxes0() {\n return this.scales.yAxes[0]\n }\n\n set yAxes0(yAxes0) {\n this.scales.yAxes[0] = yAxes0\n }\n\n get yAxes1() {\n return this.scales.yAxes[1]\n }\n\n set yAxes1(yAxes1) {\n this.scales.yAxes[1] = yAxes1\n }\n\n get multiAxis() {\n return this.value.options.multiAxis\n }\n\n set multiAxis(multiAxis) {\n this.value.options.multiAxis = multiAxis\n }\n\n get tabContainer(): HTMLElement | null | undefined {\n return this.tabs\n }\n\n firstUpdated() {\n super.firstUpdated()\n\n this.tabContainer?.addEventListener('scroll', e => {\n this._onTabScroll(e)\n })\n }\n\n editorTemplate(props: Properties) {\n return html`\n <input type=\"checkbox\" value-key=\"multiAxis\" .checked=${this.multiAxis} />\n <label> <ox-i18n msgid=\"label.multi-axis\">Multi Axis</ox-i18n> </label>\n\n <legend><ox-i18n msgid=\"label.series\">Series</ox-i18n></legend>\n\n ${this.multiSeriesTabTemplate()}\n\n <legend><ox-i18n msgid=\"label.x-axes\">X Axes</ox-i18n></legend>\n\n <label> <ox-i18n msgid=\"label.data-key\">Data Key</ox-i18n> </label>\n <input type=\"text\" value-key=\"labelDataKey\" .value=${this.labelDataKey} />\n\n <label> <ox-i18n msgid=\"label.title\">Title</ox-i18n> </label>\n <input type=\"text\" value-key=\"xAxes0.axisTitle\" .value=${this.xAxes0.axisTitle || ''} />\n\n <label> <ox-i18n msgid=\"label.thickness\">Thickness</ox-i18n> </label>\n <input type=\"number\" value-key=\"xAxes0.barPercentage\" .value=${this.xAxes0.barPercentage} />\n\n <input type=\"checkbox\" value-key=\"value.options.xGridLine\" .checked=${this.value.options.xGridLine} />\n <label> <ox-i18n msgid=\"label.grid-line\">Grid Line</ox-i18n> </label>\n\n <input type=\"checkbox\" value-key=\"xAxes0.ticks.display\" .checked=${this.xAxes0.ticks.display} />\n <label> <ox-i18n msgid=\"label.display-tick\">Display Tick</ox-i18n> </label>\n\n <legend><ox-i18n msgid=\"label.y-axes\">Y Axes</ox-i18n></legend>\n\n <label> <ox-i18n msgid=\"label.title\">Title</ox-i18n> </label>\n <input type=\"text\" value-key=\"yAxes0.axisTitle\" .value=${this.yAxes0.axisTitle || ''} />\n\n <input type=\"checkbox\" value-key=\"yAxes0.ticks.autoMin\" .checked=${this.yAxes0.ticks.autoMin} />\n <label> <ox-i18n msgid=\"label.axis-min-auto\">Min Auto</ox-i18n> </label>\n\n <input type=\"checkbox\" value-key=\"yAxes0.ticks.autoMax\" .checked=${this.yAxes0.ticks.autoMax} />\n <label> <ox-i18n msgid=\"label.axis-max-auto\">Max Auto</ox-i18n> </label>\n\n ${!this.yAxes0.ticks.autoMin\n ? html`\n <label> <ox-i18n msgid=\"label.axis-min\">Min</ox-i18n> </label>\n <input type=\"number\" value-key=\"yAxes0.ticks.min\" .value=${this.yAxes0.ticks.min} />\n `\n : html``}\n ${!this.yAxes0.ticks.autoMax\n ? html`\n <label> <ox-i18n msgid=\"label.axis-max\">Max</ox-i18n> </label>\n <input type=\"number\" value-key=\"yAxes0.ticks.max\" .value=${this.yAxes0.ticks.max} />\n `\n : html``}\n\n <label> <ox-i18n msgid=\"label.axis-step-size\">StepSize</ox-i18n> </label>\n <input type=\"number\" value-key=\"yAxes0.ticks.stepSize\" .value=${this.yAxes0.ticks.stepSize} />\n\n <input type=\"checkbox\" value-key=\"value.options.yGridLine\" .checked=${this.value.options.yGridLine} />\n <label> <ox-i18n msgid=\"label.grid-line\">Grid Line</ox-i18n> </label>\n\n <input type=\"checkbox\" value-key=\"yAxes0.ticks.display\" .checked=${this.yAxes0.ticks.display} />\n <label> <ox-i18n msgid=\"label.display-tick\">Display Tick</ox-i18n> </label>\n\n ${this.value.options.multiAxis\n ? html`\n <legend><ox-i18n msgid=\"label.y-2nd-axes\">Y 2nd Axes</ox-i18n></legend>\n\n <label> <ox-i18n msgid=\"label.title\">Title</ox-i18n> </label>\n <input type=\"text\" value-key=\"yAxes1.axisTitle\" .value=${this.yAxes1.axisTitle || ''} />\n\n <input type=\"checkbox\" value-key=\"yAxes1.ticks.autoMin\" .checked=${this.yAxes1.ticks.autoMin} />\n <label> <ox-i18n msgid=\"label.axis-min-auto\">Min Auto</ox-i18n> </label>\n\n <input type=\"checkbox\" value-key=\"yAxes1.ticks.autoMax\" .checked=${this.yAxes1.ticks.autoMax} />\n <label> <ox-i18n msgid=\"label.axis-max-auto\">Max Auto</ox-i18n> </label>\n\n ${!this.yAxes1.ticks.autoMin\n ? html`\n <label> <ox-i18n msgid=\"label.axis-min\">Min</ox-i18n> </label>\n <input type=\"number\" value-key=\"yAxes1.ticks.min\" .value=${this.yAxes1.ticks.min} />\n `\n : html``}\n ${!this.yAxes1.ticks.autoMax\n ? html`\n <label> <ox-i18n msgid=\"label.axis-max\">Max</ox-i18n> </label>\n <input type=\"number\" value-key=\"yAxes1.ticks.max\" .value=${this.yAxes1.ticks.max} />\n `\n : html``}\n\n <label> <ox-i18n msgid=\"label.axis-step-size\">StepSize</ox-i18n> </label>\n <input type=\"number\" value-key=\"yAxes1.ticks.stepSize\" .value=${this.yAxes1.ticks.stepSize} />\n\n <input type=\"checkbox\" value-key=\"value.options.y2ndGridLine\" .checked=${this.value.options.y2ndGridLine} />\n <label> <ox-i18n msgid=\"label.grid-line\">Grid Line</ox-i18n> </label>\n\n <input type=\"checkbox\" value-key=\"yAxes1.ticks.display\" .checked=${this.yAxes1.ticks.display} />\n <label> <ox-i18n msgid=\"label.display-tick\">Display Tick</ox-i18n> </label>\n `\n : html``}\n `\n }\n\n multiSeriesTabTemplate() {\n return html`\n <div id=\"series-properties-container\" fullwidth>\n <div id=\"tab-header\">\n <md-icon\n id=\"tab-nav-left-button\"\n @tap=${(e: Event) => {\n this._onTabScrollNavLeft(e)\n }}\n disabled\n >chevron_left</md-icon\n >\n <div\n id=\"tabs\"\n @change=${(e: Event) => {\n this.currentSeriesIndex = (e.target as any).activeTabIndex\n }}\n active-tab-index=${this.currentSeriesIndex}\n fit-container\n >\n ${this.datasets.map(\n (dataset: any, index: number) => html`\n <div\n data-series=${index + 1}\n data-tab-index=${index}\n tab\n ?selected=${index == this.currentSeriesIndex}\n @click=${(e: Event) => {\n const target = e.target as HTMLDivElement\n this.currentSeriesIndex = Number(target.getAttribute('data-tab-index'))\n }}\n >\n ${index + 1}\n ${!this.datasets || (this.datasets.length != 1 && this.currentSeriesIndex == index)\n ? html` <md-icon @tap=\"${(e: Event) => this.onTapRemoveCurrentTab(e)}\"> close </md-icon> `\n : html``}\n </div>\n `\n )}\n </div>\n <md-icon\n id=\"tab-nav-right-button\"\n @click=${(e: Event) => {\n this._onTabScrollNavRight(e)\n }}\n disabled\n >chevron_right</md-icon\n >\n </div>\n <div id=\"add-series-button-container\">\n <md-icon id=\"add-series-button\" @tap=${(e: Event) => this.onTapAddTab(e)}>add</md-icon>\n </div>\n\n <div class=\"tab-content\">\n <label> <ox-i18n msgid=\"label.data-key\">Data Key</ox-i18n> </label>\n <input type=\"text\" value-key=\"dataKey\" .value=${this.dataKey} />\n\n ${this.value.type == 'bar'\n ? html`\n <label> <ox-i18n msgid=\"label.type\">type</ox-i18n> </label>\n <select class=\"select-content\" value-key=\"series.type\" .value=${this.series.type}>\n <option value=\"bar\" selected>bar</option>\n <option value=\"line\">line</option>\n </select>\n `\n : html``}\n\n <label> <ox-i18n msgid=\"label.label\">label</ox-i18n> </label>\n <input type=\"text\" value-key=\"series.label\" .value=${this.series.label} />\n\n ${this.series.type == 'line'\n ? html`\n <label> <ox-i18n msgid=\"label.line-tension\">line tension</ox-i18n> </label>\n <select class=\"select-content\" value-key=\"series.lineTension\" .value=${this.series.lineTension}>\n <option value=\"0.4\">smooth</option>\n <option value=\"0\">angled</option>\n </select>\n `\n : html``}\n ${this.series.type == 'line'\n ? html`\n <label> <ox-i18n msgid=\"label.border-width\">border width</ox-i18n> </label>\n <input type=\"number\" value-key=\"series.borderWidth\" .value=${this.series.borderWidth} />\n `\n : html``}\n\n <label> <ox-i18n msgid=\"label.color\">color</ox-i18n> </label>\n <ox-input-color value-key=\"color\" .value=${this.color}></ox-input-color>\n\n ${this.series.type == 'line'\n ? html`\n <label> <ox-i18n msgid=\"label.point-shape\">point shape</ox-i18n> </label>\n <select class=\"select-content\" value-key=\"series.pointStyle\" .value=${this.series.pointStyle}>\n <option value=\"circle\">⚬</option>\n <option value=\"triangle\">▵</option>\n <option value=\"rect\">□</option>\n <option value=\"rectRot\">◇</option>\n <option value=\"cross\">+</option>\n <option value=\"crossRot\">⨉</option>\n <option value=\"star\">✱</option>\n <option value=\"line\">―</option>\n <option value=\"dash\">┄</option>\n </select>\n\n <label> <ox-i18n msgid=\"label.point-size\">point size</ox-i18n> </label>\n <input type=\"number\" value-key=\"series.pointRadius\" .value=${this.series.pointRadius} />\n `\n : html``} <label> <ox-i18n msgid=\"label.stack-group\">Stack group</ox-i18n> </label>\n <input type=\"text\" value-key=\"series.stack\" .value=${this.series.stack || ''} /> ${this.series.type == 'line'\n ? html`\n <input type=\"checkbox\" value-key=\"series.fill\" .checked=${this.series.fill} />\n <label> <ox-i18n msgid=\"label.fill\">fill</ox-i18n> </label>\n `\n : html``}\n ${this.multiAxis\n ? html`\n <label> <ox-i18n msgid=\"label.target-axis\">target axis</ox-i18n> </label>\n <select class=\"select-content\" value-key=\"series.yAxisID\" .value=${this.series.yAxisID}>\n <option value=\"left\">left</option>\n <option value=\"right\">right</option>\n </select>\n `\n : html``}\n ${this.displayValueTemplate()}\n </div>\n </div>\n `\n }\n\n _onTabScroll(e: Event) {\n if (!this.tabContainer) {\n return\n }\n\n if (this.tabContainer.clientWidth == this.tabContainer.scrollWidth) {\n this.tabNavLeftButton.setAttribute('disabled', '')\n this.tabNavRightButton.setAttribute('disabled', '')\n }\n // left-end\n else if (this.tabContainer.scrollLeft == 0) {\n this.tabNavLeftButton.setAttribute('disabled', '')\n this.tabNavRightButton.removeAttribute('disabled')\n }\n // right-end\n else if (this.tabContainer.scrollLeft + this.tabContainer.clientWidth >= this.tabContainer.scrollWidth) {\n this.tabNavLeftButton.removeAttribute('disabled')\n this.tabNavRightButton.setAttribute('disabled', '')\n } else {\n this.tabNavLeftButton.removeAttribute('disabled')\n this.tabNavRightButton.removeAttribute('disabled')\n }\n }\n\n _onTabScrollNavLeft(e: Event) {\n if (!this.tabContainer) {\n return\n }\n\n this.tabContainer.style.scrollBehavior = 'smooth'\n this.tabContainer.scrollLeft -= this.tabContainer.clientWidth\n this.tabContainer.style.scrollBehavior = 'auto'\n }\n\n _onTabScrollNavRight(e: Event) {\n if (!this.tabContainer) {\n return\n }\n\n this.tabContainer.style.scrollBehavior = 'smooth'\n this.tabContainer.scrollLeft += this.tabContainer.clientWidth\n this.tabContainer.style.scrollBehavior = 'auto'\n }\n}\n"]}
|
@@ -12,5 +12,5 @@ export default class PropertyEditorChartJSPie extends PropertyEditorChartJSAbstr
|
|
12
12
|
set color(color: any);
|
13
13
|
get displayValue(): any;
|
14
14
|
set displayValue(displayValue: any);
|
15
|
-
editorTemplate(props: Properties): import("lit").TemplateResult<1>;
|
15
|
+
editorTemplate(props: Properties): import("lit-html").TemplateResult<1>;
|
16
16
|
}
|
@@ -4,5 +4,5 @@ import PropertyEditorChartJSMultiSeriesAbstract from './property-editor-chartjs-
|
|
4
4
|
export default class PropertyEditorChartJSRadar extends PropertyEditorChartJSMultiSeriesAbstract {
|
5
5
|
static styles: import("lit").CSSResult[];
|
6
6
|
constructor();
|
7
|
-
editorTemplate(props: Properties): import("lit").TemplateResult<1>;
|
7
|
+
editorTemplate(props: Properties): import("lit-html").TemplateResult<1>;
|
8
8
|
}
|
@@ -4,9 +4,6 @@ export const PropertyEditorChartJSStyles = css `
|
|
4
4
|
display: grid;
|
5
5
|
grid-template-columns: repeat(10, 1fr);
|
6
6
|
grid-gap: 5px;
|
7
|
-
|
8
|
-
--mdc-icon-button-size: 24px;
|
9
|
-
--mdc-icon-size: 24px;
|
10
7
|
}
|
11
8
|
|
12
9
|
:host > * {
|
@@ -22,7 +19,7 @@ export const PropertyEditorChartJSStyles = css `
|
|
22
19
|
:host > legend {
|
23
20
|
box-sizing: border-box;
|
24
21
|
grid-column: 1 / -1;
|
25
|
-
color: var(--
|
22
|
+
color: var(--md-sys-color-on-secondary-container, #e46c2e);
|
26
23
|
font: var(--property-sidebar-fieldset-legend, bold 13px var(--theme-font));
|
27
24
|
text-transform: capitalize;
|
28
25
|
}
|
@@ -34,7 +31,7 @@ export const PropertyEditorChartJSStyles = css `
|
|
34
31
|
justify-content: center;
|
35
32
|
}
|
36
33
|
|
37
|
-
#series-properties-container >
|
34
|
+
#series-properties-container > [tab-content] {
|
38
35
|
grid-column: span 2;
|
39
36
|
}
|
40
37
|
|
@@ -45,23 +42,32 @@ export const PropertyEditorChartJSStyles = css `
|
|
45
42
|
overflow: hidden;
|
46
43
|
border: 1px solid rgba(0, 0, 0, 0.2);
|
47
44
|
border-bottom: 0;
|
48
|
-
background-color:
|
45
|
+
background-color: var(--md-sys-color-surface-variant);
|
46
|
+
color: var(--md-sys-color-on-surface);
|
49
47
|
box-sizing: border-box;
|
50
48
|
padding-top: 3px;
|
51
49
|
align-items: center;
|
52
50
|
}
|
53
51
|
|
54
|
-
#tab-header >
|
52
|
+
#tab-header > div {
|
55
53
|
height: 25px;
|
56
54
|
}
|
57
55
|
|
58
|
-
#tab-header
|
56
|
+
#tab-header md-icon[disabled] {
|
57
|
+
opacity: 0.1;
|
58
|
+
}
|
59
|
+
|
60
|
+
#tabs {
|
59
61
|
display: flex;
|
62
|
+
overflow: hidden;
|
63
|
+
}
|
64
|
+
|
65
|
+
#tab-header #tabs [tab] md-icon {
|
60
66
|
margin-left: 5px;
|
61
67
|
padding: 2px;
|
62
|
-
color:
|
68
|
+
color: var(--md-sys-color-on-surface);
|
63
69
|
|
64
|
-
--
|
70
|
+
--md-icon-size: 12px;
|
65
71
|
}
|
66
72
|
|
67
73
|
#add-series-button-container {
|
@@ -78,10 +84,12 @@ export const PropertyEditorChartJSStyles = css `
|
|
78
84
|
width: 20px;
|
79
85
|
height: 20px;
|
80
86
|
padding: 0;
|
81
|
-
color: var(--
|
87
|
+
color: var(--md-sys-color-on-secondary-container);
|
82
88
|
}
|
83
89
|
|
84
90
|
.tab-content {
|
91
|
+
grid-column: 1 / -1;
|
92
|
+
|
85
93
|
background-color: rgba(255, 255, 255, 0.5);
|
86
94
|
border: 1px solid rgba(0, 0, 0, 0.2);
|
87
95
|
border-width: 0 1px 1px 1px;
|
@@ -100,12 +108,18 @@ export const PropertyEditorChartJSStyles = css `
|
|
100
108
|
.tab-content > label {
|
101
109
|
grid-column: span 3;
|
102
110
|
text-align: right;
|
103
|
-
color: var(--
|
111
|
+
color: var(--md-sys-color-on-secondary-container);
|
104
112
|
font-size: 0.8em;
|
105
113
|
line-height: 2;
|
106
114
|
text-transform: capitalize;
|
107
115
|
}
|
108
116
|
|
117
|
+
input,
|
118
|
+
select {
|
119
|
+
border: 1px solid rgba(0, 0, 0, 0.2);
|
120
|
+
border-radius: var(--spacing-small);
|
121
|
+
}
|
122
|
+
|
109
123
|
input[type='checkbox'],
|
110
124
|
.tab-content > input[type='checkbox'] {
|
111
125
|
grid-column: span 4;
|
@@ -126,36 +140,28 @@ export const PropertyEditorChartJSStyles = css `
|
|
126
140
|
border: 0;
|
127
141
|
}
|
128
142
|
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
input[type='text'] {
|
133
|
-
border: 1px solid rgba(0, 0, 0, 0.2);
|
134
|
-
}
|
135
|
-
|
136
|
-
paper-tab {
|
143
|
+
div[tab] {
|
144
|
+
display: flex;
|
145
|
+
align-items: center;
|
137
146
|
background-color: rgba(0, 0, 0, 0.2);
|
138
|
-
background-color: #ccc;
|
139
147
|
border-width: 1px 1px 0 1px;
|
140
148
|
padding: 0 5px;
|
141
|
-
color:
|
142
|
-
font-size: 13px;
|
149
|
+
color: var(--md-sys-color-on-surface);
|
143
150
|
box-sizing: border-box;
|
144
151
|
min-width: 45px;
|
145
152
|
}
|
146
153
|
|
147
|
-
|
154
|
+
div[tab][disabled] {
|
148
155
|
background-color: rgba(0, 0, 0, 0.1);
|
149
156
|
}
|
150
157
|
|
151
|
-
|
158
|
+
div[tab]:last-child {
|
152
159
|
border-width: 0;
|
153
160
|
}
|
154
161
|
|
155
|
-
|
156
|
-
background-color:
|
157
|
-
|
158
|
-
color: #585858;
|
162
|
+
div[tab][selected] {
|
163
|
+
background-color: var(--md-sys-color-surface);
|
164
|
+
color: var(--md-sys-color-on-surface);
|
159
165
|
}
|
160
166
|
`;
|
161
167
|
//# sourceMappingURL=property-editor-chartjs-styles.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"property-editor-chartjs-styles.js","sourceRoot":"","sources":["../../src/editors/property-editor-chartjs-styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAEzB,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,CAAA
|
1
|
+
{"version":3,"file":"property-editor-chartjs-styles.js","sourceRoot":"","sources":["../../src/editors/property-editor-chartjs-styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAEzB,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoK7C,CAAA","sourcesContent":["import { css } from 'lit'\n\nexport const PropertyEditorChartJSStyles = css`\n :host {\n display: grid;\n grid-template-columns: repeat(10, 1fr);\n grid-gap: 5px;\n }\n\n :host > * {\n box-sizing: border-box;\n grid-column: span 7;\n }\n\n :host > label {\n box-sizing: border-box;\n grid-column: span 3;\n }\n\n :host > legend {\n box-sizing: border-box;\n grid-column: 1 / -1;\n color: var(--md-sys-color-on-secondary-container, #e46c2e);\n font: var(--property-sidebar-fieldset-legend, bold 13px var(--theme-font));\n text-transform: capitalize;\n }\n\n #series-properties-container {\n display: grid;\n grid-template-columns: 1fr 25px;\n align-items: center;\n justify-content: center;\n }\n\n #series-properties-container > [tab-content] {\n grid-column: span 2;\n }\n\n #tab-header {\n display: grid;\n grid-template-columns: 25px 1fr 25px;\n grid-gap: 5px;\n overflow: hidden;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-bottom: 0;\n background-color: var(--md-sys-color-surface-variant);\n color: var(--md-sys-color-on-surface);\n box-sizing: border-box;\n padding-top: 3px;\n align-items: center;\n }\n\n #tab-header > div {\n height: 25px;\n }\n\n #tab-header md-icon[disabled] {\n opacity: 0.1;\n }\n\n #tabs {\n display: flex;\n overflow: hidden;\n }\n\n #tab-header #tabs [tab] md-icon {\n margin-left: 5px;\n padding: 2px;\n color: var(--md-sys-color-on-surface);\n\n --md-icon-size: 12px;\n }\n\n #add-series-button-container {\n height: 100%;\n box-sizing: border-box;\n align-items: center;\n justify-content: center;\n padding-top: 3px;\n display: flex;\n border-bottom: rgba(0, 0, 0, 0.2) 1px solid;\n }\n\n #add-series-button {\n width: 20px;\n height: 20px;\n padding: 0;\n color: var(--md-sys-color-on-secondary-container);\n }\n\n .tab-content {\n grid-column: 1 / -1;\n\n background-color: rgba(255, 255, 255, 0.5);\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-width: 0 1px 1px 1px;\n padding: 5px;\n display: grid;\n grid-template-columns: repeat(10, 1fr);\n grid-gap: 5px;\n }\n\n .tab-content > * {\n box-sizing: border-box;\n grid-column: span 7;\n }\n\n label,\n .tab-content > label {\n grid-column: span 3;\n text-align: right;\n color: var(--md-sys-color-on-secondary-container);\n font-size: 0.8em;\n line-height: 2;\n text-transform: capitalize;\n }\n\n input,\n select {\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: var(--spacing-small);\n }\n\n input[type='checkbox'],\n .tab-content > input[type='checkbox'] {\n grid-column: span 4;\n justify-self: end;\n align-self: center;\n }\n\n input[type='checkbox'] + label,\n .tab-content > input[type='checkbox'] + label {\n grid-column: span 6;\n\n text-align: left;\n }\n\n [fullwidth] {\n grid-column: 1 / -1;\n margin: 0;\n border: 0;\n }\n\n div[tab] {\n display: flex;\n align-items: center;\n background-color: rgba(0, 0, 0, 0.2);\n border-width: 1px 1px 0 1px;\n padding: 0 5px;\n color: var(--md-sys-color-on-surface);\n box-sizing: border-box;\n min-width: 45px;\n }\n\n div[tab][disabled] {\n background-color: rgba(0, 0, 0, 0.1);\n }\n\n div[tab]:last-child {\n border-width: 0;\n }\n\n div[tab][selected] {\n background-color: var(--md-sys-color-surface);\n color: var(--md-sys-color-on-surface);\n }\n`\n"]}
|
@@ -6,5 +6,5 @@ import './property-editor-chartjs-radar';
|
|
6
6
|
import { OxPropertyEditor, PropertySpec } from '@operato/property-editor';
|
7
7
|
export default class ChartJSEditor extends OxPropertyEditor {
|
8
8
|
static styles: import("lit").CSSResult[];
|
9
|
-
editorTemplate(value: any, spec: PropertySpec): import("lit").TemplateResult<1>;
|
9
|
+
editorTemplate(value: any, spec: PropertySpec): import("lit-html").TemplateResult<1>;
|
10
10
|
}
|
@@ -43,6 +43,8 @@ ChartJSEditor.styles = [
|
|
43
43
|
:host {
|
44
44
|
display: block;
|
45
45
|
padding: 5px;
|
46
|
+
|
47
|
+
--md-elevated-button-container-height: 20px;
|
46
48
|
}
|
47
49
|
|
48
50
|
#chart-type {
|
@@ -57,7 +59,7 @@ ChartJSEditor.styles = [
|
|
57
59
|
|
58
60
|
text-align: right;
|
59
61
|
|
60
|
-
color: var(--
|
62
|
+
color: var(--md-sys-color-on-secondary-container);
|
61
63
|
font-size: 0.8em;
|
62
64
|
line-height: 2;
|
63
65
|
text-transform: capitalize;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"property-editor-chartjs.js","sourceRoot":"","sources":["../../src/editors/property-editor-chartjs.ts"],"names":[],"mappings":";AAAA,OAAO,0BAA0B,CAAA;AAEjC,OAAO,gCAAgC,CAAA;AACvC,OAAO,iCAAiC,CAAA;AACxC,OAAO,+BAA+B,CAAA;AACtC,OAAO,iCAAiC,CAAA;AAExC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAA;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEjD,OAAO,EAAE,gBAAgB,EAAgB,MAAM,0BAA0B,CAAA;AAG1D,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,gBAAgB;
|
1
|
+
{"version":3,"file":"property-editor-chartjs.js","sourceRoot":"","sources":["../../src/editors/property-editor-chartjs.ts"],"names":[],"mappings":";AAAA,OAAO,0BAA0B,CAAA;AAEjC,OAAO,gCAAgC,CAAA;AACvC,OAAO,iCAAiC,CAAA;AACxC,OAAO,+BAA+B,CAAA;AACtC,OAAO,iCAAiC,CAAA;AAExC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAA;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEjD,OAAO,EAAE,gBAAgB,EAAgB,MAAM,0BAA0B,CAAA;AAG1D,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,gBAAgB;IAoCzD,cAAc,CAAC,KAAU,EAAE,IAAkB;QAC3C,OAAO,IAAI,CAAA;QACP,KAAK;YACL,CAAC,CAAC,IAAI,CAAA;;;0CAG4B,KAAK,CAAC,IAAI;;WAEzC;YACH,CAAC,CAAC,IAAI,CAAA,EAAE;QACR,CAAC,KAAK;YACN,CAAC,CAAC,IAAI,CAAA,EAAE;YACR,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,MAAM;gBACtB,CAAC,CAAC,IAAI,CAAA,0CAA0C,KAAK,8CAA8C;gBACnG,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,eAAe;oBAC/B,CAAC,CAAC,IAAI,CAAA,yCAAyC,KAAK,6CAA6C;oBACjG,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK;wBACrB,CAAC,CAAC,IAAI,CAAA,0CAA0C,KAAK,8CAA8C;wBACnG,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK;4BACrB,CAAC,CAAC,IAAI,CAAA,wCAAwC,KAAK,4CAA4C;4BAC/F,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,UAAU;gCAC1B,CAAC,CAAC,IAAI,CAAA,wCAAwC,KAAK,4CAA4C;gCAC/F,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,WAAW;oCAC3B,CAAC,CAAC,IAAI,CAAA,wCAAwC,KAAK,4CAA4C;oCAC/F,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,OAAO;wCACvB,CAAC,CAAC,IAAI,CAAA,0CAA0C,KAAK,8CAA8C;wCACnG,CAAC,CAAC,IAAI,CAAA,EAAE;KACX,CAAA;IACH,CAAC;;AA/DM,oBAAM,GAAG;IACd,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA+BF;CACF,AAjCY,CAiCZ;AAlCkB,aAAa;IADjC,aAAa,CAAC,yBAAyB,CAAC;GACpB,aAAa,CAiEjC;eAjEoB,aAAa","sourcesContent":["import '@operato/i18n/ox-i18n.js'\n\nimport './property-editor-chartjs-hbar'\nimport './property-editor-chartjs-mixed'\nimport './property-editor-chartjs-pie'\nimport './property-editor-chartjs-radar'\n\nimport { css, html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\n\nimport { OxPropertyEditor, PropertySpec } from '@operato/property-editor'\n\n@customElement('property-editor-chartjs')\nexport default class ChartJSEditor extends OxPropertyEditor {\n static styles = [\n css`\n :host {\n display: block;\n padding: 5px;\n\n --md-elevated-button-container-height: 20px;\n }\n\n #chart-type {\n display: grid;\n grid-template-columns: repeat(10, 1fr);\n grid-gap: 5px;\n }\n\n #chart-type > label {\n box-sizing: border-box;\n grid-column: span 3;\n\n text-align: right;\n\n color: var(--md-sys-color-on-secondary-container);\n font-size: 0.8em;\n line-height: 2;\n text-transform: capitalize;\n }\n\n #chart-type > input {\n box-sizing: border-box;\n grid-column: span 7;\n border: 1px solid rgba(0, 0, 0, 0.2);\n }\n `\n ]\n\n editorTemplate(value: any, spec: PropertySpec) {\n return html`\n ${value\n ? html`\n <div id=\"chart-type\">\n <label> <ox-i18n msgid=\"label.chart-type\">Chart Type</ox-i18n> </label>\n <input type=\"text\" .value=${value.type} readonly />\n </div>\n `\n : html``}\n ${!value\n ? html``\n : value.type == 'line'\n ? html` <property-editor-chartjs-mixed .value=${value} fullwidth></property-editor-chartjs-mixed> `\n : value.type == 'horizontalBar'\n ? html` <property-editor-chartjs-hbar .value=${value} fullwidth></property-editor-chartjs-hbar> `\n : value.type == 'bar'\n ? html` <property-editor-chartjs-mixed .value=${value} fullwidth></property-editor-chartjs-mixed> `\n : value.type == 'pie'\n ? html` <property-editor-chartjs-pie .value=${value} fullwidth></property-editor-chartjs-pie> `\n : value.type == 'doughnut'\n ? html` <property-editor-chartjs-pie .value=${value} fullwidth></property-editor-chartjs-pie> `\n : value.type == 'polarArea'\n ? html` <property-editor-chartjs-pie .value=${value} fullwidth></property-editor-chartjs-pie> `\n : value.type == 'radar'\n ? html` <property-editor-chartjs-radar .value=${value} fullwidth></property-editor-chartjs-radar> `\n : html``}\n `\n }\n}\n"]}
|