@cloudscape-design/chart-components 1.0.73 → 1.0.75

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/cartesian-chart/chart-cartesian-internal.js +2 -1
  2. package/cartesian-chart/chart-cartesian-internal.js.map +1 -1
  3. package/cartesian-chart/chart-series-cartesian.js +12 -1
  4. package/cartesian-chart/chart-series-cartesian.js.map +1 -1
  5. package/cartesian-chart/index.js +40 -4
  6. package/cartesian-chart/index.js.map +1 -1
  7. package/cartesian-chart/interfaces.d.ts +9 -1
  8. package/cartesian-chart/interfaces.js.map +1 -1
  9. package/core/chart-core.js +3 -3
  10. package/core/chart-core.js.map +1 -1
  11. package/core/components/core-legend.d.ts +2 -1
  12. package/core/components/core-legend.js +2 -2
  13. package/core/components/core-legend.js.map +1 -1
  14. package/core/interfaces.d.ts +4 -2
  15. package/core/interfaces.js.map +1 -1
  16. package/core/utils.d.ts +4 -0
  17. package/core/utils.js +6 -2
  18. package/core/utils.js.map +1 -1
  19. package/internal/api-docs/components/cartesian-chart.js +12 -66
  20. package/internal/api-docs/test-utils-doc/dom.js +44 -4
  21. package/internal/api-docs/test-utils-doc/selectors.js +44 -4
  22. package/internal/components/chart-legend/index.d.ts +2 -1
  23. package/internal/components/chart-legend/index.js +2 -2
  24. package/internal/components/chart-legend/index.js.map +1 -1
  25. package/internal/environment.js +1 -1
  26. package/internal/environment.json +1 -1
  27. package/internal/generated/styles/tokens.d.ts +6 -0
  28. package/internal/generated/styles/tokens.js +6 -0
  29. package/internal/generated/theming/index.cjs +33 -1
  30. package/internal/generated/theming/index.cjs.d.ts +63 -0
  31. package/internal/generated/theming/index.d.ts +63 -0
  32. package/internal/generated/theming/index.js +33 -1
  33. package/internal/manifest.json +1 -1
  34. package/package.json +1 -1
  35. package/test-utils/dom/internal/base.d.ts +8 -2
  36. package/test-utils/dom/internal/base.js +11 -3
  37. package/test-utils/dom/internal/base.js.map +1 -1
  38. package/test-utils/dom/internal/core.d.ts +3 -2
  39. package/test-utils/dom/internal/core.js +5 -5
  40. package/test-utils/dom/internal/core.js.map +1 -1
  41. package/test-utils/selectors/internal/base.d.ts +8 -2
  42. package/test-utils/selectors/internal/base.js +9 -3
  43. package/test-utils/selectors/internal/base.js.map +1 -1
  44. package/test-utils/selectors/internal/core.d.ts +3 -2
  45. package/test-utils/selectors/internal/core.js +3 -5
  46. package/test-utils/selectors/internal/core.js.map +1 -1
