@ds-mo/ui 13.11.1 → 13.12.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 (100) hide show
  1. package/dist/.package-ready.json +1 -1
  2. package/dist/agent-patterns.json +1 -1
  3. package/dist/agent.json +288 -10
  4. package/dist/angular/ds-mobile-header.d.ts +1 -1
  5. package/dist/angular/ds-mobile-header.js +3 -3
  6. package/dist/angular/ds-tab-group.d.ts +1 -1
  7. package/dist/angular/ds-tab-group.js +3 -3
  8. package/dist/angular/ds-table.d.ts +28 -0
  9. package/dist/angular/ds-table.js +54 -0
  10. package/dist/angular/ds-tag.d.ts +1 -1
  11. package/dist/angular/ds-tag.js +3 -3
  12. package/dist/angular/index.d.ts +1 -1
  13. package/dist/angular/index.js +1 -0
  14. package/dist/angular/proxies.d.ts +1 -0
  15. package/dist/angular/proxies.js +1 -0
  16. package/dist/components/ds-bar-nav.js +1 -1
  17. package/dist/components/ds-bar-title.js +1 -1
  18. package/dist/components/ds-bar-workflow.js +1 -1
  19. package/dist/components/ds-bar-workflow.js.map +1 -1
  20. package/dist/components/ds-card-overview.js +1 -1
  21. package/dist/components/ds-menu.js +1 -1
  22. package/dist/components/ds-mobile-header.js +1 -1
  23. package/dist/components/ds-mobile-section-switcher.js +1 -1
  24. package/dist/components/ds-mobile-sheet-nav.js +1 -1
  25. package/dist/components/ds-modal.js +1 -1
  26. package/dist/components/ds-panel-sub-nav.js +1 -1
  27. package/dist/components/ds-radio.js +1 -1
  28. package/dist/components/ds-scroll-overlay.js +1 -1
  29. package/dist/components/ds-scroll-overlay.js.map +1 -1
  30. package/dist/components/ds-select.js +1 -1
  31. package/dist/components/ds-shell-app.js +1 -1
  32. package/dist/components/ds-shell-app.js.map +1 -1
  33. package/dist/components/ds-shell-tools.js +1 -1
  34. package/dist/components/ds-skeleton.js +1 -1
  35. package/dist/components/ds-slider.js +1 -1
  36. package/dist/components/ds-switch.js +1 -1
  37. package/dist/components/ds-tab-group.js +1 -1
  38. package/dist/components/ds-table.d.ts +11 -0
  39. package/dist/components/ds-table.js +2 -0
  40. package/dist/components/ds-table.js.map +1 -0
  41. package/dist/components/ds-tag.js +1 -1
  42. package/dist/components/ds-tag.js.map +1 -1
  43. package/dist/components/ds-toast.js +1 -1
  44. package/dist/components/ds-typing-indicator.js +1 -1
  45. package/dist/components/index.d.ts +30 -0
  46. package/dist/components/{p-BHb3Ws8e.js → p-BFXN4ioL.js} +2 -2
  47. package/dist/components/{p-DgglLVCj.js → p-BYre-ZDg.js} +2 -2
  48. package/dist/components/p-B_eqa09C.js +2 -0
  49. package/dist/components/p-B_eqa09C.js.map +1 -0
  50. package/dist/components/{p-BnGJrBPG.js → p-Bj7KrXzw.js} +2 -2
  51. package/dist/components/p-BxJurXEn.js +2 -0
  52. package/dist/components/p-BxJurXEn.js.map +1 -0
  53. package/dist/components/{p-Dg9qiMDa.js → p-C9StMCWg.js} +2 -2
  54. package/dist/components/p-CFNG0K3m.js +2 -0
  55. package/dist/components/p-CFNG0K3m.js.map +1 -0
  56. package/dist/components/{p-BQ7Nzx9A.js → p-Ch5yT3UA.js} +2 -2
  57. package/dist/components/{p-DJGdoPMG.js → p-DKftz0O8.js} +2 -2
  58. package/dist/components/p-DxygUurH.js +2 -0
  59. package/dist/components/p-DxygUurH.js.map +1 -0
  60. package/dist/components/{p-DCN04sgt.js → p-x9jO4lZ7.js} +2 -2
  61. package/dist/components/{p-DCN04sgt.js.map → p-x9jO4lZ7.js.map} +1 -1
  62. package/dist/docs/components.json +1547 -100
  63. package/dist/lib/components/MobileHeader/mobile-header-types.d.ts +3 -2
  64. package/dist/mcp-data/registry/mobile-header.json +48 -10
  65. package/dist/mcp-data/registry/mobile-sheet-nav.json +2 -2
  66. package/dist/mcp-data/registry/registry.json +290 -9
  67. package/dist/mcp-data/registry/shell-app.json +4 -2
  68. package/dist/mcp-data/registry/shell-tools.json +4 -4
  69. package/dist/mcp-data/registry/tab-group.json +22 -2
  70. package/dist/mcp-data/registry/table.json +758 -0
  71. package/dist/mcp-data/registry/tag.json +22 -3
  72. package/dist/react/components.d.ts +1 -0
  73. package/dist/react/components.js +1 -0
  74. package/dist/react/ds-table.d.ts +16 -0
  75. package/dist/react/ds-table.js +18 -0
  76. package/dist/styles/table.css +677 -0
  77. package/dist/types/components/MobileHeader/MobileHeader.d.ts +8 -3
  78. package/dist/types/components/MobileHeader/index.d.ts +1 -1
  79. package/dist/types/components/MobileHeader/mobile-header-types.d.ts +3 -2
  80. package/dist/types/components/ShellApp/ShellApp.d.ts +8 -0
  81. package/dist/types/components/TabGroup/TabGroup.d.ts +3 -0
  82. package/dist/types/components/Table/Table.d.ts +115 -0
  83. package/dist/types/components/Table/index.d.ts +2 -0
  84. package/dist/types/components/Table/table-model.d.ts +29 -0
  85. package/dist/types/components/Table/table-types.d.ts +178 -0
  86. package/dist/types/components/Tag/Tag.d.ts +2 -0
  87. package/dist/types/components.d.ts +393 -6
  88. package/package.json +3 -2
  89. package/dist/components/p-CVmtbj-6.js +0 -2
  90. package/dist/components/p-CVmtbj-6.js.map +0 -1
  91. package/dist/components/p-DW9p068S.js +0 -2
  92. package/dist/components/p-DW9p068S.js.map +0 -1
  93. package/dist/components/p-Xftomzsv.js +0 -2
  94. package/dist/components/p-Xftomzsv.js.map +0 -1
  95. /package/dist/components/{p-BHb3Ws8e.js.map → p-BFXN4ioL.js.map} +0 -0
  96. /package/dist/components/{p-DgglLVCj.js.map → p-BYre-ZDg.js.map} +0 -0
  97. /package/dist/components/{p-BnGJrBPG.js.map → p-Bj7KrXzw.js.map} +0 -0
  98. /package/dist/components/{p-Dg9qiMDa.js.map → p-C9StMCWg.js.map} +0 -0
  99. /package/dist/components/{p-BQ7Nzx9A.js.map → p-Ch5yT3UA.js.map} +0 -0
  100. /package/dist/components/{p-DJGdoPMG.js.map → p-DKftz0O8.js.map} +0 -0
