@ni/nimble-components 24.1.14 → 25.0.0

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 (50) hide show
  1. package/README.md +7 -0
  2. package/dist/all-components-bundle.js +236 -180
  3. package/dist/all-components-bundle.js.map +1 -1
  4. package/dist/all-components-bundle.min.js +446 -421
  5. package/dist/all-components-bundle.min.js.map +1 -1
  6. package/dist/esm/mapping/icon/index.d.ts +1 -0
  7. package/dist/esm/mapping/icon/index.js +7 -0
  8. package/dist/esm/mapping/icon/index.js.map +1 -1
  9. package/dist/esm/mapping/spinner/index.d.ts +1 -0
  10. package/dist/esm/mapping/spinner/index.js +7 -0
  11. package/dist/esm/mapping/spinner/index.js.map +1 -1
  12. package/dist/esm/src/mapping/icon/index.d.ts +1 -0
  13. package/dist/esm/src/mapping/spinner/index.d.ts +1 -0
  14. package/dist/esm/src/table/testing/table.pageobject.d.ts +4 -4
  15. package/dist/esm/src/table-column/enum-base/models/mapping-icon-config.d.ts +3 -1
  16. package/dist/esm/src/table-column/enum-base/models/mapping-spinner-config.d.ts +8 -1
  17. package/dist/esm/src/table-column/icon/cell-view/index.d.ts +6 -3
  18. package/dist/esm/src/table-column/icon/cell-view/styles.d.ts +1 -0
  19. package/dist/esm/src/table-column/icon/group-header-view/index.d.ts +4 -3
  20. package/dist/esm/src/table-column/icon/testing/table-column-icon.pageobject.d.ts +23 -0
  21. package/dist/esm/table/testing/table.pageobject.d.ts +4 -4
  22. package/dist/esm/table/testing/table.pageobject.js +15 -37
  23. package/dist/esm/table/testing/table.pageobject.js.map +1 -1
  24. package/dist/esm/table-column/enum-base/models/mapping-icon-config.d.ts +3 -1
  25. package/dist/esm/table-column/enum-base/models/mapping-icon-config.js +4 -3
  26. package/dist/esm/table-column/enum-base/models/mapping-icon-config.js.map +1 -1
  27. package/dist/esm/table-column/enum-base/models/mapping-spinner-config.d.ts +8 -1
  28. package/dist/esm/table-column/enum-base/models/mapping-spinner-config.js +13 -1
  29. package/dist/esm/table-column/enum-base/models/mapping-spinner-config.js.map +1 -1
  30. package/dist/esm/table-column/icon/cell-view/index.d.ts +6 -3
  31. package/dist/esm/table-column/icon/cell-view/index.js +19 -7
  32. package/dist/esm/table-column/icon/cell-view/index.js.map +1 -1
  33. package/dist/esm/table-column/icon/cell-view/styles.d.ts +1 -0
  34. package/dist/esm/table-column/icon/cell-view/styles.js +27 -0
  35. package/dist/esm/table-column/icon/cell-view/styles.js.map +1 -0
  36. package/dist/esm/table-column/icon/cell-view/template.js +15 -8
  37. package/dist/esm/table-column/icon/cell-view/template.js.map +1 -1
  38. package/dist/esm/table-column/icon/group-header-view/index.d.ts +4 -3
  39. package/dist/esm/table-column/icon/group-header-view/index.js +8 -8
  40. package/dist/esm/table-column/icon/group-header-view/index.js.map +1 -1
  41. package/dist/esm/table-column/icon/group-header-view/styles.js +5 -3
  42. package/dist/esm/table-column/icon/group-header-view/styles.js.map +1 -1
  43. package/dist/esm/table-column/icon/group-header-view/template.js +10 -24
  44. package/dist/esm/table-column/icon/group-header-view/template.js.map +1 -1
  45. package/dist/esm/table-column/icon/index.js +2 -2
  46. package/dist/esm/table-column/icon/index.js.map +1 -1
  47. package/dist/esm/table-column/icon/testing/table-column-icon.pageobject.d.ts +23 -0
  48. package/dist/esm/table-column/icon/testing/table-column-icon.pageobject.js +79 -0
  49. package/dist/esm/table-column/icon/testing/table-column-icon.pageobject.js.map +1 -0
  50. package/package.json +1 -1
