@carbon/charts 0.41.39 → 0.41.43

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/demo/data/line.js CHANGED
@@ -242,7 +242,7 @@ export var lineTimeSeriesData = [
242
242
  { group: 'Dataset 2', date: new Date(2019, 0, 8), value: 27432 },
243
243
  { group: 'Dataset 2', date: new Date(2019, 0, 15), value: 70323 },
244
244
  { group: 'Dataset 2', date: new Date(2019, 0, 19), value: 21300 },
245
- { group: 'Dataset 3', date: new Date(2019, 0, 1), value: 50000 },
245
+ { group: 'Dataset 3', date: new Date(2019, 0, 1), value: 40000 },
246
246
  { group: 'Dataset 3', date: new Date(2019, 0, 5), value: null },
247
247
  { group: 'Dataset 3', date: new Date(2019, 0, 8), value: 18000 },
248
248
  { group: 'Dataset 3', date: new Date(2019, 0, 13), value: 39213 },
@@ -1 +1 @@
1
- {"version":3,"file":"line.js","sourceRoot":"","sources":["line.ts"],"names":[],"mappings":"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AI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE;IAC/D,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACjE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACjE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE;IAC5D,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACjE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACjE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE;IAC/D,EAAE,KAAK,EAAE,WAAW,E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AK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACpE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACnE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACnE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACpE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACpE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACnE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACpE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACjE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACjE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACjE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACrE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACpE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACrE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACnE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACpE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACnE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACnE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACpE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACpE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,K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","sourcesContent":["import { timeFormat } from 'd3';\n\nexport const lineData = [\n\t{ group: 'Dataset 1', key: 'Qty', value: 34200 },\n\t{ group: 'Dataset 1', key: 'More', value: 23500 },\n\t{ group: 'Dataset 1', key: 'Sold', value: 53100 },\n\t{ group: 'Dataset 1', key: 'Restocking', value: 42300 },\n\t{ group: 'Dataset 1', key: 'Misc', value: 12300 },\n\t{ group: 'Dataset 2', key: 'Qty', value: 34200 },\n\t{ group: 'Dataset 2', key: 'More', value: 53200 },\n\t{ group: 'Dataset 2', key: 'Sold', value: 42300 },\n\t{ group: 'Dataset 2', key: 'Restocking', value: 21400 },\n\t{ group: 'Dataset 2', key: 'Misc', value: 0 },\n\t{ group: 'Dataset 3', key: 'Qty', value: 41200 },\n\t{ group: 'Dataset 3', key: 'More', value: 18400 },\n\t{ group: 'Dataset 3', key: 'Sold', value: 34210 },\n\t{ group: 'Dataset 3', key: 'Restocking', value: 1400 },\n\t{ group: 'Dataset 3', key: 'Misc', value: 42100 },\n\t{ group: 'Dataset 4', key: 'Qty', value: 22000 },\n\t{ group: 'Dataset 4', key: 'More', value: 1200 },\n\t{ group: 'Dataset 4', key: 'Sold', value: 9000 },\n\t{ group: 'Dataset 4', key: 'Restocking', value: 24000, audienceSize: 10 },\n\t{ group: 'Dataset 4', key: 'Misc', value: 3000, audienceSize: 10 },\n];\n\nexport const lineOptions = {\n\ttitle: 'Line (discrete)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'key',\n\t\t\tscaleType: 'labels',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n};\n\nexport const sparklineLoadingOptions = {\n\ttitle: 'Sparkline (loading)',\n\taxes: {\n\t\tbottom: {\n\t\t\tvisible: false,\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'date',\n\t\t\tscaleType: 'time',\n\t\t},\n\t\tleft: {\n\t\t\tvisible: false,\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n\tgrid: {\n\t\tx: {\n\t\t\tenabled: false,\n\t\t},\n\t\ty: {\n\t\t\tenabled: false,\n\t\t},\n\t},\n\tlegend: {\n\t\tenabled: false,\n\t},\n\ttooltip: {\n\t\tenabled: false,\n\t},\n\tpoints: {\n\t\tenabled: false,\n\t},\n\tdata: {\n\t\tloading: true,\n\t},\n};\n\nexport const lineCenteredLegendData = lineData;\n\nexport const lineCenteredLegendOptions = {\n\ttitle: 'Line (centered legend)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'key',\n\t\t\tscaleType: 'labels',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n\tlegend: {\n\t\talignment: 'center',\n\t},\n};\n\nexport const lineLongLabelData = [\n\t{ group: 'Dataset 1', key: 'Qty', value: 34200 },\n\t{ group: 'Dataset 1', key: 'More', value: 23500 },\n\t{ group: 'Dataset 1', key: 'Sold', value: 53100 },\n\t{\n\t\tgroup: 'Dataset 1',\n\t\tkey: '347FEDE2F7403759069E5F84B65B49D2467D8914B5184738699259AA310EB0F9',\n\t\tvalue: 42300,\n\t},\n\t{ group: 'Dataset 1', key: 'Misc', value: 12300 },\n\t{ group: 'Dataset 2', key: 'Qty', value: 34200 },\n\t{ group: 'Dataset 2', key: 'More', value: 53200 },\n\t{ group: 'Dataset 2', key: 'Sold', value: 42300 },\n\t{\n\t\tgroup: 'Dataset 2',\n\t\tkey: '347FEDE2F7403759069E5F84B65B49D2467D8914B5184738699259AA310EB0F9',\n\t\tvalue: 21400,\n\t},\n\t{ group: 'Dataset 2', key: 'Misc', value: 0 },\n\t{ group: 'Dataset 3', key: 'Qty', value: 41200 },\n\t{ group: 'Dataset 3', key: 'More', value: 18400 },\n\t{ group: 'Dataset 3', key: 'Sold', value: 34210 },\n\t{\n\t\tgroup: 'Dataset 3',\n\t\tkey: '347FEDE2F7403759069E5F84B65B49D2467D8914B5184738699259AA310EB0F9',\n\t\tvalue: 1400,\n\t},\n\t{ group: 'Dataset 3', key: 'Misc', value: 42100 },\n\t{ group: 'LongLabelShouldBeTruncated', key: 'Qty', value: 22000 },\n\t{ group: 'LongLabelShouldBeTruncated', key: 'More', value: 1200 },\n\t{ group: 'LongLabelShouldBeTruncated', key: 'Sold', value: 9000 },\n\t{\n\t\tgroup: 'LongLabelShouldBeTruncated',\n\t\tkey: '347FEDE2F7403759069E5F84B65B49D2467D8914B5184738699259AA310EB0F9',\n\t\tvalue: 24000,\n\t\taudienceSize: 10,\n\t},\n\t{\n\t\tgroup: 'LongLabelShouldBeTruncated',\n\t\tkey: 'Misc',\n\t\tvalue: 3000,\n\t\taudienceSize: 10,\n\t},\n];\n\nexport const lineLongLabelOptions = {\n\ttitle: 'Line (discrete with truncated labels)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'key',\n\t\t\tscaleType: 'labels',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n};\n\nexport const lineCustomDomainOptions = {\n\ttitle: 'Line (discrete with customized domain)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'key',\n\t\t\tscaleType: 'labels',\n\t\t\tdomain: ['Qty', 'More', 'Misc'],\n\t\t},\n\t\tleft: {\n\t\t\tdomain: [10000, 50000],\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n};\n\nexport const lineSelectedGroupsData = [\n\t{ group: 'Dataset 1', key: 'Qty', value: 34200 },\n\t{ group: 'Dataset 1', key: 'More', value: 23500 },\n\t{ group: 'Dataset 1', key: 'Sold', value: 53100 },\n\t{ group: 'Dataset 1', key: 'Restocking', value: 42300 },\n\t{ group: 'Dataset 1', key: 'Misc', value: 12300 },\n\t{ group: 'Dataset 2', key: 'Qty', value: 34200 },\n\t{ group: 'Dataset 2', key: 'More', value: 56000 },\n\t{ group: 'Dataset 2', key: 'Sold', value: 42300 },\n\t{ group: 'Dataset 2', key: 'Restocking', value: 21400 },\n\t{ group: 'Dataset 2', key: 'Misc', value: 0 },\n\t{ group: 'Dataset 3', key: 'Qty', value: 41200 },\n\t{ group: 'Dataset 3', key: 'More', value: 18400 },\n\t{ group: 'Dataset 3', key: 'Sold', value: 34210 },\n\t{ group: 'Dataset 3', key: 'Restocking', value: 1400 },\n\t{ group: 'Dataset 3', key: 'Misc', value: 42100 },\n\t{ group: 'Dataset 4', key: 'Qty', value: 22000 },\n\t{ group: 'Dataset 4', key: 'More', value: 1200 },\n\t{ group: 'Dataset 4', key: 'Sold', value: 9000 },\n\t{ group: 'Dataset 4', key: 'Restocking', value: 24000, audienceSize: 10 },\n\t{ group: 'Dataset 4', key: 'Misc', value: 3000, audienceSize: 10 },\n];\n\nexport const lineSelectedGroupsOptions = {\n\ttitle: 'Line (selected groups)',\n\tdata: {\n\t\tselectedGroups: ['Dataset 1', 'Dataset 3'],\n\t},\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'key',\n\t\t\tscaleType: 'labels',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n};\n\nexport const lineCustomColorOptions = {\n\ttitle: 'Line (custom colors)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'key',\n\t\t\tscaleType: 'labels',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n\tcolor: {\n\t\tscale: {\n\t\t\t'Dataset 1': '#925699',\n\t\t\t'Dataset 2': '#525669',\n\t\t\t'Dataset 3': '#725699',\n\t\t\t'Dataset 4': '#ccc',\n\t\t},\n\t},\n};\n\nexport const lineTimeSeriesData = [\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 1), value: 50000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 5), value: 65000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 8), value: null },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 13), value: 49213 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 17), value: 51213 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 2), value: 0 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 6), value: 57312 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 8), value: 27432 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 15), value: 70323 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 19), value: 21300 },\n\t{ group: 'Dataset 3', date: new Date(2019, 0, 1), value: 50000 },\n\t{ group: 'Dataset 3', date: new Date(2019, 0, 5), value: null },\n\t{ group: 'Dataset 3', date: new Date(2019, 0, 8), value: 18000 },\n\t{ group: 'Dataset 3', date: new Date(2019, 0, 13), value: 39213 },\n\t{ group: 'Dataset 3', date: new Date(2019, 0, 17), value: 61213 },\n\t{ group: 'Dataset 4', date: new Date(2019, 0, 2), value: 20000 },\n\t{ group: 'Dataset 4', date: new Date(2019, 0, 6), value: 37312 },\n\t{ group: 'Dataset 4', date: new Date(2019, 0, 8), value: 51432 },\n\t{ group: 'Dataset 4', date: new Date(2019, 0, 15), value: 25332 },\n\t{ group: 'Dataset 4', date: new Date(2019, 0, 19), value: null },\n];\n\nexport const lineTimeSeriesOptions = {\n\ttitle: 'Line (time series)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'date',\n\t\t\tscaleType: 'time',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n\tcurve: 'curveMonotoneX',\n};\n\nexport const lineTimeSeriesCustomDomainOptions = {\n\ttitle: 'Line (time series with customized domain)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tdomain: [new Date(2019, 0, 5), new Date(2019, 0, 15)],\n\t\t\tmapsTo: 'date',\n\t\t\tscaleType: 'time',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n\tcurve: 'curveMonotoneX',\n};\n\nexport const lineTimeSeriesWithThresholdsOptions = {\n\ttitle: 'Line with thresholds (time series)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'date',\n\t\t\tscaleType: 'time',\n\t\t\tthresholds: [\n\t\t\t\t{\n\t\t\t\t\tvalue: new Date(2019, 0, 11),\n\t\t\t\t\tlabel: 'Custom formatter',\n\t\t\t\t\tvalueFormatter: timeFormat('%b %d'),\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t\tthresholds: [\n\t\t\t\t{ value: 55000, label: 'Custom label', fillColor: 'orange' },\n\t\t\t\t{ value: 10000, fillColor: '#03a9f4' },\n\t\t\t],\n\t\t},\n\t},\n\tcurve: 'curveMonotoneX',\n};\n\nexport const lineTimeSeriesDenseData = [\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 1), value: 10000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 1, 5), value: 12000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 1, 10), value: 14000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 2), value: 25000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 2, 2), value: 26000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 3), value: 10000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 3, 5), value: 10000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 3, 10), value: 12000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 5), value: 45000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 7), value: 49000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 7, 15), value: 45000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 9), value: 50000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 9, 5), value: 52000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 9, 15), value: 55000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 10), value: 50000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 12), value: 65000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 13), value: 80000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 14, 10), value: 85000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 15, 7), value: 90000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 15, 18), value: 70000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 1), value: 20000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 1, 3), value: 22000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 1, 16), value: 24000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 2), value: 35000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 2, 7), value: 36000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 3), value: 20000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 3, 6), value: 20000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 3, 18), value: 22000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 5), value: 62000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 6), value: 52000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 7), value: 52000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 7, 15), value: 52000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 9), value: 60000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 9, 5), value: 62000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 9, 10), value: 62000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 12), value: 65000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 14), value: 40000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 15, 5), value: 45000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 15, 10), value: 35000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 15, 18), value: 30000 },\n];\n\nexport const lineTimeSeriesDenseOptions = {\n\ttitle: 'Line (dense time series)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'date',\n\t\t\tscaleType: 'time',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n\tcurve: 'curveMonotoneX',\n};\n\nexport const lineTimeSeriesDataRotatedTicks = [\n\t{ group: 'Dataset 1', date: new Date(2019, 11, 30), value: 32100 },\n\t{ group: 'Dataset 1', date: new Date(2019, 11, 31), value: 23500 },\n\t{ group: 'Dataset 1', date: new Date(2020, 0, 1), value: 53100 },\n\t{ group: 'Dataset 1', date: new Date(2020, 0, 2), value: 42300 },\n\t{ group: 'Dataset 1', date: new Date(2020, 0, 3), value: 12300 },\n];\n\nexport const lineTimeSeriesRotatedTicksOptions = {\n\ttitle: 'Line (time series) - Rotated ticks labels',\n\twidth: '400px',\n\taxes: {\n\t\tbottom: {\n\t\t\tscaleType: 'time',\n\t\t\tmapsTo: 'date',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t},\n\t},\n\tlegend: {\n\t\tclickable: false,\n\t},\n};\n\nexport const lineHorizontalOptions = {\n\ttitle: 'Line Horizontal (discrete)',\n\taxes: {\n\t\tleft: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'key',\n\t\t\tscaleType: 'labels',\n\t\t},\n\t\tbottom: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n};\n\nexport const lineTimeSeriesHorizontalOptions = {\n\ttitle: 'Line Horizontal (time series)',\n\taxes: {\n\t\tleft: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'date',\n\t\t\tscaleType: 'time',\n\t\t},\n\t\tbottom: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n\tcurve: 'curveMonotoneY',\n};\n\n// line - empty state\nexport const lineEmptyStateData = [];\nexport const lineEmptyStateOptions = {\n\ttitle: 'Line (empty state)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'date',\n\t\t\tscaleType: 'time',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n\tcurve: 'curveMonotoneX',\n};\n\n// line - skeleton\nexport const lineSkeletonData = [];\nexport const lineSkeletonOptions = {\n\ttitle: 'Line (skeleton)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'date',\n\t\t\tscaleType: 'time',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n\tcurve: 'curveMonotoneX',\n\tdata: {\n\t\tloading: true,\n\t},\n};\n\nexport const lineTimeSeriesDualAxesData = [\n\t{ group: 'Temperature', date: new Date(2019, 0, 1), temp: 23 },\n\t{ group: 'Temperature', date: new Date(2019, 1, 1), temp: 15 },\n\t{ group: 'Temperature', date: new Date(2019, 2, 1), temp: 24 },\n\t{ group: 'Temperature', date: new Date(2019, 3, 1), temp: 33 },\n\t{ group: 'Temperature', date: new Date(2019, 4, 1), temp: 23 },\n\t{ group: 'Temperature', date: new Date(2019, 5, 1), temp: 32 },\n\t{ group: 'Temperature', date: new Date(2019, 6, 1), temp: 23 },\n\t{ group: 'Rainfall', date: new Date(2019, 0, 1), rainfall: 50 },\n\t{ group: 'Rainfall', date: new Date(2019, 1, 1), rainfall: 65 },\n\t{ group: 'Rainfall', date: new Date(2019, 2, 1), rainfall: 35 },\n\t{ group: 'Rainfall', date: new Date(2019, 3, 1), rainfall: 43 },\n\t{ group: 'Rainfall', date: new Date(2019, 4, 1), rainfall: 53 },\n\t{ group: 'Rainfall', date: new Date(2019, 5, 1), rainfall: 19 },\n\t{ group: 'Rainfall', date: new Date(2019, 6, 1), rainfall: 13 },\n];\n\nexport const dualLine = {\n\ttitle: 'Line + Line (dual axes)',\n\taxes: {\n\t\tleft: {\n\t\t\ttitle: 'Temperature (°C)',\n\t\t\tmapsTo: 'temp',\n\t\t},\n\t\tbottom: {\n\t\t\tscaleType: 'time',\n\t\t\tmapsTo: 'date',\n\t\t\ttitle: 'Date',\n\t\t},\n\t\tright: {\n\t\t\ttitle: 'Rainfall (mm)',\n\t\t\tmapsTo: 'rainfall',\n\t\t\tcorrespondingDatasets: ['Rainfall'],\n\t\t},\n\t},\n\tcurve: 'curveMonotoneX',\n};\n"]}
1
+ {"version":3,"file":"line.js","sourceRoot":"","sources":["line.ts"],"names":[],"mappings":"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AI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE;IAC/D,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACjE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACjE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE;IAC5D,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACjE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACjE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE;IAC/D,EAAE,KAAK,EAAE,WAAW,E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AK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACpE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACnE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACnE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACpE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACpE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACnE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACpE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACjE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACjE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACjE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACrE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACpE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACrE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACnE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACpE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACnE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACnE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACpE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IACpE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE;IAChE,EAAE,K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","sourcesContent":["import { timeFormat } from 'd3';\n\nexport const lineData = [\n\t{ group: 'Dataset 1', key: 'Qty', value: 34200 },\n\t{ group: 'Dataset 1', key: 'More', value: 23500 },\n\t{ group: 'Dataset 1', key: 'Sold', value: 53100 },\n\t{ group: 'Dataset 1', key: 'Restocking', value: 42300 },\n\t{ group: 'Dataset 1', key: 'Misc', value: 12300 },\n\t{ group: 'Dataset 2', key: 'Qty', value: 34200 },\n\t{ group: 'Dataset 2', key: 'More', value: 53200 },\n\t{ group: 'Dataset 2', key: 'Sold', value: 42300 },\n\t{ group: 'Dataset 2', key: 'Restocking', value: 21400 },\n\t{ group: 'Dataset 2', key: 'Misc', value: 0 },\n\t{ group: 'Dataset 3', key: 'Qty', value: 41200 },\n\t{ group: 'Dataset 3', key: 'More', value: 18400 },\n\t{ group: 'Dataset 3', key: 'Sold', value: 34210 },\n\t{ group: 'Dataset 3', key: 'Restocking', value: 1400 },\n\t{ group: 'Dataset 3', key: 'Misc', value: 42100 },\n\t{ group: 'Dataset 4', key: 'Qty', value: 22000 },\n\t{ group: 'Dataset 4', key: 'More', value: 1200 },\n\t{ group: 'Dataset 4', key: 'Sold', value: 9000 },\n\t{ group: 'Dataset 4', key: 'Restocking', value: 24000, audienceSize: 10 },\n\t{ group: 'Dataset 4', key: 'Misc', value: 3000, audienceSize: 10 },\n];\n\nexport const lineOptions = {\n\ttitle: 'Line (discrete)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'key',\n\t\t\tscaleType: 'labels',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n};\n\nexport const sparklineLoadingOptions = {\n\ttitle: 'Sparkline (loading)',\n\taxes: {\n\t\tbottom: {\n\t\t\tvisible: false,\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'date',\n\t\t\tscaleType: 'time',\n\t\t},\n\t\tleft: {\n\t\t\tvisible: false,\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n\tgrid: {\n\t\tx: {\n\t\t\tenabled: false,\n\t\t},\n\t\ty: {\n\t\t\tenabled: false,\n\t\t},\n\t},\n\tlegend: {\n\t\tenabled: false,\n\t},\n\ttooltip: {\n\t\tenabled: false,\n\t},\n\tpoints: {\n\t\tenabled: false,\n\t},\n\tdata: {\n\t\tloading: true,\n\t},\n};\n\nexport const lineCenteredLegendData = lineData;\n\nexport const lineCenteredLegendOptions = {\n\ttitle: 'Line (centered legend)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'key',\n\t\t\tscaleType: 'labels',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n\tlegend: {\n\t\talignment: 'center',\n\t},\n};\n\nexport const lineLongLabelData = [\n\t{ group: 'Dataset 1', key: 'Qty', value: 34200 },\n\t{ group: 'Dataset 1', key: 'More', value: 23500 },\n\t{ group: 'Dataset 1', key: 'Sold', value: 53100 },\n\t{\n\t\tgroup: 'Dataset 1',\n\t\tkey: '347FEDE2F7403759069E5F84B65B49D2467D8914B5184738699259AA310EB0F9',\n\t\tvalue: 42300,\n\t},\n\t{ group: 'Dataset 1', key: 'Misc', value: 12300 },\n\t{ group: 'Dataset 2', key: 'Qty', value: 34200 },\n\t{ group: 'Dataset 2', key: 'More', value: 53200 },\n\t{ group: 'Dataset 2', key: 'Sold', value: 42300 },\n\t{\n\t\tgroup: 'Dataset 2',\n\t\tkey: '347FEDE2F7403759069E5F84B65B49D2467D8914B5184738699259AA310EB0F9',\n\t\tvalue: 21400,\n\t},\n\t{ group: 'Dataset 2', key: 'Misc', value: 0 },\n\t{ group: 'Dataset 3', key: 'Qty', value: 41200 },\n\t{ group: 'Dataset 3', key: 'More', value: 18400 },\n\t{ group: 'Dataset 3', key: 'Sold', value: 34210 },\n\t{\n\t\tgroup: 'Dataset 3',\n\t\tkey: '347FEDE2F7403759069E5F84B65B49D2467D8914B5184738699259AA310EB0F9',\n\t\tvalue: 1400,\n\t},\n\t{ group: 'Dataset 3', key: 'Misc', value: 42100 },\n\t{ group: 'LongLabelShouldBeTruncated', key: 'Qty', value: 22000 },\n\t{ group: 'LongLabelShouldBeTruncated', key: 'More', value: 1200 },\n\t{ group: 'LongLabelShouldBeTruncated', key: 'Sold', value: 9000 },\n\t{\n\t\tgroup: 'LongLabelShouldBeTruncated',\n\t\tkey: '347FEDE2F7403759069E5F84B65B49D2467D8914B5184738699259AA310EB0F9',\n\t\tvalue: 24000,\n\t\taudienceSize: 10,\n\t},\n\t{\n\t\tgroup: 'LongLabelShouldBeTruncated',\n\t\tkey: 'Misc',\n\t\tvalue: 3000,\n\t\taudienceSize: 10,\n\t},\n];\n\nexport const lineLongLabelOptions = {\n\ttitle: 'Line (discrete with truncated labels)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'key',\n\t\t\tscaleType: 'labels',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n};\n\nexport const lineCustomDomainOptions = {\n\ttitle: 'Line (discrete with customized domain)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'key',\n\t\t\tscaleType: 'labels',\n\t\t\tdomain: ['Qty', 'More', 'Misc'],\n\t\t},\n\t\tleft: {\n\t\t\tdomain: [10000, 50000],\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n};\n\nexport const lineSelectedGroupsData = [\n\t{ group: 'Dataset 1', key: 'Qty', value: 34200 },\n\t{ group: 'Dataset 1', key: 'More', value: 23500 },\n\t{ group: 'Dataset 1', key: 'Sold', value: 53100 },\n\t{ group: 'Dataset 1', key: 'Restocking', value: 42300 },\n\t{ group: 'Dataset 1', key: 'Misc', value: 12300 },\n\t{ group: 'Dataset 2', key: 'Qty', value: 34200 },\n\t{ group: 'Dataset 2', key: 'More', value: 56000 },\n\t{ group: 'Dataset 2', key: 'Sold', value: 42300 },\n\t{ group: 'Dataset 2', key: 'Restocking', value: 21400 },\n\t{ group: 'Dataset 2', key: 'Misc', value: 0 },\n\t{ group: 'Dataset 3', key: 'Qty', value: 41200 },\n\t{ group: 'Dataset 3', key: 'More', value: 18400 },\n\t{ group: 'Dataset 3', key: 'Sold', value: 34210 },\n\t{ group: 'Dataset 3', key: 'Restocking', value: 1400 },\n\t{ group: 'Dataset 3', key: 'Misc', value: 42100 },\n\t{ group: 'Dataset 4', key: 'Qty', value: 22000 },\n\t{ group: 'Dataset 4', key: 'More', value: 1200 },\n\t{ group: 'Dataset 4', key: 'Sold', value: 9000 },\n\t{ group: 'Dataset 4', key: 'Restocking', value: 24000, audienceSize: 10 },\n\t{ group: 'Dataset 4', key: 'Misc', value: 3000, audienceSize: 10 },\n];\n\nexport const lineSelectedGroupsOptions = {\n\ttitle: 'Line (selected groups)',\n\tdata: {\n\t\tselectedGroups: ['Dataset 1', 'Dataset 3'],\n\t},\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'key',\n\t\t\tscaleType: 'labels',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n};\n\nexport const lineCustomColorOptions = {\n\ttitle: 'Line (custom colors)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'key',\n\t\t\tscaleType: 'labels',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n\tcolor: {\n\t\tscale: {\n\t\t\t'Dataset 1': '#925699',\n\t\t\t'Dataset 2': '#525669',\n\t\t\t'Dataset 3': '#725699',\n\t\t\t'Dataset 4': '#ccc',\n\t\t},\n\t},\n};\n\nexport const lineTimeSeriesData = [\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 1), value: 50000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 5), value: 65000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 8), value: null },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 13), value: 49213 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 17), value: 51213 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 2), value: 0 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 6), value: 57312 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 8), value: 27432 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 15), value: 70323 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 19), value: 21300 },\n\t{ group: 'Dataset 3', date: new Date(2019, 0, 1), value: 40000 },\n\t{ group: 'Dataset 3', date: new Date(2019, 0, 5), value: null },\n\t{ group: 'Dataset 3', date: new Date(2019, 0, 8), value: 18000 },\n\t{ group: 'Dataset 3', date: new Date(2019, 0, 13), value: 39213 },\n\t{ group: 'Dataset 3', date: new Date(2019, 0, 17), value: 61213 },\n\t{ group: 'Dataset 4', date: new Date(2019, 0, 2), value: 20000 },\n\t{ group: 'Dataset 4', date: new Date(2019, 0, 6), value: 37312 },\n\t{ group: 'Dataset 4', date: new Date(2019, 0, 8), value: 51432 },\n\t{ group: 'Dataset 4', date: new Date(2019, 0, 15), value: 25332 },\n\t{ group: 'Dataset 4', date: new Date(2019, 0, 19), value: null },\n];\n\nexport const lineTimeSeriesOptions = {\n\ttitle: 'Line (time series)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'date',\n\t\t\tscaleType: 'time',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n\tcurve: 'curveMonotoneX',\n};\n\nexport const lineTimeSeriesCustomDomainOptions = {\n\ttitle: 'Line (time series with customized domain)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tdomain: [new Date(2019, 0, 5), new Date(2019, 0, 15)],\n\t\t\tmapsTo: 'date',\n\t\t\tscaleType: 'time',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n\tcurve: 'curveMonotoneX',\n};\n\nexport const lineTimeSeriesWithThresholdsOptions = {\n\ttitle: 'Line with thresholds (time series)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'date',\n\t\t\tscaleType: 'time',\n\t\t\tthresholds: [\n\t\t\t\t{\n\t\t\t\t\tvalue: new Date(2019, 0, 11),\n\t\t\t\t\tlabel: 'Custom formatter',\n\t\t\t\t\tvalueFormatter: timeFormat('%b %d'),\n\t\t\t\t},\n\t\t\t],\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t\tthresholds: [\n\t\t\t\t{ value: 55000, label: 'Custom label', fillColor: 'orange' },\n\t\t\t\t{ value: 10000, fillColor: '#03a9f4' },\n\t\t\t],\n\t\t},\n\t},\n\tcurve: 'curveMonotoneX',\n};\n\nexport const lineTimeSeriesDenseData = [\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 1), value: 10000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 1, 5), value: 12000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 1, 10), value: 14000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 2), value: 25000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 2, 2), value: 26000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 3), value: 10000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 3, 5), value: 10000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 3, 10), value: 12000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 5), value: 45000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 7), value: 49000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 7, 15), value: 45000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 9), value: 50000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 9, 5), value: 52000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 9, 15), value: 55000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 10), value: 50000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 12), value: 65000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 13), value: 80000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 14, 10), value: 85000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 15, 7), value: 90000 },\n\t{ group: 'Dataset 1', date: new Date(2019, 0, 15, 18), value: 70000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 1), value: 20000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 1, 3), value: 22000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 1, 16), value: 24000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 2), value: 35000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 2, 7), value: 36000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 3), value: 20000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 3, 6), value: 20000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 3, 18), value: 22000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 5), value: 62000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 6), value: 52000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 7), value: 52000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 7, 15), value: 52000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 9), value: 60000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 9, 5), value: 62000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 9, 10), value: 62000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 12), value: 65000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 14), value: 40000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 15, 5), value: 45000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 15, 10), value: 35000 },\n\t{ group: 'Dataset 2', date: new Date(2019, 0, 15, 18), value: 30000 },\n];\n\nexport const lineTimeSeriesDenseOptions = {\n\ttitle: 'Line (dense time series)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'date',\n\t\t\tscaleType: 'time',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n\tcurve: 'curveMonotoneX',\n};\n\nexport const lineTimeSeriesDataRotatedTicks = [\n\t{ group: 'Dataset 1', date: new Date(2019, 11, 30), value: 32100 },\n\t{ group: 'Dataset 1', date: new Date(2019, 11, 31), value: 23500 },\n\t{ group: 'Dataset 1', date: new Date(2020, 0, 1), value: 53100 },\n\t{ group: 'Dataset 1', date: new Date(2020, 0, 2), value: 42300 },\n\t{ group: 'Dataset 1', date: new Date(2020, 0, 3), value: 12300 },\n];\n\nexport const lineTimeSeriesRotatedTicksOptions = {\n\ttitle: 'Line (time series) - Rotated ticks labels',\n\twidth: '400px',\n\taxes: {\n\t\tbottom: {\n\t\t\tscaleType: 'time',\n\t\t\tmapsTo: 'date',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t},\n\t},\n\tlegend: {\n\t\tclickable: false,\n\t},\n};\n\nexport const lineHorizontalOptions = {\n\ttitle: 'Line Horizontal (discrete)',\n\taxes: {\n\t\tleft: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'key',\n\t\t\tscaleType: 'labels',\n\t\t},\n\t\tbottom: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n};\n\nexport const lineTimeSeriesHorizontalOptions = {\n\ttitle: 'Line Horizontal (time series)',\n\taxes: {\n\t\tleft: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'date',\n\t\t\tscaleType: 'time',\n\t\t},\n\t\tbottom: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n\tcurve: 'curveMonotoneY',\n};\n\n// line - empty state\nexport const lineEmptyStateData = [];\nexport const lineEmptyStateOptions = {\n\ttitle: 'Line (empty state)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'date',\n\t\t\tscaleType: 'time',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n\tcurve: 'curveMonotoneX',\n};\n\n// line - skeleton\nexport const lineSkeletonData = [];\nexport const lineSkeletonOptions = {\n\ttitle: 'Line (skeleton)',\n\taxes: {\n\t\tbottom: {\n\t\t\ttitle: '2019 Annual Sales Figures',\n\t\t\tmapsTo: 'date',\n\t\t\tscaleType: 'time',\n\t\t},\n\t\tleft: {\n\t\t\tmapsTo: 'value',\n\t\t\ttitle: 'Conversion rate',\n\t\t\tscaleType: 'linear',\n\t\t},\n\t},\n\tcurve: 'curveMonotoneX',\n\tdata: {\n\t\tloading: true,\n\t},\n};\n\nexport const lineTimeSeriesDualAxesData = [\n\t{ group: 'Temperature', date: new Date(2019, 0, 1), temp: 23 },\n\t{ group: 'Temperature', date: new Date(2019, 1, 1), temp: 15 },\n\t{ group: 'Temperature', date: new Date(2019, 2, 1), temp: 24 },\n\t{ group: 'Temperature', date: new Date(2019, 3, 1), temp: 33 },\n\t{ group: 'Temperature', date: new Date(2019, 4, 1), temp: 23 },\n\t{ group: 'Temperature', date: new Date(2019, 5, 1), temp: 32 },\n\t{ group: 'Temperature', date: new Date(2019, 6, 1), temp: 23 },\n\t{ group: 'Rainfall', date: new Date(2019, 0, 1), rainfall: 50 },\n\t{ group: 'Rainfall', date: new Date(2019, 1, 1), rainfall: 65 },\n\t{ group: 'Rainfall', date: new Date(2019, 2, 1), rainfall: 35 },\n\t{ group: 'Rainfall', date: new Date(2019, 3, 1), rainfall: 43 },\n\t{ group: 'Rainfall', date: new Date(2019, 4, 1), rainfall: 53 },\n\t{ group: 'Rainfall', date: new Date(2019, 5, 1), rainfall: 19 },\n\t{ group: 'Rainfall', date: new Date(2019, 6, 1), rainfall: 13 },\n];\n\nexport const dualLine = {\n\ttitle: 'Line + Line (dual axes)',\n\taxes: {\n\t\tleft: {\n\t\t\ttitle: 'Temperature (°C)',\n\t\t\tmapsTo: 'temp',\n\t\t},\n\t\tbottom: {\n\t\t\tscaleType: 'time',\n\t\t\tmapsTo: 'date',\n\t\t\ttitle: 'Date',\n\t\t},\n\t\tright: {\n\t\t\ttitle: 'Rainfall (mm)',\n\t\t\tmapsTo: 'rainfall',\n\t\t\tcorrespondingDatasets: ['Rainfall'],\n\t\t},\n\t},\n\tcurve: 'curveMonotoneX',\n};\n"]}
@@ -274,7 +274,7 @@
274
274
  "signature": "ff07d0e1e23dcc09b7868c330f7d1a554357c1ed2ec211b90dc4f4fbc406cd77"
275
275
  },
