@ds-mo/ui 14.19.1 → 14.21.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 (272) hide show
  1. package/dist/.package-ready.json +1 -1
  2. package/dist/agent-patterns.json +1 -1
  3. package/dist/agent.json +405 -36
  4. package/dist/angular/ds-chip.d.ts +1 -1
  5. package/dist/angular/ds-chip.js +3 -3
  6. package/dist/angular/ds-filter-menu.d.ts +7 -1
  7. package/dist/angular/ds-filter-menu.js +7 -4
  8. package/dist/angular/ds-input.d.ts +1 -1
  9. package/dist/angular/ds-input.js +3 -3
  10. package/dist/angular/ds-tab-group.d.ts +1 -1
  11. package/dist/angular/ds-tab-group.js +3 -3
  12. package/dist/angular/ds-table-filter.d.ts +7 -1
  13. package/dist/angular/ds-table-filter.js +7 -4
  14. package/dist/angular/ds-table-group.d.ts +29 -0
  15. package/dist/angular/ds-table-group.js +48 -0
  16. package/dist/angular/ds-table-search.d.ts +20 -0
  17. package/dist/angular/ds-table-search.js +49 -0
  18. package/dist/angular/ds-table.d.ts +1 -1
  19. package/dist/angular/ds-table.js +3 -3
  20. package/dist/angular/index.d.ts +1 -1
  21. package/dist/angular/index.js +2 -0
  22. package/dist/angular/proxies.d.ts +2 -0
  23. package/dist/angular/proxies.js +2 -0
  24. package/dist/components/ds-agent-activity.js +1 -1
  25. package/dist/components/ds-agent-questionnaire.js +1 -1
  26. package/dist/components/ds-agent-response.js +1 -1
  27. package/dist/components/ds-agent-source-list.js +1 -1
  28. package/dist/components/ds-agent-tool-call.js +1 -1
  29. package/dist/components/ds-attachment-list.js +1 -1
  30. package/dist/components/ds-badge.js +1 -1
  31. package/dist/components/ds-banner.js +1 -1
  32. package/dist/components/ds-bar-action.js +1 -1
  33. package/dist/components/ds-bar-nav.js +1 -1
  34. package/dist/components/ds-bar-title.js +1 -1
  35. package/dist/components/ds-bar-workflow.js +1 -1
  36. package/dist/components/ds-breadcrumb.js +1 -1
  37. package/dist/components/ds-button-filled.js +1 -1
  38. package/dist/components/ds-button-unfilled.js +1 -1
  39. package/dist/components/ds-card-chart.js +1 -1
  40. package/dist/components/ds-card-overview.js +1 -1
  41. package/dist/components/ds-card-setting.js +1 -1
  42. package/dist/components/ds-chart-legend.js +1 -1
  43. package/dist/components/ds-chart.js +1 -1
  44. package/dist/components/ds-checkbox.js +1 -1
  45. package/dist/components/ds-chip.js +1 -1
  46. package/dist/components/ds-chip.js.map +1 -1
  47. package/dist/components/ds-code-block.js +1 -1
  48. package/dist/components/ds-conversation-list-item.js +1 -1
  49. package/dist/components/ds-conversation-list-section.js +1 -1
  50. package/dist/components/ds-empty-state.js +1 -1
  51. package/dist/components/ds-field.js +1 -1
  52. package/dist/components/ds-filter-menu.js +1 -1
  53. package/dist/components/ds-input.js +1 -1
  54. package/dist/components/ds-markdown.js +1 -1
  55. package/dist/components/ds-menu.js +1 -1
  56. package/dist/components/ds-message-actions.js +1 -1
  57. package/dist/components/ds-message-composer.js +1 -1
  58. package/dist/components/ds-message-scroller.js +1 -1
  59. package/dist/components/ds-message-scroller.js.map +1 -1
  60. package/dist/components/ds-message.js +1 -1
  61. package/dist/components/ds-mobile-bar-nav.js +1 -1
  62. package/dist/components/ds-mobile-header.js +1 -1
  63. package/dist/components/ds-mobile-section-switcher.js +1 -1
  64. package/dist/components/ds-mobile-sheet-nav.js +1 -1
  65. package/dist/components/ds-modal.js +1 -1
  66. package/dist/components/ds-pagination.js +1 -1
  67. package/dist/components/ds-panel-nav.js +1 -1
  68. package/dist/components/ds-panel-sub-nav.js +1 -1
  69. package/dist/components/ds-panel-tool-header.js +1 -1
  70. package/dist/components/ds-panel-tool-search.js +1 -1
  71. package/dist/components/ds-panel-tool-search.js.map +1 -1
  72. package/dist/components/ds-panel-tools.js +1 -1
  73. package/dist/components/ds-paper-texture.js +1 -1
  74. package/dist/components/ds-radio.js +1 -1
  75. package/dist/components/ds-select.js +1 -1
  76. package/dist/components/ds-shell-app.js +1 -1
  77. package/dist/components/ds-shell-page.js +1 -1
  78. package/dist/components/ds-shell-tools.js +1 -1
  79. package/dist/components/ds-slider.js +1 -1
  80. package/dist/components/ds-swatch-picker.js +1 -1
  81. package/dist/components/ds-tab-group.js +1 -1
  82. package/dist/components/ds-table-filter.js +1 -1
  83. package/dist/components/ds-table-filter.js.map +1 -1
  84. package/dist/components/ds-table-group.d.ts +11 -0
  85. package/dist/components/ds-table-group.js +2 -0
  86. package/dist/components/ds-table-group.js.map +1 -0
  87. package/dist/components/ds-table-saved-views.js +1 -1
  88. package/dist/components/ds-table-search.d.ts +11 -0
  89. package/dist/components/ds-table-search.js +2 -0
  90. package/dist/components/ds-table-search.js.map +1 -0
  91. package/dist/components/ds-table-sort.js +1 -1
  92. package/dist/components/ds-table-sort.js.map +1 -1
  93. package/dist/components/ds-table-toolbar.js +1 -1
  94. package/dist/components/ds-table-toolbar.js.map +1 -1
  95. package/dist/components/ds-table.js +1 -1
  96. package/dist/components/ds-table.js.map +1 -1
  97. package/dist/components/ds-tag.js +1 -1
  98. package/dist/components/ds-text.js +1 -1
  99. package/dist/components/ds-toast.js +1 -1
  100. package/dist/components/ds-tooltip-chart.js +1 -1
  101. package/dist/components/ds-tooltip.js +1 -1
  102. package/dist/components/ds-typing-indicator.js +1 -1
  103. package/dist/components/{p-Bf7PZJPT.js → p-5Z4oYuiK.js} +2 -2
  104. package/dist/components/{p-DsgEY6mZ.js → p-6rB0eAda.js} +2 -2
  105. package/dist/components/{p-DZv2g9Pe.js → p-9ykZwPlI.js} +2 -2
  106. package/dist/components/{p-BHhmB9-4.js → p-B0kSlcaw.js} +2 -2
  107. package/dist/components/{p-BmlGeaY8.js → p-B1wMpt1z.js} +2 -2
  108. package/dist/components/p-BEttT0UB.js +2 -0
  109. package/dist/components/p-BEttT0UB.js.map +1 -0
  110. package/dist/components/p-BFit8o0r.js +2 -0
  111. package/dist/components/p-BFit8o0r.js.map +1 -0
  112. package/dist/components/{p-fRDzpfi9.js → p-BXv6RpoF.js} +2 -2
  113. package/dist/components/{p-CFsLF-ts.js → p-BbG7nOcz.js} +2 -2
  114. package/dist/components/{p-vrotWZxt.js → p-Bc_z1UwJ.js} +2 -2
  115. package/dist/components/{p-Bx5BSd6F.js → p-BcxidW9k.js} +2 -2
  116. package/dist/components/{p-BNq9fr9S.js → p-Bd8I2oXN.js} +2 -2
  117. package/dist/components/{p-D-MWvpg6.js → p-Bjq1KP_Y.js} +2 -2
  118. package/dist/components/p-Bjq1KP_Y.js.map +1 -0
  119. package/dist/components/{p-DW5Ita-P.js → p-BnTPuV3x.js} +2 -2
  120. package/dist/components/{p-DW5Ita-P.js.map → p-BnTPuV3x.js.map} +1 -1
  121. package/dist/components/p-BqVXMEJm.js +2 -0
  122. package/dist/components/p-BqVXMEJm.js.map +1 -0
  123. package/dist/components/{p-DdH7b4JF.js → p-CBymzuOO.js} +2 -2
  124. package/dist/components/{p-BjRD57w3.js → p-CE2b5GPu.js} +2 -2
  125. package/dist/components/{p-CRSwNbPk.js → p-CEnoPUn5.js} +2 -2
  126. package/dist/components/p-CFkZSDwI.js +2 -0
  127. package/dist/components/{p-CKtJ6FHM.js.map → p-CFkZSDwI.js.map} +1 -1
  128. package/dist/components/{p-Bb4KnRy0.js → p-CTH3dSYg.js} +2 -2
  129. package/dist/components/{p-1YHFQeI7.js → p-CUL5_8JM.js} +2 -2
  130. package/dist/components/{p-BubgDQlb.js → p-CZ144LS5.js} +2 -2
  131. package/dist/components/{p-B-HsfQOK.js → p-Cd1JnnVK.js} +2 -2
  132. package/dist/components/p-CeKa4VbU.js +2 -0
  133. package/dist/components/{p-Crz606uD.js.map → p-CeKa4VbU.js.map} +1 -1
  134. package/dist/components/{p-Bx1IHqJb.js → p-Cnsvgx1M.js} +2 -2
  135. package/dist/components/{p-BYFS2qWb.js → p-CpeJMKJ5.js} +2 -2
  136. package/dist/components/{p-Cxr0IQjC.js → p-CzbsTZt7.js} +2 -2
  137. package/dist/components/{p-D7v6Na7U.js → p-D36EmETH.js} +2 -2
  138. package/dist/components/{p-DFC0sRM-.js → p-DI8DUozc.js} +2 -2
  139. package/dist/components/{p-DIqT1m2r.js → p-DSy1oOnd.js} +2 -2
  140. package/dist/components/{p-DIqT1m2r.js.map → p-DSy1oOnd.js.map} +1 -1
  141. package/dist/components/{p-DQBT1Jkf.js → p-DbLLH3hr.js} +2 -2
  142. package/dist/components/{p-Drnyq8z7.js → p-Dit6JmAK.js} +2 -2
  143. package/dist/components/{p-caLOcQUK.js → p-DzPtYdXy.js} +2 -2
  144. package/dist/components/{p-Do8wbFff.js → p-XaCYqck3.js} +2 -2
  145. package/dist/components/{p-DKt_8s-U.js → p-Y5_MkCFn.js} +2 -2
  146. package/dist/components/{p-DBYCwq9L.js → p-YDxDyedE.js} +2 -2
  147. package/dist/components/{p-DmWoFSGs.js → p-_C-XRpCB.js} +2 -2
  148. package/dist/components/{p-Demfba7T.js → p-bHnk8t5I.js} +2 -2
  149. package/dist/components/p-hYjmOPCI.js +2 -0
  150. package/dist/components/p-hYjmOPCI.js.map +1 -0
  151. package/dist/components/{p-ChfVRPHw.js → p-pUOA3iDG.js} +2 -2
  152. package/dist/components/p-pnO8tAYB.js +2 -0
  153. package/dist/components/{p-Cp5Hr7Vz.js.map → p-pnO8tAYB.js.map} +1 -1
  154. package/dist/components/{p-B6WQre5D.js → p-pxN8JGEh.js} +2 -2
  155. package/dist/components/p-pxN8JGEh.js.map +1 -0
  156. package/dist/components/{p-BWwiCvep.js → p-rw0ZxIE4.js} +2 -2
  157. package/dist/components/{p-B4wTnsUL.js → p-w9fkkwL2.js} +2 -2
  158. package/dist/components/p-x5u5Ueli.js +2 -0
  159. package/dist/components/{p-BeA6Jv-3.js.map → p-x5u5Ueli.js.map} +1 -1
  160. package/dist/docs/components.json +1400 -44
  161. package/dist/lib/utils/date-filter-value.d.ts +57 -0
  162. package/dist/lib/utils/index.d.ts +2 -0
  163. package/dist/lib/utils/index.js +67 -0
  164. package/dist/lib/utils/index.js.map +3 -3
  165. package/dist/mcp-data/registry/button-filled.json +1 -0
  166. package/dist/mcp-data/registry/button-unfilled.json +1 -0
  167. package/dist/mcp-data/registry/chip.json +39 -2
  168. package/dist/mcp-data/registry/filter-menu.json +134 -14
  169. package/dist/mcp-data/registry/input.json +54 -2
  170. package/dist/mcp-data/registry/panel-tool-search.json +4 -5
  171. package/dist/mcp-data/registry/registry.json +410 -35
  172. package/dist/mcp-data/registry/select.json +1 -0
  173. package/dist/mcp-data/registry/tab-group.json +21 -2
  174. package/dist/mcp-data/registry/table-filter.json +83 -11
  175. package/dist/mcp-data/registry/table-group.json +301 -0
  176. package/dist/mcp-data/registry/table-search.json +343 -0
  177. package/dist/mcp-data/registry/table-sort.json +1 -1
  178. package/dist/mcp-data/registry/table-toolbar.json +7 -6
  179. package/dist/mcp-data/registry/table.json +55 -17
  180. package/dist/react/components.d.ts +2 -0
  181. package/dist/react/components.js +2 -0
  182. package/dist/react/ds-filter-menu.d.ts +2 -1
  183. package/dist/react/ds-filter-menu.js +1 -0
  184. package/dist/react/ds-table-filter.d.ts +2 -1
  185. package/dist/react/ds-table-filter.js +1 -0
  186. package/dist/react/ds-table-group.d.ts +14 -0
  187. package/dist/react/ds-table-group.js +16 -0
  188. package/dist/react/ds-table-search.d.ts +14 -0
  189. package/dist/react/ds-table-search.js +16 -0
  190. package/dist/styles/table.css +46 -0
  191. package/dist/types/components/Chip/Chip.d.ts +5 -0
  192. package/dist/types/components/FilterMenu/FilterMenu.d.ts +46 -1
  193. package/dist/types/components/FilterMenu/filter-menu-calendar.d.ts +13 -0
  194. package/dist/types/components/Input/Input.d.ts +6 -0
  195. package/dist/types/components/TabGroup/TabGroup.d.ts +2 -0
  196. package/dist/types/components/Table/Table.d.ts +6 -0
  197. package/dist/types/components/Table/index.d.ts +1 -1
  198. package/dist/types/components/Table/table-cell-model.d.ts +11 -1
  199. package/dist/types/components/Table/table-highlight.d.ts +12 -0
  200. package/dist/types/components/Table/table-model.d.ts +6 -5
  201. package/dist/types/components/Table/table-render-model.d.ts +1 -1
  202. package/dist/types/components/Table/table-row-view.d.ts +4 -1
  203. package/dist/types/components/Table/table-types.d.ts +22 -4
  204. package/dist/types/components/Table/table-virtual-model.d.ts +2 -0
  205. package/dist/types/components/TableFilter/TableFilter.d.ts +9 -1
  206. package/dist/types/components/TableGroup/TableGroup.d.ts +60 -0
  207. package/dist/types/components/TableSearch/TableSearch.d.ts +56 -0
  208. package/dist/types/components/TableSearch/table-search-model.d.ts +10 -0
  209. package/dist/types/components/TableSearch/table-search-types.d.ts +10 -0
  210. package/dist/types/components.d.ts +410 -8
  211. package/dist/types/utils/choice-list-parts.d.ts +11 -1
  212. package/dist/types/utils/date-filter-value.d.ts +58 -0
  213. package/dist/types/utils/index.d.ts +2 -0
  214. package/dist/types/utils/select-controller.d.ts +1 -1
  215. package/dist/vue/components.d.ts +2 -0
  216. package/dist/vue/components.js +2 -0
  217. package/dist/vue/ds-chip.js +2 -0
  218. package/dist/vue/ds-filter-menu.js +7 -0
  219. package/dist/vue/ds-input.js +3 -0
  220. package/dist/vue/ds-tab-group.js +1 -0
  221. package/dist/vue/ds-table-filter.js +5 -0
  222. package/dist/vue/ds-table-group.d.ts +3 -0
  223. package/dist/vue/ds-table-group.js +20 -0
  224. package/dist/vue/ds-table-search.d.ts +3 -0
  225. package/dist/vue/ds-table-search.js +22 -0
  226. package/dist/vue/ds-table.js +2 -0
  227. package/package.json +1 -1
  228. package/dist/components/p-B6WQre5D.js.map +0 -1
  229. package/dist/components/p-BeA6Jv-3.js +0 -2
  230. package/dist/components/p-CKtJ6FHM.js +0 -2
  231. package/dist/components/p-Cp5Hr7Vz.js +0 -2
  232. package/dist/components/p-CpUXubax.js +0 -2
  233. package/dist/components/p-CpUXubax.js.map +0 -1
  234. package/dist/components/p-Crz606uD.js +0 -2
  235. package/dist/components/p-D-MWvpg6.js.map +0 -1
  236. package/dist/components/p-DA5H_Iq_.js +0 -2
  237. package/dist/components/p-DA5H_Iq_.js.map +0 -1
  238. package/dist/components/p-Djxw2FjZ.js +0 -2
  239. package/dist/components/p-Djxw2FjZ.js.map +0 -1
  240. /package/dist/components/{p-Bf7PZJPT.js.map → p-5Z4oYuiK.js.map} +0 -0
  241. /package/dist/components/{p-DsgEY6mZ.js.map → p-6rB0eAda.js.map} +0 -0
  242. /package/dist/components/{p-DZv2g9Pe.js.map → p-9ykZwPlI.js.map} +0 -0
  243. /package/dist/components/{p-BHhmB9-4.js.map → p-B0kSlcaw.js.map} +0 -0
  244. /package/dist/components/{p-BmlGeaY8.js.map → p-B1wMpt1z.js.map} +0 -0
  245. /package/dist/components/{p-fRDzpfi9.js.map → p-BXv6RpoF.js.map} +0 -0
  246. /package/dist/components/{p-CFsLF-ts.js.map → p-BbG7nOcz.js.map} +0 -0
  247. /package/dist/components/{p-vrotWZxt.js.map → p-Bc_z1UwJ.js.map} +0 -0
  248. /package/dist/components/{p-Bx5BSd6F.js.map → p-BcxidW9k.js.map} +0 -0
  249. /package/dist/components/{p-BNq9fr9S.js.map → p-Bd8I2oXN.js.map} +0 -0
  250. /package/dist/components/{p-DdH7b4JF.js.map → p-CBymzuOO.js.map} +0 -0
  251. /package/dist/components/{p-BjRD57w3.js.map → p-CE2b5GPu.js.map} +0 -0
  252. /package/dist/components/{p-CRSwNbPk.js.map → p-CEnoPUn5.js.map} +0 -0
  253. /package/dist/components/{p-Bb4KnRy0.js.map → p-CTH3dSYg.js.map} +0 -0
  254. /package/dist/components/{p-1YHFQeI7.js.map → p-CUL5_8JM.js.map} +0 -0
  255. /package/dist/components/{p-BubgDQlb.js.map → p-CZ144LS5.js.map} +0 -0
  256. /package/dist/components/{p-B-HsfQOK.js.map → p-Cd1JnnVK.js.map} +0 -0
  257. /package/dist/components/{p-Bx1IHqJb.js.map → p-Cnsvgx1M.js.map} +0 -0
  258. /package/dist/components/{p-BYFS2qWb.js.map → p-CpeJMKJ5.js.map} +0 -0
  259. /package/dist/components/{p-Cxr0IQjC.js.map → p-CzbsTZt7.js.map} +0 -0
  260. /package/dist/components/{p-D7v6Na7U.js.map → p-D36EmETH.js.map} +0 -0
  261. /package/dist/components/{p-DFC0sRM-.js.map → p-DI8DUozc.js.map} +0 -0
  262. /package/dist/components/{p-DQBT1Jkf.js.map → p-DbLLH3hr.js.map} +0 -0
  263. /package/dist/components/{p-Drnyq8z7.js.map → p-Dit6JmAK.js.map} +0 -0
  264. /package/dist/components/{p-caLOcQUK.js.map → p-DzPtYdXy.js.map} +0 -0
  265. /package/dist/components/{p-Do8wbFff.js.map → p-XaCYqck3.js.map} +0 -0
  266. /package/dist/components/{p-DKt_8s-U.js.map → p-Y5_MkCFn.js.map} +0 -0
  267. /package/dist/components/{p-DBYCwq9L.js.map → p-YDxDyedE.js.map} +0 -0
  268. /package/dist/components/{p-DmWoFSGs.js.map → p-_C-XRpCB.js.map} +0 -0
  269. /package/dist/components/{p-Demfba7T.js.map → p-bHnk8t5I.js.map} +0 -0
  270. /package/dist/components/{p-ChfVRPHw.js.map → p-pUOA3iDG.js.map} +0 -0
  271. /package/dist/components/{p-BWwiCvep.js.map → p-rw0ZxIE4.js.map} +0 -0
  272. /package/dist/components/{p-B4wTnsUL.js.map → p-w9fkkwL2.js.map} +0 -0
