From e94bacf4769a4a6224098e67490645eb1942f25a Mon Sep 17 00:00:00 2001 From: "Atishay Jain (atisjai)" <98592573+AtishayMsft@users.noreply.github.com> Date: Sat, 14 Sep 2024 02:55:21 +0000 Subject: [PATCH 01/60] Basic implementation of horizontal bar chart --- packages/web-components/package.json | 4 +- .../src/horizontalbarchart/define.ts | 4 + .../horizontalbarchart.bench.ts | 12 + .../horizontalbarchart.definition.ts | 20 + .../horizontalbarchart.stories.ts | 22 + .../horizontalbarchart.styles.ts | 59 +++ .../horizontalbarchart.template.ts | 22 + .../horizontalbarchart/horizontalbarchart.ts | 80 ++++ .../src/horizontalbarchart/index.ts | 4 + packages/web-components/src/index-rollup.ts | 1 + packages/web-components/src/index.ts | 7 + yarn.lock | 389 +++++++++++++++--- 12 files changed, 574 insertions(+), 50 deletions(-) create mode 100644 packages/web-components/src/horizontalbarchart/define.ts create mode 100644 packages/web-components/src/horizontalbarchart/horizontalbarchart.bench.ts create mode 100644 packages/web-components/src/horizontalbarchart/horizontalbarchart.definition.ts create mode 100644 packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts create mode 100644 packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts create mode 100644 packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts create mode 100644 packages/web-components/src/horizontalbarchart/horizontalbarchart.ts create mode 100644 packages/web-components/src/horizontalbarchart/index.ts diff --git a/packages/web-components/package.json b/packages/web-components/package.json index 55e71f1575e69..9a61d67971ed7 100644 --- a/packages/web-components/package.json +++ b/packages/web-components/package.json @@ -100,7 +100,9 @@ "@microsoft/fast-web-utilities": "^6.0.0", "@fluentui/tokens": "1.0.0-alpha.16", "tabbable": "^6.2.0", - "tslib": "^2.1.0" + "tslib": "^2.1.0", + "@types/d3": "^7.0.0", + "d3": "^7.0.0" }, "peerDependencies": { "@microsoft/fast-element": "^2.0.0-beta.26 || ^2.0.0" diff --git a/packages/web-components/src/horizontalbarchart/define.ts b/packages/web-components/src/horizontalbarchart/define.ts new file mode 100644 index 0000000000000..cdf6938d1ae24 --- /dev/null +++ b/packages/web-components/src/horizontalbarchart/define.ts @@ -0,0 +1,4 @@ +import { FluentDesignSystem } from '../fluent-design-system.js'; +import { definition } from './horizontalbarchart.definition.js'; + +definition.define(FluentDesignSystem.registry); diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.bench.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.bench.ts new file mode 100644 index 0000000000000..9da5d4140ca3a --- /dev/null +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.bench.ts @@ -0,0 +1,12 @@ +import { FluentDesignSystem } from '../fluent-design-system.js'; +import { definition } from './horizontalbarchart.definition.js'; + +definition.define(FluentDesignSystem.registry); + +const itemRenderer = () => { + const horizontalbarchart = document.createElement('fluent-horizontalbarchart'); + return horizontalbarchart; +}; + +export default itemRenderer; +export { tests } from '../utils/benchmark-wrapper.js'; diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.definition.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.definition.ts new file mode 100644 index 0000000000000..e80fd4217cb4c --- /dev/null +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.definition.ts @@ -0,0 +1,20 @@ +import { FluentDesignSystem } from '../fluent-design-system.js'; +import { HorizontalBarChart } from './horizontalbarchart.js'; +import { styles } from './horizontalbarchart.styles.js'; +import { template } from './horizontalbarchart.template.js'; + +/** + * The Fluent Textarea Element definition. + * + * @public + * @remarks + * HTML Element: `` + */ +export const definition = HorizontalBarChart.compose({ + name: `${FluentDesignSystem.prefix}-horizontalbarchart`, + template, + styles, + shadowOptions: { + delegatesFocus: true, + }, +}); diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts new file mode 100644 index 0000000000000..5cfa4d08a0dd1 --- /dev/null +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts @@ -0,0 +1,22 @@ +import { html } from '@microsoft/fast-element'; +import type { Meta, Story, StoryArgs } from '../helpers.stories.js'; +import { renderComponent } from '../helpers.stories.js'; +import { HorizontalBarChart as FluentHorizontalBarChart } from './horizontalbarchart.js'; + +const storyTemplate = html>` + +`; + +export default { + title: 'Components/HorizontalBarChart', +} as Meta; + +export const Basic: Story = renderComponent(storyTemplate).bind({}); + +export const RTL: Story = renderComponent(html>` +
+
+ +
+
+`); diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts new file mode 100644 index 0000000000000..fe157edec22b6 --- /dev/null +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts @@ -0,0 +1,59 @@ +import type { ElementStyles } from '@microsoft/fast-element'; +import { css } from '@microsoft/fast-element'; +import { + borderRadiusMedium, + colorCompoundBrandStroke, + colorNeutralBackground1, + colorNeutralBackground3, + colorNeutralBackgroundInverted, + colorNeutralForeground1, + colorNeutralForeground4, + colorNeutralForegroundDisabled, + colorNeutralForegroundInverted, + colorNeutralStroke1, + colorNeutralStroke1Hover, + colorNeutralStroke1Pressed, + colorNeutralStrokeAccessible, + colorNeutralStrokeAccessibleHover, + colorNeutralStrokeAccessiblePressed, + colorNeutralStrokeDisabled, + colorPaletteRedBorder2, + colorTransparentBackground, + curveAccelerateMid, + curveDecelerateMid, + durationNormal, + durationUltraFast, + fontFamilyBase, + fontSizeBase200, + fontSizeBase300, + fontSizeBase400, + fontWeightRegular, + lineHeightBase200, + lineHeightBase300, + lineHeightBase400, + shadow2, + spacingHorizontalM, + spacingHorizontalMNudge, + spacingHorizontalSNudge, + spacingHorizontalXS, + spacingHorizontalXXS, + spacingVerticalS, + spacingVerticalSNudge, + spacingVerticalXS, + strokeWidthThin, +} from '../theme/design-tokens.js'; +import { forcedColorsStylesheetBehavior } from '../utils/behaviors/match-media-stylesheet-behavior.js'; +import { display } from '../utils/display.js'; + +/** + * Styles for the HorizontalBarChart component. + * + * @public + */ +export const styles: ElementStyles = css` + ${display('inline-block')} + + .root { + background-color: var(--background-color); + } +`; diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts new file mode 100644 index 0000000000000..c35ccea718ad5 --- /dev/null +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts @@ -0,0 +1,22 @@ +import { ElementViewTemplate, html, ref, slotted } from '@microsoft/fast-element'; +import type { HorizontalBarChart } from './horizontalbarchart.js'; + +/** + * Generates a template for the HorizontalBarChart component. + * + * @public + */ +export function horizontalbarchartTemplate(): ElementViewTemplate { + return html` + + `; +} + +/** + * @internal + */ +export const template: ElementViewTemplate = horizontalbarchartTemplate(); diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts new file mode 100644 index 0000000000000..ec77a9a4b8f5a --- /dev/null +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -0,0 +1,80 @@ +import { FASTElement } from '@microsoft/fast-element'; +import * as d3 from 'd3'; + +/** + * A Horizontal Bar Chart HTML Element. + * + * @public + */ +export class HorizontalBarChart extends FASTElement { + /** + * The type of the element, which is always "horizontalbarchart". + * @see The {@link https://developer.mozilla.org/en-US/docs/Web/API/HTMLTextAreaElement/type | `type`} property + * + * @public + */ + public get type(): 'horizontalbarchart' { + return 'horizontalbarchart'; + } + + constructor() { + super(); + } + + private bindEvents() {} + + connectedCallback() { + this.render(); + } + + render() { + const svg = d3 + .select(this.shadowRoot) + .append('svg') + .attr('width', 800) + .attr('height', 800) + .attr('style', 'margin-left: 20px'); + + // Create tooltip div + const tooltip = d3 + .select(this.shadowRoot) + .append('div') + .attr( + 'style', + 'position:absolute, text-align:center, width:60px, height:28px, padding:2px, font:12px sans-serif, background:yellow, border:2px, border-radius:8px, pointer-events:none, opacity:0', + ); + + const data = [12, 10, 15, 16, 23, 42]; // Sample data + const colors = ['#637cef', '#e3008c', '#2aa0a4', '#9373c0', '#13a10e', '#3a96dd']; + + svg + .selectAll('rect') + .data(data) + .enter() + .append('rect') + .attr('y', (d, i) => i * 30) // Space out bars vertically + .attr('x', 0) // Start bars from the left edge + .attr('height', 25) // Fixed height for all bars + .attr('width', d => d + '%') // Width based on data + .attr('fill', (d, i) => colors[i % colors.length]) + .on('mouseover', function (event, d) { + console.log(event.pageX, event.pageY); + tooltip.transition().duration(200).style('opacity', 0.9); + tooltip.html(d + ' hovered').attr('style', 'left:' + event.pageX + 'px, top:' + (event.pageY - 28) + 'px'); + }) + .on('mouseout', function () { + tooltip.transition().duration(500).attr('style', 'opacity:0'); + }); + + svg + .selectAll('text') + .data(data) + .enter() + .append('text') + .attr('y', (d, i) => i * 30 + 15) // Position text in the middle of each bar vertically + .attr('x', d => d + 1 + '%') // Slight offset from the left edge + .text(d => d) // Set text content to data value + .attr('fill', 'black') // Text color + .attr('font-size', '12px'); // Text size + } +} diff --git a/packages/web-components/src/horizontalbarchart/index.ts b/packages/web-components/src/horizontalbarchart/index.ts new file mode 100644 index 0000000000000..5582c53facba2 --- /dev/null +++ b/packages/web-components/src/horizontalbarchart/index.ts @@ -0,0 +1,4 @@ +export { definition as HorizontalBarChartDefinition } from './horizontalbarchart.definition.js'; +export { HorizontalBarChart } from './horizontalbarchart.js'; +export { styles as HorizontalBarChartStyles } from './horizontalbarchart.styles.js'; +export { template as HorizontalBarChartTemplate } from './horizontalbarchart.template.js'; diff --git a/packages/web-components/src/index-rollup.ts b/packages/web-components/src/index-rollup.ts index 832770e275eec..435f5f7ae07e7 100644 --- a/packages/web-components/src/index-rollup.ts +++ b/packages/web-components/src/index-rollup.ts @@ -36,3 +36,4 @@ import './textarea/define.js'; import './text-input/define.js'; import './text/define.js'; import './toggle-button/define.js'; +import './horizontalbarchart/define.js'; diff --git a/packages/web-components/src/index.ts b/packages/web-components/src/index.ts index a9f1707983906..7dbcbbe7683eb 100644 --- a/packages/web-components/src/index.ts +++ b/packages/web-components/src/index.ts @@ -305,3 +305,10 @@ export { export type { MediaQueryListListener } from './utils/behaviors/match-media-stylesheet-behavior.js'; export { getDirection } from './utils/direction.js'; export { display } from './utils/display.js'; + +export { + HorizontalBarChart, + HorizontalBarChartDefinition, + HorizontalBarChartStyles, + HorizontalBarChartTemplate, +} from './horizontalbarchart/index.js'; diff --git a/yarn.lock b/yarn.lock index a178f158a252f..97dae8cfd8010 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4922,23 +4922,77 @@ dependencies: "@types/node" "*" -"@types/d3-array@3.2.1", "@types/d3-array@^3.0.0": +"@types/d3-array@*", "@types/d3-array@3.2.1", "@types/d3-array@^3.0.0": version "3.2.1" resolved "https://registry.yarnpkg.com/@types/d3-array/-/d3-array-3.2.1.tgz#1f6658e3d2006c4fceac53fde464166859f8b8c5" integrity sha512-Y2Jn2idRrLzUfAKV2LyRImR+y4oa2AntrgID95SHJxuMUrkNXmanDSed71sRNZysveJVt1hLLemQZIady0FpEg== -"@types/d3-axis@3.0.6", "@types/d3-axis@^3.0.0": +"@types/d3-axis@*", "@types/d3-axis@3.0.6", "@types/d3-axis@^3.0.0": version "3.0.6" resolved "https://registry.yarnpkg.com/@types/d3-axis/-/d3-axis-3.0.6.tgz#e760e5765b8188b1defa32bc8bb6062f81e4c795" integrity sha512-pYeijfZuBd87T0hGn0FO1vQ/cgLk6E1ALJjfkC0oJ8cbwkZl3TpgS8bVBLZN+2jjGgg38epgxb2zmoGtSfvgMw== dependencies: "@types/d3-selection" "*" +"@types/d3-brush@*": + version "3.0.6" + resolved "https://registry.yarnpkg.com/@types/d3-brush/-/d3-brush-3.0.6.tgz#c2f4362b045d472e1b186cdbec329ba52bdaee6c" + integrity sha512-nH60IZNNxEcrh6L1ZSMNA28rj27ut/2ZmI3r96Zd+1jrZD++zD3LsMIjWlvg4AYrHn/Pqz4CF3veCxGjtbqt7A== + dependencies: + "@types/d3-selection" "*" + +"@types/d3-chord@*": + version "3.0.6" + resolved "https://registry.yarnpkg.com/@types/d3-chord/-/d3-chord-3.0.6.tgz#1706ca40cf7ea59a0add8f4456efff8f8775793d" + integrity sha512-LFYWWd8nwfwEmTZG9PfQxd17HbNPksHBiJHaKuY1XeqscXacsS2tyoo6OdRsjf+NQYeB6XrNL3a25E3gH69lcg== + +"@types/d3-color@*": + version "3.1.3" + resolved "https://registry.yarnpkg.com/@types/d3-color/-/d3-color-3.1.3.tgz#368c961a18de721da8200e80bf3943fb53136af2" + integrity sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A== + +"@types/d3-contour@*": + version "3.0.6" + resolved "https://registry.yarnpkg.com/@types/d3-contour/-/d3-contour-3.0.6.tgz#9ada3fa9c4d00e3a5093fed0356c7ab929604231" + integrity sha512-BjzLgXGnCWjUSYGfH1cpdo41/hgdWETu4YxpezoztawmqsvCeep+8QGfiY6YbDvfgHz/DkjeIkkZVJavB4a3rg== + dependencies: + "@types/d3-array" "*" + "@types/geojson" "*" + +"@types/d3-delaunay@*": + version "6.0.4" + resolved "https://registry.yarnpkg.com/@types/d3-delaunay/-/d3-delaunay-6.0.4.tgz#185c1a80cc807fdda2a3fe960f7c11c4a27952e1" + integrity sha512-ZMaSKu4THYCU6sV64Lhg6qjf1orxBthaC161plr5KuPHo3CNm8DTHiLw/5Eq2b6TsNP0W0iJrUOFscY6Q450Hw== + +"@types/d3-dispatch@*": + version "3.0.6" + resolved "https://registry.yarnpkg.com/@types/d3-dispatch/-/d3-dispatch-3.0.6.tgz#096efdf55eb97480e3f5621ff9a8da552f0961e7" + integrity sha512-4fvZhzMeeuBJYZXRXrRIQnvUYfyXwYmLsdiN7XXmVNQKKw1cM8a5WdID0g1hVFZDqT9ZqZEY5pD44p24VS7iZQ== + +"@types/d3-drag@*": + version "3.0.7" + resolved "https://registry.yarnpkg.com/@types/d3-drag/-/d3-drag-3.0.7.tgz#b13aba8b2442b4068c9a9e6d1d82f8bcea77fc02" + integrity sha512-HE3jVKlzU9AaMazNufooRJ5ZpWmLIoc90A37WU2JMmeq28w1FQqCZswHZ3xR+SuxYftzHq6WU6KJHvqxKzTxxQ== + dependencies: + "@types/d3-selection" "*" + "@types/d3-dsv@*": version "3.0.0" resolved "https://registry.yarnpkg.com/@types/d3-dsv/-/d3-dsv-3.0.0.tgz#f3c61fb117bd493ec0e814856feb804a14cfc311" integrity sha512-o0/7RlMl9p5n6FQDptuJVMxDf/7EDEv2SYEO/CwdG2tr1hTfUVi0Iavkk2ax+VpaQ/1jVhpnj5rq1nj8vwhn2A== +"@types/d3-ease@*": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@types/d3-ease/-/d3-ease-3.0.2.tgz#e28db1bfbfa617076f7770dd1d9a48eaa3b6c51b" + integrity sha512-NcV1JjO5oDzoK26oMzbILE6HW7uVXOHLQvHshBUW4UMdZGfiY6v5BeQwh9a9tCzv+CeefZQHJt5SRgK154RtiA== + +"@types/d3-fetch@*": + version "3.0.7" + resolved "https://registry.yarnpkg.com/@types/d3-fetch/-/d3-fetch-3.0.7.tgz#c04a2b4f23181aa376f30af0283dbc7b3b569980" + integrity sha512-fTAfNmxSb9SOWNB9IoG5c8Hg6R+AzUHDRlsXsDZsNp6sxAEOP0tkP3gKkNSO/qmHPoBFTxNrjDprVHDQDvo5aA== + dependencies: + "@types/d3-dsv" "*" + "@types/d3-fetch@^3.0.1": version "3.0.1" resolved "https://registry.yarnpkg.com/@types/d3-fetch/-/d3-fetch-3.0.1.tgz#f9fa88b81aa2eea5814f11aec82ecfddbd0b8fe0" @@ -4946,21 +5000,55 @@ dependencies: "@types/d3-dsv" "*" -"@types/d3-format@3.0.4", "@types/d3-format@^3.0.0": +"@types/d3-force@*": + version "3.0.10" + resolved "https://registry.yarnpkg.com/@types/d3-force/-/d3-force-3.0.10.tgz#6dc8fc6e1f35704f3b057090beeeb7ac674bff1a" + integrity sha512-ZYeSaCF3p73RdOKcjj+swRlZfnYpK1EbaDiYICEEp5Q6sUiqFaFQ9qgoshp5CzIyyb/yD09kD9o2zEltCexlgw== + +"@types/d3-format@*", "@types/d3-format@3.0.4", "@types/d3-format@^3.0.0": version "3.0.4" resolved "https://registry.yarnpkg.com/@types/d3-format/-/d3-format-3.0.4.tgz#b1e4465644ddb3fdf3a263febb240a6cd616de90" integrity sha512-fALi2aI6shfg7vM5KiR1wNJnZ7r6UuggVqtDA+xiEdPZQwy/trcQaHnwShLuLdta2rTymCNpxYTiMZX/e09F4g== -"@types/d3-hierarchy@3.1.7", "@types/d3-hierarchy@^3.0.0": +"@types/d3-geo@*": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@types/d3-geo/-/d3-geo-3.1.0.tgz#b9e56a079449174f0a2c8684a9a4df3f60522440" + integrity sha512-856sckF0oP/diXtS4jNsiQw/UuK5fQG8l/a9VVLeSouf1/PPbBE1i1W852zVwKwYCBkFJJB7nCFTbk6UMEXBOQ== + dependencies: + "@types/geojson" "*" + +"@types/d3-hierarchy@*", "@types/d3-hierarchy@3.1.7", "@types/d3-hierarchy@^3.0.0": version "3.1.7" resolved "https://registry.yarnpkg.com/@types/d3-hierarchy/-/d3-hierarchy-3.1.7.tgz#6023fb3b2d463229f2d680f9ac4b47466f71f17b" integrity sha512-tJFtNoYBtRtkNysX1Xq4sxtjK8YgoWUNpIiUee0/jHGRwqvzYxkq0hGVbbOGSz+JgFxxRu4K8nb3YpG3CMARtg== +"@types/d3-interpolate@*": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@types/d3-interpolate/-/d3-interpolate-3.0.4.tgz#412b90e84870285f2ff8a846c6eb60344f12a41c" + integrity sha512-mgLPETlrpVV1YRJIglr4Ez47g7Yxjl1lj7YKsiMCb27VJH9W8NVM6Bb9d8kkpG/uAQS5AmbA48q2IAolKKo1MA== + dependencies: + "@types/d3-color" "*" + "@types/d3-path@*", "@types/d3-path@^1": version "1.0.9" resolved "https://registry.yarnpkg.com/@types/d3-path/-/d3-path-1.0.9.tgz#73526b150d14cd96e701597cbf346cfd1fd4a58c" integrity sha512-NaIeSIBiFgSC6IGUBjZWcscUJEq7vpVu7KthHN8eieTV9d9MqkSOZLH4chq1PmcKy06PNe3axLeKmRIyxJ+PZQ== +"@types/d3-polygon@*": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@types/d3-polygon/-/d3-polygon-3.0.2.tgz#dfae54a6d35d19e76ac9565bcb32a8e54693189c" + integrity sha512-ZuWOtMaHCkN9xoeEMr1ubW2nGWsp4nIql+OPQRstu4ypeZ+zk3YKqQT0CXVe/PYqrKpZAi+J9mTs05TKwjXSRA== + +"@types/d3-quadtree@*": + version "3.0.6" + resolved "https://registry.yarnpkg.com/@types/d3-quadtree/-/d3-quadtree-3.0.6.tgz#d4740b0fe35b1c58b66e1488f4e7ed02952f570f" + integrity sha512-oUzyO1/Zm6rsxKRHA1vH0NEDG58HrT5icx/azi9MF1TWdtttWl0UIUsjEQBBh+SIkrpd21ZjEv7ptxWys1ncsg== + +"@types/d3-random@*": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@types/d3-random/-/d3-random-3.0.3.tgz#ed995c71ecb15e0cd31e22d9d5d23942e3300cfb" + integrity sha512-Imagg1vJ3y76Y2ea0871wpabqp613+8/r0mCLEBfdtqC7xMSfj9idOnmBYyMoULfHePJyxMAw3nWhJxzc+LFwQ== + "@types/d3-sankey@0.12.4", "@types/d3-sankey@^0.12.3": version "0.12.4" resolved "https://registry.yarnpkg.com/@types/d3-sankey/-/d3-sankey-0.12.4.tgz#7d76c8eaa1a3772e9bfcdfbeab82bf37e0b479d4" @@ -4968,7 +5056,12 @@ dependencies: "@types/d3-shape" "^1" -"@types/d3-scale@4.0.8", "@types/d3-scale@^4.0.0": +"@types/d3-scale-chromatic@*": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.3.tgz#fc0db9c10e789c351f4c42d96f31f2e4df8f5644" + integrity sha512-laXM4+1o5ImZv3RpFAsTRn3TEkzqkytiOY0Dz0sq5cnd1dtNlk6sHLon4OvqaiJb28T0S/TdsBI3Sjsy+keJrw== + +"@types/d3-scale@*", "@types/d3-scale@4.0.8", "@types/d3-scale@^4.0.0": version "4.0.8" resolved "https://registry.yarnpkg.com/@types/d3-scale/-/d3-scale-4.0.8.tgz#d409b5f9dcf63074464bf8ddfb8ee5a1f95945bb" integrity sha512-gkK1VVTr5iNiYJ7vWDI+yUFFlszhNMtVeneJ6lUTKPjprsvLLI9/tgEGiXJOnlINJA8FyA88gfnQsHbybVZrYQ== @@ -4980,7 +5073,7 @@ resolved "https://registry.yarnpkg.com/@types/d3-selection/-/d3-selection-3.0.10.tgz#98cdcf986d0986de6912b5892e7c015a95ca27fe" integrity sha512-cuHoUgS/V3hLdjJOLTT691+G2QoqAjCVLmr4kJXR4ha56w1Zdu8UUQ5TxLRqudgNjwXeQxKMq4j+lyf9sWuslg== -"@types/d3-shape@3.1.6", "@types/d3-shape@^3.0.0": +"@types/d3-shape@*", "@types/d3-shape@3.1.6", "@types/d3-shape@^3.0.0": version "3.1.6" resolved "https://registry.yarnpkg.com/@types/d3-shape/-/d3-shape-3.1.6.tgz#65d40d5a548f0a023821773e39012805e6e31a72" integrity sha512-5KKk5aKGu2I+O6SONMYSNflgiP0WfZIQvVUMan50wHsLG1G94JlxEVnCpQARfTtzytuY0p/9PXXZb3I7giofIA== @@ -4994,6 +5087,11 @@ dependencies: "@types/d3-path" "^1" +"@types/d3-time-format@*": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@types/d3-time-format/-/d3-time-format-4.0.3.tgz#d6bc1e6b6a7db69cccfbbdd4c34b70632d9e9db2" + integrity sha512-5xg9rC+wWL8kdDj153qZcsJ0FWiFt0J5RB6LYUNZjwSnesfblqrI/bJ1wBdJ8OQfncgbJG5+2F+qfqnqyzYxyg== + "@types/d3-time-format@3.0.4", "@types/d3-time-format@^3.0.0": version "3.0.4" resolved "https://registry.yarnpkg.com/@types/d3-time-format/-/d3-time-format-3.0.4.tgz#f972bdd7be1048184577cf235a44721a78c6bb4b" @@ -5004,6 +5102,62 @@ resolved "https://registry.yarnpkg.com/@types/d3-time/-/d3-time-3.0.3.tgz#3c186bbd9d12b9d84253b6be6487ca56b54f88be" integrity sha512-2p6olUZ4w3s+07q3Tm2dbiMZy5pCDfYwtLXXHUnVzXgQlZ/OyPtUz6OL382BkOuGlLXqfT+wqv8Fw2v8/0geBw== +"@types/d3-timer@*": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@types/d3-timer/-/d3-timer-3.0.2.tgz#70bbda77dc23aa727413e22e214afa3f0e852f70" + integrity sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw== + +"@types/d3-transition@*": + version "3.0.8" + resolved "https://registry.yarnpkg.com/@types/d3-transition/-/d3-transition-3.0.8.tgz#677707f5eed5b24c66a1918cde05963021351a8f" + integrity sha512-ew63aJfQ/ms7QQ4X7pk5NxQ9fZH/z+i24ZfJ6tJSfqxJMrYLiK01EAs2/Rtw/JreGUsS3pLPNV644qXFGnoZNQ== + dependencies: + "@types/d3-selection" "*" + +"@types/d3-zoom@*": + version "3.0.8" + resolved "https://registry.yarnpkg.com/@types/d3-zoom/-/d3-zoom-3.0.8.tgz#dccb32d1c56b1e1c6e0f1180d994896f038bc40b" + integrity sha512-iqMC4/YlFCSlO8+2Ii1GGGliCAY4XdeG748w5vQUbevlbDu0zSjH/+jojorQVBK/se0j6DUFNPBGSqD3YWYnDw== + dependencies: + "@types/d3-interpolate" "*" + "@types/d3-selection" "*" + +"@types/d3@^7.0.0": + version "7.4.3" + resolved "https://registry.yarnpkg.com/@types/d3/-/d3-7.4.3.tgz#d4550a85d08f4978faf0a4c36b848c61eaac07e2" + integrity sha512-lZXZ9ckh5R8uiFVt8ogUNf+pIrK4EsWrx2Np75WvF/eTpJ0FMHNhjXk8CKEx/+gpHbNQyJWehbFaTvqmHWB3ww== + dependencies: + "@types/d3-array" "*" + "@types/d3-axis" "*" + "@types/d3-brush" "*" + "@types/d3-chord" "*" + "@types/d3-color" "*" + "@types/d3-contour" "*" + "@types/d3-delaunay" "*" + "@types/d3-dispatch" "*" + "@types/d3-drag" "*" + "@types/d3-dsv" "*" + "@types/d3-ease" "*" + "@types/d3-fetch" "*" + "@types/d3-force" "*" + "@types/d3-format" "*" + "@types/d3-geo" "*" + "@types/d3-hierarchy" "*" + "@types/d3-interpolate" "*" + "@types/d3-path" "*" + "@types/d3-polygon" "*" + "@types/d3-quadtree" "*" + "@types/d3-random" "*" + "@types/d3-scale" "*" + "@types/d3-scale-chromatic" "*" + "@types/d3-selection" "*" + "@types/d3-shape" "*" + "@types/d3-time" "*" + "@types/d3-time-format" "*" + "@types/d3-timer" "*" + "@types/d3-transition" "*" + "@types/d3-zoom" "*" + "@types/debug@^4.0.0": version "4.1.12" resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.12.tgz#a155f21690871953410df4b6b6f53187f0500917" @@ -5150,6 +5304,11 @@ dependencies: "@types/node" "*" +"@types/geojson@*": + version "7946.0.14" + resolved "https://registry.yarnpkg.com/@types/geojson/-/geojson-7946.0.14.tgz#319b63ad6df705ee2a65a73ef042c8271e696613" + integrity sha512-WCfD5Ht3ZesJUsONdhvm84dmzWOiOzOAqOncN0++w0lBw1o8OuDNJF2McvvCef/yBqb/HYRahp1BYtODFQ8bRg== + "@types/glob-stream@*": version "6.1.0" resolved "https://registry.yarnpkg.com/@types/glob-stream/-/glob-stream-6.1.0.tgz#7ede8a33e59140534f8d8adfb8ac9edfb31897bc" @@ -9155,36 +9314,74 @@ cypress@13.6.4: dependencies: internmap "^1.0.0" -"d3-array@2 - 3", "d3-array@2.10.0 - 3", "d3-array@2.5.0 - 3", d3-array@3.2.4, d3-array@^3.0.0, d3-array@^3.2.0, d3-array@^3.2.1: +"d3-array@2 - 3", "d3-array@2.10.0 - 3", "d3-array@2.5.0 - 3", d3-array@3, d3-array@3.2.4, d3-array@^3.0.0, d3-array@^3.2.0, d3-array@^3.2.1: version "3.2.4" resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-3.2.4.tgz#15fec33b237f97ac5d7c986dc77da273a8ed0bb5" integrity sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg== dependencies: internmap "1 - 2" -d3-axis@3.0.0, d3-axis@^3.0.0: +d3-axis@3, d3-axis@3.0.0, d3-axis@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/d3-axis/-/d3-axis-3.0.0.tgz#c42a4a13e8131d637b745fc2973824cfeaf93322" integrity sha512-IH5tgjV4jE/GhHkRV0HiVYPDtvfjHQlQfJHs0usq7M30XcSBvOotpmH1IgkcXsO/5gEQZD43B//fc7SRT5S+xw== +d3-brush@3: + version "3.0.0" + resolved "https://registry.yarnpkg.com/d3-brush/-/d3-brush-3.0.0.tgz#6f767c4ed8dcb79de7ede3e1c0f89e63ef64d31c" + integrity sha512-ALnjWlVYkXsVIGlOsuWH1+3udkYFI48Ljihfnh8FZPF2QS9o+PzGLBslO0PjzVoHLZ2KCVgAM8NVkXPJB2aNnQ== + dependencies: + d3-dispatch "1 - 3" + d3-drag "2 - 3" + d3-interpolate "1 - 3" + d3-selection "3" + d3-transition "3" + +d3-chord@3: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-chord/-/d3-chord-3.0.1.tgz#d156d61f485fce8327e6abf339cb41d8cbba6966" + integrity sha512-VE5S6TNa+j8msksl7HwjxMHDM2yNK3XCkusIlpX5kwauBfXuyLAtNg9jCp/iHH61tgI4sb6R/EIMWCqEIdjT/g== + dependencies: + d3-path "1 - 3" + d3-collection@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/d3-collection/-/d3-collection-1.0.7.tgz#349bd2aa9977db071091c13144d5e4f16b5b310e" integrity sha512-ii0/r5f4sjKNTfh84Di+DpztYwqKhEyUlKoPrzUFfeSkWxjW49xU2QzO9qrPrNkpdI0XJkfzvmTu8V2Zylln6A== -"d3-color@1 - 3", d3-color@^3.1.0: +"d3-color@1 - 3", d3-color@3, d3-color@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-3.1.0.tgz#395b2833dfac71507f12ac2f7af23bf819de24e2" integrity sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA== -d3-contour@^4.0.0: +d3-contour@4, d3-contour@^4.0.0: version "4.0.2" resolved "https://registry.yarnpkg.com/d3-contour/-/d3-contour-4.0.2.tgz#bb92063bc8c5663acb2422f99c73cbb6c6ae3bcc" integrity sha512-4EzFTRIikzs47RGmdxbeUvLWtGedDUNkTcmzoeyg4sP/dvCexO47AaQL7VKy/gul85TOxw+IBgA8US2xwbToNA== dependencies: d3-array "^3.2.0" -"d3-dsv@1 - 3": +d3-delaunay@6: + version "6.0.4" + resolved "https://registry.yarnpkg.com/d3-delaunay/-/d3-delaunay-6.0.4.tgz#98169038733a0a5babbeda55054f795bb9e4a58b" + integrity sha512-mdjtIZ1XLAM8bm/hx3WwjfHt6Sggek7qH043O8KEjDXN40xi3vx/6pYSVTwLjEgiXQTbvaouWKynLBiUZ6SK6A== + dependencies: + delaunator "5" + +"d3-dispatch@1 - 3", d3-dispatch@3: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-dispatch/-/d3-dispatch-3.0.1.tgz#5fc75284e9c2375c36c839411a0cf550cbfc4d5e" + integrity sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg== + +"d3-drag@2 - 3", d3-drag@3: + version "3.0.0" + resolved "https://registry.yarnpkg.com/d3-drag/-/d3-drag-3.0.0.tgz#994aae9cd23c719f53b5e10e3a0a6108c69607ba" + integrity sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg== + dependencies: + d3-dispatch "1 - 3" + d3-selection "3" + +"d3-dsv@1 - 3", d3-dsv@3: version "3.0.1" resolved "https://registry.yarnpkg.com/d3-dsv/-/d3-dsv-3.0.1.tgz#c63af978f4d6a0d084a52a673922be2160789b73" integrity sha512-UG6OvdI5afDIFP9w4G0mNq50dSOsXHJaRE8arAS5o9ApWnIElp8GZw1Dun8vP8OyHOZ/QJUKUJwxiiCCnUwm+Q== @@ -9193,19 +9390,33 @@ d3-contour@^4.0.0: iconv-lite "0.6" rw "1" -d3-fetch@3.0.1: +"d3-ease@1 - 3", d3-ease@3: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-ease/-/d3-ease-3.0.1.tgz#9658ac38a2140d59d346160f1f6c30fda0bd12f4" + integrity sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w== + +d3-fetch@3, d3-fetch@3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/d3-fetch/-/d3-fetch-3.0.1.tgz#83141bff9856a0edb5e38de89cdcfe63d0a60a22" integrity sha512-kpkQIM20n3oLVBKGg6oHrUchHM3xODkTzjMoj7aWQFq5QEM+R6E4WkzT5+tojDY7yjez8KgCBRoj4aEr99Fdqw== dependencies: d3-dsv "1 - 3" -"d3-format@1 - 3", d3-format@3.1.0, d3-format@^3.0.0, d3-format@^3.1.0: +d3-force@3: + version "3.0.0" + resolved "https://registry.yarnpkg.com/d3-force/-/d3-force-3.0.0.tgz#3e2ba1a61e70888fe3d9194e30d6d14eece155c4" + integrity sha512-zxV/SsA+U4yte8051P4ECydjD/S+qeYtnaIyAs9tgHCqfguma/aAQDjo85A9Z6EKhBirHRJHXIgJUlffT4wdLg== + dependencies: + d3-dispatch "1 - 3" + d3-quadtree "1 - 3" + d3-timer "1 - 3" + +"d3-format@1 - 3", d3-format@3, d3-format@3.1.0, d3-format@^3.0.0, d3-format@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-3.1.0.tgz#9260e23a28ea5cb109e93b21a06e24e2ebd55641" integrity sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA== -d3-geo@^3.1.0: +d3-geo@3, d3-geo@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/d3-geo/-/d3-geo-3.1.1.tgz#6027cf51246f9b2ebd64f99e01dc7c3364033a4d" integrity sha512-637ln3gXKXOwhalDzinUgY83KzNWZRKbYubaG+fGVuc/dxO64RRljtCTnf5ecMyE1RIdtqpkVcq0IbtU2S8j2Q== @@ -9217,12 +9428,12 @@ d3-hexbin@^0.2.2: resolved "https://registry.yarnpkg.com/d3-hexbin/-/d3-hexbin-0.2.2.tgz#9c5837dacfd471ab05337a9e91ef10bfc4f98831" integrity sha1-nFg32s/UcasFM3qeke8Qv8T5iDE= -d3-hierarchy@3.1.2, d3-hierarchy@^3.0.0, d3-hierarchy@^3.1.2: +d3-hierarchy@3, d3-hierarchy@3.1.2, d3-hierarchy@^3.0.0, d3-hierarchy@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz#b01cd42c1eed3d46db77a5966cf726f8c09160c6" integrity sha512-FX/9frcub54beBdugHjDCdikxThEqjnR93Qt7PvQTOHxyiNCAlvMrHhclk3cD5VeAaq9fxmfRp+CnWw9rEMBuA== -"d3-interpolate@1.2.0 - 3", d3-interpolate@^3.0.1: +"d3-interpolate@1 - 3", "d3-interpolate@1.2.0 - 3", d3-interpolate@3, d3-interpolate@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-3.0.1.tgz#3c47aa5b32c5b3dfb56ef3fd4342078a632b400d" integrity sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g== @@ -9234,11 +9445,26 @@ d3-path@1: resolved "https://registry.yarnpkg.com/d3-path/-/d3-path-1.0.7.tgz#8de7cd693a75ac0b5480d3abaccd94793e58aae8" integrity sha512-q0cW1RpvA5c5ma2rch62mX8AYaiLX0+bdaSM2wxSU9tXjU4DNvkx9qiUvjkuWCj3p22UO/hlPivujqMiR9PDzA== -d3-path@^3.1.0: +"d3-path@1 - 3", d3-path@3, d3-path@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/d3-path/-/d3-path-3.1.0.tgz#22df939032fb5a71ae8b1800d61ddb7851c42526" integrity sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ== +d3-polygon@3: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-polygon/-/d3-polygon-3.0.1.tgz#0b45d3dd1c48a29c8e057e6135693ec80bf16398" + integrity sha512-3vbA7vXYwfe1SYhED++fPUQlWSYTTGmFmQiany/gdbiWgU/iEyQzyymwL9SkJjFFuCS4902BSzewVGsHHmHtXg== + +"d3-quadtree@1 - 3", d3-quadtree@3: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-quadtree/-/d3-quadtree-3.0.1.tgz#6dca3e8be2b393c9a9d514dabbd80a92deef1a4f" + integrity sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw== + +d3-random@3: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-random/-/d3-random-3.0.1.tgz#d4926378d333d9c0bfd1e6fa0194d30aebaa20f4" + integrity sha512-FXMe9GfxTxqd5D6jFsQ+DJ8BJS4E/fT5mqqdjovykEB2oFbTMDVdg1MGFxfQW+FBOGoB++k8swBrgwSHT1cUXQ== + d3-sankey@0.12.3, d3-sankey@^0.12.3: version "0.12.3" resolved "https://registry.yarnpkg.com/d3-sankey/-/d3-sankey-0.12.3.tgz#b3c268627bd72e5d80336e8de6acbfec9d15d01d" @@ -9247,7 +9473,15 @@ d3-sankey@0.12.3, d3-sankey@^0.12.3: d3-array "1 - 2" d3-shape "^1.2.0" -d3-scale@4.0.2, d3-scale@^4.0.0, d3-scale@^4.0.2: +d3-scale-chromatic@3: + version "3.1.0" + resolved "https://registry.yarnpkg.com/d3-scale-chromatic/-/d3-scale-chromatic-3.1.0.tgz#34c39da298b23c20e02f1a4b239bd0f22e7f1314" + integrity sha512-A3s5PWiZ9YCXFye1o246KoscMWqf8BsD9eRiJ3He7C9OBaxKhAd5TFCdEx/7VbKtxxTsu//1mMJFrEt572cEyQ== + dependencies: + d3-color "1 - 3" + d3-interpolate "1 - 3" + +d3-scale@4, d3-scale@4.0.2, d3-scale@^4.0.0, d3-scale@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/d3-scale/-/d3-scale-4.0.2.tgz#82b38e8e8ff7080764f8dcec77bd4be393689396" integrity sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ== @@ -9258,12 +9492,12 @@ d3-scale@4.0.2, d3-scale@^4.0.0, d3-scale@^4.0.2: d3-time "2.1.1 - 3" d3-time-format "2 - 4" -d3-selection@3.0.0, d3-selection@^3.0.0: +"d3-selection@2 - 3", d3-selection@3, d3-selection@3.0.0, d3-selection@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/d3-selection/-/d3-selection-3.0.0.tgz#c25338207efa72cc5b9bd1458a1a41901f1e1b31" integrity sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ== -d3-shape@3.2.0, d3-shape@^3.0.0, d3-shape@^3.2.0: +d3-shape@3, d3-shape@3.2.0, d3-shape@^3.0.0, d3-shape@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/d3-shape/-/d3-shape-3.2.0.tgz#a1a839cbd9ba45f28674c69d7f855bcf91dfc6a5" integrity sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA== @@ -9284,6 +9518,13 @@ d3-shape@^1.2.0: dependencies: d3-time "1 - 2" +d3-time-format@4: + version "4.1.0" + resolved "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-4.1.0.tgz#7ab5257a5041d11ecb4fe70a5c7d16a195bb408a" + integrity sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg== + dependencies: + d3-time "1 - 3" + "d3-time@1 - 2": version "2.1.1" resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-2.1.1.tgz#e9d8a8a88691f4548e68ca085e5ff956724a6682" @@ -9291,18 +9532,81 @@ d3-shape@^1.2.0: dependencies: d3-array "2" -"d3-time@2.1.1 - 3", d3-time@3.1.0, d3-time@^3.0.0: +"d3-time@1 - 3", "d3-time@2.1.1 - 3", d3-time@3, d3-time@3.1.0, d3-time@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-3.1.0.tgz#9310db56e992e3c0175e1ef385e545e48a9bb5c7" integrity sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q== dependencies: d3-array "2 - 3" +"d3-timer@1 - 3", d3-timer@3: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-timer/-/d3-timer-3.0.1.tgz#6284d2a2708285b1abb7e201eda4380af35e63b0" + integrity sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA== + +"d3-transition@2 - 3", d3-transition@3: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-transition/-/d3-transition-3.0.1.tgz#6869fdde1448868077fdd5989200cb61b2a1645f" + integrity sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w== + dependencies: + d3-color "1 - 3" + d3-dispatch "1 - 3" + d3-ease "1 - 3" + d3-interpolate "1 - 3" + d3-timer "1 - 3" + d3-voronoi@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/d3-voronoi/-/d3-voronoi-1.1.4.tgz#dd3c78d7653d2bb359284ae478645d95944c8297" integrity sha512-dArJ32hchFsrQ8uMiTBLq256MpnZjeuBtdHpaDlYuQyjU0CVzCJl/BVW+SkszaAeH95D/8gxqAhgx0ouAWAfRg== +d3-zoom@3: + version "3.0.0" + resolved "https://registry.yarnpkg.com/d3-zoom/-/d3-zoom-3.0.0.tgz#d13f4165c73217ffeaa54295cd6969b3e7aee8f3" + integrity sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw== + dependencies: + d3-dispatch "1 - 3" + d3-drag "2 - 3" + d3-interpolate "1 - 3" + d3-selection "2 - 3" + d3-transition "2 - 3" + +d3@^7.0.0: + version "7.9.0" + resolved "https://registry.yarnpkg.com/d3/-/d3-7.9.0.tgz#579e7acb3d749caf8860bd1741ae8d371070cd5d" + integrity sha512-e1U46jVP+w7Iut8Jt8ri1YsPOvFpg46k+K8TpCb0P+zjCkjkPnV7WzfDJzMHy1LnA+wj5pLT1wjO901gLXeEhA== + dependencies: + d3-array "3" + d3-axis "3" + d3-brush "3" + d3-chord "3" + d3-color "3" + d3-contour "4" + d3-delaunay "6" + d3-dispatch "3" + d3-drag "3" + d3-dsv "3" + d3-ease "3" + d3-fetch "3" + d3-force "3" + d3-format "3" + d3-geo "3" + d3-hierarchy "3" + d3-interpolate "3" + d3-path "3" + d3-polygon "3" + d3-quadtree "3" + d3-random "3" + d3-scale "4" + d3-scale-chromatic "3" + d3-selection "3" + d3-shape "3" + d3-time "3" + d3-time-format "4" + d3-timer "3" + d3-transition "3" + d3-zoom "3" + d@1, d@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a" @@ -9728,6 +10032,13 @@ del@^5.1.0: rimraf "^3.0.0" slash "^3.0.0" +delaunator@5: + version "5.0.1" + resolved "https://registry.yarnpkg.com/delaunator/-/delaunator-5.0.1.tgz#39032b08053923e924d6094fe2cde1a99cc51278" + integrity sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw== + dependencies: + robust-predicates "^3.0.2" + delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -20404,6 +20715,11 @@ rimraf@3.0.2, rimraf@^3.0.0, rimraf@^3.0.2: dependencies: glob "^7.1.3" +robust-predicates@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/robust-predicates/-/robust-predicates-3.0.2.tgz#d5b28528c4824d20fc48df1928d41d9efa1ad771" + integrity sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg== + rollup-plugin-commonjs@10.1.0: version "10.1.0" resolved "https://registry.yarnpkg.com/rollup-plugin-commonjs/-/rollup-plugin-commonjs-10.1.0.tgz#417af3b54503878e084d127adf4d1caf8beb86fb" @@ -21432,7 +21748,7 @@ string-length@^5.0.1: char-regex "^2.0.0" strip-ansi "^7.0.1" -"string-width-cjs@npm:string-width@^4.2.0": +"string-width-cjs@npm:string-width@^4.2.0", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -21467,15 +21783,6 @@ string-width@^3.0.0, string-width@^3.1.0: is-fullwidth-code-point "^2.0.0" strip-ansi "^5.1.0" -string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - string-width@^5.0.1, string-width@^5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" @@ -21576,7 +21883,7 @@ stringify-object@^3.3.0: is-obj "^1.0.1" is-regexp "^1.0.0" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1": +"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -21611,13 +21918,6 @@ strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: dependencies: ansi-regex "^4.1.0" -strip-ansi@^6.0.0, strip-ansi@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== - dependencies: - ansi-regex "^5.0.1" - strip-ansi@^7.0.1, strip-ansi@^7.1.0: version "7.1.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45" @@ -23862,7 +24162,7 @@ workspace-tools@^0.27.0: js-yaml "^4.1.0" micromatch "^4.0.0" -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== @@ -23897,15 +24197,6 @@ wrap-ansi@^6.2.0: string-width "^4.1.0" strip-ansi "^6.0.0" -wrap-ansi@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - wrap-ansi@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" From e26840b654e801ba411bdaa910dffd7884ef54b9 Mon Sep 17 00:00:00 2001 From: "Atishay Jain (atisjai)" <98592573+AtishayMsft@users.noreply.github.com> Date: Mon, 16 Sep 2024 05:58:20 +0000 Subject: [PATCH 02/60] Add logic for multistacked bar chart --- .../horizontalbarchart.options.ts | 38 +++ .../horizontalbarchart/horizontalbarchart.ts | 280 +++++++++++++++++- 2 files changed, 315 insertions(+), 3 deletions(-) create mode 100644 packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts new file mode 100644 index 0000000000000..61fa1b34b1b84 --- /dev/null +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts @@ -0,0 +1,38 @@ +export enum Variant { + PartToWhole = 'part-to-whole', + AbsoluteScale = 'absolute-scale', +} + +export interface IChartDataPoint { + /** + * Legend text for the datapoint in the chart + */ + legend?: string; + + /** + * data the datapoint in the chart + */ + data?: number; + + /** + * onClick action for each datapoint in the chart + */ + onClick?: VoidFunction; + + /** + * Color for the legend in the chart. If not provided, it will fallback on the default color palette. + */ + color?: string; +} + +export interface IChartProps { + /** + * chart title for the chart + */ + chartTitle?: string; + + /** + * data for the points in the chart + */ + chartData?: IChartDataPoint[]; +} diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts index ec77a9a4b8f5a..dea296463f365 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -1,5 +1,6 @@ -import { FASTElement } from '@microsoft/fast-element'; +import { attr, FASTElement } from '@microsoft/fast-element'; import * as d3 from 'd3'; +import { IChartDataPoint, IChartProps, Variant } from './horizontalbarchart.options.js'; /** * A Horizontal Bar Chart HTML Element. @@ -17,17 +18,122 @@ export class HorizontalBarChart extends FASTElement { return 'horizontalbarchart'; } + /** + * @public + * The type of the dialog modal + */ + @attr + public variant: Variant = Variant.AbsoluteScale; + + /** + * @public + * The type of the dialog modal + */ + @attr + public _isRTL: boolean = false; + + @attr + public inpData: IChartProps[] = []; + + private barHeight: number = 12; + constructor() { super(); + this.attachShadow({ mode: 'open' }); + + const chartPoints1: IChartDataPoint[] = [ + { + legend: 'Debit card numbers (EU and USA)', + data: 40, + color: '#0099BC', + }, + { + legend: 'Passport numbers (USA)', + data: 23, + color: '#77004D', + }, + { + legend: 'Social security numbers', + data: 35, + color: '#4F68ED', + }, + { + legend: 'Credit card numbers', + data: 87, + color: '#AE8C00', + }, + { + legend: 'Tax identification numbers (USA)', + data: 87, + color: '#004E8C', + }, + ]; + + const chartPoints2: IChartDataPoint[] = [ + { + legend: 'Debit card numbers (EU and USA)', + data: 40, + color: '#0099BC', + }, + { + legend: 'Passport numbers (USA)', + data: 56, + color: '#77004D', + }, + { + legend: 'Social security numbers', + data: 35, + color: '#4F68ED', + }, + { + legend: 'Credit card numbers', + data: 92, + color: '#AE8C00', + }, + { + legend: 'Tax identification numbers (USA)', + data: 87, + color: '#004E8C', + }, + ]; + + const chartPoints3: IChartDataPoint[] = [ + { + legend: 'Phone Numbers', + data: 40, + color: '#881798', + }, + { + legend: 'Credit card Numbers', + data: 23, + color: '#AE8C00', + }, + ]; + + this.inpData = [ + { + chartTitle: 'Monitored First', + chartData: chartPoints1, + }, + { + chartTitle: 'Monitored Second', + chartData: chartPoints2, + }, + { + chartTitle: 'Unmonitored', + chartData: chartPoints3, + }, + ]; } private bindEvents() {} connectedCallback() { - this.render(); + //this.render(); + this.renderSingle(); } - render() { + renderSingle() { const svg = d3 .select(this.shadowRoot) .append('svg') @@ -77,4 +183,172 @@ export class HorizontalBarChart extends FASTElement { .attr('fill', 'black') // Text color .attr('font-size', '12px'); // Text size } + + private createSingleChartBars(singleChartData: IChartProps, index: number, nodes: any) { + const singleChartBars = this._createBarsAndLegends(singleChartData!, index); + + // create a div element. Loop through chart bars and add to the div as its children + const divEle = d3 + .select(nodes[index]) + .attr('key', index) + .attr('id', `_MSBC_bar-${index}`) + .node()! + .appendChild(singleChartBars.node()); + } + + render() { + const div = d3.select(this.shadowRoot).append('div').attr('width', 800).attr('height', 800); + const rootDivEle = d3 + .create('div') + .selectAll('div') + .data(this.inpData!) + .enter() + .append('div') + .each((d, i, nodes) => this.createSingleChartBars(d, i, nodes)); + + div.node()?.appendChild(rootDivEle.node()!); + } + + public _createBarsAndLegends(data: IChartProps, barNo?: number) { + const noOfBars = + data.chartData?.reduce((count: number, point: IChartDataPoint) => (count += (point.data || 0) > 0 ? 1 : 0), 0) || + 1; + const barSpacingInPercent = 1; + const totalMarginPercent = barSpacingInPercent * (noOfBars - 1); + // calculating starting point of each bar and it's range + const startingPoint: number[] = []; + const barTotalValue = data.chartData!.reduce( + (acc: number, point: IChartDataPoint) => acc + (point.data ? point.data : 0), + 0, + ); + const total = this.variant === Variant.AbsoluteScale ? 400 : barTotalValue; + + let sumOfPercent = 0; + data.chartData!.map((point: IChartDataPoint, index: number) => { + const pointData = point.data ? point.data : 0; + const currValue = (pointData / total) * 100; + let value = currValue ? currValue : 0; + + if (value < 1 && value !== 0) { + value = 1; + } else if (value > 99 && value !== 100) { + value = 99; + } + sumOfPercent += value; + + return sumOfPercent; + }); + + // Include an imaginary placeholder bar with value equal to + // the difference between longestBarTotalValue and barTotalValue + // while calculating sumOfPercent to get correct scalingRatio for absolute-scale variant + if (this.variant === Variant.AbsoluteScale) { + let value = total === 0 ? 0 : ((total - barTotalValue) / total) * 100; + if (value < 1 && value !== 0) { + value = 1; + } else if (value > 99 && value !== 100) { + value = 99; + } + sumOfPercent += value; + } + + /** + * The %age of the space occupied by the margin needs to subtracted + * while computing the scaling ratio, since the margins are not being + * scaled down, only the data is being scaled down from a higher percentage to lower percentage + * Eg: 95% of the space is taken by the bars, 5% by the margins + * Now if the sumOfPercent is 120% -> This needs to be scaled down to 95%, not 100% + * since that's only space available to the bars + */ + + const scalingRatio = sumOfPercent !== 0 ? sumOfPercent / (100 - totalMarginPercent) : 1; + + let prevPosition = 0; + let value = 0; + + function createBars(point: IChartDataPoint, index: number) { + const startColor: string = point.color!; + const endColor: string = startColor; + const _isRTL = false; + const barHeight = 12; + const pointData = point.data ? point.data : 0; + if (index > 0) { + prevPosition += value; + } + value = (pointData / total) * 100 ? (pointData / total) * 100 : 0; + if (value < 1 && value !== 0) { + value = 1 / scalingRatio; + } else if (value > 99 && value !== 100) { + value = 99 / scalingRatio; + } else { + value = value / scalingRatio; + } + + startingPoint.push(prevPosition); + + const gEle = d3 + .select(this) // 'this' refers to the current 'rect' element + .attr('key', index) + .attr('role', 'img') + .attr('aria-label', pointData); + + gEle + .append('rect') + .attr('key', index) + .attr('id', `${barNo}-${index}`) + .attr( + 'x', + `${ + _isRTL + ? 100 - startingPoint[index] - value - barSpacingInPercent * index + : startingPoint[index] + barSpacingInPercent * index + }%`, + ) + .attr('y', 0) + .attr('width', value + '%') + .attr('height', barHeight); + } + + const svgEle = d3 + .create('svg') + .attr('aria-label', data?.chartTitle ? data?.chartTitle : '') + .selectAll('g') + .data(data.chartData!) + .enter() + .append('g') + .each(createBars); + + if (this.variant === Variant.AbsoluteScale) { + const showLabel = true; + const barLabel = barTotalValue; + + if (showLabel) { + svgEle + .append('text') + .attr('key', 'text') + .attr( + 'x', + `${ + this._isRTL + ? 100 - (startingPoint[startingPoint.length - 1] || 0) - value - totalMarginPercent + : (startingPoint[startingPoint.length - 1] || 0) + value + totalMarginPercent + }%`, + ) + .attr('textAnchor', 'start') + .attr('y', this.barHeight / 2) + .attr('dominantBaseline', 'central') + .attr('transform', `translate(${this._isRTL ? -4 : 4})`) + .attr('aria-label', `Total: ${barLabel}`) + .attr('role', 'img') + .text(barLabel); + } + } + + const getChartData = () => (data!.chartData![0].data ? data!.chartData![0].data : 0); + + const containerDiv = d3.create('div'); + containerDiv.node()!.appendChild(svgEle.node()!); // ToDo - Handle nulls properly + + return containerDiv; + } } From 027a7ef5f69dbc07014824f15058730d3654365a Mon Sep 17 00:00:00 2001 From: "Atishay Jain (atisjai)" <98592573+AtishayMsft@users.noreply.github.com> Date: Mon, 16 Sep 2024 09:02:48 +0000 Subject: [PATCH 03/60] Render multi stacked bars --- .../horizontalbarchart/horizontalbarchart.ts | 23 ++++++++----------- 1 file changed, 9 insertions(+), 14 deletions(-) diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts index dea296463f365..78ef65cf87750 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -39,7 +39,6 @@ export class HorizontalBarChart extends FASTElement { constructor() { super(); - this.attachShadow({ mode: 'open' }); const chartPoints1: IChartDataPoint[] = [ { @@ -129,8 +128,7 @@ export class HorizontalBarChart extends FASTElement { private bindEvents() {} connectedCallback() { - //this.render(); - this.renderSingle(); + this.render(); } renderSingle() { @@ -197,16 +195,14 @@ export class HorizontalBarChart extends FASTElement { } render() { - const div = d3.select(this.shadowRoot).append('div').attr('width', 800).attr('height', 800); - const rootDivEle = d3 - .create('div') + const div = d3.select(this.shadowRoot).append('div').attr('width', 800).attr('height', 400); + div + .append('div') .selectAll('div') .data(this.inpData!) .enter() .append('div') .each((d, i, nodes) => this.createSingleChartBars(d, i, nodes)); - - div.node()?.appendChild(rootDivEle.node()!); } public _createBarsAndLegends(data: IChartProps, barNo?: number) { @@ -287,7 +283,7 @@ export class HorizontalBarChart extends FASTElement { startingPoint.push(prevPosition); const gEle = d3 - .select(this) // 'this' refers to the current 'rect' element + .select(this) // 'this' refers to the current 'g' element .attr('key', index) .attr('role', 'img') .attr('aria-label', pointData); @@ -309,8 +305,10 @@ export class HorizontalBarChart extends FASTElement { .attr('height', barHeight); } - const svgEle = d3 - .create('svg') + const containerDiv = d3.create('div'); + + const svgEle = containerDiv + .append('svg') .attr('aria-label', data?.chartTitle ? data?.chartTitle : '') .selectAll('g') .data(data.chartData!) @@ -346,9 +344,6 @@ export class HorizontalBarChart extends FASTElement { const getChartData = () => (data!.chartData![0].data ? data!.chartData![0].data : 0); - const containerDiv = d3.create('div'); - containerDiv.node()!.appendChild(svgEle.node()!); // ToDo - Handle nulls properly - return containerDiv; } } From ee296c079d46e19de29d0eb8517d311fa97483ff Mon Sep 17 00:00:00 2001 From: "Atishay Jain (atisjai)" <98592573+AtishayMsft@users.noreply.github.com> Date: Tue, 17 Sep 2024 11:06:02 +0000 Subject: [PATCH 04/60] Color the bars as per provided colors --- .../web-components/src/horizontalbarchart/horizontalbarchart.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts index 78ef65cf87750..a65796a0c6a94 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -292,6 +292,7 @@ export class HorizontalBarChart extends FASTElement { .append('rect') .attr('key', index) .attr('id', `${barNo}-${index}`) + .attr('style', `fill:${point.color!}`) .attr( 'x', `${ From 01ca8e418de13acbcb75e4fac36b6212e4658429 Mon Sep 17 00:00:00 2001 From: Anush Gupta <74965306+Anush2303@users.noreply.github.com> Date: Fri, 11 Oct 2024 15:33:21 +0530 Subject: [PATCH 05/60] Charts as Web component (#32866) --- .../horizontalbarchart.template.ts | 6 +++++ .../horizontalbarchart/horizontalbarchart.ts | 27 ++++++++++++++++--- 2 files changed, 30 insertions(+), 3 deletions(-) diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts index c35ccea718ad5..b5394a0aed95f 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts @@ -1,6 +1,12 @@ import { ElementViewTemplate, html, ref, slotted } from '@microsoft/fast-element'; +import { createTabster, getGroupper, getMover, getTabsterAttribute, Types } from 'tabster'; import type { HorizontalBarChart } from './horizontalbarchart.js'; +// During the page startup. +const tabsterCore = createTabster(window); +getMover(tabsterCore); +getGroupper(tabsterCore); + /** * Generates a template for the HorizontalBarChart component. * diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts index a65796a0c6a94..ea97be85fd996 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -1,7 +1,13 @@ import { attr, FASTElement } from '@microsoft/fast-element'; import * as d3 from 'd3'; +import { createTabster, getGroupper, getMover, getTabsterAttribute, Types } from 'tabster'; import { IChartDataPoint, IChartProps, Variant } from './horizontalbarchart.options.js'; +// During the page startup. +const tabsterCore = createTabster(window); +getMover(tabsterCore); +getGroupper(tabsterCore); + /** * A Horizontal Bar Chart HTML Element. * @@ -202,7 +208,17 @@ export class HorizontalBarChart extends FASTElement { .data(this.inpData!) .enter() .append('div') - .each((d, i, nodes) => this.createSingleChartBars(d, i, nodes)); + .each((d, i, nodes) => { + this.createSingleChartBars(d, i, nodes); + + //Get the tabster attributes + const attributes = getTabsterAttribute({ root: {} }); + + //Apply attributes directly to the current node + Object.keys(attributes).forEach(key => { + nodes[i].setAttribute(key, attributes[key]); + }); + }); } public _createBarsAndLegends(data: IChartProps, barNo?: number) { @@ -303,13 +319,18 @@ export class HorizontalBarChart extends FASTElement { ) .attr('y', 0) .attr('width', value + '%') - .attr('height', barHeight); + .attr('height', barHeight) + .attr('style', `fill: ${point.color}`) + .attr('tabindex', 0) + .attr('data-tabster', '{"groupper": {...}}"') + .attr('data-tabster', '{"mover": {...}}"'); } const containerDiv = d3.create('div'); const svgEle = containerDiv .append('svg') + .attr('height', 20) .attr('aria-label', data?.chartTitle ? data?.chartTitle : '') .selectAll('g') .data(data.chartData!) @@ -334,7 +355,7 @@ export class HorizontalBarChart extends FASTElement { }%`, ) .attr('textAnchor', 'start') - .attr('y', this.barHeight / 2) + .attr('y', this.barHeight / 2 + 6) .attr('dominantBaseline', 'central') .attr('transform', `translate(${this._isRTL ? -4 : 4})`) .attr('aria-label', `Total: ${barLabel}`) From ffe7e6fdb726497f2a23448b5ca2bd859c880eb1 Mon Sep 17 00:00:00 2001 From: Anush Gupta <74965306+Anush2303@users.noreply.github.com> Date: Mon, 14 Oct 2024 11:33:41 +0530 Subject: [PATCH 06/60] added callout to multi stacked bar chart (#33013) --- packages/web-components/package.json | 1 - .../horizontalbarchart.styles.ts | 28 +++++++++++++ .../horizontalbarchart/horizontalbarchart.ts | 39 +++++++++++++++++-- 3 files changed, 64 insertions(+), 4 deletions(-) diff --git a/packages/web-components/package.json b/packages/web-components/package.json index 9a61d67971ed7..e811b97142a33 100644 --- a/packages/web-components/package.json +++ b/packages/web-components/package.json @@ -78,7 +78,6 @@ "clean": "node ./scripts/clean dist", "generate-api": "api-extractor run --local", "build": "yarn compile && yarn rollup -c && yarn generate-api", - "lint": "eslint . --ext .ts", "lint:fix": "eslint . --ext .ts --fix", "format": "prettier -w src/**/*.{ts,html} --ignore-path ../../.prettierignore", "format:check": "yarn format -c", diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts index fe157edec22b6..62e60eada27c2 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts @@ -55,5 +55,33 @@ export const styles: ElementStyles = css` .root { background-color: var(--background-color); + width: 100vw; + display: flex; + flex-direction: column; + } + .tooltip { + position: absolute; + display: grid; + overflow: hidden; + padding: 11px 16px 10px 16px; + backgroundcolor: theme.semanticColors.bodyBackground; + backgroundblendmode: normal, luminosity; + text-align: center; + font: 12px sans-serif; + background: white; + box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5); + border: 2px; + pointer-events: none; + opacity: 0; + z-index: 999; + } + .chartTitle { + display: flex; + justify-content: space-between; + text-overflow: ellipsis; + overflow: hidden; + white-space: nowrap; + display: block; + color: theme.palette.neutralPrimary; } `; diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts index ea97be85fd996..5092356486c29 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -134,6 +134,7 @@ export class HorizontalBarChart extends FASTElement { private bindEvents() {} connectedCallback() { + super.connectedCallback(); this.render(); } @@ -201,7 +202,7 @@ export class HorizontalBarChart extends FASTElement { } render() { - const div = d3.select(this.shadowRoot).append('div').attr('width', 800).attr('height', 400); + const div = d3.select(this.shadowRoot).append('div'); div .append('div') .selectAll('div') @@ -326,17 +327,49 @@ export class HorizontalBarChart extends FASTElement { .attr('data-tabster', '{"mover": {...}}"'); } - const containerDiv = d3.create('div'); + const containerDiv = d3.create('div').attr('style', 'position: relative'); + + let tooltip: any; + + containerDiv + .append('span') + .attr('class', 'chartTitle') + .text(data?.chartTitle ? data?.chartTitle : ''); const svgEle = containerDiv .append('svg') .attr('height', 20) + .attr('width', 100 + '%') .attr('aria-label', data?.chartTitle ? data?.chartTitle : '') .selectAll('g') .data(data.chartData!) .enter() .append('g') - .each(createBars); + .each(createBars) + .on('mouseover', function (event, d) { + const tooltipHTML = ` +
+
${d.legend}
+
${d.data}
+
+ `; + tooltip = containerDiv + .append('div') + .attr('class', 'tooltip') + .attr( + 'style', + 'opacity: 1; left: ' + + (event.pageX - containerDiv.node()!.getBoundingClientRect().left + window.scrollX) + + 'px; top: ' + + (event.pageY - (containerDiv.node()!.getBoundingClientRect().top + window.scrollY) - 40) + + 'px;', + ); + tooltip.html(tooltipHTML); + }) + .on('mouseout', function () { + tooltip.attr('style', 'position: absolute; opacity:0'); + }); if (this.variant === Variant.AbsoluteScale) { const showLabel = true; From 4de6c3f62011011e3167d308c2b2769f61bd9ad6 Mon Sep 17 00:00:00 2001 From: krkshitij <110246001+krkshitij@users.noreply.github.com> Date: Mon, 14 Oct 2024 22:57:33 +0530 Subject: [PATCH 07/60] Add web component for donut chart (#33011) --- .../web-components/src/donut-chart/define.ts | 4 ++ .../src/donut-chart/donut-chart.bench.ts | 12 ++++ .../src/donut-chart/donut-chart.definition.ts | 18 +++++ .../src/donut-chart/donut-chart.options.ts | 45 +++++++++++++ .../src/donut-chart/donut-chart.stories.ts | 20 ++++++ .../src/donut-chart/donut-chart.styles.ts | 15 +++++ .../src/donut-chart/donut-chart.template.ts | 22 +++++++ .../src/donut-chart/donut-chart.ts | 66 +++++++++++++++++++ .../web-components/src/donut-chart/index.ts | 4 ++ packages/web-components/src/index-rollup.ts | 1 + packages/web-components/src/index.ts | 1 + 11 files changed, 208 insertions(+) create mode 100644 packages/web-components/src/donut-chart/define.ts create mode 100644 packages/web-components/src/donut-chart/donut-chart.bench.ts create mode 100644 packages/web-components/src/donut-chart/donut-chart.definition.ts create mode 100644 packages/web-components/src/donut-chart/donut-chart.options.ts create mode 100644 packages/web-components/src/donut-chart/donut-chart.stories.ts create mode 100644 packages/web-components/src/donut-chart/donut-chart.styles.ts create mode 100644 packages/web-components/src/donut-chart/donut-chart.template.ts create mode 100644 packages/web-components/src/donut-chart/donut-chart.ts create mode 100644 packages/web-components/src/donut-chart/index.ts diff --git a/packages/web-components/src/donut-chart/define.ts b/packages/web-components/src/donut-chart/define.ts new file mode 100644 index 0000000000000..2363f2c5e5e75 --- /dev/null +++ b/packages/web-components/src/donut-chart/define.ts @@ -0,0 +1,4 @@ +import { FluentDesignSystem } from '../fluent-design-system.js'; +import { definition } from './donut-chart.definition.js'; + +definition.define(FluentDesignSystem.registry); diff --git a/packages/web-components/src/donut-chart/donut-chart.bench.ts b/packages/web-components/src/donut-chart/donut-chart.bench.ts new file mode 100644 index 0000000000000..3e60a418706ae --- /dev/null +++ b/packages/web-components/src/donut-chart/donut-chart.bench.ts @@ -0,0 +1,12 @@ +import { FluentDesignSystem } from '../fluent-design-system.js'; +import { definition } from './donut-chart.definition.js'; + +definition.define(FluentDesignSystem.registry); + +const itemRenderer = () => { + const donutChart = document.createElement('fluent-donut-chart'); + return donutChart; +}; + +export default itemRenderer; +export { tests } from '../utils/benchmark-wrapper.js'; diff --git a/packages/web-components/src/donut-chart/donut-chart.definition.ts b/packages/web-components/src/donut-chart/donut-chart.definition.ts new file mode 100644 index 0000000000000..b597ae75c8939 --- /dev/null +++ b/packages/web-components/src/donut-chart/donut-chart.definition.ts @@ -0,0 +1,18 @@ +import { FluentDesignSystem } from '../fluent-design-system.js'; +import { DonutChart } from './donut-chart.js'; +import { styles } from './donut-chart.styles.js'; +import { template } from './donut-chart.template.js'; + +/** + * @public + * @remarks + * HTML Element: `` + */ +export const definition = DonutChart.compose({ + name: `${FluentDesignSystem.prefix}-donut-chart`, + template, + styles, + shadowOptions: { + delegatesFocus: true, + }, +}); diff --git a/packages/web-components/src/donut-chart/donut-chart.options.ts b/packages/web-components/src/donut-chart/donut-chart.options.ts new file mode 100644 index 0000000000000..ce3409fd608c6 --- /dev/null +++ b/packages/web-components/src/donut-chart/donut-chart.options.ts @@ -0,0 +1,45 @@ +export interface IChartDataPoint { + /** + * Legend text for the datapoint in the chart + */ + legend?: string; + + /** + * data the datapoint in the chart + */ + data?: number; + + /** + * onClick action for each datapoint in the chart + */ + onClick?: VoidFunction; + + /** + * Color for the legend in the chart. If not provided, it will fallback on the default color palette. + */ + color?: string; + + /** + * Callout data for x axis + * This is an optional prop, If haven;t given legend will take + */ + xAxisCalloutData?: string; + + /** + * Callout data for y axis + * This is an optional prop, If haven't given data will take + */ + yAxisCalloutData?: string; +} + +export interface IChartProps { + /** + * chart title for the chart + */ + chartTitle?: string; + + /** + * data for the points in the chart + */ + chartData?: IChartDataPoint[]; +} diff --git a/packages/web-components/src/donut-chart/donut-chart.stories.ts b/packages/web-components/src/donut-chart/donut-chart.stories.ts new file mode 100644 index 0000000000000..4b5c94391e6fc --- /dev/null +++ b/packages/web-components/src/donut-chart/donut-chart.stories.ts @@ -0,0 +1,20 @@ +import { html } from '@microsoft/fast-element'; +import type { Meta, Story, StoryArgs } from '../helpers.stories.js'; +import { renderComponent } from '../helpers.stories.js'; +import { DonutChart as FluentDonutChart } from './donut-chart.js'; + +const storyTemplate = html>` `; + +export default { + title: 'Components/DonutChart', +} as Meta; + +export const Basic: Story = renderComponent(storyTemplate).bind({}); + +export const RTL: Story = renderComponent(html>` +
+
+ +
+
+`); diff --git a/packages/web-components/src/donut-chart/donut-chart.styles.ts b/packages/web-components/src/donut-chart/donut-chart.styles.ts new file mode 100644 index 0000000000000..de56e2859d312 --- /dev/null +++ b/packages/web-components/src/donut-chart/donut-chart.styles.ts @@ -0,0 +1,15 @@ +import { css } from '@microsoft/fast-element'; +import { display } from '../utils/display.js'; + +/** + * Styles for the DonutChart component. + * + * @public + */ +export const styles = css` + ${display('inline-block')} + + .root { + background-color: var(--background-color); + } +`; diff --git a/packages/web-components/src/donut-chart/donut-chart.template.ts b/packages/web-components/src/donut-chart/donut-chart.template.ts new file mode 100644 index 0000000000000..dc2583df2df33 --- /dev/null +++ b/packages/web-components/src/donut-chart/donut-chart.template.ts @@ -0,0 +1,22 @@ +import { ElementViewTemplate, html, ref, slotted } from '@microsoft/fast-element'; +import type { DonutChart } from './donut-chart.js'; + +/** + * Generates a template for the DonutChart component. + * + * @public + */ +export function donutChartTemplate(): ElementViewTemplate { + return html` + + `; +} + +/** + * @internal + */ +export const template: ElementViewTemplate = donutChartTemplate(); diff --git a/packages/web-components/src/donut-chart/donut-chart.ts b/packages/web-components/src/donut-chart/donut-chart.ts new file mode 100644 index 0000000000000..adcd1472cab90 --- /dev/null +++ b/packages/web-components/src/donut-chart/donut-chart.ts @@ -0,0 +1,66 @@ +import { attr, FASTElement } from '@microsoft/fast-element'; +import * as d3 from 'd3'; +import { IChartDataPoint, IChartProps } from './donut-chart.options.js'; + +export class DonutChart extends FASTElement { + public get type(): 'donut-chart' { + return 'donut-chart'; + } + + @attr + public inpData: IChartProps; + + constructor() { + super(); + + const points: IChartDataPoint[] = [ + { + legend: 'first', + data: 20000, + color: '#0099BC', + }, + { + legend: 'second', + data: 39000, + color: '#77004D', + }, + ]; + + this.inpData = { + chartTitle: 'Donut chart basic example', + chartData: points, + }; + } + + private bindEvents() {} + + connectedCallback() { + this.render(); + } + + render() { + const rootDiv = d3.select(this.shadowRoot).append('div'); + const svg = rootDiv + .append('svg') + .attr('aria-label', this.inpData.chartTitle!) + .attr('width', 200) + .attr('height', 200); + const group = svg.append('g').attr('transform', 'translate(100, 100)'); + const pie = d3 + .pie() + .value((d: any) => d.data) + .padAngle(0.02); + const arc = d3.arc().innerRadius(55).outerRadius(90); + group + .selectAll('path') + .data(pie(this.inpData.chartData)) + .enter() + .append('path') + .attr('d', d => { + console.log(d); + return arc(d); + }) + .attr('fill', d => d.data.color); + group.append('text').attr('text-anchor', 'middle').attr('dominant-baseline', 'middle').text('35,000'); + } +} diff --git a/packages/web-components/src/donut-chart/index.ts b/packages/web-components/src/donut-chart/index.ts new file mode 100644 index 0000000000000..60e54e1a59b9b --- /dev/null +++ b/packages/web-components/src/donut-chart/index.ts @@ -0,0 +1,4 @@ +export { definition as DonutChartDefinition } from './donut-chart.definition.js'; +export { DonutChart } from './donut-chart.js'; +export { styles as DonutChartStyles } from './donut-chart.styles.js'; +export { template as DonutChartTemplate } from './donut-chart.template.js'; diff --git a/packages/web-components/src/index-rollup.ts b/packages/web-components/src/index-rollup.ts index 435f5f7ae07e7..52068f8b1ae4d 100644 --- a/packages/web-components/src/index-rollup.ts +++ b/packages/web-components/src/index-rollup.ts @@ -37,3 +37,4 @@ import './text-input/define.js'; import './text/define.js'; import './toggle-button/define.js'; import './horizontalbarchart/define.js'; +import './donut-chart/define.js'; diff --git a/packages/web-components/src/index.ts b/packages/web-components/src/index.ts index 7dbcbbe7683eb..88fdac9b62c42 100644 --- a/packages/web-components/src/index.ts +++ b/packages/web-components/src/index.ts @@ -312,3 +312,4 @@ export { HorizontalBarChartStyles, HorizontalBarChartTemplate, } from './horizontalbarchart/index.js'; +export { DonutChart, DonutChartDefinition, DonutChartStyles, DonutChartTemplate } from './donut-chart/index.js'; From aa872c6f8e5af6498c1093df80267960c8b4ae3c Mon Sep 17 00:00:00 2001 From: Anush Gupta <74965306+Anush2303@users.noreply.github.com> Date: Thu, 17 Oct 2024 14:25:14 +0530 Subject: [PATCH 08/60] Added legend functionality to Horizontal Bar chart (#33051) --- .../horizontalbarchart.styles.ts | 43 ++++++- .../horizontalbarchart/horizontalbarchart.ts | 106 +++++++++++++++++- 2 files changed, 144 insertions(+), 5 deletions(-) diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts index 62e60eada27c2..5001f170465d8 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts @@ -44,6 +44,7 @@ import { } from '../theme/design-tokens.js'; import { forcedColorsStylesheetBehavior } from '../utils/behaviors/match-media-stylesheet-behavior.js'; import { display } from '../utils/display.js'; +import { typographyCaption1Styles } from '../styles/partials/typography.partials.js'; /** * Styles for the HorizontalBarChart component. @@ -58,6 +59,8 @@ export const styles: ElementStyles = css` width: 100vw; display: flex; flex-direction: column; + align-items: center; + position: relative; } .tooltip { position: absolute; @@ -75,6 +78,9 @@ export const styles: ElementStyles = css` opacity: 0; z-index: 999; } + .bar { + opacity: 1; + } .chartTitle { display: flex; justify-content: space-between; @@ -82,6 +88,41 @@ export const styles: ElementStyles = css` overflow: hidden; white-space: nowrap; display: block; - color: theme.palette.neutralPrimary; + font-size: 14px; + font-weight: 400px; + line-height: 16px; + color: ${colorNeutralForeground1}; + margin-bottom: 5px; + } + .legendcontainer { + display: flex; + flex-direction: row; + flex-wrap: wrap; + padding-top: 16px; + width: 90%; + align-items: center; + margin: -8px 0 0 -8px; + } + .legend { + display: flex; + align-items: center; + cursor: pointer; + border: none; + padding: 8px; + background: none; + text-transform: capitalize; + } + .legendRect { + width: 12px; + height: 12px; + margin-right: 8px; + border: 1px solid; + } + .legendText { + ${typographyCaption1Styles} + color: ${colorNeutralForeground1}; + } + .barLabel { + font-size: ${fontSizeBase300}; } `; diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts index 5092356486c29..16b117b933b75 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -41,6 +41,9 @@ export class HorizontalBarChart extends FASTElement { @attr public inpData: IChartProps[] = []; + @attr + public uniqueLegends: IChartDataPoint[] = []; + private barHeight: number = 12; constructor() { @@ -63,7 +66,7 @@ export class HorizontalBarChart extends FASTElement { color: '#4F68ED', }, { - legend: 'Credit card numbers', + legend: 'Credit card Numbers', data: 87, color: '#AE8C00', }, @@ -91,7 +94,7 @@ export class HorizontalBarChart extends FASTElement { color: '#4F68ED', }, { - legend: 'Credit card numbers', + legend: 'Credit card Numbers', data: 92, color: '#AE8C00', }, @@ -115,6 +118,26 @@ export class HorizontalBarChart extends FASTElement { }, ]; + const allchartPoints = [...chartPoints1, ...chartPoints2, ...chartPoints3]; + + // Create a map to store unique legends + const uniqueLegendsMap = new Map(); + + // Iterate through all chart points and populate the map + allchartPoints.forEach(point => { + // Check if the legend is already in the map + if (!uniqueLegendsMap.has(point.legend)) { + uniqueLegendsMap.set(point.legend, { + legend: point.legend, + data: point.data, + color: point.color, + }); + } + }); + + // Convert the map values back to an array + this.uniqueLegends = Array.from(uniqueLegendsMap.values()); + this.inpData = [ { chartTitle: 'Monitored First', @@ -202,6 +225,8 @@ export class HorizontalBarChart extends FASTElement { } render() { + // Array to hold references to the buttons + const legendButtonRefs: any = []; const div = d3.select(this.shadowRoot).append('div'); div .append('div') @@ -220,6 +245,77 @@ export class HorizontalBarChart extends FASTElement { nodes[i].setAttribute(key, attributes[key]); }); }); + + const legendContainer = document.createElement('div'); + div.node()!.appendChild(legendContainer); + legendContainer.classList.add('legendcontainer'); + + this.uniqueLegends?.forEach((d, index) => { + const button = document.createElement('button'); + legendContainer.appendChild(button); + button.classList.add('legend'); + // Store a reference to the button + legendButtonRefs[index] = button; + + const legendRect = document.createElement('div'); + button.appendChild(legendRect); + legendRect.classList.add('legendRect'); + legendRect.style['backgroundColor'] = d.color!; + legendRect.style['borderColor'] = d.color!; + + const legendText = document.createElement('div'); + button.appendChild(legendText); + legendText.textContent = d.legend!; + legendText.classList.add('legendText'); + }); + + const bars = this.shadowRoot?.querySelectorAll('.bar'); + + for (let i = 0; i < legendButtonRefs.length; i++) { + legendButtonRefs[i].addEventListener('mouseover', () => { + for (let j = 0; j < bars!.length; j++) { + if (bars![j].getAttribute('barinfo') !== legendButtonRefs[i].textContent) { + bars![j].style['opacity'] = '0.1'; + } + } + for (let j = 0; j < legendButtonRefs.length; j++) { + if (j !== i) { + const legendRect = legendButtonRefs[j].getElementsByClassName('legendRect')[0]; + if (legendRect) { + legendRect.style['backgroundColor'] = 'transparent'; + } else { + console.warn(`legendRect not found for button index ${j}`); + } + const legendText = legendButtonRefs[j].getElementsByClassName('legendText')[0]; + if (legendText) { + legendText.style['opacity'] = '0.67'; + } else { + console.warn(`legendText not found for button index ${j}`); + } + } + } + }); + legendButtonRefs[i].addEventListener('mouseout', () => { + for (let j = 0; j < bars!.length; j++) { + bars![j].style['opacity'] = '1'; + } + for (let j = 0; j < legendButtonRefs.length; j++) { + const legendRect = legendButtonRefs[j].getElementsByClassName('legendRect')[0]; + if (legendRect) { + legendRect.style['backgroundColor'] = this.uniqueLegends[j].color; + } else { + console.warn(`legendRect not found for button index ${j}`); + } + + const legendText = legendButtonRefs[j].getElementsByClassName('legendText')[0]; + if (legendText) { + legendText.style['opacity'] = '1'; + } else { + console.warn(`legendText not found for button index ${j}`); + } + } + }); + } } public _createBarsAndLegends(data: IChartProps, barNo?: number) { @@ -309,6 +405,8 @@ export class HorizontalBarChart extends FASTElement { .append('rect') .attr('key', index) .attr('id', `${barNo}-${index}`) + .attr('barinfo', `${point.legend}`) + .attr('class', 'bar') .attr('style', `fill:${point.color!}`) .attr( 'x', @@ -321,7 +419,6 @@ export class HorizontalBarChart extends FASTElement { .attr('y', 0) .attr('width', value + '%') .attr('height', barHeight) - .attr('style', `fill: ${point.color}`) .attr('tabindex', 0) .attr('data-tabster', '{"groupper": {...}}"') .attr('data-tabster', '{"mover": {...}}"'); @@ -339,7 +436,7 @@ export class HorizontalBarChart extends FASTElement { const svgEle = containerDiv .append('svg') .attr('height', 20) - .attr('width', 100 + '%') + .attr('width', 90 + '%') .attr('aria-label', data?.chartTitle ? data?.chartTitle : '') .selectAll('g') .data(data.chartData!) @@ -379,6 +476,7 @@ export class HorizontalBarChart extends FASTElement { svgEle .append('text') .attr('key', 'text') + .attr('class', 'barLabel') .attr( 'x', `${ From 0008ba9e0077989852fb52b99fa71f89de034077 Mon Sep 17 00:00:00 2001 From: krkshitij <110246001+krkshitij@users.noreply.github.com> Date: Fri, 18 Oct 2024 17:54:14 +0530 Subject: [PATCH 09/60] Add more functionalities to donut chart (#33039) --- .../src/donut-chart/donut-chart.options.ts | 5 - .../src/donut-chart/donut-chart.stories.ts | 26 +- .../src/donut-chart/donut-chart.styles.ts | 95 ++++- .../src/donut-chart/donut-chart.template.ts | 8 +- .../src/donut-chart/donut-chart.ts | 336 +++++++++++++++--- .../web-components/src/utils/chart-helpers.ts | 49 +++ 6 files changed, 457 insertions(+), 62 deletions(-) create mode 100644 packages/web-components/src/utils/chart-helpers.ts diff --git a/packages/web-components/src/donut-chart/donut-chart.options.ts b/packages/web-components/src/donut-chart/donut-chart.options.ts index ce3409fd608c6..d41239e013ca9 100644 --- a/packages/web-components/src/donut-chart/donut-chart.options.ts +++ b/packages/web-components/src/donut-chart/donut-chart.options.ts @@ -9,11 +9,6 @@ export interface IChartDataPoint { */ data?: number; - /** - * onClick action for each datapoint in the chart - */ - onClick?: VoidFunction; - /** * Color for the legend in the chart. If not provided, it will fallback on the default color palette. */ diff --git a/packages/web-components/src/donut-chart/donut-chart.stories.ts b/packages/web-components/src/donut-chart/donut-chart.stories.ts index 4b5c94391e6fc..3e04c41d3f315 100644 --- a/packages/web-components/src/donut-chart/donut-chart.stories.ts +++ b/packages/web-components/src/donut-chart/donut-chart.stories.ts @@ -2,8 +2,30 @@ import { html } from '@microsoft/fast-element'; import type { Meta, Story, StoryArgs } from '../helpers.stories.js'; import { renderComponent } from '../helpers.stories.js'; import { DonutChart as FluentDonutChart } from './donut-chart.js'; +import { IChartDataPoint, IChartProps } from './donut-chart.options.js'; -const storyTemplate = html>` `; +const points: IChartDataPoint[] = [ + { + legend: 'first', + data: 20000, + color: '#0099BC', + }, + { + legend: 'second', + data: 39000, + color: '#77004D', + }, +]; + +const data: IChartProps = { + chartTitle: 'Donut chart basic example', + chartData: points, +}; + +const storyTemplate = html>` + + +`; export default { title: 'Components/DonutChart', @@ -14,7 +36,7 @@ export const Basic: Story = renderComponent(storyTemplate).bin export const RTL: Story = renderComponent(html>`
- +
`); diff --git a/packages/web-components/src/donut-chart/donut-chart.styles.ts b/packages/web-components/src/donut-chart/donut-chart.styles.ts index de56e2859d312..3fc6e08b58140 100644 --- a/packages/web-components/src/donut-chart/donut-chart.styles.ts +++ b/packages/web-components/src/donut-chart/donut-chart.styles.ts @@ -1,5 +1,15 @@ import { css } from '@microsoft/fast-element'; import { display } from '../utils/display.js'; +import { + borderRadiusMedium, + colorNeutralBackground1, + colorNeutralForeground1, + colorNeutralForeground2, + colorNeutralShadowAmbient, + colorNeutralShadowKey, + colorTransparentStroke, +} from '../theme/design-tokens.js'; +import { typographyBody1Styles, typographyCaption1Styles, typographyTitle2Styles } from '../styles/index.js'; /** * Styles for the DonutChart component. @@ -10,6 +20,89 @@ export const styles = css` ${display('inline-block')} .root { - background-color: var(--background-color); + ${typographyBody1Styles} + align-items: center; + display: flex; + flex-direction: column; + width: 100%; + height: 100%; + position: relative; + } + + .chart { + box-sizing: content-box; + overflow: visible; + alignment-adjust: center; + display: block; + } + + .legendContainer { + padding-top: 16px; + + white-space: nowrap; + width: 100%; + align-items: center; + margin: -8px 0 0 -8px; + + flex-wrap: wrap; + display: flex; + } + + .insideDonutString { + ${typographyTitle2Styles} + fill: ${colorNeutralForeground1}; + } + + .legend { + display: flex; + align-items: center; + cursor: pointer; + border: none; + padding: 8px; + background: none; + text-transform: capitalize; + } + + .legendRect { + width: 12px; + height: 12px; + margin-right: 8px; + border: 1px solid; + } + + .legendText { + ${typographyCaption1Styles} + color: ${colorNeutralForeground1}; + } + + .calloutContentRoot { + display: grid; + overflow: hidden; + padding: 11px 16px 10px 16px; + background-color: ${colorNeutralBackground1}; + background-blend-mode: normal, luminosity; + + border-radius: ${borderRadiusMedium}; + border: 1px solid ${colorTransparentStroke}; + filter: drop-shadow(0 0 2px ${colorNeutralShadowAmbient}) drop-shadow(0 8px 16px ${colorNeutralShadowKey}); + + position: absolute; + opacity: 0; + z-index: 1; + pointer-events: none; + } + + .calloutBlockContainer { + padding-left: 8px; + color: ${colorNeutralForeground2}; + } + + .calloutLegendText { + ${typographyCaption1Styles} + color: ${colorNeutralForeground2}; + } + + .calloutContentY { + ${typographyTitle2Styles} } `; diff --git a/packages/web-components/src/donut-chart/donut-chart.template.ts b/packages/web-components/src/donut-chart/donut-chart.template.ts index dc2583df2df33..988466df8fdc3 100644 --- a/packages/web-components/src/donut-chart/donut-chart.template.ts +++ b/packages/web-components/src/donut-chart/donut-chart.template.ts @@ -7,13 +7,7 @@ import type { DonutChart } from './donut-chart.js'; * @public */ export function donutChartTemplate(): ElementViewTemplate { - return html` - - `; + return html``; } /** diff --git a/packages/web-components/src/donut-chart/donut-chart.ts b/packages/web-components/src/donut-chart/donut-chart.ts index adcd1472cab90..ad696aa9a8d40 100644 --- a/packages/web-components/src/donut-chart/donut-chart.ts +++ b/packages/web-components/src/donut-chart/donut-chart.ts @@ -1,66 +1,308 @@ -import { attr, FASTElement } from '@microsoft/fast-element'; -import * as d3 from 'd3'; -import { IChartDataPoint, IChartProps } from './donut-chart.options.js'; +import { attr, FASTElement, nullableNumberConverter } from '@microsoft/fast-element'; +import { arc as d3Arc, pie as d3Pie } from 'd3'; +import { createTabster, getMover, getTabsterAttribute, MoverDirections } from 'tabster'; +import { getDataConverter } from '../utils/chart-helpers.js'; +import { IChartProps } from './donut-chart.options.js'; + +const tabsterCore = createTabster(window); +getMover(tabsterCore); export class DonutChart extends FASTElement { - public get type(): 'donut-chart' { - return 'donut-chart'; - } + @attr({ converter: nullableNumberConverter }) + public height: number = 200; + + @attr({ converter: nullableNumberConverter }) + public width: number = 200; + + @attr({ attribute: 'hide-legends', mode: 'boolean' }) + public hideLegends?: boolean; + + @attr({ attribute: 'hide-tooltip', mode: 'boolean' }) + public hideTooltip?: boolean; + + @attr({ converter: getDataConverter('donut-chart') }) + public data!: IChartProps; - @attr - public inpData: IChartProps; + @attr({ attribute: 'inner-radius', converter: nullableNumberConverter }) + public innerRadius: number = 1; + + @attr({ attribute: 'value-inside-donut' }) + public valueInsideDonut?: string; + + private _selectedLegend: string = ''; constructor() { super(); - - const points: IChartDataPoint[] = [ - { - legend: 'first', - data: 20000, - color: '#0099BC', - }, - { - legend: 'second', - data: 39000, - color: '#77004D', - }, - ]; - - this.inpData = { - chartTitle: 'Donut chart basic example', - chartData: points, - }; } private bindEvents() {} connectedCallback() { + super.connectedCallback(); this.render(); } render() { - const rootDiv = d3.select(this.shadowRoot).append('div'); - const svg = rootDiv - .append('svg') - .attr('aria-label', this.inpData.chartTitle!) - .attr('width', 200) - .attr('height', 200); - const group = svg.append('g').attr('transform', 'translate(100, 100)'); - const pie = d3 - .pie() + const rootDiv = document.createElement('div'); + this.shadowRoot?.appendChild(rootDiv); + rootDiv.classList.add('root'); + + const chartWrapper = document.createElement('div'); + rootDiv.appendChild(chartWrapper); + const attributeObj = getTabsterAttribute({ + mover: { direction: MoverDirections.Horizontal, tabbable: true }, + }); + Object.keys(attributeObj).forEach(x => chartWrapper.setAttribute(x, attributeObj[x])); + + const svgNS = 'http://www.w3.org/2000/svg'; + + const svg = document.createElementNS(svgNS, 'svg'); + chartWrapper.appendChild(svg); + svg.setAttribute('width', `${this.width}`); + svg.setAttribute('height', `${this.height}`); + svg.setAttribute('aria-label', this.data.chartTitle); + svg.classList.add('chart'); + + const group = document.createElementNS(svgNS, 'g'); + svg.appendChild(group); + group.setAttribute('transform', `translate(${this.width / 2}, ${this.height / 2})`); + + const pie = d3Pie() .value((d: any) => d.data) .padAngle(0.02); - const arc = d3.arc().innerRadius(55).outerRadius(90); - group - .selectAll('path') - .data(pie(this.inpData.chartData)) - .enter() - .append('path') - .attr('d', d => { - console.log(d); - return arc(d); - }) - .attr('fill', d => d.data.color); - group.append('text').attr('text-anchor', 'middle').attr('dominant-baseline', 'middle').text('35,000'); + const arc = d3Arc() + .innerRadius(this.innerRadius) + .outerRadius((Math.min(this.height, this.width) - 20) / 2); + + const tooltip = document.createElement('div'); + rootDiv.appendChild(tooltip); + tooltip.classList.add('calloutContentRoot'); + + const tooltipBody = document.createElement('div'); + tooltip.appendChild(tooltipBody); + tooltipBody.classList.add('calloutBlockContainer'); + + const legendText = document.createElement('div'); + tooltipBody.appendChild(legendText); + legendText.classList.add('calloutLegendText'); + + const yText = document.createElement('div'); + tooltipBody.appendChild(yText); + yText.classList.add('calloutContentY'); + + pie(this.data.chartData).forEach(d => { + const path = document.createElementNS(svgNS, 'path'); + group.appendChild(path); + path.setAttribute('d', arc(d)); + path.setAttribute('fill', d.data.color); + path.setAttribute('data-id', d.data.legend); + path.setAttribute('tabindex', '0'); + path.setAttribute('aria-label', `${d.data.legend}, ${d.data.data}.`); + path.setAttribute('role', 'img'); + path.addEventListener('mouseover', event => { + if (this._selectedLegend !== '' && this._selectedLegend !== d.data.legend) { + return; + } + + tooltipBody.style['borderLeft'] = `4px solid ${d.data.color}`; + legendText.textContent = d.data.legend; + yText.textContent = d.data.data; + yText.style['color'] = d.data.color; + tooltip.style['opacity'] = '1'; + + const bounds = rootDiv.getBoundingClientRect(); + tooltip.style['left'] = `${event.clientX - bounds.left}px`; + tooltip.style['top'] = `${event.clientY - bounds.top - 85}px`; + }); + path.addEventListener('focus', event => { + if (this._selectedLegend !== '' && this._selectedLegend !== d.data.legend) { + return; + } + + tooltipBody.style['borderLeft'] = `4px solid ${d.data.color}`; + legendText.textContent = d.data.legend; + yText.textContent = d.data.data; + yText.style['color'] = d.data.color; + tooltip.style['opacity'] = '1'; + + const rootBounds = rootDiv.getBoundingClientRect(); + const arcBounds = path.getBoundingClientRect(); + tooltip.style['left'] = `${arcBounds.left + arcBounds.width / 2 - rootBounds.left}px`; + tooltip.style['top'] = `${arcBounds.top - rootBounds.top - 85}px`; + }); + path.addEventListener('blur', event => { + tooltip.style['opacity'] = '0'; + }); + }); + + rootDiv.addEventListener('mouseleave', () => { + tooltip.style['opacity'] = '0'; + }); + + const text = document.createElementNS(svgNS, 'text'); + group.appendChild(text); + text.classList.add('insideDonutString'); + text.setAttribute('y', '5'); + text.setAttribute('text-anchor', 'middle'); + text.setAttribute('dominant-baseline', 'middle'); + text.textContent = this.valueInsideDonut; + + const legends = this.data.chartData?.map(d => ({ title: d.legend, color: d.color })); + + const legendContainer = document.createElement('div'); + rootDiv.appendChild(legendContainer); + legendContainer.classList.add('legendContainer'); + + legends?.forEach(d => { + const button = document.createElement('button'); + legendContainer.appendChild(button); + button.classList.add('legend'); + + const legendRect = document.createElement('div'); + button.appendChild(legendRect); + legendRect.classList.add('legendRect'); + legendRect.style['backgroundColor'] = d.color; + legendRect.style['borderColor'] = d.color; + + const legendText = document.createElement('div'); + button.appendChild(legendText); + legendText.textContent = d.title; + legendText.classList.add('legendText'); + }); + + const buttons = legendContainer.getElementsByTagName('button'); + const arcs = group.getElementsByTagName('path'); + + for (let i = 0; i < buttons.length; i++) { + buttons[i].addEventListener('mouseover', () => { + if (this._selectedLegend !== '') { + return; + } + + for (let j = 0; j < arcs.length; j++) { + if (arcs[j].getAttribute('data-id') !== buttons[i].textContent) { + arcs[j].style['opacity'] = '0.1'; + } else { + arcs[j].style['opacity'] = '1'; + } + } + for (let j = 0; j < buttons.length; j++) { + if (j !== i) { + const legendRect = buttons[j].getElementsByClassName('legendRect')[0]; + legendRect.style['backgroundColor'] = 'transparent'; + + const legendText = buttons[j].getElementsByClassName('legendText')[0]; + legendText.style['opacity'] = '0.67'; + } else { + const legendRect = buttons[j].getElementsByClassName('legendRect')[0]; + legendRect.style['backgroundColor'] = legends[j].color; + + const legendText = buttons[j].getElementsByClassName('legendText')[0]; + legendText.style['opacity'] = '1'; + } + } + }); + buttons[i].addEventListener('mouseout', () => { + if (this._selectedLegend !== '') { + return; + } + + for (let j = 0; j < arcs.length; j++) { + arcs[j].style['opacity'] = '1'; + } + for (let j = 0; j < buttons.length; j++) { + const legendRect = buttons[j].getElementsByClassName('legendRect')[0]; + legendRect.style['backgroundColor'] = legends[j].color; + + const legendText = buttons[j].getElementsByClassName('legendText')[0]; + legendText.style['opacity'] = '1'; + } + }); + buttons[i].addEventListener('focus', () => { + if (this._selectedLegend !== '') { + return; + } + + for (let j = 0; j < arcs.length; j++) { + if (arcs[j].getAttribute('data-id') !== buttons[i].textContent) { + arcs[j].style['opacity'] = '0.1'; + } else { + arcs[j].style['opacity'] = '1'; + } + } + for (let j = 0; j < buttons.length; j++) { + if (j !== i) { + const legendRect = buttons[j].getElementsByClassName('legendRect')[0]; + legendRect.style['backgroundColor'] = 'transparent'; + + const legendText = buttons[j].getElementsByClassName('legendText')[0]; + legendText.style['opacity'] = '0.67'; + } else { + const legendRect = buttons[j].getElementsByClassName('legendRect')[0]; + legendRect.style['backgroundColor'] = legends[j].color; + + const legendText = buttons[j].getElementsByClassName('legendText')[0]; + legendText.style['opacity'] = '1'; + } + } + }); + buttons[i].addEventListener('blur', () => { + if (this._selectedLegend !== '') { + return; + } + + for (let j = 0; j < arcs.length; j++) { + arcs[j].style['opacity'] = '1'; + } + for (let j = 0; j < buttons.length; j++) { + const legendRect = buttons[j].getElementsByClassName('legendRect')[0]; + legendRect.style['backgroundColor'] = legends[j].color; + + const legendText = buttons[j].getElementsByClassName('legendText')[0]; + legendText.style['opacity'] = '1'; + } + }); + buttons[i].addEventListener('click', () => { + if (this._selectedLegend === legends[i].title) { + this._selectedLegend = ''; + + for (let j = 0; j < arcs.length; j++) { + arcs[j].style['opacity'] = '1'; + } + for (let j = 0; j < buttons.length; j++) { + const legendRect = buttons[j].getElementsByClassName('legendRect')[0]; + legendRect.style['backgroundColor'] = legends[j].color; + + const legendText = buttons[j].getElementsByClassName('legendText')[0]; + legendText.style['opacity'] = '1'; + } + } else { + this._selectedLegend = legends[i].title; + + for (let j = 0; j < arcs.length; j++) { + if (arcs[j].getAttribute('data-id') !== buttons[i].textContent) { + arcs[j].style['opacity'] = '0.1'; + } else { + arcs[j].style['opacity'] = '1'; + } + } + for (let j = 0; j < buttons.length; j++) { + if (j !== i) { + const legendRect = buttons[j].getElementsByClassName('legendRect')[0]; + legendRect.style['backgroundColor'] = 'transparent'; + + const legendText = buttons[j].getElementsByClassName('legendText')[0]; + legendText.style['opacity'] = '0.67'; + } else { + const legendRect = buttons[j].getElementsByClassName('legendRect')[0]; + legendRect.style['backgroundColor'] = legends[j].color; + + const legendText = buttons[j].getElementsByClassName('legendText')[0]; + legendText.style['opacity'] = '1'; + } + } + } + }); + } } } diff --git a/packages/web-components/src/utils/chart-helpers.ts b/packages/web-components/src/utils/chart-helpers.ts new file mode 100644 index 0000000000000..269c4563eca12 --- /dev/null +++ b/packages/web-components/src/utils/chart-helpers.ts @@ -0,0 +1,49 @@ +import type { ValueConverter } from '@microsoft/fast-element'; + +export const getDataConverter = (chartType: string): ValueConverter => { + let validate: (obj: any) => void; + switch (chartType) { + case 'donut-chart': + default: + validate = validateChartProps; + } + + return { + toView(value: any): string { + return JSON.stringify(value); + }, + fromView(value: string): any { + const obj = JSON.parse(value); + validate(obj); + return obj; + }, + }; +}; + +type Dict = { [key: string]: any }; + +const validateChartProps = (obj: any) => { + if (typeof obj !== 'object' || Array.isArray(obj) || obj === null) { + throw TypeError('Invalid data: Expected an object.'); + } + + if ((obj as Dict).hasOwnProperty('chartData')) { + if (!Array.isArray(obj.chartData)) { + throw TypeError('Invalid data.chartData: Expected an array.'); + } + + (obj.chartData as any[]).forEach((item, idx) => { + if (typeof item !== 'object' || Array.isArray(item) || item === null) { + throw TypeError(`Invalid data.chartData[${idx}]: Expected an object.`); + } + + if ((item as Dict).hasOwnProperty('legend') && typeof item.legend !== 'string') { + throw TypeError(`Invalid data.chartData[${idx}].legend: Expected a string.`); + } + + if ((item as Dict).hasOwnProperty('data') && typeof item.data !== 'number') { + throw TypeError(`Invalid data.chartData[${idx}].data: Expected a number.`); + } + }); + } +}; From 66b134b1ab3cf0b1d82c5084e3def35b220e8bc9 Mon Sep 17 00:00:00 2001 From: "Atishay Jain (atisjai)" <98592573+AtishayMsft@users.noreply.github.com> Date: Sat, 19 Oct 2024 01:54:28 +0000 Subject: [PATCH 10/60] Move data for HBC to stories --- .../horizontalbarchart.stories.ts | 89 ++++++++- .../horizontalbarchart.template.ts | 8 +- .../horizontalbarchart/horizontalbarchart.ts | 185 +++--------------- .../web-components/src/utils/chart-helpers.ts | 15 +- 4 files changed, 129 insertions(+), 168 deletions(-) diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts index 5cfa4d08a0dd1..af25c906ffa12 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts @@ -2,9 +2,94 @@ import { html } from '@microsoft/fast-element'; import type { Meta, Story, StoryArgs } from '../helpers.stories.js'; import { renderComponent } from '../helpers.stories.js'; import { HorizontalBarChart as FluentHorizontalBarChart } from './horizontalbarchart.js'; +import { IChartDataPoint, IChartProps } from './horizontalbarchart.options.js'; + +const chartPoints1: IChartDataPoint[] = [ + { + legend: 'Debit card numbers (EU and USA)', + data: 40, + color: '#0099BC', + }, + { + legend: 'Passport numbers (USA)', + data: 23, + color: '#77004D', + }, + { + legend: 'Social security numbers', + data: 35, + color: '#4F68ED', + }, + { + legend: 'Credit card Numbers', + data: 87, + color: '#AE8C00', + }, + { + legend: 'Tax identification numbers (USA)', + data: 87, + color: '#004E8C', + }, +]; + +const chartPoints2: IChartDataPoint[] = [ + { + legend: 'Debit card numbers (EU and USA)', + data: 40, + color: '#0099BC', + }, + { + legend: 'Passport numbers (USA)', + data: 56, + color: '#77004D', + }, + { + legend: 'Social security numbers', + data: 35, + color: '#4F68ED', + }, + { + legend: 'Credit card Numbers', + data: 92, + color: '#AE8C00', + }, + { + legend: 'Tax identification numbers (USA)', + data: 87, + color: '#004E8C', + }, +]; + +const chartPoints3: IChartDataPoint[] = [ + { + legend: 'Phone Numbers', + data: 40, + color: '#881798', + }, + { + legend: 'Credit card Numbers', + data: 23, + color: '#AE8C00', + }, +]; + +const data: IChartProps[] = [ + { + chartTitle: 'Monitored First', + chartData: chartPoints1, + }, + { + chartTitle: 'Monitored Second', + chartData: chartPoints2, + }, + { + chartTitle: 'Unmonitored', + chartData: chartPoints3, + }, +]; const storyTemplate = html>` - + `; export default { @@ -16,7 +101,7 @@ export const Basic: Story = renderComponent(storyTempl export const RTL: Story = renderComponent(html>`
- +
`); diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts index b5394a0aed95f..5f63f38e65251 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts @@ -13,13 +13,7 @@ getGroupper(tabsterCore); * @public */ export function horizontalbarchartTemplate(): ElementViewTemplate { - return html` - - `; + return html``; } /** diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts index 16b117b933b75..157f9c7b8ac95 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -1,6 +1,7 @@ import { attr, FASTElement } from '@microsoft/fast-element'; import * as d3 from 'd3'; import { createTabster, getGroupper, getMover, getTabsterAttribute, Types } from 'tabster'; +import { getDataConverter } from '../utils/chart-helpers.js'; import { IChartDataPoint, IChartProps, Variant } from './horizontalbarchart.options.js'; // During the page startup. @@ -38,8 +39,8 @@ export class HorizontalBarChart extends FASTElement { @attr public _isRTL: boolean = false; - @attr - public inpData: IChartProps[] = []; + @attr({ converter: getDataConverter('horizontal-bar-chart') }) + public data!: IChartProps[]; @attr public uniqueLegends: IChartDataPoint[] = []; @@ -48,110 +49,6 @@ export class HorizontalBarChart extends FASTElement { constructor() { super(); - - const chartPoints1: IChartDataPoint[] = [ - { - legend: 'Debit card numbers (EU and USA)', - data: 40, - color: '#0099BC', - }, - { - legend: 'Passport numbers (USA)', - data: 23, - color: '#77004D', - }, - { - legend: 'Social security numbers', - data: 35, - color: '#4F68ED', - }, - { - legend: 'Credit card Numbers', - data: 87, - color: '#AE8C00', - }, - { - legend: 'Tax identification numbers (USA)', - data: 87, - color: '#004E8C', - }, - ]; - - const chartPoints2: IChartDataPoint[] = [ - { - legend: 'Debit card numbers (EU and USA)', - data: 40, - color: '#0099BC', - }, - { - legend: 'Passport numbers (USA)', - data: 56, - color: '#77004D', - }, - { - legend: 'Social security numbers', - data: 35, - color: '#4F68ED', - }, - { - legend: 'Credit card Numbers', - data: 92, - color: '#AE8C00', - }, - { - legend: 'Tax identification numbers (USA)', - data: 87, - color: '#004E8C', - }, - ]; - - const chartPoints3: IChartDataPoint[] = [ - { - legend: 'Phone Numbers', - data: 40, - color: '#881798', - }, - { - legend: 'Credit card Numbers', - data: 23, - color: '#AE8C00', - }, - ]; - - const allchartPoints = [...chartPoints1, ...chartPoints2, ...chartPoints3]; - - // Create a map to store unique legends - const uniqueLegendsMap = new Map(); - - // Iterate through all chart points and populate the map - allchartPoints.forEach(point => { - // Check if the legend is already in the map - if (!uniqueLegendsMap.has(point.legend)) { - uniqueLegendsMap.set(point.legend, { - legend: point.legend, - data: point.data, - color: point.color, - }); - } - }); - - // Convert the map values back to an array - this.uniqueLegends = Array.from(uniqueLegendsMap.values()); - - this.inpData = [ - { - chartTitle: 'Monitored First', - chartData: chartPoints1, - }, - { - chartTitle: 'Monitored Second', - chartData: chartPoints2, - }, - { - chartTitle: 'Unmonitored', - chartData: chartPoints3, - }, - ]; } private bindEvents() {} @@ -161,57 +58,6 @@ export class HorizontalBarChart extends FASTElement { this.render(); } - renderSingle() { - const svg = d3 - .select(this.shadowRoot) - .append('svg') - .attr('width', 800) - .attr('height', 800) - .attr('style', 'margin-left: 20px'); - - // Create tooltip div - const tooltip = d3 - .select(this.shadowRoot) - .append('div') - .attr( - 'style', - 'position:absolute, text-align:center, width:60px, height:28px, padding:2px, font:12px sans-serif, background:yellow, border:2px, border-radius:8px, pointer-events:none, opacity:0', - ); - - const data = [12, 10, 15, 16, 23, 42]; // Sample data - const colors = ['#637cef', '#e3008c', '#2aa0a4', '#9373c0', '#13a10e', '#3a96dd']; - - svg - .selectAll('rect') - .data(data) - .enter() - .append('rect') - .attr('y', (d, i) => i * 30) // Space out bars vertically - .attr('x', 0) // Start bars from the left edge - .attr('height', 25) // Fixed height for all bars - .attr('width', d => d + '%') // Width based on data - .attr('fill', (d, i) => colors[i % colors.length]) - .on('mouseover', function (event, d) { - console.log(event.pageX, event.pageY); - tooltip.transition().duration(200).style('opacity', 0.9); - tooltip.html(d + ' hovered').attr('style', 'left:' + event.pageX + 'px, top:' + (event.pageY - 28) + 'px'); - }) - .on('mouseout', function () { - tooltip.transition().duration(500).attr('style', 'opacity:0'); - }); - - svg - .selectAll('text') - .data(data) - .enter() - .append('text') - .attr('y', (d, i) => i * 30 + 15) // Position text in the middle of each bar vertically - .attr('x', d => d + 1 + '%') // Slight offset from the left edge - .text(d => d) // Set text content to data value - .attr('fill', 'black') // Text color - .attr('font-size', '12px'); // Text size - } - private createSingleChartBars(singleChartData: IChartProps, index: number, nodes: any) { const singleChartBars = this._createBarsAndLegends(singleChartData!, index); @@ -224,6 +70,28 @@ export class HorizontalBarChart extends FASTElement { .appendChild(singleChartBars.node()); } + private hydrateLegends() { + // Create a map to store unique legends + const uniqueLegendsMap = new Map(); + + // Iterate through all chart points and populate the map + this.data.forEach(dataSeries => { + dataSeries.chartData!.forEach(point => { + // Check if the legend is already in the map + if (!uniqueLegendsMap.has(point.legend)) { + uniqueLegendsMap.set(point.legend, { + legend: point.legend, + data: point.data, + color: point.color, + }); + } + }); + }); + + // Convert the map values back to an array + this.uniqueLegends = Array.from(uniqueLegendsMap.values()); + } + render() { // Array to hold references to the buttons const legendButtonRefs: any = []; @@ -231,7 +99,7 @@ export class HorizontalBarChart extends FASTElement { div .append('div') .selectAll('div') - .data(this.inpData!) + .data(this.data!) .enter() .append('div') .each((d, i, nodes) => { @@ -246,6 +114,7 @@ export class HorizontalBarChart extends FASTElement { }); }); + this.hydrateLegends(); const legendContainer = document.createElement('div'); div.node()!.appendChild(legendContainer); legendContainer.classList.add('legendcontainer'); diff --git a/packages/web-components/src/utils/chart-helpers.ts b/packages/web-components/src/utils/chart-helpers.ts index 269c4563eca12..c0c7d1f3591a2 100644 --- a/packages/web-components/src/utils/chart-helpers.ts +++ b/packages/web-components/src/utils/chart-helpers.ts @@ -3,6 +3,9 @@ import type { ValueConverter } from '@microsoft/fast-element'; export const getDataConverter = (chartType: string): ValueConverter => { let validate: (obj: any) => void; switch (chartType) { + case 'horizontal-bar-chart': + validate = validateChartPropsArray; + break; case 'donut-chart': default: validate = validateChartProps; @@ -22,8 +25,18 @@ export const getDataConverter = (chartType: string): ValueConverter => { type Dict = { [key: string]: any }; +const validateChartPropsArray = (obj: any) => { + if (obj === null || typeof obj !== 'object' || !Array.isArray(obj)) { + throw TypeError('Invalid data: Expected an object.'); + } + + obj.forEach((item, idx) => { + validateChartProps(item); + }); +}; + const validateChartProps = (obj: any) => { - if (typeof obj !== 'object' || Array.isArray(obj) || obj === null) { + if (obj === null || typeof obj !== 'object' || Array.isArray(obj)) { throw TypeError('Invalid data: Expected an object.'); } From 0be5e78fbbb679a9945ba5b2bb685de211efb490 Mon Sep 17 00:00:00 2001 From: "Atishay Jain (atisjai)" <98592573+AtishayMsft@users.noreply.github.com> Date: Sat, 19 Oct 2024 02:39:03 +0000 Subject: [PATCH 11/60] Fix styles to use tokens --- .../src/donut-chart/donut-chart.styles.ts | 14 ++-- .../horizontalbarchart.styles.ts | 73 ++++++------------- 2 files changed, 30 insertions(+), 57 deletions(-) diff --git a/packages/web-components/src/donut-chart/donut-chart.styles.ts b/packages/web-components/src/donut-chart/donut-chart.styles.ts index 3fc6e08b58140..c793aca8977c0 100644 --- a/packages/web-components/src/donut-chart/donut-chart.styles.ts +++ b/packages/web-components/src/donut-chart/donut-chart.styles.ts @@ -8,6 +8,10 @@ import { colorNeutralShadowAmbient, colorNeutralShadowKey, colorTransparentStroke, + spacingHorizontalL, + spacingHorizontalS, + spacingVerticalL, + spacingVerticalMNudge, } from '../theme/design-tokens.js'; import { typographyBody1Styles, typographyCaption1Styles, typographyTitle2Styles } from '../styles/index.js'; @@ -37,7 +41,7 @@ export const styles = css` } .legendContainer { - padding-top: 16px; + padding-top: ${spacingVerticalL}; white-space: nowrap; width: 100%; @@ -58,7 +62,7 @@ export const styles = css` align-items: center; cursor: pointer; border: none; - padding: 8px; + padding: ${spacingHorizontalS}; background: none; text-transform: capitalize; } @@ -66,7 +70,7 @@ export const styles = css` .legendRect { width: 12px; height: 12px; - margin-right: 8px; + margin-right: ${spacingHorizontalS}; border: 1px solid; } @@ -78,7 +82,7 @@ export const styles = css` .calloutContentRoot { display: grid; overflow: hidden; - padding: 11px 16px 10px 16px; + padding: ${spacingVerticalMNudge} ${spacingHorizontalL}; background-color: ${colorNeutralBackground1}; background-blend-mode: normal, luminosity; @@ -93,7 +97,7 @@ export const styles = css` } .calloutBlockContainer { - padding-left: 8px; + padding-left: ${spacingHorizontalS}; color: ${colorNeutralForeground2}; } diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts index 5001f170465d8..7047dfa2d5d8a 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts @@ -1,50 +1,21 @@ import type { ElementStyles } from '@microsoft/fast-element'; import { css } from '@microsoft/fast-element'; import { - borderRadiusMedium, - colorCompoundBrandStroke, colorNeutralBackground1, - colorNeutralBackground3, - colorNeutralBackgroundInverted, colorNeutralForeground1, - colorNeutralForeground4, - colorNeutralForegroundDisabled, - colorNeutralForegroundInverted, - colorNeutralStroke1, - colorNeutralStroke1Hover, - colorNeutralStroke1Pressed, - colorNeutralStrokeAccessible, - colorNeutralStrokeAccessibleHover, - colorNeutralStrokeAccessiblePressed, - colorNeutralStrokeDisabled, - colorPaletteRedBorder2, - colorTransparentBackground, - curveAccelerateMid, - curveDecelerateMid, - durationNormal, - durationUltraFast, - fontFamilyBase, - fontSizeBase200, - fontSizeBase300, - fontSizeBase400, - fontWeightRegular, - lineHeightBase200, - lineHeightBase300, - lineHeightBase400, - shadow2, - spacingHorizontalM, - spacingHorizontalMNudge, + shadow4, + spacingHorizontalL, + spacingHorizontalS, spacingHorizontalSNudge, - spacingHorizontalXS, - spacingHorizontalXXS, - spacingVerticalS, - spacingVerticalSNudge, - spacingVerticalXS, - strokeWidthThin, + spacingVerticalL, + spacingVerticalMNudge, } from '../theme/design-tokens.js'; -import { forcedColorsStylesheetBehavior } from '../utils/behaviors/match-media-stylesheet-behavior.js'; import { display } from '../utils/display.js'; -import { typographyCaption1Styles } from '../styles/partials/typography.partials.js'; +import { + typographyBody1StrongStyles, + typographyBody1Styles, + typographyCaption1Styles, +} from '../styles/partials/typography.partials.js'; /** * Styles for the HorizontalBarChart component. @@ -55,7 +26,7 @@ export const styles: ElementStyles = css` ${display('inline-block')} .root { - background-color: var(--background-color); + background-color: ${colorNeutralBackground1}; width: 100vw; display: flex; flex-direction: column; @@ -63,16 +34,16 @@ export const styles: ElementStyles = css` position: relative; } .tooltip { + ${typographyCaption1Styles} position: absolute; display: grid; overflow: hidden; - padding: 11px 16px 10px 16px; - backgroundcolor: theme.semanticColors.bodyBackground; + padding: ${spacingVerticalMNudge} ${spacingHorizontalL}; + backgroundcolor: ${colorNeutralBackground1}; backgroundblendmode: normal, luminosity; text-align: center; - font: 12px sans-serif; background: white; - box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5); + box-shadow: ${shadow4}; border: 2px; pointer-events: none; opacity: 0; @@ -82,23 +53,21 @@ export const styles: ElementStyles = css` opacity: 1; } .chartTitle { + ${typographyBody1Styles} display: flex; justify-content: space-between; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; display: block; - font-size: 14px; - font-weight: 400px; - line-height: 16px; color: ${colorNeutralForeground1}; - margin-bottom: 5px; + margin-bottom: ${spacingHorizontalSNudge}; } .legendcontainer { display: flex; flex-direction: row; flex-wrap: wrap; - padding-top: 16px; + padding-top: ${spacingVerticalL}; width: 90%; align-items: center; margin: -8px 0 0 -8px; @@ -108,14 +77,14 @@ export const styles: ElementStyles = css` align-items: center; cursor: pointer; border: none; - padding: 8px; + padding: ${spacingHorizontalS}; background: none; text-transform: capitalize; } .legendRect { width: 12px; height: 12px; - margin-right: 8px; + margin-right: ${spacingHorizontalS}; border: 1px solid; } .legendText { @@ -123,6 +92,6 @@ export const styles: ElementStyles = css` color: ${colorNeutralForeground1}; } .barLabel { - font-size: ${fontSizeBase300}; + ${typographyBody1StrongStyles} } `; From 6dc6cb177170f2d0c81f26f820f8cd2b59d91f12 Mon Sep 17 00:00:00 2001 From: "Atishay Jain (atisjai)" <98592573+AtishayMsft@users.noreply.github.com> Date: Sat, 19 Oct 2024 02:47:41 +0000 Subject: [PATCH 12/60] Add change file --- ...eb-components-a2072109-cb0f-486e-9cbe-81ebc19d21c4.json | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 change/@fluentui-web-components-a2072109-cb0f-486e-9cbe-81ebc19d21c4.json diff --git a/change/@fluentui-web-components-a2072109-cb0f-486e-9cbe-81ebc19d21c4.json b/change/@fluentui-web-components-a2072109-cb0f-486e-9cbe-81ebc19d21c4.json new file mode 100644 index 0000000000000..875902a38034b --- /dev/null +++ b/change/@fluentui-web-components-a2072109-cb0f-486e-9cbe-81ebc19d21c4.json @@ -0,0 +1,7 @@ +{ + "type": "prerelease", + "comment": "feat(charts): Create web components for donut chart and horizontal bar chart.", + "packageName": "@fluentui/web-components", + "email": "98592573+AtishayMsft@users.noreply.github.com", + "dependentChangeType": "patch" +} From 8e14e14980c566e287af05d4ec3f57fe93107b80 Mon Sep 17 00:00:00 2001 From: "Atishay Jain (atisjai)" <98592573+AtishayMsft@users.noreply.github.com> Date: Sat, 19 Oct 2024 07:09:52 +0000 Subject: [PATCH 13/60] Update d3 dependencies --- packages/web-components/package.json | 10 +- .../src/donut-chart/donut-chart.ts | 2 +- .../horizontalbarchart/horizontalbarchart.ts | 14 +- yarn.lock | 358 +----------------- 4 files changed, 34 insertions(+), 350 deletions(-) diff --git a/packages/web-components/package.json b/packages/web-components/package.json index e811b97142a33..d8bb762ff7bab 100644 --- a/packages/web-components/package.json +++ b/packages/web-components/package.json @@ -99,12 +99,14 @@ "@microsoft/fast-web-utilities": "^6.0.0", "@fluentui/tokens": "1.0.0-alpha.16", "tabbable": "^6.2.0", - "tslib": "^2.1.0", - "@types/d3": "^7.0.0", - "d3": "^7.0.0" + "tslib": "^2.1.0" }, "peerDependencies": { - "@microsoft/fast-element": "^2.0.0-beta.26 || ^2.0.0" + "@microsoft/fast-element": "^2.0.0-beta.26 || ^2.0.0", + "@types/d3-selection": "^3.0.0", + "@types/d3-shape": "^3.0.0", + "d3-selection": "^3.0.0", + "d3-shape": "^3.0.0" }, "beachball": { "disallowedChangeTypes": [ diff --git a/packages/web-components/src/donut-chart/donut-chart.ts b/packages/web-components/src/donut-chart/donut-chart.ts index ad696aa9a8d40..ace52107008a9 100644 --- a/packages/web-components/src/donut-chart/donut-chart.ts +++ b/packages/web-components/src/donut-chart/donut-chart.ts @@ -1,5 +1,5 @@ import { attr, FASTElement, nullableNumberConverter } from '@microsoft/fast-element'; -import { arc as d3Arc, pie as d3Pie } from 'd3'; +import { arc as d3Arc, pie as d3Pie } from 'd3-shape'; import { createTabster, getMover, getTabsterAttribute, MoverDirections } from 'tabster'; import { getDataConverter } from '../utils/chart-helpers.js'; import { IChartProps } from './donut-chart.options.js'; diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts index 157f9c7b8ac95..76d7a0f017c0c 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -1,6 +1,6 @@ import { attr, FASTElement } from '@microsoft/fast-element'; -import * as d3 from 'd3'; -import { createTabster, getGroupper, getMover, getTabsterAttribute, Types } from 'tabster'; +import { create as d3Create, select as d3Select } from 'd3-selection'; +import { createTabster, getGroupper, getMover, getTabsterAttribute } from 'tabster'; import { getDataConverter } from '../utils/chart-helpers.js'; import { IChartDataPoint, IChartProps, Variant } from './horizontalbarchart.options.js'; @@ -62,8 +62,7 @@ export class HorizontalBarChart extends FASTElement { const singleChartBars = this._createBarsAndLegends(singleChartData!, index); // create a div element. Loop through chart bars and add to the div as its children - const divEle = d3 - .select(nodes[index]) + const divEle = d3Select(nodes[index]) .attr('key', index) .attr('id', `_MSBC_bar-${index}`) .node()! @@ -95,7 +94,7 @@ export class HorizontalBarChart extends FASTElement { render() { // Array to hold references to the buttons const legendButtonRefs: any = []; - const div = d3.select(this.shadowRoot).append('div'); + const div = d3Select(this.shadowRoot).append('div'); div .append('div') .selectAll('div') @@ -264,8 +263,7 @@ export class HorizontalBarChart extends FASTElement { startingPoint.push(prevPosition); - const gEle = d3 - .select(this) // 'this' refers to the current 'g' element + const gEle = d3Select(this) // 'this' refers to the current 'g' element .attr('key', index) .attr('role', 'img') .attr('aria-label', pointData); @@ -293,7 +291,7 @@ export class HorizontalBarChart extends FASTElement { .attr('data-tabster', '{"mover": {...}}"'); } - const containerDiv = d3.create('div').attr('style', 'position: relative'); + const containerDiv = d3Create('div').attr('style', 'position: relative'); let tooltip: any; diff --git a/yarn.lock b/yarn.lock index 97dae8cfd8010..881a4b81b151a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4922,77 +4922,23 @@ dependencies: "@types/node" "*" -"@types/d3-array@*", "@types/d3-array@3.2.1", "@types/d3-array@^3.0.0": +"@types/d3-array@3.2.1", "@types/d3-array@^3.0.0": version "3.2.1" resolved "https://registry.yarnpkg.com/@types/d3-array/-/d3-array-3.2.1.tgz#1f6658e3d2006c4fceac53fde464166859f8b8c5" integrity sha512-Y2Jn2idRrLzUfAKV2LyRImR+y4oa2AntrgID95SHJxuMUrkNXmanDSed71sRNZysveJVt1hLLemQZIady0FpEg== -"@types/d3-axis@*", "@types/d3-axis@3.0.6", "@types/d3-axis@^3.0.0": +"@types/d3-axis@3.0.6", "@types/d3-axis@^3.0.0": version "3.0.6" resolved "https://registry.yarnpkg.com/@types/d3-axis/-/d3-axis-3.0.6.tgz#e760e5765b8188b1defa32bc8bb6062f81e4c795" integrity sha512-pYeijfZuBd87T0hGn0FO1vQ/cgLk6E1ALJjfkC0oJ8cbwkZl3TpgS8bVBLZN+2jjGgg38epgxb2zmoGtSfvgMw== dependencies: "@types/d3-selection" "*" -"@types/d3-brush@*": - version "3.0.6" - resolved "https://registry.yarnpkg.com/@types/d3-brush/-/d3-brush-3.0.6.tgz#c2f4362b045d472e1b186cdbec329ba52bdaee6c" - integrity sha512-nH60IZNNxEcrh6L1ZSMNA28rj27ut/2ZmI3r96Zd+1jrZD++zD3LsMIjWlvg4AYrHn/Pqz4CF3veCxGjtbqt7A== - dependencies: - "@types/d3-selection" "*" - -"@types/d3-chord@*": - version "3.0.6" - resolved "https://registry.yarnpkg.com/@types/d3-chord/-/d3-chord-3.0.6.tgz#1706ca40cf7ea59a0add8f4456efff8f8775793d" - integrity sha512-LFYWWd8nwfwEmTZG9PfQxd17HbNPksHBiJHaKuY1XeqscXacsS2tyoo6OdRsjf+NQYeB6XrNL3a25E3gH69lcg== - -"@types/d3-color@*": - version "3.1.3" - resolved "https://registry.yarnpkg.com/@types/d3-color/-/d3-color-3.1.3.tgz#368c961a18de721da8200e80bf3943fb53136af2" - integrity sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A== - -"@types/d3-contour@*": - version "3.0.6" - resolved "https://registry.yarnpkg.com/@types/d3-contour/-/d3-contour-3.0.6.tgz#9ada3fa9c4d00e3a5093fed0356c7ab929604231" - integrity sha512-BjzLgXGnCWjUSYGfH1cpdo41/hgdWETu4YxpezoztawmqsvCeep+8QGfiY6YbDvfgHz/DkjeIkkZVJavB4a3rg== - dependencies: - "@types/d3-array" "*" - "@types/geojson" "*" - -"@types/d3-delaunay@*": - version "6.0.4" - resolved "https://registry.yarnpkg.com/@types/d3-delaunay/-/d3-delaunay-6.0.4.tgz#185c1a80cc807fdda2a3fe960f7c11c4a27952e1" - integrity sha512-ZMaSKu4THYCU6sV64Lhg6qjf1orxBthaC161plr5KuPHo3CNm8DTHiLw/5Eq2b6TsNP0W0iJrUOFscY6Q450Hw== - -"@types/d3-dispatch@*": - version "3.0.6" - resolved "https://registry.yarnpkg.com/@types/d3-dispatch/-/d3-dispatch-3.0.6.tgz#096efdf55eb97480e3f5621ff9a8da552f0961e7" - integrity sha512-4fvZhzMeeuBJYZXRXrRIQnvUYfyXwYmLsdiN7XXmVNQKKw1cM8a5WdID0g1hVFZDqT9ZqZEY5pD44p24VS7iZQ== - -"@types/d3-drag@*": - version "3.0.7" - resolved "https://registry.yarnpkg.com/@types/d3-drag/-/d3-drag-3.0.7.tgz#b13aba8b2442b4068c9a9e6d1d82f8bcea77fc02" - integrity sha512-HE3jVKlzU9AaMazNufooRJ5ZpWmLIoc90A37WU2JMmeq28w1FQqCZswHZ3xR+SuxYftzHq6WU6KJHvqxKzTxxQ== - dependencies: - "@types/d3-selection" "*" - "@types/d3-dsv@*": version "3.0.0" resolved "https://registry.yarnpkg.com/@types/d3-dsv/-/d3-dsv-3.0.0.tgz#f3c61fb117bd493ec0e814856feb804a14cfc311" integrity sha512-o0/7RlMl9p5n6FQDptuJVMxDf/7EDEv2SYEO/CwdG2tr1hTfUVi0Iavkk2ax+VpaQ/1jVhpnj5rq1nj8vwhn2A== -"@types/d3-ease@*": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@types/d3-ease/-/d3-ease-3.0.2.tgz#e28db1bfbfa617076f7770dd1d9a48eaa3b6c51b" - integrity sha512-NcV1JjO5oDzoK26oMzbILE6HW7uVXOHLQvHshBUW4UMdZGfiY6v5BeQwh9a9tCzv+CeefZQHJt5SRgK154RtiA== - -"@types/d3-fetch@*": - version "3.0.7" - resolved "https://registry.yarnpkg.com/@types/d3-fetch/-/d3-fetch-3.0.7.tgz#c04a2b4f23181aa376f30af0283dbc7b3b569980" - integrity sha512-fTAfNmxSb9SOWNB9IoG5c8Hg6R+AzUHDRlsXsDZsNp6sxAEOP0tkP3gKkNSO/qmHPoBFTxNrjDprVHDQDvo5aA== - dependencies: - "@types/d3-dsv" "*" - "@types/d3-fetch@^3.0.1": version "3.0.1" resolved "https://registry.yarnpkg.com/@types/d3-fetch/-/d3-fetch-3.0.1.tgz#f9fa88b81aa2eea5814f11aec82ecfddbd0b8fe0" @@ -5000,55 +4946,21 @@ dependencies: "@types/d3-dsv" "*" -"@types/d3-force@*": - version "3.0.10" - resolved "https://registry.yarnpkg.com/@types/d3-force/-/d3-force-3.0.10.tgz#6dc8fc6e1f35704f3b057090beeeb7ac674bff1a" - integrity sha512-ZYeSaCF3p73RdOKcjj+swRlZfnYpK1EbaDiYICEEp5Q6sUiqFaFQ9qgoshp5CzIyyb/yD09kD9o2zEltCexlgw== - -"@types/d3-format@*", "@types/d3-format@3.0.4", "@types/d3-format@^3.0.0": +"@types/d3-format@3.0.4", "@types/d3-format@^3.0.0": version "3.0.4" resolved "https://registry.yarnpkg.com/@types/d3-format/-/d3-format-3.0.4.tgz#b1e4465644ddb3fdf3a263febb240a6cd616de90" integrity sha512-fALi2aI6shfg7vM5KiR1wNJnZ7r6UuggVqtDA+xiEdPZQwy/trcQaHnwShLuLdta2rTymCNpxYTiMZX/e09F4g== -"@types/d3-geo@*": - version "3.1.0" - resolved "https://registry.yarnpkg.com/@types/d3-geo/-/d3-geo-3.1.0.tgz#b9e56a079449174f0a2c8684a9a4df3f60522440" - integrity sha512-856sckF0oP/diXtS4jNsiQw/UuK5fQG8l/a9VVLeSouf1/PPbBE1i1W852zVwKwYCBkFJJB7nCFTbk6UMEXBOQ== - dependencies: - "@types/geojson" "*" - -"@types/d3-hierarchy@*", "@types/d3-hierarchy@3.1.7", "@types/d3-hierarchy@^3.0.0": +"@types/d3-hierarchy@3.1.7", "@types/d3-hierarchy@^3.0.0": version "3.1.7" resolved "https://registry.yarnpkg.com/@types/d3-hierarchy/-/d3-hierarchy-3.1.7.tgz#6023fb3b2d463229f2d680f9ac4b47466f71f17b" integrity sha512-tJFtNoYBtRtkNysX1Xq4sxtjK8YgoWUNpIiUee0/jHGRwqvzYxkq0hGVbbOGSz+JgFxxRu4K8nb3YpG3CMARtg== -"@types/d3-interpolate@*": - version "3.0.4" - resolved "https://registry.yarnpkg.com/@types/d3-interpolate/-/d3-interpolate-3.0.4.tgz#412b90e84870285f2ff8a846c6eb60344f12a41c" - integrity sha512-mgLPETlrpVV1YRJIglr4Ez47g7Yxjl1lj7YKsiMCb27VJH9W8NVM6Bb9d8kkpG/uAQS5AmbA48q2IAolKKo1MA== - dependencies: - "@types/d3-color" "*" - "@types/d3-path@*", "@types/d3-path@^1": version "1.0.9" resolved "https://registry.yarnpkg.com/@types/d3-path/-/d3-path-1.0.9.tgz#73526b150d14cd96e701597cbf346cfd1fd4a58c" integrity sha512-NaIeSIBiFgSC6IGUBjZWcscUJEq7vpVu7KthHN8eieTV9d9MqkSOZLH4chq1PmcKy06PNe3axLeKmRIyxJ+PZQ== -"@types/d3-polygon@*": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@types/d3-polygon/-/d3-polygon-3.0.2.tgz#dfae54a6d35d19e76ac9565bcb32a8e54693189c" - integrity sha512-ZuWOtMaHCkN9xoeEMr1ubW2nGWsp4nIql+OPQRstu4ypeZ+zk3YKqQT0CXVe/PYqrKpZAi+J9mTs05TKwjXSRA== - -"@types/d3-quadtree@*": - version "3.0.6" - resolved "https://registry.yarnpkg.com/@types/d3-quadtree/-/d3-quadtree-3.0.6.tgz#d4740b0fe35b1c58b66e1488f4e7ed02952f570f" - integrity sha512-oUzyO1/Zm6rsxKRHA1vH0NEDG58HrT5icx/azi9MF1TWdtttWl0UIUsjEQBBh+SIkrpd21ZjEv7ptxWys1ncsg== - -"@types/d3-random@*": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/d3-random/-/d3-random-3.0.3.tgz#ed995c71ecb15e0cd31e22d9d5d23942e3300cfb" - integrity sha512-Imagg1vJ3y76Y2ea0871wpabqp613+8/r0mCLEBfdtqC7xMSfj9idOnmBYyMoULfHePJyxMAw3nWhJxzc+LFwQ== - "@types/d3-sankey@0.12.4", "@types/d3-sankey@^0.12.3": version "0.12.4" resolved "https://registry.yarnpkg.com/@types/d3-sankey/-/d3-sankey-0.12.4.tgz#7d76c8eaa1a3772e9bfcdfbeab82bf37e0b479d4" @@ -5056,12 +4968,7 @@ dependencies: "@types/d3-shape" "^1" -"@types/d3-scale-chromatic@*": - version "3.0.3" - resolved "https://registry.yarnpkg.com/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.0.3.tgz#fc0db9c10e789c351f4c42d96f31f2e4df8f5644" - integrity sha512-laXM4+1o5ImZv3RpFAsTRn3TEkzqkytiOY0Dz0sq5cnd1dtNlk6sHLon4OvqaiJb28T0S/TdsBI3Sjsy+keJrw== - -"@types/d3-scale@*", "@types/d3-scale@4.0.8", "@types/d3-scale@^4.0.0": +"@types/d3-scale@4.0.8", "@types/d3-scale@^4.0.0": version "4.0.8" resolved "https://registry.yarnpkg.com/@types/d3-scale/-/d3-scale-4.0.8.tgz#d409b5f9dcf63074464bf8ddfb8ee5a1f95945bb" integrity sha512-gkK1VVTr5iNiYJ7vWDI+yUFFlszhNMtVeneJ6lUTKPjprsvLLI9/tgEGiXJOnlINJA8FyA88gfnQsHbybVZrYQ== @@ -5073,7 +4980,7 @@ resolved "https://registry.yarnpkg.com/@types/d3-selection/-/d3-selection-3.0.10.tgz#98cdcf986d0986de6912b5892e7c015a95ca27fe" integrity sha512-cuHoUgS/V3hLdjJOLTT691+G2QoqAjCVLmr4kJXR4ha56w1Zdu8UUQ5TxLRqudgNjwXeQxKMq4j+lyf9sWuslg== -"@types/d3-shape@*", "@types/d3-shape@3.1.6", "@types/d3-shape@^3.0.0": +"@types/d3-shape@3.1.6", "@types/d3-shape@^3.0.0": version "3.1.6" resolved "https://registry.yarnpkg.com/@types/d3-shape/-/d3-shape-3.1.6.tgz#65d40d5a548f0a023821773e39012805e6e31a72" integrity sha512-5KKk5aKGu2I+O6SONMYSNflgiP0WfZIQvVUMan50wHsLG1G94JlxEVnCpQARfTtzytuY0p/9PXXZb3I7giofIA== @@ -5087,11 +4994,6 @@ dependencies: "@types/d3-path" "^1" -"@types/d3-time-format@*": - version "4.0.3" - resolved "https://registry.yarnpkg.com/@types/d3-time-format/-/d3-time-format-4.0.3.tgz#d6bc1e6b6a7db69cccfbbdd4c34b70632d9e9db2" - integrity sha512-5xg9rC+wWL8kdDj153qZcsJ0FWiFt0J5RB6LYUNZjwSnesfblqrI/bJ1wBdJ8OQfncgbJG5+2F+qfqnqyzYxyg== - "@types/d3-time-format@3.0.4", "@types/d3-time-format@^3.0.0": version "3.0.4" resolved "https://registry.yarnpkg.com/@types/d3-time-format/-/d3-time-format-3.0.4.tgz#f972bdd7be1048184577cf235a44721a78c6bb4b" @@ -5102,62 +5004,6 @@ resolved "https://registry.yarnpkg.com/@types/d3-time/-/d3-time-3.0.3.tgz#3c186bbd9d12b9d84253b6be6487ca56b54f88be" integrity sha512-2p6olUZ4w3s+07q3Tm2dbiMZy5pCDfYwtLXXHUnVzXgQlZ/OyPtUz6OL382BkOuGlLXqfT+wqv8Fw2v8/0geBw== -"@types/d3-timer@*": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@types/d3-timer/-/d3-timer-3.0.2.tgz#70bbda77dc23aa727413e22e214afa3f0e852f70" - integrity sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw== - -"@types/d3-transition@*": - version "3.0.8" - resolved "https://registry.yarnpkg.com/@types/d3-transition/-/d3-transition-3.0.8.tgz#677707f5eed5b24c66a1918cde05963021351a8f" - integrity sha512-ew63aJfQ/ms7QQ4X7pk5NxQ9fZH/z+i24ZfJ6tJSfqxJMrYLiK01EAs2/Rtw/JreGUsS3pLPNV644qXFGnoZNQ== - dependencies: - "@types/d3-selection" "*" - -"@types/d3-zoom@*": - version "3.0.8" - resolved "https://registry.yarnpkg.com/@types/d3-zoom/-/d3-zoom-3.0.8.tgz#dccb32d1c56b1e1c6e0f1180d994896f038bc40b" - integrity sha512-iqMC4/YlFCSlO8+2Ii1GGGliCAY4XdeG748w5vQUbevlbDu0zSjH/+jojorQVBK/se0j6DUFNPBGSqD3YWYnDw== - dependencies: - "@types/d3-interpolate" "*" - "@types/d3-selection" "*" - -"@types/d3@^7.0.0": - version "7.4.3" - resolved "https://registry.yarnpkg.com/@types/d3/-/d3-7.4.3.tgz#d4550a85d08f4978faf0a4c36b848c61eaac07e2" - integrity sha512-lZXZ9ckh5R8uiFVt8ogUNf+pIrK4EsWrx2Np75WvF/eTpJ0FMHNhjXk8CKEx/+gpHbNQyJWehbFaTvqmHWB3ww== - dependencies: - "@types/d3-array" "*" - "@types/d3-axis" "*" - "@types/d3-brush" "*" - "@types/d3-chord" "*" - "@types/d3-color" "*" - "@types/d3-contour" "*" - "@types/d3-delaunay" "*" - "@types/d3-dispatch" "*" - "@types/d3-drag" "*" - "@types/d3-dsv" "*" - "@types/d3-ease" "*" - "@types/d3-fetch" "*" - "@types/d3-force" "*" - "@types/d3-format" "*" - "@types/d3-geo" "*" - "@types/d3-hierarchy" "*" - "@types/d3-interpolate" "*" - "@types/d3-path" "*" - "@types/d3-polygon" "*" - "@types/d3-quadtree" "*" - "@types/d3-random" "*" - "@types/d3-scale" "*" - "@types/d3-scale-chromatic" "*" - "@types/d3-selection" "*" - "@types/d3-shape" "*" - "@types/d3-time" "*" - "@types/d3-time-format" "*" - "@types/d3-timer" "*" - "@types/d3-transition" "*" - "@types/d3-zoom" "*" - "@types/debug@^4.0.0": version "4.1.12" resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.12.tgz#a155f21690871953410df4b6b6f53187f0500917" @@ -5304,11 +5150,6 @@ dependencies: "@types/node" "*" -"@types/geojson@*": - version "7946.0.14" - resolved "https://registry.yarnpkg.com/@types/geojson/-/geojson-7946.0.14.tgz#319b63ad6df705ee2a65a73ef042c8271e696613" - integrity sha512-WCfD5Ht3ZesJUsONdhvm84dmzWOiOzOAqOncN0++w0lBw1o8OuDNJF2McvvCef/yBqb/HYRahp1BYtODFQ8bRg== - "@types/glob-stream@*": version "6.1.0" resolved "https://registry.yarnpkg.com/@types/glob-stream/-/glob-stream-6.1.0.tgz#7ede8a33e59140534f8d8adfb8ac9edfb31897bc" @@ -9314,74 +9155,36 @@ cypress@13.6.4: dependencies: internmap "^1.0.0" -"d3-array@2 - 3", "d3-array@2.10.0 - 3", "d3-array@2.5.0 - 3", d3-array@3, d3-array@3.2.4, d3-array@^3.0.0, d3-array@^3.2.0, d3-array@^3.2.1: +"d3-array@2 - 3", "d3-array@2.10.0 - 3", "d3-array@2.5.0 - 3", d3-array@3.2.4, d3-array@^3.0.0, d3-array@^3.2.0, d3-array@^3.2.1: version "3.2.4" resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-3.2.4.tgz#15fec33b237f97ac5d7c986dc77da273a8ed0bb5" integrity sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg== dependencies: internmap "1 - 2" -d3-axis@3, d3-axis@3.0.0, d3-axis@^3.0.0: +d3-axis@3.0.0, d3-axis@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/d3-axis/-/d3-axis-3.0.0.tgz#c42a4a13e8131d637b745fc2973824cfeaf93322" integrity sha512-IH5tgjV4jE/GhHkRV0HiVYPDtvfjHQlQfJHs0usq7M30XcSBvOotpmH1IgkcXsO/5gEQZD43B//fc7SRT5S+xw== -d3-brush@3: - version "3.0.0" - resolved "https://registry.yarnpkg.com/d3-brush/-/d3-brush-3.0.0.tgz#6f767c4ed8dcb79de7ede3e1c0f89e63ef64d31c" - integrity sha512-ALnjWlVYkXsVIGlOsuWH1+3udkYFI48Ljihfnh8FZPF2QS9o+PzGLBslO0PjzVoHLZ2KCVgAM8NVkXPJB2aNnQ== - dependencies: - d3-dispatch "1 - 3" - d3-drag "2 - 3" - d3-interpolate "1 - 3" - d3-selection "3" - d3-transition "3" - -d3-chord@3: - version "3.0.1" - resolved "https://registry.yarnpkg.com/d3-chord/-/d3-chord-3.0.1.tgz#d156d61f485fce8327e6abf339cb41d8cbba6966" - integrity sha512-VE5S6TNa+j8msksl7HwjxMHDM2yNK3XCkusIlpX5kwauBfXuyLAtNg9jCp/iHH61tgI4sb6R/EIMWCqEIdjT/g== - dependencies: - d3-path "1 - 3" - d3-collection@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/d3-collection/-/d3-collection-1.0.7.tgz#349bd2aa9977db071091c13144d5e4f16b5b310e" integrity sha512-ii0/r5f4sjKNTfh84Di+DpztYwqKhEyUlKoPrzUFfeSkWxjW49xU2QzO9qrPrNkpdI0XJkfzvmTu8V2Zylln6A== -"d3-color@1 - 3", d3-color@3, d3-color@^3.1.0: +"d3-color@1 - 3", d3-color@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-3.1.0.tgz#395b2833dfac71507f12ac2f7af23bf819de24e2" integrity sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA== -d3-contour@4, d3-contour@^4.0.0: +d3-contour@^4.0.0: version "4.0.2" resolved "https://registry.yarnpkg.com/d3-contour/-/d3-contour-4.0.2.tgz#bb92063bc8c5663acb2422f99c73cbb6c6ae3bcc" integrity sha512-4EzFTRIikzs47RGmdxbeUvLWtGedDUNkTcmzoeyg4sP/dvCexO47AaQL7VKy/gul85TOxw+IBgA8US2xwbToNA== dependencies: d3-array "^3.2.0" -d3-delaunay@6: - version "6.0.4" - resolved "https://registry.yarnpkg.com/d3-delaunay/-/d3-delaunay-6.0.4.tgz#98169038733a0a5babbeda55054f795bb9e4a58b" - integrity sha512-mdjtIZ1XLAM8bm/hx3WwjfHt6Sggek7qH043O8KEjDXN40xi3vx/6pYSVTwLjEgiXQTbvaouWKynLBiUZ6SK6A== - dependencies: - delaunator "5" - -"d3-dispatch@1 - 3", d3-dispatch@3: - version "3.0.1" - resolved "https://registry.yarnpkg.com/d3-dispatch/-/d3-dispatch-3.0.1.tgz#5fc75284e9c2375c36c839411a0cf550cbfc4d5e" - integrity sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg== - -"d3-drag@2 - 3", d3-drag@3: - version "3.0.0" - resolved "https://registry.yarnpkg.com/d3-drag/-/d3-drag-3.0.0.tgz#994aae9cd23c719f53b5e10e3a0a6108c69607ba" - integrity sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg== - dependencies: - d3-dispatch "1 - 3" - d3-selection "3" - -"d3-dsv@1 - 3", d3-dsv@3: +"d3-dsv@1 - 3": version "3.0.1" resolved "https://registry.yarnpkg.com/d3-dsv/-/d3-dsv-3.0.1.tgz#c63af978f4d6a0d084a52a673922be2160789b73" integrity sha512-UG6OvdI5afDIFP9w4G0mNq50dSOsXHJaRE8arAS5o9ApWnIElp8GZw1Dun8vP8OyHOZ/QJUKUJwxiiCCnUwm+Q== @@ -9390,33 +9193,19 @@ d3-delaunay@6: iconv-lite "0.6" rw "1" -"d3-ease@1 - 3", d3-ease@3: - version "3.0.1" - resolved "https://registry.yarnpkg.com/d3-ease/-/d3-ease-3.0.1.tgz#9658ac38a2140d59d346160f1f6c30fda0bd12f4" - integrity sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w== - -d3-fetch@3, d3-fetch@3.0.1: +d3-fetch@3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/d3-fetch/-/d3-fetch-3.0.1.tgz#83141bff9856a0edb5e38de89cdcfe63d0a60a22" integrity sha512-kpkQIM20n3oLVBKGg6oHrUchHM3xODkTzjMoj7aWQFq5QEM+R6E4WkzT5+tojDY7yjez8KgCBRoj4aEr99Fdqw== dependencies: d3-dsv "1 - 3" -d3-force@3: - version "3.0.0" - resolved "https://registry.yarnpkg.com/d3-force/-/d3-force-3.0.0.tgz#3e2ba1a61e70888fe3d9194e30d6d14eece155c4" - integrity sha512-zxV/SsA+U4yte8051P4ECydjD/S+qeYtnaIyAs9tgHCqfguma/aAQDjo85A9Z6EKhBirHRJHXIgJUlffT4wdLg== - dependencies: - d3-dispatch "1 - 3" - d3-quadtree "1 - 3" - d3-timer "1 - 3" - -"d3-format@1 - 3", d3-format@3, d3-format@3.1.0, d3-format@^3.0.0, d3-format@^3.1.0: +"d3-format@1 - 3", d3-format@3.1.0, d3-format@^3.0.0, d3-format@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-3.1.0.tgz#9260e23a28ea5cb109e93b21a06e24e2ebd55641" integrity sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA== -d3-geo@3, d3-geo@^3.1.0: +d3-geo@^3.1.0: version "3.1.1" resolved "https://registry.yarnpkg.com/d3-geo/-/d3-geo-3.1.1.tgz#6027cf51246f9b2ebd64f99e01dc7c3364033a4d" integrity sha512-637ln3gXKXOwhalDzinUgY83KzNWZRKbYubaG+fGVuc/dxO64RRljtCTnf5ecMyE1RIdtqpkVcq0IbtU2S8j2Q== @@ -9428,12 +9217,12 @@ d3-hexbin@^0.2.2: resolved "https://registry.yarnpkg.com/d3-hexbin/-/d3-hexbin-0.2.2.tgz#9c5837dacfd471ab05337a9e91ef10bfc4f98831" integrity sha1-nFg32s/UcasFM3qeke8Qv8T5iDE= -d3-hierarchy@3, d3-hierarchy@3.1.2, d3-hierarchy@^3.0.0, d3-hierarchy@^3.1.2: +d3-hierarchy@3.1.2, d3-hierarchy@^3.0.0, d3-hierarchy@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz#b01cd42c1eed3d46db77a5966cf726f8c09160c6" integrity sha512-FX/9frcub54beBdugHjDCdikxThEqjnR93Qt7PvQTOHxyiNCAlvMrHhclk3cD5VeAaq9fxmfRp+CnWw9rEMBuA== -"d3-interpolate@1 - 3", "d3-interpolate@1.2.0 - 3", d3-interpolate@3, d3-interpolate@^3.0.1: +"d3-interpolate@1.2.0 - 3", d3-interpolate@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-3.0.1.tgz#3c47aa5b32c5b3dfb56ef3fd4342078a632b400d" integrity sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g== @@ -9445,26 +9234,11 @@ d3-path@1: resolved "https://registry.yarnpkg.com/d3-path/-/d3-path-1.0.7.tgz#8de7cd693a75ac0b5480d3abaccd94793e58aae8" integrity sha512-q0cW1RpvA5c5ma2rch62mX8AYaiLX0+bdaSM2wxSU9tXjU4DNvkx9qiUvjkuWCj3p22UO/hlPivujqMiR9PDzA== -"d3-path@1 - 3", d3-path@3, d3-path@^3.1.0: +d3-path@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/d3-path/-/d3-path-3.1.0.tgz#22df939032fb5a71ae8b1800d61ddb7851c42526" integrity sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ== -d3-polygon@3: - version "3.0.1" - resolved "https://registry.yarnpkg.com/d3-polygon/-/d3-polygon-3.0.1.tgz#0b45d3dd1c48a29c8e057e6135693ec80bf16398" - integrity sha512-3vbA7vXYwfe1SYhED++fPUQlWSYTTGmFmQiany/gdbiWgU/iEyQzyymwL9SkJjFFuCS4902BSzewVGsHHmHtXg== - -"d3-quadtree@1 - 3", d3-quadtree@3: - version "3.0.1" - resolved "https://registry.yarnpkg.com/d3-quadtree/-/d3-quadtree-3.0.1.tgz#6dca3e8be2b393c9a9d514dabbd80a92deef1a4f" - integrity sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw== - -d3-random@3: - version "3.0.1" - resolved "https://registry.yarnpkg.com/d3-random/-/d3-random-3.0.1.tgz#d4926378d333d9c0bfd1e6fa0194d30aebaa20f4" - integrity sha512-FXMe9GfxTxqd5D6jFsQ+DJ8BJS4E/fT5mqqdjovykEB2oFbTMDVdg1MGFxfQW+FBOGoB++k8swBrgwSHT1cUXQ== - d3-sankey@0.12.3, d3-sankey@^0.12.3: version "0.12.3" resolved "https://registry.yarnpkg.com/d3-sankey/-/d3-sankey-0.12.3.tgz#b3c268627bd72e5d80336e8de6acbfec9d15d01d" @@ -9473,15 +9247,7 @@ d3-sankey@0.12.3, d3-sankey@^0.12.3: d3-array "1 - 2" d3-shape "^1.2.0" -d3-scale-chromatic@3: - version "3.1.0" - resolved "https://registry.yarnpkg.com/d3-scale-chromatic/-/d3-scale-chromatic-3.1.0.tgz#34c39da298b23c20e02f1a4b239bd0f22e7f1314" - integrity sha512-A3s5PWiZ9YCXFye1o246KoscMWqf8BsD9eRiJ3He7C9OBaxKhAd5TFCdEx/7VbKtxxTsu//1mMJFrEt572cEyQ== - dependencies: - d3-color "1 - 3" - d3-interpolate "1 - 3" - -d3-scale@4, d3-scale@4.0.2, d3-scale@^4.0.0, d3-scale@^4.0.2: +d3-scale@4.0.2, d3-scale@^4.0.0, d3-scale@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/d3-scale/-/d3-scale-4.0.2.tgz#82b38e8e8ff7080764f8dcec77bd4be393689396" integrity sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ== @@ -9492,12 +9258,12 @@ d3-scale@4, d3-scale@4.0.2, d3-scale@^4.0.0, d3-scale@^4.0.2: d3-time "2.1.1 - 3" d3-time-format "2 - 4" -"d3-selection@2 - 3", d3-selection@3, d3-selection@3.0.0, d3-selection@^3.0.0: +d3-selection@3.0.0, d3-selection@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/d3-selection/-/d3-selection-3.0.0.tgz#c25338207efa72cc5b9bd1458a1a41901f1e1b31" integrity sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ== -d3-shape@3, d3-shape@3.2.0, d3-shape@^3.0.0, d3-shape@^3.2.0: +d3-shape@3.2.0, d3-shape@^3.0.0, d3-shape@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/d3-shape/-/d3-shape-3.2.0.tgz#a1a839cbd9ba45f28674c69d7f855bcf91dfc6a5" integrity sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA== @@ -9518,13 +9284,6 @@ d3-shape@^1.2.0: dependencies: d3-time "1 - 2" -d3-time-format@4: - version "4.1.0" - resolved "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-4.1.0.tgz#7ab5257a5041d11ecb4fe70a5c7d16a195bb408a" - integrity sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg== - dependencies: - d3-time "1 - 3" - "d3-time@1 - 2": version "2.1.1" resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-2.1.1.tgz#e9d8a8a88691f4548e68ca085e5ff956724a6682" @@ -9532,81 +9291,18 @@ d3-time-format@4: dependencies: d3-array "2" -"d3-time@1 - 3", "d3-time@2.1.1 - 3", d3-time@3, d3-time@3.1.0, d3-time@^3.0.0: +"d3-time@2.1.1 - 3", d3-time@3.1.0, d3-time@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-3.1.0.tgz#9310db56e992e3c0175e1ef385e545e48a9bb5c7" integrity sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q== dependencies: d3-array "2 - 3" -"d3-timer@1 - 3", d3-timer@3: - version "3.0.1" - resolved "https://registry.yarnpkg.com/d3-timer/-/d3-timer-3.0.1.tgz#6284d2a2708285b1abb7e201eda4380af35e63b0" - integrity sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA== - -"d3-transition@2 - 3", d3-transition@3: - version "3.0.1" - resolved "https://registry.yarnpkg.com/d3-transition/-/d3-transition-3.0.1.tgz#6869fdde1448868077fdd5989200cb61b2a1645f" - integrity sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w== - dependencies: - d3-color "1 - 3" - d3-dispatch "1 - 3" - d3-ease "1 - 3" - d3-interpolate "1 - 3" - d3-timer "1 - 3" - d3-voronoi@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/d3-voronoi/-/d3-voronoi-1.1.4.tgz#dd3c78d7653d2bb359284ae478645d95944c8297" integrity sha512-dArJ32hchFsrQ8uMiTBLq256MpnZjeuBtdHpaDlYuQyjU0CVzCJl/BVW+SkszaAeH95D/8gxqAhgx0ouAWAfRg== -d3-zoom@3: - version "3.0.0" - resolved "https://registry.yarnpkg.com/d3-zoom/-/d3-zoom-3.0.0.tgz#d13f4165c73217ffeaa54295cd6969b3e7aee8f3" - integrity sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw== - dependencies: - d3-dispatch "1 - 3" - d3-drag "2 - 3" - d3-interpolate "1 - 3" - d3-selection "2 - 3" - d3-transition "2 - 3" - -d3@^7.0.0: - version "7.9.0" - resolved "https://registry.yarnpkg.com/d3/-/d3-7.9.0.tgz#579e7acb3d749caf8860bd1741ae8d371070cd5d" - integrity sha512-e1U46jVP+w7Iut8Jt8ri1YsPOvFpg46k+K8TpCb0P+zjCkjkPnV7WzfDJzMHy1LnA+wj5pLT1wjO901gLXeEhA== - dependencies: - d3-array "3" - d3-axis "3" - d3-brush "3" - d3-chord "3" - d3-color "3" - d3-contour "4" - d3-delaunay "6" - d3-dispatch "3" - d3-drag "3" - d3-dsv "3" - d3-ease "3" - d3-fetch "3" - d3-force "3" - d3-format "3" - d3-geo "3" - d3-hierarchy "3" - d3-interpolate "3" - d3-path "3" - d3-polygon "3" - d3-quadtree "3" - d3-random "3" - d3-scale "4" - d3-scale-chromatic "3" - d3-selection "3" - d3-shape "3" - d3-time "3" - d3-time-format "4" - d3-timer "3" - d3-transition "3" - d3-zoom "3" - d@1, d@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a" @@ -10032,13 +9728,6 @@ del@^5.1.0: rimraf "^3.0.0" slash "^3.0.0" -delaunator@5: - version "5.0.1" - resolved "https://registry.yarnpkg.com/delaunator/-/delaunator-5.0.1.tgz#39032b08053923e924d6094fe2cde1a99cc51278" - integrity sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw== - dependencies: - robust-predicates "^3.0.2" - delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -20715,11 +20404,6 @@ rimraf@3.0.2, rimraf@^3.0.0, rimraf@^3.0.2: dependencies: glob "^7.1.3" -robust-predicates@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/robust-predicates/-/robust-predicates-3.0.2.tgz#d5b28528c4824d20fc48df1928d41d9efa1ad771" - integrity sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg== - rollup-plugin-commonjs@10.1.0: version "10.1.0" resolved "https://registry.yarnpkg.com/rollup-plugin-commonjs/-/rollup-plugin-commonjs-10.1.0.tgz#417af3b54503878e084d127adf4d1caf8beb86fb" From d2f76b422685aaf8a4e5d989ef3ddb0f1cf83c80 Mon Sep 17 00:00:00 2001 From: "Atishay Jain (atisjai)" <98592573+AtishayMsft@users.noreply.github.com> Date: Sat, 19 Oct 2024 07:55:48 +0000 Subject: [PATCH 14/60] Fix build errors --- .../src/donut-chart/donut-chart.ts | 44 +++++++++++-------- .../horizontalbarchart/horizontalbarchart.ts | 10 ++--- 2 files changed, 31 insertions(+), 23 deletions(-) diff --git a/packages/web-components/src/donut-chart/donut-chart.ts b/packages/web-components/src/donut-chart/donut-chart.ts index ace52107008a9..56ab498c6b19f 100644 --- a/packages/web-components/src/donut-chart/donut-chart.ts +++ b/packages/web-components/src/donut-chart/donut-chart.ts @@ -188,16 +188,16 @@ export class DonutChart extends FASTElement { } for (let j = 0; j < buttons.length; j++) { if (j !== i) { - const legendRect = buttons[j].getElementsByClassName('legendRect')[0]; + const legendRect = (buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf)[0]; legendRect.style['backgroundColor'] = 'transparent'; - const legendText = buttons[j].getElementsByClassName('legendText')[0]; + const legendText = (buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf)[0]; legendText.style['opacity'] = '0.67'; } else { - const legendRect = buttons[j].getElementsByClassName('legendRect')[0]; + const legendRect = (buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf)[0]; legendRect.style['backgroundColor'] = legends[j].color; - const legendText = buttons[j].getElementsByClassName('legendText')[0]; + const legendText = (buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf)[0]; legendText.style['opacity'] = '1'; } } @@ -211,10 +211,10 @@ export class DonutChart extends FASTElement { arcs[j].style['opacity'] = '1'; } for (let j = 0; j < buttons.length; j++) { - const legendRect = buttons[j].getElementsByClassName('legendRect')[0]; + const legendRect = (buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf)[0]; legendRect.style['backgroundColor'] = legends[j].color; - const legendText = buttons[j].getElementsByClassName('legendText')[0]; + const legendText = (buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf)[0]; legendText.style['opacity'] = '1'; } }); @@ -232,16 +232,16 @@ export class DonutChart extends FASTElement { } for (let j = 0; j < buttons.length; j++) { if (j !== i) { - const legendRect = buttons[j].getElementsByClassName('legendRect')[0]; + const legendRect = (buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf)[0]; legendRect.style['backgroundColor'] = 'transparent'; - const legendText = buttons[j].getElementsByClassName('legendText')[0]; + const legendText = (buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf)[0]; legendText.style['opacity'] = '0.67'; } else { - const legendRect = buttons[j].getElementsByClassName('legendRect')[0]; + const legendRect = (buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf)[0]; legendRect.style['backgroundColor'] = legends[j].color; - const legendText = buttons[j].getElementsByClassName('legendText')[0]; + const legendText = (buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf)[0]; legendText.style['opacity'] = '1'; } } @@ -255,10 +255,10 @@ export class DonutChart extends FASTElement { arcs[j].style['opacity'] = '1'; } for (let j = 0; j < buttons.length; j++) { - const legendRect = buttons[j].getElementsByClassName('legendRect')[0]; + const legendRect = (buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf)[0]; legendRect.style['backgroundColor'] = legends[j].color; - const legendText = buttons[j].getElementsByClassName('legendText')[0]; + const legendText = (buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf)[0]; legendText.style['opacity'] = '1'; } }); @@ -270,10 +270,10 @@ export class DonutChart extends FASTElement { arcs[j].style['opacity'] = '1'; } for (let j = 0; j < buttons.length; j++) { - const legendRect = buttons[j].getElementsByClassName('legendRect')[0]; + const legendRect = (buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf)[0]; legendRect.style['backgroundColor'] = legends[j].color; - const legendText = buttons[j].getElementsByClassName('legendText')[0]; + const legendText = (buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf)[0]; legendText.style['opacity'] = '1'; } } else { @@ -288,16 +288,24 @@ export class DonutChart extends FASTElement { } for (let j = 0; j < buttons.length; j++) { if (j !== i) { - const legendRect = buttons[j].getElementsByClassName('legendRect')[0]; + const legendRect = ( + buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf + )[0]; legendRect.style['backgroundColor'] = 'transparent'; - const legendText = buttons[j].getElementsByClassName('legendText')[0]; + const legendText = ( + buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf + )[0]; legendText.style['opacity'] = '0.67'; } else { - const legendRect = buttons[j].getElementsByClassName('legendRect')[0]; + const legendRect = ( + buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf + )[0]; legendRect.style['backgroundColor'] = legends[j].color; - const legendText = buttons[j].getElementsByClassName('legendText')[0]; + const legendText = ( + buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf + )[0]; legendText.style['opacity'] = '1'; } } diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts index 76d7a0f017c0c..51c10d3e5e413 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -1,6 +1,6 @@ import { attr, FASTElement } from '@microsoft/fast-element'; import { create as d3Create, select as d3Select } from 'd3-selection'; -import { createTabster, getGroupper, getMover, getTabsterAttribute } from 'tabster'; +import { createTabster, getGroupper, getMover, getTabsterAttribute, TABSTER_ATTRIBUTE_NAME } from 'tabster'; import { getDataConverter } from '../utils/chart-helpers.js'; import { IChartDataPoint, IChartProps, Variant } from './horizontalbarchart.options.js'; @@ -108,9 +108,9 @@ export class HorizontalBarChart extends FASTElement { const attributes = getTabsterAttribute({ root: {} }); //Apply attributes directly to the current node - Object.keys(attributes).forEach(key => { - nodes[i].setAttribute(key, attributes[key]); - }); + if (attributes[TABSTER_ATTRIBUTE_NAME] !== undefined) { + nodes[i].setAttribute(TABSTER_ATTRIBUTE_NAME, attributes[TABSTER_ATTRIBUTE_NAME]); + } }); this.hydrateLegends(); @@ -137,7 +137,7 @@ export class HorizontalBarChart extends FASTElement { legendText.classList.add('legendText'); }); - const bars = this.shadowRoot?.querySelectorAll('.bar'); + const bars = this.shadowRoot?.querySelectorAll('.bar'); for (let i = 0; i < legendButtonRefs.length; i++) { legendButtonRefs[i].addEventListener('mouseover', () => { From faaa0368676d712e27f3ceecf6daf1c0079e8da1 Mon Sep 17 00:00:00 2001 From: "Atishay Jain (atisjai)" <98592573+AtishayMsft@users.noreply.github.com> Date: Sat, 19 Oct 2024 11:20:01 +0000 Subject: [PATCH 15/60] Fix build errors in HBC --- .../src/horizontalbarchart/horizontalbarchart.ts | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts index 51c10d3e5e413..4ad38d7ca459f 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -94,7 +94,7 @@ export class HorizontalBarChart extends FASTElement { render() { // Array to hold references to the buttons const legendButtonRefs: any = []; - const div = d3Select(this.shadowRoot).append('div'); + const div = d3Select(this.shadowRoot as any).append('div'); div .append('div') .selectAll('div') @@ -243,9 +243,7 @@ export class HorizontalBarChart extends FASTElement { let prevPosition = 0; let value = 0; - function createBars(point: IChartDataPoint, index: number) { - const startColor: string = point.color!; - const endColor: string = startColor; + function createBars(this: SVGGElement, point: IChartDataPoint, index: number) { const _isRTL = false; const barHeight = 12; const pointData = point.data ? point.data : 0; From 9d387dacdf8de187f99bc70ef1603d1801c62194 Mon Sep 17 00:00:00 2001 From: Anush Gupta <74965306+Anush2303@users.noreply.github.com> Date: Mon, 21 Oct 2024 17:02:10 +0530 Subject: [PATCH 16/60] NM Variant of MultiStacked bar chart (#33086) --- .../horizontalbarchart.stories.ts | 6 +++++ .../horizontalbarchart.styles.ts | 16 +++++++++++- .../horizontalbarchart/horizontalbarchart.ts | 25 ++++++++++++++++--- 3 files changed, 42 insertions(+), 5 deletions(-) diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts index af25c906ffa12..2b714dbda636a 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts @@ -98,6 +98,12 @@ export default { export const Basic: Story = renderComponent(storyTemplate).bind({}); +export const NMVariant: Story = renderComponent(html>` +
+ +
+`); + export const RTL: Story = renderComponent(html>`
diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts index 7047dfa2d5d8a..d59c3ad0c3746 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts @@ -68,7 +68,7 @@ export const styles: ElementStyles = css` flex-direction: row; flex-wrap: wrap; padding-top: ${spacingVerticalL}; - width: 90%; + width: 100%; align-items: center; margin: -8px 0 0 -8px; } @@ -94,4 +94,18 @@ export const styles: ElementStyles = css` .barLabel { ${typographyBody1StrongStyles} } + .chartTitleDiv { + width: 100%; + display: flex; + justify-content: space-between; + } + .ratioNumerator { + ${typographyBody1StrongStyles} + color: ${colorNeutralForeground1}; + } + .ratioDenominator { + ${typographyBody1StrongStyles} + color: ${colorNeutralForeground1}; + font-weight: bold; + } `; diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts index 4ad38d7ca459f..807fdd7c67448 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -45,6 +45,9 @@ export class HorizontalBarChart extends FASTElement { @attr public uniqueLegends: IChartDataPoint[] = []; + @attr + public hideRatio = false; + private barHeight: number = 12; constructor() { @@ -293,15 +296,31 @@ export class HorizontalBarChart extends FASTElement { let tooltip: any; - containerDiv + const chartTitleDiv = containerDiv.append('div').attr('class', 'chartTitleDiv'); + chartTitleDiv + .append('div') .append('span') .attr('class', 'chartTitle') .text(data?.chartTitle ? data?.chartTitle : ''); + const hideNumber = this.hideRatio === undefined ? false : this.hideRatio; + + const showRatio = this.variant === Variant.PartToWhole && !hideNumber && data!.chartData!.length === 2; + const getChartData = () => (data!.chartData![0].data ? data!.chartData![0].data : 0); + + if (showRatio) { + const ratioDiv = chartTitleDiv.append('div').attr('role', 'text'); + const numData = data!.chartData![0].data; + const denomData = data!.chartData![1].data; + const total = numData! + denomData!; + ratioDiv.append('span').attr('class', 'ratioNumerator').text(numData!); + ratioDiv.append('span').attr('class', 'ratioDenominator').text(`/${total!}`); + } + const svgEle = containerDiv .append('svg') .attr('height', 20) - .attr('width', 90 + '%') + .attr('width', 100 + '%') .attr('aria-label', data?.chartTitle ? data?.chartTitle : '') .selectAll('g') .data(data.chartData!) @@ -360,8 +379,6 @@ export class HorizontalBarChart extends FASTElement { } } - const getChartData = () => (data!.chartData![0].data ? data!.chartData![0].data : 0); - return containerDiv; } } From f1c92343c513c72e9bd9612f2775c565be887313 Mon Sep 17 00:00:00 2001 From: Anush Gupta <74965306+Anush2303@users.noreply.github.com> Date: Tue, 22 Oct 2024 16:20:07 +0530 Subject: [PATCH 17/60] Horizontal Bar chart as Web component (#33096) --- .../horizontalbarchart.stories.ts | 108 +++++++++++++++++- .../horizontalbarchart.styles.ts | 21 +++- .../horizontalbarchart/horizontalbarchart.ts | 24 ++-- 3 files changed, 140 insertions(+), 13 deletions(-) diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts index 2b714dbda636a..bd20f912bddd2 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts @@ -4,6 +4,97 @@ import { renderComponent } from '../helpers.stories.js'; import { HorizontalBarChart as FluentHorizontalBarChart } from './horizontalbarchart.js'; import { IChartDataPoint, IChartProps } from './horizontalbarchart.options.js'; +const singleBarHBCData = [ + { + chartTitle: 'one', + chartData: [ + { + legend: 'one', + data: 1543, + y: 15000, + color: '#637cef', + }, + ], + }, + { + chartTitle: 'two', + chartData: [ + { + legend: 'two', + data: 800, + y: 15000, + color: '#e3008c', + }, + ], + }, + { + chartTitle: 'three', + chartData: [ + { + legend: 'three', + data: 8888, + y: 15000, + color: '#2aa0a4', + }, + ], + }, + { + chartTitle: 'four', + chartData: [ + { + legend: 'four', + data: 15888, + y: 15000, + color: '#9373c0', + }, + ], + }, + { + chartTitle: 'five', + chartData: [ + { + legend: 'five', + data: 11444, + y: 15000, + color: '#13a10e', + }, + ], + }, + { + chartTitle: 'six', + chartData: [ + { + legend: 'six', + data: 14000, + y: 15000, + color: '#3a96dd', + }, + ], + }, + { + chartTitle: 'seven', + chartData: [ + { + legend: 'seven', + data: 9855, + y: 15000, + color: '#ca5010', + }, + ], + }, + { + chartTitle: 'eight', + chartData: [ + { + legend: 'eight', + data: 4250, + y: 15000, + color: '#57811b', + }, + ], + }, +]; + const chartPoints1: IChartDataPoint[] = [ { legend: 'Debit card numbers (EU and USA)', @@ -98,16 +189,25 @@ export default { export const Basic: Story = renderComponent(storyTemplate).bind({}); -export const NMVariant: Story = renderComponent(html>` +export const singleBarHBC: Story = renderComponent(html>`
- + + +
+`); + +export const HBCNMVariant: Story = renderComponent(html>` +
+ + +
`); export const RTL: Story = renderComponent(html>` -
+
- +
`); diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts index d59c3ad0c3746..9c306bd8662e3 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts @@ -36,18 +36,34 @@ export const styles: ElementStyles = css` .tooltip { ${typographyCaption1Styles} position: absolute; + z-index: 999; display: grid; overflow: hidden; padding: ${spacingVerticalMNudge} ${spacingHorizontalL}; backgroundcolor: ${colorNeutralBackground1}; backgroundblendmode: normal, luminosity; text-align: center; - background: white; + background: ${colorNeutralBackground1}; box-shadow: ${shadow4}; border: 2px; pointer-events: none; opacity: 0; - z-index: 999; + } + .tooltipline { + padding-left: 8px; + height: 50px; + } + .tooltiplegend { + font-size: 13px; + color: theme.semanticColors.bodyText; + text-align: left; + } + .tooltipdata { + font-weight: bold; + font-size: 30px; + text-align: left; + lineheight: 36px; + margin-top: 12px; } .bar { opacity: 1; @@ -93,6 +109,7 @@ export const styles: ElementStyles = css` } .barLabel { ${typographyBody1StrongStyles} + fill: ${colorNeutralForeground1}; } .chartTitleDiv { width: 100%; diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts index 807fdd7c67448..ac536e84e9c19 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -190,6 +190,19 @@ export class HorizontalBarChart extends FASTElement { } public _createBarsAndLegends(data: IChartProps, barNo?: number) { + const _isRTL = this._isRTL; + const _computeLongestBarTotalValue = () => { + let longestBarTotalValue = 0; + this.data!.forEach(({ chartData, chartTitle }) => { + const barTotalValue = chartData!.reduce( + (acc: number, point: IChartDataPoint) => acc + (point.data ? point.data : 0), + 0, + ); + longestBarTotalValue = Math.max(longestBarTotalValue, barTotalValue); + }); + return longestBarTotalValue; + }; + const longestBarTotalValue = _computeLongestBarTotalValue(); const noOfBars = data.chartData?.reduce((count: number, point: IChartDataPoint) => (count += (point.data || 0) > 0 ? 1 : 0), 0) || 1; @@ -201,7 +214,7 @@ export class HorizontalBarChart extends FASTElement { (acc: number, point: IChartDataPoint) => acc + (point.data ? point.data : 0), 0, ); - const total = this.variant === Variant.AbsoluteScale ? 400 : barTotalValue; + const total = this.variant === Variant.AbsoluteScale ? longestBarTotalValue : barTotalValue; let sumOfPercent = 0; data.chartData!.map((point: IChartDataPoint, index: number) => { @@ -247,7 +260,6 @@ export class HorizontalBarChart extends FASTElement { let value = 0; function createBars(this: SVGGElement, point: IChartDataPoint, index: number) { - const _isRTL = false; const barHeight = 12; const pointData = point.data ? point.data : 0; if (index > 0) { @@ -329,10 +341,9 @@ export class HorizontalBarChart extends FASTElement { .each(createBars) .on('mouseover', function (event, d) { const tooltipHTML = ` -
-
${d.legend}
-
${d.data}
+
+
${d.legend}
+
${d.data}
`; tooltip = containerDiv @@ -378,7 +389,6 @@ export class HorizontalBarChart extends FASTElement { .text(barLabel); } } - return containerDiv; } } From ce231ed2591773f7e47c30aa2c8244aa922f8aa9 Mon Sep 17 00:00:00 2001 From: krkshitij <110246001+krkshitij@users.noreply.github.com> Date: Wed, 23 Oct 2024 11:03:12 +0530 Subject: [PATCH 18/60] Add color palette for data visualization (#33095) --- .../src/donut-chart/donut-chart.options.ts | 6 +- .../src/donut-chart/donut-chart.stories.ts | 15 +-- .../src/donut-chart/donut-chart.styles.ts | 38 ++++-- .../src/donut-chart/donut-chart.ts | 30 ++++- .../horizontalbarchart.options.ts | 6 +- .../horizontalbarchart/horizontalbarchart.ts | 20 ++-- .../web-components/src/utils/chart-helpers.ts | 108 ++++++++++++++++++ 7 files changed, 184 insertions(+), 39 deletions(-) diff --git a/packages/web-components/src/donut-chart/donut-chart.options.ts b/packages/web-components/src/donut-chart/donut-chart.options.ts index d41239e013ca9..391759d58f953 100644 --- a/packages/web-components/src/donut-chart/donut-chart.options.ts +++ b/packages/web-components/src/donut-chart/donut-chart.options.ts @@ -1,4 +1,4 @@ -export interface IChartDataPoint { +export interface ChartDataPoint { /** * Legend text for the datapoint in the chart */ @@ -27,7 +27,7 @@ export interface IChartDataPoint { yAxisCalloutData?: string; } -export interface IChartProps { +export interface ChartProps { /** * chart title for the chart */ @@ -36,5 +36,5 @@ export interface IChartProps { /** * data for the points in the chart */ - chartData?: IChartDataPoint[]; + chartData?: ChartDataPoint[]; } diff --git a/packages/web-components/src/donut-chart/donut-chart.stories.ts b/packages/web-components/src/donut-chart/donut-chart.stories.ts index 3e04c41d3f315..9f179d7a1ebee 100644 --- a/packages/web-components/src/donut-chart/donut-chart.stories.ts +++ b/packages/web-components/src/donut-chart/donut-chart.stories.ts @@ -2,22 +2,20 @@ import { html } from '@microsoft/fast-element'; import type { Meta, Story, StoryArgs } from '../helpers.stories.js'; import { renderComponent } from '../helpers.stories.js'; import { DonutChart as FluentDonutChart } from './donut-chart.js'; -import { IChartDataPoint, IChartProps } from './donut-chart.options.js'; +import { ChartDataPoint, ChartProps } from './donut-chart.options.js'; -const points: IChartDataPoint[] = [ +const points: ChartDataPoint[] = [ { legend: 'first', data: 20000, - color: '#0099BC', }, { legend: 'second', data: 39000, - color: '#77004D', }, ]; -const data: IChartProps = { +const data: ChartProps = { chartTitle: 'Donut chart basic example', chartData: points, }; @@ -34,9 +32,8 @@ export default { export const Basic: Story = renderComponent(storyTemplate).bind({}); export const RTL: Story = renderComponent(html>` -
-
- -
+
+ +
`); diff --git a/packages/web-components/src/donut-chart/donut-chart.styles.ts b/packages/web-components/src/donut-chart/donut-chart.styles.ts index c793aca8977c0..03f8b95c8d9ed 100644 --- a/packages/web-components/src/donut-chart/donut-chart.styles.ts +++ b/packages/web-components/src/donut-chart/donut-chart.styles.ts @@ -4,7 +4,6 @@ import { borderRadiusMedium, colorNeutralBackground1, colorNeutralForeground1, - colorNeutralForeground2, colorNeutralShadowAmbient, colorNeutralShadowKey, colorTransparentStroke, @@ -13,7 +12,13 @@ import { spacingVerticalL, spacingVerticalMNudge, } from '../theme/design-tokens.js'; -import { typographyBody1Styles, typographyCaption1Styles, typographyTitle2Styles } from '../styles/index.js'; +import { + typographyBody1Styles, + typographyCaption1Styles, + typographyTitle2Styles, + typographyTitle3Styles, +} from '../styles/index.js'; +import { forcedColorsStylesheetBehavior } from '../utils/index.js'; /** * Styles for the DonutChart component. @@ -53,7 +58,7 @@ export const styles = css` } .insideDonutString { - ${typographyTitle2Styles} + ${typographyTitle3Styles} fill: ${colorNeutralForeground1}; } @@ -70,7 +75,7 @@ export const styles = css` .legendRect { width: 12px; height: 12px; - margin-right: ${spacingHorizontalS}; + margin-inline-end: ${spacingHorizontalS}; border: 1px solid; } @@ -97,16 +102,33 @@ export const styles = css` } .calloutBlockContainer { - padding-left: ${spacingHorizontalS}; - color: ${colorNeutralForeground2}; + padding-inline-start: ${spacingHorizontalS}; + color: ${colorNeutralForeground1}; + border-inline-start: 4px solid; } .calloutLegendText { ${typographyCaption1Styles} - color: ${colorNeutralForeground2}; } .calloutContentY { ${typographyTitle2Styles} } -`; +`.withBehaviors( + forcedColorsStylesheetBehavior(css` + .insideDonutString { + fill: rgb(179, 179, 179); + } + + .legendRect, + .calloutBlockContainer { + forced-color-adjust: none; + } + + .calloutLegendText, + .calloutContentY { + forced-color-adjust: auto; + color: rgb(255, 255, 255); + } + `), +); diff --git a/packages/web-components/src/donut-chart/donut-chart.ts b/packages/web-components/src/donut-chart/donut-chart.ts index 56ab498c6b19f..cbe62666132cd 100644 --- a/packages/web-components/src/donut-chart/donut-chart.ts +++ b/packages/web-components/src/donut-chart/donut-chart.ts @@ -1,8 +1,8 @@ import { attr, FASTElement, nullableNumberConverter } from '@microsoft/fast-element'; import { arc as d3Arc, pie as d3Pie } from 'd3-shape'; import { createTabster, getMover, getTabsterAttribute, MoverDirections } from 'tabster'; -import { getDataConverter } from '../utils/chart-helpers.js'; -import { IChartProps } from './donut-chart.options.js'; +import { getColorFromToken, getDataConverter, getNextColor, getRTL } from '../utils/chart-helpers.js'; +import type { ChartProps } from './donut-chart.options.js'; const tabsterCore = createTabster(window); getMover(tabsterCore); @@ -21,7 +21,7 @@ export class DonutChart extends FASTElement { public hideTooltip?: boolean; @attr({ converter: getDataConverter('donut-chart') }) - public data!: IChartProps; + public data!: ChartProps; @attr({ attribute: 'inner-radius', converter: nullableNumberConverter }) public innerRadius: number = 1; @@ -30,6 +30,7 @@ export class DonutChart extends FASTElement { public valueInsideDonut?: string; private _selectedLegend: string = ''; + private _isRTL: boolean = false; constructor() { super(); @@ -39,6 +40,17 @@ export class DonutChart extends FASTElement { connectedCallback() { super.connectedCallback(); + + this.data.chartData?.forEach((d, i) => { + if (d.color) { + d.color = getColorFromToken(d.color); + } else { + d.color = getNextColor(i); + } + }); + + this._isRTL = getRTL(this); + this.render(); } @@ -104,7 +116,7 @@ export class DonutChart extends FASTElement { return; } - tooltipBody.style['borderLeft'] = `4px solid ${d.data.color}`; + tooltipBody.style['borderColor'] = d.data.color; legendText.textContent = d.data.legend; yText.textContent = d.data.data; yText.style['color'] = d.data.color; @@ -119,7 +131,7 @@ export class DonutChart extends FASTElement { return; } - tooltipBody.style['borderLeft'] = `4px solid ${d.data.color}`; + tooltipBody.style['borderColor'] = d.data.color; legendText.textContent = d.data.legend; yText.textContent = d.data.data; yText.style['color'] = d.data.color; @@ -152,11 +164,17 @@ export class DonutChart extends FASTElement { const legendContainer = document.createElement('div'); rootDiv.appendChild(legendContainer); legendContainer.classList.add('legendContainer'); + legendContainer.setAttribute('role', 'listbox'); + legendContainer.setAttribute('aria-label', 'Legends'); - legends?.forEach(d => { + legends?.forEach((d, index) => { const button = document.createElement('button'); legendContainer.appendChild(button); button.classList.add('legend'); + button.setAttribute('role', 'option'); + button.setAttribute('aria-setsize', `${legends.length}`); + button.setAttribute('aria-posinset', `${index + 1}`); + button.setAttribute('aria-selected', `${this._selectedLegend === d.title}`); const legendRect = document.createElement('div'); button.appendChild(legendRect); diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts index 61fa1b34b1b84..0a0bc76423bb2 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts @@ -3,7 +3,7 @@ export enum Variant { AbsoluteScale = 'absolute-scale', } -export interface IChartDataPoint { +export interface ChartDataPoint { /** * Legend text for the datapoint in the chart */ @@ -25,7 +25,7 @@ export interface IChartDataPoint { color?: string; } -export interface IChartProps { +export interface ChartProps { /** * chart title for the chart */ @@ -34,5 +34,5 @@ export interface IChartProps { /** * data for the points in the chart */ - chartData?: IChartDataPoint[]; + chartData?: ChartDataPoint[]; } diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts index ac536e84e9c19..0f959a917dbe1 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -2,7 +2,7 @@ import { attr, FASTElement } from '@microsoft/fast-element'; import { create as d3Create, select as d3Select } from 'd3-selection'; import { createTabster, getGroupper, getMover, getTabsterAttribute, TABSTER_ATTRIBUTE_NAME } from 'tabster'; import { getDataConverter } from '../utils/chart-helpers.js'; -import { IChartDataPoint, IChartProps, Variant } from './horizontalbarchart.options.js'; +import { ChartDataPoint, ChartProps, Variant } from './horizontalbarchart.options.js'; // During the page startup. const tabsterCore = createTabster(window); @@ -40,10 +40,10 @@ export class HorizontalBarChart extends FASTElement { public _isRTL: boolean = false; @attr({ converter: getDataConverter('horizontal-bar-chart') }) - public data!: IChartProps[]; + public data!: ChartProps[]; @attr - public uniqueLegends: IChartDataPoint[] = []; + public uniqueLegends: ChartDataPoint[] = []; @attr public hideRatio = false; @@ -61,7 +61,7 @@ export class HorizontalBarChart extends FASTElement { this.render(); } - private createSingleChartBars(singleChartData: IChartProps, index: number, nodes: any) { + private createSingleChartBars(singleChartData: ChartProps, index: number, nodes: any) { const singleChartBars = this._createBarsAndLegends(singleChartData!, index); // create a div element. Loop through chart bars and add to the div as its children @@ -189,13 +189,13 @@ export class HorizontalBarChart extends FASTElement { } } - public _createBarsAndLegends(data: IChartProps, barNo?: number) { + public _createBarsAndLegends(data: ChartProps, barNo?: number) { const _isRTL = this._isRTL; const _computeLongestBarTotalValue = () => { let longestBarTotalValue = 0; this.data!.forEach(({ chartData, chartTitle }) => { const barTotalValue = chartData!.reduce( - (acc: number, point: IChartDataPoint) => acc + (point.data ? point.data : 0), + (acc: number, point: ChartDataPoint) => acc + (point.data ? point.data : 0), 0, ); longestBarTotalValue = Math.max(longestBarTotalValue, barTotalValue); @@ -204,20 +204,20 @@ export class HorizontalBarChart extends FASTElement { }; const longestBarTotalValue = _computeLongestBarTotalValue(); const noOfBars = - data.chartData?.reduce((count: number, point: IChartDataPoint) => (count += (point.data || 0) > 0 ? 1 : 0), 0) || + data.chartData?.reduce((count: number, point: ChartDataPoint) => (count += (point.data || 0) > 0 ? 1 : 0), 0) || 1; const barSpacingInPercent = 1; const totalMarginPercent = barSpacingInPercent * (noOfBars - 1); // calculating starting point of each bar and it's range const startingPoint: number[] = []; const barTotalValue = data.chartData!.reduce( - (acc: number, point: IChartDataPoint) => acc + (point.data ? point.data : 0), + (acc: number, point: ChartDataPoint) => acc + (point.data ? point.data : 0), 0, ); const total = this.variant === Variant.AbsoluteScale ? longestBarTotalValue : barTotalValue; let sumOfPercent = 0; - data.chartData!.map((point: IChartDataPoint, index: number) => { + data.chartData!.map((point: ChartDataPoint, index: number) => { const pointData = point.data ? point.data : 0; const currValue = (pointData / total) * 100; let value = currValue ? currValue : 0; @@ -259,7 +259,7 @@ export class HorizontalBarChart extends FASTElement { let prevPosition = 0; let value = 0; - function createBars(this: SVGGElement, point: IChartDataPoint, index: number) { + function createBars(this: SVGGElement, point: ChartDataPoint, index: number) { const barHeight = 12; const pointData = point.data ? point.data : 0; if (index > 0) { diff --git a/packages/web-components/src/utils/chart-helpers.ts b/packages/web-components/src/utils/chart-helpers.ts index c0c7d1f3591a2..530ee35855b8e 100644 --- a/packages/web-components/src/utils/chart-helpers.ts +++ b/packages/web-components/src/utils/chart-helpers.ts @@ -1,4 +1,6 @@ import type { ValueConverter } from '@microsoft/fast-element'; +import { Direction } from '@microsoft/fast-web-utilities'; +import { getDirection } from './direction.js'; export const getDataConverter = (chartType: string): ValueConverter => { let validate: (obj: any) => void; @@ -60,3 +62,109 @@ const validateChartProps = (obj: any) => { }); } }; + +export const DataVizPalette = { + color1: 'qualitative.1', + color2: 'qualitative.2', + color3: 'qualitative.3', + color4: 'qualitative.4', + color5: 'qualitative.5', + color6: 'qualitative.6', + color7: 'qualitative.7', + color8: 'qualitative.8', + color9: 'qualitative.9', + color10: 'qualitative.10', + color11: 'qualitative.21', + color12: 'qualitative.22', + color13: 'qualitative.23', + color14: 'qualitative.24', + color15: 'qualitative.25', + color16: 'qualitative.26', + color17: 'qualitative.27', + color18: 'qualitative.28', + color19: 'qualitative.29', + info: 'semantic.info', + disabled: 'semantic.disabled', + highError: 'semantic.highError', + error: 'semantic.error', + warning: 'semantic.warning', + success: 'semantic.success', + highSuccess: 'semantic.highSuccess', +}; + +/** + * Key: Color code. + * Value: + * Index 0 - Default color / Color for light theme, + * Index 1 - Color for dark theme + */ +type Palette = { [key: string]: string[] }; + +const QualitativePalette: Palette = { + '1': ['#637cef'], // [cornflower.tint10], + '2': ['#e3008c'], // [hotPink.primary], + '3': ['#2aa0a4'], // [teal.tint20], + '4': ['#9373c0'], // [orchid.tint10], + '5': ['#13a10e'], // [lightGreen.primary], + '6': ['#3a96dd'], // [lightBlue.primary], + '7': ['#ca5010'], // [pumpkin.primary], + '8': ['#57811b'], // [lime.shade20], + '9': ['#b146c2'], // [lilac.primary], + '10': ['#ae8c00'], // [gold.shade10], + '21': ['#4f6bed'], // [cornflower.primary], + '22': ['#ea38a6'], // [hotPink.tint20], + '23': ['#038387'], // [teal.primary], + '24': ['#8764b8'], // [orchid.primary], + '25': ['#11910d'], // [lightGreen.shade10], + '26': ['#3487c7'], // [lightBlue.shade10], + '27': ['#d06228'], // [pumpkin.tint10], + '28': ['#689920'], // [lime.shade10], + '29': ['#ba58c9'], // [lilac.tint10], +}; + +const SemanticPalette: Palette = { + info: ['#015cda'], + disabled: ['#dbdbdb', '#4d4d4d'], // [grey[86], grey[30]] + highError: ['#6e0811', '#cc2635'], // [cranberry.shade30, cranberry.tint10], + error: ['#c50f1f', '#dc626d'], // [cranberry.primary, cranberry.tint30], + warning: ['#f7630c', '#f87528'], // [orange.primary, orange.tint10], + success: ['#107c10', '#54b054'], // [green.primary, green.tint30], + highSuccess: ['#094509', '#218c21'], // [green.shade30, green.tint10], +}; + +const Colors: { [key: string]: Palette } = { + qualitative: QualitativePalette, + semantic: SemanticPalette, +}; + +const QUALITATIVE_COLORS = Object.values(QualitativePalette); +const TOKENS = Object.values(DataVizPalette); + +const getThemeSpecificColor = (colors: string[], isDarkTheme: boolean): string => { + if (colors.length === 0) { + return ''; + } + const colorIdx = Number(isDarkTheme); + if (colorIdx < colors.length) { + return colors[colorIdx]; + } + return colors[0]; +}; + +export const getNextColor = (index: number, offset: number = 0, isDarkTheme: boolean = false): string => { + const colors = QUALITATIVE_COLORS[(index + offset) % QUALITATIVE_COLORS.length]; + return getThemeSpecificColor(colors, isDarkTheme); +}; + +export const getColorFromToken = (token: string, isDarkTheme: boolean = false): string => { + if (TOKENS.indexOf(token) >= 0) { + const [paletteName, colorCode] = token.split('.'); + const colors = Colors[paletteName][colorCode]; + return getThemeSpecificColor(colors, isDarkTheme); + } + return token; +}; + +export const getRTL = (rootNode: HTMLElement): boolean => { + return getDirection(rootNode) === Direction.rtl; +}; From 17ffa277f22c736a2a575b83da03a79e2a204384 Mon Sep 17 00:00:00 2001 From: Anush Gupta <74965306+Anush2303@users.noreply.github.com> Date: Thu, 24 Oct 2024 16:12:56 +0530 Subject: [PATCH 19/60] Single Bar HBC NM Variant (#33116) --- .../horizontalbarchart.options.ts | 6 + .../horizontalbarchart.stories.ts | 139 ++++++++++++++++-- .../horizontalbarchart/horizontalbarchart.ts | 48 +++++- 3 files changed, 177 insertions(+), 16 deletions(-) diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts index 0a0bc76423bb2..b0d0b3cdca36f 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts @@ -1,6 +1,7 @@ export enum Variant { PartToWhole = 'part-to-whole', AbsoluteScale = 'absolute-scale', + SingleBar = 'single-bar', } export interface ChartDataPoint { @@ -14,6 +15,11 @@ export interface ChartDataPoint { */ data?: number; + /** + * total length of bar + */ + total?: number; + /** * onClick action for each datapoint in the chart */ diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts index bd20f912bddd2..df5e3b8a31bac 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts @@ -11,7 +11,7 @@ const singleBarHBCData = [ { legend: 'one', data: 1543, - y: 15000, + total: 15000, color: '#637cef', }, ], @@ -22,7 +22,7 @@ const singleBarHBCData = [ { legend: 'two', data: 800, - y: 15000, + total: 15000, color: '#e3008c', }, ], @@ -33,7 +33,7 @@ const singleBarHBCData = [ { legend: 'three', data: 8888, - y: 15000, + total: 15000, color: '#2aa0a4', }, ], @@ -44,7 +44,7 @@ const singleBarHBCData = [ { legend: 'four', data: 15888, - y: 15000, + total: 15000, color: '#9373c0', }, ], @@ -55,7 +55,7 @@ const singleBarHBCData = [ { legend: 'five', data: 11444, - y: 15000, + total: 15000, color: '#13a10e', }, ], @@ -66,7 +66,7 @@ const singleBarHBCData = [ { legend: 'six', data: 14000, - y: 15000, + total: 15000, color: '#3a96dd', }, ], @@ -77,7 +77,7 @@ const singleBarHBCData = [ { legend: 'seven', data: 9855, - y: 15000, + total: 15000, color: '#ca5010', }, ], @@ -88,7 +88,98 @@ const singleBarHBCData = [ { legend: 'eight', data: 4250, - y: 15000, + total: 15000, + color: '#57811b', + }, + ], + }, +]; + +const singleBarNMVariantData = [ + { + chartTitle: 'one', + chartData: [ + { + legend: 'one', + data: 1543, + total: 15000, + color: '#637cef', + }, + ], + }, + { + chartTitle: 'two', + chartData: [ + { + legend: 'two', + data: 800, + total: 15000, + color: '#e3008c', + }, + ], + }, + { + chartTitle: 'three', + chartData: [ + { + legend: 'three', + data: 8888, + total: 15000, + color: '#2aa0a4', + }, + ], + }, + { + chartTitle: 'four', + chartData: [ + { + legend: 'four', + data: 15888, + total: 15000, + color: '#9373c0', + }, + ], + }, + { + chartTitle: 'five', + chartData: [ + { + legend: 'five', + data: 11444, + total: 15000, + color: '#13a10e', + }, + ], + }, + { + chartTitle: 'six', + chartData: [ + { + legend: 'six', + data: 14000, + total: 15000, + color: '#3a96dd', + }, + ], + }, + { + chartTitle: 'seven', + chartData: [ + { + legend: 'seven', + data: 9855, + total: 15000, + color: '#ca5010', + }, + ], + }, + { + chartTitle: 'eight', + chartData: [ + { + legend: 'eight', + data: 4250, + total: 15000, color: '#57811b', }, ], @@ -179,6 +270,20 @@ const data: IChartProps[] = [ }, ]; +const singlePointData = [ + { + chartTitle: 'one', + chartData: [ + { + legend: 'one', + data: 1543, + total: 15000, + color: '#637cef', + }, + ], + }, +]; + const storyTemplate = html>` `; @@ -196,11 +301,25 @@ export const singleBarHBC: Story = renderComponent(htm
`); -export const HBCNMVariant: Story = renderComponent(html>` +export const singleBarNMVariant: Story = renderComponent(html< + StoryArgs +>`
- + +
+`); +export const singleDataPoint: Story = renderComponent(html< + StoryArgs +>` +
+ +
`); diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts index 0f959a917dbe1..d2758685dec4d 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -77,8 +77,11 @@ export class HorizontalBarChart extends FASTElement { const uniqueLegendsMap = new Map(); // Iterate through all chart points and populate the map - this.data.forEach(dataSeries => { - dataSeries.chartData!.forEach(point => { + for (const dataSeries of this.data) { + for (const point of dataSeries.chartData!) { + if ((point as any).placeholder === true) { + continue; + } // Check if the legend is already in the map if (!uniqueLegendsMap.has(point.legend)) { uniqueLegendsMap.set(point.legend, { @@ -87,15 +90,46 @@ export class HorizontalBarChart extends FASTElement { color: point.color, }); } - }); - }); + } + } // Convert the map values back to an array this.uniqueLegends = Array.from(uniqueLegendsMap.values()); } + private _hydrateData() { + this.data!.forEach(({ chartTitle, chartData }) => { + if (chartData!.length === 1) { + const pointData = chartData![0]; + const newEntry = { + legend: '', + data: pointData.total! - pointData.data! > 0 ? pointData.total! - pointData.data! : 0, + y: pointData.total!, + color: '#edebe9', + placeholder: true, + }; + chartData!.push(newEntry); + } + }); + } + + private calculateBarSpacing(): number { + //todo: replace 650 with width of svg or div. + const svgWidth = 650; + let barSpacing = 0; + const MARGIN_WIDTH_IN_PX = 3; + if (svgWidth) { + const currentBarSpacing = (MARGIN_WIDTH_IN_PX / svgWidth) * 100; + barSpacing = currentBarSpacing; + } + return barSpacing; + } + render() { // Array to hold references to the buttons + if (this.variant === Variant.SingleBar) { + this._hydrateData(); + } const legendButtonRefs: any = []; const div = d3Select(this.shadowRoot as any).append('div'); div @@ -120,7 +154,6 @@ export class HorizontalBarChart extends FASTElement { const legendContainer = document.createElement('div'); div.node()!.appendChild(legendContainer); legendContainer.classList.add('legendcontainer'); - this.uniqueLegends?.forEach((d, index) => { const button = document.createElement('button'); legendContainer.appendChild(button); @@ -206,7 +239,7 @@ export class HorizontalBarChart extends FASTElement { const noOfBars = data.chartData?.reduce((count: number, point: ChartDataPoint) => (count += (point.data || 0) > 0 ? 1 : 0), 0) || 1; - const barSpacingInPercent = 1; + const barSpacingInPercent = this.calculateBarSpacing(); const totalMarginPercent = barSpacingInPercent * (noOfBars - 1); // calculating starting point of each bar and it's range const startingPoint: number[] = []; @@ -340,6 +373,9 @@ export class HorizontalBarChart extends FASTElement { .append('g') .each(createBars) .on('mouseover', function (event, d) { + if (d && d.hasOwnProperty('placeholder') && (d as any).placeholder === true) { + return; + } const tooltipHTML = `
${d.legend}
From 86df4deedf3d44080ec658888a0869210bc9c237 Mon Sep 17 00:00:00 2001 From: krkshitij <110246001+krkshitij@users.noreply.github.com> Date: Fri, 25 Oct 2024 22:19:49 +0530 Subject: [PATCH 20/60] Fix bugs in donut-chart web component (#33118) --- .../src/donut-chart/donut-chart.options.ts | 6 +- .../src/donut-chart/donut-chart.stories.ts | 4 +- .../src/donut-chart/donut-chart.styles.ts | 27 ++- .../src/donut-chart/donut-chart.ts | 170 +++++++++--------- .../horizontalbarchart.options.ts | 6 +- .../horizontalbarchart/horizontalbarchart.ts | 7 +- .../web-components/src/utils/chart-helpers.ts | 109 ++++++----- 7 files changed, 191 insertions(+), 138 deletions(-) diff --git a/packages/web-components/src/donut-chart/donut-chart.options.ts b/packages/web-components/src/donut-chart/donut-chart.options.ts index 391759d58f953..00fbde03b681e 100644 --- a/packages/web-components/src/donut-chart/donut-chart.options.ts +++ b/packages/web-components/src/donut-chart/donut-chart.options.ts @@ -2,12 +2,12 @@ export interface ChartDataPoint { /** * Legend text for the datapoint in the chart */ - legend?: string; + legend: string; /** * data the datapoint in the chart */ - data?: number; + data: number; /** * Color for the legend in the chart. If not provided, it will fallback on the default color palette. @@ -36,5 +36,5 @@ export interface ChartProps { /** * data for the points in the chart */ - chartData?: ChartDataPoint[]; + chartData: ChartDataPoint[]; } diff --git a/packages/web-components/src/donut-chart/donut-chart.stories.ts b/packages/web-components/src/donut-chart/donut-chart.stories.ts index 9f179d7a1ebee..65b7ffb5b11f4 100644 --- a/packages/web-components/src/donut-chart/donut-chart.stories.ts +++ b/packages/web-components/src/donut-chart/donut-chart.stories.ts @@ -21,7 +21,7 @@ const data: ChartProps = { }; const storyTemplate = html>` - + `; @@ -33,7 +33,7 @@ export const Basic: Story = renderComponent(storyTemplate).bin export const RTL: Story = renderComponent(html>`
- +
`); diff --git a/packages/web-components/src/donut-chart/donut-chart.styles.ts b/packages/web-components/src/donut-chart/donut-chart.styles.ts index 03f8b95c8d9ed..acf27a21663f6 100644 --- a/packages/web-components/src/donut-chart/donut-chart.styles.ts +++ b/packages/web-components/src/donut-chart/donut-chart.styles.ts @@ -6,6 +6,8 @@ import { colorNeutralForeground1, colorNeutralShadowAmbient, colorNeutralShadowKey, + colorStrokeFocus1, + colorStrokeFocus2, colorTransparentStroke, spacingHorizontalL, spacingHorizontalS, @@ -45,6 +47,26 @@ export const styles = css` display: block; } + .arc:focus { + outline: none; + stroke-width: 1px; + stroke: ${colorStrokeFocus1}; + } + + .focusOutline { + fill: none; + } + + .focusOutline:has(+ .arc:focus) { + stroke-width: 4px; + stroke: ${colorStrokeFocus2}; + } + + .insideDonutString { + ${typographyTitle3Styles} + fill: ${colorNeutralForeground1}; + } + .legendContainer { padding-top: ${spacingVerticalL}; @@ -57,11 +79,6 @@ export const styles = css` display: flex; } - .insideDonutString { - ${typographyTitle3Styles} - fill: ${colorNeutralForeground1}; - } - .legend { display: flex; align-items: center; diff --git a/packages/web-components/src/donut-chart/donut-chart.ts b/packages/web-components/src/donut-chart/donut-chart.ts index cbe62666132cd..7ef3e6fe0fe34 100644 --- a/packages/web-components/src/donut-chart/donut-chart.ts +++ b/packages/web-components/src/donut-chart/donut-chart.ts @@ -1,8 +1,15 @@ import { attr, FASTElement, nullableNumberConverter } from '@microsoft/fast-element'; -import { arc as d3Arc, pie as d3Pie } from 'd3-shape'; -import { createTabster, getMover, getTabsterAttribute, MoverDirections } from 'tabster'; -import { getColorFromToken, getDataConverter, getNextColor, getRTL } from '../utils/chart-helpers.js'; -import type { ChartProps } from './donut-chart.options.js'; +import { arc as d3Arc, pie as d3Pie, PieArcDatum } from 'd3-shape'; +import { createTabster, getMover, getTabsterAttribute, MoverDirections, TABSTER_ATTRIBUTE_NAME } from 'tabster'; +import { + getColorFromToken, + getNextColor, + jsonConverter, + SVG_NAMESPACE_URI, + validateChartProps, + wrapText, +} from '../utils/chart-helpers.js'; +import { ChartDataPoint, ChartProps } from './donut-chart.options.js'; const tabsterCore = createTabster(window); getMover(tabsterCore); @@ -20,7 +27,7 @@ export class DonutChart extends FASTElement { @attr({ attribute: 'hide-tooltip', mode: 'boolean' }) public hideTooltip?: boolean; - @attr({ converter: getDataConverter('donut-chart') }) + @attr({ converter: jsonConverter }) public data!: ChartProps; @attr({ attribute: 'inner-radius', converter: nullableNumberConverter }) @@ -30,7 +37,6 @@ export class DonutChart extends FASTElement { public valueInsideDonut?: string; private _selectedLegend: string = ''; - private _isRTL: boolean = false; constructor() { super(); @@ -41,16 +47,16 @@ export class DonutChart extends FASTElement { connectedCallback() { super.connectedCallback(); - this.data.chartData?.forEach((d, i) => { - if (d.color) { - d.color = getColorFromToken(d.color); + validateChartProps(this.data, 'data'); + + this.data.chartData.forEach((dataPoint, index) => { + if (dataPoint.color) { + dataPoint.color = getColorFromToken(dataPoint.color); } else { - d.color = getNextColor(i); + dataPoint.color = getNextColor(index); } }); - this._isRTL = getRTL(this); - this.render(); } @@ -61,28 +67,29 @@ export class DonutChart extends FASTElement { const chartWrapper = document.createElement('div'); rootDiv.appendChild(chartWrapper); - const attributeObj = getTabsterAttribute({ + + const tabsterAttribute = getTabsterAttribute({ mover: { direction: MoverDirections.Horizontal, tabbable: true }, }); - Object.keys(attributeObj).forEach(x => chartWrapper.setAttribute(x, attributeObj[x])); - - const svgNS = 'http://www.w3.org/2000/svg'; + if (tabsterAttribute[TABSTER_ATTRIBUTE_NAME]) { + chartWrapper.setAttribute(TABSTER_ATTRIBUTE_NAME, tabsterAttribute[TABSTER_ATTRIBUTE_NAME]); + } - const svg = document.createElementNS(svgNS, 'svg'); + const svg = document.createElementNS(SVG_NAMESPACE_URI, 'svg'); chartWrapper.appendChild(svg); svg.setAttribute('width', `${this.width}`); svg.setAttribute('height', `${this.height}`); - svg.setAttribute('aria-label', this.data.chartTitle); + this.data.chartTitle && svg.setAttribute('aria-label', this.data.chartTitle); svg.classList.add('chart'); - const group = document.createElementNS(svgNS, 'g'); + const group = document.createElementNS(SVG_NAMESPACE_URI, 'g'); svg.appendChild(group); group.setAttribute('transform', `translate(${this.width / 2}, ${this.height / 2})`); - const pie = d3Pie() - .value((d: any) => d.data) + const pie = d3Pie() + .value(d => d.data) .padAngle(0.02); - const arc = d3Arc() + const arc = d3Arc>() .innerRadius(this.innerRadius) .outerRadius((Math.min(this.height, this.width) - 20) / 2); @@ -102,24 +109,34 @@ export class DonutChart extends FASTElement { tooltipBody.appendChild(yText); yText.classList.add('calloutContentY'); - pie(this.data.chartData).forEach(d => { - const path = document.createElementNS(svgNS, 'path'); - group.appendChild(path); - path.setAttribute('d', arc(d)); - path.setAttribute('fill', d.data.color); - path.setAttribute('data-id', d.data.legend); + pie(this.data.chartData).forEach(arcDatum => { + const arcGroup = document.createElementNS(SVG_NAMESPACE_URI, 'g'); + group.appendChild(arcGroup); + + const pathOutline = document.createElementNS(SVG_NAMESPACE_URI, 'path'); + arcGroup.appendChild(pathOutline); + pathOutline.classList.add('focusOutline'); + pathOutline.setAttribute('d', arc(arcDatum)!); + + const path = document.createElementNS(SVG_NAMESPACE_URI, 'path'); + arcGroup.appendChild(path); + path.classList.add('arc'); + path.setAttribute('d', arc(arcDatum)!); + path.setAttribute('fill', arcDatum.data.color!); + path.setAttribute('data-id', arcDatum.data.legend); path.setAttribute('tabindex', '0'); - path.setAttribute('aria-label', `${d.data.legend}, ${d.data.data}.`); + path.setAttribute('aria-label', `${arcDatum.data.legend}, ${arcDatum.data.data}.`); path.setAttribute('role', 'img'); + path.addEventListener('mouseover', event => { - if (this._selectedLegend !== '' && this._selectedLegend !== d.data.legend) { + if (this._selectedLegend !== '' && this._selectedLegend !== arcDatum.data.legend) { return; } - tooltipBody.style['borderColor'] = d.data.color; - legendText.textContent = d.data.legend; - yText.textContent = d.data.data; - yText.style['color'] = d.data.color; + tooltipBody.style['borderColor'] = arcDatum.data.color!; + legendText.textContent = arcDatum.data.legend; + yText.textContent = `${arcDatum.data.data}`; + yText.style['color'] = arcDatum.data.color!; tooltip.style['opacity'] = '1'; const bounds = rootDiv.getBoundingClientRect(); @@ -127,14 +144,14 @@ export class DonutChart extends FASTElement { tooltip.style['top'] = `${event.clientY - bounds.top - 85}px`; }); path.addEventListener('focus', event => { - if (this._selectedLegend !== '' && this._selectedLegend !== d.data.legend) { + if (this._selectedLegend !== '' && this._selectedLegend !== arcDatum.data.legend) { return; } - tooltipBody.style['borderColor'] = d.data.color; - legendText.textContent = d.data.legend; - yText.textContent = d.data.data; - yText.style['color'] = d.data.color; + tooltipBody.style['borderColor'] = arcDatum.data.color!; + legendText.textContent = arcDatum.data.legend; + yText.textContent = `${arcDatum.data.data}`; + yText.style['color'] = arcDatum.data.color!; tooltip.style['opacity'] = '1'; const rootBounds = rootDiv.getBoundingClientRect(); @@ -151,15 +168,25 @@ export class DonutChart extends FASTElement { tooltip.style['opacity'] = '0'; }); - const text = document.createElementNS(svgNS, 'text'); - group.appendChild(text); - text.classList.add('insideDonutString'); - text.setAttribute('y', '5'); - text.setAttribute('text-anchor', 'middle'); - text.setAttribute('dominant-baseline', 'middle'); - text.textContent = this.valueInsideDonut; + if (this.valueInsideDonut) { + const text = document.createElementNS(SVG_NAMESPACE_URI, 'text'); + group.appendChild(text); + text.classList.add('insideDonutString'); + text.setAttribute('x', '0'); + text.setAttribute('y', '0'); + text.setAttribute('text-anchor', 'middle'); + text.setAttribute('dominant-baseline', 'middle'); + text.textContent = this.valueInsideDonut; + const lineHeight = text.getBoundingClientRect().height; + wrapText(text, 2 * this.innerRadius); + const lines = text.getElementsByTagName('tspan'); + const start = -Math.trunc((lines.length - 1) / 2); + for (let i = 0; i < lines.length; i++) { + lines[i].setAttribute('dy', `${(start + i) * lineHeight}`); + } + } - const legends = this.data.chartData?.map(d => ({ title: d.legend, color: d.color })); + const legends = this.data.chartData.map(dataPoint => ({ title: dataPoint.legend, color: dataPoint.color! })); const legendContainer = document.createElement('div'); rootDiv.appendChild(legendContainer); @@ -167,29 +194,29 @@ export class DonutChart extends FASTElement { legendContainer.setAttribute('role', 'listbox'); legendContainer.setAttribute('aria-label', 'Legends'); - legends?.forEach((d, index) => { + legends.forEach((legendItem, index) => { const button = document.createElement('button'); legendContainer.appendChild(button); button.classList.add('legend'); button.setAttribute('role', 'option'); button.setAttribute('aria-setsize', `${legends.length}`); button.setAttribute('aria-posinset', `${index + 1}`); - button.setAttribute('aria-selected', `${this._selectedLegend === d.title}`); + // button.setAttribute('aria-selected', `${this._selectedLegend === legendItem.title}`); const legendRect = document.createElement('div'); button.appendChild(legendRect); legendRect.classList.add('legendRect'); - legendRect.style['backgroundColor'] = d.color; - legendRect.style['borderColor'] = d.color; + legendRect.style['backgroundColor'] = legendItem.color; + legendRect.style['borderColor'] = legendItem.color; const legendText = document.createElement('div'); button.appendChild(legendText); - legendText.textContent = d.title; + legendText.textContent = legendItem.title; legendText.classList.add('legendText'); }); - const buttons = legendContainer.getElementsByTagName('button'); - const arcs = group.getElementsByTagName('path'); + const buttons = legendContainer.getElementsByClassName('legend') as HTMLCollectionOf; + const arcs = group.getElementsByClassName('arc') as HTMLCollectionOf; for (let i = 0; i < buttons.length; i++) { buttons[i].addEventListener('mouseover', () => { @@ -205,17 +232,14 @@ export class DonutChart extends FASTElement { } } for (let j = 0; j < buttons.length; j++) { + const legendRect = (buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf)[0]; + const legendText = (buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf)[0]; + if (j !== i) { - const legendRect = (buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf)[0]; legendRect.style['backgroundColor'] = 'transparent'; - - const legendText = (buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf)[0]; legendText.style['opacity'] = '0.67'; } else { - const legendRect = (buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf)[0]; legendRect.style['backgroundColor'] = legends[j].color; - - const legendText = (buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf)[0]; legendText.style['opacity'] = '1'; } } @@ -249,17 +273,14 @@ export class DonutChart extends FASTElement { } } for (let j = 0; j < buttons.length; j++) { + const legendRect = (buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf)[0]; + const legendText = (buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf)[0]; + if (j !== i) { - const legendRect = (buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf)[0]; legendRect.style['backgroundColor'] = 'transparent'; - - const legendText = (buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf)[0]; legendText.style['opacity'] = '0.67'; } else { - const legendRect = (buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf)[0]; legendRect.style['backgroundColor'] = legends[j].color; - - const legendText = (buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf)[0]; legendText.style['opacity'] = '1'; } } @@ -305,25 +326,14 @@ export class DonutChart extends FASTElement { } } for (let j = 0; j < buttons.length; j++) { + const legendRect = (buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf)[0]; + const legendText = (buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf)[0]; + if (j !== i) { - const legendRect = ( - buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf - )[0]; legendRect.style['backgroundColor'] = 'transparent'; - - const legendText = ( - buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf - )[0]; legendText.style['opacity'] = '0.67'; } else { - const legendRect = ( - buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf - )[0]; legendRect.style['backgroundColor'] = legends[j].color; - - const legendText = ( - buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf - )[0]; legendText.style['opacity'] = '1'; } } diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts index b0d0b3cdca36f..8a2d75d0926f9 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts @@ -8,12 +8,12 @@ export interface ChartDataPoint { /** * Legend text for the datapoint in the chart */ - legend?: string; + legend: string; /** * data the datapoint in the chart */ - data?: number; + data: number; /** * total length of bar @@ -40,5 +40,5 @@ export interface ChartProps { /** * data for the points in the chart */ - chartData?: ChartDataPoint[]; + chartData: ChartDataPoint[]; } diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts index d2758685dec4d..ee21377fa6e20 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -1,7 +1,7 @@ import { attr, FASTElement } from '@microsoft/fast-element'; import { create as d3Create, select as d3Select } from 'd3-selection'; import { createTabster, getGroupper, getMover, getTabsterAttribute, TABSTER_ATTRIBUTE_NAME } from 'tabster'; -import { getDataConverter } from '../utils/chart-helpers.js'; +import { jsonConverter, validateChartPropsArray } from '../utils/chart-helpers.js'; import { ChartDataPoint, ChartProps, Variant } from './horizontalbarchart.options.js'; // During the page startup. @@ -39,7 +39,7 @@ export class HorizontalBarChart extends FASTElement { @attr public _isRTL: boolean = false; - @attr({ converter: getDataConverter('horizontal-bar-chart') }) + @attr({ converter: jsonConverter }) public data!: ChartProps[]; @attr @@ -58,6 +58,9 @@ export class HorizontalBarChart extends FASTElement { connectedCallback() { super.connectedCallback(); + + validateChartPropsArray(this.data, 'data'); + this.render(); } diff --git a/packages/web-components/src/utils/chart-helpers.ts b/packages/web-components/src/utils/chart-helpers.ts index 530ee35855b8e..8df72b6b5e140 100644 --- a/packages/web-components/src/utils/chart-helpers.ts +++ b/packages/web-components/src/utils/chart-helpers.ts @@ -2,65 +2,49 @@ import type { ValueConverter } from '@microsoft/fast-element'; import { Direction } from '@microsoft/fast-web-utilities'; import { getDirection } from './direction.js'; -export const getDataConverter = (chartType: string): ValueConverter => { - let validate: (obj: any) => void; - switch (chartType) { - case 'horizontal-bar-chart': - validate = validateChartPropsArray; - break; - case 'donut-chart': - default: - validate = validateChartProps; - } - - return { - toView(value: any): string { - return JSON.stringify(value); - }, - fromView(value: string): any { - const obj = JSON.parse(value); - validate(obj); - return obj; - }, - }; +export const jsonConverter: ValueConverter = { + toView(value: any): string { + return JSON.stringify(value); + }, + fromView(value: string): any { + return JSON.parse(value); + }, }; type Dict = { [key: string]: any }; -const validateChartPropsArray = (obj: any) => { - if (obj === null || typeof obj !== 'object' || !Array.isArray(obj)) { - throw TypeError('Invalid data: Expected an object.'); +export const validateChartPropsArray = (obj: any, objName: string) => { + if (!Array.isArray(obj)) { + throw TypeError(`Invalid ${objName}: Expected an array.`); } obj.forEach((item, idx) => { - validateChartProps(item); + validateChartProps(item, `${objName}[${idx}]`); }); }; -const validateChartProps = (obj: any) => { +export const validateChartProps = (obj: any, objName: string) => { if (obj === null || typeof obj !== 'object' || Array.isArray(obj)) { - throw TypeError('Invalid data: Expected an object.'); + throw TypeError(`Invalid ${objName}: Expected an object.`); } - if ((obj as Dict).hasOwnProperty('chartData')) { - if (!Array.isArray(obj.chartData)) { - throw TypeError('Invalid data.chartData: Expected an array.'); - } + if (!Array.isArray(obj.chartData)) { + throw TypeError(`Invalid ${objName}.chartData: Expected an array.`); + } - (obj.chartData as any[]).forEach((item, idx) => { - if (typeof item !== 'object' || Array.isArray(item) || item === null) { - throw TypeError(`Invalid data.chartData[${idx}]: Expected an object.`); - } + (obj.chartData as any[]).forEach((item, idx) => { + if (item === null || typeof item !== 'object' || Array.isArray(item)) { + throw TypeError(`Invalid ${objName}.chartData[${idx}]: Expected an object.`); + } - if ((item as Dict).hasOwnProperty('legend') && typeof item.legend !== 'string') { - throw TypeError(`Invalid data.chartData[${idx}].legend: Expected a string.`); - } + if (typeof item.legend !== 'string') { + throw TypeError(`Invalid ${objName}.chartData[${idx}].legend: Expected a string.`); + } - if ((item as Dict).hasOwnProperty('data') && typeof item.data !== 'number') { - throw TypeError(`Invalid data.chartData[${idx}].data: Expected a number.`); - } - }); - } + if (typeof item.data !== 'number') { + throw TypeError(`Invalid ${objName}.chartData[${idx}].data: Expected a number.`); + } + }); }; export const DataVizPalette = { @@ -168,3 +152,42 @@ export const getColorFromToken = (token: string, isDarkTheme: boolean = false): export const getRTL = (rootNode: HTMLElement): boolean => { return getDirection(rootNode) === Direction.rtl; }; + +export const SVG_NAMESPACE_URI = 'http://www.w3.org/2000/svg'; + +export const wrapText = (text: SVGTextElement, width: number) => { + if (!text.textContent) { + return; + } + + const words = text.textContent.split(/\s+/).reverse(); + let word: string | undefined; + let line: string[] = []; + let lineNumber = 0; + const lineHeight = text.getBoundingClientRect().height; + const y = text.getAttribute('y') || '0'; + + text.textContent = null; + + let tspan = document.createElementNS(SVG_NAMESPACE_URI, 'tspan'); + text.appendChild(tspan); + tspan.setAttribute('x', '0'); + tspan.setAttribute('y', y); + tspan.setAttribute('dy', `${lineNumber++ * lineHeight}`); + + while ((word = words.pop())) { + line.push(word); + tspan.textContent = line.join(' ') + ' '; + if (tspan.getComputedTextLength() > width && line.length > 1) { + line.pop(); + tspan.textContent = line.join(' ') + ' '; + line = [word]; + tspan = document.createElementNS(SVG_NAMESPACE_URI, 'tspan'); + text.appendChild(tspan); + tspan.setAttribute('x', '0'); + tspan.setAttribute('y', y); + tspan.setAttribute('dy', `${lineNumber++ * lineHeight}`); + tspan.textContent = word; + } + } +}; From 7d7a3c89fd6910c83d58e62e0f28148cbd9b95f1 Mon Sep 17 00:00:00 2001 From: "Atishay Jain (atisjai)" <98592573+AtishayMsft@users.noreply.github.com> Date: Sun, 27 Oct 2024 08:11:10 +0000 Subject: [PATCH 21/60] Fix error --- .../horizontalbarchart/horizontalbarchart.stories.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts index df5e3b8a31bac..cf1b3403fb86f 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts @@ -2,7 +2,7 @@ import { html } from '@microsoft/fast-element'; import type { Meta, Story, StoryArgs } from '../helpers.stories.js'; import { renderComponent } from '../helpers.stories.js'; import { HorizontalBarChart as FluentHorizontalBarChart } from './horizontalbarchart.js'; -import { IChartDataPoint, IChartProps } from './horizontalbarchart.options.js'; +import { ChartDataPoint, ChartProps } from './horizontalbarchart.options.js'; const singleBarHBCData = [ { @@ -186,7 +186,7 @@ const singleBarNMVariantData = [ }, ]; -const chartPoints1: IChartDataPoint[] = [ +const chartPoints1: ChartDataPoint[] = [ { legend: 'Debit card numbers (EU and USA)', data: 40, @@ -214,7 +214,7 @@ const chartPoints1: IChartDataPoint[] = [ }, ]; -const chartPoints2: IChartDataPoint[] = [ +const chartPoints2: ChartDataPoint[] = [ { legend: 'Debit card numbers (EU and USA)', data: 40, @@ -242,7 +242,7 @@ const chartPoints2: IChartDataPoint[] = [ }, ]; -const chartPoints3: IChartDataPoint[] = [ +const chartPoints3: ChartDataPoint[] = [ { legend: 'Phone Numbers', data: 40, @@ -255,7 +255,7 @@ const chartPoints3: IChartDataPoint[] = [ }, ]; -const data: IChartProps[] = [ +const data: ChartProps[] = [ { chartTitle: 'Monitored First', chartData: chartPoints1, From b50e4ba55d7edb53aa04d20c4f19b2119de200d5 Mon Sep 17 00:00:00 2001 From: "Atishay Jain (atisjai)" <98592573+AtishayMsft@users.noreply.github.com> Date: Sun, 27 Oct 2024 11:05:04 +0000 Subject: [PATCH 22/60] Move container div to the template --- .../horizontalbarchart.template.ts | 7 +- .../horizontalbarchart/horizontalbarchart.ts | 157 +++++++++--------- 2 files changed, 86 insertions(+), 78 deletions(-) diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts index 5f63f38e65251..38b530baabf67 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts @@ -13,7 +13,12 @@ getGroupper(tabsterCore); * @public */ export function horizontalbarchartTemplate(): ElementViewTemplate { - return html``; + return html` `; } /** diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts index ee21377fa6e20..e08f8e0df413d 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -32,6 +32,9 @@ export class HorizontalBarChart extends FASTElement { @attr public variant: Variant = Variant.AbsoluteScale; + public chartContainer!: HTMLDivElement; + + public legendContainer!: HTMLDivElement; /** * @public * The type of the dialog modal @@ -60,83 +63,20 @@ export class HorizontalBarChart extends FASTElement { super.connectedCallback(); validateChartPropsArray(this.data, 'data'); - - this.render(); - } - - private createSingleChartBars(singleChartData: ChartProps, index: number, nodes: any) { - const singleChartBars = this._createBarsAndLegends(singleChartData!, index); - - // create a div element. Loop through chart bars and add to the div as its children - const divEle = d3Select(nodes[index]) - .attr('key', index) - .attr('id', `_MSBC_bar-${index}`) - .node()! - .appendChild(singleChartBars.node()); } - private hydrateLegends() { - // Create a map to store unique legends - const uniqueLegendsMap = new Map(); - - // Iterate through all chart points and populate the map - for (const dataSeries of this.data) { - for (const point of dataSeries.chartData!) { - if ((point as any).placeholder === true) { - continue; - } - // Check if the legend is already in the map - if (!uniqueLegendsMap.has(point.legend)) { - uniqueLegendsMap.set(point.legend, { - legend: point.legend, - data: point.data, - color: point.color, - }); - } - } + private initializeData() { + if (this.variant === Variant.SingleBar) { + this._hydrateData(); } - - // Convert the map values back to an array - this.uniqueLegends = Array.from(uniqueLegendsMap.values()); - } - - private _hydrateData() { - this.data!.forEach(({ chartTitle, chartData }) => { - if (chartData!.length === 1) { - const pointData = chartData![0]; - const newEntry = { - legend: '', - data: pointData.total! - pointData.data! > 0 ? pointData.total! - pointData.data! : 0, - y: pointData.total!, - color: '#edebe9', - placeholder: true, - }; - chartData!.push(newEntry); - } - }); + this.hydrateLegends(); } - private calculateBarSpacing(): number { - //todo: replace 650 with width of svg or div. - const svgWidth = 650; - let barSpacing = 0; - const MARGIN_WIDTH_IN_PX = 3; - if (svgWidth) { - const currentBarSpacing = (MARGIN_WIDTH_IN_PX / svgWidth) * 100; - barSpacing = currentBarSpacing; - } - return barSpacing; - } + public renderChart() { + this.initializeData(); - render() { - // Array to hold references to the buttons - if (this.variant === Variant.SingleBar) { - this._hydrateData(); - } - const legendButtonRefs: any = []; - const div = d3Select(this.shadowRoot as any).append('div'); - div - .append('div') + const chartContainerDiv = d3Select(this.chartContainer); + chartContainerDiv .selectAll('div') .data(this.data!) .enter() @@ -152,14 +92,13 @@ export class HorizontalBarChart extends FASTElement { nodes[i].setAttribute(TABSTER_ATTRIBUTE_NAME, attributes[TABSTER_ATTRIBUTE_NAME]); } }); + } - this.hydrateLegends(); - const legendContainer = document.createElement('div'); - div.node()!.appendChild(legendContainer); - legendContainer.classList.add('legendcontainer'); + public renderLegends() { + const legendButtonRefs: any = []; this.uniqueLegends?.forEach((d, index) => { const button = document.createElement('button'); - legendContainer.appendChild(button); + this.legendContainer.appendChild(button); button.classList.add('legend'); // Store a reference to the button legendButtonRefs[index] = button; @@ -176,7 +115,7 @@ export class HorizontalBarChart extends FASTElement { legendText.classList.add('legendText'); }); - const bars = this.shadowRoot?.querySelectorAll('.bar'); + const bars = this.chartContainer.querySelectorAll('.bar'); for (let i = 0; i < legendButtonRefs.length; i++) { legendButtonRefs[i].addEventListener('mouseover', () => { @@ -225,6 +164,70 @@ export class HorizontalBarChart extends FASTElement { } } + private createSingleChartBars(singleChartData: ChartProps, index: number, nodes: any) { + const singleChartBars = this._createBarsAndLegends(singleChartData!, index); + + // create a div element. Loop through chart bars and add to the div as its children + const divEle = d3Select(nodes[index]) + .attr('key', index) + .attr('id', `_MSBC_bar-${index}`) + .node()! + .appendChild(singleChartBars.node()); + } + + private hydrateLegends() { + // Create a map to store unique legends + const uniqueLegendsMap = new Map(); + + // Iterate through all chart points and populate the map + for (const dataSeries of this.data) { + for (const point of dataSeries.chartData!) { + if ((point as any).placeholder === true) { + continue; + } + // Check if the legend is already in the map + if (!uniqueLegendsMap.has(point.legend)) { + uniqueLegendsMap.set(point.legend, { + legend: point.legend, + data: point.data, + color: point.color, + }); + } + } + } + + // Convert the map values back to an array + this.uniqueLegends = Array.from(uniqueLegendsMap.values()); + } + + private _hydrateData() { + this.data!.forEach(({ chartTitle, chartData }) => { + if (chartData!.length === 1) { + const pointData = chartData![0]; + const newEntry = { + legend: '', + data: pointData.total! - pointData.data! > 0 ? pointData.total! - pointData.data! : 0, + y: pointData.total!, + color: '#edebe9', + placeholder: true, + }; + chartData!.push(newEntry); + } + }); + } + + private calculateBarSpacing(): number { + //todo: replace 650 with width of svg or div. + const svgWidth = 650; + let barSpacing = 0; + const MARGIN_WIDTH_IN_PX = 3; + if (svgWidth) { + const currentBarSpacing = (MARGIN_WIDTH_IN_PX / svgWidth) * 100; + barSpacing = currentBarSpacing; + } + return barSpacing; + } + public _createBarsAndLegends(data: ChartProps, barNo?: number) { const _isRTL = this._isRTL; const _computeLongestBarTotalValue = () => { From ee2aacb993cacfa672ca85090c7921e0cfb95645 Mon Sep 17 00:00:00 2001 From: "Atishay Jain (atisjai)" <98592573+AtishayMsft@users.noreply.github.com> Date: Mon, 28 Oct 2024 09:37:48 +0000 Subject: [PATCH 23/60] Remove unnecessary calls --- .../src/horizontalbarchart/horizontalbarchart.template.ts | 4 ++-- .../src/horizontalbarchart/horizontalbarchart.ts | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts index 38b530baabf67..6286a791a738d 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts @@ -15,8 +15,8 @@ getGroupper(tabsterCore); export function horizontalbarchartTemplate(): ElementViewTemplate { return html` `; } diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts index e08f8e0df413d..a2080648fdc73 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -63,6 +63,10 @@ export class HorizontalBarChart extends FASTElement { super.connectedCallback(); validateChartPropsArray(this.data, 'data'); + + this.initializeData(); + this.renderChart(); + this.renderLegends(); } private initializeData() { @@ -73,8 +77,6 @@ export class HorizontalBarChart extends FASTElement { } public renderChart() { - this.initializeData(); - const chartContainerDiv = d3Select(this.chartContainer); chartContainerDiv .selectAll('div') From 546029d92217c4924443f669720d15ad3b451563 Mon Sep 17 00:00:00 2001 From: krkshitij <110246001+krkshitij@users.noreply.github.com> Date: Mon, 28 Oct 2024 19:18:27 +0530 Subject: [PATCH 24/60] Add event listeners to legend buttons (#33150) --- .../horizontalbarchart/horizontalbarchart.ts | 152 +++++++++++++++--- 1 file changed, 127 insertions(+), 25 deletions(-) diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts index a2080648fdc73..b00084f93cecb 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -52,6 +52,7 @@ export class HorizontalBarChart extends FASTElement { public hideRatio = false; private barHeight: number = 12; + private _selectedLegend: string = ''; constructor() { super(); @@ -121,45 +122,146 @@ export class HorizontalBarChart extends FASTElement { for (let i = 0; i < legendButtonRefs.length; i++) { legendButtonRefs[i].addEventListener('mouseover', () => { - for (let j = 0; j < bars!.length; j++) { - if (bars![j].getAttribute('barinfo') !== legendButtonRefs[i].textContent) { - bars![j].style['opacity'] = '0.1'; + if (this._selectedLegend !== '') { + return; + } + + for (let j = 0; j < bars.length; j++) { + if (bars[j].getAttribute('barinfo') !== this.uniqueLegends[i].legend) { + bars[j].style['opacity'] = '0.1'; + } else { + bars[j].style['opacity'] = '1'; } } for (let j = 0; j < legendButtonRefs.length; j++) { + const legendRect = ( + legendButtonRefs[j].getElementsByClassName('legendRect') as HTMLCollectionOf + )[0]; + const legendText = ( + legendButtonRefs[j].getElementsByClassName('legendText') as HTMLCollectionOf + )[0]; + if (j !== i) { - const legendRect = legendButtonRefs[j].getElementsByClassName('legendRect')[0]; - if (legendRect) { - legendRect.style['backgroundColor'] = 'transparent'; - } else { - console.warn(`legendRect not found for button index ${j}`); - } - const legendText = legendButtonRefs[j].getElementsByClassName('legendText')[0]; - if (legendText) { - legendText.style['opacity'] = '0.67'; - } else { - console.warn(`legendText not found for button index ${j}`); - } + legendRect.style['backgroundColor'] = 'transparent'; + legendText.style['opacity'] = '0.67'; + } else { + legendRect.style['backgroundColor'] = this.uniqueLegends[j].color!; + legendText.style['opacity'] = '1'; } } }); legendButtonRefs[i].addEventListener('mouseout', () => { - for (let j = 0; j < bars!.length; j++) { - bars![j].style['opacity'] = '1'; + if (this._selectedLegend !== '') { + return; + } + + for (let j = 0; j < bars.length; j++) { + bars[j].style['opacity'] = '1'; } for (let j = 0; j < legendButtonRefs.length; j++) { - const legendRect = legendButtonRefs[j].getElementsByClassName('legendRect')[0]; - if (legendRect) { - legendRect.style['backgroundColor'] = this.uniqueLegends[j].color; + const legendRect = ( + legendButtonRefs[j].getElementsByClassName('legendRect') as HTMLCollectionOf + )[0]; + legendRect.style['backgroundColor'] = this.uniqueLegends[j].color!; + + const legendText = ( + legendButtonRefs[j].getElementsByClassName('legendText') as HTMLCollectionOf + )[0]; + legendText.style['opacity'] = '1'; + } + }); + legendButtonRefs[i].addEventListener('focus', () => { + if (this._selectedLegend !== '') { + return; + } + + for (let j = 0; j < bars.length; j++) { + if (bars[j].getAttribute('barinfo') !== this.uniqueLegends[i].legend) { + bars[j].style['opacity'] = '0.1'; } else { - console.warn(`legendRect not found for button index ${j}`); + bars[j].style['opacity'] = '1'; } + } + for (let j = 0; j < legendButtonRefs.length; j++) { + const legendRect = ( + legendButtonRefs[j].getElementsByClassName('legendRect') as HTMLCollectionOf + )[0]; + const legendText = ( + legendButtonRefs[j].getElementsByClassName('legendText') as HTMLCollectionOf + )[0]; - const legendText = legendButtonRefs[j].getElementsByClassName('legendText')[0]; - if (legendText) { - legendText.style['opacity'] = '1'; + if (j !== i) { + legendRect.style['backgroundColor'] = 'transparent'; + legendText.style['opacity'] = '0.67'; } else { - console.warn(`legendText not found for button index ${j}`); + legendRect.style['backgroundColor'] = this.uniqueLegends[j].color!; + legendText.style['opacity'] = '1'; + } + } + }); + legendButtonRefs[i].addEventListener('blur', () => { + if (this._selectedLegend !== '') { + return; + } + + for (let j = 0; j < bars.length; j++) { + bars[j].style['opacity'] = '1'; + } + for (let j = 0; j < legendButtonRefs.length; j++) { + const legendRect = ( + legendButtonRefs[j].getElementsByClassName('legendRect') as HTMLCollectionOf + )[0]; + legendRect.style['backgroundColor'] = this.uniqueLegends[j].color!; + + const legendText = ( + legendButtonRefs[j].getElementsByClassName('legendText') as HTMLCollectionOf + )[0]; + legendText.style['opacity'] = '1'; + } + }); + legendButtonRefs[i].addEventListener('click', () => { + if (this._selectedLegend === this.uniqueLegends[i].legend) { + this._selectedLegend = ''; + + for (let j = 0; j < bars.length; j++) { + bars[j].style['opacity'] = '1'; + } + for (let j = 0; j < legendButtonRefs.length; j++) { + const legendRect = ( + legendButtonRefs[j].getElementsByClassName('legendRect') as HTMLCollectionOf + )[0]; + legendRect.style['backgroundColor'] = this.uniqueLegends[j].color!; + + const legendText = ( + legendButtonRefs[j].getElementsByClassName('legendText') as HTMLCollectionOf + )[0]; + legendText.style['opacity'] = '1'; + } + } else { + this._selectedLegend = this.uniqueLegends[i].legend; + + for (let j = 0; j < bars.length; j++) { + if (bars[j].getAttribute('barinfo') !== this.uniqueLegends[i].legend) { + bars[j].style['opacity'] = '0.1'; + } else { + bars[j].style['opacity'] = '1'; + } + } + for (let j = 0; j < legendButtonRefs.length; j++) { + const legendRect = ( + legendButtonRefs[j].getElementsByClassName('legendRect') as HTMLCollectionOf + )[0]; + const legendText = ( + legendButtonRefs[j].getElementsByClassName('legendText') as HTMLCollectionOf + )[0]; + + if (j !== i) { + legendRect.style['backgroundColor'] = 'transparent'; + legendText.style['opacity'] = '0.67'; + } else { + legendRect.style['backgroundColor'] = this.uniqueLegends[j].color!; + legendText.style['opacity'] = '1'; + } } } }); From 475f33803d4c1c1e4424a194bf7aa2054c29bb6d Mon Sep 17 00:00:00 2001 From: krkshitij <110246001+krkshitij@users.noreply.github.com> Date: Mon, 28 Oct 2024 21:20:05 +0530 Subject: [PATCH 25/60] Enable gradient in horizontalbarchart (#33151) --- .../horizontalbarchart.options.ts | 2 ++ .../horizontalbarchart/horizontalbarchart.ts | 29 ++++++++++++++++--- 2 files changed, 27 insertions(+), 4 deletions(-) diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts index 8a2d75d0926f9..7e97a24e20f07 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts @@ -29,6 +29,8 @@ export interface ChartDataPoint { * Color for the legend in the chart. If not provided, it will fallback on the default color palette. */ color?: string; + + gradient?: [string, string]; } export interface ChartProps { diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts index b00084f93cecb..bf808065463f1 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -1,7 +1,7 @@ import { attr, FASTElement } from '@microsoft/fast-element'; import { create as d3Create, select as d3Select } from 'd3-selection'; import { createTabster, getGroupper, getMover, getTabsterAttribute, TABSTER_ATTRIBUTE_NAME } from 'tabster'; -import { jsonConverter, validateChartPropsArray } from '../utils/chart-helpers.js'; +import { jsonConverter, SVG_NAMESPACE_URI, validateChartPropsArray } from '../utils/chart-helpers.js'; import { ChartDataPoint, ChartProps, Variant } from './horizontalbarchart.options.js'; // During the page startup. @@ -294,7 +294,7 @@ export class HorizontalBarChart extends FASTElement { uniqueLegendsMap.set(point.legend, { legend: point.legend, data: point.data, - color: point.color, + color: point.gradient ? point.gradient[0] : point.color, }); } } @@ -424,13 +424,34 @@ export class HorizontalBarChart extends FASTElement { .attr('role', 'img') .attr('aria-label', pointData); + let gradientId = ''; + if (point.gradient) { + const defs = document.createElementNS(SVG_NAMESPACE_URI, 'defs'); + gEle.node()!.appendChild(defs); + + const linearGradient = document.createElementNS(SVG_NAMESPACE_URI, 'linearGradient'); + defs.appendChild(linearGradient); + gradientId = `gradient-${barNo}-${index}`; + linearGradient.setAttribute('id', gradientId); + + const stop1 = document.createElementNS(SVG_NAMESPACE_URI, 'stop'); + linearGradient.appendChild(stop1); + stop1.setAttribute('offset', '0%'); + stop1.setAttribute('stop-color', point.gradient[0]); + + const stop2 = document.createElementNS(SVG_NAMESPACE_URI, 'stop'); + linearGradient.appendChild(stop2); + stop2.setAttribute('offset', '100%'); + stop2.setAttribute('stop-color', point.gradient[1]); + } + gEle .append('rect') .attr('key', index) .attr('id', `${barNo}-${index}`) .attr('barinfo', `${point.legend}`) .attr('class', 'bar') - .attr('style', `fill:${point.color!}`) + .attr('style', point.gradient ? `fill:url(#${gradientId})` : `fill:${point.color!}`) .attr( 'x', `${ @@ -489,7 +510,7 @@ export class HorizontalBarChart extends FASTElement { const tooltipHTML = `
${d.legend}
-
${d.data}
+
${d.data}
`; tooltip = containerDiv From d0551b894a095905f288756bab610c68f77127d5 Mon Sep 17 00:00:00 2001 From: "Atishay Jain (atisjai)" <98592573+AtishayMsft@users.noreply.github.com> Date: Mon, 28 Oct 2024 15:54:42 +0000 Subject: [PATCH 26/60] Update single bar story to use gradient --- .../src/horizontalbarchart/horizontalbarchart.stories.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts index cf1b3403fb86f..c072d5266be0a 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts @@ -278,7 +278,7 @@ const singlePointData = [ legend: 'one', data: 1543, total: 15000, - color: '#637cef', + gradient: ['#637cef', '#e3008c'], }, ], }, From c14c0486e5c6088a1855454d65783bc792e4d398 Mon Sep 17 00:00:00 2001 From: "Atishay Jain (atisjai)" <98592573+AtishayMsft@users.noreply.github.com> Date: Mon, 28 Oct 2024 16:00:19 +0000 Subject: [PATCH 27/60] Resolve review comments --- packages/web-components/src/donut-chart/donut-chart.styles.ts | 4 ---- .../src/horizontalbarchart/horizontalbarchart.styles.ts | 2 +- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/packages/web-components/src/donut-chart/donut-chart.styles.ts b/packages/web-components/src/donut-chart/donut-chart.styles.ts index acf27a21663f6..3b81694474d90 100644 --- a/packages/web-components/src/donut-chart/donut-chart.styles.ts +++ b/packages/web-components/src/donut-chart/donut-chart.styles.ts @@ -69,12 +69,10 @@ export const styles = css` .legendContainer { padding-top: ${spacingVerticalL}; - white-space: nowrap; width: 100%; align-items: center; margin: -8px 0 0 -8px; - flex-wrap: wrap; display: flex; } @@ -107,11 +105,9 @@ export const styles = css` padding: ${spacingVerticalMNudge} ${spacingHorizontalL}; background-color: ${colorNeutralBackground1}; background-blend-mode: normal, luminosity; - border-radius: ${borderRadiusMedium}; border: 1px solid ${colorTransparentStroke}; filter: drop-shadow(0 0 2px ${colorNeutralShadowAmbient}) drop-shadow(0 8px 16px ${colorNeutralShadowKey}); - position: absolute; opacity: 0; z-index: 1; diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts index 9c306bd8662e3..bc3147246b8f1 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts @@ -41,7 +41,7 @@ export const styles: ElementStyles = css` overflow: hidden; padding: ${spacingVerticalMNudge} ${spacingHorizontalL}; backgroundcolor: ${colorNeutralBackground1}; - backgroundblendmode: normal, luminosity; + background-blend-mode: normal, luminosity; text-align: center; background: ${colorNeutralBackground1}; box-shadow: ${shadow4}; From 415c165a00643c509a5a85d7eba11c7b3dd67a87 Mon Sep 17 00:00:00 2001 From: krkshitij <110246001+krkshitij@users.noreply.github.com> Date: Wed, 30 Oct 2024 17:41:55 +0530 Subject: [PATCH 28/60] Refactor donut-chart web component (#33149) --- .../src/donut-chart/donut-chart.options.ts | 5 + .../src/donut-chart/donut-chart.styles.ts | 13 +- .../src/donut-chart/donut-chart.template.ts | 55 ++- .../src/donut-chart/donut-chart.ts | 312 ++++++------------ 4 files changed, 166 insertions(+), 219 deletions(-) diff --git a/packages/web-components/src/donut-chart/donut-chart.options.ts b/packages/web-components/src/donut-chart/donut-chart.options.ts index 00fbde03b681e..75f288ca6bd9e 100644 --- a/packages/web-components/src/donut-chart/donut-chart.options.ts +++ b/packages/web-components/src/donut-chart/donut-chart.options.ts @@ -38,3 +38,8 @@ export interface ChartProps { */ chartData: ChartDataPoint[]; } + +export type Legend = { + title: string; + color: string; +}; diff --git a/packages/web-components/src/donut-chart/donut-chart.styles.ts b/packages/web-components/src/donut-chart/donut-chart.styles.ts index 3b81694474d90..f16502fbfa7ad 100644 --- a/packages/web-components/src/donut-chart/donut-chart.styles.ts +++ b/packages/web-components/src/donut-chart/donut-chart.styles.ts @@ -47,6 +47,10 @@ export const styles = css` display: block; } + .arc.inactive { + opacity: 0.1; + } + .arc:focus { outline: none; stroke-width: 1px; @@ -99,6 +103,14 @@ export const styles = css` color: ${colorNeutralForeground1}; } + .legend.inactive .legendRect { + background-color: transparent !important; + } + + .legend.inactive .legendText { + opacity: 0.67; + } + .calloutContentRoot { display: grid; overflow: hidden; @@ -109,7 +121,6 @@ export const styles = css` border: 1px solid ${colorTransparentStroke}; filter: drop-shadow(0 0 2px ${colorNeutralShadowAmbient}) drop-shadow(0 8px 16px ${colorNeutralShadowKey}); position: absolute; - opacity: 0; z-index: 1; pointer-events: none; } diff --git a/packages/web-components/src/donut-chart/donut-chart.template.ts b/packages/web-components/src/donut-chart/donut-chart.template.ts index 988466df8fdc3..19b65040fc3c8 100644 --- a/packages/web-components/src/donut-chart/donut-chart.template.ts +++ b/packages/web-components/src/donut-chart/donut-chart.template.ts @@ -1,5 +1,6 @@ -import { ElementViewTemplate, html, ref, slotted } from '@microsoft/fast-element'; +import { children, ElementViewTemplate, html, ref, repeat, when } from '@microsoft/fast-element'; import type { DonutChart } from './donut-chart.js'; +import { Legend } from './donut-chart.options.js'; /** * Generates a template for the DonutChart component. @@ -7,7 +8,57 @@ import type { DonutChart } from './donut-chart.js'; * @public */ export function donutChartTemplate(): ElementViewTemplate { - return html``; + return html` +
+
+ + + +
+ ${when( + x => !x.hideLegends, + html` +
+ ${repeat( + x => x.legends, + html` `, + )} +
+ `, + )} + ${when( + x => !x.hideTooltip && x.tooltipProps.isVisible, + html` +
+
+
${x => x.tooltipProps.legend}
+
+ ${x => x.tooltipProps.yValue} +
+
+
+ `, + )} +
+ `; } /** diff --git a/packages/web-components/src/donut-chart/donut-chart.ts b/packages/web-components/src/donut-chart/donut-chart.ts index 7ef3e6fe0fe34..7e5cb5be6b778 100644 --- a/packages/web-components/src/donut-chart/donut-chart.ts +++ b/packages/web-components/src/donut-chart/donut-chart.ts @@ -1,4 +1,4 @@ -import { attr, FASTElement, nullableNumberConverter } from '@microsoft/fast-element'; +import { attr, FASTElement, nullableNumberConverter, observable } from '@microsoft/fast-element'; import { arc as d3Arc, pie as d3Pie, PieArcDatum } from 'd3-shape'; import { createTabster, getMover, getTabsterAttribute, MoverDirections, TABSTER_ATTRIBUTE_NAME } from 'tabster'; import { @@ -9,7 +9,7 @@ import { validateChartProps, wrapText, } from '../utils/chart-helpers.js'; -import { ChartDataPoint, ChartProps } from './donut-chart.options.js'; +import { ChartDataPoint, ChartProps, Legend } from './donut-chart.options.js'; const tabsterCore = createTabster(window); getMover(tabsterCore); @@ -36,13 +36,30 @@ export class DonutChart extends FASTElement { @attr({ attribute: 'value-inside-donut' }) public valueInsideDonut?: string; - private _selectedLegend: string = ''; + @observable + public legends: Legend[] = []; - constructor() { - super(); - } + @observable + public activeLegend: string = ''; + + @observable + public isLegendSelected: boolean = false; + + @observable + public tooltipProps = { + isVisible: false, + legend: '', + yValue: '', + color: '', + xPos: 0, + yPos: 0, + }; - private bindEvents() {} + public rootDiv!: HTMLDivElement; + public chartWrapper!: HTMLDivElement; + public group!: SVGGElement; + + private _arcs: SVGPathElement[] = []; connectedCallback() { super.connectedCallback(); @@ -57,35 +74,19 @@ export class DonutChart extends FASTElement { } }); - this.render(); - } - - render() { - const rootDiv = document.createElement('div'); - this.shadowRoot?.appendChild(rootDiv); - rootDiv.classList.add('root'); + this.legends = this.getLegends(); - const chartWrapper = document.createElement('div'); - rootDiv.appendChild(chartWrapper); + this._render(); + } + private _render = () => { const tabsterAttribute = getTabsterAttribute({ mover: { direction: MoverDirections.Horizontal, tabbable: true }, }); if (tabsterAttribute[TABSTER_ATTRIBUTE_NAME]) { - chartWrapper.setAttribute(TABSTER_ATTRIBUTE_NAME, tabsterAttribute[TABSTER_ATTRIBUTE_NAME]); + this.chartWrapper.setAttribute(TABSTER_ATTRIBUTE_NAME, tabsterAttribute[TABSTER_ATTRIBUTE_NAME]); } - const svg = document.createElementNS(SVG_NAMESPACE_URI, 'svg'); - chartWrapper.appendChild(svg); - svg.setAttribute('width', `${this.width}`); - svg.setAttribute('height', `${this.height}`); - this.data.chartTitle && svg.setAttribute('aria-label', this.data.chartTitle); - svg.classList.add('chart'); - - const group = document.createElementNS(SVG_NAMESPACE_URI, 'g'); - svg.appendChild(group); - group.setAttribute('transform', `translate(${this.width / 2}, ${this.height / 2})`); - const pie = d3Pie() .value(d => d.data) .padAngle(0.02); @@ -93,25 +94,9 @@ export class DonutChart extends FASTElement { .innerRadius(this.innerRadius) .outerRadius((Math.min(this.height, this.width) - 20) / 2); - const tooltip = document.createElement('div'); - rootDiv.appendChild(tooltip); - tooltip.classList.add('calloutContentRoot'); - - const tooltipBody = document.createElement('div'); - tooltip.appendChild(tooltipBody); - tooltipBody.classList.add('calloutBlockContainer'); - - const legendText = document.createElement('div'); - tooltipBody.appendChild(legendText); - legendText.classList.add('calloutLegendText'); - - const yText = document.createElement('div'); - tooltipBody.appendChild(yText); - yText.classList.add('calloutContentY'); - pie(this.data.chartData).forEach(arcDatum => { const arcGroup = document.createElementNS(SVG_NAMESPACE_URI, 'g'); - group.appendChild(arcGroup); + this.group.appendChild(arcGroup); const pathOutline = document.createElementNS(SVG_NAMESPACE_URI, 'path'); arcGroup.appendChild(pathOutline); @@ -120,6 +105,7 @@ export class DonutChart extends FASTElement { const path = document.createElementNS(SVG_NAMESPACE_URI, 'path'); arcGroup.appendChild(path); + this._arcs.push(path); path.classList.add('arc'); path.setAttribute('d', arc(arcDatum)!); path.setAttribute('fill', arcDatum.data.color!); @@ -129,48 +115,50 @@ export class DonutChart extends FASTElement { path.setAttribute('role', 'img'); path.addEventListener('mouseover', event => { - if (this._selectedLegend !== '' && this._selectedLegend !== arcDatum.data.legend) { + if (this.activeLegend !== '' && this.activeLegend !== arcDatum.data.legend) { return; } - tooltipBody.style['borderColor'] = arcDatum.data.color!; - legendText.textContent = arcDatum.data.legend; - yText.textContent = `${arcDatum.data.data}`; - yText.style['color'] = arcDatum.data.color!; - tooltip.style['opacity'] = '1'; + const bounds = this.rootDiv.getBoundingClientRect(); - const bounds = rootDiv.getBoundingClientRect(); - tooltip.style['left'] = `${event.clientX - bounds.left}px`; - tooltip.style['top'] = `${event.clientY - bounds.top - 85}px`; + this.tooltipProps = { + isVisible: true, + legend: arcDatum.data.legend, + yValue: `${arcDatum.data.data}`, + color: arcDatum.data.color!, + xPos: event.clientX - bounds.left, + yPos: event.clientY - bounds.top - 85, + }; }); path.addEventListener('focus', event => { - if (this._selectedLegend !== '' && this._selectedLegend !== arcDatum.data.legend) { + if (this.activeLegend !== '' && this.activeLegend !== arcDatum.data.legend) { return; } - tooltipBody.style['borderColor'] = arcDatum.data.color!; - legendText.textContent = arcDatum.data.legend; - yText.textContent = `${arcDatum.data.data}`; - yText.style['color'] = arcDatum.data.color!; - tooltip.style['opacity'] = '1'; - - const rootBounds = rootDiv.getBoundingClientRect(); + const rootBounds = this.rootDiv.getBoundingClientRect(); const arcBounds = path.getBoundingClientRect(); - tooltip.style['left'] = `${arcBounds.left + arcBounds.width / 2 - rootBounds.left}px`; - tooltip.style['top'] = `${arcBounds.top - rootBounds.top - 85}px`; + + this.tooltipProps = { + isVisible: true, + legend: arcDatum.data.legend, + yValue: `${arcDatum.data.data}`, + color: arcDatum.data.color!, + xPos: arcBounds.left + arcBounds.width / 2 - rootBounds.left, + yPos: arcBounds.top - rootBounds.top - 85, + }; }); path.addEventListener('blur', event => { - tooltip.style['opacity'] = '0'; + this.tooltipProps = { isVisible: false, legend: '', yValue: '', color: '', xPos: 0, yPos: 0 }; }); }); - rootDiv.addEventListener('mouseleave', () => { - tooltip.style['opacity'] = '0'; + this.rootDiv.addEventListener('mouseleave', () => { + this.tooltipProps = { isVisible: false, legend: '', yValue: '', color: '', xPos: 0, yPos: 0 }; }); if (this.valueInsideDonut) { const text = document.createElementNS(SVG_NAMESPACE_URI, 'text'); - group.appendChild(text); + this.group.appendChild(text); text.classList.add('insideDonutString'); text.setAttribute('x', '0'); text.setAttribute('y', '0'); @@ -185,160 +173,52 @@ export class DonutChart extends FASTElement { lines[i].setAttribute('dy', `${(start + i) * lineHeight}`); } } + }; + + public getLegends = (): Legend[] => { + return this.data.chartData.map((d, index) => ({ + title: d.legend, + color: d.color!, + })); + }; + + public handleLegendMouseoverAndFocus = (legendTitle: string) => { + if (this.isLegendSelected) { + return; + } - const legends = this.data.chartData.map(dataPoint => ({ title: dataPoint.legend, color: dataPoint.color! })); - - const legendContainer = document.createElement('div'); - rootDiv.appendChild(legendContainer); - legendContainer.classList.add('legendContainer'); - legendContainer.setAttribute('role', 'listbox'); - legendContainer.setAttribute('aria-label', 'Legends'); - - legends.forEach((legendItem, index) => { - const button = document.createElement('button'); - legendContainer.appendChild(button); - button.classList.add('legend'); - button.setAttribute('role', 'option'); - button.setAttribute('aria-setsize', `${legends.length}`); - button.setAttribute('aria-posinset', `${index + 1}`); - // button.setAttribute('aria-selected', `${this._selectedLegend === legendItem.title}`); - - const legendRect = document.createElement('div'); - button.appendChild(legendRect); - legendRect.classList.add('legendRect'); - legendRect.style['backgroundColor'] = legendItem.color; - legendRect.style['borderColor'] = legendItem.color; - - const legendText = document.createElement('div'); - button.appendChild(legendText); - legendText.textContent = legendItem.title; - legendText.classList.add('legendText'); - }); - - const buttons = legendContainer.getElementsByClassName('legend') as HTMLCollectionOf; - const arcs = group.getElementsByClassName('arc') as HTMLCollectionOf; - - for (let i = 0; i < buttons.length; i++) { - buttons[i].addEventListener('mouseover', () => { - if (this._selectedLegend !== '') { - return; - } - - for (let j = 0; j < arcs.length; j++) { - if (arcs[j].getAttribute('data-id') !== buttons[i].textContent) { - arcs[j].style['opacity'] = '0.1'; - } else { - arcs[j].style['opacity'] = '1'; - } - } - for (let j = 0; j < buttons.length; j++) { - const legendRect = (buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf)[0]; - const legendText = (buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf)[0]; - - if (j !== i) { - legendRect.style['backgroundColor'] = 'transparent'; - legendText.style['opacity'] = '0.67'; - } else { - legendRect.style['backgroundColor'] = legends[j].color; - legendText.style['opacity'] = '1'; - } - } - }); - buttons[i].addEventListener('mouseout', () => { - if (this._selectedLegend !== '') { - return; - } - - for (let j = 0; j < arcs.length; j++) { - arcs[j].style['opacity'] = '1'; - } - for (let j = 0; j < buttons.length; j++) { - const legendRect = (buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf)[0]; - legendRect.style['backgroundColor'] = legends[j].color; - - const legendText = (buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf)[0]; - legendText.style['opacity'] = '1'; - } - }); - buttons[i].addEventListener('focus', () => { - if (this._selectedLegend !== '') { - return; - } + this.activeLegend = legendTitle; + }; - for (let j = 0; j < arcs.length; j++) { - if (arcs[j].getAttribute('data-id') !== buttons[i].textContent) { - arcs[j].style['opacity'] = '0.1'; - } else { - arcs[j].style['opacity'] = '1'; - } - } - for (let j = 0; j < buttons.length; j++) { - const legendRect = (buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf)[0]; - const legendText = (buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf)[0]; - - if (j !== i) { - legendRect.style['backgroundColor'] = 'transparent'; - legendText.style['opacity'] = '0.67'; - } else { - legendRect.style['backgroundColor'] = legends[j].color; - legendText.style['opacity'] = '1'; - } - } - }); - buttons[i].addEventListener('blur', () => { - if (this._selectedLegend !== '') { - return; - } + public handleLegendMouseoutAndBlur = () => { + if (this.isLegendSelected) { + return; + } - for (let j = 0; j < arcs.length; j++) { - arcs[j].style['opacity'] = '1'; - } - for (let j = 0; j < buttons.length; j++) { - const legendRect = (buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf)[0]; - legendRect.style['backgroundColor'] = legends[j].color; + this.activeLegend = ''; + }; - const legendText = (buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf)[0]; - legendText.style['opacity'] = '1'; - } - }); - buttons[i].addEventListener('click', () => { - if (this._selectedLegend === legends[i].title) { - this._selectedLegend = ''; - - for (let j = 0; j < arcs.length; j++) { - arcs[j].style['opacity'] = '1'; - } - for (let j = 0; j < buttons.length; j++) { - const legendRect = (buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf)[0]; - legendRect.style['backgroundColor'] = legends[j].color; - - const legendText = (buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf)[0]; - legendText.style['opacity'] = '1'; - } + public handleLegendClick = (legendTitle: string) => { + if (this.isLegendSelected && this.activeLegend === legendTitle) { + this.activeLegend = ''; + this.isLegendSelected = false; + } else { + this.activeLegend = legendTitle; + this.isLegendSelected = true; + } + }; + + public activeLegendChanged = (oldValue: string, newValue: string) => { + if (newValue === '') { + this._arcs?.forEach(arc => arc.classList.remove('inactive')); + } else { + this._arcs?.forEach(arc => { + if (arc.getAttribute('data-id') === newValue) { + arc.classList.remove('inactive'); } else { - this._selectedLegend = legends[i].title; - - for (let j = 0; j < arcs.length; j++) { - if (arcs[j].getAttribute('data-id') !== buttons[i].textContent) { - arcs[j].style['opacity'] = '0.1'; - } else { - arcs[j].style['opacity'] = '1'; - } - } - for (let j = 0; j < buttons.length; j++) { - const legendRect = (buttons[j].getElementsByClassName('legendRect') as HTMLCollectionOf)[0]; - const legendText = (buttons[j].getElementsByClassName('legendText') as HTMLCollectionOf)[0]; - - if (j !== i) { - legendRect.style['backgroundColor'] = 'transparent'; - legendText.style['opacity'] = '0.67'; - } else { - legendRect.style['backgroundColor'] = legends[j].color; - legendText.style['opacity'] = '1'; - } - } + arc.classList.add('inactive'); } }); } - } + }; } From 86aac7cc3199d1bbef3285b5170d6e3dfd2caa5e Mon Sep 17 00:00:00 2001 From: krkshitij <110246001+krkshitij@users.noreply.github.com> Date: Wed, 30 Oct 2024 17:44:18 +0530 Subject: [PATCH 29/60] Refactor horizontalbarchart web component (#33169) --- .../horizontalbarchart.styles.ts | 13 +- .../horizontalbarchart.template.ts | 43 ++- .../horizontalbarchart/horizontalbarchart.ts | 293 ++++++------------ 3 files changed, 142 insertions(+), 207 deletions(-) diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts index bc3147246b8f1..e93dc1e8648ea 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts @@ -25,6 +25,9 @@ import { export const styles: ElementStyles = css` ${display('inline-block')} + .rootDiv { + position: relative; + } .root { background-color: ${colorNeutralBackground1}; width: 100vw; @@ -47,7 +50,6 @@ export const styles: ElementStyles = css` box-shadow: ${shadow4}; border: 2px; pointer-events: none; - opacity: 0; } .tooltipline { padding-left: 8px; @@ -68,6 +70,9 @@ export const styles: ElementStyles = css` .bar { opacity: 1; } + .bar.inactive { + opacity: 0.1; + } .chartTitle { ${typographyBody1Styles} display: flex; @@ -107,6 +112,12 @@ export const styles: ElementStyles = css` ${typographyCaption1Styles} color: ${colorNeutralForeground1}; } + .legend.inactive .legendRect { + background-color: transparent !important; + } + .legend.inactive .legendText { + opacity: 0.67; + } .barLabel { ${typographyBody1StrongStyles} fill: ${colorNeutralForeground1}; diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts index 6286a791a738d..c6197fe1419cb 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts @@ -1,6 +1,7 @@ -import { ElementViewTemplate, html, ref, slotted } from '@microsoft/fast-element'; +import { ElementViewTemplate, html, ref, repeat, when } from '@microsoft/fast-element'; import { createTabster, getGroupper, getMover, getTabsterAttribute, Types } from 'tabster'; import type { HorizontalBarChart } from './horizontalbarchart.js'; +import { ChartDataPoint } from './horizontalbarchart.options.js'; // During the page startup. const tabsterCore = createTabster(window); @@ -14,9 +15,45 @@ getGroupper(tabsterCore); */ export function horizontalbarchartTemplate(): ElementViewTemplate { return html` `; } diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts index bf808065463f1..851b3cf0336d3 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts @@ -1,4 +1,4 @@ -import { attr, FASTElement } from '@microsoft/fast-element'; +import { attr, FASTElement, observable } from '@microsoft/fast-element'; import { create as d3Create, select as d3Select } from 'd3-selection'; import { createTabster, getGroupper, getMover, getTabsterAttribute, TABSTER_ATTRIBUTE_NAME } from 'tabster'; import { jsonConverter, SVG_NAMESPACE_URI, validateChartPropsArray } from '../utils/chart-helpers.js'; @@ -34,7 +34,6 @@ export class HorizontalBarChart extends FASTElement { public chartContainer!: HTMLDivElement; - public legendContainer!: HTMLDivElement; /** * @public * The type of the dialog modal @@ -45,14 +44,38 @@ export class HorizontalBarChart extends FASTElement { @attr({ converter: jsonConverter }) public data!: ChartProps[]; - @attr + @observable public uniqueLegends: ChartDataPoint[] = []; @attr public hideRatio = false; + @attr({ attribute: 'hide-legends', mode: 'boolean' }) + public hideLegends?: boolean; + + @attr({ attribute: 'hide-tooltip', mode: 'boolean' }) + public hideTooltip?: boolean; + + @observable + public activeLegend: string = ''; + + @observable + public isLegendSelected: boolean = false; + + @observable + public tooltipProps = { + isVisible: false, + legend: '', + yValue: '', + color: '', + xPos: 0, + yPos: 0, + }; + + public rootDiv!: HTMLDivElement; + private barHeight: number = 12; - private _selectedLegend: string = ''; + private _bars: SVGRectElement[] = []; constructor() { super(); @@ -97,177 +120,6 @@ export class HorizontalBarChart extends FASTElement { }); } - public renderLegends() { - const legendButtonRefs: any = []; - this.uniqueLegends?.forEach((d, index) => { - const button = document.createElement('button'); - this.legendContainer.appendChild(button); - button.classList.add('legend'); - // Store a reference to the button - legendButtonRefs[index] = button; - - const legendRect = document.createElement('div'); - button.appendChild(legendRect); - legendRect.classList.add('legendRect'); - legendRect.style['backgroundColor'] = d.color!; - legendRect.style['borderColor'] = d.color!; - - const legendText = document.createElement('div'); - button.appendChild(legendText); - legendText.textContent = d.legend!; - legendText.classList.add('legendText'); - }); - - const bars = this.chartContainer.querySelectorAll('.bar'); - - for (let i = 0; i < legendButtonRefs.length; i++) { - legendButtonRefs[i].addEventListener('mouseover', () => { - if (this._selectedLegend !== '') { - return; - } - - for (let j = 0; j < bars.length; j++) { - if (bars[j].getAttribute('barinfo') !== this.uniqueLegends[i].legend) { - bars[j].style['opacity'] = '0.1'; - } else { - bars[j].style['opacity'] = '1'; - } - } - for (let j = 0; j < legendButtonRefs.length; j++) { - const legendRect = ( - legendButtonRefs[j].getElementsByClassName('legendRect') as HTMLCollectionOf - )[0]; - const legendText = ( - legendButtonRefs[j].getElementsByClassName('legendText') as HTMLCollectionOf - )[0]; - - if (j !== i) { - legendRect.style['backgroundColor'] = 'transparent'; - legendText.style['opacity'] = '0.67'; - } else { - legendRect.style['backgroundColor'] = this.uniqueLegends[j].color!; - legendText.style['opacity'] = '1'; - } - } - }); - legendButtonRefs[i].addEventListener('mouseout', () => { - if (this._selectedLegend !== '') { - return; - } - - for (let j = 0; j < bars.length; j++) { - bars[j].style['opacity'] = '1'; - } - for (let j = 0; j < legendButtonRefs.length; j++) { - const legendRect = ( - legendButtonRefs[j].getElementsByClassName('legendRect') as HTMLCollectionOf - )[0]; - legendRect.style['backgroundColor'] = this.uniqueLegends[j].color!; - - const legendText = ( - legendButtonRefs[j].getElementsByClassName('legendText') as HTMLCollectionOf - )[0]; - legendText.style['opacity'] = '1'; - } - }); - legendButtonRefs[i].addEventListener('focus', () => { - if (this._selectedLegend !== '') { - return; - } - - for (let j = 0; j < bars.length; j++) { - if (bars[j].getAttribute('barinfo') !== this.uniqueLegends[i].legend) { - bars[j].style['opacity'] = '0.1'; - } else { - bars[j].style['opacity'] = '1'; - } - } - for (let j = 0; j < legendButtonRefs.length; j++) { - const legendRect = ( - legendButtonRefs[j].getElementsByClassName('legendRect') as HTMLCollectionOf - )[0]; - const legendText = ( - legendButtonRefs[j].getElementsByClassName('legendText') as HTMLCollectionOf - )[0]; - - if (j !== i) { - legendRect.style['backgroundColor'] = 'transparent'; - legendText.style['opacity'] = '0.67'; - } else { - legendRect.style['backgroundColor'] = this.uniqueLegends[j].color!; - legendText.style['opacity'] = '1'; - } - } - }); - legendButtonRefs[i].addEventListener('blur', () => { - if (this._selectedLegend !== '') { - return; - } - - for (let j = 0; j < bars.length; j++) { - bars[j].style['opacity'] = '1'; - } - for (let j = 0; j < legendButtonRefs.length; j++) { - const legendRect = ( - legendButtonRefs[j].getElementsByClassName('legendRect') as HTMLCollectionOf - )[0]; - legendRect.style['backgroundColor'] = this.uniqueLegends[j].color!; - - const legendText = ( - legendButtonRefs[j].getElementsByClassName('legendText') as HTMLCollectionOf - )[0]; - legendText.style['opacity'] = '1'; - } - }); - legendButtonRefs[i].addEventListener('click', () => { - if (this._selectedLegend === this.uniqueLegends[i].legend) { - this._selectedLegend = ''; - - for (let j = 0; j < bars.length; j++) { - bars[j].style['opacity'] = '1'; - } - for (let j = 0; j < legendButtonRefs.length; j++) { - const legendRect = ( - legendButtonRefs[j].getElementsByClassName('legendRect') as HTMLCollectionOf - )[0]; - legendRect.style['backgroundColor'] = this.uniqueLegends[j].color!; - - const legendText = ( - legendButtonRefs[j].getElementsByClassName('legendText') as HTMLCollectionOf - )[0]; - legendText.style['opacity'] = '1'; - } - } else { - this._selectedLegend = this.uniqueLegends[i].legend; - - for (let j = 0; j < bars.length; j++) { - if (bars[j].getAttribute('barinfo') !== this.uniqueLegends[i].legend) { - bars[j].style['opacity'] = '0.1'; - } else { - bars[j].style['opacity'] = '1'; - } - } - for (let j = 0; j < legendButtonRefs.length; j++) { - const legendRect = ( - legendButtonRefs[j].getElementsByClassName('legendRect') as HTMLCollectionOf - )[0]; - const legendText = ( - legendButtonRefs[j].getElementsByClassName('legendText') as HTMLCollectionOf - )[0]; - - if (j !== i) { - legendRect.style['backgroundColor'] = 'transparent'; - legendText.style['opacity'] = '0.67'; - } else { - legendRect.style['backgroundColor'] = this.uniqueLegends[j].color!; - legendText.style['opacity'] = '1'; - } - } - } - }); - } - } - private createSingleChartBars(singleChartData: ChartProps, index: number, nodes: any) { const singleChartBars = this._createBarsAndLegends(singleChartData!, index); @@ -402,7 +254,7 @@ export class HorizontalBarChart extends FASTElement { let prevPosition = 0; let value = 0; - function createBars(this: SVGGElement, point: ChartDataPoint, index: number) { + const createBars = (g: SVGGElement, point: ChartDataPoint, index: number) => { const barHeight = 12; const pointData = point.data ? point.data : 0; if (index > 0) { @@ -419,7 +271,7 @@ export class HorizontalBarChart extends FASTElement { startingPoint.push(prevPosition); - const gEle = d3Select(this) // 'this' refers to the current 'g' element + const gEle = d3Select(g) // 'this' refers to the current 'g' element .attr('key', index) .attr('role', 'img') .attr('aria-label', pointData); @@ -445,7 +297,8 @@ export class HorizontalBarChart extends FASTElement { stop2.setAttribute('stop-color', point.gradient[1]); } - gEle + gEle; + const rect = gEle .append('rect') .attr('key', index) .attr('id', `${barNo}-${index}`) @@ -466,12 +319,11 @@ export class HorizontalBarChart extends FASTElement { .attr('tabindex', 0) .attr('data-tabster', '{"groupper": {...}}"') .attr('data-tabster', '{"mover": {...}}"'); - } + this._bars.push(rect.node()!); + }; const containerDiv = d3Create('div').attr('style', 'position: relative'); - let tooltip: any; - const chartTitleDiv = containerDiv.append('div').attr('class', 'chartTitleDiv'); chartTitleDiv .append('div') @@ -502,32 +354,27 @@ export class HorizontalBarChart extends FASTElement { .data(data.chartData!) .enter() .append('g') - .each(createBars) - .on('mouseover', function (event, d) { + .each(function (this, d, i) { + createBars(this, d, i); + }) + .on('mouseover', (event, d) => { if (d && d.hasOwnProperty('placeholder') && (d as any).placeholder === true) { return; } - const tooltipHTML = ` -
-
${d.legend}
-
${d.data}
-
- `; - tooltip = containerDiv - .append('div') - .attr('class', 'tooltip') - .attr( - 'style', - 'opacity: 1; left: ' + - (event.pageX - containerDiv.node()!.getBoundingClientRect().left + window.scrollX) + - 'px; top: ' + - (event.pageY - (containerDiv.node()!.getBoundingClientRect().top + window.scrollY) - 40) + - 'px;', - ); - tooltip.html(tooltipHTML); + + const bounds = this.rootDiv.getBoundingClientRect(); + + this.tooltipProps = { + isVisible: true, + legend: d.legend, + yValue: `${d.data}`, + color: d.color!, + xPos: event.clientX - bounds.left, + yPos: event.clientY - bounds.top - 40, + }; }) - .on('mouseout', function () { - tooltip.attr('style', 'position: absolute; opacity:0'); + .on('mouseout', () => { + this.tooltipProps = { isVisible: false, legend: '', yValue: '', color: '', xPos: 0, yPos: 0 }; }); if (this.variant === Variant.AbsoluteScale) { @@ -558,4 +405,44 @@ export class HorizontalBarChart extends FASTElement { } return containerDiv; } + + public handleLegendMouseoverAndFocus = (legendTitle: string) => { + if (this.isLegendSelected) { + return; + } + + this.activeLegend = legendTitle; + }; + + public handleLegendMouseoutAndBlur = () => { + if (this.isLegendSelected) { + return; + } + + this.activeLegend = ''; + }; + + public handleLegendClick = (legendTitle: string) => { + if (this.isLegendSelected && this.activeLegend === legendTitle) { + this.activeLegend = ''; + this.isLegendSelected = false; + } else { + this.activeLegend = legendTitle; + this.isLegendSelected = true; + } + }; + + public activeLegendChanged = (oldValue: string, newValue: string) => { + if (newValue === '') { + this._bars?.forEach(bar => bar.classList.remove('inactive')); + } else { + this._bars?.forEach(bar => { + if (bar.getAttribute('barinfo') === newValue) { + bar.classList.remove('inactive'); + } else { + bar.classList.add('inactive'); + } + }); + } + }; } From 10c7981a6de6881baa9d8452300129cf5a4a60bf Mon Sep 17 00:00:00 2001 From: "Atishay Jain (atisjai)" <98592573+AtishayMsft@users.noreply.github.com> Date: Fri, 1 Nov 2024 13:54:49 +0000 Subject: [PATCH 30/60] Move charts t web components to own package --- .github/CODEOWNERS | 1 + ...-a2072109-cb0f-486e-9cbe-81ebc19d21c4.json | 7 - .../charts/chart-web-components/.eslintignore | 8 + .../chart-web-components/.eslintrc.json | 74 +++ .../charts/chart-web-components/.gitignore | 1 + .../.storybook/docs-root.css | 473 ++++++++++++++++++ .../chart-web-components/.storybook/main.cjs | 88 ++++ .../.storybook/manager-head.html | 118 +++++ .../.storybook/manager.mjs | 14 + .../.storybook/preview-body.html | 9 + .../.storybook/preview.mjs | 70 +++ .../chart-web-components/.storybook/theme.mjs | 34 ++ .../.storybook/tsconfig.json | 10 + .../charts/chart-web-components/README.md | 92 ++++ .../chart-web-components/api-extractor.json | 35 ++ .../chart-web-components/docs/api-report.md | 148 ++++++ .../charts/chart-web-components/package.json | 120 +++++ .../chart-web-components/playwright.config.ts | 41 ++ .../charts/chart-web-components/project.json | 10 + .../chart-web-components/public/100x100.png | Bin 0 -> 1070 bytes .../chart-web-components/public/150x150.png | Bin 0 -> 2186 bytes .../chart-web-components/public/200x100.png | Bin 0 -> 2194 bytes .../chart-web-components/public/300x100.png | Bin 0 -> 2879 bytes .../chart-web-components/public/400x200.png | Bin 0 -> 5138 bytes .../chart-web-components/public/400x250.png | Bin 0 -> 6149 bytes .../chart-web-components/public/400x300.png | Bin 0 -> 6273 bytes .../chart-web-components/public/600x200.png | Bin 0 -> 7498 bytes .../chart-web-components/public/958x20.png | Bin 0 -> 3056 bytes .../public/SegoeUI-VF.ttf | Bin 0 -> 1844524 bytes .../chart-web-components/public/favicon.ico | Bin 0 -> 17174 bytes .../chart-web-components/public/favicon.png | Bin 0 -> 17174 bytes .../chart-web-components/public/shell.css | 82 +++ .../chart-web-components/rollup.bench.js | 21 + .../chart-web-components/rollup.config.js | 43 ++ .../chart-web-components/scripts/clean.js | 50 ++ .../chart-web-components/scripts/compile.js | 24 + .../scripts/run-benchmarks.js | 42 ++ .../scripts/setup-browser.cjs | 11 + .../scripts/transform-fragments.js | 29 ++ .../scripts/type-check.js | 58 +++ .../scripts/verify-packaging.js | 75 +++ .../src/donut-chart/define.ts | 2 +- .../src/donut-chart/donut-chart.bench.ts | 2 +- .../src/donut-chart/donut-chart.definition.ts | 2 +- .../src/donut-chart/donut-chart.options.ts | 0 .../src/donut-chart/donut-chart.stories.ts | 0 .../src/donut-chart/donut-chart.styles.ts | 8 +- .../src/donut-chart/donut-chart.template.ts | 2 +- .../src/donut-chart/donut-chart.ts | 0 .../src/donut-chart/index.ts | 0 .../src/helpers.stories.ts | 101 ++++ .../src/horizontal-bar-chart/define.ts | 4 + .../horizontal-bar-chart.bench.ts} | 6 +- .../horizontal-bar-chart.definition.ts | 20 + .../horizontal-bar-chart.options.ts} | 0 .../horizontal-bar-chart.stories.ts} | 20 +- .../horizontal-bar-chart.styles.ts} | 6 +- .../horizontal-bar-chart.template.ts} | 6 +- .../horizontal-bar-chart.ts} | 3 +- .../src/horizontal-bar-chart}/index.ts | 8 +- .../chart-web-components/src/index-rollup.ts | 2 + .../charts/chart-web-components/src/index.ts | 7 + .../src/utils/benchmark-wrapper.ts | 22 + .../src/utils/chart-helpers.ts | 2 +- .../chart-web-components/tensile.config.js | 20 + .../tsconfig.api-extractor.json | 7 + .../charts/chart-web-components/tsconfig.json | 22 + .../chart-web-components/tsconfig.lib.json | 14 + .../chart-web-components/tsconfig.spec.json | 9 + .../charts/chart-web-components/tsdoc.json | 44 ++ packages/web-components/package.json | 7 +- .../src/horizontalbarchart/define.ts | 4 - .../horizontalbarchart.definition.ts | 20 - packages/web-components/src/index-rollup.ts | 2 - packages/web-components/src/index.ts | 8 - tsconfig.base.all.json | 1 + tsconfig.base.wc.json | 1 + 77 files changed, 2088 insertions(+), 82 deletions(-) delete mode 100644 change/@fluentui-web-components-a2072109-cb0f-486e-9cbe-81ebc19d21c4.json create mode 100644 packages/charts/chart-web-components/.eslintignore create mode 100644 packages/charts/chart-web-components/.eslintrc.json create mode 100644 packages/charts/chart-web-components/.gitignore create mode 100644 packages/charts/chart-web-components/.storybook/docs-root.css create mode 100644 packages/charts/chart-web-components/.storybook/main.cjs create mode 100644 packages/charts/chart-web-components/.storybook/manager-head.html create mode 100644 packages/charts/chart-web-components/.storybook/manager.mjs create mode 100644 packages/charts/chart-web-components/.storybook/preview-body.html create mode 100644 packages/charts/chart-web-components/.storybook/preview.mjs create mode 100644 packages/charts/chart-web-components/.storybook/theme.mjs create mode 100644 packages/charts/chart-web-components/.storybook/tsconfig.json create mode 100644 packages/charts/chart-web-components/README.md create mode 100644 packages/charts/chart-web-components/api-extractor.json create mode 100644 packages/charts/chart-web-components/docs/api-report.md create mode 100644 packages/charts/chart-web-components/package.json create mode 100644 packages/charts/chart-web-components/playwright.config.ts create mode 100644 packages/charts/chart-web-components/project.json create mode 100644 packages/charts/chart-web-components/public/100x100.png create mode 100644 packages/charts/chart-web-components/public/150x150.png create mode 100644 packages/charts/chart-web-components/public/200x100.png create mode 100644 packages/charts/chart-web-components/public/300x100.png create mode 100644 packages/charts/chart-web-components/public/400x200.png create mode 100644 packages/charts/chart-web-components/public/400x250.png create mode 100644 packages/charts/chart-web-components/public/400x300.png create mode 100644 packages/charts/chart-web-components/public/600x200.png create mode 100644 packages/charts/chart-web-components/public/958x20.png create mode 100644 packages/charts/chart-web-components/public/SegoeUI-VF.ttf create mode 100644 packages/charts/chart-web-components/public/favicon.ico create mode 100644 packages/charts/chart-web-components/public/favicon.png create mode 100644 packages/charts/chart-web-components/public/shell.css create mode 100644 packages/charts/chart-web-components/rollup.bench.js create mode 100644 packages/charts/chart-web-components/rollup.config.js create mode 100644 packages/charts/chart-web-components/scripts/clean.js create mode 100644 packages/charts/chart-web-components/scripts/compile.js create mode 100644 packages/charts/chart-web-components/scripts/run-benchmarks.js create mode 100644 packages/charts/chart-web-components/scripts/setup-browser.cjs create mode 100644 packages/charts/chart-web-components/scripts/transform-fragments.js create mode 100644 packages/charts/chart-web-components/scripts/type-check.js create mode 100644 packages/charts/chart-web-components/scripts/verify-packaging.js rename packages/{web-components => charts/chart-web-components}/src/donut-chart/define.ts (62%) rename packages/{web-components => charts/chart-web-components}/src/donut-chart/donut-chart.bench.ts (82%) rename packages/{web-components => charts/chart-web-components}/src/donut-chart/donut-chart.definition.ts (85%) rename packages/{web-components => charts/chart-web-components}/src/donut-chart/donut-chart.options.ts (100%) rename packages/{web-components => charts/chart-web-components}/src/donut-chart/donut-chart.stories.ts (100%) rename packages/{web-components => charts/chart-web-components}/src/donut-chart/donut-chart.styles.ts (94%) rename packages/{web-components => charts/chart-web-components}/src/donut-chart/donut-chart.template.ts (96%) rename packages/{web-components => charts/chart-web-components}/src/donut-chart/donut-chart.ts (100%) rename packages/{web-components => charts/chart-web-components}/src/donut-chart/index.ts (100%) create mode 100644 packages/charts/chart-web-components/src/helpers.stories.ts create mode 100644 packages/charts/chart-web-components/src/horizontal-bar-chart/define.ts rename packages/{web-components/src/horizontalbarchart/horizontalbarchart.bench.ts => charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.bench.ts} (63%) create mode 100644 packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.definition.ts rename packages/{web-components/src/horizontalbarchart/horizontalbarchart.options.ts => charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.options.ts} (100%) rename packages/{web-components/src/horizontalbarchart/horizontalbarchart.stories.ts => charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.stories.ts} (89%) rename packages/{web-components/src/horizontalbarchart/horizontalbarchart.styles.ts => charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.styles.ts} (95%) rename packages/{web-components/src/horizontalbarchart/horizontalbarchart.template.ts => charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.template.ts} (91%) rename packages/{web-components/src/horizontalbarchart/horizontalbarchart.ts => charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.ts} (99%) rename packages/{web-components/src/horizontalbarchart => charts/chart-web-components/src/horizontal-bar-chart}/index.ts (55%) create mode 100644 packages/charts/chart-web-components/src/index-rollup.ts create mode 100644 packages/charts/chart-web-components/src/index.ts create mode 100644 packages/charts/chart-web-components/src/utils/benchmark-wrapper.ts rename packages/{web-components => charts/chart-web-components}/src/utils/chart-helpers.ts (99%) create mode 100644 packages/charts/chart-web-components/tensile.config.js create mode 100644 packages/charts/chart-web-components/tsconfig.api-extractor.json create mode 100644 packages/charts/chart-web-components/tsconfig.json create mode 100644 packages/charts/chart-web-components/tsconfig.lib.json create mode 100644 packages/charts/chart-web-components/tsconfig.spec.json create mode 100644 packages/charts/chart-web-components/tsdoc.json delete mode 100644 packages/web-components/src/horizontalbarchart/define.ts delete mode 100644 packages/web-components/src/horizontalbarchart/horizontalbarchart.definition.ts diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 135b63ce8440e..54d630dcabc29 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -134,6 +134,7 @@ apps/react-18-tests-v9 @microsoft/fluentui-react-build packages/azure-themes @Jacqueline-ms @robtaft-ms packages/react-conformance @microsoft/fluentui-react-build packages/charts/react-charting @microsoft/charting-team +packages/charts/chart-web-components @microsoft/charting-team packages/date-time-utilities @microsoft/cxe-red packages/eslint-plugin @microsoft/fluentui-react-build packages/foundation-legacy @microsoft/cxe-red @khmakoto diff --git a/change/@fluentui-web-components-a2072109-cb0f-486e-9cbe-81ebc19d21c4.json b/change/@fluentui-web-components-a2072109-cb0f-486e-9cbe-81ebc19d21c4.json deleted file mode 100644 index 875902a38034b..0000000000000 --- a/change/@fluentui-web-components-a2072109-cb0f-486e-9cbe-81ebc19d21c4.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "type": "prerelease", - "comment": "feat(charts): Create web components for donut chart and horizontal bar chart.", - "packageName": "@fluentui/web-components", - "email": "98592573+AtishayMsft@users.noreply.github.com", - "dependentChangeType": "patch" -} diff --git a/packages/charts/chart-web-components/.eslintignore b/packages/charts/chart-web-components/.eslintignore new file mode 100644 index 0000000000000..ba38ef5432888 --- /dev/null +++ b/packages/charts/chart-web-components/.eslintignore @@ -0,0 +1,8 @@ +# don't ever lint node_modules +node_modules +# don't lint build output (make sure it's set to your correct build folder name) +dist +# don't lint coverage output +coverage +# don't lint storybook +.storybook diff --git a/packages/charts/chart-web-components/.eslintrc.json b/packages/charts/chart-web-components/.eslintrc.json new file mode 100644 index 0000000000000..3d5876196e9ba --- /dev/null +++ b/packages/charts/chart-web-components/.eslintrc.json @@ -0,0 +1,74 @@ +{ + "root": true, + "parser": "@typescript-eslint/parser", + "plugins": ["@typescript-eslint", "import"], + "extends": [ + "eslint:recommended", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "prettier", + "plugin:playwright/recommended" + ], + "settings": { + "react": { + "version": "latest" + } + }, + "rules": { + "no-empty": [ + "error", + { + "allowEmptyCatch": true + } + ], + "no-extra-boolean-cast": "off", + "no-prototype-builtins": "off", + "no-fallthrough": "off", + "no-unexpected-multiline": "off", + "no-useless-escape": "off", + "import/order": "error", + "sort-imports": [ + "error", + { + "ignoreCase": true, + "ignoreDeclarationSort": true + } + ], + "comma-dangle": "off", + "@typescript-eslint/no-non-null-assertion": "off", + "@typescript-eslint/no-use-before-define": "off", + "@typescript-eslint/no-empty-interface": "error", + "@typescript-eslint/no-empty-object-type": "off", + "@typescript-eslint/no-unsafe-declaration-merging": "off", + "@typescript-eslint/explicit-module-boundary-types": "off", + "@typescript-eslint/explicit-function-return-type": "off", + "@typescript-eslint/camelcase": "off", + "@typescript-eslint/no-inferrable-types": "off", + "@typescript-eslint/no-unused-vars": [ + "warn", + { + "args": "none" + } + ], + "@typescript-eslint/no-unused-expressions": "warn", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/naming-convention": [ + "error", + { + "selector": "default", + "format": ["UPPER_CASE", "camelCase", "PascalCase"], + "leadingUnderscore": "allow" + }, + { + "selector": "property", + "format": null // disable for property names because of our foo__expanded convention for JSS + // TODO: I think we can come up with a regex that ignores variables with __ in them + }, + { + "selector": "variable", + "format": null // disable for variable names because of our foo__expanded convention for JSS + // TODO: I think we can come up with a regex that ignores variables with __ in them + } + ] + } +} diff --git a/packages/charts/chart-web-components/.gitignore b/packages/charts/chart-web-components/.gitignore new file mode 100644 index 0000000000000..51511d1f8f36f --- /dev/null +++ b/packages/charts/chart-web-components/.gitignore @@ -0,0 +1 @@ +test-results/ diff --git a/packages/charts/chart-web-components/.storybook/docs-root.css b/packages/charts/chart-web-components/.storybook/docs-root.css new file mode 100644 index 0000000000000..b24a61b616134 --- /dev/null +++ b/packages/charts/chart-web-components/.storybook/docs-root.css @@ -0,0 +1,473 @@ +/* + * Heads Up! + * This file should be kept in sync with the `docs-root.css` file for the React v9 Storybook. + */ + +/* remove the docs wrapper bg to let page bg show through */ +#storybook-docs .sbdocs-wrapper { + background: transparent !important; +} + +/* sb-show-main is missing during page transitions causing a page shift */ +/* todo: cleanup once we no longer inherit docs-root */ +.sb-show-main.sb-main-fullscreen, +.sb-main-fullscreen { + margin: 0; + padding: 0; + display: block; +} + +#storybook-docs .sbdocs-content { + font-family: 'Segoe UI', 'Segoe UI Web (West European)', -apple-system, BlinkMacSystemFont, Roboto, 'Helvetica Neue', + sans-serif; + max-width: 1200px; +} + +#storybook-docs h1.sbdocs-title { + font-size: 44px; + line-height: 60px; + /* identical to box height, or 143% */ + font-weight: 900; + letter-spacing: -0.04em; + color: #000000; +} + +#storybook-docs details { + position: relative; + z-index: 99; +} + +#storybook-docs .sbdocs:not(.sbdocs-preview) p { + font-family: 'Segoe UI', 'Segoe UI Web (West European)', -apple-system, BlinkMacSystemFont, Roboto, 'Helvetica Neue', + sans-serif; + font-size: 18px; + line-height: 27px; + letter-spacing: -0.01em; + color: #000000; + margin-top: 24px; +} + +#storybook-docs .sbdocs-img.featured-image { + max-width: 100%; + margin: 48px 0; + display: block; +} + +#storybook-docs .sbdocs-img { + border-radius: 24px; +} + +#storybook-docs .sbdocs:not(.sbdocs-preview) hr { + margin: 48px 0; + height: 0; + border-top: 1px solid #ebebeb; +} + +#storybook-docs .sbdocs h2 { + font-family: 'Segoe UI', 'Segoe UI Web (West European)', -apple-system, BlinkMacSystemFont, Roboto, 'Helvetica Neue', + sans-serif; + font-size: 24px; + line-height: 28px; + letter-spacing: -0.04em; + color: black; + border-top: 1px solid #ebebeb; + border-bottom: none; + margin: 48px 0 15px 0; + padding: 48px 0 0 0; +} + +#storybook-docs .sbdocs h2 code { + border-radius: 4px; + font-size: 20px; +} + +#storybook-docs .sbdocs-h3 { + font-family: 'Segoe UI', 'Segoe UI Web (West European)', -apple-system, BlinkMacSystemFont, Roboto, 'Helvetica Neue', + sans-serif; + font-size: 18px; + line-height: 24px; + margin: 25px 0 0 0 !important; + letter-spacing: -0.01em; + color: #000000; +} + +#storybook-docs .sbdocs-h3 code { + border-radius: 3px; + font-size: 16px; +} + +/* Only apply to H3s inside of stories which have a parent with an ID */ +#storybook-docs [id] > .sbdocs-h3:before { + content: ''; + display: block; + height: 40px; + margin: -40px 0 0; +} + +#storybook-docs .sbdocs:not(.sbdocs-preview) li { + font-family: 'Segoe UI', 'Segoe UI Web (West European)', -apple-system, BlinkMacSystemFont, Roboto, 'Helvetica Neue', + sans-serif; + font-size: 16px; + line-height: 150%; + letter-spacing: -0.01em; + + /* Neutrals / Web / Gray 200 #1B1A19 */ + color: #1b1a19; + margin-top: 8px; +} + +#storybook-docs .sbdocs:not(.sbdocs-preview) ul { + margin: 12px 0; +} + +#storybook-docs .sbdocs-ul .sbdocs:not(.sbdocs-preview) li { + list-style: none; + position: relative; +} + +#storybook-docs .sbdocs-ul .sbdocs-li::before { + position: absolute; + content: '•'; + color: #8d8d8d; + top: 0; + left: -15px; +} + +#storybook-docs .sbdocs-ol .sbdocs-li::marker { + color: #8d8d8d; +} + +#storybook-docs .sbdocs-preview { + border-radius: 16px; + background: #fff; /* --colorBrandBackgroundInverted */ + padding: 0; + box-shadow: none; + border: 1px solid #d1d1d1; /* --colorNeutralStroke1 */ +} + +/* Apply the currently selected Fluent UI theme to the relevant areas of the docs */ +#storybook-docs .innerZoomElementWrapper > div { + box-sizing: border-box; +} + +/* fix mouse interactions for toolbar on first story */ +#storybook-docs .sbdocs-preview > .os-host { + /* The toolbar sits within the story content area and is position: absolute by default. */ + /* The story content overlays the toolbar making it non-interactive */ + /* We don't use z-index because the toolbar can still sometimes overlay story content (flyout menu) */ + /* The best solution is to use a static toolbar that is always outside the story content and interactive */ + position: static; +} + +#storybook-docs span + .sbdocs .docblock-argstable tbody tr td button { + color: #0078d4; + color: red; +} + +#storybook-docs .docs-story + div { + background: #11100f; +} + +#storybook-docs .sbdocs-content > div:last-child { + margin-bottom: 96px; +} + +#storybook-docs .docs-story > div { + padding: 0; + background: none; +} + +#storybook-docs .docs-story > div:last-child { + right: 31px; + border-radius: 24px; +} + +.docs-story + div > div:last-child { + background: #000000; + box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.25); + border-radius: 5px 5px 0px 0px; + right: 31px; +} + +.docs-story + div > div:last-child > button { + color: white; + font-family: 'Segoe UI', 'Segoe UI Web (West European)', -apple-system, BlinkMacSystemFont, Roboto, 'Helvetica Neue', + sans-serif; + font-size: 14px; + line-height: 150%; + text-align: center; + letter-spacing: -0.01em; +} + +#storybook-docs a.sbdocs-a { + color: #0078d4; + text-decoration: underline; +} + +/* */ +/* Args Table */ +/* */ + +#storybook-docs .docblock-argstable tbody { + box-shadow: none; + border-left: none; + border-right: none; +} + +#storybook-docs .docblock-argstable-head th { + letter-spacing: -0.01em; + color: black; + font-family: 'Segoe UI', 'Segoe UI Web (West European)', -apple-system, BlinkMacSystemFont, Roboto, 'Helvetica Neue', + sans-serif; + font-size: 16px; + line-height: 150%; + font-weight: 600; +} + +#storybook-docs thead.docblock-argstable-head { + border-bottom: 1px solid #edebe9; +} + +#storybook-docs .docblock-argstable tbody tr { + border: none; +} + +#storybook-docs table.docblock-argstable tbody.docblock-argstable-body td, +#storybook-docs .docblock-argstable th { + padding-top: 12px; + padding-bottom: 12px; + padding-left: 16px; +} + +#storybook-docs .docblock-argstable tbody tr td:nth-child(1) span { + font-weight: normal; + font-family: 'Segoe UI', 'Segoe UI Web (West European)', -apple-system, BlinkMacSystemFont, Roboto, 'Helvetica Neue', + sans-serif; + font-size: 16px; + line-height: 130%; + letter-spacing: -0.01em; + color: #616161; +} + +#storybook-docs .docblock-argstable tbody tr td { + vertical-align: top; +} + +#storybook-docs .docblock-argstable-body > tr > td > div > div > button { + color: #0078d4; + line-height: 21px; +} + +#storybook-docs code, +#storybook-docs .docblock-argstable tbody tr td:nth-child(3) > div > span, +#storybook-docs .docblock-argstable-body > tr > td:nth-child(2) > div:nth-child(2) span, +#storybook-docs .docblock-argstable-body > tr > td:nth-child(2) > div:nth-child(1) > div > span, +#storybook-docs .css-16d4d7t { + font-family: 'Cascadia Code', Menlo, 'Courier New', Courier, monospace; + font-style: normal; + font-weight: normal; + font-size: 14px; + line-height: 130%; + letter-spacing: -0.2px; + box-decoration-break: clone; + -webkit-box-decoration-break: clone; +} + +#storybook-docs code.sbdocs-code, +#storybook-docs .sbdocs-p code, +#storybook-docs .sbdocs-li code, +#storybook-docs .docblock-argstable code, +#storybook-docs .docblock-argstable tbody tr td:nth-child(3) > div > span, +#storybook-docs .docblock-argstable-body > tr > td:nth-child(2) > div:nth-child(2) span, +#storybook-docs .docblock-argstable-body > tr > td:nth-child(2) > div:nth-child(1) > div > span, +#storybook-docs .css-16d4d7t { + font-size: 14px; + background: #f0f0f0; + border-radius: 4px; + padding: 1px 4px; + margin: 0 3px 0 3px; + color: black; + border: none; + line-height: 1.5; +} + +#storybook-docs .docblock-argstable code { + white-space: normal; +} + +#storybook-docs code { + padding: 0.1em 0.2em; + display: inline-block; + background-color: rgba(17, 16, 15, 0.1); + border-radius: 2px; + width: fit-content; /* prevent wrapping kebab-case words when they'll fit on one line */ +} + +.os-content-glue { + width: auto !important; +} + +#storybook-docs .sbdocs-preview .prismjs { + overflow: hidden; +} + +#storybook-docs .os-content .prismjs * { + font-family: 'Cascadia Code', Menlo, 'Courier New', Courier, monospace; + font-size: 14px; + line-height: 1.4em; +} + +#storybook-docs .sbdocs-preview .prismjs code { + color: white; + background: #11100f; + margin: 0; + overflow-x: auto; +} + +#storybook-docs .docblock-argstable-body td > div > p, +#storybook-docs .docblock-argstable-body > tr > td:nth-child(2) p, +#storybook-docs .docblock-argstable-body > tr > td:nth-child(2) > div:nth-child(1) > span { + font-family: 'Segoe UI', 'Segoe UI Web (West European)', -apple-system, BlinkMacSystemFont, Roboto, 'Helvetica Neue', + sans-serif; + font-size: 16px; + line-height: 130%; + color: black; + letter-spacing: -0.01em; +} + +#storybook-docs .docblock-argstable tr > :nth-child(1) { + width: 10%; +} + +#storybook-docs .docblock-argstable tr > :nth-child(2) { + width: 60%; +} + +#storybook-docs .os-padding { + z-index: 0; +} + +@font-face { + font-family: 'Segoe UI'; + src: local('Segoe UI Light'), + url(https://c.s-microsoft.com/static/fonts/segoe-ui/west-european/light/latest.woff2) format('woff2'), + url(https://c.s-microsoft.com/static/fonts/segoe-ui/west-european/light/latest.woff) format('woff'), + url(https://c.s-microsoft.com/static/fonts/segoe-ui/west-european/light/latest.ttf) format('truetype'); + font-weight: 100; +} + +@font-face { + font-family: 'Segoe UI'; + src: local('Segoe UI Semilight'), + url(https://c.s-microsoft.com/static/fonts/segoe-ui/west-european/semilight/latest.woff2) format('woff2'), + url(https://c.s-microsoft.com/static/fonts/segoe-ui/west-european/semilight/latest.woff) format('woff'), + url(https://c.s-microsoft.com/static/fonts/segoe-ui/west-european/semilight/latest.ttf) format('truetype'); + font-weight: 200; +} + +@font-face { + font-family: 'Segoe UI'; + src: local('Segoe UI'), + url(https://c.s-microsoft.com/static/fonts/segoe-ui/west-european/normal/latest.woff2) format('woff2'), + url(https://c.s-microsoft.com/static/fonts/segoe-ui/west-european/normal/latest.woff) format('woff'), + url(https://c.s-microsoft.com/static/fonts/segoe-ui/west-european/normal/latest.ttf) format('truetype'); + font-weight: 400; +} + +@font-face { + font-family: 'Segoe UI'; + src: local('Segoe UI Semibold'), + url(https://c.s-microsoft.com/static/fonts/segoe-ui/west-european/semibold/latest.woff2) format('woff2'), + url(https://c.s-microsoft.com/static/fonts/segoe-ui/west-european/semibold/latest.woff) format('woff'), + url(https://c.s-microsoft.com/static/fonts/segoe-ui/west-european/semibold/latest.ttf) format('truetype'); + font-weight: 600; +} + +@font-face { + font-family: 'Segoe UI'; + src: local('Segoe UI Bold'), + url(https://c.s-microsoft.com/static/fonts/segoe-ui/west-european/bold/latest.woff2) format('woff2'), + url(https://c.s-microsoft.com/static/fonts/segoe-ui/west-european/bold/latest.woff) format('woff'), + url(https://c.s-microsoft.com/static/fonts/segoe-ui/west-european/bold/latest.ttf) format('truetype'); + font-weight: 700; +} + +body, +body p, +body ul, +body ul li { + font-family: 'Segoe UI' !important; +} + +h1.fluent { + font-weight: 700; + font-size: 40px; + font-family: 'Segoe UI'; + line-height: 60px; + letter-spacing: -0.16px; +} + +h1 .fluent-version { + display: block; + font-size: 24px; /* --font-size-base-600 */ + line-height: 32px; + color: #707070; /* --color-neutral-foreground-3 */ +} + +h2.fluent { + font-weight: 600; + font-size: 24px; + font-family: 'Segoe UI'; + line-height: 36px; + letter-spacing: -0.16px; +} + +/* Mimic React v9 Provider styles: + * - apply font, background, and foreground colors + * - apply padding for story content + */ +#storybook-docs .innerZoomElementWrapper > div > div { + padding: 48px 24px; + font-family: var(--fontFamilyBase); + background: var(--colorNeutralBackground2); + color: var(--colorNeutralForeground2); +} + +/* + * Theme Switcher + */ +#switches-container { + position: sticky; + display: flex; + gap: 20px; + align-items: center; + padding: 12px; + width: 100%; + top: 0; + box-sizing: border-box; /* keep from overflowing body making x scroll bar*/ + background: #fff; + box-shadow: 0 0 3px rgb(0 0 0 / 22%); + z-index: 10; +} + +#switches-container select { + padding: 5px var(--spacingHorizontalM); + border: var(--strokeWidthThin) solid #d1d1d1 /* --colorNeutralStroke1, without theme switching */; + border-radius: var(--borderRadiusMedium); + font-size: var(--fontSizeBase300); + font-weight: var(--fontWeightSemibold); + line-height: var(--lineHeightBase300); + width: 140px; +} + +.custom-fullscreen #switches-container { + display: none; +} + +.custom-fullscreen .sbdocs-wrapper { + padding: 20px; +} + +.custom-fullscreen .sbdocs-content { + max-width: unset; +} diff --git a/packages/charts/chart-web-components/.storybook/main.cjs b/packages/charts/chart-web-components/.storybook/main.cjs new file mode 100644 index 0000000000000..a608e4b28b9ab --- /dev/null +++ b/packages/charts/chart-web-components/.storybook/main.cjs @@ -0,0 +1,88 @@ +const path = require('path'); +const CircularDependencyPlugin = require('circular-dependency-plugin'); +const { TsconfigPathsPlugin } = require('tsconfig-paths-webpack-plugin'); + +const tsBin = require.resolve('typescript'); +const tsConfigPath = path.resolve(__dirname, '../../../../tsconfig.base.wc.json'); + +const tsPaths = new TsconfigPathsPlugin({ + configFile: tsConfigPath, +}); + +module.exports = + /** @type {import('@storybook/html-webpack5').StorybookConfig} */ + ({ + features: { + // On-demand code splitting is disabled for now, as it causes issues e2e tests. + storyStoreV7: false, + }, + // helpers.stories.ts is a file that contains helper functions for stories, + // and should not be treated as a story itself. + stories: ['../src/**/!(helpers)*.stories.@(ts|mdx)'], + staticDirs: ['../public'], + core: { + disableTelemetry: true, + }, + framework: '@storybook/html-webpack5', + addons: [ + { + name: '@storybook/addon-essentials', + options: { + backgrounds: false, + viewport: false, + toolbars: false, + actions: true, + }, + }, + ], + webpackFinal: async config => { + config.resolve = config.resolve ?? {}; + config.resolve.extensions = config.resolve.extensions ?? []; + config.resolve.plugins = config.resolve.plugins ?? []; + config.module = config.module ?? {}; + config.plugins = config.plugins ?? []; + + config.resolve.extensionAlias = { + '.js': ['.js', '.ts'], + '.mjs': ['.mjs', '.mts'], + }; + config.resolve.extensions.push(...['.ts', '.js']); + config.resolve.plugins.push(tsPaths); + config.module.rules = config.module.rules ?? []; + config.module.rules.push( + { + test: /\.([cm]?ts|tsx)$/, + loader: 'ts-loader', + sideEffects: true, + options: { + transpileOnly: true, + compiler: tsBin, + }, + }, + // Following config is needed to be able to resolve @storybook packages imported in specified files that don't ship valid ESM + // It also enables importing other packages without proper ESM extensions, but that should be avoided ! + // @see https://webpack.js.org/configuration/module/#resolvefullyspecified + { + test: /\.m?js/, + resolve: { fullySpecified: false }, + }, + ); + + config.plugins.push( + new CircularDependencyPlugin({ + exclude: /node_modules/, + failOnError: process.env.NODE_ENV === 'production', + }), + ); + + // Disable ProgressPlugin which logs verbose webpack build progress. Warnings and Errors are still logged. + if (process.env.TF_BUILD) { + config.plugins = config.plugins.filter(value => value && value.constructor.name !== 'ProgressPlugin'); + } + + return config; + }, + docs: { + autodocs: true, + }, + }); diff --git a/packages/charts/chart-web-components/.storybook/manager-head.html b/packages/charts/chart-web-components/.storybook/manager-head.html new file mode 100644 index 0000000000000..5ff3ef7092e60 --- /dev/null +++ b/packages/charts/chart-web-components/.storybook/manager-head.html @@ -0,0 +1,118 @@ + + + + + + diff --git a/packages/charts/chart-web-components/.storybook/manager.mjs b/packages/charts/chart-web-components/.storybook/manager.mjs new file mode 100644 index 0000000000000..73873977355b4 --- /dev/null +++ b/packages/charts/chart-web-components/.storybook/manager.mjs @@ -0,0 +1,14 @@ +import { addons } from '@storybook/manager-api'; +import webcomponentsTheme from './theme.mjs'; + +addons.setConfig({ + previewTabs: { + canvas: { hidden: true }, + }, + enableShortcuts: false, + sidebar: { + showRoots: true, + }, + showPanel: false, + theme: webcomponentsTheme, // override the default Storybook theme with a custom fluent theme +}); diff --git a/packages/charts/chart-web-components/.storybook/preview-body.html b/packages/charts/chart-web-components/.storybook/preview-body.html new file mode 100644 index 0000000000000..93e32a40560db --- /dev/null +++ b/packages/charts/chart-web-components/.storybook/preview-body.html @@ -0,0 +1,9 @@ +
+ + +
diff --git a/packages/charts/chart-web-components/.storybook/preview.mjs b/packages/charts/chart-web-components/.storybook/preview.mjs new file mode 100644 index 0000000000000..e02465d8ba551 --- /dev/null +++ b/packages/charts/chart-web-components/.storybook/preview.mjs @@ -0,0 +1,70 @@ +import { teamsDarkTheme, teamsLightTheme, webDarkTheme, webLightTheme } from '@fluentui/tokens'; +import * as prettier from 'prettier'; +import prettierPluginHTML from 'prettier/parser-html.js'; +import { setTheme } from '@fluentui/web-components'; +import webcomponentsTheme from './theme.mjs'; + +import '../src/index-rollup.js'; +import './docs-root.css'; + +const FAST_EXPRESSION_COMMENTS = //g; // Matches comments that contain FAST expressions + +const themes = { + 'web-light': webLightTheme, + 'web-dark': webDarkTheme, + 'teams-light': teamsLightTheme, + 'teams-dark': teamsDarkTheme, +}; + +function changeTheme(/** @type {Event} */ e) { + setTheme(themes[/** @type {keyof themes} */ (/** @type {HTMLInputElement}*/ (e.target).value)]); +} + +// This is needed in Playwright. +Object.defineProperty(window, 'setTheme', { value: setTheme }); + +document.getElementById('theme-switch')?.addEventListener('change', changeTheme, false); +setTheme(themes['web-light']); + +export const parameters = { + layout: 'fullscreen', + controls: { expanded: true }, + viewMode: 'docs', + previewTabs: { + canvas: { hidden: true }, + }, + options: { + storySort: { + method: 'alphabetical', + order: ['Concepts', ['Introduction', 'Developer', ['Quick Start']], 'Components', 'Theme'], + }, + }, + docs: { + source: { + // To get around the inability to change Prettier options in the source addon, this transform function + // imports the standalone Prettier and uses it to format the source with the desired options. + transform(/** @type {string} */ src, /** @type {import('@storybook/html').StoryContext} */ storyContext) { + if (!src) { + const fragment = storyContext.originalStoryFn(storyContext.allArgs, storyContext); + if (!(fragment instanceof DocumentFragment) && !(fragment instanceof HTMLElement)) { + return; + } + + const div = document.createElement('div'); + div.append(fragment); + src = div.innerHTML; + } + + src = src.replace(FAST_EXPRESSION_COMMENTS, ''); // remove comments + src = src.replace(/=""/g, ''); // remove values for boolean attributes + src = prettier.format(src, { + htmlWhitespaceSensitivity: 'ignore', + parser: 'html', + plugins: [prettierPluginHTML], + }); + return src; + }, + }, + theme: webcomponentsTheme, // override the default Storybook theme with a custom fluent theme + }, +}; diff --git a/packages/charts/chart-web-components/.storybook/theme.mjs b/packages/charts/chart-web-components/.storybook/theme.mjs new file mode 100644 index 0000000000000..515891480e7a6 --- /dev/null +++ b/packages/charts/chart-web-components/.storybook/theme.mjs @@ -0,0 +1,34 @@ +import { create } from '@storybook/theming'; + +export default create({ + base: 'light', + brandTitle: 'Fluent UI\nChart Web Components', + brandUrl: 'https://github.com/microsoft/fluentui', + + // Toolbar default and active colors + barSelectedColor: '#0078d4', // use msft primary blue default + barTextColor: '#222', + + colorPrimary: '#dedede', + colorSecondary: 'deepskyblue', + + // UI + appBg: '#ffffff', + appContentBg: '#ffffff', + appBorderColor: '#e0e0e0', // use msft gray + appBorderRadius: 4, + + // Typography + fontBase: + '"Segoe UI", "Segoe UI Web (West European)", -apple-system, BlinkMacSystemFont, Roboto, "Helvetica Neue", sans-serif;', + fontCode: 'monospace', + + // Text colors + textColor: '#11100f', + textInverseColor: '#0078d4', // use msft primary blue default + + // Form colors + inputBg: 'white', + inputTextColor: 'black', + inputBorderRadius: 4, +}); diff --git a/packages/charts/chart-web-components/.storybook/tsconfig.json b/packages/charts/chart-web-components/.storybook/tsconfig.json new file mode 100644 index 0000000000000..78905f4f65971 --- /dev/null +++ b/packages/charts/chart-web-components/.storybook/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "allowJs": true, + "checkJs": true, + "noEmit": true, + "types": ["node"] + }, + "include": ["*", "../public", "../src/**/*.stories.*"] +} diff --git a/packages/charts/chart-web-components/README.md b/packages/charts/chart-web-components/README.md new file mode 100644 index 0000000000000..2d2f25a91b965 --- /dev/null +++ b/packages/charts/chart-web-components/README.md @@ -0,0 +1,92 @@ +# Fluent UI Chart Web Components + +[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) +[![npm version](https://img.shields.io/npm/v/@fluentui/web-components/beta?style=flat-square)](https://www.npmjs.com/package/@fluentui/web-components/v/beta) + +Microsoft's [Fluent UI Web Components](https://github.com/microsoft/fluentui/tree/master/packages/web-components) is designed to help you build web apps using Web Components styled with the [Fluent design language](https://github.com/microsoft/fluentui). + +## Installation + +## Install + +Fluent UI should be installed as a `dependency` of your app. + +**Yarn** + +```sh +yarn add @fluentui/web-components@beta +``` + +**NPM** + +```sh +npm i @fluentui/web-components@beta +``` + +**pnpm** + +```sh +pnpm add @fluentui/web-components@beta +``` + +### From CDN + +A pre-bundled script that contains all APIs needed to use FAST Foundation is available on CDN. You can use this script by adding [`type="module"`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules) to the script element and then importing from the CDN. + +```html + + + + + + + +``` + +The above CDN location points to the latest Beta release of `@fluentui/web-components`. It is advised that when you deploy your site or app, you import the specific version you have developed and tested with. + +For simplicity, examples throughout the documentation will assume the library has been installed from NPM, but you can always replace the import location with the CDN URL. + +## Setup + +Fluent UI Web Components are styled using tokens in the form of CSS variables. You can use the `setTheme` utility to provide a theme for your website or application. + +```js +import { setTheme } from '@fluentui/web-components'; +import { webLightTheme } from '@fluentui/tokens'; + +setTheme(webLightTheme); +``` + +## Usage + +That's it. You can now use Fluent UI Web Components in your app. + +**Importing the defined component:** + +```js +import '@fluentui/web-components/button.js'; +``` + +**Defining the element yourself using named imports:** + +```js +import { ButtonDefinition, FluentDesignSystem } from '@fluentui/web-components'; + +ButtonDefinition.define(FluentDesignSystem.registry); +``` + +## Development + +To start the component development environment, run `yarn start`. + +### Known issue with Storybook site hot-reloading during development + +Storybook will watch modules for changes and hot-reload the module when necessary. This is usually great but poses a problem when the module being hot-reloaded defines a custom element. A custom element name can only be defined by the `CustomElementsRegistry` once, so reloading a module that defines a custom element will attempt to re-register the custom element name, throwing an error because the name has already been defined. This error will manifest with the following message: +`Failed to execute 'define' on 'CustomElementRegistry': the name "my-custom-element-name" has already been used with this registry` + +This is a known issue and will indicate that you need to refresh the page. We're working on surfacing a more instructive error message for this case. + +## Testing + +When testing locally, start the dev server and in a separate terminal window, run `yarn test:dev` within the web-components folder. diff --git a/packages/charts/chart-web-components/api-extractor.json b/packages/charts/chart-web-components/api-extractor.json new file mode 100644 index 0000000000000..146de64b6d95e --- /dev/null +++ b/packages/charts/chart-web-components/api-extractor.json @@ -0,0 +1,35 @@ +{ + "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", + + "mainEntryPointFilePath": "/dist/dts/index.d.ts", + + "apiReport": { + "enabled": true, + "reportFolder": "/docs", + "reportFileName": "api-report.md" + }, + + "docModel": { + "enabled": true, + "apiJsonFilePath": "/dist/chart-web-components.api.json" + }, + "dtsRollup": { + "enabled": true + }, + "compiler": { + "skipLibCheck": false, + "tsconfigFilePath": "./tsconfig.api-extractor.json" + }, + "messages": { + "extractorMessageReporting": { + "ae-missing-release-tag": { + "logLevel": "none", + "addToApiReportFile": true + }, + "ae-different-release-tags": { + "logLevel": "none", + "addToApiReportFile": true + } + } + } +} diff --git a/packages/charts/chart-web-components/docs/api-report.md b/packages/charts/chart-web-components/docs/api-report.md new file mode 100644 index 0000000000000..c51d51059a655 --- /dev/null +++ b/packages/charts/chart-web-components/docs/api-report.md @@ -0,0 +1,148 @@ +## API Report File for "@fluentui/chart-web-components" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +import { ElementStyles } from '@microsoft/fast-element'; +import { ElementViewTemplate } from '@microsoft/fast-element'; +import { FASTElement } from '@microsoft/fast-element'; +import { FASTElementDefinition } from '@microsoft/fast-element'; +import { Selection as Selection_2 } from 'd3-selection'; + +// Warning: (ae-missing-release-tag) "DonutChart" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export class DonutChart extends FASTElement { + // (undocumented) + activeLegend: string; + // (undocumented) + activeLegendChanged: (oldValue: string, newValue: string) => void; + // (undocumented) + chartWrapper: HTMLDivElement; + // (undocumented) + connectedCallback(): void; + // Warning: (ae-forgotten-export) The symbol "ChartProps_2" needs to be exported by the entry point index.d.ts + // + // (undocumented) + data: ChartProps_2; + // (undocumented) + getLegends: () => Legend[]; + // (undocumented) + group: SVGGElement; + // (undocumented) + handleLegendClick: (legendTitle: string) => void; + // (undocumented) + handleLegendMouseoutAndBlur: () => void; + // (undocumented) + handleLegendMouseoverAndFocus: (legendTitle: string) => void; + // (undocumented) + height: number; + // (undocumented) + hideLegends?: boolean; + // (undocumented) + hideTooltip?: boolean; + // (undocumented) + innerRadius: number; + // (undocumented) + isLegendSelected: boolean; + // Warning: (ae-forgotten-export) The symbol "Legend" needs to be exported by the entry point index.d.ts + // + // (undocumented) + legends: Legend[]; + // (undocumented) + rootDiv: HTMLDivElement; + // (undocumented) + tooltipProps: { + isVisible: boolean; + legend: string; + yValue: string; + color: string; + xPos: number; + yPos: number; + }; + // (undocumented) + valueInsideDonut?: string; + // (undocumented) + width: number; +} + +// @public (undocumented) +export const DonutChartDefinition: FASTElementDefinition; + +// @public +export const DonutChartStyles: ElementStyles; + +// Warning: (ae-internal-missing-underscore) The name "DonutChartTemplate" should be prefixed with an underscore because the declaration is marked as @internal +// +// @internal (undocumented) +export const DonutChartTemplate: ElementViewTemplate; + +// @public +export class HorizontalBarChart extends FASTElement { + constructor(); + // (undocumented) + activeLegend: string; + // (undocumented) + activeLegendChanged: (oldValue: string, newValue: string) => void; + // (undocumented) + chartContainer: HTMLDivElement; + // (undocumented) + connectedCallback(): void; + // (undocumented) + _createBarsAndLegends(data: ChartProps, barNo?: number): Selection_2; + // Warning: (ae-forgotten-export) The symbol "ChartProps" needs to be exported by the entry point index.d.ts + // + // (undocumented) + data: ChartProps[]; + // (undocumented) + handleLegendClick: (legendTitle: string) => void; + // (undocumented) + handleLegendMouseoutAndBlur: () => void; + // (undocumented) + handleLegendMouseoverAndFocus: (legendTitle: string) => void; + // (undocumented) + hideLegends?: boolean; + // (undocumented) + hideRatio: boolean; + // (undocumented) + hideTooltip?: boolean; + // (undocumented) + isLegendSelected: boolean; + _isRTL: boolean; + // (undocumented) + renderChart(): void; + // (undocumented) + rootDiv: HTMLDivElement; + // (undocumented) + tooltipProps: { + isVisible: boolean; + legend: string; + yValue: string; + color: string; + xPos: number; + yPos: number; + }; + get type(): 'horizontalbarchart'; + // Warning: (ae-forgotten-export) The symbol "ChartDataPoint" needs to be exported by the entry point index.d.ts + // + // (undocumented) + uniqueLegends: ChartDataPoint[]; + // Warning: (ae-forgotten-export) The symbol "Variant" needs to be exported by the entry point index.d.ts + variant: Variant; +} + +// @public +export const HorizontalBarChartDefinition: FASTElementDefinition; + +// @public +export const HorizontalBarChartStyles: ElementStyles; + +// Warning: (ae-internal-missing-underscore) The name "HorizontalBarChartTemplate" should be prefixed with an underscore because the declaration is marked as @internal +// +// @internal (undocumented) +export const HorizontalBarChartTemplate: ElementViewTemplate; + +// (No @packageDocumentation comment for this package) + +``` diff --git a/packages/charts/chart-web-components/package.json b/packages/charts/chart-web-components/package.json new file mode 100644 index 0000000000000..f309235c412b5 --- /dev/null +++ b/packages/charts/chart-web-components/package.json @@ -0,0 +1,120 @@ +{ + "name": "@fluentui/chart-web-components", + "description": "A library of Fluent Chart Web Components", + "version": "0.0.0-alpha.1", + "author": { + "name": "Microsoft" + }, + "license": "MIT", + "repository": { + "type": "git", + "url": "https://github.com/microsoft/fluentui/tree/master/packages/charts/chart-web-components" + }, + "bugs": { + "url": "https://github.com/Microsoft/fluentui/issues/new/choose" + }, + "type": "module", + "main": "dist/esm/index.js", + "types": "dist/chart-web-components.d.ts", + "unpkg": "dist/chart-web-components.min.js", + "files": [ + "*.md", + "dist/dts/", + "dist/esm/", + "dist/*.js", + "dist/*.d.ts" + ], + "exports": { + ".": { + "types": "./dist/dts/index.d.ts", + "default": "./dist/esm/index.js" + }, + "./utilities.js": { + "types": "./dist/dts/utils/index.d.ts", + "default": "./dist/esm/utils/index.js" + }, + "./*/define.js": { + "types": "./dist/dts/*/*.define.d.ts", + "default": "./dist/esm/*/*.define.js" + }, + "./*/definition.js": { + "types": "./dist/dts/*/*.definition.d.ts", + "default": "./dist/esm/*/*.definition.js" + }, + "./*/options.js": { + "types": "./dist/dts/*/*.options.d.ts", + "default": "./dist/esm/*/*.options.js" + }, + "./*/styles.js": { + "types": "./dist/dts/*/*.styles.d.ts", + "default": "./dist/esm/*/*.styles.js" + }, + "./*/template.js": { + "types": "./dist/dts/*/*.template.d.ts", + "default": "./dist/esm/*/*.template.js" + }, + "./*/index.js": { + "types": "./dist/dts/*/index.d.ts", + "default": "./dist/esm/*/index.js" + }, + "./*.js": { + "types": "./dist/dts/*/define.d.ts", + "default": "./dist/esm/*/define.js" + }, + "./package.json": "./package.json" + }, + "sideEffects": [ + "./dist/esm/**/define.js", + "./dist/chart-web-components.js", + "./dist/chart-web-components.min.js" + ], + "scripts": { + "verify-packaging": "node ./scripts/verify-packaging", + "type-check": "node ./scripts/type-check", + "benchmark": "yarn clean && yarn compile:benchmark && yarn compile && node ./scripts/run-benchmarks", + "compile": "node ./scripts/compile", + "compile:benchmark": "rollup -c rollup.bench.js", + "clean": "node ./scripts/clean dist", + "generate-api": "api-extractor run --local", + "build": "yarn compile && yarn rollup -c && yarn generate-api", + "lint": "eslint . --ext .ts", + "lint:fix": "eslint . --ext .ts --fix", + "format": "prettier -w src/**/*.{ts,html} --ignore-path ../../.prettierignore", + "format:check": "yarn format -c", + "code-style": "yarn format:check && yarn lint", + "start": "yarn start-storybook -p 6006 --docs", + "start-storybook": "storybook dev", + "build-storybook": "storybook build -o ./dist/storybook --docs", + "e2e": "playwright test", + "test:dev": "playwright test" + }, + "devDependencies": { + "@microsoft/fast-element": "2.0.0", + "@tensile-perf/web-components": "~0.2.0", + "@storybook/html": "7.6.20", + "@storybook/html-webpack5": "7.6.20", + "chromedriver": "^125.0.0" + }, + "dependencies": { + "@microsoft/fast-web-utilities": "^6.0.0", + "@fluentui/tokens": "1.0.0-alpha.18", + "@fluentui/web-components": "3.0.0-beta.72", + "@types/d3-selection": "^3.0.0", + "@types/d3-shape": "^3.0.0", + "d3-selection": "^3.0.0", + "d3-shape": "^3.0.0", + "tabbable": "^6.2.0", + "tslib": "^2.1.0" + }, + "peerDependencies": { + "@microsoft/fast-element": "^2.0.0-beta.26 || ^2.0.0" + }, + "beachball": { + "disallowedChangeTypes": [ + "major", + "minor", + "patch" + ], + "tag": "beta" + } +} diff --git a/packages/charts/chart-web-components/playwright.config.ts b/packages/charts/chart-web-components/playwright.config.ts new file mode 100644 index 0000000000000..0b2718305e1ca --- /dev/null +++ b/packages/charts/chart-web-components/playwright.config.ts @@ -0,0 +1,41 @@ +import type { PlaywrightTestConfig } from '@playwright/test'; +import { devices } from '@playwright/test'; + +const config: PlaywrightTestConfig = { + reporter: 'list', + retries: 3, + fullyParallel: process.env.CI ? false : true, + timeout: process.env.CI ? 10000 : 30000, + use: { + baseURL: 'http://localhost:6006/iframe.html', + viewport: { + height: 720, + width: 1280, + }, + }, + projects: [ + { + name: 'chromium', + use: { ...devices['Desktop Chrome'] }, + testMatch: /.*\.spec\.ts$/, + }, + { + name: 'firefox', + use: { ...devices['Desktop Firefox'] }, + testMatch: [/set-theme\.spec\.ts$/], + }, + { + name: 'webkit', + use: { ...devices['Desktop Safari'] }, + testMatch: [/set-theme\.spec\.ts$/], + }, + ], + webServer: { + // double-quotes are required for Windows + command: `node -e "import('express').then(({ default: e }) => e().use(e.static('./dist/storybook')).listen(6006))"`, + port: 6006, + reuseExistingServer: process.env.CI ? false : true, + }, +}; + +export default config; diff --git a/packages/charts/chart-web-components/project.json b/packages/charts/chart-web-components/project.json new file mode 100644 index 0000000000000..023ee8ab08c97 --- /dev/null +++ b/packages/charts/chart-web-components/project.json @@ -0,0 +1,10 @@ +{ + "name": "chart-web-components", + "$schema": "../../../node_modules/nx/schemas/project-schema.json", + "projectType": "library", + "implicitDependencies": [], + "tags": ["platform:web", "web-components"], + "targets": { + "e2e": { "dependsOn": ["build-storybook"] } + } +} diff --git a/packages/charts/chart-web-components/public/100x100.png b/packages/charts/chart-web-components/public/100x100.png new file mode 100644 index 0000000000000000000000000000000000000000..9f5afbe735685b93ed86f279f3512f89050b27cc GIT binary patch literal 1070 zcmeAS@N?(olHy`uVBq!ia0vp^DImV1D80;uum9 z_jY=ux3;55i~pU%+5i!y6&)H`cc%aUzi!9-CTS`0kSj-A9t*8xW)l)kyO8p#Xtm;r zuiutr@5^6R-J`3g_sqAs&B4bhBc?)t^Wi5&#S}Xg7pEH>6P{j_R8mY~Iq_(PqL7nY zgHE5+Ky&}^p0Itp`RaA+{xv;Zet-Y|{n0vNpU>yJPswIK8+WlS#Ypn@jT;*}J2_Xc zU;n*l`}XZ+6%`o`p~1n)ix)5cSO2r--nQ-Ab?5s1-m`9<-s`t-d8^{%pSkWVn{h!@ zc+=Lcsr~)^e7}M@RCIK8E#JI*mv{T_T~iaKi5@pjp6rZ`jlKEf#|~Rt+neXk_4W4j zL=+bnKm1o<`|SF)Yro!q$nUwtHZA$B!GyzS*3Ovl`Ezk~W#z{1?(U`uyLVgPzI}W1 z%$bty6~)EL?Ck7j=H}_ESFgTyC>mL-Msnok=^m9PnXKd%kS3Ml9ifz z^y#-RUqlQwj^9dDXrCEvsL1j4&!0C7?4>99sPWFfc{B3-oU>`UwY7KE)YWrybI(5d zxTD_S!xZOR7cK-`{F|GX_v`z$t5++XKis|FTeL=&t>nVaiCmV}*2XqZFJHbq&wTpn zpTTyfrcdn)(-w$I+}N~g)vBC=f(ct(8 z)(0!&A|f{I+h^C_EB0W5oV4`j#fz2enGb&}t*_7j{rk6>jZKcOu5N4f;jb3aQqt0U zZ3Vi@YQIOt?n?bz_I5$T;d9*~9ETq9SlZftz0=TTu9IWEe*OBoz6a`V?(Xehzke6M zD<3x7oP)&50JbzH57B@TR8GM!K6OU2rw_cfkM z1g`sg_iq4)Ci{!}uhyz9XXdnca7Z$4vdHRanINdpy|`^~aXDsA;Qy%}XjiiBrXH{W OVDNPHb6Mw<&;$S-hvyIg literal 0 HcmV?d00001 diff --git a/packages/charts/chart-web-components/public/150x150.png b/packages/charts/chart-web-components/public/150x150.png new file mode 100644 index 0000000000000000000000000000000000000000..aabcb44e6c3300d0e6ec722909ef5131e4e99afb GIT binary patch literal 2186 zcmeHJ`&$x*8b-^_G|I^Ah?m^d%))DyVQNY`Zz-n5NCg`k2MVwYGN&k(9aGXYD>XIc zXkJEg^@0f#o3WgfwnAW{WQuqJ%ayadGxuNYdCvLa``(}4_lNg=zUTeuu`yvlGq4!| z002gWhs14Q+23RO*~a!ax-`B4M&!6K7=SZiI|BfihD3w}pZWp)wgOkYGs+^A+6TpL zhMb((w`gGWK@0Aa2YB#~hJ^mg3ibXIU#!fuwZVQ@9;!Krdq`C|y1;8}4{SAE#Tq;2 zFO<{cIG`X%Ncb05kgiDA8^|NKU;us`FV2#G(IFRrX*k=k4>J~IW+aLHIr5~W=c=V~ zerZl=U4HH+*Uc6OOb&$ZF#kNx)B$0Jxbdacwt9;omLUdt|djWQHe(FWJN3wVo(ecUuwC0zB-J!na*LAZaovqLBd1;Ep zvhKy-9v3u-P_Un}Rs^S6pKrIn8&+&zI@F3YD0T=)!w8QYi9dPrM3<)!FBPZHH~vT^ zz5c0_mDK5-+g@}@^YmuM>S2CrD}H*#Coko?TcTjFyyjRoI%QOhYK*QzltIqKg%0+6 z5frSJY{UBUvP02TEBzodo}y}bsoS5a2 z*ps|O?oG;_#LyLE zD0AuZ(jQ~Tt?lgGnh|Vp2v-_Z(BK*qD?j(TJ9|{ccTaj0+xGFu<%w{YHwC*r6r!ZG z#rsh5Q}W(-;;a?vNGI7PQ#_>gL8Xj5;)^fbepsYy2husrD9why3zO5kqNd1NX=y?S z!LQ8!Hh!!p7pvr;Gpe=jpa`4RCd{LNsv?P3Ifd_N zl=ex_F~NmVbeTJ9d3b@Z(E;hTwJ-2KM}PfpHv)B%lJSc-)Tu4ScI{k7Vn>R4agb=u zHd(+u`A_`%o1d>;o0gwVgA^lsi}!H7qN9!7I%f?z9A*r`+D$zVOz1~?u|?S_{lQQ;>ref5;u#wU|tI78M?UjB1NRa;@Ua;rHC641^(c<$2hi0q|a z<><{Pme8hutKDMrKv3*6lo2s(w{a!x?K{9a&_hku^EpryOusS|ST%OCL*9cP27~5)xjoRkahaFY7`n#|Rd^vG80$9+m*wMAUz|=>mb-PEeKsZ4M9KQ($!4?vQ-< z;mk8BK-9&Ejo_=F9TZAl3E?g0)wu4xzkkKkMSkDK8E~RIw`!eAC!{0S=I;-GS5a&A z%`HJ#{0u!pmUo@xh>zqqK}pxoM}J&=uMq-y6uqJ)bLj)(D=EI(aVhm1c`%Eb z-XwA76TyleR8N$>9lXc)Xh}r<9Lpwrs)>n~{dYqD30Frm(JimW(&d7Sig852#ema8 z7DP8yRidfj-T9npl*ngPCSy3g!ms<(yFde8Mr3t2@Ei{` z&ev)}_J;%bIgj&KOdZOKcQPG}Bxc5r@BUBvM;T!-a=)={VuASpyzyKBB0^(AIIy!h Fe*vuE`quye literal 0 HcmV?d00001 diff --git a/packages/charts/chart-web-components/public/200x100.png b/packages/charts/chart-web-components/public/200x100.png new file mode 100644 index 0000000000000000000000000000000000000000..8d74b825c22907f76b51afd227bf4721290e248a GIT binary patch literal 2194 zcmds(>08p<7RLd@ICKmj=OL40rZ*BbPwFu*sDOgC@ zCH(xk_KMeK2pm>YE>R)q?d#Y?f8M4S#PV23@;eT9Mln}OSyi}4d8_EOJvhX4&~9~er5KwjZ0WUm%N zAeFX;QASrV)IV^|Jz7o}>OG!@jwT!?shQ?l5Cn&1>&<`oXbuK1tB=8(Y{6j1s^ZR) ze<3j?>Uh8Vr;wOIO5Ou$=%Lg+^V7q6&_h;*B>s&GDu|qWEy<&b3i=;R{#^XS`+6Vl z93#wcp)<;Fq{JxmRB1s0%rtf%_IvQiuT8gb+GXecF^FCeCvd2xLW#s*oFpYnXS2cvrG@7kF+ZOh-*#Y~v1X~j6a%kFaSODkt zk;$dEC=7LFwk3o+^gyS@uPGIwa&9836dJp;+~*FZ_3sP6^!_*yX_|cnb};PxbW4bv zdpm{qFg&Pi`{U39?#qP3V=s*m4Q2ywx|w zT#;aVrv>fVny4Q#^=ff@zC)hCidBj8q5E4*cSeOLatHD>xqa#Kr7S0$0+q7GY1=c- zhblzYkCvOJcrr*4sKK$v*f&JHs*tAtB>%(9&)+uZ+)c)xidCY?h>IPB@MgFqa_=+u zl2-vX>saCL#9G=wPt~B7djrxH8fzN9YCDl)OCM4 zIfjmw7qej{0evAuLfPO|dHc?nwNYlAA84o6qe-KXe@>Ub&`FqF{dlz6p}a1p28Bsh z6tD-p;|HGKb{5ELIMlO zh-mQ7bs=61mY&cz!fM93D1QXzr@t@n+iyZO6Y}z_d)1T$dm@K4vZ-OqLW(-eg2zrSf$+n0V4()rf$zquq<8&h@vu$XHK zc5u4pL~8b zEdH~WWt2KR!08gtR|A`QT24Zap(K?LG=9?Bib0A=%oOITD0N_75-NoR#`P|GD*v=wMc8Cn5^Ig>+(LAjX$xPoKYx3W4P2St+>dfZfOzVcGL`OP9NC*alkr=iyM|UlE|VMjrj*Gm=wwV{`{!&Ez8+TP2Z_HZ)Jp7 zJC-JX-!7Veu*-8|#vVimqfknlE<884B9LM}vzlBg&vK~&arg2A+{M$=4N}Le+H)3D z!w=`;>jTSs?{A%dhjVYY;gyMcl8(e1XV7lt(?-oEeSPxcf}kDkPI@*~|LqH!oN>pl z1~j1a?db9I?jHI##=Zn_XsyYQ9pyX;68r;5wS8#q_)=DqD7AC>>`9|?#KZCnw`bdS zbmmjeg7x5JL!KV0o&nEpezdA^^XsR{7Nw>&E3|y^R=p3)()0TdN?fjK&^TS!Ku9zS z|LeqPjMll;ifDHo0bjb-Ip@Y}zBD6N&Q=;ZtUt^Yr2&u8bFex~g(Q_<{~~;1$oJAH zG$8g}-=foy*dgb~F{a)0GmMQtbya;U{e+GF^>h4v^$Z;oJs;Cv$m@pXEzPVe4MYiK z3_aWC+|X4iQFlJ^SR%5Y18FDoRezVI7X zySh7f-2C@>2FDJIr68^+A!OeMS4@N%g43%lu1z`a2(LxRMKL-#-{3Oe?0E7Ln z;0#Ezl1P$MeK#8LO1Ew#*8mJEj)sx|vbj6wW_kia<|a=6l@54S!~L#m~vrKL(Sq>Lsa5lbbO5=&9J)yCE;2DMCc6C;+6 zjx8%uv81*UbcnP{LQ&djib{wor6_K=_aC@F-}}os=Q+>wz0W!C_rCA*WqEqI0F`x= z0RRBd^{2}a06+#LJqIf(NY@K8z)tBVa}(m?0AM`Vn*#up*Ih4P@=6F;C=JQiwbe*( z3keMkW$<@)S|%+{Qw9c-u%G&W6+RE{eKI=1zRhSDw_4IWpMU*1>9m!d-8T1tdMZF( z`N*jZl%^+G-CSFgEYH4>a0^dH zM@A0t%4{ciBunbrqS=!0ncCWt(8YMN==Al~0C8gv0qZtCGj^uTVu*@!L zT!hgcy(_0!k__*uz1H!%C+Axnol=EhqSGfD!l6+XV0u;kSKuNQi=7!LO1?U-L)?8> z$KAO%ehR8o$A!OYf)TLt=-;E?QVtKbCvBS4wj{3Cg}@l0i}>#;a!DhZ zY6jaQCQ-v(_3wkpmSlAmo+`(Uc24^lulVdHoL72&bYbjCbzG{y&^KS-R#Z*!>1*in zyyZNpV?gz$$LU%{exZB88Gf-h-n1`tm_hNbGed6O7C-h0NE<72&}pqlC+&4P_tq=C z;KVDZXqRai;9M;wpOdNfbZ)qMl%jVrxpk)uc||IN#ho4LbsN*v07DL^QBBUMr-=CE zWUhx0<&vk@_gJ9NCmyX;L>8$W2Gx|7LdQZHF-a6I?alHGF9OfACl!QD_PA%jES7@< zci!&P@86w zGh&nh{3*kE;`qr&&OvDxQ?~V*FHb8KozdPCjK=;yN)B`S5u0~BKX+~n4wPN#%~V+2 zlB?;-bII5L4oPZ0e<&}=2g7oT`z(U3&G3qopI&AJCN@V+G=4UWe%)+-3ThMifDu&|%l6{zDo5~n zIe#3hMZB6z6<3=D!oub;v(HQ0LX_=-V|4IK<;)s37Kt7GVpdh@ZL*(L#~)G-8fEym zF{?gefsNdPo-PZBD)%A2l4z8l;;+K7p!{8jQwLK*$^~;I*X0AXgCn>*gT>!}rAmB3 zM5OyVyv?Ag;%h*AOwLOw0h6DmxljL6YdhXk2eS6T6gjSE?lTAd(GR>XCpHu$LC<=W zZ)J|l%^sVd0-8e3L1%zm2vuc2_8V3snUOv=^5E(FQZ#~C0%EZfC0E-NI2MfCDRF7~ zhP=S^iFp2rp-y%$lfO~Ww~lCzLDf#Y(m<(jUqFx;%js)t?cVPr#+>vvXga?v#@%x$ zuCLJA>!Z~p{F$9Yoplyd--xVgG&T3TWr7blEWgZNZ^NzaKjD5M`r!T;Ukuji;0ql$ zV>o=U(7dNEK6f`W7y~W~HmasKb0Zo*j?jI#{JQoL|89mC`*bzyLYio($4LKznh>%! zCqa0tmEDoES{DHUim#!gdG+$Ps;1?{2EU_c402u92{TxWrMHpibhQ@4&;Mio)!>tMkOzL)yZF&9-0j_)&VJucWI(EXpB8ozv$5kJ25^u;p|Y>ExV6@~GyV$TPFafX(zf!~ocLi+k3ToSi~k|`~x zHNFpv$je7<&L)x)BHR*m93xZRGnauAg?pv9hVK7%-~W=kewgmngkE@YG{&vnE{d|} zG|{Iqmn9ulQ|5^9kX*xhOSE}~J{qh0^|r9zP3=jjeA0cc#+jTNZ>XTJV#%(HA`Ahs z#?jVNSug%o_^O-Q+aSt&9$pNGNfr7qW0%yd7%f7?u6L!;+lX78_t`OVpNNo)e@z&6 zq(POtmZvOPwF}mN7ec#p%tDeyIvFk_-Jz8O)CWTlDv;Rhw{$Qgq3aUKeR9fbJtLg` z?=JIS*k$h~02wgI8SZ>VjlQE$ia;7$cF)?AKUaDqE0@0Fhg~_R`-%zO*Y_=0vE*Rv?pmB^pX4Q8zLP{8)3lYLV3Bn zx6PLQlb=bydaXe&4h^ZIMXQIwbgPh)mV3&E+@1lQ%^={-#?@0(f0R+>Y8a!{Q|&#Z z^N|NT%n=}4B^{ZdCBIw($Xb6Bh_Ie}43ts&?Ov?6rfz$>o z?uNjx=D*jL56I8#RNDM-fhU;m+5G*|5uR|Vs`zXINKRhDE} zbjfYXe^hrvF5lGI1A!+bfFgDQzyx@D0;u?!+g|_x41SE+1cFPzV2AzLj++J{@EnCr zc@YYMmwdkTpH0njUo`+A=&p{OoNIHT>ZWGJ-GWV^;w2@;6rI!Qn=S#aZTsok&t3cf z##-%t&&ebMx`%Y}lgq{omrO)9n2X;nlwf}h`r&zDVxk|;GdH3|z4UFDd6<|#Swuqe zChESD@Ur@~RRL+)N+4!zAai3Uvf@ao8+nm!+MQN{6DE`&t3oRO$|`oMxTvDba+%w2 zCdhdk++Xrte1#yT9DzF%=vL7)pQn}v{j5bH6|^72{r&EKwC{?TJ+aF?tUDhk5eCqF zxRrHZpY(qt`q8l`OSJ*3t5f$?tURD_N9bt8T(g>3h}Tb}rPuu{n66|XrE{%Xhg7WZ z;yOp-ZkOh!T8}(us7UvF5p)jHVN}YmiHY}426*ALRa+}r-c zN)TY+7r)d$RZbl#vFccC^~LgPqQ1N0-S?K70>vhA{m+$^v1E5G+=~C)?-N^D_FD0j zHbybQzof%u+^;w%dN{Ono7SCM=^M`JTqv-;m_vzW^JZ?gUZEyT<5g^RM#m}W)uJ2> zcluZ69B<;|Q7lBoa`EHQ=Q1nL?w9zDIxvfY9+}x|q_Oxl$-ueRrR(6l`K-;jq(*cRr}VLVBymPOV(F%-9eLBk!GFa9EwcsGL*$rk}s9xK(9?u9#vw zoLC=XvCv_3NT50ac9?9+o2?V%#r<}y(t36LISrytOw_{F)!Bqi6-2S2#4;3ZY2cd5 z>#l`vYle8`bidha-+C&??VM8bgNeQ;6h3|YBw!^x?aZ zq>kZN7pj9Eb`@6Z!3*`hfCF8aVx=BA#Obm--i}BNoLX>HE8p=p;B(j~R~``2xTUt^ zl^VP@kWJ@&!snuX6IkEM>X{Moz~=`x=YMdko;L#3YZ_c6@RYs`r1;U`W$HPw*l zz<1eOYf_0ye}h?X0)7u!+2J6o)q`6B`PDBGGw?nzPtSDNU*XX9JAQG(nz7UE)Neks zE#HcZ@`g<`qT2PSW%D_0wS?H`J92lnYht-o4YN(#sh9O+mY8ki^q_i=;Gx-C0*tXk z6S|@rG`$hz5l##?G~8zZ>lS&Jiv0*S(!n)2}l(w%vBe0Jb`blp>96?!1P6^h-1$@`V< z!`e(8pQSscUDW9p1Q7e9Uud-zfKja&m^#X#{B8!8%7dBVa=4KIR4iDV< za(7#hiRTMqn=ddDj7VG#(S9u7JbOt0z-~wqTh^$YRoC_Knnwjgwnp1;PEPt-2utbB zJ)@tKZ29B!jDjvtbKEGe1F5_+Bh?Mh4Az_PXs#O%6&*s=`SUkO zQdaII5hxKFq?GH66uX+YaFxFO9fH!?^UCRwsbWz`^H2xmHY5 z&t{5jqR|-cXp6|o>;f-wUA>^EWD`CIPqT5Aq~Od2Px5|0a?*NE?ITW_jTye19;h`K zI2D^6;h`^GzrrD2xkVP{r^-;|^4$DQy#m|NUqarU#e^oL>6?4*Pw)Q&gP6ExsA8x) zRwbGHjH~TDF~nt$-Xy^)eP$8^iRm89Xh-I)RmrT>n+$tt5k<-`HQO#XaeLsV$tjZ2 zt}{~KSEXI2<>acJzFW)UGIAzpc1+iXj|MwadP{OU$N|oQD7IrE*MCQQjQZ?e7mKRO zdh&uA`rTa1R5qG!R*~!LZdrb){o<7j<>bVn`DI<_#~U#t+W73Z*TO2U3!}4<*Ny15 zpZGOxQ{lj{wrypdl^H`HRdE+wDBtIG5JKLzhpH#h`{S9yHPbzQ%9$_rUm~k*=w&_T z4>ZR@44DCAgm^s~=EjYJc#eRw7AIPtpOVepco!uhQ`M%$SJsBrl@(JIZd)BSRy{nH z_`R@2M%?NU>QOe~Ej5KdlKaDJ)oA%lvp+SBZkbHnE*^fyL7u2XS=-urA{zq~QG@Z` zgD#nY(20JBu6ELZf(m!!wQmrxo@7SU$r$e+$b#rbM2FNjL8y7R*~+Gex3kJ zQHa5%jf7K#qm4ka-7XB6d~;D7(o$(OWc=?bBHehMz~9P#KA?vX{V>!ryzIqa>KIzK zc$Yb*#s6#9bc+R|$b?4rz<2l5cDe#bc4-ETCM888!%nUjW{nbbkMkB0m`!)fFq5Bg zllQU(YV*dDhO~@1{oJ$NN%DJ3n2`k{a3Rvw(+K-^y4bbhy9%en>YHcsJ6w==51;d3 zopuhM(DzU7dviDbJ*wqoj?(m;*k)Yb2pRNZJ9@aSq_7NiFoRs_Xz*~L?pbg9ZUKE; z7!6I%C;Mt0)s6C>w7kv~&j0MLzxKjXx?0@rDOLk z-Pn=WlzlPlDLzS}thLm#2+o+=zS@m&J!5NPF#a6+Y!g4y?nhmNAEB> zxybij5BF+9nE9k$6A4sYtV6?xuBXL@&cw6rObskLlneYl&E4OYCm~$=&?T6H-##H+ zxWU%*UqVFY(Z1$o3~H{DjD888pt~RTfg|t^897-)8UK$dF8uZt?VWz*dFU!85uA}% z`3u7dd&AmMjn^C2i8x-oru2vl&eD>r?Qi<{ zn69lHU0}rs%C6a3@<~y+O9s&f!jD`?dJv1e?xt;-d3s612A2`7@dWdz$`O0L+}+lx z{7s)>^kB<34J;N^rWB3m!ea1@ET=foD9?{3r~QKbq)z`;RZR+Xwq# znJtWSb%i=KM+-b>@f@#1VVtuu>%Qh%^zG2Cq9*@!1kSB8(tu|8dSa0^Rc~?2%*T$p zsHP;qp}K+E%Zgsu0%qMQRiFiiCtRR4jR6fl&N>`+7)x4fp@%Bnnv_@X;5vy}$PzOA6JmUrMD#wD{?mBSq!H|fM`t5;}nehl*)O-o>Uzzj)v z`|33OwDgVZqpC;~LU^QoN>Kr#9Wl7DCHoO=9`;rJzCrr>BM1G=)toymeQtyGFM~WP z?6hewPYRuBDmSMDH;pROE^-3z#c>qw*R*;oFCit30~cwXn?t0T?G1&aiPopmjEF&^ z%K7vOrwQCS`QKE|h$8cm_$!l%Z|14trOZMc?5K*`1ggAtytAS8Z_UzjD^K)P#T%*& zwX5_49_T&iBMoO%A-}S==xF6?}5f9FF>2IJ&%@wAgL z9mk8H#UEC^aM3B<$<|Z-NooAK>s<&9s(QMN9_mp=lvPBy1=ABiS?H*jRNXDC-odxQ z-+#v{Wh3*e&aqSnEV5HZi^$NiS)hO(xKhtyRevoL-G~sRN^`tGCzkC9ZnmBrWOP0I zALA-oAB7^Vg$`LRVz=9eU)Zj=JGj;AF4#ezqD1b94?rE+I~*%-@gWsjH^v?!KUGS8 zS733RGM{57!&)5?Pqz8Ouh@K3e|!L|iC8YD3YV~G%Mnq`76%wY4k(sQX(QE2W+oe zK}AGF(}e3SiM_%R|4PLn`5+(=$m#^xuoZXCgeP@aeEF?Ox5>M6e!X5^V+Rb%~W_EKMoCRH+gZS2s|x9>y?A{PhWc^FEG zNvOn&h-pdYSzFwaLmL0P{Uj?Y_Tu!vW(j9m6_uNV&X+|*#Sf{d3=1tP@fJr!#h?lH z0P#Z>B0|Rlza4+W^P3d^x2X^=RrMDhycMvvRKwa?x6XEdI5#6$V^qdAE5~k3%*L|f zcDHBfdW_LL^!kuZoPS=JHP@{D$S#kz8{EKOroLngwiYULDLtTtS%ppB`)>{=gUE*s zUkMDn`A%&o%VXzfcJ~8zevL726p6pXb>5(=hjx!ZEM^o?VXf@KxP}L-t;g^bZv8^V zh#RuopmY%*@L^|bAy=ni<1X19#M7$$5RPm;a$6DQXE5C?V?O$U+wYnip+S;ct=;&M zj9+xL+4R?%kOLRSZq3aIPaNOelKq9K{J7qsZr7zl6ObSLNKz-b)vx97IkdR70oo4g zD|#bFws=|ljLKNuqSfPXjRLm$?og5UaYB{Y&tXJmux_#oj2SkDWSEs&HxdI)cLi&d z{2yPQlvXx8L~e5jbPP)Q3%bXnH>a~5SJ2@#`@g{<@T zDL+~XD6TDC;Q`w!bW~K}RL*Xyqko!%ms`I?2W)i^tfiMgU9Ly0)zG$s2|j*?j%M86 zdE5oVhVOq%;|h>(vK_&jK5JcCmCiIjK^Si=inAZ?mv$(Q<2oabq45Btv1l=713nVA zu}tNJjK}hqei+#8naYnEADRk%qjoKenB9zGSlHTO!L<(U*eW&SH}m(NlkRaG5|=)Vm|^@Zl&vd$c-71TD3?w{zp z?J@R9u-dL}s=jbic;MRC7c13M^@iioFE!34Q459LPAMjM_*V(h=V;d?Hd(uVw#EP} z5!`=7H(EooNBbRmBHolV+qdFS2U)!b#?&X3{~ z=Jd&j>JfjTlHxOWEb-B!F`SPX$pf5^yz!@LDW6sGrcnBq9JvxZ?K&UiNN~*&bQ(wq z@RTH{rqrRPXEX>mPEnhZ#V5`B$FqU2{rh#b+i^-J zAxh`Yobm!YPjD=s2JM2yi_psXo?aMLF4@mbpBt0-!b7-vVagZ|z0$o+4oUwq^mbI3kh#)2AMRJ&TjiB0W$Jb_UDSi4 zD|}|Mzuds++^ya=^r}Ly`>4qqud{@Op`oLA&`l~1um=?EdFSpfZHHSqxkK9sQXX+# z=jEAiHzM4Na8IAob#l_mq;_+C4&aMM2m?o=J40!ilD+7`G|&`DG(8LVJym& zK22DNkZ%reK47TmJDUk=h3lm;uU=4MoA0dRTRFFLlzik1zHU@!`WYjbVXyo^d|VD? z;7p8m8-QAu0oT`lr>a*%7r_GPXFz;K4)kF=9iyu%49;?}KyR)Wf0O+*byXD>fRVOo}J0Qn&;_wMMz zl#7>oE}b9qKGz(u>^{PZ@_m=kxUrF0^6@Yh7T@!*_kOuL<&%N*NN2~%WLM1nM;~l) z)J_Lpur1kYM^~?Nzt+Y5yk}Ncy5960r@iNpq?>V!p(P$jh&gV=w*2NlBkCy`z~ZHj zsPg#C%LnGv$QB>pXOfHBRN2sHz{pC4F@kObBwqlf)(m7>8Pi&;2W!te@q^p$)~#=1 z>l-o~vtqK3XEovMmL#(GAB;?j`@G}6RZ!vT5FZcp=VIY5Qqn0-`U6r|OTO9Oawfkd z5EcPfvHHNt!EK}JLd4;-uJuNF3wmo1e{&$;=k5WHlT`CGZ(=-=`5HuBK3oq=mw21$ z-;HuwF!q)m9goRta$Td-@1)Pe&z1A3Gw43zSqqC3p-LoVGDK+`CaUSXq-OQhAd3VD z`-g@{oI$v;PhA5*~5%2RpCuz*EVLRJ)+_`NjrSU%N4DxOh{&KlW3<}|o7K>M2(mk3sVf%J& zMGmPF!47rgEST0YQVTDCCn<{PQIQ>)8zNTX@_6!npsxp^5#Q_N5l-ziQtKR3;^22de z$8q|HwQXT@6*}GJN7A4tIKzXnCC%MC35$L#0u;s`zVb^^{`d_g0t<2WPt;Z4?&0nR z`%<-^%`t7oi`-p24wof#$Y!5x*#=1dN%%E2wa@kFmS*D@9pIA8iVR_-$soLz-*w{sX? zYGm0BV-N)4xB0V?LEOzid+!kc2e#t6UERkdDMt0BnV^gkw8SQG>5hCh<{gCc&eGq~ z-WL?iGrXo$RJ$Idggo$Cert%`>@vyDihN$_W!(DweL)|Y#uj|%p~NNreKEMhRaG7k znV0@TDh>21T$`+v4e`ptp&6l6hu&_Gh4pT8NDf9+V^egM7#Oa1XFJD!OWnqEdG7xs2mYd<0~+m^7zHAx6r0L z#MG%Ax&&FPKGVG(t}}RKz3ajW7o=uZkhL9_$PO~U=UlI?bgwBKt3mqX1d>&<_Nf@` zpNk?T4uhpfktg>eSW&=vDiq@#7fB99%T9Eduvt(|bSOF+j@YU2eLWr`CO#z}c)Cg~ zeV|Zk8hC~BtMm~Gl|f=8e)2gy1y$})~8{9%0iZ3 zf|K%B*cyGm{Ey_ij~eA0G2PU3Y#uo(1rChhqfds|)U@nvQOW(XMtgJsZVZ|T$0uZMEe(%Og9QQ5#2 z2FjBdtX6I`1jjym(9%;P9#7h5>ySX6IY=FCeVy6ymJm3%1=k#M@qmO|IBde9P3EUt z1m)aTt`4^c7Z!G&cK?mc lZxZ}YkN?R^@O@XLUi}T+RR2E*g}T0o?G*>Bip!pV{})*v_mBVp literal 0 HcmV?d00001 diff --git a/packages/charts/chart-web-components/public/400x300.png b/packages/charts/chart-web-components/public/400x300.png new file mode 100644 index 0000000000000000000000000000000000000000..675c8ddc2580dabd385a0f2ccee0a5ecc2d276c0 GIT binary patch literal 6273 zcmeHM>0eU$_eayxCe5|`$GWXKV+@O*&H(YQ@L9}HuC%4?lm1zna z%rLiHktrvY6e-*lB_lylBv({WzSrNA-yiUO@O{#Q`#SgadEN6q=bn4c`<&OgX&2ob zly<7`1c5+Gju-4bKp>fH;5w$T9XJs*OuYw$49dgdEQr*r$pe87SUcLExqJsE7#G#f z{CjZwwR2!ah~ARAv5Ep&Dz)=Gt3*DWeO9Q~-!pSCC??jspw9M9kTBsCD%CM_Xj6hw zCl}P^^d>A&4U$K%DyV>=DgQX#MagwJoiH(grhx9gP61W_vULp2PXQ5cm_7o@$jZq* zicQ&)6>@SH_7|U#1N6Yq%57WnqCOZ}F}&*+KvzcQh8Ca*y8Ek)jK_ytDu9B5g38R6 zqQYfGh3sF=?{67|rd-{zCI57Srd+N*XupLl`>)j&fUK9S?2A8WU_e1d1w6Q=sPgw- z6|h&>_B{YH;F|Ie*M3CpN3Q)Sga48|tjq4(u70^s8-gcqNWX4=Pqhm(Zd?7zzabT~ zq)3*~PP#_tNEYcV$w~udeA8Okx>&(N*?dpc#tvf^X%=JjHQr0SIc1F&@fQC?T88Si zbXc(@w_U=tt@B^e8d%sCN4p!*@8s3Oq+0b)u%hOIx>tTFb+vX3_syj~cZ(|ExnN;J zyOKp1sb#L&3!j_OH5Nf3ug%ud4|m>dk6j+{jvzJjD`-vJvKIbEya`siA+ksY{IeK= z78HaXF`-Bn!Z*}lcdicvE!j-B@3vz~X5dmQ!HzRLv4rnU8C4HJ(agN=zG6YD^aY`6 zU;#QZQl6D8-QW}km5oSN*;zZ}yZj=^^;B37Lm&N1{CMn8T-J474kQBy$0p_4{ZawBv@sq7_W+(WXQ8D|GW-`XwBU#qdq~38mJYW9Pkh*k+uns1k{hTLqJAo|CaRml$bnOK z+kF4$u(Z^-rgI($-W&vxPcO83kuM@|uFo_`dk3fLhhSqEpyQz_u=EaeQM-)d5`Y$g z#v(#K3u|MQ)~6^q(ApF&YgQF?dir-Y*i#HeUnWOM4BuS9nNH|x{1sM-3QLMF(?zRT zM$FH5YUAhEn;;J?SQu0;d!4P%wLmsa70`ZD3s{ocO~nGq;&#Gijx3rGD1NIAr`q3} zEzK`jnyl$I9#bcnC@#pkraPex=hHlc0sG;!U~!V%1wSd@oqqlskW~|CPaM0IN<26gVDJmXAwuDEY6ERWr()o>*3}T1P_HC>? z>npjkp0ukd>F0bf)GC}aQ$>L>RS#fG zn?Qx5Z}3*JA*c`gy=U{ORa24>*g^s!<4UP+6rbwuL_VkhCWKK8&f~?M8(8l}t(&?qyjbKV6B*$R%4w^Cp{MrpP zkLgGi>8+sm{Hf;klR|b#v-vhukF{y+LxZ~7`R;@V^V^e*p$qHt%ZI#S2~#U%P5}ms zHOs>7(8fffKTjg5@{z>&R)on7s+pc;uT%(>U)>}{JT5d(Uhl(moQ`cK@zv0PKAo)7(@;wHI z{_LrhrN(K6l6GkuuMObg)uG#7)CFY+&N-KV<19MYr(5`stQyEY>~70#4V+?>^*&3j zb`loSX%pVEk^DElN~3u+bho2j30p4N;;AjRG5x zS3BxaR3bX9T3bK1Q}?kM3T zzS?eMrQ3|iodAioikfqqL`;jvM%&qAFY}aDr%X>iK4#kPdu&a)DT%gv96{<#qeoiu zHjtn3x!((AU)(pwWsY%=yWKh=z^;*$vKh|^B~N=5`2^?Sg8t+E3$_G!ClSr7nrU?i z?(h!QrPR%h&p16Rp%C8oH~N*68V;sTjneJDEfbH{j&-OSER+#cr`MAny{+~H#?kw+ z&tnc8F?fPHnb1(Fl8xYA5A2a zdE>;wvp}B3=zJ|AKDWLX1>NQTFHW}n)^@MpZOt5eiGNEuQukymi%3)zpzxkz5kV#= zk$tkPt(ZO_^i5)~0KGgj}^-b3ui)8&~PRY1_MR~NyT*`R~l?SnaV#!vfG!;fwx z8V7JAFBo!>#~abY5^btZvsvmFWujpqz~gf$Cv?tw(rvYLlmCN*=@;sG-7=6zS= zJ?{-=r*G3!+rwc(3rZx(0DHTmTNt~ZHPH>nci!aX&!U7737XejFu$rfSV8`ZaW!fm z;@GdvrDe1jsLpLth@zeke>NS7X_$_G-4?Y1wes8H*v(eCt2iblk#5g~h6l*WT=+Ej6T%w~}V{q*GvNEi8MR+SDTY2zqSRM+! zJZY*O-Kf{+l-i(hFgd?o#-nJkX=NB2e82eBFv?7fJnG60K<_2T5SHon2FGJ_KNg`Z zDE)l%SaklR3uI%H&>U4`+o@9-I4C5--=Vy%xDS?B@4AmnXS^)D)m|+6xTtrsCAhJY z?3H-5u0wdK`QTTE_?jTZP|Me9>Fj%tF=x?1jW#6a>h$T?Rs>>4JH%5Gjk!5#P~g-rFulQM{&ta z?TqmnGmM!^e?*`B*i>wl$!e(Mp4x@lfH4%SdRFThwdhHpra2NqT!OVyX=-_1I{CY0nq=8%W6Kp(*`; zZ=?re=RgM!tsmW}furyhHeI(R7Y63NID|l9sQLQ@C-^NDC0so>gfr^Z{1=w>^tnwT ztl0-abE#+KbJ%{1Ga_cu7h$NpT$gV(er?$@p$zTvI-q8cCd(W`fu^eEPw7d%AHGY- ztzx(E+y*X(I<*oq^Ih~Bmb5Ydm zm5hnuOZ11ox<=4M6OgPx{`o)HXslLENM0}59~i5~44jO8%2#|lcZ(Q8{i6Q|eyx~| zDP_!-HW_SA9Zt7IoP>2~RF1Qp8}`y!E8~|eQacuAlJ7)Y24*fOH+oJUw~5cDmo(># zzdwAOTB%M@an261T4GX{i0A}Yd4c1cNC$HAEznnbbIhKbL(7qqQ9wHn(+;<8yV==q zvXbPPQv0NPKaUXHF>)ajuapDtU-N=Bvu8*B-nrMu)3*Ip4zpIf=j{EOQE%5$EhaV6 z0}@gBo2L<`aUl`kU#y^mOA5Is?i=|NQ3Pv8n8!1S;svO*`^0a@Gtfr*duPvl)lwiLc4P)E0n4m=k7}xQcv87mXWDp@~=`B zvO!d}?#XQb+7q@tr$mH!gJLcWM+p+@XI-O_+Xjz~yy32CILv=9XY^^s*QeukZAnqA zXO)_Nbcg#Z`*`@3ALG7%U!;#dq`3G%z>M}-hj70LQvn`pmt@kWJyI&k5VUd{!bGPw zmQ&zz9TLm$pLLvIh`*i2xcy82-3#j)qKdb4ys$1}BtgN(D}T1wD| zwe&70#9zIxHx~#hwJo4#qUi6%<#@{8MdiQ@(%yfCD zgU^mm00t%jxmET&^xXZ{ef>@VbfyE97=!XeE z?c3V%*viXYz$bZ{0Xv!^V6x&EUEJF9tnX6+C#|>+0DGI;#$aes15^gMo%V$O0R9n* mA6fCEKz?w=|Bg1l+f7gNmIhdElfXX(kmGM|_N24d?)?WYT5_ZS literal 0 HcmV?d00001 diff --git a/packages/charts/chart-web-components/public/600x200.png b/packages/charts/chart-web-components/public/600x200.png new file mode 100644 index 0000000000000000000000000000000000000000..1e17b4ec1f0306c820d00d7208e5cf416142aae4 GIT binary patch literal 7498 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

JWzuYIh&r)@BvH(oGa zH2!P6WV~#=V!Ud+X1s2^VZ3R)WxQ>?gD=3mXS{EGV0>t-H$E~p7#|y-7@r!S8J`

xmhq2S>G`fT) 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

LF)0zFX$6J|gp1#0zAE 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%0A*oPnXbtmaHnc)-g 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ⅇ|sL;qo;oMv!6Znvp3(w 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

uLu(4O;^gy?H^qtZe8$_zXQaZT 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%0DGIlGi7NKJNx>mYA$ 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

(-hr*cvu% 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 z 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�aco7{o5h%sx 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

a<>1EP;{jc8(!Kii;I; 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%0DxNM)RSm2?5k% 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 ON)^VQz<8Ga>-ryC<7BY_ literal 0 HcmV?d00001 diff --git a/packages/charts/chart-web-components/public/favicon.png b/packages/charts/chart-web-components/public/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..bfe873eb228f98720fe0ed18c638daa13906958f GIT binary patch literal 17174 zcmeHOJ#Q015PgP|sUltJ%A8D-(o!TUkc{NQ1+uPjPZg!4M<`cP($XUeDk>yUiu?k8 z10_|E2qK~~GdH`@9=;55lyHgjMj7wN?OyiY%vw?RV_+}{(X$}` zkiRp}d#2#VM9RE@(KQaI zUnaWs7TXteX8N); ON)^VQz<8Ga>-ryC<7BY_ literal 0 HcmV?d00001 diff --git a/packages/charts/chart-web-components/public/shell.css b/packages/charts/chart-web-components/public/shell.css new file mode 100644 index 0000000000000..21dc2f875e590 --- /dev/null +++ b/packages/charts/chart-web-components/public/shell.css @@ -0,0 +1,82 @@ +/* This file should stay synchronized with the React v9 storybook styles. */ + +/* sidebar logo (Web Components uses text) */ +.sidebar-header > div:first-of-type { + font-size: 20px; + white-space: break-spaces; + margin-right: 0; +} + +/* remove sidebar shortcuts menu */ +.sidebar-header > div:last-child { + display: none; +} + +/* Add left side background color splash */ +/* colors become distracting in mobile layout so scoped to where sidebar is visible */ +@media (min-width: 600px) { + #storybook-root > div:before { + content: ''; + position: absolute; + top: -200px; + left: -200px; + width: 400px; + height: 400px; + background: #c989e8; + opacity: 0.5; + filter: blur(150px); + } + + /* Add right side background color splash */ + #storybook-root > div:after { + content: ''; + position: absolute; + top: -200px; + right: -200px; + width: 400px; + height: 400px; + background: #b3d4ff; + opacity: 0.5; + filter: blur(150px); + } +} + +/* Give sidebar a transparent white background to match design */ +.sidebar-container { + background: rgba(255, 255, 255, 0.6); +} + +/* remove background preventing color splash from showing */ +#storybook-preview-wrapper { + background: transparent; +} + +/* + * Set position fixed to create a layer and prevent iframe from jumping when content is + * larger than the viewport and the iframe itself + */ +[role='main'] { + position: fixed; + top: 0 !important; +} + +/* remove box shadow style from storybooks wrapper div */ +[role='main'] > div { + box-shadow: none; +} + +/* permanently hide toolbar so animation never appears on page load */ +[role='main'] .os-host { + display: none; +} + +/* stop offset from changing page dimensions when 't' is pressed and toolbar opened */ +[role='main'] > div > div > div { + top: 0 !important; + height: 100% !important; +} + +/* Remove 'Published on Chromatic' banner */ +#back-to-chromatic { + display: none !important; +} diff --git a/packages/charts/chart-web-components/rollup.bench.js b/packages/charts/chart-web-components/rollup.bench.js new file mode 100644 index 0000000000000..3b8e9d8bb711f --- /dev/null +++ b/packages/charts/chart-web-components/rollup.bench.js @@ -0,0 +1,21 @@ +import { nodeResolve } from '@rollup/plugin-node-resolve'; +import esbuild from 'rollup-plugin-esbuild'; +import commonJS from 'rollup-plugin-commonjs'; + +const plugins = [nodeResolve({ browser: true }), commonJS(), esbuild({ tsconfig: './tsconfig.json' })]; + +export default [ + { + input: { + tokens: './src/utils/benchmark-dependencies/tokens.ts', + }, + output: [ + { + dir: './.tensile/benchmark-dependencies', + format: 'esm', + sourcemap: true, + }, + ], + plugins, + }, +]; diff --git a/packages/charts/chart-web-components/rollup.config.js b/packages/charts/chart-web-components/rollup.config.js new file mode 100644 index 0000000000000..f069b180ee587 --- /dev/null +++ b/packages/charts/chart-web-components/rollup.config.js @@ -0,0 +1,43 @@ +import { nodeResolve } from '@rollup/plugin-node-resolve'; +import commonJS from 'rollup-plugin-commonjs'; +import esbuild, { minify } from 'rollup-plugin-esbuild'; +import transformTaggedTemplate from 'rollup-plugin-transform-tagged-template'; +import { transformCSSFragment, transformHTMLFragment } from './scripts/transform-fragments'; + +const parserOptions = { + sourceType: 'module', +}; + +export default [ + { + input: 'src/index-rollup.ts', + output: [ + { + file: 'dist/chart-web-components.js', + format: 'esm', + }, + { + file: 'dist/chart-web-components.min.js', + format: 'esm', + plugins: [minify()], + }, + ], + plugins: [ + nodeResolve({ browser: true }), + commonJS(), + esbuild({ + tsconfig: './tsconfig.lib.json', + }), + transformTaggedTemplate({ + tagsToProcess: ['css'], + transformer: transformCSSFragment, + parserOptions, + }), + transformTaggedTemplate({ + tagsToProcess: ['html'], + transformer: transformHTMLFragment, + parserOptions, + }), + ], + }, +]; diff --git a/packages/charts/chart-web-components/scripts/clean.js b/packages/charts/chart-web-components/scripts/clean.js new file mode 100644 index 0000000000000..c7df6e70a1602 --- /dev/null +++ b/packages/charts/chart-web-components/scripts/clean.js @@ -0,0 +1,50 @@ +/* eslint-disable no-undef */ +/** + * Utility for cleaning directories. + * Usage: node build/clean.js %path% + */ +import * as path from 'path'; +import * as fsPromises from 'node:fs/promises'; +import yargs from 'yargs'; + +main(); + +/** + * Function to remove a given path + */ +function cleanPath(cleanPath) { + const removePath = path.resolve(process.cwd(), cleanPath); + + const result = fsPromises.rm(removePath, { recursive: true }).then(() => { + console.log(removePath, 'cleaned'); + }); + + return result; +} + +function main() { + const argv = yargs.argv; + + /** + * All paths passed to the clean script + */ + const paths = argv._; + + /** + * Clean all paths + */ + if (!Array.isArray(paths)) { + throw new Error('"paths" must be an array'); + } + + const result = paths.map(cleanPath); + + Promise.all(result) + .then(() => { + console.log('All paths cleaned'); + }) + .catch(error => { + console.error(error); + process.exit(1); + }); +} diff --git a/packages/charts/chart-web-components/scripts/compile.js b/packages/charts/chart-web-components/scripts/compile.js new file mode 100644 index 0000000000000..a2c8eac86b3ac --- /dev/null +++ b/packages/charts/chart-web-components/scripts/compile.js @@ -0,0 +1,24 @@ +/* eslint-disable no-undef */ + +import { execSync } from 'child_process'; +import chalk from 'chalk'; + +main(); + +function compile() { + try { + console.log(chalk.bold(`🎬 compile:start`)); + + console.log(chalk.blueBright(`compile: running tsc`)); + execSync(`tsc -p tsconfig.lib.json --rootDir ./src --baseUrl .`, { stdio: 'inherit' }); + + console.log(chalk.bold(`🏁 compile:end`)); + } catch (err) { + console.error(err); + process.exit(1); + } +} + +function main() { + compile(); +} diff --git a/packages/charts/chart-web-components/scripts/run-benchmarks.js b/packages/charts/chart-web-components/scripts/run-benchmarks.js new file mode 100644 index 0000000000000..594e10bc1d7b6 --- /dev/null +++ b/packages/charts/chart-web-components/scripts/run-benchmarks.js @@ -0,0 +1,42 @@ +import fs from 'fs/promises'; +import path from 'path'; +import { execSync } from 'child_process'; + +const rootDir = path.join(import.meta.dirname, '..'); +const tensileConfig = 'tensile.config.js'; + +try { + const esmOutput = path.join(rootDir, 'dist', 'esm'); + const items = await fs.readdir(esmOutput); + + // Collect all component folders + const folders = []; + for (const item of items) { + const itemPath = path.join(esmOutput, item); + const stats = await fs.lstat(itemPath); + if (stats.isDirectory()) { + folders.push(item); + } + } + + // Collect all .bench.js files + const benchFiles = []; + for (const folder of folders) { + const folderPath = path.join(esmOutput, folder); + const files = await fs.readdir(folderPath); + const filteredFiles = files.filter(file => file.endsWith('.bench.js')); + benchFiles.push(...filteredFiles.map(file => path.relative(rootDir, path.join(folderPath, file)))); + } + + // Execute tensile for each .bench.js file + for (const file of benchFiles) { + try { + // eslint-disable-next-line no-undef + execSync(`tensile --file ./${file} --config ${tensileConfig} ${process.argv[2]}`, { stdio: 'inherit' }); + } catch (error) { + console.error(`Error executing command for file ${file}: ${error.message}`); + } + } +} catch (error) { + console.error(`Error reading directory: ${error.message}`); +} diff --git a/packages/charts/chart-web-components/scripts/setup-browser.cjs b/packages/charts/chart-web-components/scripts/setup-browser.cjs new file mode 100644 index 0000000000000..86e98bc29b537 --- /dev/null +++ b/packages/charts/chart-web-components/scripts/setup-browser.cjs @@ -0,0 +1,11 @@ +/* eslint-disable no-undef */ +/** + * + * @param r {__WebpackModuleApi.RequireContext} + */ +function importAll(r) { + r.keys().forEach(r); +} + +// Explicitly add to browser test +importAll(require.context('../dist/esm', true, /\.spec\.js$/)); diff --git a/packages/charts/chart-web-components/scripts/transform-fragments.js b/packages/charts/chart-web-components/scripts/transform-fragments.js new file mode 100644 index 0000000000000..8db1b711c9881 --- /dev/null +++ b/packages/charts/chart-web-components/scripts/transform-fragments.js @@ -0,0 +1,29 @@ +/* eslint-disable @typescript-eslint/explicit-function-return-type, @typescript-eslint/typedef */ + +/** + * Reduces extra spaces in HTML tagged templates. + * + * @param {string} data - the fragment value + * @returns string + */ +export function transformHTMLFragment(data) { + data = data.replace(/\s*([<>])\s*/g, '$1'); // remove spaces before and after angle brackets + return data.replace(/\s{2,}/g, ' '); // Collapse all sequences to 1 space +} + +/** + * Reduces extra spaces in CSS tagged templates. + * + * Breakdown of this regex: + * (?:\s*\/\*(?:.|\s)+?\*\/\s*) Remove comments (non-capturing) + * (?:;)\s+(?=\}) Remove semicolons and spaces followed by property list end (non-capturing) + * \s+(?=\{) Remove spaces before property list start (non-capturing) + * (?<=:)\s+ Remove spaces after property declarations (non-capturing) + * \s*([{};,])\s* Remove extra spaces before and after braces, semicolons, and commas (captures) + * + * @param {string} data - the fragment value + * @returns string + */ +export function transformCSSFragment(data) { + return data.replace(/(?:\s*\/\*(?:.|\s)+?\*\/\s*)|(?:;)\s+(?=\})|\s+(?=\{)|(?<=:)\s+|\s*([{};,])\s*/g, '$1'); +} diff --git a/packages/charts/chart-web-components/scripts/type-check.js b/packages/charts/chart-web-components/scripts/type-check.js new file mode 100644 index 0000000000000..5cd034b7ceb21 --- /dev/null +++ b/packages/charts/chart-web-components/scripts/type-check.js @@ -0,0 +1,58 @@ +// @ts-check + +import fs from 'node:fs'; +import path from 'node:path'; +import { promisify } from 'node:util'; +import { exec } from 'node:child_process'; +import { exit } from 'node:process'; + +const asyncExec = promisify(exec); + +main().catch(err => { + console.error(err); + exit(1); +}); + +/** + * Copied from ${@link 'file://./../../../../scripts/tasks/src/type-check.ts'} + */ +async function main() { + const rootConfig = JSON.parse(fs.readFileSync(path.join(import.meta.dirname, '../tsconfig.json'), 'utf-8')); + + const tsConfigsRefs = getTsConfigs(rootConfig, { spec: false, e2e: false }); + + const asyncQueue = []; + + for (const ref of tsConfigsRefs) { + const program = `tsc -p ${ref} --pretty --noEmit --baseUrl .`; + asyncQueue.push(asyncExec(program)); + } + + return Promise.all(asyncQueue).catch(err => { + console.error(err.stdout); + exit(1); + }); +} + +/** + * @param {{references?: Array<{ path: string }>;}} solutionConfig + * @param {{ spec: boolean, e2e: boolean }} exclude + */ +function getTsConfigs(solutionConfig, exclude) { + const refs = solutionConfig.references ?? []; + /** @type {string[]} */ + const refsPaths = []; + + for (const ref of refs) { + if (exclude.spec && ref.path.includes('spec')) { + continue; + } + if (exclude.e2e && ref.path.includes('cy')) { + continue; + } + + refsPaths.push(ref.path); + } + + return refsPaths; +} diff --git a/packages/charts/chart-web-components/scripts/verify-packaging.js b/packages/charts/chart-web-components/scripts/verify-packaging.js new file mode 100644 index 0000000000000..60166e83e3d42 --- /dev/null +++ b/packages/charts/chart-web-components/scripts/verify-packaging.js @@ -0,0 +1,75 @@ +// @ts-check +/** + * Copied from ${@link 'file://./../../../../scripts/tasks/src/verify-packaging.ts'} + */ + +import assert from 'node:assert/strict'; +import { spawnSync } from 'node:child_process'; +import { readFileSync } from 'node:fs'; +import path from 'node:path'; + +import micromatch from 'micromatch'; + +main(); + +function main() { + /** + * @see https://docs.npmjs.com/cli/v10/commands/npm-publish#files-included-in-package + */ + const alwaysPublishedFiles = ['LICENSE', 'package.json', 'README.md']; + const rootConfigFiles = [ + 'just.config.[jt]s', + 'jest.config.[jt]s', + '.eslintrc.(js|json)', + 'project.json', + '.babelrc.json', + '.swcrc', + 'tsconfig(.*)?.json', + ]; + const nonProdAssets = ['assets/', 'docs/*', 'temp/*', 'bundle-size/*', '.storybook/*', 'stories/*']; + + verifyPackaging({ alwaysPublishedFiles, nonProdAssets, rootConfigFiles }); +} + +/** + * + * @param {{alwaysPublishedFiles:string[];rootConfigFiles:string[];nonProdAssets:string[]}} options + * @returns + */ + +function verifyPackaging(options) { + const { alwaysPublishedFiles, nonProdAssets, rootConfigFiles } = options; + const root = path.join(import.meta.dirname, '../'); + + /** @type {{ private?: boolean }} */ + const packageJSON = JSON.parse(readFileSync(path.join(root, 'package.json'), 'utf-8')); + + // no need to check if package is not being published yet + if (packageJSON.private) { + return; + } + + const npmPackResult = spawnSync('npm', ['pack', '--dry-run']); + + const processedResult = npmPackResult.output + .toString() + .replace(/\bnpm notice\b\s+[\d.]+[kB]+\s+/gi, '') + .replace(/[ ]+/g, ''); + const processedResultArr = processedResult.split('\n'); + + assert.ok(micromatch(processedResultArr, alwaysPublishedFiles).length, `npm always shipped files`); + assert.equal( + micromatch(processedResultArr, nonProdAssets).length, + 0, + `wont ship non production code related folders/files`, + ); + assert.equal(micromatch(processedResultArr, 'dist/storybook/**').length, 0, `wont ship storybook assets`); + assert.equal(micromatch(processedResultArr, rootConfigFiles).length, 0, `wont ship configuration files`); + assert.ok(micromatch(processedResultArr, 'CHANGELOG.md').length, 'ships changelog markdown file'); + assert.ok(micromatch(processedResultArr, 'dist/*.d.ts').length, 'ships rolluped dts'); + assert.ok(micromatch(processedResultArr, 'dist/*.(min.js|js)').length, 'ships rolluped js'); + assert.equal(micromatch(processedResultArr, 'src/*').length, 0, `wont ship source code from "/src"`); + + assert.ok(micromatch(processedResultArr, 'dist/esm/**/*.(js|map)').length, 'ships esm'); + assert.ok(micromatch(processedResultArr, 'dist/dts/**/*.d.ts').length, 'ships types'); +} diff --git a/packages/web-components/src/donut-chart/define.ts b/packages/charts/chart-web-components/src/donut-chart/define.ts similarity index 62% rename from packages/web-components/src/donut-chart/define.ts rename to packages/charts/chart-web-components/src/donut-chart/define.ts index 2363f2c5e5e75..1b8e20ac99e32 100644 --- a/packages/web-components/src/donut-chart/define.ts +++ b/packages/charts/chart-web-components/src/donut-chart/define.ts @@ -1,4 +1,4 @@ -import { FluentDesignSystem } from '../fluent-design-system.js'; +import { FluentDesignSystem } from '@fluentui/web-components'; import { definition } from './donut-chart.definition.js'; definition.define(FluentDesignSystem.registry); diff --git a/packages/web-components/src/donut-chart/donut-chart.bench.ts b/packages/charts/chart-web-components/src/donut-chart/donut-chart.bench.ts similarity index 82% rename from packages/web-components/src/donut-chart/donut-chart.bench.ts rename to packages/charts/chart-web-components/src/donut-chart/donut-chart.bench.ts index 3e60a418706ae..5936ecc050474 100644 --- a/packages/web-components/src/donut-chart/donut-chart.bench.ts +++ b/packages/charts/chart-web-components/src/donut-chart/donut-chart.bench.ts @@ -1,4 +1,4 @@ -import { FluentDesignSystem } from '../fluent-design-system.js'; +import { FluentDesignSystem } from '@fluentui/web-components'; import { definition } from './donut-chart.definition.js'; definition.define(FluentDesignSystem.registry); diff --git a/packages/web-components/src/donut-chart/donut-chart.definition.ts b/packages/charts/chart-web-components/src/donut-chart/donut-chart.definition.ts similarity index 85% rename from packages/web-components/src/donut-chart/donut-chart.definition.ts rename to packages/charts/chart-web-components/src/donut-chart/donut-chart.definition.ts index b597ae75c8939..3cf608dc04648 100644 --- a/packages/web-components/src/donut-chart/donut-chart.definition.ts +++ b/packages/charts/chart-web-components/src/donut-chart/donut-chart.definition.ts @@ -1,4 +1,4 @@ -import { FluentDesignSystem } from '../fluent-design-system.js'; +import { FluentDesignSystem } from '@fluentui/web-components'; import { DonutChart } from './donut-chart.js'; import { styles } from './donut-chart.styles.js'; import { template } from './donut-chart.template.js'; diff --git a/packages/web-components/src/donut-chart/donut-chart.options.ts b/packages/charts/chart-web-components/src/donut-chart/donut-chart.options.ts similarity index 100% rename from packages/web-components/src/donut-chart/donut-chart.options.ts rename to packages/charts/chart-web-components/src/donut-chart/donut-chart.options.ts diff --git a/packages/web-components/src/donut-chart/donut-chart.stories.ts b/packages/charts/chart-web-components/src/donut-chart/donut-chart.stories.ts similarity index 100% rename from packages/web-components/src/donut-chart/donut-chart.stories.ts rename to packages/charts/chart-web-components/src/donut-chart/donut-chart.stories.ts diff --git a/packages/web-components/src/donut-chart/donut-chart.styles.ts b/packages/charts/chart-web-components/src/donut-chart/donut-chart.styles.ts similarity index 94% rename from packages/web-components/src/donut-chart/donut-chart.styles.ts rename to packages/charts/chart-web-components/src/donut-chart/donut-chart.styles.ts index f16502fbfa7ad..1d08a4119ebb6 100644 --- a/packages/web-components/src/donut-chart/donut-chart.styles.ts +++ b/packages/charts/chart-web-components/src/donut-chart/donut-chart.styles.ts @@ -1,5 +1,4 @@ import { css } from '@microsoft/fast-element'; -import { display } from '../utils/display.js'; import { borderRadiusMedium, colorNeutralBackground1, @@ -9,18 +8,17 @@ import { colorStrokeFocus1, colorStrokeFocus2, colorTransparentStroke, + display, + forcedColorsStylesheetBehavior, spacingHorizontalL, spacingHorizontalS, spacingVerticalL, spacingVerticalMNudge, -} from '../theme/design-tokens.js'; -import { typographyBody1Styles, typographyCaption1Styles, typographyTitle2Styles, typographyTitle3Styles, -} from '../styles/index.js'; -import { forcedColorsStylesheetBehavior } from '../utils/index.js'; +} from '@fluentui/web-components'; /** * Styles for the DonutChart component. diff --git a/packages/web-components/src/donut-chart/donut-chart.template.ts b/packages/charts/chart-web-components/src/donut-chart/donut-chart.template.ts similarity index 96% rename from packages/web-components/src/donut-chart/donut-chart.template.ts rename to packages/charts/chart-web-components/src/donut-chart/donut-chart.template.ts index 19b65040fc3c8..bddd8bacfc4d3 100644 --- a/packages/web-components/src/donut-chart/donut-chart.template.ts +++ b/packages/charts/chart-web-components/src/donut-chart/donut-chart.template.ts @@ -1,4 +1,4 @@ -import { children, ElementViewTemplate, html, ref, repeat, when } from '@microsoft/fast-element'; +import { ElementViewTemplate, html, ref, repeat, when } from '@microsoft/fast-element'; import type { DonutChart } from './donut-chart.js'; import { Legend } from './donut-chart.options.js'; diff --git a/packages/web-components/src/donut-chart/donut-chart.ts b/packages/charts/chart-web-components/src/donut-chart/donut-chart.ts similarity index 100% rename from packages/web-components/src/donut-chart/donut-chart.ts rename to packages/charts/chart-web-components/src/donut-chart/donut-chart.ts diff --git a/packages/web-components/src/donut-chart/index.ts b/packages/charts/chart-web-components/src/donut-chart/index.ts similarity index 100% rename from packages/web-components/src/donut-chart/index.ts rename to packages/charts/chart-web-components/src/donut-chart/index.ts diff --git a/packages/charts/chart-web-components/src/helpers.stories.ts b/packages/charts/chart-web-components/src/helpers.stories.ts new file mode 100644 index 0000000000000..c885723594b95 --- /dev/null +++ b/packages/charts/chart-web-components/src/helpers.stories.ts @@ -0,0 +1,101 @@ +import type { ElementViewTemplate, FASTElement, ViewTemplate } from '@microsoft/fast-element'; +import type { AnnotatedStoryFn, Args, ComponentAnnotations, Renderer, StoryAnnotations } from '@storybook/csf'; + +/** + * A helper that returns a function to bind a Storybook story to a ViewTemplate. + * + * @param template - The ViewTemplate to render + * @returns - a function to bind a Storybook story + */ +export function renderComponent(template: ViewTemplate): (args: TArgs) => Element | DocumentFragment { + return function (args) { + const storyFragment = new DocumentFragment(); + template.render(args, storyFragment); + if (storyFragment.childElementCount === 1) { + return storyFragment.firstElementChild!; + } + return storyFragment; + }; +} + +export declare interface FASTComponentsRenderer extends Renderer { + canvasElement: FASTElement; + component: typeof FASTElement | string; + storyResult: string | Node | DocumentFragment | ElementViewTemplate; +} + +/** + * A helper that returns a function to bind a Storybook story to a ViewTemplate. + */ +export type FASTFramework = Renderer & { + component: typeof FASTElement; + storyResult: FASTElement | Element | DocumentFragment; +}; + +/** + * Metadata to configure the stories for a component. + */ +export declare type Meta = ComponentAnnotations>; + +/** + * Story object that represents a CSFv3 component example. + * + * @see [Named Story exports](https://storybook.js.org/docs/formats/component-story-format/#named-story-exports) + */ +export declare type StoryObj = StoryAnnotations>; + +/** + * Story function that represents a CSFv2 component example. + */ +export declare type StoryFn = AnnotatedStoryFn; + +/** + * Story function that represents a CSFv2 component example. + * + * NOTE that in Storybook 7.0, this type will be renamed to `StoryFn` and replaced by the current `StoryObj` type. + */ +export declare type Story = StoryFn>; + +/** + * Combined Storybook story args. + */ +export type StoryArgs = Partial> & Args; + +export function generateImage({ + width, + height = width, + backgroundColor = 'rgb(204, 204, 204)', + color = 'rgb(150, 150, 150)', + text = `${width} x ${height}`, +}: { + width: number; + height?: number; + backgroundColor?: string; + color?: string; + text?: string; +}): string { + const canvas = document.createElement('canvas'); + const context = canvas.getContext('2d') as CanvasRenderingContext2D; + + canvas.width = width; + canvas.height = height; + + // Clear the canvas. + context.clearRect(0, 0, canvas.width, canvas.height); + + // get the font size to fit the text + context.font = '1px sans-serif'; + const maxFontSize = Math.max(width / context.measureText(text).width / 2, 7); + + // Draw the background + context.fillStyle = backgroundColor; + context.fillRect(0, 0, canvas.width, canvas.height); + + context.font = `${maxFontSize}px Helvetica, Arial, sans-serif`; + context.textAlign = 'center'; + context.textBaseline = 'middle'; + context.fillStyle = color; + context.fillText(text, canvas.width / 2, canvas.height / 2); + + return canvas.toDataURL('image/png'); +} diff --git a/packages/charts/chart-web-components/src/horizontal-bar-chart/define.ts b/packages/charts/chart-web-components/src/horizontal-bar-chart/define.ts new file mode 100644 index 0000000000000..2af6e03097468 --- /dev/null +++ b/packages/charts/chart-web-components/src/horizontal-bar-chart/define.ts @@ -0,0 +1,4 @@ +import { FluentDesignSystem } from '@fluentui/web-components'; +import { definition } from './horizontal-bar-chart.definition.js'; + +definition.define(FluentDesignSystem.registry); diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.bench.ts b/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.bench.ts similarity index 63% rename from packages/web-components/src/horizontalbarchart/horizontalbarchart.bench.ts rename to packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.bench.ts index 9da5d4140ca3a..14336cd320d46 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.bench.ts +++ b/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.bench.ts @@ -1,10 +1,10 @@ -import { FluentDesignSystem } from '../fluent-design-system.js'; -import { definition } from './horizontalbarchart.definition.js'; +import { FluentDesignSystem } from '@fluentui/web-components'; +import { definition } from './horizontal-bar-chart.definition.js'; definition.define(FluentDesignSystem.registry); const itemRenderer = () => { - const horizontalbarchart = document.createElement('fluent-horizontalbarchart'); + const horizontalbarchart = document.createElement('fluent-horizontal-bar-chart'); return horizontalbarchart; }; diff --git a/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.definition.ts b/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.definition.ts new file mode 100644 index 0000000000000..211c4d0b63c56 --- /dev/null +++ b/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.definition.ts @@ -0,0 +1,20 @@ +import { FluentDesignSystem } from '@fluentui/web-components'; +import { HorizontalBarChart } from './horizontal-bar-chart.js'; +import { styles } from './horizontal-bar-chart.styles.js'; +import { template } from './horizontal-bar-chart.template.js'; + +/** + * The Fluent Textarea Element definition. + * + * @public + * @remarks + * HTML Element: `` + */ +export const definition = HorizontalBarChart.compose({ + name: `${FluentDesignSystem.prefix}-horizontal-bar-chart`, + template, + styles, + shadowOptions: { + delegatesFocus: true, + }, +}); diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts b/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.options.ts similarity index 100% rename from packages/web-components/src/horizontalbarchart/horizontalbarchart.options.ts rename to packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.options.ts diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts b/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.stories.ts similarity index 89% rename from packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts rename to packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.stories.ts index c072d5266be0a..4878744f4c866 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.stories.ts +++ b/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.stories.ts @@ -1,8 +1,8 @@ import { html } from '@microsoft/fast-element'; import type { Meta, Story, StoryArgs } from '../helpers.stories.js'; import { renderComponent } from '../helpers.stories.js'; -import { HorizontalBarChart as FluentHorizontalBarChart } from './horizontalbarchart.js'; -import { ChartDataPoint, ChartProps } from './horizontalbarchart.options.js'; +import { HorizontalBarChart as FluentHorizontalBarChart } from './horizontal-bar-chart.js'; +import { ChartDataPoint, ChartProps } from './horizontal-bar-chart.options.js'; const singleBarHBCData = [ { @@ -285,7 +285,7 @@ const singlePointData = [ ]; const storyTemplate = html>` - + `; export default { @@ -296,8 +296,8 @@ export const Basic: Story = renderComponent(storyTempl export const singleBarHBC: Story = renderComponent(html>`

`); @@ -305,12 +305,12 @@ export const singleBarNMVariant: Story = renderCompone StoryArgs >`
- - +
`); @@ -318,15 +318,15 @@ export const singleDataPoint: Story = renderComponent( StoryArgs >`
- - + +
`); export const RTL: Story = renderComponent(html>`
- +
`); diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts b/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.styles.ts similarity index 95% rename from packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts rename to packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.styles.ts index e93dc1e8648ea..e68d8c17e3c1c 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.styles.ts +++ b/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.styles.ts @@ -3,19 +3,17 @@ import { css } from '@microsoft/fast-element'; import { colorNeutralBackground1, colorNeutralForeground1, + display, shadow4, spacingHorizontalL, spacingHorizontalS, spacingHorizontalSNudge, spacingVerticalL, spacingVerticalMNudge, -} from '../theme/design-tokens.js'; -import { display } from '../utils/display.js'; -import { typographyBody1StrongStyles, typographyBody1Styles, typographyCaption1Styles, -} from '../styles/partials/typography.partials.js'; +} from '@fluentui/web-components'; /** * Styles for the HorizontalBarChart component. diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts b/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.template.ts similarity index 91% rename from packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts rename to packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.template.ts index c6197fe1419cb..ccd222108b4b2 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.template.ts +++ b/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.template.ts @@ -1,7 +1,7 @@ import { ElementViewTemplate, html, ref, repeat, when } from '@microsoft/fast-element'; -import { createTabster, getGroupper, getMover, getTabsterAttribute, Types } from 'tabster'; -import type { HorizontalBarChart } from './horizontalbarchart.js'; -import { ChartDataPoint } from './horizontalbarchart.options.js'; +import { createTabster, getGroupper, getMover } from 'tabster'; +import type { HorizontalBarChart } from './horizontal-bar-chart.js'; +import { ChartDataPoint } from './horizontal-bar-chart.options.js'; // During the page startup. const tabsterCore = createTabster(window); diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts b/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.ts similarity index 99% rename from packages/web-components/src/horizontalbarchart/horizontalbarchart.ts rename to packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.ts index 851b3cf0336d3..e9a1269b98c98 100644 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.ts +++ b/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.ts @@ -2,7 +2,7 @@ import { attr, FASTElement, observable } from '@microsoft/fast-element'; import { create as d3Create, select as d3Select } from 'd3-selection'; import { createTabster, getGroupper, getMover, getTabsterAttribute, TABSTER_ATTRIBUTE_NAME } from 'tabster'; import { jsonConverter, SVG_NAMESPACE_URI, validateChartPropsArray } from '../utils/chart-helpers.js'; -import { ChartDataPoint, ChartProps, Variant } from './horizontalbarchart.options.js'; +import { ChartDataPoint, ChartProps, Variant } from './horizontal-bar-chart.options.js'; // During the page startup. const tabsterCore = createTabster(window); @@ -90,7 +90,6 @@ export class HorizontalBarChart extends FASTElement { this.initializeData(); this.renderChart(); - this.renderLegends(); } private initializeData() { diff --git a/packages/web-components/src/horizontalbarchart/index.ts b/packages/charts/chart-web-components/src/horizontal-bar-chart/index.ts similarity index 55% rename from packages/web-components/src/horizontalbarchart/index.ts rename to packages/charts/chart-web-components/src/horizontal-bar-chart/index.ts index 5582c53facba2..0695516e7dce4 100644 --- a/packages/web-components/src/horizontalbarchart/index.ts +++ b/packages/charts/chart-web-components/src/horizontal-bar-chart/index.ts @@ -1,4 +1,4 @@ -export { definition as HorizontalBarChartDefinition } from './horizontalbarchart.definition.js'; -export { HorizontalBarChart } from './horizontalbarchart.js'; -export { styles as HorizontalBarChartStyles } from './horizontalbarchart.styles.js'; -export { template as HorizontalBarChartTemplate } from './horizontalbarchart.template.js'; +export { definition as HorizontalBarChartDefinition } from './horizontal-bar-chart.definition.js'; +export { HorizontalBarChart } from './horizontal-bar-chart.js'; +export { styles as HorizontalBarChartStyles } from './horizontal-bar-chart.styles.js'; +export { template as HorizontalBarChartTemplate } from './horizontal-bar-chart.template.js'; diff --git a/packages/charts/chart-web-components/src/index-rollup.ts b/packages/charts/chart-web-components/src/index-rollup.ts new file mode 100644 index 0000000000000..8726e6a32d0f9 --- /dev/null +++ b/packages/charts/chart-web-components/src/index-rollup.ts @@ -0,0 +1,2 @@ +import './horizontal-bar-chart/define.js'; +import './donut-chart/define.js'; diff --git a/packages/charts/chart-web-components/src/index.ts b/packages/charts/chart-web-components/src/index.ts new file mode 100644 index 0000000000000..9dcd14f29327d --- /dev/null +++ b/packages/charts/chart-web-components/src/index.ts @@ -0,0 +1,7 @@ +export { + HorizontalBarChart, + HorizontalBarChartDefinition, + HorizontalBarChartStyles, + HorizontalBarChartTemplate, +} from './horizontal-bar-chart/index.js'; +export { DonutChart, DonutChartDefinition, DonutChartStyles, DonutChartTemplate } from './donut-chart/index.js'; diff --git a/packages/charts/chart-web-components/src/utils/benchmark-wrapper.ts b/packages/charts/chart-web-components/src/utils/benchmark-wrapper.ts new file mode 100644 index 0000000000000..3b1807cbff920 --- /dev/null +++ b/packages/charts/chart-web-components/src/utils/benchmark-wrapper.ts @@ -0,0 +1,22 @@ +// eslint-disable-next-line +// @ts-nocheck +import { tests } from '@tensile-perf/web-components'; +import { webLightTheme } from '@fluentui/tokens'; +import { setTheme } from '@fluentui/web-components'; + +const testWrapper = (test: any, args: any) => { + setTheme(webLightTheme); + return test(args); +}; + +const wrappedTests = {}; + +for (const testName of Object.keys(tests)) { + const test = tests[testName]; + + wrappedTests[testName] = (args: any) => { + return testWrapper(test, args); + }; +} + +export { wrappedTests as tests }; diff --git a/packages/web-components/src/utils/chart-helpers.ts b/packages/charts/chart-web-components/src/utils/chart-helpers.ts similarity index 99% rename from packages/web-components/src/utils/chart-helpers.ts rename to packages/charts/chart-web-components/src/utils/chart-helpers.ts index 8df72b6b5e140..45f9ecdb56dd5 100644 --- a/packages/web-components/src/utils/chart-helpers.ts +++ b/packages/charts/chart-web-components/src/utils/chart-helpers.ts @@ -1,6 +1,6 @@ import type { ValueConverter } from '@microsoft/fast-element'; import { Direction } from '@microsoft/fast-web-utilities'; -import { getDirection } from './direction.js'; +import { getDirection } from '@fluentui/web-components'; export const jsonConverter: ValueConverter = { toView(value: any): string { diff --git a/packages/charts/chart-web-components/tensile.config.js b/packages/charts/chart-web-components/tensile.config.js new file mode 100644 index 0000000000000..d2531e5ea6487 --- /dev/null +++ b/packages/charts/chart-web-components/tensile.config.js @@ -0,0 +1,20 @@ +const config = { + // Browsers to test against + browsers: ['chrome'], + + // Importmaps for your test. + // See: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script/type/importmap + imports: { + '@tensile-perf/web-components': '/node_modules/@tensile-perf/web-components/lib/index.js', + '@microsoft/fast-element': '/node_modules/@microsoft/fast-element/dist/fast-element.min.js', + '@microsoft/fast-element/utilities.js': '/node_modules/@microsoft/fast-element/dist/esm/utilities.js', + '@microsoft/fast-web-utilities': '/node_modules/@microsoft/fast-web-utilities/dist/index.js', + '@fluentui/tokens': '/tensile-assets/benchmark-dependencies/tokens.js', + '@fluentui/web-components': '/node_modules/@fluentui/web-components/dist/esm/index.js', + 'exenv-es6': '/node_modules/exenv-es6/dist/index.js', + tabbable: '/node_modules/tabbable/dist/index.esm.js', + tslib: '/node_modules/tslib/tslib.es6.js', + }, +}; + +export default config; diff --git a/packages/charts/chart-web-components/tsconfig.api-extractor.json b/packages/charts/chart-web-components/tsconfig.api-extractor.json new file mode 100644 index 0000000000000..e245193e1fb3d --- /dev/null +++ b/packages/charts/chart-web-components/tsconfig.api-extractor.json @@ -0,0 +1,7 @@ +{ + "extends": "./tsconfig.lib.json", + "compilerOptions": { + "paths": null, + "baseUrl": "." + } +} diff --git a/packages/charts/chart-web-components/tsconfig.json b/packages/charts/chart-web-components/tsconfig.json new file mode 100644 index 0000000000000..61f3a86caabc1 --- /dev/null +++ b/packages/charts/chart-web-components/tsconfig.json @@ -0,0 +1,22 @@ +{ + "extends": "../../../tsconfig.base.wc.json", + "compilerOptions": { + "target": "ES2019", + "module": "ESNext", + "experimentalDecorators": true, + "resolveJsonModule": true, + "allowJs": true + }, + "files": [], + "references": [ + { + "path": "./tsconfig.lib.json" + }, + { + "path": "./tsconfig.spec.json" + }, + { + "path": "./.storybook/tsconfig.json" + } + ] +} diff --git a/packages/charts/chart-web-components/tsconfig.lib.json b/packages/charts/chart-web-components/tsconfig.lib.json new file mode 100644 index 0000000000000..c4d92fe979201 --- /dev/null +++ b/packages/charts/chart-web-components/tsconfig.lib.json @@ -0,0 +1,14 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "target": "ES2019", + "module": "ESNext", + "lib": ["ESNext", "DOM"], + "declaration": true, + "declarationDir": "dist/dts", + "outDir": "dist/esm", + "importHelpers": true + }, + "include": ["src"], + "exclude": ["**/*.stories.*", "**/*.test.*", "**/*.spec.*"] +} diff --git a/packages/charts/chart-web-components/tsconfig.spec.json b/packages/charts/chart-web-components/tsconfig.spec.json new file mode 100644 index 0000000000000..6287b1ce0f8d5 --- /dev/null +++ b/packages/charts/chart-web-components/tsconfig.spec.json @@ -0,0 +1,9 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "module": "ESNext", + "outDir": "dist/esm", + "types": ["node"] + }, + "include": ["src/**/*.test.*", "src/**/*.spec.*"] +} diff --git a/packages/charts/chart-web-components/tsdoc.json b/packages/charts/chart-web-components/tsdoc.json new file mode 100644 index 0000000000000..0c30fee865df6 --- /dev/null +++ b/packages/charts/chart-web-components/tsdoc.json @@ -0,0 +1,44 @@ +{ + "$schema": "https://developer.microsoft.com/json-schemas/tsdoc/v0/tsdoc.schema.json", + "extends": ["@microsoft/api-extractor/extends/tsdoc-base.json"], + "tagDefinitions": [ + { + "tagName": "@slot", + "syntaxKind": "block", + "allowMultiple": true + }, + { + "tagName": "@csspart", + "syntaxKind": "block", + "allowMultiple": true + }, + { + "tagName": "@cssprop", + "syntaxKind": "block", + "allowMultiple": true + }, + { + "tagName": "@cssproperty", + "syntaxKind": "block", + "allowMultiple": true + }, + { + "tagName": "@event", + "syntaxKind": "block", + "allowMultiple": true + }, + { + "tagName": "@fires", + "syntaxKind": "block", + "allowMultiple": true + } + ], + "supportForTags": { + "@slot": true, + "@csspart": true, + "@cssprop": true, + "@cssproperty": true, + "@event": true, + "@fires": true + } +} diff --git a/packages/web-components/package.json b/packages/web-components/package.json index c41ae25594438..c253294341bd2 100644 --- a/packages/web-components/package.json +++ b/packages/web-components/package.json @@ -78,6 +78,7 @@ "clean": "node ./scripts/clean dist", "generate-api": "api-extractor run --local", "build": "yarn compile && yarn rollup -c && yarn generate-api", + "lint": "eslint . --ext .ts", "lint:fix": "eslint . --ext .ts --fix", "format": "prettier -w src/**/*.{ts,html} --ignore-path ../../.prettierignore", "format:check": "yarn format -c", @@ -102,11 +103,7 @@ "tslib": "^2.1.0" }, "peerDependencies": { - "@microsoft/fast-element": "^2.0.0-beta.26 || ^2.0.0", - "@types/d3-selection": "^3.0.0", - "@types/d3-shape": "^3.0.0", - "d3-selection": "^3.0.0", - "d3-shape": "^3.0.0" + "@microsoft/fast-element": "^2.0.0-beta.26 || ^2.0.0" }, "beachball": { "disallowedChangeTypes": [ diff --git a/packages/web-components/src/horizontalbarchart/define.ts b/packages/web-components/src/horizontalbarchart/define.ts deleted file mode 100644 index cdf6938d1ae24..0000000000000 --- a/packages/web-components/src/horizontalbarchart/define.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { FluentDesignSystem } from '../fluent-design-system.js'; -import { definition } from './horizontalbarchart.definition.js'; - -definition.define(FluentDesignSystem.registry); diff --git a/packages/web-components/src/horizontalbarchart/horizontalbarchart.definition.ts b/packages/web-components/src/horizontalbarchart/horizontalbarchart.definition.ts deleted file mode 100644 index e80fd4217cb4c..0000000000000 --- a/packages/web-components/src/horizontalbarchart/horizontalbarchart.definition.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { FluentDesignSystem } from '../fluent-design-system.js'; -import { HorizontalBarChart } from './horizontalbarchart.js'; -import { styles } from './horizontalbarchart.styles.js'; -import { template } from './horizontalbarchart.template.js'; - -/** - * The Fluent Textarea Element definition. - * - * @public - * @remarks - * HTML Element: `` - */ -export const definition = HorizontalBarChart.compose({ - name: `${FluentDesignSystem.prefix}-horizontalbarchart`, - template, - styles, - shadowOptions: { - delegatesFocus: true, - }, -}); diff --git a/packages/web-components/src/index-rollup.ts b/packages/web-components/src/index-rollup.ts index 52068f8b1ae4d..832770e275eec 100644 --- a/packages/web-components/src/index-rollup.ts +++ b/packages/web-components/src/index-rollup.ts @@ -36,5 +36,3 @@ import './textarea/define.js'; import './text-input/define.js'; import './text/define.js'; import './toggle-button/define.js'; -import './horizontalbarchart/define.js'; -import './donut-chart/define.js'; diff --git a/packages/web-components/src/index.ts b/packages/web-components/src/index.ts index 88fdac9b62c42..a9f1707983906 100644 --- a/packages/web-components/src/index.ts +++ b/packages/web-components/src/index.ts @@ -305,11 +305,3 @@ export { export type { MediaQueryListListener } from './utils/behaviors/match-media-stylesheet-behavior.js'; export { getDirection } from './utils/direction.js'; export { display } from './utils/display.js'; - -export { - HorizontalBarChart, - HorizontalBarChartDefinition, - HorizontalBarChartStyles, - HorizontalBarChartTemplate, -} from './horizontalbarchart/index.js'; -export { DonutChart, DonutChartDefinition, DonutChartStyles, DonutChartTemplate } from './donut-chart/index.js'; diff --git a/tsconfig.base.all.json b/tsconfig.base.all.json index ecd4f30ce1966..a0b646cb2b97a 100644 --- a/tsconfig.base.all.json +++ b/tsconfig.base.all.json @@ -61,6 +61,7 @@ "@fluentui/theme": ["packages/theme/src/index.ts"], "@fluentui/react-cards": ["packages/react-cards/src/index.ts"], "@fluentui/react-charting": ["packages/charts/react-charting/src/index.ts"], + "@fluentui/chart-web-components": ["packages/charts/chart-web-components/src/index.ts"], "@fluentui/react-window-provider": ["packages/react-window-provider/src/index.ts"], "@fluentui/react-icons-mdl2": ["packages/react-icons-mdl2/src/index.ts"], "@fluentui/react-icons-mdl2-branded": ["packages/react-icons-mdl2-branded/src/index.ts"], diff --git a/tsconfig.base.wc.json b/tsconfig.base.wc.json index 472f867dd913b..576d89387cdf3 100644 --- a/tsconfig.base.wc.json +++ b/tsconfig.base.wc.json @@ -12,6 +12,7 @@ "rootDir": ".", "baseUrl": ".", "paths": { + "@fluentui/chart-web-components": ["packages/charts/chart-web-components/src/index.ts"], "@fluentui/web-components": ["packages/web-components/src/index.ts"], "@fluentui/tokens": ["packages/tokens/src/index.ts"] } From 6baa5bd888860ec8d1cf08dfc69ae32c085569fd Mon Sep 17 00:00:00 2001 From: krkshitij <110246001+krkshitij@users.noreply.github.com> Date: Thu, 7 Nov 2024 11:20:42 +0530 Subject: [PATCH 31/60] Fix CSS class names (#33196) --- .../src/donut-chart/donut-chart.styles.ts | 34 +++++++++---------- .../src/donut-chart/donut-chart.template.ts | 20 +++++------ .../src/donut-chart/donut-chart.ts | 4 +-- .../horizontal-bar-chart.styles.ts | 20 +++++------ .../horizontal-bar-chart.template.ts | 9 +++-- .../horizontal-bar-chart.ts | 10 +++--- 6 files changed, 50 insertions(+), 47 deletions(-) diff --git a/packages/charts/chart-web-components/src/donut-chart/donut-chart.styles.ts b/packages/charts/chart-web-components/src/donut-chart/donut-chart.styles.ts index 1d08a4119ebb6..5ebb456599801 100644 --- a/packages/charts/chart-web-components/src/donut-chart/donut-chart.styles.ts +++ b/packages/charts/chart-web-components/src/donut-chart/donut-chart.styles.ts @@ -55,21 +55,21 @@ export const styles = css` stroke: ${colorStrokeFocus1}; } - .focusOutline { + .arc-outline { fill: none; } - .focusOutline:has(+ .arc:focus) { + .arc-outline:has(+ .arc:focus) { stroke-width: 4px; stroke: ${colorStrokeFocus2}; } - .insideDonutString { + .text-inside-donut { ${typographyTitle3Styles} fill: ${colorNeutralForeground1}; } - .legendContainer { + .legend-container { padding-top: ${spacingVerticalL}; white-space: nowrap; width: 100%; @@ -89,27 +89,27 @@ export const styles = css` text-transform: capitalize; } - .legendRect { + .legend-rect { width: 12px; height: 12px; margin-inline-end: ${spacingHorizontalS}; border: 1px solid; } - .legendText { + .legend-text { ${typographyCaption1Styles} color: ${colorNeutralForeground1}; } - .legend.inactive .legendRect { + .legend.inactive .legend-rect { background-color: transparent !important; } - .legend.inactive .legendText { + .legend.inactive .legend-text { opacity: 0.67; } - .calloutContentRoot { + .tooltip { display: grid; overflow: hidden; padding: ${spacingVerticalMNudge} ${spacingHorizontalL}; @@ -123,32 +123,32 @@ export const styles = css` pointer-events: none; } - .calloutBlockContainer { + .tooltip-body { padding-inline-start: ${spacingHorizontalS}; color: ${colorNeutralForeground1}; border-inline-start: 4px solid; } - .calloutLegendText { + .tooltip-legend-text { ${typographyCaption1Styles} } - .calloutContentY { + .tooltip-content-y { ${typographyTitle2Styles} } `.withBehaviors( forcedColorsStylesheetBehavior(css` - .insideDonutString { + .text-inside-donut { fill: rgb(179, 179, 179); } - .legendRect, - .calloutBlockContainer { + .legend-rect, + .tooltip-body { forced-color-adjust: none; } - .calloutLegendText, - .calloutContentY { + .tooltip-legend-text, + .tooltip-content-y { forced-color-adjust: auto; color: rgb(255, 255, 255); } diff --git a/packages/charts/chart-web-components/src/donut-chart/donut-chart.template.ts b/packages/charts/chart-web-components/src/donut-chart/donut-chart.template.ts index bddd8bacfc4d3..fd456c7119deb 100644 --- a/packages/charts/chart-web-components/src/donut-chart/donut-chart.template.ts +++ b/packages/charts/chart-web-components/src/donut-chart/donut-chart.template.ts @@ -18,7 +18,7 @@ export function donutChartTemplate(): ElementViewTemplate< ${when( x => !x.hideLegends, html` -
+
${repeat( x => x.legends, html` `, )}
@@ -44,13 +47,10 @@ export function donutChartTemplate(): ElementViewTemplate< ${when( x => !x.hideTooltip && x.tooltipProps.isVisible, html` -
-
-
${x => x.tooltipProps.legend}
-
+
+
+
${x => x.tooltipProps.legend}
+
${x => x.tooltipProps.yValue}
diff --git a/packages/charts/chart-web-components/src/donut-chart/donut-chart.ts b/packages/charts/chart-web-components/src/donut-chart/donut-chart.ts index 7e5cb5be6b778..5fbd07a60b716 100644 --- a/packages/charts/chart-web-components/src/donut-chart/donut-chart.ts +++ b/packages/charts/chart-web-components/src/donut-chart/donut-chart.ts @@ -100,7 +100,7 @@ export class DonutChart extends FASTElement { const pathOutline = document.createElementNS(SVG_NAMESPACE_URI, 'path'); arcGroup.appendChild(pathOutline); - pathOutline.classList.add('focusOutline'); + pathOutline.classList.add('arc-outline'); pathOutline.setAttribute('d', arc(arcDatum)!); const path = document.createElementNS(SVG_NAMESPACE_URI, 'path'); @@ -159,7 +159,7 @@ export class DonutChart extends FASTElement { if (this.valueInsideDonut) { const text = document.createElementNS(SVG_NAMESPACE_URI, 'text'); this.group.appendChild(text); - text.classList.add('insideDonutString'); + text.classList.add('text-inside-donut'); text.setAttribute('x', '0'); text.setAttribute('y', '0'); text.setAttribute('text-anchor', 'middle'); diff --git a/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.styles.ts b/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.styles.ts index e68d8c17e3c1c..1ff922527f64b 100644 --- a/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.styles.ts +++ b/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.styles.ts @@ -23,7 +23,7 @@ import { export const styles: ElementStyles = css` ${display('inline-block')} - .rootDiv { + .root-div { position: relative; } .root { @@ -71,7 +71,7 @@ export const styles: ElementStyles = css` .bar.inactive { opacity: 0.1; } - .chartTitle { + .chart-title { ${typographyBody1Styles} display: flex; justify-content: space-between; @@ -100,36 +100,36 @@ export const styles: ElementStyles = css` background: none; text-transform: capitalize; } - .legendRect { + .legend-rect { width: 12px; height: 12px; margin-right: ${spacingHorizontalS}; border: 1px solid; } - .legendText { + .legend-text { ${typographyCaption1Styles} color: ${colorNeutralForeground1}; } - .legend.inactive .legendRect { + .legend.inactive .legend-rect { background-color: transparent !important; } - .legend.inactive .legendText { + .legend.inactive .legend-text { opacity: 0.67; } - .barLabel { + .bar-label { ${typographyBody1StrongStyles} fill: ${colorNeutralForeground1}; } - .chartTitleDiv { + .chart-title-div { width: 100%; display: flex; justify-content: space-between; } - .ratioNumerator { + .ratio-numerator { ${typographyBody1StrongStyles} color: ${colorNeutralForeground1}; } - .ratioDenominator { + .ratio-denominator { ${typographyBody1StrongStyles} color: ${colorNeutralForeground1}; font-weight: bold; diff --git a/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.template.ts b/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.template.ts index ccd222108b4b2..300e8121140b0 100644 --- a/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.template.ts +++ b/packages/charts/chart-web-components/src/horizontal-bar-chart/horizontal-bar-chart.template.ts @@ -15,7 +15,7 @@ getGroupper(tabsterCore); */ export function horizontalbarchartTemplate(): ElementViewTemplate { return html`