@@ -0,0 +1,79 @@
1
+ import { Icon } from '../../../icon-base';
2
+ import { Spinner } from '../../../spinner';
3
+ /**
4
+ * Page object for `nimble-table-column-icon`.
5
+ */
6
+ export class TableColumnIconPageObject {
7
+ constructor(tablePageObject) {
8
+ this.tablePageObject = tablePageObject;
9
+ }
10
+ getRenderedCellIconSeverity(rowIndex, columnIndex) {
11
+ const iconOrSpinner = this.getRenderedIconOrSpinner(this.tablePageObject.getRenderedCellView(rowIndex, columnIndex));
12
+ if (!(iconOrSpinner instanceof Icon)) {
13
+ throw new Error(`Icon not found at cell ${rowIndex},${columnIndex}`);
14
+ }
15
+ return iconOrSpinner.severity ?? '';
16
+ }
17
+ getRenderedCellIconAriaLabel(rowIndex, columnIndex) {
18
+ const iconOrSpinner = this.getRenderedIconOrSpinner(this.tablePageObject.getRenderedCellView(rowIndex, columnIndex));
19
+ return iconOrSpinner.getAttribute('aria-label') ?? '';
20
+ }
21
+ getRenderedCellIconAriaHidden(rowIndex, columnIndex) {
22
+ const iconOrSpinner = this.getRenderedIconOrSpinner(this.tablePageObject.getRenderedCellView(rowIndex, columnIndex));
23
+ return iconOrSpinner.getAttribute('aria-hidden') ?? '';
24
+ }
25
+ getRenderedGroupHeaderIconAriaHidden(groupRowIndex) {
26
+ const iconOrSpinner = this.getRenderedIconOrSpinner(this.tablePageObject.getGroupRowHeaderView(groupRowIndex));
27
+ return iconOrSpinner.getAttribute('aria-hidden') ?? '';
28
+ }
29
+ getRenderedCellIconTitle(rowIndex, columnIndex) {
30
+ const iconOrSpinner = this.getRenderedIconOrSpinner(this.tablePageObject.getRenderedCellView(rowIndex, columnIndex));
31
+ return iconOrSpinner.title;
32
+ }
33
+ getRenderedGroupHeaderIconTagName(groupRowIndex) {
34
+ const iconOrSpinner = this.getRenderedIconOrSpinner(this.tablePageObject.getGroupRowHeaderView(groupRowIndex));
35
+ return iconOrSpinner.tagName.toLocaleLowerCase();
36
+ }
37
+ getRenderedCellTextTitle(rowIndex, columnIndex) {
38
+ const cellView = this.tablePageObject.getRenderedCellView(rowIndex, columnIndex);
39
+ const textElement = this.getRenderedTextElement(cellView);
40
+ return textElement?.title ?? '';
41
+ }
42
+ getRenderedGroupHeaderTextTitle(groupRowIndex) {
43
+ const groupHeader = this.tablePageObject.getGroupRowHeaderView(groupRowIndex);
44
+ const textElement = this.getRenderedTextElement(groupHeader);
45
+ return textElement?.title ?? '';
46
+ }
47
+ getRenderedCellText(rowIndex, columnIndex) {
48
+ const cellView = this.tablePageObject.getRenderedCellView(rowIndex, columnIndex);
49
+ const textElement = this.getRenderedTextElement(cellView);
50
+ return textElement?.textContent?.trim() ?? '';
51
+ }
52
+ getRenderedGroupHeaderText(groupRowIndex) {
53
+ const groupHeader = this.tablePageObject.getGroupRowHeaderView(groupRowIndex);
54
+ const textElement = this.getRenderedTextElement(groupHeader);
55
+ return textElement?.textContent?.trim() ?? '';
56
+ }
57
+ dispatchEventToCellText(rowIndex, columnIndex, event) {
58
+ const cellView = this.tablePageObject.getRenderedCellView(rowIndex, columnIndex);
59
+ const textElement = this.getRenderedTextElement(cellView);
60
+ return textElement.dispatchEvent(event);
61
+ }
62
+ dispatchEventToGroupHeaderText(groupRowIndex, event) {
63
+ const groupHeader = this.tablePageObject.getGroupRowHeaderView(groupRowIndex);
64
+ const textElement = this.getRenderedTextElement(groupHeader);
65
+ return textElement.dispatchEvent(event);
66
+ }
67
+ getRenderedIconOrSpinner(view) {
68
+ const viewShadowRoot = view.shadowRoot;
69
+ const spinnerOrIcon = viewShadowRoot.querySelector('.reserve-icon-size')?.firstElementChild;
70
+ if (!(spinnerOrIcon instanceof Icon || spinnerOrIcon instanceof Spinner)) {
71
+ throw new Error('Icon or Spinner not found');
72
+ }
73
+ return spinnerOrIcon;
74
+ }
75
+ getRenderedTextElement(view) {
76
+ return view.shadowRoot.querySelector('.text');
77
+ }
78
+ }
79
+ //# sourceMappingURL=table-column-icon.pageobject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"table-column-icon.pageobject.js","sourceRoot":"","sources":["../../../../../src/table-column/icon/testing/table-column-icon.pageobject.ts"],"names":[],"mappings":"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","sourcesContent":["import { Icon } from '../../../icon-base';\nimport { Spinner } from '../../../spinner';\nimport type { TablePageObject } from '../../../table/testing/table.pageobject';\nimport type { TableRecord } from '../../../table/types';\nimport type { TableCellView } from '../../base/cell-view';\nimport type { TableGroupHeaderView } from '../../base/group-header-view';\n\n/**\n * Page object for `nimble-table-column-icon`.\n */\nexport class TableColumnIconPageObject<T extends TableRecord> {\n public constructor(private readonly tablePageObject: TablePageObject<T>) {}\n\n public getRenderedCellIconSeverity(\n rowIndex: number,\n columnIndex: number\n ): string {\n const iconOrSpinner = this.getRenderedIconOrSpinner(\n this.tablePageObject.getRenderedCellView(rowIndex, columnIndex)\n );\n if (!(iconOrSpinner instanceof Icon)) {\n throw new Error(\n `Icon not found at cell ${rowIndex},${columnIndex}`\n );\n }\n return iconOrSpinner.severity ?? '';\n }\n\n public getRenderedCellIconAriaLabel(\n rowIndex: number,\n columnIndex: number\n ): string {\n const iconOrSpinner = this.getRenderedIconOrSpinner(\n this.tablePageObject.getRenderedCellView(rowIndex, columnIndex)\n );\n return iconOrSpinner.getAttribute('aria-label') ?? '';\n }\n\n public getRenderedCellIconAriaHidden(\n rowIndex: number,\n columnIndex: number\n ): string {\n const iconOrSpinner = this.getRenderedIconOrSpinner(\n this.tablePageObject.getRenderedCellView(rowIndex, columnIndex)\n );\n return iconOrSpinner.getAttribute('aria-hidden') ?? '';\n }\n\n public getRenderedGroupHeaderIconAriaHidden(groupRowIndex: number): string {\n const iconOrSpinner = this.getRenderedIconOrSpinner(\n this.tablePageObject.getGroupRowHeaderView(groupRowIndex)\n );\n return iconOrSpinner.getAttribute('aria-hidden') ?? '';\n }\n\n public getRenderedCellIconTitle(\n rowIndex: number,\n columnIndex: number\n ): string {\n const iconOrSpinner = this.getRenderedIconOrSpinner(\n this.tablePageObject.getRenderedCellView(rowIndex, columnIndex)\n );\n return iconOrSpinner.title;\n }\n\n public getRenderedGroupHeaderIconTagName(groupRowIndex: number): string {\n const iconOrSpinner = this.getRenderedIconOrSpinner(\n this.tablePageObject.getGroupRowHeaderView(groupRowIndex)\n );\n return iconOrSpinner.tagName.toLocaleLowerCase();\n }\n\n public getRenderedCellTextTitle(\n rowIndex: number,\n columnIndex: number\n ): string {\n const cellView = this.tablePageObject.getRenderedCellView(\n rowIndex,\n columnIndex\n );\n const textElement = this.getRenderedTextElement(cellView);\n return textElement?.title ?? '';\n }\n\n public getRenderedGroupHeaderTextTitle(groupRowIndex: number): string {\n const groupHeader = this.tablePageObject.getGroupRowHeaderView(groupRowIndex);\n const textElement = this.getRenderedTextElement(groupHeader);\n return textElement?.title ?? '';\n }\n\n public getRenderedCellText(rowIndex: number, columnIndex: number): string {\n const cellView = this.tablePageObject.getRenderedCellView(\n rowIndex,\n columnIndex\n );\n const textElement = this.getRenderedTextElement(cellView);\n return textElement?.textContent?.trim() ?? '';\n }\n\n public getRenderedGroupHeaderText(groupRowIndex: number): string {\n const groupHeader = this.tablePageObject.getGroupRowHeaderView(groupRowIndex);\n const textElement = this.getRenderedTextElement(groupHeader);\n return textElement?.textContent?.trim() ?? '';\n }\n\n public dispatchEventToCellText(\n rowIndex: number,\n columnIndex: number,\n event: Event\n ): boolean | undefined {\n const cellView = this.tablePageObject.getRenderedCellView(\n rowIndex,\n columnIndex\n );\n const textElement = this.getRenderedTextElement(cellView);\n return textElement!.dispatchEvent(event);\n }\n\n public dispatchEventToGroupHeaderText(\n groupRowIndex: number,\n event: Event\n ): boolean | undefined {\n const groupHeader = this.tablePageObject.getGroupRowHeaderView(groupRowIndex);\n const textElement = this.getRenderedTextElement(groupHeader);\n return textElement!.dispatchEvent(event);\n }\n\n private getRenderedIconOrSpinner(\n view: TableCellView | TableGroupHeaderView\n ): Icon | Spinner {\n const viewShadowRoot = view.shadowRoot!;\n const spinnerOrIcon = viewShadowRoot.querySelector(\n '.reserve-icon-size'\n )?.firstElementChild;\n if (\n !(spinnerOrIcon instanceof Icon || spinnerOrIcon instanceof Spinner)\n ) {\n throw new Error('Icon or Spinner not found');\n }\n\n return spinnerOrIcon;\n }\n\n private getRenderedTextElement(\n view: TableCellView | TableGroupHeaderView\n ): HTMLSpanElement | null {\n return view.shadowRoot!.querySelector<HTMLSpanElement>('.text');\n }\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ni/nimble-components",
3
- "version": "24.1.14",
3
+ "version": "25.0.0",
4
4
  "description": "Styled web components for the NI Nimble Design System",
5
5
  "scripts": {
6
6
  "build": "npm run generate-icons && npm run generate-workers && npm run build-components && npm run bundle-components && npm run generate-scss && npm run build-storybook",