@@ -67,7 +67,9 @@ export { DsSwatchPicker } from "./ds-swatch-picker.js";
67
67
  export { DsSwitch } from "./ds-switch.js";
68
68
  export { DsTabGroup } from "./ds-tab-group.js";
69
69
  export { DsTableFilter } from "./ds-table-filter.js";
70
+ export { DsTableGroup } from "./ds-table-group.js";
70
71
  export { DsTableSavedViews } from "./ds-table-saved-views.js";
72
+ export { DsTableSearch } from "./ds-table-search.js";
71
73
  export { DsTableSort } from "./ds-table-sort.js";
72
74
  export { DsTableToolbar } from "./ds-table-toolbar.js";
73
75
  export { DsTable } from "./ds-table.js";
@@ -68,7 +68,9 @@ export { DsSwatchPicker } from "./ds-swatch-picker.js";
68
68
  export { DsSwitch } from "./ds-switch.js";
69
69
  export { DsTabGroup } from "./ds-tab-group.js";
70
70
  export { DsTableFilter } from "./ds-table-filter.js";
71
+ export { DsTableGroup } from "./ds-table-group.js";
71
72
  export { DsTableSavedViews } from "./ds-table-saved-views.js";
73
+ export { DsTableSearch } from "./ds-table-search.js";
72
74
  export { DsTableSort } from "./ds-table-sort.js";
