@operato/chart 7.0.15 → 7.0.17
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 +18 -0
- package/dist/src/chartjs/ox-chart-js.d.ts +0 -1
- package/dist/src/chartjs/ox-chart-js.js +12 -1
- package/dist/src/chartjs/ox-chart-js.js.map +1 -1
- package/dist/src/editors/input-chart-abstract.d.ts +2 -2
- package/dist/src/editors/input-chart-abstract.js +282 -259
- package/dist/src/editors/input-chart-abstract.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/src/chartjs/ox-chart-js.ts +14 -1
- package/src/editors/input-chart-abstract.ts +343 -313
- package/src/types.d.ts +3 -0
- package/translations/en.json +3 -0
- package/translations/ja.json +3 -0
- package/translations/ko.json +3 -0
- package/translations/ms.json +3 -0
- package/translations/zh.json +3 -0
|
@@ -2,6 +2,7 @@ import { __decorate } from "tslib";
|
|
|
2
2
|
import '@operato/i18n/ox-i18n.js';
|
|
3
3
|
import { html } from 'lit';
|
|
4
4
|
import { property, query } from 'lit/decorators.js';
|
|
5
|
+
import { keyed } from 'lit/directives/keyed.js';
|
|
5
6
|
import { random as randomColor, TinyColor } from '@ctrl/tinycolor';
|
|
6
7
|
import { InputChartStyles } from './input-chart-styles';
|
|
7
8
|
import { Configurer } from './configurer';
|
|
@@ -135,7 +136,7 @@ export class InputChartAbstract extends OxFormField {
|
|
|
135
136
|
value-key="series.defaultFontSize"
|
|
136
137
|
value=${configurer.series.defaultFontSize || 10}
|
|
137
138
|
/>
|
|
138
|
-
<label for="data-label-anchor"> <ox-i18n msgid="label.
|
|
139
|
+
<label for="data-label-anchor"> <ox-i18n msgid="label.data-label-anchor">Position</ox-i18n> </label>
|
|
139
140
|
<select
|
|
140
141
|
id="data-label-anchor"
|
|
141
142
|
value-key="series.dataLabelAnchor"
|
|
@@ -145,6 +146,20 @@ export class InputChartAbstract extends OxFormField {
|
|
|
145
146
|
<option value="center" selected>Center</option>
|
|
146
147
|
<option value="end">End</option>
|
|
147
148
|
</select>
|
|
149
|
+
<label for="data-label-offset"> <ox-i18n msgid="label.data-label-offset">Offset</ox-i18n> </label>
|
|
150
|
+
<input
|
|
151
|
+
id="data-label-offset"
|
|
152
|
+
type="number"
|
|
153
|
+
value-key="series.dataLabelOffset"
|
|
154
|
+
value=${configurer.series.dataLabelOffset || 0}
|
|
155
|
+
/>
|
|
156
|
+
<label for="data-label-rotation"> <ox-i18n msgid="label.data-label-rotation">Rotation</ox-i18n> </label>
|
|
157
|
+
<input
|
|
158
|
+
id="data-label-rotation"
|
|
159
|
+
type="number"
|
|
160
|
+
value-key="series.dataLabelRotation"
|
|
161
|
+
value=${configurer.series.dataLabelRotation || 0}
|
|
162
|
+
/>
|
|
148
163
|
`
|
|
149
164
|
: html ``}
|
|
150
165
|
`;
|
|
@@ -320,323 +335,331 @@ export class InputChartAbstract extends OxFormField {
|
|
|
320
335
|
annotationsTabTemplate() {
|
|
321
336
|
const configurer = this.configurer;
|
|
322
337
|
const currentAnnotation = configurer.annotations[configurer.currentAnnotationIndex] || {};
|
|
323
|
-
return html `
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
338
|
+
return keyed(configurer.currentAnnotationIndex, html `
|
|
339
|
+
<div id="annotations-properties-container" fullwidth>
|
|
340
|
+
<div id="annotations-tab-header">
|
|
341
|
+
<md-icon
|
|
342
|
+
id="annotations-tab-nav-left-button"
|
|
343
|
+
@tap=${(e) => {
|
|
329
344
|
this._onTabScrollNavLeft(e, 'annotations');
|
|
330
345
|
}}
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
346
|
+
disabled
|
|
347
|
+
>chevron_left</md-icon
|
|
348
|
+
>
|
|
349
|
+
<div
|
|
350
|
+
id="annotations-tabs"
|
|
351
|
+
@change=${(e) => {
|
|
337
352
|
configurer.currentAnnotationIndex = e.target.activeTabIndex;
|
|
338
353
|
}}
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
354
|
+
active-tab-index=${configurer.currentAnnotationIndex}
|
|
355
|
+
fit-container
|
|
356
|
+
>
|
|
357
|
+
${configurer.annotations.map((annotation, index) => html `
|
|
358
|
+
<div
|
|
359
|
+
data-annotation=${index + 1}
|
|
360
|
+
data-tab-index=${index}
|
|
361
|
+
tab
|
|
362
|
+
?selected=${index == configurer.currentAnnotationIndex}
|
|
363
|
+
@click=${(e) => {
|
|
349
364
|
const target = e.target;
|
|
350
365
|
this.configurer.setCurrentAnnotationIndex(Number(target.getAttribute('data-tab-index')));
|
|
351
366
|
this.value = { ...this.configurer.value };
|
|
352
367
|
}}
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
368
|
+
>
|
|
369
|
+
${index + 1}
|
|
370
|
+
${!configurer.annotations ||
|
|
356
371
|
(configurer.annotations.length != 1 && configurer.currentAnnotationIndex == index)
|
|
357
|
-
? html `
|
|
372
|
+
? html `
|
|
373
|
+
<md-icon @tap=${(e) => this.onTapRemoveCurrentAnnotation(index)}> close </md-icon>
|
|
374
|
+
`
|
|
358
375
|
: html ``}
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
376
|
+
</div>
|
|
377
|
+
`)}
|
|
378
|
+
</div>
|
|
379
|
+
<md-icon
|
|
380
|
+
id="annotations-tab-nav-right-button"
|
|
381
|
+
@click=${(e) => {
|
|
365
382
|
this._onTabScrollNavRight(e, 'annotations');
|
|
366
383
|
}}
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
384
|
+
disabled
|
|
385
|
+
>chevron_right</md-icon
|
|
386
|
+
>
|
|
387
|
+
</div>
|
|
388
|
+
<div id="add-annotation-button-container">
|
|
389
|
+
<md-icon id="add-annotation-button" @tap=${(e) => this.onTapAddAnnotation(e)}>add</md-icon>
|
|
390
|
+
</div>
|
|
374
391
|
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
392
|
+
<div class="tab-content">
|
|
393
|
+
<label for="annotation-type"> <ox-i18n msgid="label.chart-annotation-type">Type</ox-i18n> </label>
|
|
394
|
+
<select
|
|
395
|
+
id="annotation-type"
|
|
396
|
+
class="select-content"
|
|
397
|
+
value-key="annotation.type"
|
|
398
|
+
.value=${currentAnnotation.type || ''}
|
|
399
|
+
>
|
|
400
|
+
<option value="line">Line</option>
|
|
401
|
+
<option value="text">Text</option>
|
|
402
|
+
<option value="box">Box</option>
|
|
403
|
+
<option value="horizontalLine">Horizontal Line</option>
|
|
404
|
+
<option value="verticalLine">Vertical Line</option>
|
|
405
|
+
<option value="custom">Custom</option>
|
|
406
|
+
</select>
|
|
390
407
|
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
408
|
+
<label for="annotation-x1">X1</label>
|
|
409
|
+
<input
|
|
410
|
+
id="annotation-x1"
|
|
411
|
+
type="number"
|
|
412
|
+
value-key="annotation.x1"
|
|
413
|
+
.value=${String(currentAnnotation.x1 || 0)}
|
|
414
|
+
/>
|
|
398
415
|
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
416
|
+
<label for="annotation-y1">Y1</label>
|
|
417
|
+
<input
|
|
418
|
+
id="annotation-y1"
|
|
419
|
+
type="number"
|
|
420
|
+
value-key="annotation.y1"
|
|
421
|
+
.value=${String(currentAnnotation.y1 || 0)}
|
|
422
|
+
/>
|
|
406
423
|
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
424
|
+
<label for="annotation-x2">X2</label>
|
|
425
|
+
<input
|
|
426
|
+
id="annotation-x2"
|
|
427
|
+
type="number"
|
|
428
|
+
value-key="annotation.x2"
|
|
429
|
+
.value=${String(currentAnnotation.x2 || 0)}
|
|
430
|
+
/>
|
|
414
431
|
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
432
|
+
<label for="annotation-y2">Y2</label>
|
|
433
|
+
<input
|
|
434
|
+
id="annotation-y2"
|
|
435
|
+
type="number"
|
|
436
|
+
value-key="annotation.y2"
|
|
437
|
+
.value=${String(currentAnnotation.y2 || 0)}
|
|
438
|
+
/>
|
|
422
439
|
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
440
|
+
<label for="annotation-stroke"> <ox-i18n msgid="label.stroke-style">Stroke Style</ox-i18n> </label>
|
|
441
|
+
<ox-input-color
|
|
442
|
+
id="annotation-stroke"
|
|
443
|
+
value-key="annotation.stroke"
|
|
444
|
+
.value=${currentAnnotation.stroke}
|
|
445
|
+
></ox-input-color>
|
|
429
446
|
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
447
|
+
<label for="annotation-stroke-thickness">
|
|
448
|
+
<ox-i18n msgid="label.stroke-thickness">Stroke Thickness</ox-i18n>
|
|
449
|
+
</label>
|
|
450
|
+
<input
|
|
451
|
+
id="annotation-stroke-thickness"
|
|
452
|
+
type="number"
|
|
453
|
+
value-key="annotation.strokeThickness"
|
|
454
|
+
.value=${String(currentAnnotation.strokeThickness || 1)}
|
|
455
|
+
/>
|
|
439
456
|
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
457
|
+
<label for="annotation-fill"> <ox-i18n msgid="label.fill">Fill</ox-i18n> </label>
|
|
458
|
+
<ox-input-color
|
|
459
|
+
id="annotation-fill"
|
|
460
|
+
value-key="annotation.fill"
|
|
461
|
+
.value=${currentAnnotation.fill}
|
|
462
|
+
></ox-input-color>
|
|
446
463
|
|
|
447
|
-
|
|
448
|
-
|
|
464
|
+
<label for="annotation-text"> <ox-i18n msgid="label.annotation-text">Text</ox-i18n> </label>
|
|
465
|
+
<input
|
|
466
|
+
id="annotation-text"
|
|
467
|
+
type="text"
|
|
468
|
+
value-key="annotation.text"
|
|
469
|
+
.value=${currentAnnotation.text || ''}
|
|
470
|
+
/>
|
|
449
471
|
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
472
|
+
<label for="annotation-horizontal-anchor">
|
|
473
|
+
<ox-i18n msgid="label.horizontal-anchor">Horizontal Anchor</ox-i18n>
|
|
474
|
+
</label>
|
|
475
|
+
<select
|
|
476
|
+
id="annotation-horizontal-anchor"
|
|
477
|
+
class="select-content"
|
|
478
|
+
value-key="annotation.horizontalAnchorPoint"
|
|
479
|
+
.value=${currentAnnotation.horizontalAnchorPoint || ''}
|
|
480
|
+
>
|
|
481
|
+
<option value="Left">Left</option>
|
|
482
|
+
<option value="Center">Center</option>
|
|
483
|
+
<option value="Right">Right</option>
|
|
484
|
+
</select>
|
|
463
485
|
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
486
|
+
<label for="annotation-vertical-anchor">
|
|
487
|
+
<ox-i18n msgid="label.vertical-anchor">Vertical Anchor</ox-i18n>
|
|
488
|
+
</label>
|
|
489
|
+
<select
|
|
490
|
+
id="annotation-vertical-anchor"
|
|
491
|
+
class="select-content"
|
|
492
|
+
value-key="annotation.verticalAnchorPoint"
|
|
493
|
+
.value=${currentAnnotation.verticalAnchorPoint || ''}
|
|
494
|
+
>
|
|
495
|
+
<option value="Top">Top</option>
|
|
496
|
+
<option value="Center">Center</option>
|
|
497
|
+
<option value="Bottom">Bottom</option>
|
|
498
|
+
</select>
|
|
499
|
+
</div>
|
|
477
500
|
</div>
|
|
478
|
-
|
|
479
|
-
`;
|
|
501
|
+
`);
|
|
480
502
|
}
|
|
481
503
|
multiSeriesTabTemplate() {
|
|
482
504
|
const configurer = this.configurer;
|
|
483
|
-
return html `
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
505
|
+
return keyed(configurer.currentSeriesIndex, html `
|
|
506
|
+
<div id="series-properties-container" fullwidth>
|
|
507
|
+
<div id="series-tab-header">
|
|
508
|
+
<md-icon
|
|
509
|
+
id="series-tab-nav-left-button"
|
|
510
|
+
@tap=${(e) => {
|
|
489
511
|
this._onTabScrollNavLeft(e, 'series');
|
|
490
512
|
}}
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
513
|
+
disabled
|
|
514
|
+
>chevron_left</md-icon
|
|
515
|
+
>
|
|
516
|
+
<div
|
|
517
|
+
id="series-tabs"
|
|
518
|
+
@change=${(e) => {
|
|
497
519
|
configurer.currentSeriesIndex = e.target.activeTabIndex;
|
|
498
520
|
}}
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
521
|
+
active-tab-index=${configurer.currentSeriesIndex}
|
|
522
|
+
fit-container
|
|
523
|
+
>
|
|
524
|
+
${configurer.datasets.map((dataset, index) => html `
|
|
525
|
+
<div
|
|
526
|
+
data-series=${index + 1}
|
|
527
|
+
data-tab-index=${index}
|
|
528
|
+
tab
|
|
529
|
+
?selected=${index == configurer.currentSeriesIndex}
|
|
530
|
+
@click=${(e) => {
|
|
509
531
|
const target = e.target;
|
|
510
532
|
this.configurer.setCurrentSeriesIndex(Number(target.getAttribute('data-tab-index')));
|
|
511
533
|
this.value = { ...this.configurer.value };
|
|
512
534
|
}}
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
535
|
+
>
|
|
536
|
+
${index + 1}
|
|
537
|
+
${!configurer.datasets ||
|
|
538
|
+
(configurer.datasets.length != 1 && configurer.currentSeriesIndex == index)
|
|
516
539
|
? html ` <md-icon @tap=${(e) => this.onTapRemoveCurrentTab(index)}> close </md-icon> `
|
|
517
540
|
: html ``}
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
541
|
+
</div>
|
|
542
|
+
`)}
|
|
543
|
+
</div>
|
|
544
|
+
<md-icon
|
|
545
|
+
id="series-tab-nav-right-button"
|
|
546
|
+
@click=${(e) => {
|
|
524
547
|
this._onTabScrollNavRight(e, 'series');
|
|
525
548
|
}}
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
549
|
+
disabled
|
|
550
|
+
>chevron_right</md-icon
|
|
551
|
+
>
|
|
552
|
+
</div>
|
|
553
|
+
<div id="add-series-button-container">
|
|
554
|
+
<md-icon id="add-series-button" @tap=${(e) => this.onTapAddTab(e)}>add</md-icon>
|
|
555
|
+
</div>
|
|
533
556
|
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
557
|
+
<div class="tab-content">
|
|
558
|
+
<label for="data-key"> <ox-i18n msgid="label.data-key">Data Key</ox-i18n> </label>
|
|
559
|
+
<input id="data-key" type="text" value-key="dataKey" .value=${configurer.dataKey || ''} />
|
|
537
560
|
|
|
538
|
-
|
|
561
|
+
${this.chartType == 'line' || this.chartType == 'bar'
|
|
539
562
|
? html `
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
563
|
+
<label for="series-type"> <ox-i18n msgid="label.series-type">Type</ox-i18n> </label>
|
|
564
|
+
<select
|
|
565
|
+
id="series-type"
|
|
566
|
+
class="select-content"
|
|
567
|
+
value-key="series.type"
|
|
568
|
+
.value=${configurer.series.type || ''}
|
|
569
|
+
>
|
|
570
|
+
<option value="bar" selected>Bar</option>
|
|
571
|
+
<option value="line">Line</option>
|
|
572
|
+
</select>
|
|
573
|
+
`
|
|
551
574
|
: html ``}
|
|
552
575
|
|
|
553
|
-
|
|
554
|
-
|
|
576
|
+
<label for="series-label"> <ox-i18n msgid="label.label">Label</ox-i18n> </label>
|
|
577
|
+
<input id="series-label" type="text" value-key="series.label" .value=${configurer.series.label || ''} />
|
|
555
578
|
|
|
556
|
-
|
|
579
|
+
${configurer.series.type == 'line'
|
|
557
580
|
? html `
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
581
|
+
<label for="series-line-tension"> <ox-i18n msgid="label.line-tension">Line Tension</ox-i18n> </label>
|
|
582
|
+
<select
|
|
583
|
+
id="series-line-tension"
|
|
584
|
+
class="select-content"
|
|
585
|
+
value-key="series.lineTension"
|
|
586
|
+
.value=${String(configurer.series.lineTension || 0)}
|
|
587
|
+
>
|
|
588
|
+
<option value="0.4">Smooth</option>
|
|
589
|
+
<option value="0">Angled</option>
|
|
590
|
+
</select>
|
|
591
|
+
`
|
|
569
592
|
: html ``}
|
|
570
|
-
|
|
593
|
+
${configurer.series.type == 'line'
|
|
571
594
|
? html `
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
595
|
+
<label for="series-border-width"> <ox-i18n msgid="label.border-width">Border Width</ox-i18n> </label>
|
|
596
|
+
<input
|
|
597
|
+
id="series-border-width"
|
|
598
|
+
type="number"
|
|
599
|
+
value-key="series.borderWidth"
|
|
600
|
+
.value=${String(configurer.series.borderWidth || 0)}
|
|
601
|
+
/>
|
|
602
|
+
`
|
|
580
603
|
: html ``}
|
|
581
604
|
|
|
582
|
-
|
|
583
|
-
|
|
605
|
+
<label for="series-color"> <ox-i18n msgid="label.color">Color</ox-i18n> </label>
|
|
606
|
+
<ox-input-color id="series-color" value-key="color" .value=${configurer.color}></ox-input-color>
|
|
584
607
|
|
|
585
|
-
|
|
608
|
+
${configurer.series.type == 'line'
|
|
586
609
|
? html `
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
610
|
+
<label for="series-point-style"> <ox-i18n msgid="label.point-shape">Point Shape</ox-i18n> </label>
|
|
611
|
+
<select
|
|
612
|
+
id="series-point-style"
|
|
613
|
+
class="select-content"
|
|
614
|
+
value-key="series.pointStyle"
|
|
615
|
+
.value=${configurer.series.pointStyle || ''}
|
|
616
|
+
>
|
|
617
|
+
<option value=""> </option>
|
|
618
|
+
<option value="circle">⚬</option>
|
|
619
|
+
<option value="triangle">▵</option>
|
|
620
|
+
<option value="rect">□</option>
|
|
621
|
+
<option value="rectRot">◇</option>
|
|
622
|
+
<option value="cross">+</option>
|
|
623
|
+
<option value="crossRot">⨉</option>
|
|
624
|
+
<option value="star">✱</option>
|
|
625
|
+
<option value="line">―</option>
|
|
626
|
+
<option value="dash">┄</option>
|
|
627
|
+
</select>
|
|
605
628
|
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
629
|
+
<label for="series-point-radius"> <ox-i18n msgid="label.point-size">Point Size</ox-i18n> </label>
|
|
630
|
+
<input
|
|
631
|
+
id="series-point-radius"
|
|
632
|
+
type="number"
|
|
633
|
+
value-key="series.pointRadius"
|
|
634
|
+
.value=${String(configurer.series.pointRadius || 0)}
|
|
635
|
+
/>
|
|
636
|
+
`
|
|
614
637
|
: html ``} <label for="series-stack"> <ox-i18n msgid="label.stack-group">Stack group</ox-i18n> </label>
|
|
615
|
-
|
|
616
|
-
|
|
638
|
+
<input id="series-stack" type="text" value-key="series.stack" .value=${configurer.series.stack || ''} />
|
|
639
|
+
${configurer.series.type == 'line'
|
|
617
640
|
? html `
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
641
|
+
<input id="seires-fill" type="checkbox" value-key="series.fill" ?checked=${configurer.series.fill} />
|
|
642
|
+
<label for="seires-fill"> <ox-i18n msgid="label.fill">Fill</ox-i18n> </label>
|
|
643
|
+
`
|
|
621
644
|
: html ``}
|
|
622
|
-
|
|
645
|
+
${configurer.multiAxis
|
|
623
646
|
? html `
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
647
|
+
<label for="series-y-axis-id"> <ox-i18n msgid="label.target-axis">Target Axis</ox-i18n> </label>
|
|
648
|
+
<select
|
|
649
|
+
id="series-y-axis-id"
|
|
650
|
+
class="select-content"
|
|
651
|
+
value-key="series.yAxisID"
|
|
652
|
+
.value=${configurer.series.yAxisID || ''}
|
|
653
|
+
>
|
|
654
|
+
<option value="left">Left</option>
|
|
655
|
+
<option value="right">Right</option>
|
|
656
|
+
</select>
|
|
657
|
+
`
|
|
635
658
|
: html ``}
|
|
636
|
-
|
|
659
|
+
${this.displayValueTemplate()}
|
|
660
|
+
</div>
|
|
637
661
|
</div>
|
|
638
|
-
|
|
639
|
-
`;
|
|
662
|
+
`);
|
|
640
663
|
}
|
|
641
664
|
_onTabScroll(e, type) {
|
|
642
665
|
let tabContainer;
|