@operato/scene-chartjs 2.0.0-alpha.9 → 2.0.0-beta.7
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 +34 -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 +5 -5
- package/dist/editors/property-editor-chartjs-hbar.js +42 -46
- 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 +92 -100
- 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/dist/plugins/chart-series-highlight.d.ts +1 -0
- package/dist/plugins/chart-series-highlight.js +3 -1
- package/dist/plugins/chart-series-highlight.js.map +1 -1
- package/package.json +7 -8
- package/schema.graphql +61 -42
- package/src/editors/property-editor-chartjs-abstract.ts +0 -12
- package/src/editors/property-editor-chartjs-hbar.ts +42 -48
- package/src/editors/property-editor-chartjs-multi-series-abstract.ts +113 -123
- package/src/editors/property-editor-chartjs-styles.ts +35 -29
- package/src/editors/property-editor-chartjs.ts +3 -1
- package/src/plugins/chart-series-highlight.ts +3 -2
- package/tsconfig.json +1 -0
- package/tsconfig.tsbuildinfo +1 -1
| @@ -1,7 +1,5 @@ | |
| 1 1 | 
             
            import { __decorate } from "tslib";
         | 
| 2 | 
            -
            import '@material/ | 
| 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,130 +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 | 
            -
                      < | 
| 179 | 
            +
                      <md-icon
         | 
| 183 180 | 
             
                        id="tab-nav-left-button"
         | 
| 184 | 
            -
                         | 
| 185 | 
            -
                        @click=${(e) => {
         | 
| 181 | 
            +
                        @tap=${(e) => {
         | 
| 186 182 | 
             
                        this._onTabScrollNavLeft(e);
         | 
| 187 183 | 
             
                    }}
         | 
| 188 184 | 
             
                        disabled
         | 
| 189 | 
            -
             | 
| 190 | 
            -
                       | 
| 185 | 
            +
                        >chevron_left</md-icon
         | 
| 186 | 
            +
                      >
         | 
| 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 | 
            -
                                    <mwc-icon-button icon="close" @tap=${(e) => this.onTapRemoveCurrentTab(e)}>
         | 
| 206 | 
            -
                                    </mwc-icon-button>
         | 
| 207 | 
            -
                                  `
         | 
| 208 | 
            +
                        ? html ` <md-icon @tap="${(e) => this.onTapRemoveCurrentTab(e)}"> close </md-icon> `
         | 
| 208 209 | 
             
                        : html ``}
         | 
| 209 | 
            -
                            </ | 
| 210 | 
            +
                            </div>
         | 
| 210 211 | 
             
                          `)}
         | 
| 211 | 
            -
                      </ | 
| 212 | 
            -
                      < | 
| 212 | 
            +
                      </div>
         | 
| 213 | 
            +
                      <md-icon
         | 
| 213 214 | 
             
                        id="tab-nav-right-button"
         | 
| 214 | 
            -
                        icon="chevron_right"
         | 
| 215 215 | 
             
                        @click=${(e) => {
         | 
| 216 216 | 
             
                        this._onTabScrollNavRight(e);
         | 
| 217 217 | 
             
                    }}
         | 
| 218 218 | 
             
                        disabled
         | 
| 219 | 
            -
             | 
| 219 | 
            +
                        >chevron_right</md-icon
         | 
| 220 | 
            +
                      >
         | 
| 220 221 | 
             
                    </div>
         | 
| 221 222 | 
             
                    <div id="add-series-button-container">
         | 
| 222 | 
            -
                      < | 
| 223 | 
            -
                        id="add-series-button"
         | 
| 224 | 
            -
                        icon="add"
         | 
| 225 | 
            -
                        @tap=${(e) => this.onTapAddTab(e)}
         | 
| 226 | 
            -
                      ></mwc-icon-button>
         | 
| 223 | 
            +
                      <md-icon id="add-series-button" @tap=${(e) => this.onTapAddTab(e)}>add</md-icon>
         | 
| 227 224 | 
             
                    </div>
         | 
| 228 225 |  | 
| 229 | 
            -
                    < | 
| 230 | 
            -
                       | 
| 231 | 
            -
             | 
| 232 | 
            -
                            <label> <ox-i18n msgid="label.data-key">Data Key</ox-i18n> </label>
         | 
| 233 | 
            -
                            <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} />
         | 
| 234 229 |  | 
| 235 | 
            -
             | 