276
276
  "../../demo/data/line.ts": {
277
- "version": "c4709bb0cb73c5bc4a8b8ce72823742b379429c71dfc21baa04df1c21f71692f",
277
+ "version": "bd739df5795cd7fb17ef7738999a6bf8ed865092b05dc0c80a06fff16f679980",
278
278
  "signature": "d73f679a0b56a67838b8f038dfe5885ec32278e07e2edebb03236db2a5902494"
279
279
  },
280
280
  "../../demo/data/bubble.ts": {
@@ -374,8 +374,8 @@
374
374
  "signature": "5c97b5470761d6a1efca59cf6e995e6e6e4cd5bb3054bc6b71c366049464ce5d"
375
375
  },
376
376
  "../../src/interfaces/charts.ts": {
377
- "version": "361564f7f89dc14a7dcbb6e3b73e9055bae32d626d48be8811440aa447c9c967",
378
- "signature": "361564f7f89dc14a7dcbb6e3b73e9055bae32d626d48be8811440aa447c9c967"
377
+ "version": "cbb2667859a50decf1798865056cd5e5dc6563f831cff28348ddc70ed97752e7",
378
+ "signature": "cbb2667859a50decf1798865056cd5e5dc6563f831cff28348ddc70ed97752e7"
379
379
  },
