@fluentui/react-charts 0.0.0-nightly-20250828-0408.1 → 0.0.0-nightly-20250829-0406.1

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.
Files changed (57) hide show
  1. package/CHANGELOG.md +15 -15
  2. package/dist/index.d.ts +27 -2
  3. package/lib/components/AreaChart/AreaChart.js +3 -3
  4. package/lib/components/AreaChart/AreaChart.js.map +1 -1
  5. package/lib/components/CommonComponents/CartesianChart.js +4 -4
  6. package/lib/components/CommonComponents/CartesianChart.js.map +1 -1
  7. package/lib/components/CommonComponents/CartesianChart.types.js.map +1 -1
  8. package/lib/components/DeclarativeChart/PlotlyColorAdapter.js.map +1 -1
  9. package/lib/components/DeclarativeChart/PlotlySchemaAdapter.js +40 -3
  10. package/lib/components/DeclarativeChart/PlotlySchemaAdapter.js.map +1 -1
  11. package/lib/components/FunnelChart/funnelGeometry.js.map +1 -1
  12. package/lib/components/GaugeChart/GaugeChart.js.map +1 -1
  13. package/lib/components/LineChart/LineChart.js +195 -241
  14. package/lib/components/LineChart/LineChart.js.map +1 -1
  15. package/lib/components/ResponsiveContainer/withResponsiveContainer.js.map +1 -1
  16. package/lib/components/SankeyChart/SankeyChart.js.map +1 -1
  17. package/lib/components/ScatterChart/ScatterChart.js +30 -45
  18. package/lib/components/ScatterChart/ScatterChart.js.map +1 -1
  19. package/lib/components/VerticalBarChart/VerticalBarChart.js +2 -2
  20. package/lib/components/VerticalBarChart/VerticalBarChart.js.map +1 -1
  21. package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.js +2 -2
  22. package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.js.map +1 -1
  23. package/lib/types/DataPoint.js +6 -1
  24. package/lib/types/DataPoint.js.map +1 -1
  25. package/lib/utilities/Common.styles.raw.js.map +1 -1
  26. package/lib/utilities/image-export-utils.js.map +1 -1
  27. package/lib/utilities/utilities.js +130 -127
  28. package/lib/utilities/utilities.js.map +1 -1
  29. package/lib/utilities/vbc-utils.js.map +1 -1
  30. package/lib-commonjs/components/AreaChart/AreaChart.js +2 -2
  31. package/lib-commonjs/components/AreaChart/AreaChart.js.map +1 -1
  32. package/lib-commonjs/components/CommonComponents/CartesianChart.js +4 -4
  33. package/lib-commonjs/components/CommonComponents/CartesianChart.js.map +1 -1
  34. package/lib-commonjs/components/CommonComponents/CartesianChart.types.js.map +1 -1
  35. package/lib-commonjs/components/DeclarativeChart/PlotlyColorAdapter.js.map +1 -1
  36. package/lib-commonjs/components/DeclarativeChart/PlotlySchemaAdapter.js +39 -2
  37. package/lib-commonjs/components/DeclarativeChart/PlotlySchemaAdapter.js.map +1 -1
  38. package/lib-commonjs/components/FunnelChart/funnelGeometry.js.map +1 -1
  39. package/lib-commonjs/components/GaugeChart/GaugeChart.js.map +1 -1
  40. package/lib-commonjs/components/LineChart/LineChart.js +193 -239
  41. package/lib-commonjs/components/LineChart/LineChart.js.map +1 -1
  42. package/lib-commonjs/components/ResponsiveContainer/withResponsiveContainer.js.map +1 -1
  43. package/lib-commonjs/components/SankeyChart/SankeyChart.js.map +1 -1
  44. package/lib-commonjs/components/ScatterChart/ScatterChart.js +28 -43
  45. package/lib-commonjs/components/ScatterChart/ScatterChart.js.map +1 -1
  46. package/lib-commonjs/components/VerticalBarChart/VerticalBarChart.js +1 -1
  47. package/lib-commonjs/components/VerticalBarChart/VerticalBarChart.js.map +1 -1
  48. package/lib-commonjs/components/VerticalStackedBarChart/VerticalStackedBarChart.js +1 -1
  49. package/lib-commonjs/components/VerticalStackedBarChart/VerticalStackedBarChart.js.map +1 -1
  50. package/lib-commonjs/types/DataPoint.js +6 -1
  51. package/lib-commonjs/types/DataPoint.js.map +1 -1
  52. package/lib-commonjs/utilities/Common.styles.raw.js.map +1 -1
  53. package/lib-commonjs/utilities/image-export-utils.js.map +1 -1
  54. package/lib-commonjs/utilities/utilities.js +142 -118
  55. package/lib-commonjs/utilities/utilities.js.map +1 -1
  56. package/lib-commonjs/utilities/vbc-utils.js.map +1 -1
  57. package/package.json +12 -12
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/utilities/vbc-utils.ts"],"sourcesContent":["import { Margins } from '../index';\n\nexport const getClosestPairDiffAndRange = (data: number[] | Date[]): [number, number] | undefined => {\n if (data.length < 2) {\n return;\n }\n data = data.sort((a, b) =>\n a instanceof Date ? (a as Date).getTime() - (b as Date).getTime() : (a as number) - (b as number),\n );\n let minDiff = Number.MAX_VALUE;\n for (let i = 1; i < data.length; i++) {\n const diff =\n data[i] instanceof Date\n ? (data[i] as Date).getTime() - (data[i - 1] as Date).getTime()\n : (data[i] as number) - (data[i - 1] as number);\n minDiff = Math.min(minDiff, diff);\n }\n const range =\n data[0] instanceof Date\n ? (data[data.length - 1] as Date).getTime() - (data[0] as Date).getTime()\n : (data[data.length - 1] as number) - (data[0] as number);\n return [minDiff, range];\n};\n\nexport const calculateAppropriateBarWidth = (data: number[] | Date[], totalWidth: number, innerPadding: number) => {\n const result = getClosestPairDiffAndRange(data);\n if (!result || result[1] === 0) {\n return 16;\n }\n const [closestPairDiff, range] = result;\n // Refer to https://microsoft.github.io/fluentui-charting-contrib/docs/rfcs/fix-overlapping-bars-on-continuous-axes\n // for the derivation of the following formula.\n const barWidth = Math.floor(\n (totalWidth * closestPairDiff * (1 - innerPadding)) / (range + closestPairDiff * (1 - innerPadding)),\n );\n return barWidth;\n};\n\n/**\n * Calculates the total width available for rendering bars.\n */\nexport const calcTotalWidth = (containerWidth: number, margins: Margins, extraMargin = 0): number => {\n return containerWidth - (margins.left || 0) - (margins.right || 0) - extraMargin * 2;\n};\n\n/**\n * Calculates the combined size of all bands and the gaps between them, in units relative to the bandwidth.\n */\nexport const calcTotalBandUnits = (numBands: number, innerPadding: number) => {\n // inner_padding = space_between_bands / (space_between_bands + bandwidth)\n // => space_between_bands = (inner_padding / (1 - inner_padding)) * bandwidth\n const gapToBandRatio = innerPadding / (1 - innerPadding);\n return numBands + (numBands - 1) * gapToBandRatio;\n};\n\n/**\n * Calculates the total width required to render all bands including the gaps between them.\n */\nexport const calcRequiredWidth = (bandwidth: number, numBands: number, innerPadding: number) => {\n return bandwidth * calcTotalBandUnits(numBands, innerPadding);\n};\n\n/**\n * Calculates the maximum possible bandwidth such that the combined widths of all bands\n * and the gaps between them exactly fill the total available width.\n */\nexport const calcBandwidth = (totalWidth: number, numBands: number, innerPadding: number) => {\n return totalWidth / calcTotalBandUnits(numBands, innerPadding);\n};\n"],"names":["getClosestPairDiffAndRange","data","length","sort","a","b","Date","getTime","minDiff","Number","MAX_VALUE","i","diff","Math","min","range","calculateAppropriateBarWidth","totalWidth","innerPadding","result","closestPairDiff","barWidth","floor","calcTotalWidth","containerWidth","margins","extraMargin","left","right","calcTotalBandUnits","numBands","gapToBandRatio","calcRequiredWidth","bandwidth","calcBandwidth"],"mappings":";;;;;;;;;;;iBAkEakC;;;qBARAF;;;sBAVAH;;;kBAPAN;;;gCAjBAP;;;IAtBAhB,0BAAAA;;;;AAAN,mCAAmC,CAACC;IACzC,IAAIA,KAAKC,MAAM,GAAG,GAAG;QACnB;IACF;IACAD,OAAOA,KAAKE,IAAI,CAAC,CAACC,GAAGC,IACnBD,aAAaE,OAAQF,EAAWG,OAAO,KAAMF,EAAWE,OAAO,KAAMH,IAAgBC;IAEvF,IAAIG,UAAUC,OAAOC,SAAS;IAC9B,IAAK,IAAIC,IAAI,GAAGA,IAAIV,KAAKC,MAAM,EAAES,IAAK;QACpC,MAAMC,OACJX,IAAI,CAACU,EAAE,YAAYL,OACdL,IAAI,CAACU,EAAE,CAAUJ,OAAO,KAAMN,IAAI,CAACU,IAAI,EAAE,CAAUJ,OAAO,KAC1DN,IAAI,CAACU,EAAE,GAAeV,IAAI,CAACU,IAAI,EAAE;QACxCH,UAAUK,KAAKC,GAAG,CAACN,SAASI;IAC9B;IACA,MAAMG,QACJd,IAAI,CAAC,EAAE,YAAYK,OACdL,IAAI,CAACA,KAAKC,MAAM,GAAG,EAAE,CAAUK,OAAO,KAAMN,IAAI,CAAC,EAAE,CAAUM,OAAO,KACpEN,IAAI,CAACA,KAAKC,MAAM,GAAG,EAAE,GAAeD,IAAI,CAAC,EAAE;IAClD,OAAO;QAACO;QAASO;KAAM;AACzB,EAAE;AAEK,MAAMC,+BAA+B,CAACf,MAAyBgB,YAAoBC;IACxF,MAAMC,SAASnB,2BAA2BC;IAC1C,IAAI,CAACkB,UAAUA,MAAM,CAAC,EAAE,KAAK,GAAG;QAC9B,OAAO;IACT;IACA,MAAM,CAACC,iBAAiBL,MAAM,GAAGI;IACjC,mHAAmH;IACnH,+CAA+C;IAC/C,MAAME,WAAWR,KAAKS,KAAK,CACxBL,aAAaG,kBAAmB,CAAA,IAAIF,YAAAA,CAAW,GAAOH,CAAAA,QAAQK,kBAAmB,CAAA,IAAIF,YAAAA,CAAW,CAAC;IAEpG,OAAOG;AACT,EAAE;AAKK,MAAME,iBAAiB,CAACC,gBAAwBC,SAAkBC,cAAc,CAAC;IACtF,OAAOF,iBAAkBC,CAAAA,QAAQE,IAAI,KAAI,CAAA,IAAMF,QAAQG,KAAK,KAAI,CAAA,GAAKF,cAAc;AACrF,EAAE;AAKK,MAAMG,qBAAqB,CAACC,UAAkBZ;IACnD,0EAA0E;IAC1E,6EAA6E;IAC7E,MAAMa,iBAAiBb,eAAgB,CAAA,IAAIA,YAAAA,CAAW;IACtD,OAAOY,WAAYA,CAAAA,YAAW,CAAA,GAAKC;AACrC,EAAE;AAKK,MAAMC,oBAAoB,CAACC,WAAmBH,UAAkBZ;IACrE,OAAOe,YAAYJ,mBAAmBC,UAAUZ;AAClD,EAAE;AAMK,MAAMgB,gBAAgB,CAACjB,YAAoBa,UAAkBZ;IAClE,OAAOD,aAAaY,mBAAmBC,UAAUZ;AACnD,EAAE"}
1
+ {"version":3,"sources":["../src/utilities/vbc-utils.ts"],"sourcesContent":["import { Margins } from '../index';\n\nexport const getClosestPairDiffAndRange = (data: number[] | Date[]): [number, number] | undefined => {\n if (data.length < 2) {\n return;\n }\n data = data.sort((a, b) =>\n a instanceof Date ? (a as Date).getTime() - (b as Date).getTime() : (a as number) - (b as number),\n );\n let minDiff = Number.MAX_VALUE;\n for (let i = 1; i < data.length; i++) {\n const diff =\n data[i] instanceof Date\n ? (data[i] as Date).getTime() - (data[i - 1] as Date).getTime()\n : (data[i] as number) - (data[i - 1] as number);\n minDiff = Math.min(minDiff, diff);\n }\n const range =\n data[0] instanceof Date\n ? (data[data.length - 1] as Date).getTime() - (data[0] as Date).getTime()\n : (data[data.length - 1] as number) - (data[0] as number);\n return [minDiff, range];\n};\n\nexport const calculateAppropriateBarWidth = (\n data: number[] | Date[],\n totalWidth: number,\n innerPadding: number,\n): number => {\n const result = getClosestPairDiffAndRange(data);\n if (!result || result[1] === 0) {\n return 16;\n }\n const [closestPairDiff, range] = result;\n // Refer to https://microsoft.github.io/fluentui-charting-contrib/docs/rfcs/fix-overlapping-bars-on-continuous-axes\n // for the derivation of the following formula.\n const barWidth = Math.floor(\n (totalWidth * closestPairDiff * (1 - innerPadding)) / (range + closestPairDiff * (1 - innerPadding)),\n );\n return barWidth;\n};\n\n/**\n * Calculates the total width available for rendering bars.\n */\nexport const calcTotalWidth = (containerWidth: number, margins: Margins, extraMargin = 0): number => {\n return containerWidth - (margins.left || 0) - (margins.right || 0) - extraMargin * 2;\n};\n\n/**\n * Calculates the combined size of all bands and the gaps between them, in units relative to the bandwidth.\n */\nexport const calcTotalBandUnits = (numBands: number, innerPadding: number): number => {\n // inner_padding = space_between_bands / (space_between_bands + bandwidth)\n // => space_between_bands = (inner_padding / (1 - inner_padding)) * bandwidth\n const gapToBandRatio = innerPadding / (1 - innerPadding);\n return numBands + (numBands - 1) * gapToBandRatio;\n};\n\n/**\n * Calculates the total width required to render all bands including the gaps between them.\n */\nexport const calcRequiredWidth = (bandwidth: number, numBands: number, innerPadding: number): number => {\n return bandwidth * calcTotalBandUnits(numBands, innerPadding);\n};\n\n/**\n * Calculates the maximum possible bandwidth such that the combined widths of all bands\n * and the gaps between them exactly fill the total available width.\n */\nexport const calcBandwidth = (totalWidth: number, numBands: number, innerPadding: number): number => {\n return totalWidth / calcTotalBandUnits(numBands, innerPadding);\n};\n"],"names":["getClosestPairDiffAndRange","data","length","sort","a","b","Date","getTime","minDiff","Number","MAX_VALUE","i","diff","Math","min","range","calculateAppropriateBarWidth","totalWidth","innerPadding","result","closestPairDiff","barWidth","floor","calcTotalWidth","containerWidth","margins","extraMargin","left","right","calcTotalBandUnits","numBands","gapToBandRatio","calcRequiredWidth","bandwidth","calcBandwidth"],"mappings":";;;;;;;;;;;iBAsEakC;;;qBARAF;;;sBAVAH;;;kBAPAN;;;gCArBAP;;;IAtBAhB,0BAAAA;;;;AAAN,mCAAmC,CAACC;IACzC,IAAIA,KAAKC,MAAM,GAAG,GAAG;QACnB;IACF;IACAD,OAAOA,KAAKE,IAAI,CAAC,CAACC,GAAGC,IACnBD,aAAaE,OAAQF,EAAWG,OAAO,KAAMF,EAAWE,OAAO,KAAMH,IAAgBC;IAEvF,IAAIG,UAAUC,OAAOC,SAAS;IAC9B,IAAK,IAAIC,IAAI,GAAGA,IAAIV,KAAKC,MAAM,EAAES,IAAK;QACpC,MAAMC,OACJX,IAAI,CAACU,EAAE,YAAYL,OACdL,IAAI,CAACU,EAAE,CAAUJ,OAAO,KAAMN,IAAI,CAACU,IAAI,EAAE,CAAUJ,OAAO,KAC1DN,IAAI,CAACU,EAAE,GAAeV,IAAI,CAACU,IAAI,EAAE;QACxCH,UAAUK,KAAKC,GAAG,CAACN,SAASI;IAC9B;IACA,MAAMG,QACJd,IAAI,CAAC,EAAE,YAAYK,OACdL,IAAI,CAACA,KAAKC,MAAM,GAAG,EAAE,CAAUK,OAAO,KAAMN,IAAI,CAAC,EAAE,CAAUM,OAAO,KACpEN,IAAI,CAACA,KAAKC,MAAM,GAAG,EAAE,GAAeD,IAAI,CAAC,EAAE;IAClD,OAAO;QAACO;QAASO;KAAM;AACzB,EAAE;AAEK,MAAMC,+BAA+B,CAC1Cf,MACAgB,YACAC;IAEA,MAAMC,SAASnB,2BAA2BC;IAC1C,IAAI,CAACkB,UAAUA,MAAM,CAAC,EAAE,KAAK,GAAG;QAC9B,OAAO;IACT;IACA,MAAM,CAACC,iBAAiBL,MAAM,GAAGI;IACjC,mHAAmH;IACnH,+CAA+C;IAC/C,MAAME,WAAWR,KAAKS,KAAK,CACxBL,aAAaG,kBAAmB,CAAA,IAAIF,YAAAA,CAAW,GAAOH,CAAAA,QAAQK,kBAAmB,CAAA,IAAIF,YAAAA,CAAW,CAAC;IAEpG,OAAOG;AACT,EAAE;AAKK,MAAME,iBAAiB,CAACC,gBAAwBC,SAAkBC,cAAc,CAAC;IACtF,OAAOF,iBAAkBC,CAAAA,QAAQE,IAAI,KAAI,CAAA,IAAMF,QAAQG,KAAK,KAAI,CAAA,GAAKF,cAAc;AACrF,EAAE;AAKK,MAAMG,qBAAqB,CAACC,UAAkBZ;IACnD,0EAA0E;IAC1E,6EAA6E;IAC7E,MAAMa,iBAAiBb,eAAgB,CAAA,IAAIA,YAAAA,CAAW;IACtD,OAAOY,WAAYA,CAAAA,YAAW,CAAA,GAAKC;AACrC,EAAE;AAKK,MAAMC,oBAAoB,CAACC,WAAmBH,UAAkBZ;IACrE,OAAOe,YAAYJ,mBAAmBC,UAAUZ;AAClD,EAAE;AAMK,MAAMgB,gBAAgB,CAACjB,YAAoBa,UAAkBZ;IAClE,OAAOD,aAAaY,mBAAmBC,UAAUZ;AACnD,EAAE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fluentui/react-charts",
3
- "version": "0.0.0-nightly-20250828-0408.1",
3
+ "version": "0.0.0-nightly-20250829-0406.1",
4
4
  "description": "React web chart controls for Microsoft fluentui v9 system.",
5
5
  "main": "lib-commonjs/index.js",
6
6
  "module": "lib/index.js",
@@ -22,21 +22,21 @@
22
22
  },
23
23
  "devDependencies": {
24
24
  "@fluentui/eslint-plugin": "*",
25
- "@fluentui/react-conformance": "0.0.0-nightly-20250828-0408.1",
26
- "@fluentui/react-conformance-griffel": "0.0.0-nightly-20250828-0408.1",
25
+ "@fluentui/react-conformance": "0.0.0-nightly-20250829-0406.1",
26
+ "@fluentui/react-conformance-griffel": "0.0.0-nightly-20250829-0406.1",
27
27
  "@fluentui/scripts-api-extractor": "*"
28
28
  },
29
29
  "dependencies": {
30
30
  "@fluentui/chart-utilities": "^1.1.28",
31
- "@fluentui/react-button": "0.0.0-nightly-20250828-0408.1",
32
- "@fluentui/react-jsx-runtime": "0.0.0-nightly-20250828-0408.1",
33
- "@fluentui/react-overflow": "0.0.0-nightly-20250828-0408.1",
34
- "@fluentui/react-popover": "0.0.0-nightly-20250828-0408.1",
35
- "@fluentui/react-shared-contexts": "0.0.0-nightly-20250828-0408.1",
36
- "@fluentui/react-tabster": "0.0.0-nightly-20250828-0408.1",
37
- "@fluentui/react-theme": "0.0.0-nightly-20250828-0408.1",
38
- "@fluentui/react-tooltip": "0.0.0-nightly-20250828-0408.1",
39
- "@fluentui/react-utilities": "0.0.0-nightly-20250828-0408.1",
31
+ "@fluentui/react-button": "0.0.0-nightly-20250829-0406.1",
32
+ "@fluentui/react-jsx-runtime": "0.0.0-nightly-20250829-0406.1",
33
+ "@fluentui/react-overflow": "0.0.0-nightly-20250829-0406.1",
34
+ "@fluentui/react-popover": "0.0.0-nightly-20250829-0406.1",
35
+ "@fluentui/react-shared-contexts": "0.0.0-nightly-20250829-0406.1",
36
+ "@fluentui/react-tabster": "0.0.0-nightly-20250829-0406.1",
37
+ "@fluentui/react-theme": "0.0.0-nightly-20250829-0406.1",
38
+ "@fluentui/react-tooltip": "0.0.0-nightly-20250829-0406.1",
39
+ "@fluentui/react-utilities": "0.0.0-nightly-20250829-0406.1",
40
40
  "@griffel/react": "^1.5.22",
41
41
  "@swc/helpers": "^0.5.1",
42
42
  "@types/d3-array": "^3.0.0",