| 230 | 
            +
                      ${this.value.type == 'bar'
         | 
| 236 231 | 
             
                        ? html `
         | 
| 237 | 
            -
             | 
| 238 | 
            -
             | 
| 239 | 
            -
             | 
| 240 | 
            -
             | 
| 241 | 
            -
             | 
| 242 | 
            -
             | 
| 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 | 
            +
                          `
         | 
| 243 238 | 
             
                        : html ``}
         | 
| 244 239 |  | 
| 245 | 
            -
             | 
| 246 | 
            -
             | 
| 240 | 
            +
                      <label> <ox-i18n msgid="label.label">label</ox-i18n> </label>
         | 
| 241 | 
            +
                      <input type="text" value-key="series.label" .value=${this.series.label} />
         | 
| 247 242 |  | 
| 248 | 
            -
             | 
| 243 | 
            +
                      ${this.series.type == 'line'
         | 
| 249 244 | 
             
                        ? html `
         | 
| 250 | 
            -
             | 
| 251 | 
            -
             | 
| 252 | 
            -
             | 
| 253 | 
            -
             | 
| 254 | 
            -
             | 
| 255 | 
            -
             | 
| 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 | 
            +
                          `
         | 
| 256 251 | 
             
                        : html ``}
         | 
| 257 | 
            -
             | 
| 252 | 
            +
                      ${this.series.type == 'line'
         | 
| 258 253 | 
             
                        ? html `
         | 
| 259 | 
            -
             | 
| 260 | 
            -
             | 
| 261 | 
            -
             | 
| 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 | 
            +
                          `
         | 
| 262 257 | 
             
                        : html ``}
         | 
| 263 258 |  | 
| 264 | 
            -
             | 
| 265 | 
            -
             | 
| 259 | 
            +
                      <label> <ox-i18n msgid="label.color">color</ox-i18n> </label>
         | 
| 260 | 
            +
                      <ox-input-color value-key="color" .value=${this.color}></ox-input-color>
         | 
| 266 261 |  | 
| 267 | 
            -
             | 
| 262 | 
            +
                      ${this.series.type == 'line'
         | 
| 268 263 | 
             
                        ? html `
         | 
| 269 | 
            -
             | 
| 270 | 
            -
             | 
| 271 | 
            -
             | 
| 272 | 
            -
             | 
| 273 | 
            -
             | 
| 274 | 
            -
             | 
| 275 | 
            -
             | 
| 276 | 
            -
             | 
| 277 | 
            -
             | 
| 278 | 
            -
             | 
| 279 | 
            -
             | 
| 280 | 
            -
             | 
| 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>
         | 
| 281 276 |  | 
| 282 | 
            -
             | 
| 283 | 
            -
             | 
| 284 | 
            -
             | 
| 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 | 
            +
                          `
         | 
| 285 280 | 
             
                        : html ``} <label> <ox-i18n msgid="label.stack-group">Stack group</ox-i18n> </label>
         | 
| 286 | 
            -
             | 
| 287 | 
            -
                        'line'
         | 
| 281 | 
            +
                      <input type="text" value-key="series.stack" .value=${this.series.stack || ''} /> ${this.series.type == 'line'
         | 
| 288 282 | 
             
                        ? html `
         | 
| 289 | 
            -
             | 
| 290 | 
            -
             | 
| 291 | 
            -
             | 
| 283 | 
            +
                            <input type="checkbox" value-key="series.fill" .checked=${this.series.fill} />
         | 
| 284 | 
            +
                            <label> <ox-i18n msgid="label.fill">fill</ox-i18n> </label>
         | 
| 285 | 
            +
                          `
         | 
| 292 286 | 
             
                        : html ``}
         | 
| 293 | 
            -
             | 
| 287 | 
            +
                      ${this.multiAxis
         | 
| 294 288 | 
             
                        ? html `
         | 
| 295 | 
            -
             | 
| 296 | 
            -
             | 
| 297 | 
            -
             | 
| 298 | 
            -
             | 
| 299 | 
            -
             | 
| 300 | 
            -
             | 
| 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 | 
            +
                          `
         | 
| 301 295 | 
             
                        : html ``}
         | 
| 302 | 
            -
             | 
| 303 | 
            -
             | 
| 304 | 
            -
                        `)}
         | 
| 305 | 
            -
                    </iron-pages>
         | 
| 296 | 
            +
                      ${this.displayValueTemplate()}
         | 
| 297 | 
            +
                    </div>
         | 
| 306 298 | 
             
                  </div>
         | 
| 307 299 | 
             
                `;
         | 