@@ -1 +1 @@
1
- {"schemaVersion":1,"package":"@ds-mo/ui","version":"13.11.1","components":65,"digest":"d024d6dd05779aff0b40720b2a87272d2f8fab03fdbe8e51e0031d6da09bfe68","completedAt":"2026-08-07T04:06:10.589Z"}
1
+ {"schemaVersion":1,"package":"@ds-mo/ui","version":"13.12.0","components":66,"digest":"8aa9f3a30662a6f2b90d68ba52dd64ef92e9654e72f41860eadc554328f2dae0","completedAt":"2026-08-09T04:41:22.713Z"}
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "schemaVersion": "1.0.0",
3
3
  "package": "@ds-mo/ui",
4
- "packageVersion": "13.11.1",
4
+ "packageVersion": "13.12.0",
5
5
  "kind": "patterns",
6
6
  "entries": [
7
7
  {
package/dist/agent.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "schemaVersion": "1.0.0",
3
3
  "package": "@ds-mo/ui",
4
- "packageVersion": "13.11.1",
4
+ "packageVersion": "13.12.0",
5
5
  "kind": "components",
6
6
  "entries": [
7
7
  {
@@ -4750,6 +4750,7 @@
4750
4750
  ],
4751
4751
  "commonlyComposedWith": [
4752
4752
  "component:ds-mobile-section-switcher",
4753
+ "component:ds-tab-group",
4753
4754
  "component:ds-shell-page",
4754
4755
  "component:ds-shell-tools"
4755
4756
  ],
@@ -4758,19 +4759,19 @@
4758
4759
  ],
4759
4760
  "accessibility": [
4760
4761
  "Static screens render a real h1 or h2 according to headingLevel.",
4761
- "Section-switching screens expose an equivalent semantic heading alongside the accessible popup trigger.",
4762
+ "Section-switching screens expose an equivalent semantic heading alongside the accessible popup trigger or named segmented TabGroup.",
4762
4763
  "Subsections use a separately named navigation landmark and never replace the semantic page identity.",
4763
4764
  "Leading and trailing slotted icon actions retain their own accessible names and tooltips."
4764
4765
  ],
4765
4766
  "states": [
4766
4767
  "Without multiple sections the center renders heading.",
4767
- "With multiple sections the center renders the controlled MobileSectionSwitcher.",
4768
+ "With multiple sections the center renders the controlled MobileSectionSwitcher by default or an explicitly requested segmented TabGroup.",
4768
4769
  "Optional subsections render in a second row and emit dsSubsectionChange without changing the primary section.",
4769
4770
  "Sections represent peer destinations at the current navigation level; subsections represent local views beneath the selected page or detail identity.",
4770
4771
  "Brand tone changes surface and foreground without changing geometry or interaction ownership."
4771
4772
  ],
4772
4773
  "responsiveBehavior": [
4773
- "The primary 48px lane is dedicated to the below-768px presentation; optional subsections add one subordinate 48px lane.",
4774
+ "The primary 56px lane matches the Mobile Sheet Nav header and Mobile Bar Nav; optional subsections add one subordinate 48px lane.",
4774
4775
  "Equal flexible side lanes keep the center mathematically aligned when actions are asymmetric."
4775
4776
  ],
4776
4777
  "references": [
@@ -4791,13 +4792,21 @@
4791
4792
  "required": false
4792
4793
  },
4793
4794
  "sections": {
4794
- "type": "TabItem[]",
4795
+ "type": "TabGroupItem[]",
4795
4796
  "required": false
4796
4797
  },
4797
4798
  "sectionsAriaLabel": {
4798
4799
  "type": "string",
4799
4800
  "required": false
4800
4801
  },
4802
+ "sectionsPresentation": {
4803
+ "type": "MobileHeaderSectionsPresentation",
4804
+ "required": false
4805
+ },
4806
+ "sectionsSize": {
4807
+ "type": "TabGroupSize",
4808
+ "required": false
4809
+ },
4801
4810
  "subsections": {
4802
4811
  "type": "TabItem[]",
4803
4812
  "required": false
@@ -4842,6 +4851,7 @@
4842
4851
  ],
4843
4852
  "componentDependencies": [
4844
4853
  "mobile-section-switcher",
4854
+ "tab-group",
4845
4855
  "text"
4846
4856
  ]
4847
4857
  },
@@ -4963,7 +4973,7 @@
4963
4973
  ],
4964
4974
  "responsiveBehavior": [
4965
4975
  "The pane fills the mobile content stage while the bottom bar remains available.",
4966
- "The sheet header and scrollable navigation body each use the shared 8px chrome inset; large destination controls retain their independent 40px density.",
4976
+ "The sheet header and scrollable navigation body each use the shared 8px chrome inset; the context TabGroup and primary controls share a 40px height and 24px icon scale.",
4967
4977
  "Dashboard and Settings preserve their supplied visual groups with an 8px gap between destinations inside a section and a 32px gap between sections."
4968
4978
  ],
