@carbon/charts 0.50.7 → 0.50.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -74,7 +74,7 @@ var BinnedRuler = /** @class */ (function (_super) {
74
74
  var tooltipDataGroups = activeDataGroupNames
75
75
  .reverse()
76
76
  .map(function (dataGroupName) { return ({
77
- label: 'Group',
77
+ label: dataGroupName,
78
78
  value: get(sampleMatchData_1, "data." + dataGroupName),
79
79
  class: _this.model.getColorClassName({
80
80
  classNameTypes: [ColorClassNameTypes.TOOLTIP],
@@ -1 +1 @@
1
- {"version":3,"file":"ruler-binned.js","sourceRoot":"","sources":["ruler-binned.ts"],"names":[],"mappings":"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","sourcesContent":["// Internal Imports\nimport { GenericSvgSelection, Ruler } from './ruler';\nimport { DOMUtils } from '../../services';\nimport {\n\tCartesianOrientations,\n\tColorClassNameTypes,\n\tEvents,\n\tRenderTypes,\n} from '../../interfaces';\nimport { Tools } from '../../tools';\n\n// D3 Imports\nimport { select } from 'd3-selection';\n\nimport { get } from 'lodash-es';\n\nexport class BinnedRuler extends Ruler {\n\ttype = 'ruler-binned';\n\trenderType = RenderTypes.SVG;\n\n\tshowRuler(event, [x, y]: [number, number]) {\n\t\tconst svg = this.parent;\n\n\t\tconst options = this.model.getOptions();\n\n\t\tconst orientation: CartesianOrientations = this.services.cartesianScales.getOrientation();\n\n\t\tconst rangeScale = this.services.cartesianScales.getRangeScale();\n\t\tconst [yScaleEnd, yScaleStart] = rangeScale.range();\n\n\t\tconst domainScale = this.services.cartesianScales.getDomainScale();\n\t\tconst correspondingDomainValue = domainScale.invert(\n\t\t\torientation === CartesianOrientations.VERTICAL ? x : y\n\t\t);\n\n\t\tconst ruler = DOMUtils.appendOrSelect(svg, 'g.ruler').attr(\n\t\t\t'aria-label',\n\t\t\t'ruler'\n\t\t);\n\t\tconst rulerLine = DOMUtils.appendOrSelect(ruler, 'line.ruler-line');\n\n\t\tconst dataPointElements: GenericSvgSelection = svg.selectAll(\n\t\t\t'[role=graphics-symbol]'\n\t\t);\n\n\t\tconst elementsToHighlight = dataPointElements.filter((d) => {\n\t\t\tif (\n\t\t\t\tparseFloat(get(d, 'data.x0')) <= correspondingDomainValue &&\n\t\t\t\tparseFloat(get(d, 'data.x1')) >= correspondingDomainValue\n\t\t\t) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t});\n\n\t\t// some data point match\n\t\tif (elementsToHighlight.size() > 0) {\n\t\t\t/** if we pass from a trigger area to another one\n\t\t\t * mouseout on previous elements won't get dispatched\n\t\t\t * so we need to do it manually\n\t\t\t */\n\t\t\tif (\n\t\t\t\tthis.elementsToHighlight &&\n\t\t\t\tthis.elementsToHighlight.size() > 0 &&\n\t\t\t\t!Tools.isEqual(this.elementsToHighlight, elementsToHighlight)\n\t\t\t) {\n\t\t\t\tthis.hideRuler();\n\t\t\t}\n\n\t\t\telementsToHighlight.dispatch('mouseover');\n\n\t\t\t// set current hovered elements\n\t\t\tthis.elementsToHighlight = elementsToHighlight;\n\n\t\t\tconst sampleMatchData = select(\n\t\t\t\telementsToHighlight.nodes()[0]\n\t\t\t).datum();\n\n\t\t\tconst x0 = parseFloat(get(sampleMatchData, 'data.x0'));\n\t\t\tconst x1 = parseFloat(get(sampleMatchData, 'data.x1'));\n\n\t\t\tconst activeDataGroupNames = this.model.getActiveDataGroupNames();\n\n\t\t\tconst tooltipDataGroups = activeDataGroupNames\n\t\t\t\t.reverse()\n\t\t\t\t.map((dataGroupName) => ({\n\t\t\t\t\tlabel: 'Group',\n\t\t\t\t\tvalue: get(sampleMatchData, `data.${dataGroupName}`),\n\t\t\t\t\tclass: this.model.getColorClassName({\n\t\t\t\t\t\tclassNameTypes: [ColorClassNameTypes.TOOLTIP],\n\t\t\t\t\t\tdataGroupName,\n\t\t\t\t\t}),\n\t\t\t\t}))\n\t\t\t\t.filter((d) => d.value !== 0);\n\t\t\tconst thereIsMatchingData = tooltipDataGroups.length > 0;\n\n\t\t\tif (thereIsMatchingData) {\n\t\t\t\tthis.services.events.dispatchEvent(Events.Tooltip.SHOW, {\n\t\t\t\t\tmousePosition: [x, y],\n\t\t\t\t\thoveredElement: rulerLine,\n\t\t\t\t\titems: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: get(options, 'bins.rangeLabel') || 'Range',\n\t\t\t\t\t\t\tvalue: `${x0} – ${x1}`,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t...tooltipDataGroups,\n\t\t\t\t\t\t...(Tools.getProperty(\n\t\t\t\t\t\t\toptions,\n\t\t\t\t\t\t\t'tooltip',\n\t\t\t\t\t\t\t'showTotal'\n\t\t\t\t\t\t) === true\n\t\t\t\t\t\t\t? [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t\tget(\n\t\t\t\t\t\t\t\t\t\t\t\toptions,\n\t\t\t\t\t\t\t\t\t\t\t\t'tooltip.totalLabel'\n\t\t\t\t\t\t\t\t\t\t\t) || 'Total',\n\t\t\t\t\t\t\t\t\t\tvalue: activeDataGroupNames.reduce(\n\t\t\t\t\t\t\t\t\t\t\t(accum, currentValue) =>\n\t\t\t\t\t\t\t\t\t\t\t\taccum +\n\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\tget(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsampleMatchData,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t`data.${currentValue}`\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t ]\n\t\t\t\t\t\t\t: []),\n\t\t\t\t\t],\n\t\t\t\t});\n\n\t\t\t\truler.attr('opacity', 1);\n\n\t\t\t\tconst rulerPosition = domainScale((x0 + x1) / 2);\n\n\t\t\t\t// line snaps to matching point\n\t\t\t\tif (orientation === 'horizontal') {\n\t\t\t\t\trulerLine\n\t\t\t\t\t\t.attr('x1', yScaleStart)\n\t\t\t\t\t\t.attr('x2', yScaleEnd)\n\t\t\t\t\t\t.attr('y1', rulerPosition)\n\t\t\t\t\t\t.attr('y2', rulerPosition);\n\t\t\t\t} else {\n\t\t\t\t\trulerLine\n\t\t\t\t\t\t.attr('y1', yScaleStart)\n\t\t\t\t\t\t.attr('y2', yScaleEnd)\n\t\t\t\t\t\t.attr('x1', rulerPosition)\n\t\t\t\t\t\t.attr('x2', rulerPosition);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis.hideRuler();\n\t\t\t}\n\t\t} else {\n\t\t\tthis.hideRuler();\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"ruler-binned.js","sourceRoot":"","sources":["ruler-binned.ts"],"names":[],"mappings":"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","sourcesContent":["// Internal Imports\nimport { GenericSvgSelection, Ruler } from './ruler';\nimport { DOMUtils } from '../../services';\nimport {\n\tCartesianOrientations,\n\tColorClassNameTypes,\n\tEvents,\n\tRenderTypes,\n} from '../../interfaces';\nimport { Tools } from '../../tools';\n\n// D3 Imports\nimport { select } from 'd3-selection';\n\nimport { get } from 'lodash-es';\n\nexport class BinnedRuler extends Ruler {\n\ttype = 'ruler-binned';\n\trenderType = RenderTypes.SVG;\n\n\tshowRuler(event, [x, y]: [number, number]) {\n\t\tconst svg = this.parent;\n\n\t\tconst options = this.model.getOptions();\n\n\t\tconst orientation: CartesianOrientations = this.services.cartesianScales.getOrientation();\n\n\t\tconst rangeScale = this.services.cartesianScales.getRangeScale();\n\t\tconst [yScaleEnd, yScaleStart] = rangeScale.range();\n\n\t\tconst domainScale = this.services.cartesianScales.getDomainScale();\n\t\tconst correspondingDomainValue = domainScale.invert(\n\t\t\torientation === CartesianOrientations.VERTICAL ? x : y\n\t\t);\n\n\t\tconst ruler = DOMUtils.appendOrSelect(svg, 'g.ruler').attr(\n\t\t\t'aria-label',\n\t\t\t'ruler'\n\t\t);\n\t\tconst rulerLine = DOMUtils.appendOrSelect(ruler, 'line.ruler-line');\n\n\t\tconst dataPointElements: GenericSvgSelection = svg.selectAll(\n\t\t\t'[role=graphics-symbol]'\n\t\t);\n\n\t\tconst elementsToHighlight = dataPointElements.filter((d) => {\n\t\t\tif (\n\t\t\t\tparseFloat(get(d, 'data.x0')) <= correspondingDomainValue &&\n\t\t\t\tparseFloat(get(d, 'data.x1')) >= correspondingDomainValue\n\t\t\t) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t});\n\n\t\t// some data point match\n\t\tif (elementsToHighlight.size() > 0) {\n\t\t\t/** if we pass from a trigger area to another one\n\t\t\t * mouseout on previous elements won't get dispatched\n\t\t\t * so we need to do it manually\n\t\t\t */\n\t\t\tif (\n\t\t\t\tthis.elementsToHighlight &&\n\t\t\t\tthis.elementsToHighlight.size() > 0 &&\n\t\t\t\t!Tools.isEqual(this.elementsToHighlight, elementsToHighlight)\n\t\t\t) {\n\t\t\t\tthis.hideRuler();\n\t\t\t}\n\n\t\t\telementsToHighlight.dispatch('mouseover');\n\n\t\t\t// set current hovered elements\n\t\t\tthis.elementsToHighlight = elementsToHighlight;\n\n\t\t\tconst sampleMatchData = select(\n\t\t\t\telementsToHighlight.nodes()[0]\n\t\t\t).datum();\n\n\t\t\tconst x0 = parseFloat(get(sampleMatchData, 'data.x0'));\n\t\t\tconst x1 = parseFloat(get(sampleMatchData, 'data.x1'));\n\n\t\t\tconst activeDataGroupNames = this.model.getActiveDataGroupNames();\n\n\t\t\tconst tooltipDataGroups = activeDataGroupNames\n\t\t\t\t.reverse()\n\t\t\t\t.map((dataGroupName) => ({\n\t\t\t\t\tlabel: dataGroupName,\n\t\t\t\t\tvalue: get(sampleMatchData, `data.${dataGroupName}`),\n\t\t\t\t\tclass: this.model.getColorClassName({\n\t\t\t\t\t\tclassNameTypes: [ColorClassNameTypes.TOOLTIP],\n\t\t\t\t\t\tdataGroupName,\n\t\t\t\t\t}),\n\t\t\t\t}))\n\t\t\t\t.filter((d) => d.value !== 0);\n\t\t\tconst thereIsMatchingData = tooltipDataGroups.length > 0;\n\n\t\t\tif (thereIsMatchingData) {\n\t\t\t\tthis.services.events.dispatchEvent(Events.Tooltip.SHOW, {\n\t\t\t\t\tmousePosition: [x, y],\n\t\t\t\t\thoveredElement: rulerLine,\n\t\t\t\t\titems: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tlabel: get(options, 'bins.rangeLabel') || 'Range',\n\t\t\t\t\t\t\tvalue: `${x0} – ${x1}`,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t...tooltipDataGroups,\n\t\t\t\t\t\t...(Tools.getProperty(\n\t\t\t\t\t\t\toptions,\n\t\t\t\t\t\t\t'tooltip',\n\t\t\t\t\t\t\t'showTotal'\n\t\t\t\t\t\t) === true\n\t\t\t\t\t\t\t? [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tlabel:\n\t\t\t\t\t\t\t\t\t\t\tget(\n\t\t\t\t\t\t\t\t\t\t\t\toptions,\n\t\t\t\t\t\t\t\t\t\t\t\t'tooltip.totalLabel'\n\t\t\t\t\t\t\t\t\t\t\t) || 'Total',\n\t\t\t\t\t\t\t\t\t\tvalue: activeDataGroupNames.reduce(\n\t\t\t\t\t\t\t\t\t\t\t(accum, currentValue) =>\n\t\t\t\t\t\t\t\t\t\t\t\taccum +\n\t\t\t\t\t\t\t\t\t\t\t\tparseFloat(\n\t\t\t\t\t\t\t\t\t\t\t\t\tget(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tsampleMatchData,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t`data.${currentValue}`\n\t\t\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t0\n\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t ]\n\t\t\t\t\t\t\t: []),\n\t\t\t\t\t],\n\t\t\t\t});\n\n\t\t\t\truler.attr('opacity', 1);\n\n\t\t\t\tconst rulerPosition = domainScale((x0 + x1) / 2);\n\n\t\t\t\t// line snaps to matching point\n\t\t\t\tif (orientation === 'horizontal') {\n\t\t\t\t\trulerLine\n\t\t\t\t\t\t.attr('x1', yScaleStart)\n\t\t\t\t\t\t.attr('x2', yScaleEnd)\n\t\t\t\t\t\t.attr('y1', rulerPosition)\n\t\t\t\t\t\t.attr('y2', rulerPosition);\n\t\t\t\t} else {\n\t\t\t\t\trulerLine\n\t\t\t\t\t\t.attr('y1', yScaleStart)\n\t\t\t\t\t\t.attr('y2', yScaleEnd)\n\t\t\t\t\t\t.attr('x1', rulerPosition)\n\t\t\t\t\t\t.attr('x2', rulerPosition);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis.hideRuler();\n\t\t\t}\n\t\t} else {\n\t\t\tthis.hideRuler();\n\t\t}\n\t}\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@carbon/charts",
3
- "version": "0.50.7",
3
+ "version": "0.50.8",
4
4
  "description": "Carbon charting components",
5
5
  "main": "./bundle.js",
6
6
  "module": "./index.js",
@@ -466,7 +466,7 @@
466
466
  "signature": "f49d03f3a5d96bd45f2bec93f565d93496a6eb8036d4347b4697f51aed28b64a"
467
467
  },
468
468
  "../src/components/axes/ruler-binned.ts": {
469
- "version": "272a402f91403cf1b6cc262be326b225b73e439513b741b9883da6553014ff51",
469
+ "version": "60fcc5e8dec53abc7ef4ceb300ccec4bbcebeef1033d8ada4fe864e7878fb198",
470
470
  "signature": "3681720fe5492520e51917df4bc2e96e4cf5b6f25fedfad60f143bf0bfa66fa1"
471
471
  },
472
472
  "../src/components/axes/ruler-stacked.ts": {