73
75
  export { DsTableToolbar } from "./ds-table-toolbar.js";
74
76
  export { DsTable } from "./ds-table.js";
@@ -3,12 +3,13 @@
3
3
  * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
4
4
  */
5
5
  import type { EventName, StencilReactComponent } from './react-runtime.js';
6
- import { type DsFilterMenuCustomEvent, type FilterMenuChangeDetail } from "@ds-mo/ui";
6
+ import { type DsFilterMenuCustomEvent, type FilterMenuChangeDetail, type FilterMenuMatchModeChangeDetail } from "@ds-mo/ui";
7
7
  import type { Components } from "@ds-mo/ui/dist/components";
8
8
  import { DsFilterMenu as DsFilterMenuElement } from "@ds-mo/ui/dist/components/ds-filter-menu.js";
9
9
  export type DsFilterMenuEvents = {
10
10
  onDsChange: EventName<DsFilterMenuCustomEvent<FilterMenuChangeDetail>>;
11
11
  onDsClear: EventName<DsFilterMenuCustomEvent<void>>;
12
+ onDsMatchModeChange: EventName<DsFilterMenuCustomEvent<FilterMenuMatchModeChangeDetail>>;
12
13
  onDsActiveFilterChange: EventName<DsFilterMenuCustomEvent<string>>;
13
14
  onDsClose: EventName<DsFilterMenuCustomEvent<void>>;
14
15
  onDsOpenChange: EventName<DsFilterMenuCustomEvent<boolean>>;
@@ -10,6 +10,7 @@ export const DsFilterMenu = /*@__PURE__*/ createComponent({
10
10
  events: {
11
11
  onDsChange: 'dsChange',
12
12
  onDsClear: 'dsClear',
13
+ onDsMatchModeChange: 'dsMatchModeChange',
13
14
  onDsActiveFilterChange: 'dsActiveFilterChange',
14
15
  onDsClose: 'dsClose',
15
16
  onDsOpenChange: 'dsOpenChange',
@@ -3,12 +3,13 @@
3
3
  * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
4
4
  */
5
5
  import type { EventName, StencilReactComponent } from './react-runtime.js';
6
- import { type DsTableFilterCustomEvent, type FilterMenuChangeDetail } from "@ds-mo/ui";
6
+ import { type DsTableFilterCustomEvent, type FilterMenuChangeDetail, type FilterMenuMatchModeChangeDetail } from "@ds-mo/ui";
7
7
  import type { Components } from "@ds-mo/ui/dist/components";
8
8
  import { DsTableFilter as DsTableFilterElement } from "@ds-mo/ui/dist/components/ds-table-filter.js";
9
9
  export type DsTableFilterEvents = {
10
10
  onDsChange: EventName<DsTableFilterCustomEvent<FilterMenuChangeDetail>>;
11
11
  onDsClear: EventName<DsTableFilterCustomEvent<void>>;
12
+ onDsMatchModeChange: EventName<DsTableFilterCustomEvent<FilterMenuMatchModeChangeDetail>>;
12
13
  onDsActiveFilterChange: EventName<DsTableFilterCustomEvent<string>>;
13
14
  onDsClose: EventName<DsTableFilterCustomEvent<void>>;
14
15
  onDsOpenChange: EventName<DsTableFilterCustomEvent<boolean>>;
@@ -10,6 +10,7 @@ export const DsTableFilter = /*@__PURE__*/ createComponent({
10
10
  events: {
11
11
  onDsChange: 'dsChange',
12
12
  onDsClear: 'dsClear',
13
+ onDsMatchModeChange: 'dsMatchModeChange',
13
14
  onDsActiveFilterChange: 'dsActiveFilterChange',
14
15
  onDsClose: 'dsClose',
15
16
  onDsOpenChange: 'dsOpenChange',
@@ -0,0 +1,14 @@
1
+ /**
2
+ * This file was automatically generated by the Stencil React Output Target.
3
+ * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
4
+ */
5
+ import type { EventName, StencilReactComponent } from './react-runtime.js';
6
+ import { type DsTableGroupCustomEvent, type TableGroupingState } from "@ds-mo/ui";
7
+ import type { Components } from "@ds-mo/ui/dist/components";
8
+ import { DsTableGroup as DsTableGroupElement } from "@ds-mo/ui/dist/components/ds-table-group.js";
9
+ export type DsTableGroupEvents = {
10
+ onDsGroupChange: EventName<DsTableGroupCustomEvent<TableGroupingState>>;
11
+ onDsClear: EventName<DsTableGroupCustomEvent<void>>;
12
+ onDsOpenChange: EventName<DsTableGroupCustomEvent<boolean>>;
13
+ };
14
+ export declare const DsTableGroup: StencilReactComponent<DsTableGroupElement, DsTableGroupEvents, Components.DsTableGroup>;
@@ -0,0 +1,16 @@
1
+ 'use client';
2
+ import { createComponent } from './react-runtime.js';
3
+ import React from 'react';
4
+ import { DsTableGroup as DsTableGroupElement, defineCustomElement as defineDsTableGroup } from "@ds-mo/ui/dist/components/ds-table-group.js";
5
+ export const DsTableGroup = /*@__PURE__*/ createComponent({
6
+ tagName: 'ds-table-group',
7
+ elementClass: DsTableGroupElement,
8
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
9
+ react: React,
10
+ events: {
11
+ onDsGroupChange: 'dsGroupChange',
12
+ onDsClear: 'dsClear',
13
+ onDsOpenChange: 'dsOpenChange'
14
+ },
15
+ defineCustomElement: defineDsTableGroup
16
+ });
@@ -0,0 +1,14 @@
1
+ /**
2
+ * This file was automatically generated by the Stencil React Output Target.
3
+ * Changes to this file may cause incorrect behavior and will be lost if the code is regenerated.
4
+ */
5
+ import type { EventName, StencilReactComponent } from './react-runtime.js';
6
+ import { type DsTableSearchCustomEvent, type TableSearchFieldsChangeDetail } from "@ds-mo/ui";
7
+ import type { Components } from "@ds-mo/ui/dist/components";
8
+ import { DsTableSearch as DsTableSearchElement } from "@ds-mo/ui/dist/components/ds-table-search.js";
9
+ export type DsTableSearchEvents = {
10
+ onDsChange: EventName<DsTableSearchCustomEvent<string>>;
11
+ onDsFieldsChange: EventName<DsTableSearchCustomEvent<TableSearchFieldsChangeDetail>>;
12
+ onDsClear: EventName<DsTableSearchCustomEvent<void>>;
13
+ };
14
+ export declare const DsTableSearch: StencilReactComponent<DsTableSearchElement, DsTableSearchEvents, Components.DsTableSearch>;
@@ -0,0 +1,16 @@
1
+ 'use client';
2
+ import { createComponent } from './react-runtime.js';
3
+ import React from 'react';
4
+ import { DsTableSearch as DsTableSearchElement, defineCustomElement as defineDsTableSearch } from "@ds-mo/ui/dist/components/ds-table-search.js";
5
+ export const DsTableSearch = /*@__PURE__*/ createComponent({
6
+ tagName: 'ds-table-search',
7
+ elementClass: DsTableSearchElement,
8
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
9
+ react: React,
10
+ events: {
11
+ onDsChange: 'dsChange',
12
+ onDsFieldsChange: 'dsFieldsChange',
13
+ onDsClear: 'dsClear'
14
+ },
15
+ defineCustomElement: defineDsTableSearch
16
+ });
@@ -432,6 +432,18 @@
432
432
  width: var(--dimension-size-500);
433
433
  }
434
434
 
435
+ :where(.ds-table__elastic-spacer-column) {
436
+ inline-size: auto;
437
+ width: auto;
438
+ }
439
+
440
+ :where(.ds-table__elastic-spacer-cell) {
441
+ min-inline-size: 0;
442
+ inline-size: auto;
443
+ width: auto;
444
+ padding: 0;
445
+ }
446
+
435
447
  :where(.ds-table__head) {
436
448
  position: relative;
437
449
  z-index: 1;
@@ -903,6 +915,35 @@
903
915
  min-block-size: 0;
904
916
  }
905
917
 
918
+ /*
919
+ * Multiple Tags use the 20px small single-inset control so each wrapped line
920
+ * occupies one later-track slot. The 2px block inset forms the 24px first
921
+ * track; subsequent lines add a 20px track and 2px gap, preserving the named
922
+ * row ladder for any declared number of tracks.
923
+ */
924
+ :where(.ds-table__cell--tags .ds-table__cell-content) {
925
+ min-block-size: 0;
926
+ }
927
+
928
+ :where(.ds-table__cell-tags) {
929
+ display: flex;
930
+ flex-wrap: wrap;
931
+ align-content: flex-start;
932
+ align-items: center;
933
+ gap: var(--dimension-space-025);
934
+ box-sizing: border-box;
935
+ inline-size: 100%;
936
+ min-inline-size: 0;
937
+ max-inline-size: 100%;
938
+ min-block-size: var(--_table-cell-tags-min-block-size, var(--_table-cell-track-min-block-size));
939
+ padding-block: var(--dimension-space-025);
940
+ }
941
+
942
+ :where(.ds-table__cell-tags > ds-tag) {
943
+ flex: none;
944
+ max-inline-size: 100%;
945
+ }
946
+
906
947
  :where(.ds-table__cell-tag-stack) {
907
948
  display: flex;
908
949
  flex-direction: column;
@@ -1057,6 +1098,11 @@
1057
1098
  overflow-wrap: anywhere;
1058
1099
  }
1059
1100
 
1101
+ :where(.ds-table__match) {
1102
+ background-color: var(--color-background-faint-brand);
1103
+ color: var(--color-foreground-bold-brand);
1104
+ }
1105
+
1060
1106
  /*
1061
1107
  * Wrapping tracks must be block boxes so ds-text line-clamp (a -webkit-box
1062
1108
  * inner) can grow onto later tracks. Flex + line-clamp otherwise collapses
@@ -1,4 +1,5 @@
1
1
  import { EventEmitter } from '../../stencil-public-runtime';
2
+ import { type ControlInsetDepth } from '../../utils';
2
3
  /**
3
4
  * Semantic chip state — replaces Tag’s intent × contrast matrix.
4
5
  * - `default` — neutral faint
@@ -18,6 +19,10 @@ export declare class Chip {
18
19
  /** Semantic color state. @default 'default' */
19
20
  state: ChipState;
20
21
  size: ChipSize;
22
+ /** Use reduced outer geometry when nested inside a control of the same size. */
23
+ isInset: boolean;
24
+ /** Single removes 4px overall; double removes 8px overall (xs stays single). */
25
+ insetDepth: ControlInsetDepth;
21
26
  rounded: boolean;
22
27
  maxWidth: string | number | undefined;
23
28
  isInactive: boolean;
@@ -4,6 +4,8 @@ import type { AnchoredAlign, AnchoredSide } from '../../utils/anchored-position'
4
4
  export type FilterMenuFilterKind = 'single' | 'multiple' | 'boolean' | 'date';
5
5
  export type FilterMenuSize = 'lg' | 'md' | 'sm' | 'xs';
6
6
  export type FilterMenuWidth = ControlWidth;
7
+ export type FilterMenuFooterLayout = 'summary' | 'categories-clear';
8
+ export type FilterMenuMatchMode = 'any' | 'all';
7
9
  export interface FilterMenuOption {
8
10
  label: string;
9
11
  value: string;
@@ -22,16 +24,23 @@ export interface FilterMenuFilter {
22
24
  }
23
25
  export type FilterMenuValue = string[] | boolean | string;
24
26
  export type FilterMenuValues = Record<string, FilterMenuValue | undefined>;
27
+ export type FilterMenuMatchModes = Record<string, FilterMenuMatchMode | undefined>;
25
28
  export interface FilterMenuChangeDetail {
26
29
  filterId: string;
27
30
  value: FilterMenuValue;
28
31
  }
32
+ export interface FilterMenuMatchModeChangeDetail {
33
+ filterId: string;
34
+ mode: FilterMenuMatchMode;
35
+ }
29
36
  export declare class FilterMenu {
30
37
  el: HTMLElement;
31
38
  /** Controlled popup visibility. */
32
39
  open: boolean;
33
- /** Select trigger text. The selected count is appended automatically. */
40
+ /** Select trigger text. */
34
41
  triggerLabel: string;
42
+ /** Append the active-filter count to the visible trigger label. */
43
+ showSelectedCount: boolean;
35
44
  /** Optional select trigger prefix icon name. */
36
45
  icon: string | undefined;
37
46
  /** Select trigger density. */
@@ -55,6 +64,8 @@ export declare class FilterMenu {
55
64
  filters: FilterMenuFilter[];
56
65
  /** Controlled values keyed by filter id. */
57
66
  values: FilterMenuValues;
67
+ /** Controlled any/all match mode keyed by multiple-choice filter id. Defaults to any. */
68
+ matchModes: FilterMenuMatchModes;
58
69
  /** Controlled category shown in the option pane. */
59
70
  activeFilterId: string | undefined;
60
71
  /** External trigger element to position against. */
@@ -79,6 +90,12 @@ export declare class FilterMenu {
79
90
  categoriesLabel: string;
80
91
  /** Footer action and date-clear accessible label. */
81
92
  clearLabel: string;
93
+ /** Placeholder shown in each non-date option search header. */
94
+ searchPlaceholder: string;
95
+ /** Empty-state text shown when an option search has no matches. */
96
+ noResultsText: string;
97
+ /** Footer recipe: full-width selected summary or reserved category-pane Clear action. */
98
+ footerLayout: FilterMenuFooterLayout;
82
99
  /** Show a visible focus ring on initial entry after keyboard activation. */
83
100
  initialFocusVisible: boolean;
84
101
  private shouldRender;
@@ -88,10 +105,17 @@ export declare class FilterMenu {
88
105
  private focusRingVisible;
89
106
  private activeOptionIndex;
90
107
  private captionCompact;
108
+ private dateModeByFilter;
109
+ private calendarMonthByFilter;
110
+ private pendingRangeStartByFilter;
111
+ private previewRangeEndByFilter;
112
+ private optionQueryByFilter;
91
113
  /** Requests a controlled value replacement without closing the popup. */
92
114
  dsChange: EventEmitter<FilterMenuChangeDetail>;
93
115
  /** Requests that the consumer clear every filter value. */
94
116
  dsClear: EventEmitter<void>;
117
+ /** Requests a controlled any/all mode replacement for a multiple-choice filter. */
118
+ dsMatchModeChange: EventEmitter<FilterMenuMatchModeChangeDetail>;
95
119
  /** Requests a controlled active-category replacement. */
96
120
  dsActiveFilterChange: EventEmitter<string>;
97
121
  /** Requests that the controlled popup close. */
@@ -138,13 +162,34 @@ export declare class FilterMenu {
138
162
  private handleCategoryKeyDown;
139
163
  private handlePanelKeyDown;
140
164
  private handleOptionKeyDown;
165
+ private optionMatchesQuery;
166
+ private visibleOptions;
167
+ private booleanOption;
168
+ private setOptionQuery;
169
+ private handleOptionSearchKeyDown;
141
170
  private toggleMultiple;
142
171
  private selectOption;
172
+ private dateMode;
173
+ private setDateMode;
174
+ private calendarMonth;
175
+ private moveCalendarMonth;
176
+ private selectCalendarDate;
177
+ private previewCalendarRange;
178
+ private clearCalendarRangePreview;
179
+ private focusCalendarDate;
180
+ private handleCalendarDayKeyDown;
181
+ private renderRelativeDateOptions;
182
+ private renderDateCalendar;
183
+ private renderDateFilter;
184
+ private renderOptionSearch;
185
+ private renderNoOptionResults;
143
186
  private renderOptions;
144
187
  private get captionIconOnly();
145
188
  private syncCaptionCompactObserver;
146
189
  private disconnectCaptionCompactObserver;
147
190
  private renderCaptionTooltip;
191
+ private renderFooter;
192
+ private renderMatchModeFooter;
148
193
  render(): any;
149
194
  }
150
195
  //# sourceMappingURL=FilterMenu.d.ts.map
@@ -0,0 +1,13 @@
1
+ export interface FilterMenuCalendarDay {
2
+ value: string;
3
+ day: number;
4
+ inMonth: boolean;
5
+ label: string;
6
+ }
7
+ export declare const FILTER_MENU_WEEKDAYS: string[];
8
+ export declare function filterMenuToday(): string;
9
+ export declare function filterMenuCalendarMonth(value: string): string;
10
+ export declare function shiftFilterMenuCalendarMonth(value: string, offset: number): string;
11
+ export declare function filterMenuCalendarMonthLabel(value: string): string;
12
+ export declare function filterMenuCalendarDays(value: string): FilterMenuCalendarDay[];
13
+ //# sourceMappingURL=filter-menu-calendar.d.ts.map
@@ -40,6 +40,8 @@ export declare class Input {
40
40
  width: InputWidth;
41
41
  /** Show the standard inset border, including focused and invalid strokes. */
42
42
  hasBorder: boolean;
43
+ /** Show the standard hover and pressed fill when the field is not embedded in interactive chrome. */
44
+ hasInteractionFill: boolean;
43
45
  /** Optional leading icon name. */
44
46
  icon: string | undefined;
45
47
  isInactive: boolean;
@@ -51,6 +53,10 @@ export declare class Input {
51
53
  ariaLabel: string | null;
52
54
  ariaLabelledby: string | undefined;
53
55
  ariaDescribedby: string | undefined;
56
+ /** Identifies the results or popup controlled by the editable field. */
57
+ ariaControls: string | undefined;
58
+ /** Identifies the active descendant while focus remains in the editable field. */
59
+ ariaActiveDescendant: string | undefined;
54
60
  dsChange: EventEmitter<string>;
55
61
  dsClear: EventEmitter<void>;
56
62
  private initialValue;
@@ -12,6 +12,8 @@ export declare class TabGroup {
12
12
  size: TabGroupSize;
13
13
  /** Width fit — hug content (default) or fill the parent with equal-width segments. */
14
14
  width: TabGroupWidth;
15
+ /** Show the segmented control's outer background, border, and inset. */
16
+ hasContainer: boolean;
15
17
  background: TabBackground | undefined;
16
18
  ariaLabel: string | null;
17
19
  ariaLabelledby: string | undefined;
@@ -15,6 +15,10 @@ export declare class Table {
15
15
  sort: TableSortState | null;
16
16
  /** Controlled collapsed group identities. Groups not listed remain expanded. */
17
17
  collapsedGroupIds: string[];
18
+ /** Literal terms to highlight in table-owned text cells. Applications still own filtering. */
19
+ highlightTerms: string[];
20
+ /** Optional TableSearch field identities that restrict which data-point tracks are highlighted. */
21
+ highlightFieldIds: string[];
18
22
  /** Required accessible table name, retained as a native caption. */
19
23
  caption: string;
20
24
  /** Shows a matching presentational title bar above the native table frame. */
@@ -145,6 +149,7 @@ export declare class Table {
145
149
  private virtualItems;
146
150
  private visibleColumnsCache;
147
151
  private renderModelCache;
152
+ private highlightMatcherCache;
148
153
  private virtualItemsCache;
149
154
  private rootEl;
150
155
  private viewportEl;
@@ -222,6 +227,7 @@ export declare class Table {
222
227
  private currentLoadedRows;
223
228
  private currentLoadedRowCount;
224
229
  private createRenderModel;
230
+ private get highlightMatcher();
225
231
  private get virtualizationEnabled();
226
232
  private get virtualViewportMissing();
227
233
  private get hasVirtualViewportBounds();
@@ -1,2 +1,2 @@
1
- export type { TableCaptionVisibility, TableCellAlign, TableCellAction, TableCellActionDetail, TableCellActionDivider, TableCellActionMenuEntry, TableCellActionMenuItem, TableCellBlank, TableCellEmpty, TableCellLinkTarget, TableCellIcon, TableCellIconText, TableCellImage, TableCellImageTracks, TableCellPrimaryText, TableCellSkeleton, TableCellText, TableCellTextRun, TableCellTextTrack, TableCellTag, TableCellTagVariant, TableCellValue, TableSkeletonWidth, TableColumn, TableColumnsConfigChangeDetail, TableColumnSticky, TableColumnWidth, TableDataMode, TableDataModeChangeDetail, TableGroup, TableGroupCollapseChangeDetail, TableGroupLoadMoreDetail, TableGroupIntent, TableHeaderSegment, TableGroupingState, TableLoadMoreDetail, TableLoadMoreMode, TableLoadMoreReason, TablePaginationState, TableRow, TableRowActivateDetail, TableSelectionChangeDetail, TableSelectionMode, TableSortChangeDetail, TableSortDirection, TableSortState, } from './table-types';
1
+ export type { TableCaptionVisibility, TableCellAlign, TableCellAction, TableCellActionDetail, TableCellActionDivider, TableCellActionMenuEntry, TableCellActionMenuItem, TableCellBlank, TableCellEmpty, TableCellLinkTarget, TableCellIcon, TableCellIconText, TableCellImage, TableCellImageTracks, TableCellPrimaryText, TableCellSkeleton, TableCellText, TableCellTextRun, TableCellTextTrack, TableCellTag, TableCellTagItem, TableCellTags, TableCellTagVariant, TableCellValue, TableSkeletonWidth, TableColumn, TableColumnsConfigChangeDetail, TableColumnSticky, TableColumnWidth, TableDataMode, TableDataModeChangeDetail, TableGroup, TableGroupCollapseChangeDetail, TableGroupLoadMoreDetail, TableGroupIntent, TableHeaderSegment, TableGroupingState, TableLoadMoreDetail, TableLoadMoreMode, TableLoadMoreReason, TablePaginationState, TableRow, TableRowActivateDetail, TableSelectionChangeDetail, TableSelectionMode, TableSortChangeDetail, TableSortDirection, TableSortState, } from './table-types';
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1,4 +1,4 @@
1
- import type { TableCellAction, TableCellBlank, TableCellEmpty, TableCellIcon, TableCellImage, TableCellImageTracks, TableCellTag, TableCellTagVariant, TableCellTextRun, TableCellTextTrack, TableCellValue, TableCellLinkTarget, TableCellLineClamp, TableCellMaxLines, TableColumn } from './table-types';
1
+ import type { TableCellAction, TableCellBlank, TableCellEmpty, TableCellIcon, TableCellImage, TableCellImageTracks, TableCellTag, TableCellTags, TableCellTagVariant, TableCellTextRun, TableCellTextTrack, TableCellValue, TableCellLinkTarget, TableCellLineClamp, TableCellMaxLines, TableColumn } from './table-types';
2
2
  import type { IconColor } from '../Icon/Icon';
3
3
  import type { TextColor } from '../Text/text-types';
4
4
  /** Maximum independently colored runs on one secondary or tertiary track. */
@@ -50,6 +50,12 @@ export type TableCellPresentation = {
50
50
  cellType: 'tag';
51
51
  value: TableCellTag;
52
52
  variant: TableCellTagVariant;
53
+ } | {
54
+ kind: 'tags';
55
+ cellType: 'tags';
56
+ value: TableCellTags;
57
+ tracks: number;
58
+ variant: `${number}-track`;
53
59
  } | {
54
60
  kind: 'text';
55
61
  cellType: 'text' | 'primary-text';
@@ -64,6 +70,10 @@ export type TableCellPresentation = {
64
70
  export declare function resolveTableCellImageTracks(tracks: TableCellImage['tracks']): TableCellImageTracks;
65
71
  /** Map an image track stack onto the shared single/multi/triple cell variant. */
66
72
  export declare function tableCellImageVariant(tracks: TableCellImageTracks): 'single' | 'multi' | 'triple';
73
+ /** Normalize the declared line count used by wrapping multiple-Tag cells. */
74
+ export declare function resolveTableCellTagsTracks(tracks: number): number;
75
+ /** Token-backed content height for any named number of body-row tracks. */
76
+ export declare function tableCellTrackStackBlockSize(tracks: number): string;
67
77
  /** Collapse a consumer track into at most three non-empty runs. */
68
78
  export declare function normalizeTableCellTextTrack(track: TableCellTextTrack | number | undefined): TableCellTextRun[] | undefined;
69
79
  /** Map wrap / maxLines onto wrap-to-track geometry and a line clamp. */
@@ -0,0 +1,12 @@
1
+ export interface TableHighlightSegment {
2
+ text: string;
3
+ match: boolean;
4
+ }
5
+ export type TableHighlightMatcher = (value: string | number) => TableHighlightSegment[];
6
+ export declare const TABLE_NO_HIGHLIGHT_MATCHER: TableHighlightMatcher;
7
+ /**
8
+ * Creates one literal, case-insensitive matcher for table-owned text tracks.
9
+ * Longer terms win when supplied terms overlap.
10
+ */
11
+ export declare function createTableHighlightMatcher(terms: string[]): TableHighlightMatcher;
12
+ //# sourceMappingURL=table-highlight.d.ts.map
@@ -1,4 +1,4 @@
1
- import type { TableCellBlank, TableCellAction, TableCellEmpty, TableCellIcon, TableCellIconText, TableCellImage, TableCellPrimaryText, TableCellText, TableCellTag, TableCellValue, TableColumn, TableGroup, TableRow, TableSortState } from './table-types';
1
+ import type { TableCellBlank, TableCellAction, TableCellEmpty, TableCellIcon, TableCellIconText, TableCellImage, TableCellPrimaryText, TableCellText, TableCellTag, TableCellTags, TableCellValue, TableColumn, TableGroup, TableRow, TableSortState } from './table-types';
2
2
  export interface TableSelectionState {
3
3
  selectableRowIds: string[];
4
4
  selectedLoadedCount: number;
@@ -8,6 +8,7 @@ export interface TableSelectionState {
8
8
  export declare function isTableCellText(value: TableCellValue): value is TableCellText;
9
9
  export declare function isTableCellPrimaryText(value: TableCellValue): value is TableCellPrimaryText;
10
10
  export declare function isTableCellTag(value: TableCellValue): value is TableCellTag;
11
+ export declare function isTableCellTags(value: TableCellValue): value is TableCellTags;
11
12
  export declare function isTableCellIcon(value: TableCellValue): value is TableCellIcon;
12
13
  export declare function isTableCellIconText(value: TableCellValue): value is TableCellIconText;
13
14
  export declare function isTableCellImage(value: TableCellValue): value is TableCellImage;
@@ -30,11 +31,11 @@ export declare function tableCollapseAllHost(columns: TableColumn[]): TableColla
30
31
  export declare function clampTableColumnSize(column: TableColumn): number | undefined;
31
32
  export declare function tableColumnSize(column: TableColumn): string | undefined;
32
33
  /**
33
- * When every column has an explicit width, one ordinary lane must absorb spare
34
- * table width so fixed selection and action lanes are not expanded by the
35
- * native fixed-table layout algorithm.
34
+ * Fully sized tables add one internal lane that absorbs spare inline space and
35
+ * collapses to zero at the explicit overflow width. Keep trailing action and
36
+ * sticky-end lanes after it so those controls remain at the visible edge.
36
37
  */
37
- export declare function tableFlexibleColumnId(columns: TableColumn[]): string | undefined;
38
+ export declare function tableElasticSpacerIndex(columns: TableColumn[]): number | undefined;
38
39
  export declare function tableExplicitMinWidth(columns: TableColumn[]): string | undefined;
39
40
  export declare function tableRows(rows: TableRow[], groups: TableGroup[], grouped: boolean): TableRow[];
40
41
  export declare function deriveTableSelectionState(rows: TableRow[], selectedRowIds: readonly string[]): TableSelectionState;
@@ -26,7 +26,7 @@ export interface TableRenderModel {
26
26
  allGroupsCollapsed: boolean;
27
27
  showCollapseAll: boolean;
28
28
  collapseAllHost: TableCollapseAllHost | undefined;
29
- flexibleColumnId: string | undefined;
29
+ elasticSpacerIndex: number | undefined;
30
30
  tableStyle: Record<string, string> | undefined;
31
31
  }
32
32
  export interface TableRenderModelInput {
@@ -1,4 +1,5 @@
1
1
  import type { TableRenderModel } from './table-render-model';
2
+ import { type TableHighlightMatcher } from './table-highlight';
2
3
  import type { TableCellActionDetail, TableColumn, TableRow } from './table-types';
3
4
  export interface TableRowViewOptions {
4
5
  row: TableRow;
@@ -10,6 +11,8 @@ export interface TableRowViewOptions {
10
11
  rowId: string;
11
12
  columnId: string;
12
13
  } | null;
14
+ highlightMatcher: TableHighlightMatcher;
15
+ highlightFieldIds: string[];
13
16
  ariaRowIndex?: number;
14
17
  variableVirtualSize?: boolean;
15
18
  rowKey?: string;
@@ -22,5 +25,5 @@ export interface TableRowViewOptions {
22
25
  onActionMenuToggle: (row: TableRow, column: TableColumn, event: MouseEvent) => void;
23
26
  }
24
27
  /** Render one semantic body row and the complete declarative table-cell vocabulary. */
25
- export declare function renderTableRow({ row, model, visibleColumns, emptyCellLabel, actionMenuElementId, actionMenu, ariaRowIndex, variableVirtualSize, rowKey, renderSelectionControl, renderStickyEdge, onRowActivate, onRowKeyDown, onRowSelection, onCellAction, onActionMenuToggle, }: TableRowViewOptions): any;
28
+ export declare function renderTableRow({ row, model, visibleColumns, emptyCellLabel, actionMenuElementId, actionMenu, highlightMatcher, highlightFieldIds, ariaRowIndex, variableVirtualSize, rowKey, renderSelectionControl, renderStickyEdge, onRowActivate, onRowKeyDown, onRowSelection, onCellAction, onActionMenuToggle, }: TableRowViewOptions): any;
26
29
  //# sourceMappingURL=table-row-view.d.ts.map
@@ -23,7 +23,12 @@ export type TableCellLineClamp = TableCellMaxLines | 'none';
23
23
  export type TableGroupIntent = 'brand' | 'neutral' | 'negative' | 'warning' | 'caution' | 'positive';
24
24
  /** Independently sortable label within a compound column header. */
25
25
  export interface TableHeaderSegment {
26
+ /** Compact label rendered inside the table header. */
26
27
  label: string;
28
+ /** Complete data-point label used when the segment is named outside the table header. */
29
+ dataLabel?: string;
30
+ /** Whether this data point is offered by TableSearch. Defaults to true. */
31
+ searchable?: boolean;
27
32
  /** Stable key emitted through TableSortState.columnId. */
28
33
  sortKey: string;
29
34
  /** Visible separator rendered after this label when another segment follows. */
@@ -192,22 +197,31 @@ export type TableCellAction = TableCellActionBase & ({
192
197
  });
193
198
  /** Declarative Tag content rendered by the table's standard cell primitive. */
194
199
  export type TableCellTagVariant = 'tag-only' | 'tag-with-text' | 'text-with-tag';
195
- interface TableCellTagBase {
196
- kind: 'tag';
200
+ /** One Tag inside a single- or multiple-Tag table cell. */
201
+ export interface TableCellTagItem {
197
202
  label: string;
198
203
  intent?: TagIntent;
199
204
  contrast?: TagContrast;
200
205
  icon?: string;
201
206
  rounded?: boolean;
202
207
  }
203
- export type TableCellTag = TableCellTagBase & ({
208
+ export type TableCellTag = TableCellTagItem & {
209
+ kind: 'tag';
210
+ } & ({
204
211
  variant?: 'tag-only';
205
212
  text?: never;
206
213
  } | {
207
214
  variant: Exclude<TableCellTagVariant, 'tag-only'>;
208
215
  text: string;
209
216
  });
210
- export type TableCellValue = string | number | null | undefined | TableCellText | TableCellPrimaryText | TableCellTag | TableCellIcon | TableCellIconText | TableCellImage | TableCellAction | TableCellEmpty | TableCellBlank;
217
+ /** Multiple Tags that wrap inline while retaining the table's named track rhythm. */
218
+ export interface TableCellTags {
219
+ kind: 'tags';
220
+ items: TableCellTagItem[];
221
+ /** Expected positive wrapped-line count used for row geometry and virtual estimates. */
222
+ tracks: number;
223
+ }
224
+ export type TableCellValue = string | number | null | undefined | TableCellText | TableCellPrimaryText | TableCellTag | TableCellTags | TableCellIcon | TableCellIconText | TableCellImage | TableCellAction | TableCellEmpty | TableCellBlank;
211
225
  export type TableSkeletonWidth = string | number;
212
226
  /** Representative loading geometry for one table column. */
213
227
  export type TableCellSkeleton = {
@@ -246,6 +260,10 @@ export interface TableColumn {
246
260
  id: string;
247
261
  /** Visible column label. May be empty when headerLabel supplies a non-visual name. */
248
262
  header: string;
263
+ /** Complete data-point label used by controls such as Sort and Search. */
264
+ dataLabel?: string;
265
+ /** Whether this data point is offered by TableSearch. Defaults to true for data columns. */
266
+ searchable?: boolean;
249
267
  /** Screen-reader-only column name for an intentionally blank visual header. */
250
268
  headerLabel?: string;
251
269
  /** Supplementary header help. Does not replace the visible or accessible column name. */
@@ -9,6 +9,8 @@ export declare const TABLE_VIRTUAL_ROW_TRACK_SIZE: {
9
9
  readonly 3: 84;
10
10
  readonly 4: 106;
11
11
  };
12
+ /** Estimated row height for any positive named track count. */
13
+ export declare function tableVirtualRowTrackSize(tracks: number): number;
12
14
  export declare const TABLE_VIRTUAL_GROUP_HEADER_SIZE: 40;
13
15
  export declare const TABLE_VIRTUAL_MIN_OVERSCAN_ROWS = 8;
14
16
  export declare const TABLE_VIRTUAL_VIEWPORT_REQUIRED_HEADING = "Bounded height required";
@@ -1,5 +1,5 @@
1
1
  import { EventEmitter } from '../../stencil-public-runtime';
2
- import type { FilterMenuChangeDetail, FilterMenuFilter, FilterMenuValues } from '../FilterMenu/FilterMenu';
2
+ import type { FilterMenuChangeDetail, FilterMenuFilter, FilterMenuMatchModeChangeDetail, FilterMenuMatchModes, FilterMenuValues } from '../FilterMenu/FilterMenu';
3
3
  export declare class TableFilter {
4
4
  /** Controlled popup visibility. */
5
5
  open: boolean;
@@ -7,6 +7,8 @@ export declare class TableFilter {
7
7
  filters: FilterMenuFilter[];
8
8
  /** Controlled values keyed by filter id. */
9
9
  values: FilterMenuValues;
10
+ /** Controlled any/all match mode keyed by multiple-choice filter id. Defaults to any. */
11
+ matchModes: FilterMenuMatchModes;
10
12
  /** Controlled category shown in the option pane. */
11
13
  activeFilterId: string | undefined;
12
14
  /** Visible trigger label. */
@@ -19,10 +21,16 @@ export declare class TableFilter {
19
21
  categoriesLabel: string;
20
22
  /** Footer action and date-clear accessible label. */
21
23
  clearLabel: string;
24
+ /** Placeholder shown in each non-date option search header. */
25
+ searchPlaceholder: string;
26
+ /** Empty-state text shown when an option search has no matches. */
27
+ noResultsText: string;
22
28
  /** Requests a controlled value replacement without closing the popup. */
23
29
  dsChange: EventEmitter<FilterMenuChangeDetail>;
24
30
  /** Requests that the consumer clear every filter value. */
25
31
  dsClear: EventEmitter<void>;
32
+ /** Requests a controlled any/all mode replacement for a multiple-choice filter. */
33
+ dsMatchModeChange: EventEmitter<FilterMenuMatchModeChangeDetail>;
26
34
  /** Requests a controlled active-category replacement. */
27
35
  dsActiveFilterChange: EventEmitter<string>;
28
36
  /** Requests that the controlled popup close. */