4969
4979
  "references": [
@@ -6596,6 +6606,8 @@
6596
6606
  "On desktop, PanelNav defaults expanded, permits user collapse or expansion, and respects the locally persisted desktop preference.",
6597
6607
  "On tablet, ShellApp keeps PanelNav permanently collapsed and prevents user expansion without overwriting the desktop preference.",
6598
6608
  "On mobile, ShellApp hides and inerts desktop chrome, uses a solid primary stage, and composes MobileHeader, MobileSheetNav, ShellTools, and the persistent MobileBarNav around the same application-owned content.",
6609
+ "Opening MobileSheetNav temporarily overlays the active routed page or global tool; closing it without selecting an area restores that same destination and its nested state.",
6610
+ "When a suspended mobile document returns to the foreground, ShellApp refreshes the complete stage paint layer without remounting routed content or tool owners.",
6599
6611
  "When the application enables viewport-fit=cover, ShellApp reserves the shared top safe-area inset once for the complete mobile stage; nested routed, sheet, and tool headers must not add a second top inset.",
6600
6612
  "A slotted Banner remains below the top safe-area inset and above routed, navigation, fullscreen-tool, and mobile global-surface presentations.",
6601
6613
  "Mobile global surfaces conceal and inert the routed workspace without unmounting it, preserving nested routes and scroll state.",
@@ -6926,7 +6938,7 @@
6926
6938
  "component:ds-shell-app",
6927
6939
  "component:ds-panel-tool-header",
6928
6940
  "component:ds-mobile-header",
6929
- "component:ds-mobile-section-switcher",
6941
+ "component:ds-tab-group",
6930
6942
  "component:ds-mobile-bar-nav"
6931
6943
  ],