380
380
  "../../src/interfaces/layout.ts": {
381
381
  "version": "3b70dfad0fc0aede74ab026fca88931f3b2a039a3362a3e3bd3293a0a762672f",
@@ -239,6 +239,7 @@ export interface GaugeChartOptions extends BaseChartOptions {
239
239
  size?: Function;
240
240
  enabled: Boolean;
241
241
  };
242
+ showPercentageSymbol?: Boolean;
242
243
  status?: Statuses;
243
244
  deltaFontSize?: Function;
244
245
  numberSpacing?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"charts.js","sourceRoot":"","sources":["charts.ts"],"names":[],"mappings":"","sourcesContent":["import {\n\tGaugeTypes,\n\tStatuses,\n\tArrowDirections,\n\tAlignments,\n\tChartTypes,\n} from './enums';\nimport {\n\tLegendOptions,\n\tTooltipOptions,\n\tGridOptions,\n\tAxesOptions,\n\tZoomBarsOptions,\n} from './index';\nimport { BarOptions, StackedBarOptions } from './components';\nimport { TimeScaleOptions } from './axis-scales';\n\n/**\n * Base chart options common to any chart\n */\nexport interface BaseChartOptions {\n\t/**\n\t * Optionally specify a title for the chart\n\t */\n\ttitle?: string;\n\t/**\n\t * boolean to disable animations (enabled by default)\n\t */\n\tanimations?: boolean;\n\t/**\n\t * boolean to prevent the container from resizing\n\t */\n\tresizable?: boolean;\n\t/**\n\t * Optionally specify a width for the chart\n\t */\n\twidth?: string;\n\t/**\n\t * Optionally specify a height for the chart\n\t */\n\theight?: string;\n\t/**\n\t * tooltip configuration\n\t */\n\ttooltip?: TooltipOptions;\n\t/**\n\t * legend configuration\n\t */\n\tlegend?: LegendOptions;\n\t/**\n\t * Optional function to determine whether is filled based on datasetLabel, label, and/or data\n\t */\n\tgetIsFilled?: (\n\t\tdatasetLabel: any,\n\t\tlabel?: any,\n\t\tdata?: any,\n\t\tdefaultFilled?: boolean\n\t) => boolean;\n\t/**\n\t * Optional function to generate the fill color based on datasetLabel, label, and/or data\n\t */\n\tgetFillColor?: (\n\t\tdatasetLabel: any,\n\t\tlabel?: any,\n\t\tdata?: any,\n\t\tdefaultFillColor?: string\n\t) => string;\n\t/**\n\t * Optional function to generate the stroke color based on datasetLabel, label, and/or data\n\t */\n\tgetStrokeColor?: (\n\t\tdatasetLabel: any,\n\t\tlabel?: any,\n\t\tdata?: any,\n\t\tdefaultStrokeColor?: string\n\t) => string;\n\t/**\n\t * stylesheet options\n\t */\n\tstyle?: {\n\t\t/**\n\t\t * optional prefixing string for css classes (defaults to 'cc')\n\t\t */\n\t\tprefix?: string;\n\t};\n\t/**\n\t * options related to charting data\n\t */\n\tdata?: {\n\t\t/**\n\t\t * identifier for data groups\n\t\t */\n\t\tgroupMapsTo?: string;\n\t\t/**\n\t\t * used to simulate data loading in skeleton way\n\t\t */\n\t\tloading?: boolean;\n\t\t/**\n\t\t * options related to pre-selected data groups\n\t\t * Remains empty if every legend item is active or dataset doesn't have the data groups.\n\t\t */\n\t\tselectedGroups?: string[];\n\t};\n\t/**\n\t * options related to color scales\n\t */\n\tcolor?: {\n\t\t/**\n\t\t * e.g. { 'Dataset 1': 'blue' }\n\t\t */\n\t\tscale?: object;\n\t\t/**\n\t\t * use a carbon dataviz preset color palette\n\t\t * put the index (selection of which variant)\n\t\t */\n\t\tpairing?: {\n\t\t\t/**\n\t\t\t * the number of color variants in the palette (defaults to using the number of data groups in the given data)\n\t\t\t */\n\t\t\tnumberOfVariants?: number;\n\t\t\t/**\n\t\t\t * the option number of the color paring\n\t\t\t */\n\t\t\toption?: number;\n\t\t};\n\t\t/*\n\t\t * options related to gradient\n\t\t * e.g. { enabled: true }\n\t\t */\n\t\tgradient?: object;\n\t};\n}\n\n/**\n * Options common to any chart with an axis\n */\nexport interface AxisChartOptions extends BaseChartOptions {\n\taxes?: AxesOptions;\n\tgrid?: GridOptions;\n\ttimeScale?: TimeScaleOptions;\n\t/**\n\t * zoombar configuration\n\t */\n\tzoomBar?: ZoomBarsOptions;\n}\n\n/**\n * options specific to boxplot charts\n */\nexport interface BoxplotChartOptions extends AxisChartOptions {}\n\n/**\n * options specific to bar charts\n */\nexport interface BarChartOptions extends AxisChartOptions {\n\tbars?: BarOptions;\n}\n\n/**\n * options specific to stacked bar charts\n */\nexport interface StackedBarChartOptions extends BarChartOptions {\n\tbars?: StackedBarOptions;\n}\n\n/**\n * options specific to scatter charts\n */\nexport interface ScatterChartOptions extends AxisChartOptions {\n\t/**\n\t * options for the points\n\t */\n\tpoints?: {\n\t\t/**\n\t\t * sets the radius of the point\n\t\t */\n\t\tradius: number;\n\t\tfillOpacity?: number;\n\t\tfilled?: boolean;\n\t\tenabled?: boolean;\n\t};\n}\n\n/**\n * options specific to lollipop charts\n */\nexport interface LollipopChartOptions extends ScatterChartOptions {}\n\n/**\n * options specific to bubble charts\n */\nexport interface BubbleChartOptions extends AxisChartOptions {\n\t/**\n\t * options for the individual bubbles\n\t */\n\tbubble?: {\n\t\t/**\n\t\t * the key to lookup in charting data for the bubble radius value\n\t\t */\n\t\tradiusMapsTo?: string;\n\t\t/**\n\t\t * A function that would determine the range of the bubble radius to use\n\t\t * Returns an array with the 1st value being the min and the 2nd value being the max radius\n\t\t */\n\t\tradiusRange?: Function;\n\t\t/**\n\t\t * Opacity of the fills used within each circle\n\t\t */\n\t\tfillOpacity?: number;\n\t\t/**\n\t\t * enabled scatter dot or not\n\t\t */\n\t\tenabled?: boolean;\n\t};\n}\n\n/**\n * options specific to line charts\n */\nexport interface LineChartOptions extends ScatterChartOptions {\n\t/**\n\t * options for the curve of the line\n\t */\n\tcurve?:\n\t\t| string\n\t\t| {\n\t\t\t\tname: string;\n\t\t };\n}\n\n/**\n * options specific to area charts\n */\nexport interface AreaChartOptions extends AxisChartOptions {\n\t/**\n\t * options for the curve of the line\n\t */\n\tcurve?:\n\t\t| string\n\t\t| {\n\t\t\t\tname: string;\n\t\t };\n\t/**\n\t * options to bound the area of the chart\n\t */\n\tbounds?: {\n\t\tupperBoundMapsTo?: string;\n\t\tlowerBoundMapsTo?: string;\n\t};\n}\n\n/**\n * options specific to area charts\n */\nexport interface StackedAreaChartOptions extends ScatterChartOptions {\n\t/**\n\t * options for the curve of the line\n\t */\n\tcurve?:\n\t\t| string\n\t\t| {\n\t\t\t\tname: string;\n\t\t };\n}\n\n/**\n * options specific to pie charts\n */\nexport interface PieChartOptions extends BaseChartOptions {\n\tpie?: {\n\t\tlabels?: {\n\t\t\tformatter?: Function;\n\t\t\tenabled?: Boolean;\n\t\t};\n\t\talignment?: Alignments;\n\t};\n}\n\n/**\n * options specific to gauge charts\n */\nexport interface GaugeChartOptions extends BaseChartOptions {\n\tgauge?: {\n\t\tarcWidth?: number;\n\t\tdeltaArrow?: {\n\t\t\tdirection?: ArrowDirections;\n\t\t\tsize?: Function;\n\t\t\tenabled: Boolean;\n\t\t};\n\t\tstatus?: Statuses;\n\t\tdeltaFontSize?: Function;\n\t\tnumberSpacing?: number;\n\t\tnumberFormatter?: Function;\n\t\tvalueFontSize?: Function;\n\t\ttype?: GaugeTypes;\n\t\talignment?: Alignments;\n\t};\n}\n\n/**\n * options specific to donut charts\n */\nexport interface DonutChartOptions extends PieChartOptions {\n\tdonut?: {\n\t\tcenter?: {\n\t\t\tlabel?: string;\n\t\t\tnumber?: number;\n\t\t\tnumberFontSize?: Function;\n\t\t\ttitleFontSize?: Function;\n\t\t\ttitleYPosition?: Function;\n\t\t\tnumberFormatter?: Function;\n\t\t};\n\t\talignment?: Alignments;\n\t};\n}\n\nexport interface MeterChartOptions extends BaseChartOptions {\n\tmeter?: {\n\t\tpeak?: number;\n\t\tstatus?: {\n\t\t\tranges: Array<{\n\t\t\t\trange: [number, number];\n\t\t\t\tstatus: Statuses;\n\t\t\t}>;\n\t\t};\n\t\theight?: number;\n\t\ttitle?: {\n\t\t\tpercentageIndicator?: {\n\t\t\t\t/**\n\t\t\t\t * rendering of the percentage value relative to the dataset within title\n\t\t\t\t */\n\t\t\t\tenabled?: boolean;\n\t\t\t};\n\t\t};\n\t};\n}\n\n/**\n * options specific to radar charts\n */\nexport interface RadarChartOptions extends BaseChartOptions {\n\tradar?: {\n\t\taxes: {\n\t\t\tangle: string;\n\t\t\tvalue: string;\n\t\t};\n\t\talignment?: Alignments;\n\t};\n}\n\n/**\n * options specific to combo charts\n */\nexport interface ComboChartOptions extends AxisChartOptions {\n\tcomboChartTypes: Array<{\n\t\ttype: ChartTypes | any;\n\t\toptions?: object;\n\t\tcorrespondingDatasets: Array<string>;\n\t}>;\n}\n\n/*\n * options specific to treemap charts\n */\nexport interface TreemapChartOptions extends BaseChartOptions {}\n"]}
