@triptease/tt-bar-chart 0.1.6 → 0.1.8

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/README.md CHANGED
@@ -32,7 +32,6 @@ To run the tests in interactive watch mode run:
32
32
  npm run test:watch
33
33
  ```
34
34
 
35
-
36
35
  ## Tooling configs
37
36
 
38
37
  For most of the tools, the configuration is in the `package.json` to reduce the amount of files in your project.
@@ -50,25 +50,25 @@ let TtBarChart = class TtBarChart extends LitElement {
50
50
  position: 'right',
51
51
  formatter: ({ value }) => formatter.format(value),
52
52
  },
53
- cursor: "default"
53
+ cursor: 'default',
54
54
  }));
55
55
  const option = {
56
56
  aria: {
57
- show: true
57
+ show: true,
58
58
  },
59
59
  legend: {
60
60
  show: this.showLegend,
61
61
  },
62
62
  xAxis: {
63
63
  name: this.xAxisTitle,
64
- nameLocation: "center",
64
+ nameLocation: 'center',
65
65
  type: this.direction === 'horizontal' ? 'value' : 'category',
66
66
  data: this.direction === 'horizontal' ? undefined : this.labels,
67
67
  splitLine: { show: this.showHorizontalGrid },
68
68
  },
69
69
  yAxis: {
70
70
  name: this.yAxisTitle,
71
- nameLocation: "center",
71
+ nameLocation: 'center',
72
72
  type: this.direction === 'horizontal' ? 'category' : 'value',
73
73
  data: this.direction === 'horizontal' ? this.labels : undefined,
74
74
  splitLine: { show: this.showVerticalGrid },
@@ -77,7 +77,7 @@ let TtBarChart = class TtBarChart extends LitElement {
77
77
  left: 0,
78
78
  right: 0,
79
79
  top: 0,
80
- bottom: 0,
80
+ ...(this.showLegend ? {} : { bottom: 0 }),
81
81
  },
82
82
  ...(this.showTooltip && {
83
83
  tooltip: {
@@ -1 +1 @@
1
- {"version":3,"file":"TtBarChart.js","sourceRoot":"","sources":["../../src/TtBarChart.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement } from 'lit';\n// @ts-expect-error Known error - https://github.com/apache/echarts/issues/21250\nimport * as echarts from 'echarts';\nimport { customElement, property } from 'lit/decorators.js';\nimport { Dataset } from './types.js';\nimport { formatter, jsonConvertor } from './utils.js';\n// @ts-expect-error Known error - https://github.com/apache/echarts/issues/21250\nimport { AriaComponent } from 'echarts/components';\n\n@customElement('tt-bar-chart')\nexport class TtBarChart extends LitElement {\n @property({ type: Array, converter: jsonConvertor, attribute: 'categories' })\n labels: string[] = [];\n\n @property({ type: Array, converter: jsonConvertor })\n datasets: Dataset[] = [];\n\n @property({ type: String })\n direction: 'horizontal' | 'vertical' = 'horizontal';\n\n @property({ type: String, attribute: 'x-axis-title' })\n xAxisTitle?: string;\n\n @property({ type: String, attribute: 'y-axis-title' })\n yAxisTitle?: string;\n\n @property({ type: Boolean, attribute: 'show-horizontal-grid' })\n showHorizontalGrid: boolean = false;\n\n @property({ type: Boolean, attribute: 'show-vertical-grid' })\n showVerticalGrid: boolean = false;\n\n @property({ type: Boolean, attribute: 'show-legend' })\n showLegend: boolean = false;\n\n @property({ type: Boolean, attribute: 'show-data-labels' })\n showDataLabels: boolean = false;\n\n @property({ type: Boolean, attribute: 'show-tooltip' })\n showTooltip: boolean = false;\n\n private getSeriesColor = (dataset: Dataset) => {\n if (this.datasets && this.datasets.length > 1) return undefined;\n if (dataset.color) return dataset.color;\n\n return '#4d35a1';\n };\n\n render() {\n return html` <div id=${this.id} style=\"width: 100%; height:100%;\"></div> `;\n }\n\n protected firstUpdated() {\n const divElement = this.renderRoot.querySelector(`#${this.id}`) as HTMLDivElement;\n\n if (!divElement) {\n throw new Error('No div element');\n }\n\n const chart = echarts.init(divElement);\n echarts.use([AriaComponent])\n\n const series: echarts.SeriesOption[] = this.datasets.map((dataset) => ({\n name: dataset.label,\n type: 'bar',\n data: dataset.data,\n color: this.getSeriesColor(dataset),\n label: {\n show: this.showDataLabels,\n position: 'right',\n formatter: ({ value }: { value: number }) => formatter.format(value),\n },\n cursor: \"default\"\n }));\n\n const option: echarts.EChartsOption = {\n aria: {\n show: true\n },\n legend: {\n show: this.showLegend,\n },\n xAxis: {\n name: this.xAxisTitle,\n nameLocation: \"center\",\n type: this.direction === 'horizontal' ? 'value' : 'category',\n data: this.direction === 'horizontal' ? undefined : this.labels,\n splitLine: { show: this.showHorizontalGrid },\n },\n yAxis: {\n name: this.yAxisTitle,\n nameLocation: \"center\",\n type: this.direction === 'horizontal' ? 'category' : 'value',\n data: this.direction === 'horizontal' ? this.labels : undefined,\n splitLine: { show: this.showVerticalGrid },\n },\n grid: {\n left: 0,\n right: 0,\n top: 0,\n bottom: 0,\n },\n ...(this.showTooltip && {\n tooltip: {\n trigger: 'axis',\n axisPointer: {\n type: 'shadow',\n },\n },\n }),\n series,\n };\n\n chart.setOption(option);\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'tt-bar-chart': TtBarChart;\n }\n}\n"]}
1
+ {"version":3,"file":"TtBarChart.js","sourceRoot":"","sources":["../../src/TtBarChart.ts"],"names":[],"mappings":"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","sourcesContent":["import { html, LitElement } from 'lit';\n// @ts-expect-error Known error - https://github.com/apache/echarts/issues/21250\nimport * as echarts from 'echarts';\nimport { customElement, property } from 'lit/decorators.js';\nimport { Dataset } from './types.js';\nimport { formatter, jsonConvertor } from './utils.js';\n// @ts-expect-error Known error - https://github.com/apache/echarts/issues/21250\nimport { AriaComponent } from 'echarts/components';\n\n@customElement('tt-bar-chart')\nexport class TtBarChart extends LitElement {\n @property({ type: Array, converter: jsonConvertor, attribute: 'categories' })\n labels: string[] = [];\n\n @property({ type: Array, converter: jsonConvertor })\n datasets: Dataset[] = [];\n\n @property({ type: String })\n direction: 'horizontal' | 'vertical' = 'horizontal';\n\n @property({ type: String, attribute: 'x-axis-title' })\n xAxisTitle?: string;\n\n @property({ type: String, attribute: 'y-axis-title' })\n yAxisTitle?: string;\n\n @property({ type: Boolean, attribute: 'show-horizontal-grid' })\n showHorizontalGrid: boolean = false;\n\n @property({ type: Boolean, attribute: 'show-vertical-grid' })\n showVerticalGrid: boolean = false;\n\n @property({ type: Boolean, attribute: 'show-legend' })\n showLegend: boolean = false;\n\n @property({ type: Boolean, attribute: 'show-data-labels' })\n showDataLabels: boolean = false;\n\n @property({ type: Boolean, attribute: 'show-tooltip' })\n showTooltip: boolean = false;\n\n private getSeriesColor = (dataset: Dataset) => {\n if (this.datasets && this.datasets.length > 1) return undefined;\n if (dataset.color) return dataset.color;\n\n return '#4d35a1';\n };\n\n render() {\n return html` <div id=${this.id} style=\"width: 100%; height:100%;\"></div> `;\n }\n\n protected firstUpdated() {\n const divElement = this.renderRoot.querySelector(`#${this.id}`) as HTMLDivElement;\n\n if (!divElement) {\n throw new Error('No div element');\n }\n\n const chart = echarts.init(divElement);\n echarts.use([AriaComponent]);\n\n const series: echarts.SeriesOption[] = this.datasets.map((dataset) => ({\n name: dataset.label,\n type: 'bar',\n data: dataset.data,\n color: this.getSeriesColor(dataset),\n label: {\n show: this.showDataLabels,\n position: 'right',\n formatter: ({ value }: { value: number }) => formatter.format(value),\n },\n cursor: 'default',\n }));\n\n const option: echarts.EChartsOption = {\n aria: {\n show: true,\n },\n legend: {\n show: this.showLegend,\n },\n xAxis: {\n name: this.xAxisTitle,\n nameLocation: 'center',\n type: this.direction === 'horizontal' ? 'value' : 'category',\n data: this.direction === 'horizontal' ? undefined : this.labels,\n splitLine: { show: this.showHorizontalGrid },\n },\n yAxis: {\n name: this.yAxisTitle,\n nameLocation: 'center',\n type: this.direction === 'horizontal' ? 'category' : 'value',\n data: this.direction === 'horizontal' ? this.labels : undefined,\n splitLine: { show: this.showVerticalGrid },\n },\n grid: {\n left: 0,\n right: 0,\n top: 0,\n ...(this.showLegend ? {} : { bottom: 0 }),\n },\n ...(this.showTooltip && {\n tooltip: {\n trigger: 'axis',\n axisPointer: {\n type: 'shadow',\n },\n },\n }),\n series,\n };\n\n chart.setOption(option);\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'tt-bar-chart': TtBarChart;\n }\n}\n"]}
@@ -1,5 +1,8 @@
1
+ import React from 'react';
1
2
  interface TTBarChartAttributes {
2
- id: string;
3
+ id?: string;
4
+ style?: React.CSSProperties;
5
+ [key: `data-${string}`]: string | undefined;
3
6
  categories?: string;
4
7
  datasets?: string;
5
8
  direction?: 'horizontal' | 'vertical';
@@ -20,15 +23,29 @@ export interface Dataset {
20
23
  declare global {
21
24
  namespace JSX {
22
25
  interface IntrinsicElements {
23
- 'tt-bar-chart': TTBarChartAttributes;
26
+ 'tt-bar-chart': TTBarChartAttributes & {
27
+ class?: string;
28
+ };
24
29
  }
25
30
  }
26
31
  namespace React {
27
32
  namespace JSX {
28
33
  interface IntrinsicElements {
29
- 'tt-bar-chart': TTBarChartAttributes;
34
+ 'tt-bar-chart': TTBarChartAttributes & {
35
+ className?: string;
36
+ ref?: React.Ref<unknown>;
37
+ };
30
38
  }
31
39
  }
32
40
  }
33
41
  }
42
+ declare module '@triptease/html-jsx' {
43
+ namespace JSX {
44
+ interface IntrinsicElements {
45
+ 'tt-bar-chart': TTBarChartAttributes & {
46
+ class?: string;
47
+ };
48
+ }
49
+ }
50
+ }
34
51
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"","sourcesContent":["import React from 'react'; // eslint-disable-line @typescript-eslint/no-unused-vars\n\ninterface TTBarChartAttributes {\n id: string;\n categories?: string;\n datasets?: string;\n direction?: 'horizontal' | 'vertical';\n 'x-axis-title'?: string;\n 'y-axis-title'?: string;\n color?: string;\n 'show-horizontal-grid'?: boolean;\n 'show-vertical-grid'?: boolean;\n 'show-legend'?: boolean;\n 'show-data-labels'?: boolean;\n 'show-tooltip'?: boolean;\n}\n\nexport interface Dataset {\n label: string;\n data: number[];\n color?: string;\n}\n\ndeclare global {\n namespace JSX {\n interface IntrinsicElements {\n 'tt-bar-chart': TTBarChartAttributes;\n }\n }\n\n namespace React {\n namespace JSX {\n interface IntrinsicElements {\n 'tt-bar-chart': TTBarChartAttributes;\n }\n }\n }\n}\n\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"","sourcesContent":["import React from 'react';\nimport type {} from '@triptease/html-jsx'; // Stops declare module from erroring\n\ninterface TTBarChartAttributes {\n id?: string;\n style?: React.CSSProperties;\n [key: `data-${string}`]: string | undefined;\n categories?: string;\n datasets?: string;\n direction?: 'horizontal' | 'vertical';\n 'x-axis-title'?: string;\n 'y-axis-title'?: string;\n color?: string;\n 'show-horizontal-grid'?: boolean;\n 'show-vertical-grid'?: boolean;\n 'show-legend'?: boolean;\n 'show-data-labels'?: boolean;\n 'show-tooltip'?: boolean;\n}\n\nexport interface Dataset {\n label: string;\n data: number[];\n color?: string;\n}\n\ndeclare global {\n namespace JSX {\n interface IntrinsicElements {\n 'tt-bar-chart': TTBarChartAttributes & { class?: string };\n }\n }\n\n namespace React {\n namespace JSX {\n interface IntrinsicElements {\n 'tt-bar-chart': TTBarChartAttributes & { className?: string; ref?: React.Ref<unknown> };\n }\n }\n }\n}\n\ndeclare module '@triptease/html-jsx' {\n namespace JSX {\n interface IntrinsicElements {\n 'tt-bar-chart': TTBarChartAttributes & { class?: string };\n }\n }\n}\n"]}
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "description": "Webcomponent tt-bar-chart following open-wc recommendations",
4
4
  "license": "MIT",
5
5
  "author": "tt-bar-chart",
6
- "version": "0.1.6",
6
+ "version": "0.1.8",
7
7
  "type": "module",
8
8
  "main": "dist/src/index.js",
9
9
  "module": "dist/src/index.js",
@@ -32,6 +32,7 @@
32
32
  "test:watch": "tsc && concurrently -k -r \"tsc --watch --preserveWatchOutput\" \"wtr --watch\""
33
33
  },
34
34
  "dependencies": {
35
+ "@triptease/html-jsx": "^0.2.6",
35
36
  "echarts": "^6.0.0",
36
37
  "lit": "^3.1.4"
37
38
  },
@@ -45,5 +46,8 @@
45
46
  "tslib": "^2.6.3",
46
47
  "typescript": "^5.5.3"
47
48
  },
48
- "customElements": "custom-elements.json"
49
+ "customElements": "custom-elements.json",
50
+ "publishConfig": {
51
+ "access": "public"
52
+ }
49
53
  }