| 308 300 | 
             
                }
         | 
| @@ -311,22 +303,22 @@ class PropertyEditorChartJSMultiSeriesAbstract extends PropertyEditorChartJSAbst | |
| 311 303 | 
             
                        return;
         | 
| 312 304 | 
             
                    }
         | 
| 313 305 | 
             
                    if (this.tabContainer.clientWidth == this.tabContainer.scrollWidth) {
         | 
| 314 | 
            -
                        this.tabNavLeftButton.disabled  | 
| 315 | 
            -
                        this.tabNavRightButton.disabled  | 
| 306 | 
            +
                        this.tabNavLeftButton.setAttribute('disabled', '');
         | 
| 307 | 
            +
                        this.tabNavRightButton.setAttribute('disabled', '');
         | 
| 316 308 | 
             
                    }
         | 
| 317 309 | 
             
                    // left-end
         | 
| 318 310 | 
             
                    else if (this.tabContainer.scrollLeft == 0) {
         | 
| 319 | 
            -
                        this.tabNavLeftButton.disabled  | 
| 320 | 
            -
                        this.tabNavRightButton.disabled | 
| 311 | 
            +
                        this.tabNavLeftButton.setAttribute('disabled', '');
         | 
| 312 | 
            +
                        this.tabNavRightButton.removeAttribute('disabled');
         | 
| 321 313 | 
             
                    }
         | 
| 322 314 | 
             
                    // right-end
         | 
| 323 315 | 
             
                    else if (this.tabContainer.scrollLeft + this.tabContainer.clientWidth >= this.tabContainer.scrollWidth) {
         | 
| 324 | 
            -
                        this.tabNavLeftButton.disabled | 
| 325 | 
            -
                        this.tabNavRightButton.disabled  | 
| 316 | 
            +
                        this.tabNavLeftButton.removeAttribute('disabled');
         | 
| 317 | 
            +
                        this.tabNavRightButton.setAttribute('disabled', '');
         | 
| 326 318 | 
             
                    }
         | 
| 327 319 | 
             
                    else {
         | 
| 328 | 
            -
                        this.tabNavLeftButton.disabled | 
| 329 | 
            -
                        this.tabNavRightButton.disabled | 
| 320 | 
            +
                        this.tabNavLeftButton.removeAttribute('disabled');
         | 
| 321 | 
            +
                        this.tabNavRightButton.removeAttribute('disabled');
         | 
| 330 322 | 
             
                    }
         | 
| 331 323 | 
             
                }
         | 
| 332 324 | 
             
                _onTabScrollNavLeft(e) {
         | 
| @@ -349,7 +341,7 @@ class PropertyEditorChartJSMultiSeriesAbstract extends PropertyEditorChartJSAbst | |
| 349 341 | 
             
            PropertyEditorChartJSMultiSeriesAbstract.styles = [
         | 
| 350 342 | 
             
                ...PropertyEditorChartJSAbstract.styles,
         | 
| 351 343 | 
             
                css `
         | 
| 352 | 
            -
                   | 
| 344 | 
            +
                  md-tabs {
         | 
| 353 345 | 
             
                    background-color: rgb(204, 204, 204);
         | 
| 354 346 | 
             
                  }
         | 
| 355 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/mwc-icon-button'\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 { IconButton } from '@material/mwc-icon-button'\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!: IconButton\n  @query('#tab-nav-right-button') tabNavRightButton!: IconButton\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          <mwc-icon-button\n            id=\"tab-nav-left-button\"\n            icon=\"chevron_left\"\n            @click=${(e: Event) => {\n              this._onTabScrollNavLeft(e)\n            }}\n            disabled\n          ></mwc-icon-button>\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                        <mwc-icon-button icon=\"close\" @tap=${(e: Event) => this.onTapRemoveCurrentTab(e)}>\n                        </mwc-icon-button>\n                      `\n                    : html``}\n                </paper-tab>\n              `\n            )}\n          </paper-tabs>\n          <mwc-icon-button\n            id=\"tab-nav-right-button\"\n            icon=\"chevron_right\"\n            @click=${(e: Event) => {\n              this._onTabScrollNavRight(e)\n            }}\n            disabled\n          ></mwc-icon-button>\n        </div>\n        <div id=\"add-series-button-container\">\n          <mwc-icon-button\n            id=\"add-series-button\"\n            icon=\"add\"\n            @tap=${(e: Event) => this.onTapAddTab(e)}\n          ></mwc-icon-button>\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"]}
         |