1
+ {"version":3,"file":"charts.js","sourceRoot":"","sources":["charts.ts"],"names":[],"mappings":"","sourcesContent":["import {\n\tGaugeTypes,\n\tStatuses,\n\tArrowDirections,\n\tAlignments,\n\tChartTypes,\n} from './enums';\nimport {\n\tLegendOptions,\n\tTooltipOptions,\n\tGridOptions,\n\tAxesOptions,\n\tZoomBarsOptions,\n} from './index';\nimport { BarOptions, StackedBarOptions } from './components';\nimport { TimeScaleOptions } from './axis-scales';\n\n/**\n * Base chart options common to any chart\n */\nexport interface BaseChartOptions {\n\t/**\n\t * Optionally specify a title for the chart\n\t */\n\ttitle?: string;\n\t/**\n\t * boolean to disable animations (enabled by default)\n\t */\n\tanimations?: boolean;\n\t/**\n\t * boolean to prevent the container from resizing\n\t */\n\tresizable?: boolean;\n\t/**\n\t * Optionally specify a width for the chart\n\t */\n\twidth?: string;\n\t/**\n\t * Optionally specify a height for the chart\n\t */\n\theight?: string;\n\t/**\n\t * tooltip configuration\n\t */\n\ttooltip?: TooltipOptions;\n\t/**\n\t * legend configuration\n\t */\n\tlegend?: LegendOptions;\n\t/**\n\t * Optional function to determine whether is filled based on datasetLabel, label, and/or data\n\t */\n\tgetIsFilled?: (\n\t\tdatasetLabel: any,\n\t\tlabel?: any,\n\t\tdata?: any,\n\t\tdefaultFilled?: boolean\n\t) => boolean;\n\t/**\n\t * Optional function to generate the fill color based on datasetLabel, label, and/or data\n\t */\n\tgetFillColor?: (\n\t\tdatasetLabel: any,\n\t\tlabel?: any,\n\t\tdata?: any,\n\t\tdefaultFillColor?: string\n\t) => string;\n\t/**\n\t * Optional function to generate the stroke color based on datasetLabel, label, and/or data\n\t */\n\tgetStrokeColor?: (\n\t\tdatasetLabel: any,\n\t\tlabel?: any,\n\t\tdata?: any,\n\t\tdefaultStrokeColor?: string\n\t) => string;\n\t/**\n\t * stylesheet options\n\t */\n\tstyle?: {\n\t\t/**\n\t\t * optional prefixing string for css classes (defaults to 'cc')\n\t\t */\n\t\tprefix?: string;\n\t};\n\t/**\n\t * options related to charting data\n\t */\n\tdata?: {\n\t\t/**\n\t\t * identifier for data groups\n\t\t */\n\t\tgroupMapsTo?: string;\n\t\t/**\n\t\t * used to simulate data loading in skeleton way\n\t\t */\n\t\tloading?: boolean;\n\t\t/**\n\t\t * options related to pre-selected data groups\n\t\t * Remains empty if every legend item is active or dataset doesn't have the data groups.\n\t\t */\n\t\tselectedGroups?: string[];\n\t};\n\t/**\n\t * options related to color scales\n\t */\n\tcolor?: {\n\t\t/**\n\t\t * e.g. { 'Dataset 1': 'blue' }\n\t\t */\n\t\tscale?: object;\n\t\t/**\n\t\t * use a carbon dataviz preset color palette\n\t\t * put the index (selection of which variant)\n\t\t */\n\t\tpairing?: {\n\t\t\t/**\n\t\t\t * the number of color variants in the palette (defaults to using the number of data groups in the given data)\n\t\t\t */\n\t\t\tnumberOfVariants?: number;\n\t\t\t/**\n\t\t\t * the option number of the color paring\n\t\t\t */\n\t\t\toption?: number;\n\t\t};\n\t\t/*\n\t\t * options related to gradient\n\t\t * e.g. { enabled: true }\n\t\t */\n\t\tgradient?: object;\n\t};\n}\n\n/**\n * Options common to any chart with an axis\n */\nexport interface AxisChartOptions extends BaseChartOptions {\n\taxes?: AxesOptions;\n\tgrid?: GridOptions;\n\ttimeScale?: TimeScaleOptions;\n\t/**\n\t * zoombar configuration\n\t */\n\tzoomBar?: ZoomBarsOptions;\n}\n\n/**\n * options specific to boxplot charts\n */\nexport interface BoxplotChartOptions extends AxisChartOptions {}\n\n/**\n * options specific to bar charts\n */\nexport interface BarChartOptions extends AxisChartOptions {\n\tbars?: BarOptions;\n}\n\n/**\n * options specific to stacked bar charts\n */\nexport interface StackedBarChartOptions extends BarChartOptions {\n\tbars?: StackedBarOptions;\n}\n\n/**\n * options specific to scatter charts\n */\nexport interface ScatterChartOptions extends AxisChartOptions {\n\t/**\n\t * options for the points\n\t */\n\tpoints?: {\n\t\t/**\n\t\t * sets the radius of the point\n\t\t */\n\t\tradius: number;\n\t\tfillOpacity?: number;\n\t\tfilled?: boolean;\n\t\tenabled?: boolean;\n\t};\n}\n\n/**\n * options specific to lollipop charts\n */\nexport interface LollipopChartOptions extends ScatterChartOptions {}\n\n/**\n * options specific to bubble charts\n */\nexport interface BubbleChartOptions extends AxisChartOptions {\n\t/**\n\t * options for the individual bubbles\n\t */\n\tbubble?: {\n\t\t/**\n\t\t * the key to lookup in charting data for the bubble radius value\n\t\t */\n\t\tradiusMapsTo?: string;\n\t\t/**\n\t\t * A function that would determine the range of the bubble radius to use\n\t\t * Returns an array with the 1st value being the min and the 2nd value being the max radius\n\t\t */\n\t\tradiusRange?: Function;\n\t\t/**\n\t\t * Opacity of the fills used within each circle\n\t\t */\n\t\tfillOpacity?: number;\n\t\t/**\n\t\t * enabled scatter dot or not\n\t\t */\n\t\tenabled?: boolean;\n\t};\n}\n\n/**\n * options specific to line charts\n */\nexport interface LineChartOptions extends ScatterChartOptions {\n\t/**\n\t * options for the curve of the line\n\t */\n\tcurve?:\n\t\t| string\n\t\t| {\n\t\t\t\tname: string;\n\t\t };\n}\n\n/**\n * options specific to area charts\n */\nexport interface AreaChartOptions extends AxisChartOptions {\n\t/**\n\t * options for the curve of the line\n\t */\n\tcurve?:\n\t\t| string\n\t\t| {\n\t\t\t\tname: string;\n\t\t };\n\t/**\n\t * options to bound the area of the chart\n\t */\n\tbounds?: {\n\t\tupperBoundMapsTo?: string;\n\t\tlowerBoundMapsTo?: string;\n\t};\n}\n\n/**\n * options specific to area charts\n */\nexport interface StackedAreaChartOptions extends ScatterChartOptions {\n\t/**\n\t * options for the curve of the line\n\t */\n\tcurve?:\n\t\t| string\n\t\t| {\n\t\t\t\tname: string;\n\t\t };\n}\n\n/**\n * options specific to pie charts\n */\nexport interface PieChartOptions extends BaseChartOptions {\n\tpie?: {\n\t\tlabels?: {\n\t\t\tformatter?: Function;\n\t\t\tenabled?: Boolean;\n\t\t};\n\t\talignment?: Alignments;\n\t};\n}\n\n/**\n * options specific to gauge charts\n */\nexport interface GaugeChartOptions extends BaseChartOptions {\n\tgauge?: {\n\t\tarcWidth?: number;\n\t\tdeltaArrow?: {\n\t\t\tdirection?: ArrowDirections;\n\t\t\tsize?: Function;\n\t\t\tenabled: Boolean;\n\t\t};\n\t\tshowPercentageSymbol?: Boolean;\n\t\tstatus?: Statuses;\n\t\tdeltaFontSize?: Function;\n\t\tnumberSpacing?: number;\n\t\tnumberFormatter?: Function;\n\t\tvalueFontSize?: Function;\n\t\ttype?: GaugeTypes;\n\t\talignment?: Alignments;\n\t};\n}\n\n/**\n * options specific to donut charts\n */\nexport interface DonutChartOptions extends PieChartOptions {\n\tdonut?: {\n\t\tcenter?: {\n\t\t\tlabel?: string;\n\t\t\tnumber?: number;\n\t\t\tnumberFontSize?: Function;\n\t\t\ttitleFontSize?: Function;\n\t\t\ttitleYPosition?: Function;\n\t\t\tnumberFormatter?: Function;\n\t\t};\n\t\talignment?: Alignments;\n\t};\n}\n\nexport interface MeterChartOptions extends BaseChartOptions {\n\tmeter?: {\n\t\tpeak?: number;\n\t\tstatus?: {\n\t\t\tranges: Array<{\n\t\t\t\trange: [number, number];\n\t\t\t\tstatus: Statuses;\n\t\t\t}>;\n\t\t};\n\t\theight?: number;\n\t\ttitle?: {\n\t\t\tpercentageIndicator?: {\n\t\t\t\t/**\n\t\t\t\t * rendering of the percentage value relative to the dataset within title\n\t\t\t\t */\n\t\t\t\tenabled?: boolean;\n\t\t\t};\n\t\t};\n\t};\n}\n\n/**\n * options specific to radar charts\n */\nexport interface RadarChartOptions extends BaseChartOptions {\n\tradar?: {\n\t\taxes: {\n\t\t\tangle: string;\n\t\t\tvalue: string;\n\t\t};\n\t\talignment?: Alignments;\n\t};\n}\n\n/**\n * options specific to combo charts\n */\nexport interface ComboChartOptions extends AxisChartOptions {\n\tcomboChartTypes: Array<{\n\t\ttype: ChartTypes | any;\n\t\toptions?: object;\n\t\tcorrespondingDatasets: Array<string>;\n\t}>;\n}\n\n/*\n * options specific to treemap charts\n */\nexport interface TreemapChartOptions extends BaseChartOptions {}\n"]}
package/model.js CHANGED
@@ -42,9 +42,7 @@ var ChartModel = /** @class */ (function () {
42
42
  var axesOptions = Tools.getProperty(options, 'axes');
43
43
  // filter out the groups that are irrelevant to the component
44
44
  if (groups) {
45
- allData = allData.filter(function (item) {
46
- return groups.includes(item.group);
47
- });
45
+ allData = allData.filter(function (item) { return groups.includes(item.group); });
48
46
  }
49
47
  if (axesOptions) {
50
48
  Object.keys(axesOptions).forEach(function (axis) {
@@ -55,7 +53,9 @@ var ChartModel = /** @class */ (function () {
55
53
  scaleType === ScaleTypes.LOG) {
56
54
  allData = allData.map(function (datum) {
57
55
  var _a;
58
- return __assign(__assign({}, datum), (_a = {}, _a[mapsTo] = Number(datum[mapsTo]), _a));
56
+ return __assign(__assign({}, datum), (_a = {}, _a[mapsTo] = datum[mapsTo] === null
57
+ ? datum[mapsTo]
58
+ : Number(datum[mapsTo]), _a));
59
59
  });
60
60
  }
61
61
  // Check for custom domain
package/model.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["model.ts"],"names":[],"mappings":"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","sourcesContent":["// Internal Imports\nimport * as Configuration from './configuration';\nimport { Tools } from './tools';\nimport { Events, ScaleTypes, ColorClassNameTypes } from './interfaces';\n\n// D3\nimport { map } from 'd3-collection';\nimport { scaleOrdinal } from 'd3-scale';\nimport { stack } from 'd3-shape';\n\n/** The charting model layer which includes mainly the chart data and options,\n * as well as some misc. information to be shared among components */\nexport class ChartModel {\n\tprotected services: any;\n\n\t// Internal Model state\n\tprotected state: any = {\n\t\toptions: {},\n\t};\n\n\t// Data labels\n\t/**\n\t * A list of all the data groups that have existed within the lifetime of the chart\n\t * @type string[]\n\t */\n\tprotected allDataGroups: string[];\n\n\t// Fill scales & fill related objects\n\tprotected colorScale: any = {};\n\n\tprotected colorClassNames: any = {};\n\n\tconstructor(services: any) {\n\t\tthis.services = services;\n\t}\n\n\tgetAllDataFromDomain(groups?) {\n\t\tif (!this.getData()) {\n\t\t\treturn null;\n\t\t}\n\t\tconst options = this.getOptions();\n\t\t// Remove datasets that have been disabled\n\t\tlet allData = this.getData();\n\t\tconst dataGroups = this.getDataGroups();\n\t\tconst { groupMapsTo } = Tools.getProperty(options, 'data');\n\t\tconst axesOptions = Tools.getProperty(options, 'axes');\n\n\t\t// filter out the groups that are irrelevant to the component\n\t\tif (groups) {\n\t\t\tallData = allData.filter((item) => {\n\t\t\t\treturn groups.includes(item.group);\n\t\t\t});\n\t\t}\n\n\t\tif (axesOptions) {\n\t\t\tObject.keys(axesOptions).forEach((axis) => {\n\t\t\t\tconst mapsTo = axesOptions[axis].mapsTo;\n\t\t\t\tconst scaleType = axesOptions[axis].scaleType;\n\t\t\t\t// make sure linear/log values are numbers\n\t\t\t\tif (\n\t\t\t\t\tscaleType === ScaleTypes.LINEAR ||\n\t\t\t\t\tscaleType === ScaleTypes.LOG\n\t\t\t\t) {\n\t\t\t\t\tallData = allData.map((datum) => {\n\t\t\t\t\t\treturn { ...datum, [mapsTo]: Number(datum[mapsTo]) };\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\t// Check for custom domain\n\t\t\t\tif (mapsTo && axesOptions[axis].domain) {\n\t\t\t\t\tif (scaleType === ScaleTypes.LABELS) {\n\t\t\t\t\t\tallData = allData.filter((datum) =>\n\t\t\t\t\t\t\taxesOptions[axis].domain.includes(datum[mapsTo])\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconst [start, end] = axesOptions[axis].domain;\n\t\t\t\t\t\t// Filter out data outside domain if that datapoint is using that axis (has mapsTo property)\n\t\t\t\t\t\tallData = allData.filter(\n\t\t\t\t\t\t\t(datum) =>\n\t\t\t\t\t\t\t\t!(mapsTo in datum) ||\n\t\t\t\t\t\t\t\t(datum[mapsTo] >= start && datum[mapsTo] <= end)\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\treturn allData.filter((datum) => {\n\t\t\treturn dataGroups.find(\n\t\t\t\t(group) => group.name === datum[groupMapsTo]\n\t\t\t);\n\t\t});\n\t}\n\n\t/**\n\t * Charts that have group configs passed into them, only want to retrieve the display data relevant to that chart\n\t * @param groups the included datasets for the particular chart\n\t */\n\tgetDisplayData(groups?) {\n\t\tif (!this.get('data')) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst { ACTIVE } = Configuration.legend.items.status;\n\t\tconst dataGroups = this.getDataGroups(groups);\n\t\tconst { groupMapsTo } = this.getOptions().data;\n\t\tconst allDataFromDomain = this.getAllDataFromDomain(groups);\n\n\t\treturn allDataFromDomain.filter((datum) => {\n\t\t\treturn dataGroups.find(\n\t\t\t\t(dataGroup) =>\n\t\t\t\t\tdataGroup.name === datum[groupMapsTo] &&\n\t\t\t\t\tdataGroup.status === ACTIVE\n\t\t\t);\n\t\t});\n\t}\n\n\tgetData() {\n\t\treturn this.get('data');\n\t}\n\n\tisDataEmpty() {\n\t\treturn !this.getData().length;\n\t}\n\n\t/**\n\t *\n\t * @param newData The new raw data to be set\n\t */\n\tsetData(newData) {\n\t\tconst sanitizedData = this.sanitize(Tools.clone(newData));\n\t\tconst dataGroups = this.generateDataGroups(sanitizedData);\n\n\t\tthis.set({\n\t\t\tdata: sanitizedData,\n\t\t\tdataGroups,\n\t\t});\n\n\t\treturn sanitizedData;\n\t}\n\n\tgetDataGroups(groups?) {\n\t\tconst isDataLoading = Tools.getProperty(\n\t\t\tthis.getOptions(),\n\t\t\t'data',\n\t\t\t'loading'\n\t\t);\n\n\t\t// No data should be displayed while data is still loading\n\t\tif (isDataLoading) {\n\t\t\treturn [];\n\t\t}\n\n\t\t// if its a combo chart, the specific chart will pass the model the groups it needs\n\t\tif (groups) {\n\t\t\treturn this.get('dataGroups').filter((dataGroup) =>\n\t\t\t\tgroups.includes(dataGroup.name)\n\t\t\t);\n\t\t}\n\t\treturn this.get('dataGroups');\n\t}\n\n\tgetActiveDataGroups(groups?) {\n\t\tconst { ACTIVE } = Configuration.legend.items.status;\n\n\t\treturn this.getDataGroups(groups).filter(\n\t\t\t(dataGroup) => dataGroup.status === ACTIVE\n\t\t);\n\t}\n\n\tgetDataGroupNames(groups?) {\n\t\tconst dataGroups = this.getDataGroups(groups);\n\t\treturn dataGroups.map((dataGroup) => dataGroup.name);\n\t}\n\n\tgetActiveDataGroupNames(groups?) {\n\t\tconst activeDataGroups = this.getActiveDataGroups(groups);\n\t\treturn activeDataGroups.map((dataGroup) => dataGroup.name);\n\t}\n\n\tgetGroupedData(groups?) {\n\t\tconst displayData = this.getDisplayData(groups);\n\t\tconst groupedData = {};\n\t\tconst { groupMapsTo } = this.getOptions().data;\n\n\t\tdisplayData.map((datum) => {\n\t\t\tconst group = datum[groupMapsTo];\n\t\t\tif (\n\t\t\t\tgroupedData[group] !== null &&\n\t\t\t\tgroupedData[group] !== undefined\n\t\t\t) {\n\t\t\t\tgroupedData[group].push(datum);\n\t\t\t} else {\n\t\t\t\tgroupedData[group] = [datum];\n\t\t\t}\n\t\t});\n\n\t\treturn Object.keys(groupedData).map((groupName) => ({\n\t\t\tname: groupName,\n\t\t\tdata: groupedData[groupName],\n\t\t}));\n\t}\n\n\tgetDataValuesGroupedByKeys(groups?) {\n\t\tconst options = this.getOptions();\n\t\tconst { groupMapsTo } = options.data;\n\t\tconst displayData = this.getDisplayData(groups);\n\n\t\tconst stackKeys = map(displayData, (datum) => {\n\t\t\tconst domainIdentifier = this.services.cartesianScales.getDomainIdentifier(\n\t\t\t\tdatum\n\t\t\t);\n\n\t\t\treturn datum[domainIdentifier];\n\t\t}).keys();\n\n\t\tconst axisPosition = this.services.cartesianScales.domainAxisPosition;\n\t\tconst scaleType = options.axes[axisPosition].scaleType;\n\n\t\t// Sort keys\n\t\tif (scaleType === ScaleTypes.TIME) {\n\t\t\tstackKeys.sort((a: any, b: any) => {\n\t\t\t\tconst dateA: any = new Date(a);\n\t\t\t\tconst dateB: any = new Date(b);\n\n\t\t\t\treturn dateA - dateB;\n\t\t\t});\n\t\t} else if (\n\t\t\tscaleType === ScaleTypes.LOG ||\n\t\t\tscaleType === ScaleTypes.LINEAR\n\t\t) {\n\t\t\tstackKeys.sort((a: any, b: any) => a - b);\n\t\t}\n\n\t\tconst dataGroupNames = this.getDataGroupNames();\n\n\t\treturn stackKeys.map((key) => {\n\t\t\tconst correspondingValues = { sharedStackKey: key };\n\t\t\tdataGroupNames.forEach((dataGroupName) => {\n\t\t\t\tconst correspondingDatum = displayData.find((datum) => {\n\t\t\t\t\tconst domainIdentifier = this.services.cartesianScales.getDomainIdentifier(\n\t\t\t\t\t\tdatum\n\t\t\t\t\t);\n\t\t\t\t\treturn (\n\t\t\t\t\t\tdatum[groupMapsTo] === dataGroupName &&\n\t\t\t\t\t\tdatum[domainIdentifier].toString() === key\n\t\t\t\t\t);\n\t\t\t\t});\n\n\t\t\t\tconst rangeIdentifier = this.services.cartesianScales.getRangeIdentifier(\n\t\t\t\t\tcorrespondingValues\n\t\t\t\t);\n\t\t\t\tcorrespondingValues[dataGroupName] = correspondingDatum\n\t\t\t\t\t? correspondingDatum[rangeIdentifier]\n\t\t\t\t\t: null;\n\t\t\t});\n\t\t\treturn correspondingValues;\n\t\t}) as any;\n\t}\n\n\tgetStackedData({ percentage = false, groups = null }) {\n\t\tconst options = this.getOptions();\n\t\tconst { groupMapsTo } = options.data;\n\n\t\tconst dataGroupNames = this.getDataGroupNames(groups);\n\t\tconst dataValuesGroupedByKeys = this.getDataValuesGroupedByKeys(groups);\n\n\t\tif (percentage) {\n\t\t\tconst maxByKey = Tools.fromPairs(\n\t\t\t\tdataValuesGroupedByKeys.map((d: any) => [d.sharedStackKey, 0])\n\t\t\t);\n\n\t\t\tdataValuesGroupedByKeys.forEach((d: any) => {\n\t\t\t\tdataGroupNames.forEach((name) => {\n\t\t\t\t\tmaxByKey[d.sharedStackKey] += d[name];\n\t\t\t\t});\n\t\t\t});\n\n\t\t\t// cycle through data values to get percentage\n\t\t\tdataValuesGroupedByKeys.forEach((d: any) => {\n\t\t\t\tdataGroupNames.forEach((name) => {\n\t\t\t\t\tif (maxByKey[d.sharedStackKey]) {\n\t\t\t\t\t\td[name] = (d[name] / maxByKey[d.sharedStackKey]) * 100;\n\t\t\t\t\t} else {\n\t\t\t\t\t\td[name] = 0;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\n\t\treturn stack()\n\t\t\t.keys(dataGroupNames)(dataValuesGroupedByKeys)\n\t\t\t.map((series, i) => {\n\t\t\t\t// Add data group names to each series\n\t\t\t\treturn Object.keys(series)\n\t\t\t\t\t.filter((key: any) => !isNaN(key))\n\t\t\t\t\t.map((key) => {\n\t\t\t\t\t\tconst element = series[key];\n\t\t\t\t\t\telement[groupMapsTo] = dataGroupNames[i];\n\n\t\t\t\t\t\treturn element;\n\t\t\t\t\t});\n\t\t\t});\n\t}\n\n\t/**\n\t * @return {Object} The chart's options\n\t */\n\tgetOptions() {\n\t\treturn this.state.options;\n\t}\n\n\tset(newState: any, configs?: any) {\n\t\tthis.state = Object.assign({}, this.state, newState);\n\t\tconst newConfig = Object.assign(\n\t\t\t{ skipUpdate: false, animate: true }, // default configs\n\t\t\tconfigs\n\t\t);\n\t\tif (!newConfig.skipUpdate) {\n\t\t\tthis.update(newConfig.animate);\n\t\t}\n\t}\n\n\tget(property?: string) {\n\t\tif (property) {\n\t\t\treturn this.state[property];\n\t\t} else {\n\t\t\treturn this.state;\n\t\t}\n\t}\n\n\t/**\n\t *\n\t * @param newOptions New options to be set\n\t */\n\tsetOptions(newOptions) {\n\t\tthis.set({\n\t\t\toptions: Tools.merge(this.getOptions(), newOptions),\n\t\t});\n\t}\n\n\t/**\n\t *\n\t * Updates miscellanous information within the model\n\t * such as the color scales, or the legend data labels\n\t */\n\tupdate(animate = true) {\n\t\tif (!this.getDisplayData()) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.updateAllDataGroups();\n\n\t\tthis.setCustomColorScale();\n\t\tthis.setColorClassNames();\n\t\tthis.services.events.dispatchEvent(Events.Model.UPDATE, { animate });\n\t}\n\n\t/*\n\t * Data labels\n\t */\n\ttoggleDataLabel(changedLabel: string) {\n\t\tconst { ACTIVE, DISABLED } = Configuration.legend.items.status;\n\t\tconst dataGroups = this.getDataGroups();\n\n\t\tconst hasDeactivatedItems = dataGroups.some(\n\t\t\t(group) => group.status === DISABLED\n\t\t);\n\t\tconst activeItems = dataGroups.filter(\n\t\t\t(group) => group.status === ACTIVE\n\t\t);\n\n\t\t// If there are deactivated items, toggle \"changedLabel\"\n\t\tif (hasDeactivatedItems) {\n\t\t\t// If the only active item is being toggled\n\t\t\t// Activate all items\n\t\t\tif (\n\t\t\t\tactiveItems.length === 1 &&\n\t\t\t\tactiveItems[0].name === changedLabel\n\t\t\t) {\n\t\t\t\t// If every item is active, then enable \"changedLabel\" and disable all other items\n\t\t\t\tdataGroups.forEach((group, i) => {\n\t\t\t\t\tdataGroups[i].status = ACTIVE;\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tconst indexToChange = dataGroups.findIndex(\n\t\t\t\t\t(group) => group.name === changedLabel\n\t\t\t\t);\n\t\t\t\tdataGroups[indexToChange].status =\n\t\t\t\t\tdataGroups[indexToChange].status === DISABLED\n\t\t\t\t\t\t? ACTIVE\n\t\t\t\t\t\t: DISABLED;\n\t\t\t}\n\t\t} else {\n\t\t\t// If every item is active, then enable \"changedLabel\" and disable all other items\n\t\t\tdataGroups.forEach((group, i) => {\n\t\t\t\tdataGroups[i].status =\n\t\t\t\t\tgroup.name === changedLabel ? ACTIVE : DISABLED;\n\t\t\t});\n\t\t}\n\n\t\t// Updates selected groups\n\t\tconst updatedActiveItems = dataGroups.filter(\n\t\t\t(group) => group.status === ACTIVE\n\t\t);\n\t\tconst options = this.getOptions();\n\n\t\tconst hasUpdatedDeactivatedItems = dataGroups.some(\n\t\t\t(group) => group.status === DISABLED\n\t\t);\n\n\t\t// If there are deactivated items, map the item name into selected groups\n\t\tif (hasUpdatedDeactivatedItems) {\n\t\t\toptions.data.selectedGroups = updatedActiveItems.map(\n\t\t\t\t(activeItem) => activeItem.name\n\t\t\t);\n\t\t} else {\n\t\t\t// If every item is active, clear array\n\t\t\toptions.data.selectedGroups = [];\n\t\t}\n\n\t\t// dispatch legend filtering event with the status of all the dataLabels\n\t\tthis.services.events.dispatchEvent(Events.Legend.ITEMS_UPDATE, {\n\t\t\tdataGroups,\n\t\t});\n\n\t\t// Update model\n\t\tthis.set({\n\t\t\tdataGroups,\n\t\t});\n\t}\n\n\t/**\n\t * Should the data point be filled?\n\t * @param group\n\t * @param key\n\t * @param value\n\t * @param defaultFilled the default for this chart\n\t */\n\tgetIsFilled(group: any, key?: any, data?: any, defaultFilled?: boolean) {\n\t\tconst options = this.getOptions();\n\t\tif (options.getIsFilled) {\n\t\t\treturn options.getIsFilled(group, key, data, defaultFilled);\n\t\t} else {\n\t\t\treturn defaultFilled;\n\t\t}\n\t}\n\n\tgetFillColor(group: any, key?: any, data?: any) {\n\t\tconst options = this.getOptions();\n\t\tconst defaultFillColor = Tools.getProperty(this.colorScale, group);\n\n\t\tif (options.getFillColor) {\n\t\t\treturn options.getFillColor(group, key, data, defaultFillColor);\n\t\t} else {\n\t\t\treturn defaultFillColor;\n\t\t}\n\t}\n\n\tgetStrokeColor(group: any, key?: any, data?: any) {\n\t\tconst options = this.getOptions();\n\t\tconst defaultStrokeColor = Tools.getProperty(this.colorScale, group);\n\n\t\tif (options.getStrokeColor) {\n\t\t\treturn options.getStrokeColor(group, key, data, defaultStrokeColor);\n\t\t} else {\n\t\t\treturn defaultStrokeColor;\n\t\t}\n\t}\n\n\tisUserProvidedColorScaleValid() {\n\t\tconst userProvidedScale = Tools.getProperty(\n\t\t\tthis.getOptions(),\n\t\t\t'color',\n\t\t\t'scale'\n\t\t);\n\t\tconst dataGroups = this.getDataGroups();\n\n\t\tif (\n\t\t\tuserProvidedScale == null ||\n\t\t\tObject.keys(userProvidedScale).length == 0\n\t\t) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn dataGroups.some((dataGroup) =>\n\t\t\tObject.keys(userProvidedScale).includes(dataGroup.name)\n\t\t);\n\t}\n\n\tgetColorClassName(configs: {\n\t\tclassNameTypes: ColorClassNameTypes[];\n\t\tdataGroupName?: string;\n\t\toriginalClassName?: string;\n\t}) {\n\t\tconst colorPairingTag = this.colorClassNames(configs.dataGroupName);\n\t\tlet className = configs.originalClassName;\n\t\tconfigs.classNameTypes.forEach(\n\t\t\t(type) =>\n\t\t\t\t(className = configs.originalClassName\n\t\t\t\t\t? `${className} ${type}-${colorPairingTag}`\n\t\t\t\t\t: `${type}-${colorPairingTag}`)\n\t\t);\n\n\t\treturn className;\n\t}\n\n\t/**\n\t * For charts that might hold an associated status for their dataset\n\t */\n\tgetStatus() {\n\t\treturn null;\n\t}\n\n\tgetAllDataGroupsNames() {\n\t\treturn this.allDataGroups;\n\t}\n\n\t/**\n\t * Converts data provided in the older format to tabular\n\t *\n\t */\n\tprotected transformToTabularData(data) {\n\t\tconsole.warn(\n\t\t\t\"We've updated the charting data format to be tabular by default. The current format you're using is deprecated and will be removed in v1.0, read more here https://carbon-design-system.github.io/carbon-charts/?path=/story/tutorials--tabular-data-format\"\n\t\t);\n\t\tconst tabularData = [];\n\t\tconst { datasets, labels } = data;\n\n\t\t// Loop through all datasets\n\t\tdatasets.forEach((dataset) => {\n\t\t\t// Update each data point to the new format\n\t\t\tdataset.data.forEach((datum, i) => {\n\t\t\t\tlet group;\n\n\t\t\t\tconst datasetLabel = Tools.getProperty(dataset, 'label');\n\t\t\t\tif (datasetLabel === null) {\n\t\t\t\t\tconst correspondingLabel = Tools.getProperty(labels, i);\n\t\t\t\t\tif (correspondingLabel) {\n\t\t\t\t\t\tgroup = correspondingLabel;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tgroup = 'Ungrouped';\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tgroup = datasetLabel;\n\t\t\t\t}\n\n\t\t\t\tconst updatedDatum = {\n\t\t\t\t\tgroup,\n\t\t\t\t\tkey: labels[i],\n\t\t\t\t};\n\n\t\t\t\tif (isNaN(datum)) {\n\t\t\t\t\tupdatedDatum['value'] = datum.value;\n\t\t\t\t\tupdatedDatum['date'] = datum.date;\n\t\t\t\t} else {\n\t\t\t\t\tupdatedDatum['value'] = datum;\n\t\t\t\t}\n\n\t\t\t\ttabularData.push(updatedDatum);\n\t\t\t});\n\t\t});\n\n\t\treturn tabularData;\n\t}\n\n\tprotected getTabularData(data) {\n\t\t// if data is not an array\n\t\tif (!Array.isArray(data)) {\n\t\t\treturn this.transformToTabularData(data);\n\t\t}\n\n\t\treturn data;\n\t}\n\n\tprotected sanitize(data) {\n\t\tdata = this.getTabularData(data);\n\n\t\treturn data;\n\t}\n\n\t/*\n\t * Data groups\n\t */\n\tprotected updateAllDataGroups() {\n\t\t// allDataGroups is used to generate a color scale that applies\n\t\t// to all the groups. Now when the data updates, you might remove a group,\n\t\t// and then bring it back in a newer data update, therefore\n\t\t// the order of the groups in allDataGroups matters so that you'd never\n\t\t// have an incorrect color assigned to a group.\n\n\t\t// Also, a new group should only be added to allDataGroups if\n\t\t// it doesn't currently exist\n\n\t\tif (!this.allDataGroups) {\n\t\t\tthis.allDataGroups = this.getDataGroupNames();\n\t\t} else {\n\t\t\t// Loop through current data groups\n\t\t\tthis.getDataGroupNames().forEach((dataGroupName) => {\n\t\t\t\t// If group name hasn't been stored yet, store it\n\t\t\t\tif (this.allDataGroups.indexOf(dataGroupName) === -1) {\n\t\t\t\t\tthis.allDataGroups.push(dataGroupName);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\tprotected generateDataGroups(data) {\n\t\tconst { groupMapsTo } = this.getOptions().data;\n\t\tconst { ACTIVE, DISABLED } = Configuration.legend.items.status;\n\t\tconst options = this.getOptions();\n\n\t\tconst uniqueDataGroups = map(\n\t\t\tdata,\n\t\t\t(datum) => datum[groupMapsTo]\n\t\t).keys();\n\n\t\t// check if selectedGroups can be applied to chart with current data groups\n\t\tif (options.data.selectedGroups.length) {\n\t\t\tconst hasAllSelectedGroups = options.data.selectedGroups.every(\n\t\t\t\t(groupName) => uniqueDataGroups.includes(groupName)\n\t\t\t);\n\t\t\tif (!hasAllSelectedGroups) {\n\t\t\t\toptions.data.selectedGroups = [];\n\t\t\t}\n\t\t}\n\n\t\t// Get group status based on items in selected groups\n\t\tconst getStatus = (groupName) =>\n\t\t\t!options.data.selectedGroups.length ||\n\t\t\toptions.data.selectedGroups.includes(groupName)\n\t\t\t\t? ACTIVE\n\t\t\t\t: DISABLED;\n\n\t\treturn uniqueDataGroups.map((groupName) => ({\n\t\t\tname: groupName,\n\t\t\tstatus: getStatus(groupName),\n\t\t}));\n\t}\n\n\t/*\n\t * Fill scales\n\t */\n\tprotected setCustomColorScale() {\n\t\tif (!this.isUserProvidedColorScaleValid()) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst options = this.getOptions();\n\t\tconst userProvidedScale = Tools.getProperty(options, 'color', 'scale');\n\n\t\tObject.keys(userProvidedScale).forEach((dataGroup) => {\n\t\t\tif (!this.allDataGroups.includes(dataGroup)) {\n\t\t\t\tconsole.warn(`\"${dataGroup}\" does not exist in data groups.`);\n\t\t\t}\n\t\t});\n\n\t\t/**\n\t\t * Go through allDataGroups. If a data group has a color value provided\n\t\t * by the user, add that to the color range\n\t\t */\n\t\tconst providedDataGroups = this.allDataGroups.filter(\n\t\t\t(dataGroup) => userProvidedScale[dataGroup]\n\t\t);\n\n\t\tprovidedDataGroups.forEach(\n\t\t\t(dataGroup) =>\n\t\t\t\t(this.colorScale[dataGroup] = userProvidedScale[dataGroup])\n\t\t);\n\t}\n\n\t/*\n\t * Color palette\n\t */\n\tprotected setColorClassNames() {\n\t\tconst colorPairingOptions = Tools.getProperty(\n\t\t\tthis.getOptions(),\n\t\t\t'color',\n\t\t\t'pairing'\n\t\t);\n\n\t\t// Check if user has defined numberOfVariants (differ from given data)\n\t\tlet numberOfVariants = Tools.getProperty(\n\t\t\tcolorPairingOptions,\n\t\t\t'numberOfVariants'\n\t\t);\n\t\tif (!numberOfVariants || numberOfVariants < this.allDataGroups.length) {\n\t\t\tnumberOfVariants = this.allDataGroups.length;\n\t\t}\n\n\t\tlet pairingOption = Tools.getProperty(colorPairingOptions, 'option');\n\t\tconst colorPairingCounts = Configuration.color.pairingOptions;\n\n\t\t// If number of dataGroups is greater than 5, user 14-color palette\n\t\tconst numberOfColors = numberOfVariants > 5 ? 14 : numberOfVariants;\n\n\t\t// Use default palette if user choice is not in range\n\t\tpairingOption =\n\t\t\tpairingOption <= colorPairingCounts[`${numberOfColors}-color`]\n\t\t\t\t? pairingOption\n\t\t\t\t: 1;\n\n\t\t// Create color classes for graph, tooltip and stroke use\n\t\tconst colorPairing = this.allDataGroups.map(\n\t\t\t(dataGroup, index) =>\n\t\t\t\t`${numberOfColors}-${pairingOption}-${(index % 14) + 1}`\n\t\t);\n\n\t\t// Create default color classnames\n\t\tthis.colorClassNames = scaleOrdinal()\n\t\t\t.range(colorPairing)\n\t\t\t.domain(this.allDataGroups);\n\t}\n}\n"]}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["model.ts"],"names":[],"mappings":"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","sourcesContent":["// Internal Imports\nimport * as Configuration from './configuration';\nimport { Tools } from './tools';\nimport { Events, ScaleTypes, ColorClassNameTypes } from './interfaces';\n\n// D3\nimport { map } from 'd3-collection';\nimport { scaleOrdinal } from 'd3-scale';\nimport { stack } from 'd3-shape';\n\n/** The charting model layer which includes mainly the chart data and options,\n * as well as some misc. information to be shared among components */\nexport class ChartModel {\n\tprotected services: any;\n\n\t// Internal Model state\n\tprotected state: any = {\n\t\toptions: {},\n\t};\n\n\t// Data labels\n\t/**\n\t * A list of all the data groups that have existed within the lifetime of the chart\n\t * @type string[]\n\t */\n\tprotected allDataGroups: string[];\n\n\t// Fill scales & fill related objects\n\tprotected colorScale: any = {};\n\n\tprotected colorClassNames: any = {};\n\n\tconstructor(services: any) {\n\t\tthis.services = services;\n\t}\n\n\tgetAllDataFromDomain(groups?) {\n\t\tif (!this.getData()) {\n\t\t\treturn null;\n\t\t}\n\t\tconst options = this.getOptions();\n\t\t// Remove datasets that have been disabled\n\t\tlet allData = this.getData();\n\t\tconst dataGroups = this.getDataGroups();\n\t\tconst { groupMapsTo } = Tools.getProperty(options, 'data');\n\t\tconst axesOptions = Tools.getProperty(options, 'axes');\n\n\t\t// filter out the groups that are irrelevant to the component\n\t\tif (groups) {\n\t\t\tallData = allData.filter((item) => groups.includes(item.group));\n\t\t}\n\n\t\tif (axesOptions) {\n\t\t\tObject.keys(axesOptions).forEach((axis) => {\n\t\t\t\tconst mapsTo = axesOptions[axis].mapsTo;\n\t\t\t\tconst scaleType = axesOptions[axis].scaleType;\n\t\t\t\t// make sure linear/log values are numbers\n\t\t\t\tif (\n\t\t\t\t\tscaleType === ScaleTypes.LINEAR ||\n\t\t\t\t\tscaleType === ScaleTypes.LOG\n\t\t\t\t) {\n\t\t\t\t\tallData = allData.map((datum) => {\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t...datum,\n\t\t\t\t\t\t\t[mapsTo]:\n\t\t\t\t\t\t\t\tdatum[mapsTo] === null\n\t\t\t\t\t\t\t\t\t? datum[mapsTo]\n\t\t\t\t\t\t\t\t\t: Number(datum[mapsTo]),\n\t\t\t\t\t\t};\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\t// Check for custom domain\n\t\t\t\tif (mapsTo && axesOptions[axis].domain) {\n\t\t\t\t\tif (scaleType === ScaleTypes.LABELS) {\n\t\t\t\t\t\tallData = allData.filter((datum) =>\n\t\t\t\t\t\t\taxesOptions[axis].domain.includes(datum[mapsTo])\n\t\t\t\t\t\t);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconst [start, end] = axesOptions[axis].domain;\n\t\t\t\t\t\t// Filter out data outside domain if that datapoint is using that axis (has mapsTo property)\n\t\t\t\t\t\tallData = allData.filter(\n\t\t\t\t\t\t\t(datum) =>\n\t\t\t\t\t\t\t\t!(mapsTo in datum) ||\n\t\t\t\t\t\t\t\t(datum[mapsTo] >= start && datum[mapsTo] <= end)\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\treturn allData.filter((datum) => {\n\t\t\treturn dataGroups.find(\n\t\t\t\t(group) => group.name === datum[groupMapsTo]\n\t\t\t);\n\t\t});\n\t}\n\n\t/**\n\t * Charts that have group configs passed into them, only want to retrieve the display data relevant to that chart\n\t * @param groups the included datasets for the particular chart\n\t */\n\tgetDisplayData(groups?) {\n\t\tif (!this.get('data')) {\n\t\t\treturn null;\n\t\t}\n\n\t\tconst { ACTIVE } = Configuration.legend.items.status;\n\t\tconst dataGroups = this.getDataGroups(groups);\n\t\tconst { groupMapsTo } = this.getOptions().data;\n\t\tconst allDataFromDomain = this.getAllDataFromDomain(groups);\n\n\t\treturn allDataFromDomain.filter((datum) => {\n\t\t\treturn dataGroups.find(\n\t\t\t\t(dataGroup) =>\n\t\t\t\t\tdataGroup.name === datum[groupMapsTo] &&\n\t\t\t\t\tdataGroup.status === ACTIVE\n\t\t\t);\n\t\t});\n\t}\n\n\tgetData() {\n\t\treturn this.get('data');\n\t}\n\n\tisDataEmpty() {\n\t\treturn !this.getData().length;\n\t}\n\n\t/**\n\t *\n\t * @param newData The new raw data to be set\n\t */\n\tsetData(newData) {\n\t\tconst sanitizedData = this.sanitize(Tools.clone(newData));\n\t\tconst dataGroups = this.generateDataGroups(sanitizedData);\n\n\t\tthis.set({\n\t\t\tdata: sanitizedData,\n\t\t\tdataGroups,\n\t\t});\n\n\t\treturn sanitizedData;\n\t}\n\n\tgetDataGroups(groups?) {\n\t\tconst isDataLoading = Tools.getProperty(\n\t\t\tthis.getOptions(),\n\t\t\t'data',\n\t\t\t'loading'\n\t\t);\n\n\t\t// No data should be displayed while data is still loading\n\t\tif (isDataLoading) {\n\t\t\treturn [];\n\t\t}\n\n\t\t// if its a combo chart, the specific chart will pass the model the groups it needs\n\t\tif (groups) {\n\t\t\treturn this.get('dataGroups').filter((dataGroup) =>\n\t\t\t\tgroups.includes(dataGroup.name)\n\t\t\t);\n\t\t}\n\t\treturn this.get('dataGroups');\n\t}\n\n\tgetActiveDataGroups(groups?) {\n\t\tconst { ACTIVE } = Configuration.legend.items.status;\n\n\t\treturn this.getDataGroups(groups).filter(\n\t\t\t(dataGroup) => dataGroup.status === ACTIVE\n\t\t);\n\t}\n\n\tgetDataGroupNames(groups?) {\n\t\tconst dataGroups = this.getDataGroups(groups);\n\t\treturn dataGroups.map((dataGroup) => dataGroup.name);\n\t}\n\n\tgetActiveDataGroupNames(groups?) {\n\t\tconst activeDataGroups = this.getActiveDataGroups(groups);\n\t\treturn activeDataGroups.map((dataGroup) => dataGroup.name);\n\t}\n\n\tgetGroupedData(groups?) {\n\t\tconst displayData = this.getDisplayData(groups);\n\t\tconst groupedData = {};\n\t\tconst { groupMapsTo } = this.getOptions().data;\n\n\t\tdisplayData.map((datum) => {\n\t\t\tconst group = datum[groupMapsTo];\n\t\t\tif (\n\t\t\t\tgroupedData[group] !== null &&\n\t\t\t\tgroupedData[group] !== undefined\n\t\t\t) {\n\t\t\t\tgroupedData[group].push(datum);\n\t\t\t} else {\n\t\t\t\tgroupedData[group] = [datum];\n\t\t\t}\n\t\t});\n\n\t\treturn Object.keys(groupedData).map((groupName) => ({\n\t\t\tname: groupName,\n\t\t\tdata: groupedData[groupName],\n\t\t}));\n\t}\n\n\tgetDataValuesGroupedByKeys(groups?) {\n\t\tconst options = this.getOptions();\n\t\tconst { groupMapsTo } = options.data;\n\t\tconst displayData = this.getDisplayData(groups);\n\n\t\tconst stackKeys = map(displayData, (datum) => {\n\t\t\tconst domainIdentifier = this.services.cartesianScales.getDomainIdentifier(\n\t\t\t\tdatum\n\t\t\t);\n\n\t\t\treturn datum[domainIdentifier];\n\t\t}).keys();\n\n\t\tconst axisPosition = this.services.cartesianScales.domainAxisPosition;\n\t\tconst scaleType = options.axes[axisPosition].scaleType;\n\n\t\t// Sort keys\n\t\tif (scaleType === ScaleTypes.TIME) {\n\t\t\tstackKeys.sort((a: any, b: any) => {\n\t\t\t\tconst dateA: any = new Date(a);\n\t\t\t\tconst dateB: any = new Date(b);\n\n\t\t\t\treturn dateA - dateB;\n\t\t\t});\n\t\t} else if (\n\t\t\tscaleType === ScaleTypes.LOG ||\n\t\t\tscaleType === ScaleTypes.LINEAR\n\t\t) {\n\t\t\tstackKeys.sort((a: any, b: any) => a - b);\n\t\t}\n\n\t\tconst dataGroupNames = this.getDataGroupNames();\n\n\t\treturn stackKeys.map((key) => {\n\t\t\tconst correspondingValues = { sharedStackKey: key };\n\t\t\tdataGroupNames.forEach((dataGroupName) => {\n\t\t\t\tconst correspondingDatum = displayData.find((datum) => {\n\t\t\t\t\tconst domainIdentifier = this.services.cartesianScales.getDomainIdentifier(\n\t\t\t\t\t\tdatum\n\t\t\t\t\t);\n\t\t\t\t\treturn (\n\t\t\t\t\t\tdatum[groupMapsTo] === dataGroupName &&\n\t\t\t\t\t\tdatum[domainIdentifier].toString() === key\n\t\t\t\t\t);\n\t\t\t\t});\n\n\t\t\t\tconst rangeIdentifier = this.services.cartesianScales.getRangeIdentifier(\n\t\t\t\t\tcorrespondingValues\n\t\t\t\t);\n\t\t\t\tcorrespondingValues[dataGroupName] = correspondingDatum\n\t\t\t\t\t? correspondingDatum[rangeIdentifier]\n\t\t\t\t\t: null;\n\t\t\t});\n\t\t\treturn correspondingValues;\n\t\t}) as any;\n\t}\n\n\tgetStackedData({ percentage = false, groups = null }) {\n\t\tconst options = this.getOptions();\n\t\tconst { groupMapsTo } = options.data;\n\n\t\tconst dataGroupNames = this.getDataGroupNames(groups);\n\t\tconst dataValuesGroupedByKeys = this.getDataValuesGroupedByKeys(groups);\n\n\t\tif (percentage) {\n\t\t\tconst maxByKey = Tools.fromPairs(\n\t\t\t\tdataValuesGroupedByKeys.map((d: any) => [d.sharedStackKey, 0])\n\t\t\t);\n\n\t\t\tdataValuesGroupedByKeys.forEach((d: any) => {\n\t\t\t\tdataGroupNames.forEach((name) => {\n\t\t\t\t\tmaxByKey[d.sharedStackKey] += d[name];\n\t\t\t\t});\n\t\t\t});\n\n\t\t\t// cycle through data values to get percentage\n\t\t\tdataValuesGroupedByKeys.forEach((d: any) => {\n\t\t\t\tdataGroupNames.forEach((name) => {\n\t\t\t\t\tif (maxByKey[d.sharedStackKey]) {\n\t\t\t\t\t\td[name] = (d[name] / maxByKey[d.sharedStackKey]) * 100;\n\t\t\t\t\t} else {\n\t\t\t\t\t\td[name] = 0;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\n\t\treturn stack()\n\t\t\t.keys(dataGroupNames)(dataValuesGroupedByKeys)\n\t\t\t.map((series, i) => {\n\t\t\t\t// Add data group names to each series\n\t\t\t\treturn Object.keys(series)\n\t\t\t\t\t.filter((key: any) => !isNaN(key))\n\t\t\t\t\t.map((key) => {\n\t\t\t\t\t\tconst element = series[key];\n\t\t\t\t\t\telement[groupMapsTo] = dataGroupNames[i];\n\n\t\t\t\t\t\treturn element;\n\t\t\t\t\t});\n\t\t\t});\n\t}\n\n\t/**\n\t * @return {Object} The chart's options\n\t */\n\tgetOptions() {\n\t\treturn this.state.options;\n\t}\n\n\tset(newState: any, configs?: any) {\n\t\tthis.state = Object.assign({}, this.state, newState);\n\t\tconst newConfig = Object.assign(\n\t\t\t{ skipUpdate: false, animate: true }, // default configs\n\t\t\tconfigs\n\t\t);\n\t\tif (!newConfig.skipUpdate) {\n\t\t\tthis.update(newConfig.animate);\n\t\t}\n\t}\n\n\tget(property?: string) {\n\t\tif (property) {\n\t\t\treturn this.state[property];\n\t\t} else {\n\t\t\treturn this.state;\n\t\t}\n\t}\n\n\t/**\n\t *\n\t * @param newOptions New options to be set\n\t */\n\tsetOptions(newOptions) {\n\t\tthis.set({\n\t\t\toptions: Tools.merge(this.getOptions(), newOptions),\n\t\t});\n\t}\n\n\t/**\n\t *\n\t * Updates miscellanous information within the model\n\t * such as the color scales, or the legend data labels\n\t */\n\tupdate(animate = true) {\n\t\tif (!this.getDisplayData()) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.updateAllDataGroups();\n\n\t\tthis.setCustomColorScale();\n\t\tthis.setColorClassNames();\n\t\tthis.services.events.dispatchEvent(Events.Model.UPDATE, { animate });\n\t}\n\n\t/*\n\t * Data labels\n\t */\n\ttoggleDataLabel(changedLabel: string) {\n\t\tconst { ACTIVE, DISABLED } = Configuration.legend.items.status;\n\t\tconst dataGroups = this.getDataGroups();\n\n\t\tconst hasDeactivatedItems = dataGroups.some(\n\t\t\t(group) => group.status === DISABLED\n\t\t);\n\t\tconst activeItems = dataGroups.filter(\n\t\t\t(group) => group.status === ACTIVE\n\t\t);\n\n\t\t// If there are deactivated items, toggle \"changedLabel\"\n\t\tif (hasDeactivatedItems) {\n\t\t\t// If the only active item is being toggled\n\t\t\t// Activate all items\n\t\t\tif (\n\t\t\t\tactiveItems.length === 1 &&\n\t\t\t\tactiveItems[0].name === changedLabel\n\t\t\t) {\n\t\t\t\t// If every item is active, then enable \"changedLabel\" and disable all other items\n\t\t\t\tdataGroups.forEach((group, i) => {\n\t\t\t\t\tdataGroups[i].status = ACTIVE;\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tconst indexToChange = dataGroups.findIndex(\n\t\t\t\t\t(group) => group.name === changedLabel\n\t\t\t\t);\n\t\t\t\tdataGroups[indexToChange].status =\n\t\t\t\t\tdataGroups[indexToChange].status === DISABLED\n\t\t\t\t\t\t? ACTIVE\n\t\t\t\t\t\t: DISABLED;\n\t\t\t}\n\t\t} else {\n\t\t\t// If every item is active, then enable \"changedLabel\" and disable all other items\n\t\t\tdataGroups.forEach((group, i) => {\n\t\t\t\tdataGroups[i].status =\n\t\t\t\t\tgroup.name === changedLabel ? ACTIVE : DISABLED;\n\t\t\t});\n\t\t}\n\n\t\t// Updates selected groups\n\t\tconst updatedActiveItems = dataGroups.filter(\n\t\t\t(group) => group.status === ACTIVE\n\t\t);\n\t\tconst options = this.getOptions();\n\n\t\tconst hasUpdatedDeactivatedItems = dataGroups.some(\n\t\t\t(group) => group.status === DISABLED\n\t\t);\n\n\t\t// If there are deactivated items, map the item name into selected groups\n\t\tif (hasUpdatedDeactivatedItems) {\n\t\t\toptions.data.selectedGroups = updatedActiveItems.map(\n\t\t\t\t(activeItem) => activeItem.name\n\t\t\t);\n\t\t} else {\n\t\t\t// If every item is active, clear array\n\t\t\toptions.data.selectedGroups = [];\n\t\t}\n\n\t\t// dispatch legend filtering event with the status of all the dataLabels\n\t\tthis.services.events.dispatchEvent(Events.Legend.ITEMS_UPDATE, {\n\t\t\tdataGroups,\n\t\t});\n\n\t\t// Update model\n\t\tthis.set({\n\t\t\tdataGroups,\n\t\t});\n\t}\n\n\t/**\n\t * Should the data point be filled?\n\t * @param group\n\t * @param key\n\t * @param value\n\t * @param defaultFilled the default for this chart\n\t */\n\tgetIsFilled(group: any, key?: any, data?: any, defaultFilled?: boolean) {\n\t\tconst options = this.getOptions();\n\t\tif (options.getIsFilled) {\n\t\t\treturn options.getIsFilled(group, key, data, defaultFilled);\n\t\t} else {\n\t\t\treturn defaultFilled;\n\t\t}\n\t}\n\n\tgetFillColor(group: any, key?: any, data?: any) {\n\t\tconst options = this.getOptions();\n\t\tconst defaultFillColor = Tools.getProperty(this.colorScale, group);\n\n\t\tif (options.getFillColor) {\n\t\t\treturn options.getFillColor(group, key, data, defaultFillColor);\n\t\t} else {\n\t\t\treturn defaultFillColor;\n\t\t}\n\t}\n\n\tgetStrokeColor(group: any, key?: any, data?: any) {\n\t\tconst options = this.getOptions();\n\t\tconst defaultStrokeColor = Tools.getProperty(this.colorScale, group);\n\n\t\tif (options.getStrokeColor) {\n\t\t\treturn options.getStrokeColor(group, key, data, defaultStrokeColor);\n\t\t} else {\n\t\t\treturn defaultStrokeColor;\n\t\t}\n\t}\n\n\tisUserProvidedColorScaleValid() {\n\t\tconst userProvidedScale = Tools.getProperty(\n\t\t\tthis.getOptions(),\n\t\t\t'color',\n\t\t\t'scale'\n\t\t);\n\t\tconst dataGroups = this.getDataGroups();\n\n\t\tif (\n\t\t\tuserProvidedScale == null ||\n\t\t\tObject.keys(userProvidedScale).length == 0\n\t\t) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn dataGroups.some((dataGroup) =>\n\t\t\tObject.keys(userProvidedScale).includes(dataGroup.name)\n\t\t);\n\t}\n\n\tgetColorClassName(configs: {\n\t\tclassNameTypes: ColorClassNameTypes[];\n\t\tdataGroupName?: string;\n\t\toriginalClassName?: string;\n\t}) {\n\t\tconst colorPairingTag = this.colorClassNames(configs.dataGroupName);\n\t\tlet className = configs.originalClassName;\n\t\tconfigs.classNameTypes.forEach(\n\t\t\t(type) =>\n\t\t\t\t(className = configs.originalClassName\n\t\t\t\t\t? `${className} ${type}-${colorPairingTag}`\n\t\t\t\t\t: `${type}-${colorPairingTag}`)\n\t\t);\n\n\t\treturn className;\n\t}\n\n\t/**\n\t * For charts that might hold an associated status for their dataset\n\t */\n\tgetStatus() {\n\t\treturn null;\n\t}\n\n\tgetAllDataGroupsNames() {\n\t\treturn this.allDataGroups;\n\t}\n\n\t/**\n\t * Converts data provided in the older format to tabular\n\t *\n\t */\n\tprotected transformToTabularData(data) {\n\t\tconsole.warn(\n\t\t\t\"We've updated the charting data format to be tabular by default. The current format you're using is deprecated and will be removed in v1.0, read more here https://carbon-design-system.github.io/carbon-charts/?path=/story/tutorials--tabular-data-format\"\n\t\t);\n\t\tconst tabularData = [];\n\t\tconst { datasets, labels } = data;\n\n\t\t// Loop through all datasets\n\t\tdatasets.forEach((dataset) => {\n\t\t\t// Update each data point to the new format\n\t\t\tdataset.data.forEach((datum, i) => {\n\t\t\t\tlet group;\n\n\t\t\t\tconst datasetLabel = Tools.getProperty(dataset, 'label');\n\t\t\t\tif (datasetLabel === null) {\n\t\t\t\t\tconst correspondingLabel = Tools.getProperty(labels, i);\n\t\t\t\t\tif (correspondingLabel) {\n\t\t\t\t\t\tgroup = correspondingLabel;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tgroup = 'Ungrouped';\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tgroup = datasetLabel;\n\t\t\t\t}\n\n\t\t\t\tconst updatedDatum = {\n\t\t\t\t\tgroup,\n\t\t\t\t\tkey: labels[i],\n\t\t\t\t};\n\n\t\t\t\tif (isNaN(datum)) {\n\t\t\t\t\tupdatedDatum['value'] = datum.value;\n\t\t\t\t\tupdatedDatum['date'] = datum.date;\n\t\t\t\t} else {\n\t\t\t\t\tupdatedDatum['value'] = datum;\n\t\t\t\t}\n\n\t\t\t\ttabularData.push(updatedDatum);\n\t\t\t});\n\t\t});\n\n\t\treturn tabularData;\n\t}\n\n\tprotected getTabularData(data) {\n\t\t// if data is not an array\n\t\tif (!Array.isArray(data)) {\n\t\t\treturn this.transformToTabularData(data);\n\t\t}\n\n\t\treturn data;\n\t}\n\n\tprotected sanitize(data) {\n\t\tdata = this.getTabularData(data);\n\n\t\treturn data;\n\t}\n\n\t/*\n\t * Data groups\n\t */\n\tprotected updateAllDataGroups() {\n\t\t// allDataGroups is used to generate a color scale that applies\n\t\t// to all the groups. Now when the data updates, you might remove a group,\n\t\t// and then bring it back in a newer data update, therefore\n\t\t// the order of the groups in allDataGroups matters so that you'd never\n\t\t// have an incorrect color assigned to a group.\n\n\t\t// Also, a new group should only be added to allDataGroups if\n\t\t// it doesn't currently exist\n\n\t\tif (!this.allDataGroups) {\n\t\t\tthis.allDataGroups = this.getDataGroupNames();\n\t\t} else {\n\t\t\t// Loop through current data groups\n\t\t\tthis.getDataGroupNames().forEach((dataGroupName) => {\n\t\t\t\t// If group name hasn't been stored yet, store it\n\t\t\t\tif (this.allDataGroups.indexOf(dataGroupName) === -1) {\n\t\t\t\t\tthis.allDataGroups.push(dataGroupName);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\tprotected generateDataGroups(data) {\n\t\tconst { groupMapsTo } = this.getOptions().data;\n\t\tconst { ACTIVE, DISABLED } = Configuration.legend.items.status;\n\t\tconst options = this.getOptions();\n\n\t\tconst uniqueDataGroups = map(\n\t\t\tdata,\n\t\t\t(datum) => datum[groupMapsTo]\n\t\t).keys();\n\n\t\t// check if selectedGroups can be applied to chart with current data groups\n\t\tif (options.data.selectedGroups.length) {\n\t\t\tconst hasAllSelectedGroups = options.data.selectedGroups.every(\n\t\t\t\t(groupName) => uniqueDataGroups.includes(groupName)\n\t\t\t);\n\t\t\tif (!hasAllSelectedGroups) {\n\t\t\t\toptions.data.selectedGroups = [];\n\t\t\t}\n\t\t}\n\n\t\t// Get group status based on items in selected groups\n\t\tconst getStatus = (groupName) =>\n\t\t\t!options.data.selectedGroups.length ||\n\t\t\toptions.data.selectedGroups.includes(groupName)\n\t\t\t\t? ACTIVE\n\t\t\t\t: DISABLED;\n\n\t\treturn uniqueDataGroups.map((groupName) => ({\n\t\t\tname: groupName,\n\t\t\tstatus: getStatus(groupName),\n\t\t}));\n\t}\n\n\t/*\n\t * Fill scales\n\t */\n\tprotected setCustomColorScale() {\n\t\tif (!this.isUserProvidedColorScaleValid()) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst options = this.getOptions();\n\t\tconst userProvidedScale = Tools.getProperty(options, 'color', 'scale');\n\n\t\tObject.keys(userProvidedScale).forEach((dataGroup) => {\n\t\t\tif (!this.allDataGroups.includes(dataGroup)) {\n\t\t\t\tconsole.warn(`\"${dataGroup}\" does not exist in data groups.`);\n\t\t\t}\n\t\t});\n\n\t\t/**\n\t\t * Go through allDataGroups. If a data group has a color value provided\n\t\t * by the user, add that to the color range\n\t\t */\n\t\tconst providedDataGroups = this.allDataGroups.filter(\n\t\t\t(dataGroup) => userProvidedScale[dataGroup]\n\t\t);\n\n\t\tprovidedDataGroups.forEach(\n\t\t\t(dataGroup) =>\n\t\t\t\t(this.colorScale[dataGroup] = userProvidedScale[dataGroup])\n\t\t);\n\t}\n\n\t/*\n\t * Color palette\n\t */\n\tprotected setColorClassNames() {\n\t\tconst colorPairingOptions = Tools.getProperty(\n\t\t\tthis.getOptions(),\n\t\t\t'color',\n\t\t\t'pairing'\n\t\t);\n\n\t\t// Check if user has defined numberOfVariants (differ from given data)\n\t\tlet numberOfVariants = Tools.getProperty(\n\t\t\tcolorPairingOptions,\n\t\t\t'numberOfVariants'\n\t\t);\n\t\tif (!numberOfVariants || numberOfVariants < this.allDataGroups.length) {\n\t\t\tnumberOfVariants = this.allDataGroups.length;\n\t\t}\n\n\t\tlet pairingOption = Tools.getProperty(colorPairingOptions, 'option');\n\t\tconst colorPairingCounts = Configuration.color.pairingOptions;\n\n\t\t// If number of dataGroups is greater than 5, user 14-color palette\n\t\tconst numberOfColors = numberOfVariants > 5 ? 14 : numberOfVariants;\n\n\t\t// Use default palette if user choice is not in range\n\t\tpairingOption =\n\t\t\tpairingOption <= colorPairingCounts[`${numberOfColors}-color`]\n\t\t\t\t? pairingOption\n\t\t\t\t: 1;\n\n\t\t// Create color classes for graph, tooltip and stroke use\n\t\tconst colorPairing = this.allDataGroups.map(\n\t\t\t(dataGroup, index) =>\n\t\t\t\t`${numberOfColors}-${pairingOption}-${(index % 14) + 1}`\n\t\t);\n\n\t\t// Create default color classnames\n\t\tthis.colorClassNames = scaleOrdinal()\n\t\t\t.range(colorPairing)\n\t\t\t.domain(this.allDataGroups);\n\t}\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@carbon/charts",
3
- "version": "0.41.39",
3
+ "version": "0.41.43",
4
4
  "description": "Carbon charting components",
5
5
  "main": "./bundle.js",
6
6
  "module": "./index.js",
@@ -30,7 +30,8 @@ var GradientUtils = /** @class */ (function (_super) {
30
30
  .attr('y1', configs.y1)
31
31
  .attr('y2', configs.y2);
32
32
  }
33
- lg.selectAll('stop')
33
+ lg.selectAll('stop').remove();
34
+ lg.selectAll("stop")
34
35
  .data(configs.stops)
35
36
  .enter()
36
37
  .append('stop')
@@ -1 +1 @@
1
- {"version":3,"file":"gradient-utils.js","sourceRoot":"","sources":["gradient-utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,mBAAmB;AACnB,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAGrC;IAAmC,iCAAO;IAA1C;;IAoEA,CAAC;IAnEO,0CAA4B,GAAnC,UAAoC,OAAO;QAC1C,IAAI,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,yBAAuB,OAAO,CAAC,EAAI,CAAC,CAAC;QACjE,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;YACf,EAAE,GAAG,OAAO,CAAC,GAAG;iBACd,MAAM,CAAC,MAAM,CAAC;iBACd,MAAM,CAAC,gBAAgB,CAAC;iBACxB,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;iBACtB,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;iBACtB,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;iBACtB,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;iBACtB,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;SACzB;QAED,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC;aAClB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;aACnB,KAAK,EAAE;aACP,MAAM,CAAC,MAAM,CAAC;aACd,IAAI,CAAC,QAAQ,EAAE,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,MAAM,EAAR,CAAQ,CAAC;aAC/B,KAAK,CAAC,YAAY,EAAE,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,KAAK,EAAP,CAAO,CAAC;aACnC,KAAK,CAAC,cAAc,EAAE,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,OAAO,EAAT,CAAS,CAAC,CAAC;IAC3C,CAAC;IAEM,4BAAc,GAArB,UAAsB,MAAM;QAC3B,IAAM,WAAW,GAChB,CACC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;YAC3B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAC/B,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;QACpB,OAAO,WAAW,CAAC;IACpB,CAAC;IAEM,sBAAQ,GAAf,UAAgB,MAAM,EAAE,KAAK;QAC5B,IAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,KAAK,GAAa;YACrB;gBACC,MAAM,EAAE,IAAI;gBACZ,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,KAAK;aACd;YACD;gBACC,MAAM,EAAE,KAAK;gBACb,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,GAAG;aACZ;SACD,CAAC;QAEF,IAAI,UAAU,EAAE;YACf,KAAK,GAAG;gBACP;oBACC,MAAM,EAAE,IAAI;oBACZ,KAAK,EAAE,KAAK;oBACZ,OAAO,EAAE,KAAK;iBACd;gBACD;oBACC,MAAM,EAAE,aAAa,CAAC,cAAc,CAAC,MAAM,CAAC;oBAC5C,KAAK,EAAE,KAAK;oBACZ,OAAO,EAAE,GAAG;iBACZ;gBACD;oBACC,MAAM,EAAE,MAAM;oBACd,KAAK,EAAE,KAAK;oBACZ,OAAO,EAAE,KAAK;iBACd;aACD,CAAC;SACF;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IACF,oBAAC;AAAD,CAAC,AApED,CAAmC,OAAO,GAoEzC","sourcesContent":["// Internal Imports\nimport { Service } from '../service';\nimport { DOMUtils } from '../';\n\nexport class GradientUtils extends Service {\n\tstatic appendOrUpdateLinearGradient(configs) {\n\t\tlet lg = configs.svg.select(`defs linearGradient#${configs.id}`);\n\t\tif (lg.empty()) {\n\t\t\tlg = configs.svg\n\t\t\t\t.append('defs')\n\t\t\t\t.append('linearGradient')\n\t\t\t\t.attr('id', configs.id)\n\t\t\t\t.attr('x1', configs.x1)\n\t\t\t\t.attr('x2', configs.x2)\n\t\t\t\t.attr('y1', configs.y1)\n\t\t\t\t.attr('y2', configs.y2);\n\t\t}\n\n\t\tlg.selectAll('stop')\n\t\t\t.data(configs.stops)\n\t\t\t.enter()\n\t\t\t.append('stop')\n\t\t\t.attr('offset', (d) => d.offset)\n\t\t\t.style('stop-color', (d) => d.color)\n\t\t\t.style('stop-opacity', (d) => d.opacity);\n\t}\n\n\tstatic getOffsetRatio(domain) {\n\t\tconst offsetRatio =\n\t\t\t(\n\t\t\t\t(Math.abs(domain[1]) * 100) /\n\t\t\t\tMath.abs(domain[0] - domain[1])\n\t\t\t).toFixed(2) + '%';\n\t\treturn offsetRatio;\n\t}\n\n\tstatic getStops(domain, color) {\n\t\tconst need3Stops = domain[0] < 0 && domain[1] > 0;\n\t\tlet stops: object[] = [\n\t\t\t{\n\t\t\t\toffset: '0%',\n\t\t\t\tcolor: color,\n\t\t\t\topacity: '0.6',\n\t\t\t},\n\t\t\t{\n\t\t\t\toffset: '80%',\n\t\t\t\tcolor: color,\n\t\t\t\topacity: '0',\n\t\t\t},\n\t\t];\n\n\t\tif (need3Stops) {\n\t\t\tstops = [\n\t\t\t\t{\n\t\t\t\t\toffset: '0%',\n\t\t\t\t\tcolor: color,\n\t\t\t\t\topacity: '0.6',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\toffset: GradientUtils.getOffsetRatio(domain),\n\t\t\t\t\tcolor: color,\n\t\t\t\t\topacity: '0',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\toffset: '100%',\n\t\t\t\t\tcolor: color,\n\t\t\t\t\topacity: '0.6',\n\t\t\t\t},\n\t\t\t];\n\t\t}\n\t\treturn stops;\n\t}\n}\n"]}
1
+ {"version":3,"file":"gradient-utils.js","sourceRoot":"","sources":["gradient-utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,mBAAmB;AACnB,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAGrC;IAAmC,iCAAO;IAA1C;;IAqEA,CAAC;IApEO,0CAA4B,GAAnC,UAAoC,OAAO;QAC1C,IAAI,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,yBAAuB,OAAO,CAAC,EAAI,CAAC,CAAC;QACjE,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;YACf,EAAE,GAAG,OAAO,CAAC,GAAG;iBACd,MAAM,CAAC,MAAM,CAAC;iBACd,MAAM,CAAC,gBAAgB,CAAC;iBACxB,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;iBACtB,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;iBACtB,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;iBACtB,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;iBACtB,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;SACzB;QAED,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC;QAC9B,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC;aAClB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;aACnB,KAAK,EAAE;aACP,MAAM,CAAC,MAAM,CAAC;aACd,IAAI,CAAC,QAAQ,EAAE,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,MAAM,EAAR,CAAQ,CAAC;aAC/B,KAAK,CAAC,YAAY,EAAE,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,KAAK,EAAP,CAAO,CAAC;aACnC,KAAK,CAAC,cAAc,EAAE,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,OAAO,EAAT,CAAS,CAAC,CAAC;IAC3C,CAAC;IAEM,4BAAc,GAArB,UAAsB,MAAM;QAC3B,IAAM,WAAW,GAChB,CACC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;YAC3B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAC/B,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;QACpB,OAAO,WAAW,CAAC;IACpB,CAAC;IAEM,sBAAQ,GAAf,UAAgB,MAAM,EAAE,KAAK;QAC5B,IAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,KAAK,GAAa;YACrB;gBACC,MAAM,EAAE,IAAI;gBACZ,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,KAAK;aACd;YACD;gBACC,MAAM,EAAE,KAAK;gBACb,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,GAAG;aACZ;SACD,CAAC;QAEF,IAAI,UAAU,EAAE;YACf,KAAK,GAAG;gBACP;oBACC,MAAM,EAAE,IAAI;oBACZ,KAAK,EAAE,KAAK;oBACZ,OAAO,EAAE,KAAK;iBACd;gBACD;oBACC,MAAM,EAAE,aAAa,CAAC,cAAc,CAAC,MAAM,CAAC;oBAC5C,KAAK,EAAE,KAAK;oBACZ,OAAO,EAAE,GAAG;iBACZ;gBACD;oBACC,MAAM,EAAE,MAAM;oBACd,KAAK,EAAE,KAAK;oBACZ,OAAO,EAAE,KAAK;iBACd;aACD,CAAC;SACF;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IACF,oBAAC;AAAD,CAAC,AArED,CAAmC,OAAO,GAqEzC","sourcesContent":["// Internal Imports\nimport { Service } from '../service';\nimport { DOMUtils } from '../';\n\nexport class GradientUtils extends Service {\n\tstatic appendOrUpdateLinearGradient(configs) {\n\t\tlet lg = configs.svg.select(`defs linearGradient#${configs.id}`);\n\t\tif (lg.empty()) {\n\t\t\tlg = configs.svg\n\t\t\t\t.append('defs')\n\t\t\t\t.append('linearGradient')\n\t\t\t\t.attr('id', configs.id)\n\t\t\t\t.attr('x1', configs.x1)\n\t\t\t\t.attr('x2', configs.x2)\n\t\t\t\t.attr('y1', configs.y1)\n\t\t\t\t.attr('y2', configs.y2);\n\t\t}\n\n\t\tlg.selectAll('stop').remove();\n\t\tlg.selectAll(\"stop\")\n\t\t\t.data(configs.stops)\n\t\t\t.enter()\n\t\t\t.append('stop')\n\t\t\t.attr('offset', (d) => d.offset)\n\t\t\t.style('stop-color', (d) => d.color)\n\t\t\t.style('stop-opacity', (d) => d.opacity);\n\t}\n\n\tstatic getOffsetRatio(domain) {\n\t\tconst offsetRatio =\n\t\t\t(\n\t\t\t\t(Math.abs(domain[1]) * 100) /\n\t\t\t\tMath.abs(domain[0] - domain[1])\n\t\t\t).toFixed(2) + '%';\n\t\treturn offsetRatio;\n\t}\n\n\tstatic getStops(domain, color) {\n\t\tconst need3Stops = domain[0] < 0 && domain[1] > 0;\n\t\tlet stops: object[] = [\n\t\t\t{\n\t\t\t\toffset: '0%',\n\t\t\t\tcolor: color,\n\t\t\t\topacity: '0.6',\n\t\t\t},\n\t\t\t{\n\t\t\t\toffset: '80%',\n\t\t\t\tcolor: color,\n\t\t\t\topacity: '0',\n\t\t\t},\n\t\t];\n\n\t\tif (need3Stops) {\n\t\t\tstops = [\n\t\t\t\t{\n\t\t\t\t\toffset: '0%',\n\t\t\t\t\tcolor: color,\n\t\t\t\t\topacity: '0.6',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\toffset: GradientUtils.getOffsetRatio(domain),\n\t\t\t\t\tcolor: color,\n\t\t\t\t\topacity: '0',\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\toffset: '100%',\n\t\t\t\t\tcolor: color,\n\t\t\t\t\topacity: '0.6',\n\t\t\t\t},\n\t\t\t];\n\t\t}\n\t\treturn stops;\n\t}\n}\n"]}
@@ -270,11 +270,11 @@
270
270
  "signature": "5abf822485491f5442038d5c08e7e0027d417f08aed30b7715fc562828b59259"
271
271
  },
272
272
  "../src/configuration.ts": {
273
- "version": "3bf5bdf79959cdf127c71f5586af43f7cfb515de7885958b984bc9a10d8af87e",
273
+ "version": "fb0498b523550c4cd8c291d10fb5a60c1b63587885c3ad29f1d0ecd982d5118a",
274
274
  "signature": "f7e921e439550b550a855a0084f5312d04efb70a32924a21c45185ac700f6ae5"
275
275
  },
276
276
  "../src/model.ts": {
277
- "version": "1d303b71f63e64bb35fff7ce62c893ac299fc4f6992f519ed4b9e5566d4b02f1",
277
+ "version": "08d2cc932c92956caad5a6bf78852b7fca3425124004f2444d7db59254dd8546",
278
278
  "signature": "8bedc18177c923dcb683c31b84e33bf64b49d018d268fe88cc40842dd74dea29"
279
279
  },
280
280
  "../src/services/service.ts": {
@@ -298,7 +298,7 @@
298
298
  "signature": "9b426ef6953ec6ca297be79c216480d76f908ff6c669be055c63f4f305c621a7"
299
299
  },
300
300
  "../src/services/essentials/gradient-utils.ts": {
301
- "version": "b10d34887d708d2ddaba8c960e4aabcd84f64408c42effd3afb6cf6ab929d26b",
301
+ "version": "e50a28edd02d89f6a58b95ab5f65232b8b8d77fe9f1fdb0700c57ee7fe0f51e5",
302
302
  "signature": "7b51ac945f253db7d26cdbdf47268cf6a53f6e920fcdb407d9479a7f8ebeed27"
303
303
  },
304
304
  "../src/services/scales-cartesian.ts": {
@@ -338,8 +338,8 @@
338
338
  "signature": "5c97b5470761d6a1efca59cf6e995e6e6e4cd5bb3054bc6b71c366049464ce5d"
339
339
  },
340
340
  "../src/interfaces/charts.ts": {
341
- "version": "ec67d286e1b4c0d19fd2884d4aca29cbdb7a911b208063b0d70b390ae35f31d1",
342
- "signature": "361564f7f89dc14a7dcbb6e3b73e9055bae32d626d48be8811440aa447c9c967"
341
+ "version": "74b1708199d82a52a420d7e66570ce4b254cffef1336e2d004d3acd22f5566dc",
342
+ "signature": "cbb2667859a50decf1798865056cd5e5dc6563f831cff28348ddc70ed97752e7"
343
343
  },
344
344
  "../src/interfaces/layout.ts": {
345
345
  "version": "1975c50f6b5d2f508862fe1644ba6e09a3a0c2e62adff273efac1cae92d1b9c8",
@@ -386,7 +386,7 @@
386
386
  "signature": "d70e6454ac2a015783f9d10096feaab036b6f73479030f2808547d9579c885be"
387
387
  },
388
388
  "../src/components/graphs/area.ts": {
389
- "version": "55194d0837710c73a06361bee494b3b652899c5e865d0867a29b7e58a86eff3b",
389
+ "version": "8b67a212e991414b7bde694a6f41c82b6a0c0231e85bad8ac63b1eaa63d8d2b6",
390
390
  "signature": "f78b7e8ec4d4223ce6cab4a1c2fbb4790c40da1ddee449874055123836908d45"
391
391
  },
392
392
  "../src/components/graphs/area-stacked.ts": {
@@ -438,7 +438,7 @@
438
438
  "signature": "49caae68db7258ba87117159b900c4b4de6a29aa5fe92f712e753b7f4f77eee4"
439
439
  },
440
440
  "../src/components/graphs/gauge.ts": {
441
- "version": "86b94d11b5f6ded88d940d775bcb8c53c53d5f0f8ecd5c3c4cbb6a79b2392658",
441
+ "version": "b662901f94285ff2637a9c8fdf07afd64a567b961b8b05cd99ddf7b32d9652f9",
442
442
  "signature": "d8f13b7fb8c87b49fbc7a83441c48f6e71e6d985f101594da3ad4da6e7baf7e0"
443
443
  },
444
444
  "../src/components/graphs/donut.ts": {
@@ -510,7 +510,7 @@
510
510
  "signature": "8147f9565d075fad394a97aa2cf908866dee6323ae7cac20673038e5513d2736"
511
511
  },
512
512
  "../src/components/axes/zoom-bar.ts": {
513
- "version": "718321dd3fa5f5da6d6a62022845ae39cda6621ccd07a714a04ca875c7dc3125",
513
+ "version": "5d3c25a3314583e4d4639a282f3fd8cfc1bb0a28d55af32af31e4895d893ce82",
514
514
  "signature": "7065dddd4f5fb951f99ec5598c5816fcc82df40097ba0e15e13968e4729bfbf4"
515
515
  },
516
516
  "../src/components/index.ts": {
@@ -586,7 +586,7 @@
586
586
  "signature": "9ffb57dbb13765ec0a8aaf132b587b1a28010c0c85a2040a45246f5beae07152"
587
587
  },
588
588
  "../src/components/graphs/meter.ts": {
589
- "version": "f978c9f924135d7ab00ee16195670bebffa63f3f4251d1837167f1504464ed5d",
589
+ "version": "e5b0670b92987226d0676c88eec4cd795ba0e91c598499a5e9f279ff427e6fae",
590
590
  "signature": "76fb4bde3d69c3d47d813bd1accf7779ac7196136e8891d3d99c76610842f407"
591
591
  },
592
592
  "../src/charts/meter.ts": {