6932
6944
  "patterns": [
@@ -6935,7 +6947,7 @@
6935
6947
  "accessibility": [
6936
6948
  "Only the active mobile tool view participates in focus or the accessibility tree.",
6937
6949
  "Header Back and application-owned header actions preserve the PanelTools event contract.",
6938
- "Inbox uses the MobileSectionSwitcher popup trigger for Stacks and Activity and never relies on a gesture-only interaction; Messages remains a direct mobile destination."
6950
+ "Mobile Inbox uses a named label-only TabGroup for Stacks and Activity; Messages remains a direct mobile destination."
6939
6951
  ],
6940
6952
  "states": [
6941
6953
  "The application owns open and activeTool and replaces headers when tool depth changes.",
@@ -6945,7 +6957,7 @@
6945
6957
  ],
6946
6958
  "responsiveBehavior": [
6947
6959
  "Desktop and tablet compose PanelTools-compatible rail and drawer chrome.",
6948
- "Mobile renders one centered MobileHeader for every tool; Stacks and Activity use Inbox section titles, while Messages remains a direct tool destination."
6960
+ "Mobile renders one centered MobileHeader for every tool; Stacks and Activity use the large segmented Inbox control, while Messages remains a direct tool destination."
6949
6961
  ],
6950
6962
  "frameworkCaveats": {
6951
6963
  "customElements": [
@@ -7746,6 +7758,7 @@
7746
7758
  "The parent owns the canonical selected value and adjacent view visibility, and should update both from dsChange.",
7747
7759
  "A missing, empty, inactive, or unknown selected value is invalid when enabled tabs exist; the component does not choose a fallback selection.",
7748
7760
  "Selection is singular and follows keyboard focus.",
7761
+ "Small, medium, and large use the shared 24px, 32px, and 40px control-density recipes for the outer track. Each segment uses the same-size inset recipe at 20px, 28px, and 36px while preserving that density's typography, icon, gap, and label metrics.",
7749
7762
  "Use one consistent content variant across every selectable tab in a group.",
7750
7763
  "Omitted background is for primary and secondary surfaces; pass the faint context explicitly on faint surfaces.",
7751
7764
  "Only the omitted default context emphasizes visible selected label text and keeps the filled track; explicit faint follows the other surface contexts with a transparent track, stable text weight, surface border, and neutral active fill.",
@@ -7753,6 +7766,7 @@
7753
7766
  ],
7754
7767
  "responsiveBehavior": [
7755
7768
  "The component remains a single horizontal row and does not become vertical or wrap.",
7769
+ "Use the large size when a mobile composition aligns the group with 40px shell controls; size does not change automatically at a breakpoint.",
7756
7770
  "The consuming layout owns narrow-width placement and overflow, or replaces the row with a more suitable navigation pattern."
7757
7771
  ],
7758
7772
  "frameworkCaveats": {
@@ -7788,6 +7802,10 @@
7788
7802
  "type": "TabBackground | undefined",
7789
7803
  "required": false
7790
7804
  },
7805
+ "size": {
7806
+ "type": "TabGroupSize",
7807
+ "required": false
7808
+ },
7791
7809
  "tabs": {
7792
7810
  "type": "TabGroupItem[]",
7793
7811
  "required": false
@@ -7821,6 +7839,261 @@
7821
7839
  "text"
7822
7840
  ]
7823
7841
  },
7842
+ {
7843
+ "id": "component:ds-table",
7844
+ "tag": "ds-table",
7845
+ "name": "table",
7846
+ "title": "Table",
7847
+ "summary": "Semantic, controlled data table with durable visual primitives for cell geometry, column geometry, grouping, sorting, multi-selection, sticky overflow, and incremental loading.",
7848
+ "intentStatus": "complete",
7849
+ "intent": {
7850
+ "audience": "general",
7851
+ "status": "experimental",
7852
+ "summary": "Semantic, controlled data table with durable visual primitives for cell geometry, column geometry, grouping, sorting, multi-selection, sticky overflow, and incremental loading.",
7853
+ "useWhen": [
7854
+ "A structured dataset needs native row and column relationships, optional one-level grouping, or comparable values across records.",
7855
+ "An application needs controlled sorting, loaded-row selection, or lazy loading while retaining ownership of the data query and transformations.",
7856
+ "A product table needs a token-backed recipe whose individual header, group, row, cell, selection, state, and load-more layers remain easy to restyle."
7857
+ ],
7858
+ "avoidWhen": [
7859
+ "Content is primarily editorial prose; use semantic product-owned markup with the prose recipe instead.",
7860
+ "A small label/value set reads more clearly as a list, description list, or card.",
7861
+ "The interface requires tree-grid behavior, nested grouping, inline cell editing, row reordering, column pinning, or virtualization; those are outside this first contract.",
7862
+ "The application expects the component to fetch, paginate, sort, group, or mutate records internally."
7863
+ ],
7864
+ "commonlyComposedWith": [
7865
+ "component:ds-empty-state",
7866
+ "component:ds-skeleton",
7867
+ "component:ds-loader",
7868
+ "component:ds-button-unfilled",
7869
+ "component:ds-tag",
7870
+ "component:ds-icon"
7871
+ ],
7872
+ "accessibility": [
7873
+ "The rendered structure uses a native table, caption, column headers, row groups, and data cells; keep the caption non-empty even when it is visually hidden.",
7874
+ "Sorting controls remain buttons inside column headers. Member-row sort uses aria-sort, while independent group order is described by the grouped header control.",
7875
+ "Selection controls expose checkbox semantics and explicit row names; select-all affects selectable loaded rows only and preserves selected identities outside the loaded window.",
7876
+ "Scrollable table regions become keyboard focusable and named only when overflow exists.",
7877
+ "Incremental loading, newly appended row counts, failures, and end-of-results transitions are announced through a polite status region without replacing visible state."
7878
+ ],
7879
+ "states": [
7880
+ "Columns, rows, groups, grouping, sorting, selected row IDs, and lazy-loading state are controlled inputs. Events communicate intent and never mutate those inputs.",
7881
+ "Grouping supports one level. The application supplies ordered groups and ordered member rows; group order and member-row sort are independent controls.",
7882
+ "An active member sort toggles only between ascending and descending; activating a different sortable label moves sorting to that key. Applications may still clear the controlled sort state explicitly. The grouped column toggles ascending and descending group order without clearing member sort.",
7883
+ "Compound headers can expose multiple related labels with independent sort keys. Each label owns only its content-width interaction target while the active direction remains in the column's alignment-aware sort lane.",
7884
+ "Initial loading uses row-shaped skeletons. Empty and initial error states remain inside the table. Incremental loading retains existing rows and supports automatic sentinel, manual load-more, retry, and terminal states.",
7885
+ "Lazy loading replaces pagination. The application owns requests, cancellation, cursors, deduplication, appended records, and query identity; loadIdentity resets the component request guard.",
7886
+ "Cells accept scalar content, standard primary-and-secondary or dual-primary text primitives, declarative Tag, icon-only, 16:9 Image, or ButtonUnfilled Action content, or explicit Empty and Blank absence values. Single-track text, selection, tag-only, icon-only, Action, Empty, and Blank cells resolve a 40px base contract while multi-track cells grow downward. Action cells primarily use an icon-only Ellipses treatment, render a 24px small ButtonUnfilled inside 8px padding, default to unbordered, and emit row, column, and action identities through dsCellAction. Image cells render a 52px-high bordered preview inside 6px outer padding, establishing a 64px row, and fall back to an accessible placeholder when no source is supplied. Empty means the data applies but has no value and renders an em dash with localized assistive text; Blank means the data is not applicable and renders no content. Nullish values remain backward-compatible Empty values. Stable type and variant hooks keep every cell family independently styleable.",
7887
+ "The public @ds-mo/ui/table.css export is the authoritative zero-specificity visual recipe. Override its --ds-table-* properties or target its stable element classes for product-specific styling."
7888
+ ],
7889
+ "responsiveBehavior": [
7890
+ "The table keeps native semantics at narrow widths and scrolls horizontally instead of transforming into cards.",
7891
+ "Explicit column sizes establish the horizontal overflow width; unsized columns share remaining space.",
7892
+ "Prefer the named xs through xl column sizes, which resolve through TokoMo's table-column width tokens; numeric pixel sizes remain an escape hatch for exceptional application-owned widths.",
7893
+ "Column headers use one 32px geometry. Body rows use a 40px single-track minimum; cell-specific outer padding and track geometry align text, selection, Tag, icon, Action, Empty, Blank, and Image primitives while additional tracks grow downward.",
7894
+ "Long content truncates by default and can opt into wrapping at the column or cell level."
7895
+ ],
7896
+ "frameworkCaveats": {
7897
+ "customElements": [
7898
+ "Assign columns, rows, groups, grouping, sort, and selectedRowIds through JavaScript properties rather than HTML attribute strings.",
7899
+ "Replace controlled property values in response to dsSortChange, dsGroupingChange, dsSelectionChange, and dsLoadMore."
7900
+ ],
7901
+ "react": [
7902
+ "Pass new array and state-object references when the controlled data or query state changes.",
7903
+ "Apply emitted sort, grouping, selection, action, or loading detail to application state and perform data transformations in the owning layer."
7904
+ ],
7905
+ "angular": [
7906
+ "Bind complex table inputs as properties and update the controlled values from the corresponding output events.",
7907
+ "Keep server cursor, query lifecycle, and cell-action handling in the owning service or container."
7908
+ ]
7909
+ },
7910
+ "references": [
7911
+ {
7912
+ "label": "Storybook review matrix",
7913
+ "path": "src/wc/components/Table/Table.stories.ts"
7914
+ },
7915
+ {
7916
+ "label": "Public visual recipe",
7917
+ "path": "src/wc/styles/table.css"
7918
+ }
7919
+ ]
7920
+ },
7921
+ "api": {
7922
+ "props": {
7923
+ "caption": {
7924
+ "type": "string",
7925
+ "required": true
7926
+ },
7927
+ "captionVisibility": {
7928
+ "type": "TableCaptionVisibility",
7929
+ "required": false
7930
+ },
7931
+ "columns": {
7932
+ "type": "TableColumn[]",
7933
+ "required": false
7934
+ },
7935
+ "emptyBody": {
7936
+ "type": "string",
7937
+ "required": false
7938
+ },
7939
+ "emptyCellLabel": {
7940
+ "type": "string",
7941
+ "required": false
7942
+ },
7943
+ "emptyHeading": {
7944
+ "type": "string",
7945
+ "required": false
7946
+ },
7947
+ "endOfResultsLabel": {
7948
+ "type": "string",
7949
+ "required": false
7950
+ },
7951
+ "error": {
7952
+ "type": "boolean",
7953
+ "required": false
7954
+ },
7955
+ "errorBody": {
7956
+ "type": "string",
7957
+ "required": false
7958
+ },
7959
+ "errorHeading": {
7960
+ "type": "string",
7961
+ "required": false
7962
+ },
7963
+ "grouping": {
7964
+ "type": "TableGroupingState | null",
7965
+ "required": false
7966
+ },
7967
+ "groups": {
7968
+ "type": "TableGroup[]",
7969
+ "required": false
7970
+ },
7971
+ "hasMore": {
7972
+ "type": "boolean",
7973
+ "required": false
7974
+ },
7975
+ "lazyLoading": {
7976
+ "type": "boolean",
7977
+ "required": false
7978
+ },
7979
+ "loadIdentity": {
7980
+ "type": "string | number",
7981
+ "required": false
7982
+ },
7983
+ "loadMoreError": {
7984
+ "type": "string | undefined",
7985
+ "required": false
7986
+ },
7987
+ "loadMoreLabel": {
7988
+ "type": "string",
7989
+ "required": false
7990
+ },
7991
+ "loadMoreMode": {
7992
+ "type": "TableLoadMoreMode",
7993
+ "required": false
7994
+ },
7995
+ "loadMoreThreshold": {
7996
+ "type": "number",
7997
+ "required": false
7998
+ },
7999
+ "loading": {
8000
+ "type": "boolean",
8001
+ "required": false
8002
+ },
8003
+ "loadingMore": {
8004
+ "type": "boolean",
8005
+ "required": false
8006
+ },
8007
+ "loadingMoreLabel": {
8008
+ "type": "string",
8009
+ "required": false
8010
+ },
8011
+ "maxHeight": {
8012
+ "type": "string | number | undefined",
8013
+ "required": false
8014
+ },
8015
+ "retryLabel": {
8016
+ "type": "string",
8017
+ "required": false
8018
+ },
8019
+ "rows": {
8020
+ "type": "TableRow[]",
8021
+ "required": false
8022
+ },
8023
+ "rowsLoadedLabel": {
8024
+ "type": "string",
8025
+ "required": false
8026
+ },
8027
+ "scrollLabel": {
8028
+ "type": "string | undefined",
8029
+ "required": false
8030
+ },
8031
+ "selectedRowIds": {
8032
+ "type": "string[]",
8033
+ "required": false
8034
+ },
8035
+ "selectionMode": {
8036
+ "type": "TableSelectionMode",
8037
+ "required": false
8038
+ },
8039
+ "skeletonRows": {
8040
+ "type": "number",
8041
+ "required": false
8042
+ },
8043
+ "sort": {
8044
+ "type": "TableSortState | null",
8045
+ "required": false
8046
+ },
8047
+ "stickyHeader": {
8048
+ "type": "boolean",
8049
+ "required": false
8050
+ }
8051
+ },
8052
+ "events": [
8053
+ {
8054
+ "name": "dsCellAction",
8055
+ "detail": "TableCellActionDetail"
8056
+ },
8057
+ {
8058
+ "name": "dsGroupingChange",
8059
+ "detail": "TableGroupingChangeDetail"
8060
+ },
8061
+ {
8062
+ "name": "dsLoadMore",
8063
+ "detail": "TableLoadMoreDetail"
8064
+ },
8065
+ {
8066
+ "name": "dsSelectionChange",
8067
+ "detail": "TableSelectionChangeDetail"
8068
+ },
8069
+ {
8070
+ "name": "dsSortChange",
8071
+ "detail": "TableSortChangeDetail"
8072
+ }
8073
+ ],
8074
+ "slots": []
8075
+ },
8076
+ "exports": {
8077
+ "customElement": "ds-table",
8078
+ "react": "DsTable",
8079
+ "angular": "DsTable"
8080
+ },
8081
+ "dependencies": [
8082
+ "@ds-mo/ui",
8083
+ "@ds-mo/tokens",
8084
+ "@ds-mo/icons"
8085
+ ],
8086
+ "componentDependencies": [
8087
+ "button-unfilled",
8088
+ "checkbox",
8089
+ "empty-state",
8090
+ "icon",
8091
+ "loader",
8092
+ "skeleton",
8093
+ "tag",
8094
+ "text"
8095
+ ]
8096
+ },
7824
8097
  {
7825
8098
  "id": "component:ds-tag",
7826
8099
  "tag": "ds-tag",
@@ -7881,12 +8154,13 @@
7881
8154
  "Warning signals higher urgency or risk than caution, which asks for attention before a possible issue.",
7882
8155
  "Contrast changes visual prominence without changing semantic intent or parent surface context.",
7883
8156
  "Rounded is an optional visual style with no semantic difference.",
8157
+ "isInset opts into reduced outer geometry only when Tag is nested inside a control of the same density; semantic styling, typography, icons, gaps, radius, and interaction remain unchanged.",
7884
8158
  "Labels stay on one line and truncate only when the owner supplies a maximum width.",
7885
8159
  "Omitted interactive renders static metadata with no focus, event, or suffix. Interactive adds the fixed ChevronUpDown suffix and emits dsClick without toggling expanded internally.",
7886
8160
  "isInactive disables only the interactive button and applies the shared inactive treatment."
7887
8161
  ],
7888
8162
  "responsiveBehavior": [
7889
- "The owner selects md, sm, or xs density to match its local layout and owns collection wrapping, overflow, and condensation.",
8163
+ "The owner selects md, sm, or xs density to match its local layout and owns collection wrapping, overflow, and condensation. Use isInset only for same-density control nesting.",
7890
8164
  "Tag does not change size or behavior automatically at breakpoints."
7891
8165
  ],
7892
8166
  "frameworkCaveats": {
@@ -7937,6 +8211,10 @@
7937
8211
  "type": "boolean",
7938
8212
  "required": false
7939
8213
  },
8214
+ "isInset": {
8215
+ "type": "boolean",
8216
+ "required": false
8217
+ },
7940
8218
  "label": {
7941
8219
  "type": "string",
7942
8220
  "required": true
@@ -9,7 +9,7 @@ export declare class DsMobileHeader {
9
9
  dsSubsectionChange: EventEmitter<DsMobileHeaderCustomEvent<string>>;
10
10
  constructor(c: ChangeDetectorRef, r: ElementRef, z: NgZone);
11
11
  static ɵfac: i0.ɵɵFactoryDeclaration<DsMobileHeader, never>;
12
- static ɵcmp: i0.ɵɵComponentDeclaration<DsMobileHeader, "ds-mobile-header", never, { "heading": { "alias": "heading"; "required": false; }; "headingLevel": { "alias": "headingLevel"; "required": false; }; "sections": { "alias": "sections"; "required": false; }; "sectionsAriaLabel": { "alias": "sectionsAriaLabel"; "required": false; }; "subsections": { "alias": "subsections"; "required": false; }; "subsectionsAriaLabel": { "alias": "subsectionsAriaLabel"; "required": false; }; "subvalue": { "alias": "subvalue"; "required": false; }; "tone": { "alias": "tone"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, { "dsSectionChange": "dsSectionChange"; "dsSubsectionChange": "dsSubsectionChange"; }, never, ["*"], true, never>;
12
+ static ɵcmp: i0.ɵɵComponentDeclaration<DsMobileHeader, "ds-mobile-header", never, { "heading": { "alias": "heading"; "required": false; }; "headingLevel": { "alias": "headingLevel"; "required": false; }; "sections": { "alias": "sections"; "required": false; }; "sectionsAriaLabel": { "alias": "sectionsAriaLabel"; "required": false; }; "sectionsPresentation": { "alias": "sectionsPresentation"; "required": false; }; "sectionsSize": { "alias": "sectionsSize"; "required": false; }; "subsections": { "alias": "subsections"; "required": false; }; "subsectionsAriaLabel": { "alias": "subsectionsAriaLabel"; "required": false; }; "subvalue": { "alias": "subvalue"; "required": false; }; "tone": { "alias": "tone"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, { "dsSectionChange": "dsSectionChange"; "dsSubsectionChange": "dsSubsectionChange"; }, never, ["*"], true, never>;
13
13
  }
14
14
  export declare interface DsMobileHeader extends Components.DsMobileHeader {
15
15
  /**
@@ -19,12 +19,12 @@ let DsMobileHeader = class DsMobileHeader {
19
19
  this.el = r.nativeElement;
20
20
  }
21
21
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: DsMobileHeader, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
22
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.1.0", type: DsMobileHeader, isStandalone: true, selector: "ds-mobile-header", inputs: { heading: "heading", headingLevel: "headingLevel", sections: "sections", sectionsAriaLabel: "sectionsAriaLabel", subsections: "subsections", subsectionsAriaLabel: "subsectionsAriaLabel", subvalue: "subvalue", tone: "tone", value: "value" }, outputs: { dsSectionChange: "dsSectionChange", dsSubsectionChange: "dsSubsectionChange" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
22
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.1.0", type: DsMobileHeader, isStandalone: true, selector: "ds-mobile-header", inputs: { heading: "heading", headingLevel: "headingLevel", sections: "sections", sectionsAriaLabel: "sectionsAriaLabel", sectionsPresentation: "sectionsPresentation", sectionsSize: "sectionsSize", subsections: "subsections", subsectionsAriaLabel: "subsectionsAriaLabel", subvalue: "subvalue", tone: "tone", value: "value" }, outputs: { dsSectionChange: "dsSectionChange", dsSubsectionChange: "dsSubsectionChange" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
23
23
  };
24
24
  DsMobileHeader = __decorate([
25
25
  ProxyCmp({
26
26
  defineCustomElementFn: defineDsMobileHeader,
27
- inputs: ['heading', 'headingLevel', 'sections', 'sectionsAriaLabel', 'subsections', 'subsectionsAriaLabel', 'subvalue', 'tone', 'value']
27
+ inputs: ['heading', 'headingLevel', 'sections', 'sectionsAriaLabel', 'sectionsPresentation', 'sectionsSize', 'subsections', 'subsectionsAriaLabel', 'subvalue', 'tone', 'value']
28
28
  })
29
29
  ], DsMobileHeader);
30
30
  export { DsMobileHeader };
@@ -35,7 +35,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.0", ngImpor
35
35
  changeDetection: ChangeDetectionStrategy.OnPush,
36
36
  template: '<ng-content></ng-content>',
37
37
  // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
38
- inputs: ['heading', 'headingLevel', 'sections', 'sectionsAriaLabel', 'subsections', 'subsectionsAriaLabel', 'subvalue', 'tone', 'value'],
38
+ inputs: ['heading', 'headingLevel', 'sections', 'sectionsAriaLabel', 'sectionsPresentation', 'sectionsSize', 'subsections', 'subsectionsAriaLabel', 'subvalue', 'tone', 'value'],
39
39
  outputs: ['dsSectionChange', 'dsSubsectionChange'],
40
40
  }]
41
41
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { dsSectionChange: [{
@@ -8,7 +8,7 @@ export declare class DsTabGroup {
8
8
  dsChange: EventEmitter<DsTabGroupCustomEvent<string>>;
9
9
  constructor(c: ChangeDetectorRef, r: ElementRef, z: NgZone);
10
10
  static ɵfac: i0.ɵɵFactoryDeclaration<DsTabGroup, never>;
11
- static ɵcmp: i0.ɵɵComponentDeclaration<DsTabGroup, "ds-tab-group", never, { "ariaLabel": { "alias": "ariaLabel"; "required": false; }; "ariaLabelledby": { "alias": "ariaLabelledby"; "required": false; }; "background": { "alias": "background"; "required": false; }; "tabs": { "alias": "tabs"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, { "dsChange": "dsChange"; }, never, ["*"], true, never>;
11
+ static ɵcmp: i0.ɵɵComponentDeclaration<DsTabGroup, "ds-tab-group", never, { "ariaLabel": { "alias": "ariaLabel"; "required": false; }; "ariaLabelledby": { "alias": "ariaLabelledby"; "required": false; }; "background": { "alias": "background"; "required": false; }; "size": { "alias": "size"; "required": false; }; "tabs": { "alias": "tabs"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, { "dsChange": "dsChange"; }, never, ["*"], true, never>;
12
12
  }
13
13
  export declare interface DsTabGroup extends Components.DsTabGroup {
14
14
  dsChange: EventEmitter<DsTabGroupCustomEvent<string>>;
@@ -18,12 +18,12 @@ let DsTabGroup = class DsTabGroup {
18
18
  this.el = r.nativeElement;
19
19
  }
20
20
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: DsTabGroup, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
21
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.1.0", type: DsTabGroup, isStandalone: true, selector: "ds-tab-group", inputs: { ariaLabel: "ariaLabel", ariaLabelledby: "ariaLabelledby", background: "background", tabs: "tabs", value: "value" }, outputs: { dsChange: "dsChange" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
21
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.1.0", type: DsTabGroup, isStandalone: true, selector: "ds-tab-group", inputs: { ariaLabel: "ariaLabel", ariaLabelledby: "ariaLabelledby", background: "background", size: "size", tabs: "tabs", value: "value" }, outputs: { dsChange: "dsChange" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
22
22
  };
23
23
  DsTabGroup = __decorate([
24
24
  ProxyCmp({
25
25
  defineCustomElementFn: defineDsTabGroup,
26
- inputs: ['ariaLabel', 'ariaLabelledby', 'background', 'tabs', 'value']
26
+ inputs: ['ariaLabel', 'ariaLabelledby', 'background', 'size', 'tabs', 'value']
27
27
  })
28
28
  ], DsTabGroup);
29
29
  export { DsTabGroup };
@@ -34,7 +34,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.0", ngImpor
34
34
  changeDetection: ChangeDetectionStrategy.OnPush,
35
35
  template: '<ng-content></ng-content>',
36
36
  // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
37
- inputs: ['ariaLabel', 'ariaLabelledby', 'background', 'tabs', 'value'],
37
+ inputs: ['ariaLabel', 'ariaLabelledby', 'background', 'size', 'tabs', 'value'],
38
38
  outputs: ['dsChange'],
39
39
  }]
40
40
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { dsChange: [{
@@ -0,0 +1,28 @@
1
+ import { ChangeDetectorRef, ElementRef, NgZone, EventEmitter } from '@angular/core';
2
+ import type { Components } from '@ds-mo/ui/components';
3
+ import type { DsTableCustomEvent } from '@ds-mo/ui/components';
4
+ import type { TableSortChangeDetail as IDsTableTableSortChangeDetail } from '@ds-mo/ui/components';
5
+ import type { TableGroupingChangeDetail as IDsTableTableGroupingChangeDetail } from '@ds-mo/ui/components';
6
+ import type { TableSelectionChangeDetail as IDsTableTableSelectionChangeDetail } from '@ds-mo/ui/components';
7
+ import type { TableLoadMoreDetail as IDsTableTableLoadMoreDetail } from '@ds-mo/ui/components';
8
+ import type { TableCellActionDetail as IDsTableTableCellActionDetail } from '@ds-mo/ui/components';
9
+ import * as i0 from "@angular/core";
10
+ export declare class DsTable {
11
+ protected z: NgZone;
12
+ protected el: HTMLDsTableElement;
13
+ dsSortChange: EventEmitter<DsTableCustomEvent<IDsTableTableSortChangeDetail>>;
14
+ dsGroupingChange: EventEmitter<DsTableCustomEvent<IDsTableTableGroupingChangeDetail>>;
15
+ dsSelectionChange: EventEmitter<DsTableCustomEvent<IDsTableTableSelectionChangeDetail>>;
16
+ dsLoadMore: EventEmitter<DsTableCustomEvent<IDsTableTableLoadMoreDetail>>;
17
+ dsCellAction: EventEmitter<DsTableCustomEvent<IDsTableTableCellActionDetail>>;
18
+ constructor(c: ChangeDetectorRef, r: ElementRef, z: NgZone);
19
+ static ɵfac: i0.ɵɵFactoryDeclaration<DsTable, never>;
20
+ static ɵcmp: i0.ɵɵComponentDeclaration<DsTable, "ds-table", never, { "caption": { "alias": "caption"; "required": true; }; "captionVisibility": { "alias": "captionVisibility"; "required": false; }; "columns": { "alias": "columns"; "required": false; }; "emptyBody": { "alias": "emptyBody"; "required": false; }; "emptyCellLabel": { "alias": "emptyCellLabel"; "required": false; }; "emptyHeading": { "alias": "emptyHeading"; "required": false; }; "endOfResultsLabel": { "alias": "endOfResultsLabel"; "required": false; }; "error": { "alias": "error"; "required": false; }; "errorBody": { "alias": "errorBody"; "required": false; }; "errorHeading": { "alias": "errorHeading"; "required": false; }; "grouping": { "alias": "grouping"; "required": false; }; "groups": { "alias": "groups"; "required": false; }; "hasMore": { "alias": "hasMore"; "required": false; }; "lazyLoading": { "alias": "lazyLoading"; "required": false; }; "loadIdentity": { "alias": "loadIdentity"; "required": false; }; "loadMoreError": { "alias": "loadMoreError"; "required": false; }; "loadMoreLabel": { "alias": "loadMoreLabel"; "required": false; }; "loadMoreMode": { "alias": "loadMoreMode"; "required": false; }; "loadMoreThreshold": { "alias": "loadMoreThreshold"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "loadingMore": { "alias": "loadingMore"; "required": false; }; "loadingMoreLabel": { "alias": "loadingMoreLabel"; "required": false; }; "maxHeight": { "alias": "maxHeight"; "required": false; }; "retryLabel": { "alias": "retryLabel"; "required": false; }; "rows": { "alias": "rows"; "required": false; }; "rowsLoadedLabel": { "alias": "rowsLoadedLabel"; "required": false; }; "scrollLabel": { "alias": "scrollLabel"; "required": false; }; "selectedRowIds": { "alias": "selectedRowIds"; "required": false; }; "selectionMode": { "alias": "selectionMode"; "required": false; }; "skeletonRows": { "alias": "skeletonRows"; "required": false; }; "sort": { "alias": "sort"; "required": false; }; "stickyHeader": { "alias": "stickyHeader"; "required": false; }; }, { "dsSortChange": "dsSortChange"; "dsGroupingChange": "dsGroupingChange"; "dsSelectionChange": "dsSelectionChange"; "dsLoadMore": "dsLoadMore"; "dsCellAction": "dsCellAction"; }, never, ["*"], true, never>;
21
+ }
22
+ export declare interface DsTable extends Components.DsTable {
23
+ dsSortChange: EventEmitter<DsTableCustomEvent<IDsTableTableSortChangeDetail>>;
24
+ dsGroupingChange: EventEmitter<DsTableCustomEvent<IDsTableTableGroupingChangeDetail>>;
25
+ dsSelectionChange: EventEmitter<DsTableCustomEvent<IDsTableTableSelectionChangeDetail>>;
26
+ dsLoadMore: EventEmitter<DsTableCustomEvent<IDsTableTableLoadMoreDetail>>;
27
+ dsCellAction: EventEmitter<DsTableCustomEvent<IDsTableTableCellActionDetail>>;
28
+ }
@@ -0,0 +1,54 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ /* tslint:disable */
8
+ /* auto-generated angular directive proxies */
9
+ import { ChangeDetectionStrategy, Component, EventEmitter, Output } from '@angular/core';
10
+ import { ProxyCmp } from './angular-component-lib/utils.js';
11
+ import { defineCustomElement as defineDsTable } from '@ds-mo/ui/components/ds-table.js';
12
+ import * as i0 from "@angular/core";
13
+ let DsTable = class DsTable {
14
+ constructor(c, r, z) {
15
+ this.z = z;
16
+ this.dsSortChange = new EventEmitter();
17
+ this.dsGroupingChange = new EventEmitter();
18
+ this.dsSelectionChange = new EventEmitter();
19
+ this.dsLoadMore = new EventEmitter();
20
+ this.dsCellAction = new EventEmitter();
21
+ c.detach();
22
+ this.el = r.nativeElement;
23
+ }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: DsTable, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
25
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.1.0", type: DsTable, isStandalone: true, selector: "ds-table", inputs: { caption: "caption", captionVisibility: "captionVisibility", columns: "columns", emptyBody: "emptyBody", emptyCellLabel: "emptyCellLabel", emptyHeading: "emptyHeading", endOfResultsLabel: "endOfResultsLabel", error: "error", errorBody: "errorBody", errorHeading: "errorHeading", grouping: "grouping", groups: "groups", hasMore: "hasMore", lazyLoading: "lazyLoading", loadIdentity: "loadIdentity", loadMoreError: "loadMoreError", loadMoreLabel: "loadMoreLabel", loadMoreMode: "loadMoreMode", loadMoreThreshold: "loadMoreThreshold", loading: "loading", loadingMore: "loadingMore", loadingMoreLabel: "loadingMoreLabel", maxHeight: "maxHeight", retryLabel: "retryLabel", rows: "rows", rowsLoadedLabel: "rowsLoadedLabel", scrollLabel: "scrollLabel", selectedRowIds: "selectedRowIds", selectionMode: "selectionMode", skeletonRows: "skeletonRows", sort: "sort", stickyHeader: "stickyHeader" }, outputs: { dsSortChange: "dsSortChange", dsGroupingChange: "dsGroupingChange", dsSelectionChange: "dsSelectionChange", dsLoadMore: "dsLoadMore", dsCellAction: "dsCellAction" }, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
26
+ };
27
+ DsTable = __decorate([
28
+ ProxyCmp({
29
+ defineCustomElementFn: defineDsTable,
30
+ inputs: ['caption', 'captionVisibility', 'columns', 'emptyBody', 'emptyCellLabel', 'emptyHeading', 'endOfResultsLabel', 'error', 'errorBody', 'errorHeading', 'grouping', 'groups', 'hasMore', 'lazyLoading', 'loadIdentity', 'loadMoreError', 'loadMoreLabel', 'loadMoreMode', 'loadMoreThreshold', 'loading', 'loadingMore', 'loadingMoreLabel', 'maxHeight', 'retryLabel', 'rows', 'rowsLoadedLabel', 'scrollLabel', 'selectedRowIds', 'selectionMode', 'skeletonRows', 'sort', 'stickyHeader']
31
+ })
32
+ ], DsTable);
33
+ export { DsTable };
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.0", ngImport: i0, type: DsTable, decorators: [{
35
+ type: Component,
36
+ args: [{
37
+ selector: 'ds-table',
38
+ changeDetection: ChangeDetectionStrategy.OnPush,
39
+ template: '<ng-content></ng-content>',
40
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
41
+ inputs: [{ name: 'caption', required: true }, 'captionVisibility', 'columns', 'emptyBody', 'emptyCellLabel', 'emptyHeading', 'endOfResultsLabel', 'error', 'errorBody', 'errorHeading', 'grouping', 'groups', 'hasMore', 'lazyLoading', 'loadIdentity', 'loadMoreError', 'loadMoreLabel', 'loadMoreMode', 'loadMoreThreshold', 'loading', 'loadingMore', 'loadingMoreLabel', 'maxHeight', 'retryLabel', 'rows', 'rowsLoadedLabel', 'scrollLabel', 'selectedRowIds', 'selectionMode', 'skeletonRows', 'sort', 'stickyHeader'],
42
+ outputs: ['dsSortChange', 'dsGroupingChange', 'dsSelectionChange', 'dsLoadMore', 'dsCellAction'],
43
+ }]
44
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { dsSortChange: [{
45
+ type: Output
46
+ }], dsGroupingChange: [{
47
+ type: Output
48
+ }], dsSelectionChange: [{
49
+ type: Output
50
+ }], dsLoadMore: [{
51
+ type: Output
52
+ }], dsCellAction: [{
53
+ type: Output
54
+ }] } });
@@ -8,7 +8,7 @@ export declare class DsTag {
8
8
  dsClick: EventEmitter<DsTagCustomEvent<MouseEvent>>;
9
9
  constructor(c: ChangeDetectorRef, r: ElementRef, z: NgZone);
10
10
  static ɵfac: i0.ɵɵFactoryDeclaration<DsTag, never>;
11
- static ɵcmp: i0.ɵɵComponentDeclaration<DsTag, "ds-tag", never, { "ariaControls": { "alias": "ariaControls"; "required": false; }; "contrast": { "alias": "contrast"; "required": false; }; "expanded": { "alias": "expanded"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "intent": { "alias": "intent"; "required": false; }; "interactive": { "alias": "interactive"; "required": false; }; "isInactive": { "alias": "isInactive"; "required": false; }; "label": { "alias": "label"; "required": true; }; "maxWidth": { "alias": "maxWidth"; "required": false; }; "rounded": { "alias": "rounded"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "dsClick": "dsClick"; }, never, ["*"], true, never>;
11
+ static ɵcmp: i0.ɵɵComponentDeclaration<DsTag, "ds-tag", never, { "ariaControls": { "alias": "ariaControls"; "required": false; }; "contrast": { "alias": "contrast"; "required": false; }; "expanded": { "alias": "expanded"; "required": false; }; "icon": { "alias": "icon"; "required": false; }; "intent": { "alias": "intent"; "required": false; }; "interactive": { "alias": "interactive"; "required": false; }; "isInactive": { "alias": "isInactive"; "required": false; }; "isInset": { "alias": "isInset"; "required": false; }; "label": { "alias": "label"; "required": true; }; "maxWidth": { "alias": "maxWidth"; "required": false; }; "rounded": { "alias": "rounded"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "dsClick": "dsClick"; }, never, ["*"], true, never>;
12
12
  }
13
13
  export declare interface DsTag extends Components.DsTag {
14
14
  /**