@@ -2297,6 +2297,8 @@ export var preset = {
2297
2297
  "fontTabsSize": "{fontSizeHeadingS}",
2298
2298
  "fontWayfindingLinkActiveWeight": "700",
2299
2299
  "fontWeightButton": "700",
2300
+ "fontWeightAlertHeader": "700",
2301
+ "fontWeightFlashbarHeader": "700",
2300
2302
  "fontWeightHeadingXl": "700",
2301
2303
  "fontWeightHeadingL": "700",
2302
2304
  "fontWeightHeadingM": "700",
@@ -2361,6 +2363,10 @@ export var preset = {
2361
2363
  "borderWidthCard": "{borderDividerSectionWidth}",
2362
2364
  "borderWidthCardHighlighted": "{borderItemWidth}",
2363
2365
  "borderWidthAlert": "2px",
2366
+ "borderWidthAlertBlockStart": "{borderWidthAlert}",
2367
+ "borderWidthAlertBlockEnd": "{borderWidthAlert}",
2368
+ "borderWidthAlertInlineStart": "{borderWidthAlert}",
2369
+ "borderWidthAlertInlineEnd": "{borderWidthAlert}",
2364
2370
  "borderWidthButton": "2px",
2365
2371
  "borderWidthDropdown": "2px",
2366
2372
  "borderWidthField": "1px",
@@ -11864,6 +11870,8 @@ export var preset = {
11864
11870
  "fontSizeHeadingS",
11865
11871
  "fontSizeHeadingXs",
11866
11872
  "fontWeightButton",
11873
+ "fontWeightAlertHeader",
11874
+ "fontWeightFlashbarHeader",
11867
11875
  "fontWeightHeadingXl",
11868
11876
  "fontWeightHeadingL",
11869
11877
  "fontWeightHeadingM",
@@ -11903,6 +11911,10 @@ export var preset = {
11903
11911
  "borderRadiusToken",
11904
11912
  "borderRadiusTutorialPanelItem",
11905
11913
  "borderWidthAlert",
11914
+ "borderWidthAlertBlockStart",
11915
+ "borderWidthAlertBlockEnd",
11916
+ "borderWidthAlertInlineStart",
11917
+ "borderWidthAlertInlineEnd",
11906
11918
  "borderWidthButton",
11907
11919
  "borderWidthDropdown",
11908
11920
  "borderWidthField",
@@ -11912,7 +11924,8 @@ export var preset = {
11912
11924
  "borderWidthIconNormal",
11913
11925
  "borderWidthIconMedium",
11914
11926
  "borderWidthIconBig",
11915
- "borderWidthIconLarge"
11927
+ "borderWidthIconLarge",
11928
+ "spaceAlertVertical"
11916
11929
  ],
11917
11930
  "exposed": [
11918
11931
  "colorChartsRed300",
@@ -12252,6 +12265,8 @@ export var preset = {
12252
12265
  "fontSizeHeadingS",
12253
12266
  "fontSizeHeadingXs",
12254
12267
  "fontWeightButton",
12268
+ "fontWeightAlertHeader",
12269
+ "fontWeightFlashbarHeader",
12255
12270
  "fontWeightHeadingXl",
12256
12271
  "fontWeightHeadingL",
12257
12272
  "fontWeightHeadingM",
@@ -12292,6 +12307,10 @@ export var preset = {
12292
12307
  "borderRadiusChatBubble",
12293
12308
  "borderRadiusTutorialPanelItem",
12294
12309
  "borderWidthAlert",
12310
+ "borderWidthAlertBlockStart",
12311
+ "borderWidthAlertBlockEnd",
12312
+ "borderWidthAlertInlineStart",
12313
+ "borderWidthAlertInlineEnd",
12295
12314
  "borderWidthButton",
12296
12315
  "borderWidthDropdown",
12297
12316
  "borderWidthField",
@@ -12315,6 +12334,7 @@ export var preset = {
12315
12334
  "motionKeyframesFadeOut",
12316
12335
  "motionKeyframesStatusIconError",
12317
12336
  "motionKeyframesScalePopup",
12337
+ "spaceAlertVertical",
12318
12338
  "spaceContainerHorizontal",
12319
12339
  "spaceFieldHorizontal",
12320
12340
  "spaceTreeViewIndentation",
@@ -12926,6 +12946,8 @@ export var preset = {
12926
12946
  "fontTabsSize": "font-tabs-size",
12927
12947
  "fontWayfindingLinkActiveWeight": "font-wayfinding-link-active-weight",
12928
12948
  "fontWeightButton": "font-weight-button",
12949
+ "fontWeightAlertHeader": "font-weight-alert-header",
12950
+ "fontWeightFlashbarHeader": "font-weight-flashbar-header",
12929
12951
  "fontWeightHeadingXl": "font-weight-heading-xl",
12930
12952
  "fontWeightHeadingL": "font-weight-heading-l",
12931
12953
  "fontWeightHeadingM": "font-weight-heading-m",
@@ -12990,6 +13012,10 @@ export var preset = {
12990
13012
  "borderWidthCard": "border-width-card",
12991
13013
  "borderWidthCardHighlighted": "border-width-card-highlighted",
12992
13014
  "borderWidthAlert": "border-width-alert",
13015
+ "borderWidthAlertBlockStart": "border-width-alert-block-start",
13016
+ "borderWidthAlertBlockEnd": "border-width-alert-block-end",
13017
+ "borderWidthAlertInlineStart": "border-width-alert-inline-start",
13018
+ "borderWidthAlertInlineEnd": "border-width-alert-inline-end",
12993
13019
  "borderWidthButton": "border-width-button",
12994
13020
  "borderWidthDropdown": "border-width-dropdown",
12995
13021
  "borderWidthField": "border-width-field",
@@ -13758,6 +13784,8 @@ export var preset = {
13758
13784
  "fontTabsSize": "--font-tabs-size-18irgl",
13759
13785
  "fontWayfindingLinkActiveWeight": "--font-wayfinding-link-active-weight-ny4hup",
13760
13786
  "fontWeightButton": "--font-weight-button-0eg20c",
13787
+ "fontWeightAlertHeader": "--font-weight-alert-header-zg25o1",
13788
+ "fontWeightFlashbarHeader": "--font-weight-flashbar-header-fg5kye",
13761
13789
  "fontWeightHeadingXl": "--font-weight-heading-xl-u3m4we",
13762
13790
  "fontWeightHeadingL": "--font-weight-heading-l-0t6dwc",
13763
13791
  "fontWeightHeadingM": "--font-weight-heading-m-zf82dr",
@@ -13822,6 +13850,10 @@ export var preset = {
13822
13850
  "borderWidthCard": "--border-width-card-x24gzt",
13823
13851
  "borderWidthCardHighlighted": "--border-width-card-highlighted-x17dhn",
13824
13852
  "borderWidthAlert": "--border-width-alert-tuifgy",
13853
+ "borderWidthAlertBlockStart": "--border-width-alert-block-start-5wbfsk",
13854
+ "borderWidthAlertBlockEnd": "--border-width-alert-block-end-q8rr42",
13855
+ "borderWidthAlertInlineStart": "--border-width-alert-inline-start-gjm6m1",
13856
+ "borderWidthAlertInlineEnd": "--border-width-alert-inline-end-9s426v",
13825
13857
  "borderWidthButton": "--border-width-button-jm0qg7",
13826
13858
  "borderWidthDropdown": "--border-width-dropdown-youcay",
13827
13859
  "borderWidthField": "--border-width-field-2xc78x",
@@ -1,3 +1,3 @@
1
1
  {
2
- "commit": "77c54169119b43465fa50b02c2abbfb263812d68"
2
+ "commit": "dfa2132d36c5729bc9bda7fbb12de415bc277c24"
3
3
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cloudscape-design/chart-components",
3
- "version": "1.0.73",
3
+ "version": "1.0.75",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/cloudscape-design/chart-components.git"
@@ -9,8 +9,11 @@ export default class BaseChartWrapper extends ComponentWrapper {
9
9
  findFilter(): null | BaseChartFilterWrapper;
10
10
  /**
11
11
  * Finds chart's legend when defined.
12
+ * @param axisId Optional axis ID to target a specific legend (e.g. "primary", "secondary").
12
13
  */
13
- findLegend(): null | BaseChartLegendWrapper;
14
+ findLegend({ axisId }?: {
15
+ axisId?: string;
16
+ }): null | BaseChartLegendWrapper;
14
17
  /**
15
18
  * Finds chart's tooltip when visible.
16
19
  */
@@ -34,8 +37,11 @@ export default class BaseChartWrapper extends ComponentWrapper {
34
37
  findXAxisTitle(): null | ElementWrapper;
35
38
  /**
36
39
  * Finds visible title of the y axis.
40
+ * @param axisId Optional axis ID to target a specific y axis title (e.g. "secondary").
37
41
  */
38
- findYAxisTitle(): null | ElementWrapper;
42
+ findYAxisTitle({ axisId }?: {
43
+ axisId?: string;
44
+ }): null | ElementWrapper;
39
45
  }
40
46
  export declare class BaseChartFilterWrapper extends ComponentWrapper {
41
47
  static rootSelector: string;
@@ -17,9 +17,13 @@ class BaseChartWrapper extends dom_2.ComponentWrapper {
17
17
  }
18
18
  /**
19
19
  * Finds chart's legend when defined.
20
+ * @param axisId Optional axis ID to target a specific legend (e.g. "primary", "secondary").
20
21
  */
21
- findLegend() {
22
- return this.findComponent(`.${BaseChartLegendWrapper.rootSelector}`, BaseChartLegendWrapper);
22
+ findLegend({ axisId } = {}) {
23
+ const selector = axisId
24
+ ? `.${BaseChartLegendWrapper.rootSelector}[data-axisid="${axisId}"]`
25
+ : `.${BaseChartLegendWrapper.rootSelector}`;
26
+ return this.findComponent(selector, BaseChartLegendWrapper);
23
27
  }
24
28
  /**
25
29
  * Finds chart's tooltip when visible.
@@ -55,9 +59,13 @@ class BaseChartWrapper extends dom_2.ComponentWrapper {
55
59
  }
56
60
  /**
57
61
  * Finds visible title of the y axis.
62
+ * @param axisId Optional axis ID to target a specific y axis title (e.g. "secondary").
58
63
  */
59
- findYAxisTitle() {
64
+ findYAxisTitle({ axisId } = {}) {
60
65
  var _a;
66
+ if (axisId) {
67
+ return this.find(`.highcharts-axis.awsui-axis-${axisId} > .highcharts-axis-title`);
68
+ }
61
69
  return ((_a = this.findByClassName(styles_selectors_js_1.default["axis-y-title"])) !== null && _a !== void 0 ? _a : this.find(`.highcharts-axis.${styles_selectors_js_1.default["axis-y"]} > .highcharts-axis-title`));
62
70
  }
63
71
  }
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../../src/test-utils/dom/internal/base.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { ButtonWrapper } from \"@cloudscape-design/components/test-utils/dom\";\nimport ChartTooltipWrapper from \"@cloudscape-design/components/test-utils/dom/internal/chart-tooltip\";\nimport { ComponentWrapper, ElementWrapper } from \"@cloudscape-design/test-utils-core/dom\";\n\nimport testClasses from \"../../../core/test-classes/styles.selectors.js\";\nimport legendTestClasses from \"../../../internal/components/chart-legend/test-classes/styles.selectors.js\";\n\nexport default class BaseChartWrapper extends ComponentWrapper {\n static rootSelector: string = testClasses.root;\n\n /**\n * Finds chart's filters area when default series filter or additional filters are defined.\n */\n public findFilter(): null | BaseChartFilterWrapper {\n return this.findComponent(`.${BaseChartFilterWrapper.rootSelector}`, BaseChartFilterWrapper);\n }\n\n /**\n * Finds chart's legend when defined.\n */\n public findLegend(): null | BaseChartLegendWrapper {\n return this.findComponent(`.${BaseChartLegendWrapper.rootSelector}`, BaseChartLegendWrapper);\n }\n\n /**\n * Finds chart's tooltip when visible.\n */\n public findTooltip(): null | ChartTooltipWrapper {\n return this.findComponent(`.${ChartTooltipWrapper.rootSelector}`, ChartTooltipWrapper);\n }\n\n /**\n * Finds chart's no-data when the chart is in no-data state.\n */\n public findNoData(): null | BaseChartNoDataWrapper {\n return this.findComponent(`.${testClasses[\"no-data\"]}`, BaseChartNoDataWrapper);\n }\n\n /**\n * Finds fallback slot, rendered when highcharts=`null`.\n */\n public findFallback(): null | ElementWrapper {\n return this.findByClassName(testClasses.fallback);\n }\n\n /**\n * Finds focusable chart application element. When focused, it renders a focus outline around the chart,\n * and accepts keyboard commands. The application element is not available in empty charts.\n */\n public findApplication(): null | ElementWrapper {\n return this.findByClassName(testClasses.application);\n }\n\n /**\n * Finds visible title of the x axis.\n */\n public findXAxisTitle(): null | ElementWrapper {\n return (\n this.findByClassName(testClasses[\"axis-x-title\"]) ??\n this.find(`.highcharts-axis.${testClasses[\"axis-x\"]} > .highcharts-axis-title`)\n );\n }\n\n /**\n * Finds visible title of the y axis.\n */\n public findYAxisTitle(): null | ElementWrapper {\n return (\n this.findByClassName(testClasses[\"axis-y-title\"]) ??\n this.find(`.highcharts-axis.${testClasses[\"axis-y\"]} > .highcharts-axis-title`)\n );\n }\n}\n\nexport class BaseChartFilterWrapper extends ComponentWrapper {\n static rootSelector: string = testClasses[\"chart-filters\"];\n\n /**\n * Finds default series filter when defined.\n */\n public findSeriesFilter(): null | ElementWrapper {\n return this.findByClassName(testClasses[\"chart-filters-series\"]);\n }\n\n /**\n * Finds custom additional filters slot when defined.\n */\n public findAdditionalFilters(): null | ElementWrapper {\n return this.findByClassName(testClasses[\"chart-filters-additional\"]);\n }\n}\n\nexport class BaseChartNoDataWrapper extends ComponentWrapper {\n /**\n * Finds no-data empty slot when the chart is in empty state.\n */\n public findEmpty(): null | ElementWrapper {\n return this.findByClassName(testClasses[\"no-data-empty\"]);\n }\n\n /**\n * Finds no-data no-match slot when the chart is in no-match state.\n */\n public findNoMatch(): null | ElementWrapper {\n return this.findByClassName(testClasses[\"no-data-no-match\"]);\n }\n\n /**\n * Finds no-data loading slot when the chart is in loading state.\n */\n public findLoading(): null | ElementWrapper {\n return this.findByClassName(testClasses[\"no-data-loading\"]);\n }\n\n /**\n * Finds no-data error slot when the chart is in error state.\n */\n public findError(): null | ElementWrapper {\n return this.findByClassName(testClasses[\"no-data-error\"]);\n }\n\n /**\n * Finds no-data retry button when the chart is in error state, and uses the default recovery button.\n */\n public findRetryButton(): null | ButtonWrapper {\n return this.findComponent(`.${testClasses[\"no-data-retry\"]}`, ButtonWrapper);\n }\n}\n\ninterface LegendItemOptions {\n active?: boolean;\n}\n\nexport class BaseChartLegendWrapper extends ComponentWrapper {\n static rootSelector: string = legendTestClasses.root;\n\n /**\n * Finds legend's visible title element when defined.\n */\n findTitle(): ElementWrapper | null {\n return this.findByClassName(legendTestClasses.title);\n }\n\n /**\n * Finds legend's actions slot when defined.\n */\n findActions(): ElementWrapper | null {\n return this.findByClassName(legendTestClasses.actions);\n }\n\n /**\n * Finds legend items that match given options:\n * * `active` (optional, boolean) - Matches only active legend items when `true`, and only inactive when `false`.\n * When options are not set, the function matches all legend items.\n */\n findItems(options?: LegendItemOptions): Array<ElementWrapper> {\n let selector = `.${legendTestClasses.item}`;\n if (options?.active === true) {\n selector += `:not(.${legendTestClasses[\"hidden-item\"]})`;\n }\n if (options?.active === false) {\n selector += `.${legendTestClasses[\"hidden-item\"]}`;\n }\n return this.findAll(selector);\n }\n}\n"]}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../../src/test-utils/dom/internal/base.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { ButtonWrapper } from \"@cloudscape-design/components/test-utils/dom\";\nimport ChartTooltipWrapper from \"@cloudscape-design/components/test-utils/dom/internal/chart-tooltip\";\nimport { ComponentWrapper, ElementWrapper } from \"@cloudscape-design/test-utils-core/dom\";\n\nimport testClasses from \"../../../core/test-classes/styles.selectors.js\";\nimport legendTestClasses from \"../../../internal/components/chart-legend/test-classes/styles.selectors.js\";\n\nexport default class BaseChartWrapper extends ComponentWrapper {\n static rootSelector: string = testClasses.root;\n\n /**\n * Finds chart's filters area when default series filter or additional filters are defined.\n */\n public findFilter(): null | BaseChartFilterWrapper {\n return this.findComponent(`.${BaseChartFilterWrapper.rootSelector}`, BaseChartFilterWrapper);\n }\n\n /**\n * Finds chart's legend when defined.\n * @param axisId Optional axis ID to target a specific legend (e.g. \"primary\", \"secondary\").\n */\n public findLegend({ axisId }: { axisId?: string } = {}): null | BaseChartLegendWrapper {\n const selector = axisId\n ? `.${BaseChartLegendWrapper.rootSelector}[data-axisid=\"${axisId}\"]`\n : `.${BaseChartLegendWrapper.rootSelector}`;\n return this.findComponent(selector, BaseChartLegendWrapper);\n }\n\n /**\n * Finds chart's tooltip when visible.\n */\n public findTooltip(): null | ChartTooltipWrapper {\n return this.findComponent(`.${ChartTooltipWrapper.rootSelector}`, ChartTooltipWrapper);\n }\n\n /**\n * Finds chart's no-data when the chart is in no-data state.\n */\n public findNoData(): null | BaseChartNoDataWrapper {\n return this.findComponent(`.${testClasses[\"no-data\"]}`, BaseChartNoDataWrapper);\n }\n\n /**\n * Finds fallback slot, rendered when highcharts=`null`.\n */\n public findFallback(): null | ElementWrapper {\n return this.findByClassName(testClasses.fallback);\n }\n\n /**\n * Finds focusable chart application element. When focused, it renders a focus outline around the chart,\n * and accepts keyboard commands. The application element is not available in empty charts.\n */\n public findApplication(): null | ElementWrapper {\n return this.findByClassName(testClasses.application);\n }\n\n /**\n * Finds visible title of the x axis.\n */\n public findXAxisTitle(): null | ElementWrapper {\n return (\n this.findByClassName(testClasses[\"axis-x-title\"]) ??\n this.find(`.highcharts-axis.${testClasses[\"axis-x\"]} > .highcharts-axis-title`)\n );\n }\n\n /**\n * Finds visible title of the y axis.\n * @param axisId Optional axis ID to target a specific y axis title (e.g. \"secondary\").\n */\n public findYAxisTitle({ axisId }: { axisId?: string } = {}): null | ElementWrapper {\n if (axisId) {\n return this.find(`.highcharts-axis.awsui-axis-${axisId} > .highcharts-axis-title`);\n }\n return (\n this.findByClassName(testClasses[\"axis-y-title\"]) ??\n this.find(`.highcharts-axis.${testClasses[\"axis-y\"]} > .highcharts-axis-title`)\n );\n }\n}\n\nexport class BaseChartFilterWrapper extends ComponentWrapper {\n static rootSelector: string = testClasses[\"chart-filters\"];\n\n /**\n * Finds default series filter when defined.\n */\n public findSeriesFilter(): null | ElementWrapper {\n return this.findByClassName(testClasses[\"chart-filters-series\"]);\n }\n\n /**\n * Finds custom additional filters slot when defined.\n */\n public findAdditionalFilters(): null | ElementWrapper {\n return this.findByClassName(testClasses[\"chart-filters-additional\"]);\n }\n}\n\nexport class BaseChartNoDataWrapper extends ComponentWrapper {\n /**\n * Finds no-data empty slot when the chart is in empty state.\n */\n public findEmpty(): null | ElementWrapper {\n return this.findByClassName(testClasses[\"no-data-empty\"]);\n }\n\n /**\n * Finds no-data no-match slot when the chart is in no-match state.\n */\n public findNoMatch(): null | ElementWrapper {\n return this.findByClassName(testClasses[\"no-data-no-match\"]);\n }\n\n /**\n * Finds no-data loading slot when the chart is in loading state.\n */\n public findLoading(): null | ElementWrapper {\n return this.findByClassName(testClasses[\"no-data-loading\"]);\n }\n\n /**\n * Finds no-data error slot when the chart is in error state.\n */\n public findError(): null | ElementWrapper {\n return this.findByClassName(testClasses[\"no-data-error\"]);\n }\n\n /**\n * Finds no-data retry button when the chart is in error state, and uses the default recovery button.\n */\n public findRetryButton(): null | ButtonWrapper {\n return this.findComponent(`.${testClasses[\"no-data-retry\"]}`, ButtonWrapper);\n }\n}\n\ninterface LegendItemOptions {\n active?: boolean;\n}\n\nexport class BaseChartLegendWrapper extends ComponentWrapper {\n static rootSelector: string = legendTestClasses.root;\n\n /**\n * Finds legend's visible title element when defined.\n */\n findTitle(): ElementWrapper | null {\n return this.findByClassName(legendTestClasses.title);\n }\n\n /**\n * Finds legend's actions slot when defined.\n */\n findActions(): ElementWrapper | null {\n return this.findByClassName(legendTestClasses.actions);\n }\n\n /**\n * Finds legend items that match given options:\n * * `active` (optional, boolean) - Matches only active legend items when `true`, and only inactive when `false`.\n * When options are not set, the function matches all legend items.\n */\n findItems(options?: LegendItemOptions): Array<ElementWrapper> {\n let selector = `.${legendTestClasses.item}`;\n if (options?.active === true) {\n selector += `:not(.${legendTestClasses[\"hidden-item\"]})`;\n }\n if (options?.active === false) {\n selector += `.${legendTestClasses[\"hidden-item\"]}`;\n }\n return this.findAll(selector);\n }\n}\n"]}
@@ -5,8 +5,9 @@ export default class CoreChartWrapper extends BaseChartWrapper {
5
5
  findHeader(): null | ElementWrapper;
6
6
  findFooter(): null | ElementWrapper;
7
7
  findNavigator(): null | ElementWrapper;
8
- findLegend(): null | CoreChartLegendWrapper;
9
- findSecondaryLegend(): null | CoreChartLegendWrapper;
8
+ findLegend({ axisId }?: {
9
+ axisId?: string;
10
+ }): null | CoreChartLegendWrapper;
10
11
  findVerticalAxisTitle(): null | ElementWrapper;
11
12
  findHorizontalAxisTitle(): null | ElementWrapper;
12
13
  }
@@ -16,11 +16,11 @@ class CoreChartWrapper extends base_1.default {
16
16
  findNavigator() {
17
17
  return this.findByClassName(styles_selectors_js_1.default["chart-navigator"]);
18
18
  }
19
- findLegend() {
20
- return this.findComponent(`.${CoreChartLegendWrapper.rootSelector}.${styles_selectors_js_1.default["legend-primary"]}`, CoreChartLegendWrapper);
21
- }
22
- findSecondaryLegend() {
23
- return this.findComponent(`.${CoreChartLegendWrapper.rootSelector}.${styles_selectors_js_1.default["legend-secondary"]}`, CoreChartLegendWrapper);
19
+ findLegend({ axisId } = {}) {
20
+ const selector = axisId
21
+ ? `.${CoreChartLegendWrapper.rootSelector}[data-axisid="${axisId}"]`
22
+ : `.${CoreChartLegendWrapper.rootSelector}.${styles_selectors_js_1.default["legend-primary"]}`;
23
+ return this.findComponent(selector, CoreChartLegendWrapper);
24
24
  }
25
25
  findVerticalAxisTitle() {
26
26
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../../../src/test-utils/dom/internal/core.ts"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,sCAAsC;;;AAEtC,uGAAsG;AAGtG,iCAAkE;AAElE,wFAAyE;AAEzE,MAAqB,gBAAiB,SAAQ,cAAgB;IACrD,UAAU;QACf,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAW,CAAC,cAAc,CAAC,CAAC,CAAC;IAC3D,CAAC;IAEM,UAAU;QACf,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAW,CAAC,cAAc,CAAC,CAAC,CAAC;IAC3D,CAAC;IAEM,aAAa;QAClB,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAW,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC9D,CAAC;IAEM,UAAU;QACf,OAAO,IAAI,CAAC,aAAa,CACvB,IAAI,sBAAsB,CAAC,YAAY,IAAI,6BAAW,CAAC,gBAAgB,CAAC,EAAE,EAC1E,sBAAsB,CACvB,CAAC;IACJ,CAAC;IAEM,mBAAmB;QACxB,OAAO,IAAI,CAAC,aAAa,CACvB,IAAI,sBAAsB,CAAC,YAAY,IAAI,6BAAW,CAAC,kBAAkB,CAAC,EAAE,EAC5E,sBAAsB,CACvB,CAAC;IACJ,CAAC;IAEM,qBAAqB;;QAC1B,OAAO,CACL,MAAA,IAAI,CAAC,eAAe,CAAC,6BAAW,CAAC,qBAAqB,CAAC,CAAC,mCACxD,IAAI,CAAC,IAAI,CAAC,oBAAoB,6BAAW,CAAC,eAAe,CAAC,2BAA2B,CAAC,CACvF,CAAC;IACJ,CAAC;IAEM,uBAAuB;QAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,oBAAoB,6BAAW,CAAC,iBAAiB,CAAC,2BAA2B,CAAC,CAAC;IAClG,CAAC;CACF;AArCD,mCAqCC;AAED,MAAa,sBAAuB,SAAQ,6BAAsB;IACzD,eAAe;QACpB,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,uBAAmB,CAAC,YAAY,EAAE,EAAE,uBAAmB,CAAC,CAAC;IACzF,CAAC;CACF;AAJD,wDAIC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport ChartTooltipWrapper from \"@cloudscape-design/components/test-utils/dom/internal/chart-tooltip\";\nimport { ElementWrapper } from \"@cloudscape-design/test-utils-core/dom\";\n\nimport BaseChartWrapper, { BaseChartLegendWrapper } from \"./base\";\n\nimport testClasses from \"../../../core/test-classes/styles.selectors.js\";\n\nexport default class CoreChartWrapper extends BaseChartWrapper {\n public findHeader(): null | ElementWrapper {\n return this.findByClassName(testClasses[\"chart-header\"]);\n }\n\n public findFooter(): null | ElementWrapper {\n return this.findByClassName(testClasses[\"chart-footer\"]);\n }\n\n public findNavigator(): null | ElementWrapper {\n return this.findByClassName(testClasses[\"chart-navigator\"]);\n }\n\n public findLegend(): null | CoreChartLegendWrapper {\n return this.findComponent(\n `.${CoreChartLegendWrapper.rootSelector}.${testClasses[\"legend-primary\"]}`,\n CoreChartLegendWrapper,\n );\n }\n\n public findSecondaryLegend(): null | CoreChartLegendWrapper {\n return this.findComponent(\n `.${CoreChartLegendWrapper.rootSelector}.${testClasses[\"legend-secondary\"]}`,\n CoreChartLegendWrapper,\n );\n }\n\n public findVerticalAxisTitle(): null | ElementWrapper {\n return (\n this.findByClassName(testClasses[\"axis-vertical-title\"]) ??\n this.find(`.highcharts-axis.${testClasses[\"axis-vertical\"]} > .highcharts-axis-title`)\n );\n }\n\n public findHorizontalAxisTitle(): null | ElementWrapper {\n return this.find(`.highcharts-axis.${testClasses[\"axis-horizontal\"]} > .highcharts-axis-title`);\n }\n}\n\nexport class CoreChartLegendWrapper extends BaseChartLegendWrapper {\n public findItemTooltip(): null | ChartTooltipWrapper {\n return this.findComponent(`.${ChartTooltipWrapper.rootSelector}`, ChartTooltipWrapper);\n }\n}\n"]}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../../../src/test-utils/dom/internal/core.ts"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,sCAAsC;;;AAEtC,uGAAsG;AAGtG,iCAAkE;AAElE,wFAAyE;AAEzE,MAAqB,gBAAiB,SAAQ,cAAgB;IACrD,UAAU;QACf,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAW,CAAC,cAAc,CAAC,CAAC,CAAC;IAC3D,CAAC;IAEM,UAAU;QACf,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAW,CAAC,cAAc,CAAC,CAAC,CAAC;IAC3D,CAAC;IAEM,aAAa;QAClB,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAW,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC9D,CAAC;IAEM,UAAU,CAAC,EAAE,MAAM,KAA0B,EAAE;QACpD,MAAM,QAAQ,GAAG,MAAM;YACrB,CAAC,CAAC,IAAI,sBAAsB,CAAC,YAAY,iBAAiB,MAAM,IAAI;YACpE,CAAC,CAAC,IAAI,sBAAsB,CAAC,YAAY,IAAI,6BAAW,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC/E,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAC;IAC9D,CAAC;IAEM,qBAAqB;;QAC1B,OAAO,CACL,MAAA,IAAI,CAAC,eAAe,CAAC,6BAAW,CAAC,qBAAqB,CAAC,CAAC,mCACxD,IAAI,CAAC,IAAI,CAAC,oBAAoB,6BAAW,CAAC,eAAe,CAAC,2BAA2B,CAAC,CACvF,CAAC;IACJ,CAAC;IAEM,uBAAuB;QAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,oBAAoB,6BAAW,CAAC,iBAAiB,CAAC,2BAA2B,CAAC,CAAC;IAClG,CAAC;CACF;AA9BD,mCA8BC;AAED,MAAa,sBAAuB,SAAQ,6BAAsB;IACzD,eAAe;QACpB,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,uBAAmB,CAAC,YAAY,EAAE,EAAE,uBAAmB,CAAC,CAAC;IACzF,CAAC;CACF;AAJD,wDAIC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport ChartTooltipWrapper from \"@cloudscape-design/components/test-utils/dom/internal/chart-tooltip\";\nimport { ElementWrapper } from \"@cloudscape-design/test-utils-core/dom\";\n\nimport BaseChartWrapper, { BaseChartLegendWrapper } from \"./base\";\n\nimport testClasses from \"../../../core/test-classes/styles.selectors.js\";\n\nexport default class CoreChartWrapper extends BaseChartWrapper {\n public findHeader(): null | ElementWrapper {\n return this.findByClassName(testClasses[\"chart-header\"]);\n }\n\n public findFooter(): null | ElementWrapper {\n return this.findByClassName(testClasses[\"chart-footer\"]);\n }\n\n public findNavigator(): null | ElementWrapper {\n return this.findByClassName(testClasses[\"chart-navigator\"]);\n }\n\n public findLegend({ axisId }: { axisId?: string } = {}): null | CoreChartLegendWrapper {\n const selector = axisId\n ? `.${CoreChartLegendWrapper.rootSelector}[data-axisid=\"${axisId}\"]`\n : `.${CoreChartLegendWrapper.rootSelector}.${testClasses[\"legend-primary\"]}`;\n return this.findComponent(selector, CoreChartLegendWrapper);\n }\n\n public findVerticalAxisTitle(): null | ElementWrapper {\n return (\n this.findByClassName(testClasses[\"axis-vertical-title\"]) ??\n this.find(`.highcharts-axis.${testClasses[\"axis-vertical\"]} > .highcharts-axis-title`)\n );\n }\n\n public findHorizontalAxisTitle(): null | ElementWrapper {\n return this.find(`.highcharts-axis.${testClasses[\"axis-horizontal\"]} > .highcharts-axis-title`);\n }\n}\n\nexport class CoreChartLegendWrapper extends BaseChartLegendWrapper {\n public findItemTooltip(): null | ChartTooltipWrapper {\n return this.findComponent(`.${ChartTooltipWrapper.rootSelector}`, ChartTooltipWrapper);\n }\n}\n"]}
@@ -9,8 +9,11 @@ export default class BaseChartWrapper extends ComponentWrapper {
9
9
  findFilter(): BaseChartFilterWrapper;
10
10
  /**
11
11
  * Finds chart's legend when defined.
12
+ * @param axisId Optional axis ID to target a specific legend (e.g. "primary", "secondary").
12
13
  */
13
- findLegend(): BaseChartLegendWrapper;
14
+ findLegend({ axisId }?: {
15
+ axisId?: string;
16
+ }): BaseChartLegendWrapper;
14
17
  /**
15
18
  * Finds chart's tooltip when visible.
16
19
  */
@@ -34,8 +37,11 @@ export default class BaseChartWrapper extends ComponentWrapper {
34
37
  findXAxisTitle(): ElementWrapper;
35
38
  /**
36
39
  * Finds visible title of the y axis.
40
+ * @param axisId Optional axis ID to target a specific y axis title (e.g. "secondary").
37
41
  */
38
- findYAxisTitle(): ElementWrapper;
42
+ findYAxisTitle({ axisId }?: {
43
+ axisId?: string;
44
+ }): ElementWrapper;
39
45
  }
40
46
  export declare class BaseChartFilterWrapper extends ComponentWrapper {
41
47
  static rootSelector: string;
@@ -17,9 +17,11 @@ class BaseChartWrapper extends selectors_2.ComponentWrapper {
17
17
  }
18
18
  /**
19
19
  * Finds chart's legend when defined.
20
+ * @param axisId Optional axis ID to target a specific legend (e.g. "primary", "secondary").
20
21
  */
21
- findLegend() {
22
- return this.findComponent(`.${BaseChartLegendWrapper.rootSelector}`, BaseChartLegendWrapper);
22
+ findLegend({ axisId } = {}) {
23
+ const selector = axisId ? `.${BaseChartLegendWrapper.rootSelector}[data-axisid="${axisId}"]` : `.${BaseChartLegendWrapper.rootSelector}`;
24
+ return this.findComponent(selector, BaseChartLegendWrapper);
23
25
  }
24
26
  /**
25
27
  * Finds chart's tooltip when visible.
@@ -55,9 +57,13 @@ class BaseChartWrapper extends selectors_2.ComponentWrapper {
55
57
  }
56
58
  /**
57
59
  * Finds visible title of the y axis.
60
+ * @param axisId Optional axis ID to target a specific y axis title (e.g. "secondary").
58
61
  */
59
- findYAxisTitle() {
62
+ findYAxisTitle({ axisId } = {}) {
60
63
  var _a;
64
+ if (axisId) {
65
+ return this.find(`.highcharts-axis.awsui-axis-${axisId} > .highcharts-axis-title`);
66
+ }
61
67
  return (_a = this.findByClassName(styles_selectors_js_1.default["axis-y-title"])) !== null && _a !== void 0 ? _a : this.find(`.highcharts-axis.${styles_selectors_js_1.default["axis-y"]} > .highcharts-axis-title`);
62
68
  }
63
69
  }
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../../src/test-utils/selectors/internal/base.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { ButtonWrapper } from \"@cloudscape-design/components/test-utils/selectors\";\nimport ChartTooltipWrapper from \"@cloudscape-design/components/test-utils/selectors/internal/chart-tooltip\";\nimport { ComponentWrapper, ElementWrapper } from \"@cloudscape-design/test-utils-core/selectors\";\nimport testClasses from \"../../../core/test-classes/styles.selectors.js\";\nimport legendTestClasses from \"../../../internal/components/chart-legend/test-classes/styles.selectors.js\";\nexport default class BaseChartWrapper extends ComponentWrapper {\n static rootSelector: string = testClasses.root;\n\n /**\n * Finds chart's filters area when default series filter or additional filters are defined.\n */\n public findFilter() {\n return this.findComponent(`.${BaseChartFilterWrapper.rootSelector}`, BaseChartFilterWrapper);\n }\n\n /**\n * Finds chart's legend when defined.\n */\n public findLegend() {\n return this.findComponent(`.${BaseChartLegendWrapper.rootSelector}`, BaseChartLegendWrapper);\n }\n\n /**\n * Finds chart's tooltip when visible.\n */\n public findTooltip() {\n return this.findComponent(`.${ChartTooltipWrapper.rootSelector}`, ChartTooltipWrapper);\n }\n\n /**\n * Finds chart's no-data when the chart is in no-data state.\n */\n public findNoData() {\n return this.findComponent(`.${testClasses[\"no-data\"]}`, BaseChartNoDataWrapper);\n }\n\n /**\n * Finds fallback slot, rendered when highcharts=`null`.\n */\n public findFallback() {\n return this.findByClassName(testClasses.fallback);\n }\n\n /**\n * Finds focusable chart application element. When focused, it renders a focus outline around the chart,\n * and accepts keyboard commands. The application element is not available in empty charts.\n */\n public findApplication() {\n return this.findByClassName(testClasses.application);\n }\n\n /**\n * Finds visible title of the x axis.\n */\n public findXAxisTitle() {\n return this.findByClassName(testClasses[\"axis-x-title\"]) ?? this.find(`.highcharts-axis.${testClasses[\"axis-x\"]} > .highcharts-axis-title`);\n }\n\n /**\n * Finds visible title of the y axis.\n */\n public findYAxisTitle() {\n return this.findByClassName(testClasses[\"axis-y-title\"]) ?? this.find(`.highcharts-axis.${testClasses[\"axis-y\"]} > .highcharts-axis-title`);\n }\n}\nexport class BaseChartFilterWrapper extends ComponentWrapper {\n static rootSelector: string = testClasses[\"chart-filters\"];\n\n /**\n * Finds default series filter when defined.\n */\n public findSeriesFilter() {\n return this.findByClassName(testClasses[\"chart-filters-series\"]);\n }\n\n /**\n * Finds custom additional filters slot when defined.\n */\n public findAdditionalFilters() {\n return this.findByClassName(testClasses[\"chart-filters-additional\"]);\n }\n}\nexport class BaseChartNoDataWrapper extends ComponentWrapper {\n /**\n * Finds no-data empty slot when the chart is in empty state.\n */\n public findEmpty() {\n return this.findByClassName(testClasses[\"no-data-empty\"]);\n }\n\n /**\n * Finds no-data no-match slot when the chart is in no-match state.\n */\n public findNoMatch() {\n return this.findByClassName(testClasses[\"no-data-no-match\"]);\n }\n\n /**\n * Finds no-data loading slot when the chart is in loading state.\n */\n public findLoading() {\n return this.findByClassName(testClasses[\"no-data-loading\"]);\n }\n\n /**\n * Finds no-data error slot when the chart is in error state.\n */\n public findError() {\n return this.findByClassName(testClasses[\"no-data-error\"]);\n }\n\n /**\n * Finds no-data retry button when the chart is in error state, and uses the default recovery button.\n */\n public findRetryButton() {\n return this.findComponent(`.${testClasses[\"no-data-retry\"]}`, ButtonWrapper);\n }\n}\ninterface LegendItemOptions {\n active?: boolean;\n}\nexport class BaseChartLegendWrapper extends ComponentWrapper {\n static rootSelector: string = legendTestClasses.root;\n\n /**\n * Finds legend's visible title element when defined.\n */\n findTitle() {\n return this.findByClassName(legendTestClasses.title);\n }\n\n /**\n * Finds legend's actions slot when defined.\n */\n findActions() {\n return this.findByClassName(legendTestClasses.actions);\n }\n\n /**\n * Finds legend items that match given options:\n * * `active` (optional, boolean) - Matches only active legend items when `true`, and only inactive when `false`.\n * When options are not set, the function matches all legend items.\n */\n findItems(options?: LegendItemOptions) {\n let selector = `.${legendTestClasses.item}`;\n if (options?.active === true) {\n selector += `:not(.${legendTestClasses[\"hidden-item\"]})`;\n }\n if (options?.active === false) {\n selector += `.${legendTestClasses[\"hidden-item\"]}`;\n }\n return this.findAll(selector);\n }\n}"]}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../../src/test-utils/selectors/internal/base.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { ButtonWrapper } from \"@cloudscape-design/components/test-utils/selectors\";\nimport ChartTooltipWrapper from \"@cloudscape-design/components/test-utils/selectors/internal/chart-tooltip\";\nimport { ComponentWrapper, ElementWrapper } from \"@cloudscape-design/test-utils-core/selectors\";\nimport testClasses from \"../../../core/test-classes/styles.selectors.js\";\nimport legendTestClasses from \"../../../internal/components/chart-legend/test-classes/styles.selectors.js\";\nexport default class BaseChartWrapper extends ComponentWrapper {\n static rootSelector: string = testClasses.root;\n\n /**\n * Finds chart's filters area when default series filter or additional filters are defined.\n */\n public findFilter() {\n return this.findComponent(`.${BaseChartFilterWrapper.rootSelector}`, BaseChartFilterWrapper);\n }\n\n /**\n * Finds chart's legend when defined.\n * @param axisId Optional axis ID to target a specific legend (e.g. \"primary\", \"secondary\").\n */\n public findLegend({\n axisId\n }: {\n axisId?: string;\n } = {}) {\n const selector = axisId ? `.${BaseChartLegendWrapper.rootSelector}[data-axisid=\"${axisId}\"]` : `.${BaseChartLegendWrapper.rootSelector}`;\n return this.findComponent(selector, BaseChartLegendWrapper);\n }\n\n /**\n * Finds chart's tooltip when visible.\n */\n public findTooltip() {\n return this.findComponent(`.${ChartTooltipWrapper.rootSelector}`, ChartTooltipWrapper);\n }\n\n /**\n * Finds chart's no-data when the chart is in no-data state.\n */\n public findNoData() {\n return this.findComponent(`.${testClasses[\"no-data\"]}`, BaseChartNoDataWrapper);\n }\n\n /**\n * Finds fallback slot, rendered when highcharts=`null`.\n */\n public findFallback() {\n return this.findByClassName(testClasses.fallback);\n }\n\n /**\n * Finds focusable chart application element. When focused, it renders a focus outline around the chart,\n * and accepts keyboard commands. The application element is not available in empty charts.\n */\n public findApplication() {\n return this.findByClassName(testClasses.application);\n }\n\n /**\n * Finds visible title of the x axis.\n */\n public findXAxisTitle() {\n return this.findByClassName(testClasses[\"axis-x-title\"]) ?? this.find(`.highcharts-axis.${testClasses[\"axis-x\"]} > .highcharts-axis-title`);\n }\n\n /**\n * Finds visible title of the y axis.\n * @param axisId Optional axis ID to target a specific y axis title (e.g. \"secondary\").\n */\n public findYAxisTitle({\n axisId\n }: {\n axisId?: string;\n } = {}) {\n if (axisId) {\n return this.find(`.highcharts-axis.awsui-axis-${axisId} > .highcharts-axis-title`);\n }\n return this.findByClassName(testClasses[\"axis-y-title\"]) ?? this.find(`.highcharts-axis.${testClasses[\"axis-y\"]} > .highcharts-axis-title`);\n }\n}\nexport class BaseChartFilterWrapper extends ComponentWrapper {\n static rootSelector: string = testClasses[\"chart-filters\"];\n\n /**\n * Finds default series filter when defined.\n */\n public findSeriesFilter() {\n return this.findByClassName(testClasses[\"chart-filters-series\"]);\n }\n\n /**\n * Finds custom additional filters slot when defined.\n */\n public findAdditionalFilters() {\n return this.findByClassName(testClasses[\"chart-filters-additional\"]);\n }\n}\nexport class BaseChartNoDataWrapper extends ComponentWrapper {\n /**\n * Finds no-data empty slot when the chart is in empty state.\n */\n public findEmpty() {\n return this.findByClassName(testClasses[\"no-data-empty\"]);\n }\n\n /**\n * Finds no-data no-match slot when the chart is in no-match state.\n */\n public findNoMatch() {\n return this.findByClassName(testClasses[\"no-data-no-match\"]);\n }\n\n /**\n * Finds no-data loading slot when the chart is in loading state.\n */\n public findLoading() {\n return this.findByClassName(testClasses[\"no-data-loading\"]);\n }\n\n /**\n * Finds no-data error slot when the chart is in error state.\n */\n public findError() {\n return this.findByClassName(testClasses[\"no-data-error\"]);\n }\n\n /**\n * Finds no-data retry button when the chart is in error state, and uses the default recovery button.\n */\n public findRetryButton() {\n return this.findComponent(`.${testClasses[\"no-data-retry\"]}`, ButtonWrapper);\n }\n}\ninterface LegendItemOptions {\n active?: boolean;\n}\nexport class BaseChartLegendWrapper extends ComponentWrapper {\n static rootSelector: string = legendTestClasses.root;\n\n /**\n * Finds legend's visible title element when defined.\n */\n findTitle() {\n return this.findByClassName(legendTestClasses.title);\n }\n\n /**\n * Finds legend's actions slot when defined.\n */\n findActions() {\n return this.findByClassName(legendTestClasses.actions);\n }\n\n /**\n * Finds legend items that match given options:\n * * `active` (optional, boolean) - Matches only active legend items when `true`, and only inactive when `false`.\n * When options are not set, the function matches all legend items.\n */\n findItems(options?: LegendItemOptions) {\n let selector = `.${legendTestClasses.item}`;\n if (options?.active === true) {\n selector += `:not(.${legendTestClasses[\"hidden-item\"]})`;\n }\n if (options?.active === false) {\n selector += `.${legendTestClasses[\"hidden-item\"]}`;\n }\n return this.findAll(selector);\n }\n}"]}
@@ -5,8 +5,9 @@ export default class CoreChartWrapper extends BaseChartWrapper {
5
5
  findHeader(): ElementWrapper;
6
6
  findFooter(): ElementWrapper;
7
7
  findNavigator(): ElementWrapper;
8
- findLegend(): CoreChartLegendWrapper;
9
- findSecondaryLegend(): CoreChartLegendWrapper;
8
+ findLegend({ axisId }?: {
9
+ axisId?: string;
10
+ }): CoreChartLegendWrapper;
10
11
  findVerticalAxisTitle(): ElementWrapper;
11
12
  findHorizontalAxisTitle(): ElementWrapper;
12
13
  }
@@ -16,11 +16,9 @@ class CoreChartWrapper extends base_1.default {
16
16
  findNavigator() {
17
17
  return this.findByClassName(styles_selectors_js_1.default["chart-navigator"]);
18
18
  }
19
- findLegend() {
20
- return this.findComponent(`.${CoreChartLegendWrapper.rootSelector}.${styles_selectors_js_1.default["legend-primary"]}`, CoreChartLegendWrapper);
21
- }
22
- findSecondaryLegend() {
23
- return this.findComponent(`.${CoreChartLegendWrapper.rootSelector}.${styles_selectors_js_1.default["legend-secondary"]}`, CoreChartLegendWrapper);
19
+ findLegend({ axisId } = {}) {
20
+ const selector = axisId ? `.${CoreChartLegendWrapper.rootSelector}[data-axisid="${axisId}"]` : `.${CoreChartLegendWrapper.rootSelector}.${styles_selectors_js_1.default["legend-primary"]}`;
21
+ return this.findComponent(selector, CoreChartLegendWrapper);
24
22
  }
25
23
  findVerticalAxisTitle() {
26
24
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../../../src/test-utils/selectors/internal/core.ts"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,sCAAsC;;;AAEtC,6GAA4G;AAE5G,iCAAkE;AAClE,wFAAyE;AACzE,MAAqB,gBAAiB,SAAQ,cAAgB;IACrD,UAAU;QACf,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAW,CAAC,cAAc,CAAC,CAAC,CAAC;IAC3D,CAAC;IACM,UAAU;QACf,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAW,CAAC,cAAc,CAAC,CAAC,CAAC;IAC3D,CAAC;IACM,aAAa;QAClB,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAW,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC9D,CAAC;IACM,UAAU;QACf,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,sBAAsB,CAAC,YAAY,IAAI,6BAAW,CAAC,gBAAgB,CAAC,EAAE,EAAE,sBAAsB,CAAC,CAAC;IAChI,CAAC;IACM,mBAAmB;QACxB,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,sBAAsB,CAAC,YAAY,IAAI,6BAAW,CAAC,kBAAkB,CAAC,EAAE,EAAE,sBAAsB,CAAC,CAAC;IAClI,CAAC;IACM,qBAAqB;;QAC1B,OAAO,MAAA,IAAI,CAAC,eAAe,CAAC,6BAAW,CAAC,qBAAqB,CAAC,CAAC,mCAAI,IAAI,CAAC,IAAI,CAAC,oBAAoB,6BAAW,CAAC,eAAe,CAAC,2BAA2B,CAAC,CAAC;IAC5J,CAAC;IACM,uBAAuB;QAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,oBAAoB,6BAAW,CAAC,iBAAiB,CAAC,2BAA2B,CAAC,CAAC;IAClG,CAAC;CACF;AAtBD,mCAsBC;AACD,MAAa,sBAAuB,SAAQ,6BAAsB;IACzD,eAAe;QACpB,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,uBAAmB,CAAC,YAAY,EAAE,EAAE,uBAAmB,CAAC,CAAC;IACzF,CAAC;CACF;AAJD,wDAIC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport ChartTooltipWrapper from \"@cloudscape-design/components/test-utils/selectors/internal/chart-tooltip\";\nimport { ElementWrapper } from \"@cloudscape-design/test-utils-core/selectors\";\nimport BaseChartWrapper, { BaseChartLegendWrapper } from \"./base\";\nimport testClasses from \"../../../core/test-classes/styles.selectors.js\";\nexport default class CoreChartWrapper extends BaseChartWrapper {\n public findHeader() {\n return this.findByClassName(testClasses[\"chart-header\"]);\n }\n public findFooter() {\n return this.findByClassName(testClasses[\"chart-footer\"]);\n }\n public findNavigator() {\n return this.findByClassName(testClasses[\"chart-navigator\"]);\n }\n public findLegend() {\n return this.findComponent(`.${CoreChartLegendWrapper.rootSelector}.${testClasses[\"legend-primary\"]}`, CoreChartLegendWrapper);\n }\n public findSecondaryLegend() {\n return this.findComponent(`.${CoreChartLegendWrapper.rootSelector}.${testClasses[\"legend-secondary\"]}`, CoreChartLegendWrapper);\n }\n public findVerticalAxisTitle() {\n return this.findByClassName(testClasses[\"axis-vertical-title\"]) ?? this.find(`.highcharts-axis.${testClasses[\"axis-vertical\"]} > .highcharts-axis-title`);\n }\n public findHorizontalAxisTitle() {\n return this.find(`.highcharts-axis.${testClasses[\"axis-horizontal\"]} > .highcharts-axis-title`);\n }\n}\nexport class CoreChartLegendWrapper extends BaseChartLegendWrapper {\n public findItemTooltip() {\n return this.findComponent(`.${ChartTooltipWrapper.rootSelector}`, ChartTooltipWrapper);\n }\n}"]}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../../../../src/test-utils/selectors/internal/core.ts"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,sCAAsC;;;AAEtC,6GAA4G;AAE5G,iCAAkE;AAClE,wFAAyE;AACzE,MAAqB,gBAAiB,SAAQ,cAAgB;IACrD,UAAU;QACf,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAW,CAAC,cAAc,CAAC,CAAC,CAAC;IAC3D,CAAC;IACM,UAAU;QACf,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAW,CAAC,cAAc,CAAC,CAAC,CAAC;IAC3D,CAAC;IACM,aAAa;QAClB,OAAO,IAAI,CAAC,eAAe,CAAC,6BAAW,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC9D,CAAC;IACM,UAAU,CAAC,EAChB,MAAM,KAGJ,EAAE;QACJ,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,sBAAsB,CAAC,YAAY,iBAAiB,MAAM,IAAI,CAAC,CAAC,CAAC,IAAI,sBAAsB,CAAC,YAAY,IAAI,6BAAW,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC1K,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAC;IAC9D,CAAC;IACM,qBAAqB;;QAC1B,OAAO,MAAA,IAAI,CAAC,eAAe,CAAC,6BAAW,CAAC,qBAAqB,CAAC,CAAC,mCAAI,IAAI,CAAC,IAAI,CAAC,oBAAoB,6BAAW,CAAC,eAAe,CAAC,2BAA2B,CAAC,CAAC;IAC5J,CAAC;IACM,uBAAuB;QAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,oBAAoB,6BAAW,CAAC,iBAAiB,CAAC,2BAA2B,CAAC,CAAC;IAClG,CAAC;CACF;AAxBD,mCAwBC;AACD,MAAa,sBAAuB,SAAQ,6BAAsB;IACzD,eAAe;QACpB,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,uBAAmB,CAAC,YAAY,EAAE,EAAE,uBAAmB,CAAC,CAAC;IACzF,CAAC;CACF;AAJD,wDAIC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport ChartTooltipWrapper from \"@cloudscape-design/components/test-utils/selectors/internal/chart-tooltip\";\nimport { ElementWrapper } from \"@cloudscape-design/test-utils-core/selectors\";\nimport BaseChartWrapper, { BaseChartLegendWrapper } from \"./base\";\nimport testClasses from \"../../../core/test-classes/styles.selectors.js\";\nexport default class CoreChartWrapper extends BaseChartWrapper {\n public findHeader() {\n return this.findByClassName(testClasses[\"chart-header\"]);\n }\n public findFooter() {\n return this.findByClassName(testClasses[\"chart-footer\"]);\n }\n public findNavigator() {\n return this.findByClassName(testClasses[\"chart-navigator\"]);\n }\n public findLegend({\n axisId\n }: {\n axisId?: string;\n } = {}) {\n const selector = axisId ? `.${CoreChartLegendWrapper.rootSelector}[data-axisid=\"${axisId}\"]` : `.${CoreChartLegendWrapper.rootSelector}.${testClasses[\"legend-primary\"]}`;\n return this.findComponent(selector, CoreChartLegendWrapper);\n }\n public findVerticalAxisTitle() {\n return this.findByClassName(testClasses[\"axis-vertical-title\"]) ?? this.find(`.highcharts-axis.${testClasses[\"axis-vertical\"]} > .highcharts-axis-title`);\n }\n public findHorizontalAxisTitle() {\n return this.find(`.highcharts-axis.${testClasses[\"axis-horizontal\"]} > .highcharts-axis-title`);\n }\n}\nexport class CoreChartLegendWrapper extends BaseChartLegendWrapper {\n public findItemTooltip() {\n return this.findComponent(`.${ChartTooltipWrapper.rootSelector}`, ChartTooltipWrapper);\n }\n}"]}