@ds-mo/ui 14.18.0 → 14.19.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 (281) hide show
  1. package/README.md +7 -0
  2. package/dist/.package-ready.json +1 -1
  3. package/dist/agent-patterns.json +4 -3
  4. package/dist/agent.json +59 -22
  5. package/dist/angular/ds-filter-menu.d.ts +1 -1
  6. package/dist/angular/ds-filter-menu.js +3 -3
  7. package/dist/angular/ds-input.d.ts +1 -1
  8. package/dist/angular/ds-input.js +3 -3
  9. package/dist/angular/ds-menu.d.ts +1 -1
  10. package/dist/angular/ds-menu.js +3 -3
  11. package/dist/angular/ds-pagination.d.ts +1 -1
  12. package/dist/angular/ds-pagination.js +3 -3
  13. package/dist/angular/ds-panel-tool-header.d.ts +3 -8
  14. package/dist/angular/ds-panel-tools.d.ts +3 -8
  15. package/dist/angular/ds-select.d.ts +1 -1
  16. package/dist/angular/ds-select.js +3 -3
  17. package/dist/angular/ds-tooltip.d.ts +1 -1
  18. package/dist/angular/ds-tooltip.js +3 -3
  19. package/dist/components/ds-agent-activity.js +1 -1
  20. package/dist/components/ds-agent-questionnaire.js +1 -1
  21. package/dist/components/ds-agent-response.js +1 -1
  22. package/dist/components/ds-agent-source-list.js +1 -1
  23. package/dist/components/ds-agent-tool-call.js +1 -1
  24. package/dist/components/ds-attachment-list.js +1 -1
  25. package/dist/components/ds-badge.js +1 -1
  26. package/dist/components/ds-banner.js +1 -1
  27. package/dist/components/ds-banner.js.map +1 -1
  28. package/dist/components/ds-bar-action.js +1 -1
  29. package/dist/components/ds-bar-action.js.map +1 -1
  30. package/dist/components/ds-bar-nav.js +1 -1
  31. package/dist/components/ds-bar-title.js +1 -1
  32. package/dist/components/ds-bar-workflow.js +1 -1
  33. package/dist/components/ds-bar-workflow.js.map +1 -1
  34. package/dist/components/ds-breadcrumb.js +1 -1
  35. package/dist/components/ds-button-filled.js +1 -1
  36. package/dist/components/ds-button-unfilled.js +1 -1
  37. package/dist/components/ds-card-chart.js +1 -1
  38. package/dist/components/ds-card-overview.js +1 -1
  39. package/dist/components/ds-card-setting.js +1 -1
  40. package/dist/components/ds-chart-legend.js +1 -1
  41. package/dist/components/ds-chart.js +1 -1
  42. package/dist/components/ds-checkbox.js +1 -1
  43. package/dist/components/ds-chip.js +1 -1
  44. package/dist/components/ds-code-block.js +1 -1
  45. package/dist/components/ds-conversation-list-item.js +1 -1
  46. package/dist/components/ds-conversation-list-section.js +1 -1
  47. package/dist/components/ds-conversation-list.js +1 -1
  48. package/dist/components/ds-conversation-list.js.map +1 -1
  49. package/dist/components/ds-divider.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-bubble.js +1 -1
  58. package/dist/components/ds-message-composer.js +1 -1
  59. package/dist/components/ds-message-composer.js.map +1 -1
  60. package/dist/components/ds-message-scroller.js +1 -1
  61. package/dist/components/ds-message.js +1 -1
  62. package/dist/components/ds-mobile-bar-nav.js +1 -1
  63. package/dist/components/ds-mobile-header.js +1 -1
  64. package/dist/components/ds-mobile-section-switcher.js +1 -1
  65. package/dist/components/ds-mobile-sheet-nav.js +1 -1
  66. package/dist/components/ds-modal.js +1 -1
  67. package/dist/components/ds-pagination.js +1 -1
  68. package/dist/components/ds-panel-nav.js +1 -1
  69. package/dist/components/ds-panel-sub-nav.js +1 -1
  70. package/dist/components/ds-panel-tool-header.js +1 -1
  71. package/dist/components/ds-panel-tool-search.js +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-scroll-overlay.js +1 -1
  76. package/dist/components/ds-select.js +1 -1
  77. package/dist/components/ds-shell-app.js +1 -1
  78. package/dist/components/ds-shell-app.js.map +1 -1
  79. package/dist/components/ds-shell-page.js +1 -1
  80. package/dist/components/ds-shell-tools.js +1 -1
  81. package/dist/components/ds-skeleton.js +1 -1
  82. package/dist/components/ds-slider.js +1 -1
  83. package/dist/components/ds-swatch-picker.js +1 -1
  84. package/dist/components/ds-switch.js +1 -1
  85. package/dist/components/ds-tab-group.js +1 -1
  86. package/dist/components/ds-table-filter.js +1 -1
  87. package/dist/components/ds-table-saved-views.js +1 -1
  88. package/dist/components/ds-table-sort.js +1 -1
  89. package/dist/components/ds-table-toolbar.js +1 -1
  90. package/dist/components/ds-table.js +1 -1
  91. package/dist/components/ds-table.js.map +1 -1
  92. package/dist/components/ds-tag.js +1 -1
  93. package/dist/components/ds-text.js +1 -1
  94. package/dist/components/ds-toast.js +1 -1
  95. package/dist/components/ds-toast.js.map +1 -1
  96. package/dist/components/ds-tooltip-chart.js +1 -1
  97. package/dist/components/ds-tooltip.js +1 -1
  98. package/dist/components/ds-typing-indicator.js +1 -1
  99. package/dist/components/ds-typing-indicator.js.map +1 -1
  100. package/dist/components/p--CRAu9fJ.js +2 -0
  101. package/dist/components/{p-C6yLERx6.js → p-B1JRCDHS.js} +2 -2
  102. package/dist/components/p-BBG6Sswb.js +2 -0
  103. package/dist/components/{p-Drcl4zS9.js.map → p-BBG6Sswb.js.map} +1 -1
  104. package/dist/components/{p-Dd8VKdAO.js → p-BCOl1x0_.js} +2 -2
  105. package/dist/components/{p-C9StMCWg.js → p-BHVOiWz5.js} +2 -2
  106. package/dist/components/p-BNiuAMeh.js +2 -0
  107. package/dist/components/p-BNiuAMeh.js.map +1 -0
  108. package/dist/components/{p-DJ0GCCFa.js → p-BNkU9dcc.js} +2 -2
  109. package/dist/components/p-BPG0r_mC.js +2 -0
  110. package/dist/components/p-BPG0r_mC.js.map +1 -0
  111. package/dist/components/{p-DHzn7INS.js → p-BS0AbMNK.js} +2 -2
  112. package/dist/components/p-BUDAwJVV.js +2 -0
  113. package/dist/components/p-BUDAwJVV.js.map +1 -0
  114. package/dist/components/p-BZVWmzKf.js +2 -0
  115. package/dist/components/p-BZVWmzKf.js.map +1 -0
  116. package/dist/components/{p-CihNoe1M.js → p-B_jZIC9R.js} +2 -2
  117. package/dist/components/{p-CAJIARNW.js → p-Bbb9A3NV.js} +2 -2
  118. package/dist/components/{p-Dginv8PT.js → p-Bf7PZJPT.js} +2 -2
  119. package/dist/components/{p-D6P_1YrL.js → p-BhYS_Ump.js} +2 -2
  120. package/dist/components/p-BknXYAEc.js +2 -0
  121. package/dist/components/{p-9GuNIXuz.js.map → p-BknXYAEc.js.map} +1 -1
  122. package/dist/components/{p-BKx2ihnG.js → p-Bu3dOjpW.js} +2 -2
  123. package/dist/components/{p-BiBXCjjo.js → p-BxGQ3cRJ.js} +2 -2
  124. package/dist/components/{p-Dl3gciej.js → p-BysVBVQv.js} +2 -2
  125. package/dist/components/{p-CBa_6lqj.js → p-C-Y7gYgz.js} +2 -2
  126. package/dist/components/{p-9EQ3xLI1.js → p-C6R5Lft0.js} +2 -2
  127. package/dist/components/{p-DPR0TGGJ.js → p-C9gC4haA.js} +2 -2
  128. package/dist/components/{p-LHzBS95u.js → p-CAnnQL1F.js} +2 -2
  129. package/dist/components/p-CY4YFAT3.js +2 -0
  130. package/dist/components/p-CY4YFAT3.js.map +1 -0
  131. package/dist/components/{p-3WlVHGUe.js → p-Cg0kimXZ.js} +2 -2
  132. package/dist/components/{p-HZz5aJKz.js → p-CsBICYmt.js} +2 -2
  133. package/dist/components/p-CwjVgUqy.js +2 -0
  134. package/dist/components/p-CwjVgUqy.js.map +1 -0
  135. package/dist/components/p-D1eEgwcP.js +2 -0
  136. package/dist/components/p-D1eEgwcP.js.map +1 -0
  137. package/dist/components/{p-oCc3mz_c.js → p-D3fMaUJ3.js} +2 -2
  138. package/dist/components/p-D7R4yE2C.js +2 -0
  139. package/dist/components/{p-Ba7DaFkb.js.map → p-D7R4yE2C.js.map} +1 -1
  140. package/dist/components/{p-CHEt4mW8.js → p-DAvh38E4.js} +2 -2
  141. package/dist/components/{p-DPpHSIzS.js → p-DBue3ISk.js} +2 -2
  142. package/dist/components/{p-BdgoB2ef.js → p-DDgeXGbB.js} +2 -2
  143. package/dist/components/{p-hp_2W2Qy.js → p-DOUDRJbE.js} +2 -2
  144. package/dist/components/{p-Be-vZpWx.js → p-DUdOmSFR.js} +2 -2
  145. package/dist/components/p-DaAXY-XS.js +2 -0
  146. package/dist/components/p-DaAXY-XS.js.map +1 -0
  147. package/dist/components/{p-B9ZfoprK.js → p-DlYw4UGQ.js} +2 -2
  148. package/dist/components/p-DlYw4UGQ.js.map +1 -0
  149. package/dist/components/p-DtndC9f1.js +2 -0
  150. package/dist/components/p-DtndC9f1.js.map +1 -0
  151. package/dist/components/p-HB_cf_aR.js +2 -0
  152. package/dist/components/{p-BBmRD_S0.js.map → p-HB_cf_aR.js.map} +1 -1
  153. package/dist/components/{p-BTTxl3ro.js → p-ZpQBAwZC.js} +2 -2
  154. package/dist/components/p-ZpQBAwZC.js.map +1 -0
  155. package/dist/components/p-ag6Io-kL.js +2 -0
  156. package/dist/components/p-ag6Io-kL.js.map +1 -0
  157. package/dist/components/p-fg9EKoZp.js +2 -0
  158. package/dist/components/{p-DMaQkEYP.js.map → p-fg9EKoZp.js.map} +1 -1
  159. package/dist/components/p-iMuFgSoM.js +2 -0
  160. package/dist/components/p-iMuFgSoM.js.map +1 -0
  161. package/dist/components/{p-CbZ0RU2c.js → p-r8PMqlqm.js} +2 -2
  162. package/dist/components/{p-B145kX-i.js → p-uI6z53BE.js} +2 -2
  163. package/dist/docs/components.json +252 -37
  164. package/dist/lib/components/PanelTools/panel-tools-types.d.ts +12 -0
  165. package/dist/lib/shell/index.d.ts +1 -1
  166. package/dist/lib/shell/index.js.map +1 -1
  167. package/dist/lib/utils/anchored-position.d.ts +6 -2
  168. package/dist/mcp-data/registry/badge.json +7 -9
  169. package/dist/mcp-data/registry/banner.json +2 -2
  170. package/dist/mcp-data/registry/bar-action.json +2 -2
  171. package/dist/mcp-data/registry/button-unfilled.json +1 -1
  172. package/dist/mcp-data/registry/conversation-list.json +2 -2
  173. package/dist/mcp-data/registry/filter-menu.json +21 -6
  174. package/dist/mcp-data/registry/input.json +23 -3
  175. package/dist/mcp-data/registry/menu.json +22 -4
  176. package/dist/mcp-data/registry/message-composer.json +2 -2
  177. package/dist/mcp-data/registry/pagination.json +31 -10
  178. package/dist/mcp-data/registry/panel-nav.json +1 -1
  179. package/dist/mcp-data/registry/panel-tool-header.json +3 -3
  180. package/dist/mcp-data/registry/panel-tools.json +5 -4
  181. package/dist/mcp-data/registry/registry.json +58 -21
  182. package/dist/mcp-data/registry/select.json +17 -3
  183. package/dist/mcp-data/registry/shell-app.json +3 -2
  184. package/dist/mcp-data/registry/table.json +21 -1
  185. package/dist/mcp-data/registry/toast.json +2 -2
  186. package/dist/mcp-data/registry/tooltip.json +20 -3
  187. package/dist/mcp-data/registry/typing-indicator.json +4 -4
  188. package/dist/react/ds-panel-tool-header.d.ts +2 -5
  189. package/dist/react/ds-panel-tools.d.ts +2 -5
  190. package/dist/types/components/Badge/Badge.d.ts +2 -16
  191. package/dist/types/components/Banner/Banner.d.ts +0 -1
  192. package/dist/types/components/BarAction/BarAction.d.ts +0 -7
  193. package/dist/types/components/ConversationList/ConversationList.d.ts +1 -0
  194. package/dist/types/components/FilterMenu/FilterMenu.d.ts +5 -5
  195. package/dist/types/components/Input/Input.d.ts +7 -0
  196. package/dist/types/components/Menu/Menu.d.ts +3 -4
  197. package/dist/types/components/MessageComposer/MessageComposer.d.ts +0 -3
  198. package/dist/types/components/Pagination/Pagination.d.ts +2 -0
  199. package/dist/types/components/Pagination/pagination-types.d.ts +2 -0
  200. package/dist/types/components/PanelToolHeader/PanelToolHeader.d.ts +2 -5
  201. package/dist/types/components/PanelTools/PanelTools.d.ts +2 -5
  202. package/dist/types/components/PanelTools/panel-tools-types.d.ts +12 -0
  203. package/dist/types/components/Select/Select.d.ts +3 -0
  204. package/dist/types/components/Table/Table.d.ts +1 -13
  205. package/dist/types/components/Table/table-body-renderer.d.ts +36 -0
  206. package/dist/types/components/Table/table-load-view.d.ts +17 -0
  207. package/dist/types/components/Table/table-row-view.d.ts +26 -0
  208. package/dist/types/components/Table/table-skeleton-view.d.ts +12 -0
  209. package/dist/types/components/Tooltip/Tooltip.d.ts +3 -0
  210. package/dist/types/components.d.ts +72 -23
  211. package/dist/types/shell/index.d.ts +1 -1
  212. package/dist/types/utils/anchored-overlay-boundary.d.ts +14 -0
  213. package/dist/types/utils/anchored-overlay-interaction-controller.d.ts +26 -0
  214. package/dist/types/utils/anchored-position-controller.d.ts +14 -0
  215. package/dist/types/utils/anchored-position.d.ts +6 -2
  216. package/dist/types/utils/select-controller.d.ts +1 -0
  217. package/dist/vue/ds-filter-menu.js +1 -0
  218. package/dist/vue/ds-input.js +1 -0
  219. package/dist/vue/ds-menu.js +1 -0
  220. package/dist/vue/ds-pagination.js +1 -0
  221. package/dist/vue/ds-select.js +1 -0
  222. package/dist/vue/ds-tooltip.js +1 -0
  223. package/package.json +4 -1
  224. package/dist/components/p-9GuNIXuz.js +0 -2
  225. package/dist/components/p-B9ZfoprK.js.map +0 -1
  226. package/dist/components/p-BBmRD_S0.js +0 -2
  227. package/dist/components/p-BTTxl3ro.js.map +0 -1
  228. package/dist/components/p-Ba7DaFkb.js +0 -2
  229. package/dist/components/p-BcNYvLMi.js +0 -2
  230. package/dist/components/p-BcNYvLMi.js.map +0 -1
  231. package/dist/components/p-CI5Ce8VF.js +0 -2
  232. package/dist/components/p-CI5Ce8VF.js.map +0 -1
  233. package/dist/components/p-Cgm7YMLw.js +0 -2
  234. package/dist/components/p-Cgm7YMLw.js.map +0 -1
  235. package/dist/components/p-Cj5Hkt6Y.js +0 -2
  236. package/dist/components/p-Cj5Hkt6Y.js.map +0 -1
  237. package/dist/components/p-DC_8dK55.js +0 -2
  238. package/dist/components/p-DC_8dK55.js.map +0 -1
  239. package/dist/components/p-DKY3IJqt.js +0 -2
  240. package/dist/components/p-DKY3IJqt.js.map +0 -1
  241. package/dist/components/p-DMaQkEYP.js +0 -2
  242. package/dist/components/p-DQyvAN44.js +0 -2
  243. package/dist/components/p-DQyvAN44.js.map +0 -1
  244. package/dist/components/p-DaxKVtZG.js +0 -2
  245. package/dist/components/p-DbJahF86.js +0 -2
  246. package/dist/components/p-DbJahF86.js.map +0 -1
  247. package/dist/components/p-DhKvqh5G.js +0 -2
  248. package/dist/components/p-DhKvqh5G.js.map +0 -1
  249. package/dist/components/p-Drcl4zS9.js +0 -2
  250. package/dist/components/p-DzPw6aDK.js +0 -2
  251. package/dist/components/p-DzPw6aDK.js.map +0 -1
  252. package/dist/components/p-jk2-y5dH.js +0 -2
  253. package/dist/components/p-jk2-y5dH.js.map +0 -1
  254. package/dist/types/shell/badge-gradient-ring.d.ts +0 -28
  255. /package/dist/components/{p-DaxKVtZG.js.map → p--CRAu9fJ.js.map} +0 -0
  256. /package/dist/components/{p-C6yLERx6.js.map → p-B1JRCDHS.js.map} +0 -0
  257. /package/dist/components/{p-Dd8VKdAO.js.map → p-BCOl1x0_.js.map} +0 -0
  258. /package/dist/components/{p-C9StMCWg.js.map → p-BHVOiWz5.js.map} +0 -0
  259. /package/dist/components/{p-DJ0GCCFa.js.map → p-BNkU9dcc.js.map} +0 -0
  260. /package/dist/components/{p-DHzn7INS.js.map → p-BS0AbMNK.js.map} +0 -0
  261. /package/dist/components/{p-CihNoe1M.js.map → p-B_jZIC9R.js.map} +0 -0
  262. /package/dist/components/{p-CAJIARNW.js.map → p-Bbb9A3NV.js.map} +0 -0
  263. /package/dist/components/{p-Dginv8PT.js.map → p-Bf7PZJPT.js.map} +0 -0
  264. /package/dist/components/{p-D6P_1YrL.js.map → p-BhYS_Ump.js.map} +0 -0
  265. /package/dist/components/{p-BKx2ihnG.js.map → p-Bu3dOjpW.js.map} +0 -0
  266. /package/dist/components/{p-BiBXCjjo.js.map → p-BxGQ3cRJ.js.map} +0 -0
  267. /package/dist/components/{p-Dl3gciej.js.map → p-BysVBVQv.js.map} +0 -0
  268. /package/dist/components/{p-CBa_6lqj.js.map → p-C-Y7gYgz.js.map} +0 -0
  269. /package/dist/components/{p-9EQ3xLI1.js.map → p-C6R5Lft0.js.map} +0 -0
  270. /package/dist/components/{p-DPR0TGGJ.js.map → p-C9gC4haA.js.map} +0 -0
  271. /package/dist/components/{p-LHzBS95u.js.map → p-CAnnQL1F.js.map} +0 -0
  272. /package/dist/components/{p-3WlVHGUe.js.map → p-Cg0kimXZ.js.map} +0 -0
  273. /package/dist/components/{p-HZz5aJKz.js.map → p-CsBICYmt.js.map} +0 -0
  274. /package/dist/components/{p-oCc3mz_c.js.map → p-D3fMaUJ3.js.map} +0 -0
  275. /package/dist/components/{p-CHEt4mW8.js.map → p-DAvh38E4.js.map} +0 -0
  276. /package/dist/components/{p-DPpHSIzS.js.map → p-DBue3ISk.js.map} +0 -0
  277. /package/dist/components/{p-BdgoB2ef.js.map → p-DDgeXGbB.js.map} +0 -0
  278. /package/dist/components/{p-hp_2W2Qy.js.map → p-DOUDRJbE.js.map} +0 -0
  279. /package/dist/components/{p-Be-vZpWx.js.map → p-DUdOmSFR.js.map} +0 -0
  280. /package/dist/components/{p-CbZ0RU2c.js.map → p-r8PMqlqm.js.map} +0 -0
  281. /package/dist/components/{p-B145kX-i.js.map → p-uI6z53BE.js.map} +0 -0
@@ -28,6 +28,8 @@ export declare class Menu {
28
28
  anchor: HTMLElement | undefined;
29
29
  /** ID of the external trigger element for positioning */
30
30
  anchorId: string | undefined;
31
+ /** Explicit collision owner; otherwise the nearest data-ds-overlay-boundary ancestor is used. */
32
+ boundary: HTMLElement | undefined;
31
33
  /** Show a visible ring on the initially focused menu item. Use only when the opener was keyboard-driven. */
32
34
  initialFocusVisible: boolean;
33
35
  /** Accessible name for the popup menu. */
@@ -50,7 +52,6 @@ export declare class Menu {
50
52
  dsSwatchSelect: EventEmitter<string>;
51
53
  /** Emitted after a pointer drop or keyboard move; Menu never mutates item order. */
52
54
  dsReorder: EventEmitter<MenuReorderDetail>;
53
- private clickOutsideHandler;
54
55
  private closeTimer;
55
56
  private positionReadyCallback;
56
57
  private suppressItemClick;
@@ -61,6 +62,7 @@ export declare class Menu {
61
62
  * semantics, not shared geometry.
62
63
  */
63
64
  private readonly position;
65
+ private readonly interaction;
64
66
  /** Last content actually painted while open; retained unchanged through exit motion. */
65
67
  private lastRenderedSections;
66
68
  private closingSections;
@@ -78,9 +80,6 @@ export declare class Menu {
78
80
  private finishClose;
79
81
  private captureClosingSections;
80
82
  private get resolvedAnchor();
81
- private get anchorFocusTarget();
82
- private focusAnchor;
83
- private moveFocusAfterTab;
84
83
  private compositeTabLeavesPopup;
85
84
  private get activeSections();
86
85
  private get flatItems();
@@ -18,11 +18,8 @@ export declare class MessageComposer {
18
18
  dsStop: EventEmitter<void>;
19
19
  private textarea?;
20
20
  private readonly errorId;
21
- componentDidLoad(): void;
22
- onValueChange(): void;
23
21
  setFocus(): Promise<void>;
24
22
  private get streaming();
25
- private resize;
26
23
  private handleInput;
27
24
  private submit;
28
25
  private handleKeyDown;
@@ -30,6 +30,8 @@ export declare class Pagination {
30
30
  pageSizeAriaLabel: string | undefined;
31
31
  /** Accessible name for the pagination navigation region. */
32
32
  label: string;
33
+ /** Include direct first-page and last-page controls. */
34
+ showFirstLastButtons: boolean;
33
35
  /** Prevent interaction while the owner replaces the current data page. */
34
36
  loading: boolean;
35
37
  /** Emits the complete next controlled state after a page or page-size request. */
@@ -28,6 +28,8 @@ export interface PaginationState {
28
28
  pageSizeLabel?: string;
29
29
  /** Accessible name for the pagination navigation region. */
30
30
  ariaLabel?: string;
31
+ /** Include direct first-page and last-page controls around Previous and Next. */
32
+ showFirstLastButtons?: boolean;
31
33
  }
32
34
  /** Complete next controlled state emitted for a page or page-size request. */
33
35
  export interface PaginationChangeDetail extends PaginationState {
@@ -1,5 +1,5 @@
1
1
  import { EventEmitter } from '../../stencil-public-runtime';
2
- import type { PanelToolsHeaderAction } from '../PanelTools/panel-tools-types';
2
+ import type { PanelToolHeaderActionDetail, PanelToolsHeaderAction } from '../PanelTools/panel-tools-types';
3
3
  export declare class PanelToolHeader {
4
4
  el: HTMLElement;
5
5
  /** Visible heading for the active tool view. */
@@ -24,10 +24,7 @@ export declare class PanelToolHeader {
24
24
  actions: PanelToolsHeaderAction[];
25
25
  dsBack: EventEmitter<MouseEvent>;
26
26
  dsMenuToggle: EventEmitter<MouseEvent>;
27
- dsAction: EventEmitter<{
28
- id: string;
29
- originalEvent: MouseEvent;
30
- }>;
27
+ dsAction: EventEmitter<PanelToolHeaderActionDetail>;
31
28
  focusMenuTrigger(): Promise<void>;
32
29
  render(): any;
33
30
  }
@@ -1,6 +1,6 @@
1
1
  import { EventEmitter } from '../../stencil-public-runtime';
2
2
  import type { ChromeTransitionDetail } from '../../shell/chrome-transition';
3
- import { type PanelToolsHeaders, type PanelToolsItem, type PanelToolsToolId } from './panel-tools-types';
3
+ import { type PanelToolsHeaderActionDetail, type PanelToolsHeaders, type PanelToolsItem, type PanelToolsToolId } from './panel-tools-types';
4
4
  export declare class PanelTools {
5
5
  el: HTMLElement;
6
6
  /** When false, only the icon rail is shown. */
@@ -39,10 +39,7 @@ export declare class PanelTools {
39
39
  tool: PanelToolsToolId;
40
40
  }>;
41
41
  /** Requests one application-owned action from the active tool header. */
42
- dsHeaderAction: EventEmitter<{
43
- tool: PanelToolsToolId;
44
- id: string;
45
- }>;
42
+ dsHeaderAction: EventEmitter<PanelToolsHeaderActionDetail>;
46
43
  /** Bubbling lifecycle — `ds-bar-nav` defers overflow checks during drawer motion. */
47
44
  dsChromeTransitionStart: EventEmitter<ChromeTransitionDetail>;
48
45
  dsChromeTransitionEnd: EventEmitter<ChromeTransitionDetail>;
@@ -43,6 +43,18 @@ export interface PanelToolsHeaderAction {
43
43
  pressed?: boolean;
44
44
  isInactive?: boolean;
45
45
  }
46
+ export interface PanelToolsHeaderActionDetail {
47
+ tool: PanelToolsToolId;
48
+ id: string;
49
+ /** Rendered header action host. Pass this to an external overlay's element anchor prop. */
50
+ anchor?: HTMLElement;
51
+ }
52
+ export interface PanelToolHeaderActionDetail {
53
+ id: string;
54
+ originalEvent: MouseEvent;
55
+ /** Rendered action host, suitable for anchoring an external overlay across a shadow boundary. */
56
+ anchor: HTMLElement;
57
+ }
46
58
  export interface PanelToolsHeaderConfig {
47
59
  title?: string;
48
60
  showBack?: boolean;
@@ -54,6 +54,8 @@ export declare class Select {
54
54
  width: SelectWidth;
55
55
  /** Align the popup's choice edge to the trigger start or end edge. */
56
56
  popupAlign: SelectPopupAlign;
57
+ /** Explicit collision owner; otherwise the nearest data-ds-overlay-boundary ancestor is used. */
58
+ boundary: HTMLElement | undefined;
57
59
  /** Shared inactive treatment; removes interaction and form submission. */
58
60
  isInactive: boolean;
59
61
  /** Replace the prefix with a loader and disable option interaction. */
@@ -177,6 +179,7 @@ export declare class Select {
177
179
  private get captionIconOnly();
178
180
  private syncCaptionCompactObserver;
179
181
  private disconnectCaptionCompactObserver;
182
+ private renderCaptionTooltip;
180
183
  render(): any;
181
184
  }
182
185
  //# sourceMappingURL=Select.d.ts.map
@@ -146,8 +146,6 @@ export declare class Table {
146
146
  private visibleColumnsCache;
147
147
  private renderModelCache;
148
148
  private virtualItemsCache;
149
- private virtualLookupCache;
150
- private virtualRowPoolStates;
151
149
  private rootEl;
152
150
  private viewportEl;
153
151
  private frameEl;
@@ -170,6 +168,7 @@ export declare class Table {
170
168
  private fitObservedViewport;
171
169
  private fitObservedTable;
172
170
  private fitMeasurementPending;
171
+ private readonly bodyRenderer;
173
172
  private readonly layoutController;
174
173
  private readonly loadController;
175
174
  private readonly groupLoadController;
@@ -255,7 +254,6 @@ export declare class Table {
255
254
  private presentOrDismissTruncateTrack;
256
255
  private dismissTruncateTooltip;
257
256
  private renderTruncateTooltip;
258
- private truncateAttr;
259
257
  private handleRowKeydown;
260
258
  private onVirtualFocusIn;
261
259
  private renderSelectionControl;
@@ -265,9 +263,6 @@ export declare class Table {
265
263
  private renderColumnHeader;
266
264
  private renderColgroup;
267
265
  private renderHeader;
268
- private renderCellValue;
269
- private renderTextCopy;
270
- private renderTextTrack;
271
266
  private renderRow;
272
267
  private emitGroupCollapse;
273
268
  private emitAllGroupsCollapse;
@@ -275,15 +270,8 @@ export declare class Table {
275
270
  private formatGroupLoadLabel;
276
271
  private renderGroupLoadRow;
277
272
  private renderStickyGroup;
278
- private renderVirtualSpacer;
279
- private renderVirtualRow;
280
- private virtualRowPoolKeys;
281
- private renderVirtualGroup;
282
- private renderVirtualBodies;
283
273
  private renderDataBodies;
284
274
  private renderSkeletonBody;
285
- private renderSkeletonCell;
286
- private renderSkeletonCellContent;
287
275
  private renderStateBody;
288
276
  private renderLazyBody;
289
277
  private renderDocumentStickyHeader;
@@ -0,0 +1,36 @@
1
+ import type { TableGroupRenderModel, TableRenderModel } from './table-render-model';
2
+ import type { TableGroup, TableRow } from './table-types';
3
+ import type { TableVirtualNode, TableVirtualPlan } from './table-virtual-model';
4
+ export interface TableVirtualRowPoolState {
5
+ slotsByRowId: Map<string, number>;
6
+ nextSlot: number;
7
+ }
8
+ export interface TableBodyRenderOptions {
9
+ model: TableRenderModel;
10
+ plan: TableVirtualPlan | null;
11
+ rows: TableRow[];
12
+ stickyHeader: boolean;
13
+ documentStickyHeader: boolean;
14
+ activeStickyGroupId: string | null;
15
+ renderRow: (row: TableRow, model: TableRenderModel, ariaRowIndex?: number, variableVirtualSize?: boolean, rowKey?: string) => unknown;
16
+ renderGroupContent: (group: TableGroupRenderModel) => unknown;
17
+ renderGroupLoadRow: (group: TableGroup, totalColumns: number) => unknown;
18
+ }
19
+ /**
20
+ * Assign stable, bounded DOM keys to the rows currently occupying one virtual scope.
21
+ * Departed rows release their slots so long scrolls recycle DOM instead of growing it.
22
+ */
23
+ export declare function assignTableVirtualRowPoolKeys(nodes: readonly TableVirtualNode[], state: TableVirtualRowPoolState): Map<number, string>;
24
+ /** Owns grouped and virtual tbody composition while Table remains the behavior orchestrator. */
25
+ export declare class TableBodyRenderer {
26
+ private virtualLookupCache;
27
+ private readonly virtualRowPoolStates;
28
+ resetVirtualState(): void;
29
+ render(options: TableBodyRenderOptions): any;
30
+ private renderVirtualSpacer;
31
+ private renderVirtualRow;
32
+ private virtualRowPoolKeys;
33
+ private renderVirtualGroup;
34
+ private renderVirtualBodies;
35
+ }
36
+ //# sourceMappingURL=table-body-renderer.d.ts.map
@@ -0,0 +1,17 @@
1
+ interface TableLoadContentOptions {
2
+ error?: string;
3
+ loading: boolean;
4
+ hasMore: boolean;
5
+ manualFallback: boolean;
6
+ retryLabel: string;
7
+ loadingLabel: string;
8
+ loadMoreLabel: string;
9
+ loadMoreAriaLabel?: string;
10
+ endOfResultsLabel?: string;
11
+ onRetry: () => void;
12
+ onLoadMore: () => void;
13
+ }
14
+ /** Shared visible state machine for top-level and per-group incremental loading bands. */
15
+ export declare function renderTableLoadContent(options: TableLoadContentOptions): any;
16
+ export {};
17
+ //# sourceMappingURL=table-load-view.d.ts.map
@@ -0,0 +1,26 @@
1
+ import type { TableRenderModel } from './table-render-model';
2
+ import type { TableCellActionDetail, TableColumn, TableRow } from './table-types';
3
+ export interface TableRowViewOptions {
4
+ row: TableRow;
5
+ model: TableRenderModel;
6
+ visibleColumns: TableColumn[];
7
+ emptyCellLabel: string;
8
+ actionMenuElementId: string;
9
+ actionMenu: {
10
+ rowId: string;
11
+ columnId: string;
12
+ } | null;
13
+ ariaRowIndex?: number;
14
+ variableVirtualSize?: boolean;
15
+ rowKey?: string;
16
+ renderSelectionControl: (label: string, checked: boolean, indeterminate: boolean, disabled: boolean, onActivate: () => void) => unknown;
17
+ renderStickyEdge: (sticky: TableColumn['sticky']) => unknown;
18
+ onRowActivate: (row: TableRow, event: Event) => void;
19
+ onRowKeyDown: (row: TableRow, event: KeyboardEvent) => void;
20
+ onRowSelection: (row: TableRow) => void;
21
+ onCellAction: (detail: TableCellActionDetail) => void;
22
+ onActionMenuToggle: (row: TableRow, column: TableColumn, event: MouseEvent) => void;
23
+ }
24
+ /** 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;
26
+ //# sourceMappingURL=table-row-view.d.ts.map
@@ -0,0 +1,12 @@
1
+ import type { TableRenderModel } from './table-render-model';
2
+ import type { TableColumn } from './table-types';
3
+ interface TableSkeletonViewOptions {
4
+ model: TableRenderModel;
5
+ visibleColumns: TableColumn[];
6
+ skeletonRows: number;
7
+ renderStickyEdge: (sticky: TableColumn['sticky']) => unknown;
8
+ }
9
+ /** Render the loading body from the same cell recipes used by loaded rows. */
10
+ export declare function renderTableSkeletonBody(options: TableSkeletonViewOptions): any;
11
+ export {};
12
+ //# sourceMappingURL=table-skeleton-view.d.ts.map
@@ -1,3 +1,4 @@
1
+ import { type AnchoredOverlayBoundary } from '../../utils/anchored-overlay-boundary';
1
2
  import '../Text/Text';
2
3
  export type TooltipSide = 'top' | 'right' | 'bottom' | 'left';
3
4
  export type TooltipAlign = 'start' | 'center' | 'end';
@@ -22,6 +23,8 @@ export declare class Tooltip {
22
23
  sideOffset: number | string;
23
24
  /** Cross-axis offset — number (px) or TokoMo length. */
24
25
  alignOffset: number | string;
26
+ /** Explicit collision owner, `viewport`, or the nearest data-ds-overlay-boundary ancestor. */
27
+ boundary: AnchoredOverlayBoundary | undefined;
25
28
  /**
26
29
  * Hover show delay before the tooltip appears.
27
30
  * Default: `--effect-animation-delay-medium-3` (1000ms). Accepts a number (ms)
@@ -33,7 +33,7 @@ import { DividerBackground, DividerInset, DividerLength, DividerOrientation } fr
33
33
  import { FilterMenuChangeDetail, FilterMenuFilter, FilterMenuSize, FilterMenuValues, FilterMenuWidth } from "./components/FilterMenu/FilterMenu";
34
34
  import { AnchoredAlign, AnchoredSide } from "./utils/anchored-position";
35
35
  import { IconColor as IconColor1, IconSize } from "./components/Icon/Icon";
36
- import { InputSize, InputType, InputWidth } from "./components/Input/Input";
36
+ import { InputSize, InputTextAlign, InputType, InputWidth } from "./components/Input/Input";
37
37
  import { LoaderColor, LoaderSize } from "./components/Loader/Loader";
38
38
  import { MenuItemData, MenuReorderDetail, MenuSection } from "./components/Menu/menu-types";
39
39
  import { MenuSelectionMode, MenuSize } from "./components/Menu/Menu";
@@ -51,7 +51,7 @@ import { PaginationChangeDetail, PaginationPageSizeMode } from "./components/Pag
51
51
  import { ChromeTransitionDetail } from "./shell/chrome-transition";
52
52
  import { PanelSubNavItem } from "./components/PanelSubNav/panel-sub-nav-types";
53
53
  import { PanelSubNavBackground } from "./components/PanelSubNav/PanelSubNav";
54
- import { PanelToolsHeaderAction, PanelToolsHeaders, PanelToolsItem, PanelToolsToolId } from "./components/PanelTools/panel-tools-types";
54
+ import { PanelToolHeaderActionDetail, PanelToolsHeaderAction, PanelToolsHeaderActionDetail, PanelToolsHeaders, PanelToolsItem, PanelToolsToolId } from "./components/PanelTools/panel-tools-types";
55
55
  import { PaperTextureConfig } from "./components/PaperTexture/paper-texture-types";
56
56
  import { RadioOption, RadioSize } from "./components/Radio/Radio";
57
57
  import { ScrollOverlayScrollDetail } from "./components/ScrollOverlay/ScrollOverlay";
@@ -71,6 +71,7 @@ import { TableSavedView, TableSavedViewChangeDetail, TableSavedViewCreateDetail,
71
71
  import { TagContrast, TagIntent, TagSize } from "./components/Tag/Tag";
72
72
  import { ToastActionEventDetail, ToastCloseEventDetail, ToastEventDetail, ToastManager, ToastSwipeDirection } from "./toast";
73
73
  import { TooltipAlign, TooltipSide, TooltipSize } from "./components/Tooltip/Tooltip";
74
+ import { AnchoredOverlayBoundary } from "./utils/anchored-overlay-boundary";
74
75
  import { TooltipChartItem } from "./components/TooltipChart/TooltipChart";
75
76
  export { AgentActivityItem, AgentQuestion, AgentQuestionAnswer, AgentQuestionnaireAnswerEventDetail, AgentQuestionnaireCancelEventDetail, AgentQuestionnaireLabels, AgentQuestionnaireStatus, AgentResponsePart, AgentResponseRenderMode, AgentSource, AgentToolState, ConversationAttachment, ConversationItemState, MessageComposerStatus, MessageCopyResultEventDetail, MessageDeliveryState, MessageDirection, MessageFeedback, MessageGroupPosition, MessageMetadataVisibility, MessageScrollerPosition } from "./components/conversation-types";
76
77
  export { IconColor, IconSize as IconSize1 } from "./components/Icon/Icon";
@@ -100,7 +101,7 @@ export { DividerBackground, DividerInset, DividerLength, DividerOrientation } fr
100
101
  export { FilterMenuChangeDetail, FilterMenuFilter, FilterMenuSize, FilterMenuValues, FilterMenuWidth } from "./components/FilterMenu/FilterMenu";
101
102
  export { AnchoredAlign, AnchoredSide } from "./utils/anchored-position";
102
103
  export { IconColor as IconColor1, IconSize } from "./components/Icon/Icon";
103
- export { InputSize, InputType, InputWidth } from "./components/Input/Input";
104
+ export { InputSize, InputTextAlign, InputType, InputWidth } from "./components/Input/Input";
104
105
  export { LoaderColor, LoaderSize } from "./components/Loader/Loader";
105
106
  export { MenuItemData, MenuReorderDetail, MenuSection } from "./components/Menu/menu-types";
106
107
  export { MenuSelectionMode, MenuSize } from "./components/Menu/Menu";
@@ -118,7 +119,7 @@ export { PaginationChangeDetail, PaginationPageSizeMode } from "./components/Pag
118
119
  export { ChromeTransitionDetail } from "./shell/chrome-transition";
119
120
  export { PanelSubNavItem } from "./components/PanelSubNav/panel-sub-nav-types";
120
121
  export { PanelSubNavBackground } from "./components/PanelSubNav/PanelSubNav";
121
- export { PanelToolsHeaderAction, PanelToolsHeaders, PanelToolsItem, PanelToolsToolId } from "./components/PanelTools/panel-tools-types";
122
+ export { PanelToolHeaderActionDetail, PanelToolsHeaderAction, PanelToolsHeaderActionDetail, PanelToolsHeaders, PanelToolsItem, PanelToolsToolId } from "./components/PanelTools/panel-tools-types";
122
123
  export { PaperTextureConfig } from "./components/PaperTexture/paper-texture-types";
123
124
  export { RadioOption, RadioSize } from "./components/Radio/Radio";
124
125
  export { ScrollOverlayScrollDetail } from "./components/ScrollOverlay/ScrollOverlay";
@@ -138,6 +139,7 @@ export { TableSavedView, TableSavedViewChangeDetail, TableSavedViewCreateDetail,
138
139
  export { TagContrast, TagIntent, TagSize } from "./components/Tag/Tag";
139
140
  export { ToastActionEventDetail, ToastCloseEventDetail, ToastEventDetail, ToastManager, ToastSwipeDirection } from "./toast";
140
141
  export { TooltipAlign, TooltipSide, TooltipSize } from "./components/Tooltip/Tooltip";
142
+ export { AnchoredOverlayBoundary } from "./utils/anchored-overlay-boundary";
141
143
  export { TooltipChartItem } from "./components/TooltipChart/TooltipChart";
142
144
  export namespace Components {
143
145
  interface DsAgentActivity {
@@ -287,10 +289,9 @@ export namespace Components {
287
289
  */
288
290
  "count": number;
289
291
  /**
290
- * Ring samples the shell gradient stack (base fill + wash) instead of a flat `box-shadow`. Auto-enabled under an ShellApp with an active gradient preset; set `gradient-background` to opt in/out explicitly. The attribute must NOT start with `on` — Stencil's setAccessor routes any unknown `on*` member down the event-listener path during attribute reflection, calling addEventListener with a non-listener and throwing.
291
- * @default false
292
+ * Ring samples the shell gradient stack (base fill + wash) instead of a flat `box-shadow`. Omit to inherit ShellApp context; set true or false to override. The attribute must NOT start with `on` — Stencil's setAccessor routes any unknown `on*` member down the event-listener path during attribute reflection, calling addEventListener with a non-listener and throwing.
292
293
  */
293
- "gradientBackground": boolean;
294
+ "gradientBackground"?: boolean;
294
295
  /**
295
296
  * Show the separation ring when the badge overlaps an icon or other content.
296
297
  * @default true
@@ -1229,6 +1230,10 @@ export namespace Components {
1229
1230
  * @default null
1230
1231
  */
1231
1232
  "ariaLabel": string | null;
1233
+ /**
1234
+ * Explicit collision owner; otherwise the nearest data-ds-overlay-boundary ancestor is used.
1235
+ */
1236
+ "boundary": HTMLElement | undefined;
1232
1237
  /**
1233
1238
  * Accessible name for the category tab list.
1234
1239
  * @default 'Filter categories'
@@ -1274,7 +1279,7 @@ export namespace Components {
1274
1279
  */
1275
1280
  "menuLabel": string;
1276
1281
  /**
1277
- * Popup width. It remains clamped to the viewport by the component recipe.
1282
+ * Popup width. It remains clamped to its collision boundary by the component recipe.
1278
1283
  * @default TOKEN_CSS_LENGTHS.menuWidthLg
1279
1284
  */
1280
1285
  "menuWidth": string;
@@ -1424,6 +1429,11 @@ export namespace Components {
1424
1429
  * Numeric increment used by native stepping and constraint validation.
1425
1430
  */
1426
1431
  "step": number | undefined;
1432
+ /**
1433
+ * Align the editable value; number steppers follow the same inline edge.
1434
+ * @default 'start'
1435
+ */
1436
+ "textAlign": InputTextAlign;
1427
1437
  /**
1428
1438
  * @default 'text'
1429
1439
  */
@@ -1487,6 +1497,10 @@ export namespace Components {
1487
1497
  * ID of the external trigger element for positioning
1488
1498
  */
1489
1499
  "anchorId": string | undefined;
1500
+ /**
1501
+ * Explicit collision owner; otherwise the nearest data-ds-overlay-boundary ancestor is used.
1502
+ */
1503
+ "boundary": HTMLElement | undefined;
1490
1504
  /**
1491
1505
  * Show a visible ring on the initially focused menu item. Use only when the opener was keyboard-driven.
1492
1506
  * @default false
@@ -1927,6 +1941,11 @@ export namespace Components {
1927
1941
  * @default [25, 50, 100, 200]
1928
1942
  */
1929
1943
  "pageSizeOptions": number[];
1944
+ /**
1945
+ * Include direct first-page and last-page controls.
1946
+ * @default false
1947
+ */
1948
+ "showFirstLastButtons": boolean;
1930
1949
  /**
1931
1950
  * Controlled total number of top-level items across every page.
1932
1951
  * @default 0
@@ -2335,6 +2354,10 @@ export namespace Components {
2335
2354
  * Actual parent surface context; omit on primary and secondary surfaces.
2336
2355
  */
2337
2356
  "background": SelectBackground | undefined;
2357
+ /**
2358
+ * Explicit collision owner; otherwise the nearest data-ds-overlay-boundary ancestor is used.
2359
+ */
2360
+ "boundary": HTMLElement | undefined;
2338
2361
  /**
2339
2362
  * Localized clear action label.
2340
2363
  * @default 'Clear'
@@ -3446,6 +3469,10 @@ export namespace Components {
3446
3469
  * @default 0
3447
3470
  */
3448
3471
  "alignOffset": number | string;
3472
+ /**
3473
+ * Explicit collision owner, `viewport`, or the nearest data-ds-overlay-boundary ancestor.
3474
+ */
3475
+ "boundary": AnchoredOverlayBoundary | undefined;
3449
3476
  /**
3450
3477
  * Hover show delay before the tooltip appears. Default: `--effect-animation-delay-medium-3` (1000ms). Accepts a number (ms) or a TokoMo time token / `var(--effect-animation-delay-*)`. Applies to the initial hover/focus show only — after a recent dismiss, reopen is instant. Prefer the default; override only for denser chrome or rare/destructive actions.
3451
3478
  * @default TOKEN_DEFAULTS.animationDelayMedium3
@@ -3542,7 +3569,7 @@ export namespace Components {
3542
3569
  interface DsTypingIndicator {
3543
3570
  /**
3544
3571
  * Concise localized typing status.
3545
- * @default 'Typing...'
3572
+ * @default 'Typing…'
3546
3573
  */
3547
3574
  "label": string;
3548
3575
  }
@@ -4460,7 +4487,7 @@ declare global {
4460
4487
  interface HTMLDsPanelToolHeaderElementEventMap {
4461
4488
  "dsBack": MouseEvent;
4462
4489
  "dsMenuToggle": MouseEvent;
4463
- "dsAction": { id: string; originalEvent: MouseEvent };
4490
+ "dsAction": PanelToolHeaderActionDetail;
4464
4491
  }
4465
4492
  interface HTMLDsPanelToolHeaderElement extends Components.DsPanelToolHeader, HTMLStencilElement {
4466
4493
  addEventListener<K extends keyof HTMLDsPanelToolHeaderElementEventMap>(type: K, listener: (this: HTMLDsPanelToolHeaderElement, ev: DsPanelToolHeaderCustomEvent<HTMLDsPanelToolHeaderElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
@@ -4506,10 +4533,7 @@ declare global {
4506
4533
  "dsHeaderBack": {
4507
4534
  tool: PanelToolsToolId;
4508
4535
  };
4509
- "dsHeaderAction": {
4510
- tool: PanelToolsToolId;
4511
- id: string;
4512
- };
4536
+ "dsHeaderAction": PanelToolsHeaderActionDetail;
4513
4537
  "dsChromeTransitionStart": ChromeTransitionDetail;
4514
4538
  "dsChromeTransitionEnd": ChromeTransitionDetail;
4515
4539
  }
@@ -5134,8 +5158,7 @@ declare namespace LocalJSX {
5134
5158
  */
5135
5159
  "count"?: number;
5136
5160
  /**
5137
- * Ring samples the shell gradient stack (base fill + wash) instead of a flat `box-shadow`. Auto-enabled under an ShellApp with an active gradient preset; set `gradient-background` to opt in/out explicitly. The attribute must NOT start with `on` — Stencil's setAccessor routes any unknown `on*` member down the event-listener path during attribute reflection, calling addEventListener with a non-listener and throwing.
5138
- * @default false
5161
+ * Ring samples the shell gradient stack (base fill + wash) instead of a flat `box-shadow`. Omit to inherit ShellApp context; set true or false to override. The attribute must NOT start with `on` — Stencil's setAccessor routes any unknown `on*` member down the event-listener path during attribute reflection, calling addEventListener with a non-listener and throwing.
5139
5162
  */
5140
5163
  "gradientBackground"?: boolean;
5141
5164
  /**
@@ -6162,6 +6185,10 @@ declare namespace LocalJSX {
6162
6185
  * @default null
6163
6186
  */
6164
6187
  "ariaLabel"?: string | null;
6188
+ /**
6189
+ * Explicit collision owner; otherwise the nearest data-ds-overlay-boundary ancestor is used.
6190
+ */
6191
+ "boundary"?: HTMLElement | undefined;
6165
6192
  /**
6166
6193
  * Accessible name for the category tab list.
6167
6194
  * @default 'Filter categories'
@@ -6207,7 +6234,7 @@ declare namespace LocalJSX {
6207
6234
  */
6208
6235
  "menuLabel"?: string;
6209
6236
  /**
6210
- * Popup width. It remains clamped to the viewport by the component recipe.
6237
+ * Popup width. It remains clamped to its collision boundary by the component recipe.
6211
6238
  * @default TOKEN_CSS_LENGTHS.menuWidthLg
6212
6239
  */
6213
6240
  "menuWidth"?: string;
@@ -6382,6 +6409,11 @@ declare namespace LocalJSX {
6382
6409
  * Numeric increment used by native stepping and constraint validation.
6383
6410
  */
6384
6411
  "step"?: number | undefined;
6412
+ /**
6413
+ * Align the editable value; number steppers follow the same inline edge.
6414
+ * @default 'start'
6415
+ */
6416
+ "textAlign"?: InputTextAlign;
6385
6417
  /**
6386
6418
  * @default 'text'
6387
6419
  */
@@ -6445,6 +6477,10 @@ declare namespace LocalJSX {
6445
6477
  * ID of the external trigger element for positioning
6446
6478
  */
6447
6479
  "anchorId"?: string | undefined;
6480
+ /**
6481
+ * Explicit collision owner; otherwise the nearest data-ds-overlay-boundary ancestor is used.
6482
+ */
6483
+ "boundary"?: HTMLElement | undefined;
6448
6484
  /**
6449
6485
  * Show a visible ring on the initially focused menu item. Use only when the opener was keyboard-driven.
6450
6486
  * @default false
@@ -6929,6 +6965,11 @@ declare namespace LocalJSX {
6929
6965
  * @default [25, 50, 100, 200]
6930
6966
  */
6931
6967
  "pageSizeOptions"?: number[];
6968
+ /**
6969
+ * Include direct first-page and last-page controls.
6970
+ * @default false
6971
+ */
6972
+ "showFirstLastButtons"?: boolean;
6932
6973
  /**
6933
6974
  * Controlled total number of top-level items across every page.
6934
6975
  * @default 0
@@ -7113,7 +7154,7 @@ declare namespace LocalJSX {
7113
7154
  * @default ''
7114
7155
  */
7115
7156
  "menuTriggerId"?: string;
7116
- "onDsAction"?: (event: DsPanelToolHeaderCustomEvent<{ id: string; originalEvent: MouseEvent }>) => void;
7157
+ "onDsAction"?: (event: DsPanelToolHeaderCustomEvent<PanelToolHeaderActionDetail>) => void;
7117
7158
  "onDsBack"?: (event: DsPanelToolHeaderCustomEvent<MouseEvent>) => void;
7118
7159
  "onDsMenuToggle"?: (event: DsPanelToolHeaderCustomEvent<MouseEvent>) => void;
7119
7160
  /**
@@ -7214,10 +7255,7 @@ declare namespace LocalJSX {
7214
7255
  /**
7215
7256
  * Requests one application-owned action from the active tool header.
7216
7257
  */
7217
- "onDsHeaderAction"?: (event: DsPanelToolsCustomEvent<{
7218
- tool: PanelToolsToolId;
7219
- id: string;
7220
- }>) => void;
7258
+ "onDsHeaderAction"?: (event: DsPanelToolsCustomEvent<PanelToolsHeaderActionDetail>) => void;
7221
7259
  /**
7222
7260
  * Requests navigation to the active tool's parent view.
7223
7261
  */
@@ -7369,6 +7407,10 @@ declare namespace LocalJSX {
7369
7407
  * Actual parent surface context; omit on primary and secondary surfaces.
7370
7408
  */
7371
7409
  "background"?: SelectBackground | undefined;
7410
+ /**
7411
+ * Explicit collision owner; otherwise the nearest data-ds-overlay-boundary ancestor is used.
7412
+ */
7413
+ "boundary"?: HTMLElement | undefined;
7372
7414
  /**
7373
7415
  * Localized clear action label.
7374
7416
  * @default 'Clear'
@@ -8628,6 +8670,10 @@ declare namespace LocalJSX {
8628
8670
  * @default 0
8629
8671
  */
8630
8672
  "alignOffset"?: number | string;
8673
+ /**
8674
+ * Explicit collision owner, `viewport`, or the nearest data-ds-overlay-boundary ancestor.
8675
+ */
8676
+ "boundary"?: AnchoredOverlayBoundary | undefined;
8631
8677
  /**
8632
8678
  * Hover show delay before the tooltip appears. Default: `--effect-animation-delay-medium-3` (1000ms). Accepts a number (ms) or a TokoMo time token / `var(--effect-animation-delay-*)`. Applies to the initial hover/focus show only — after a recent dismiss, reopen is instant. Prefer the default; override only for denser chrome or rare/destructive actions.
8633
8679
  * @default TOKEN_DEFAULTS.animationDelayMedium3
@@ -8716,7 +8762,7 @@ declare namespace LocalJSX {
8716
8762
  interface DsTypingIndicator {
8717
8763
  /**
8718
8764
  * Concise localized typing status.
8719
- * @default 'Typing...'
8765
+ * @default 'Typing…'
8720
8766
  */
8721
8767
  "label"?: string;
8722
8768
  }
@@ -9024,6 +9070,7 @@ declare namespace LocalJSX {
9024
9070
  "min": number | undefined;
9025
9071
  "max": number | undefined;
9026
9072
  "step": number | undefined;
9073
+ "textAlign": InputTextAlign;
9027
9074
  "autoComplete": string | undefined;
9028
9075
  "inputMode": string;
9029
9076
  "enterKeyHint": string;
@@ -9165,6 +9212,7 @@ declare namespace LocalJSX {
9165
9212
  "pageSizeLabel": string;
9166
9213
  "pageSizeAriaLabel": string | undefined;
9167
9214
  "label": string;
9215
+ "showFirstLastButtons": boolean;
9168
9216
  "loading": boolean;
9169
9217
  }
9170
9218
  interface DsPanelNavAttributes {
@@ -9495,6 +9543,7 @@ declare namespace LocalJSX {
9495
9543
  "align": TooltipAlign;
9496
9544
  "sideOffset": string;
9497
9545
  "alignOffset": string;
9546
+ "boundary": AnchoredOverlayBoundary | undefined;
9498
9547
  "delay": string;
9499
9548
  "shortcutKey": string | undefined;
9500
9549
  "shortcutKeyPosition": 'start' | 'end';
@@ -3,7 +3,7 @@ export type { PanelNavGroup, PanelNavItem, } from '../components/PanelNav/panel-
3
3
  export type { BarNavTab } from '../components/BarNav/bar-nav-types';
4
4
  export type { ShellPageContentInset, ShellPageContentSurface, } from '../components/ShellPage/shell-page-types';
5
5
  export type { ShellAppComposition, ShellNavigationConfig, ShellNavigationSelectDetail, ShellPageChromeConfig, ShellToolsConfig, } from '../components/ShellApp/shell-app-types';
6
- export type { PanelToolsHeaderAction, PanelToolsHeaderConfig, PanelToolsHeaders, PanelToolsItem, PanelToolsToolId, } from '../components/PanelTools/panel-tools-types';
6
+ export type { PanelToolsHeaderAction, PanelToolsHeaderActionDetail, PanelToolHeaderActionDetail, PanelToolsHeaderConfig, PanelToolsHeaders, PanelToolsItem, PanelToolsToolId, } from '../components/PanelTools/panel-tools-types';
7
7
  export { PANEL_TOOLS_DEFAULT_ITEMS } from '../components/PanelTools/panel-tools-types';
8
8
  export { NAV_STYLE_HINT_ATTR, readNavStyleAttr, setNavStyleHint, clearNavStyleHint, } from './nav-chrome';
9
9
  export type { MenuPlacement } from '../components/Menu/menu-placement';
@@ -0,0 +1,14 @@
1
+ import type { AnchoredCollisionRect } from './anchored-position';
2
+ /** Attribute placed on a page or panel whose visible rectangle owns anchored overlays. */
3
+ export declare const ANCHORED_OVERLAY_BOUNDARY_ATTRIBUTE = "data-ds-overlay-boundary";
4
+ /** An element-owned collision rectangle, or an explicit escape to the viewport. */
5
+ export type AnchoredOverlayBoundary = HTMLElement | 'viewport';
6
+ /**
7
+ * Find the nearest collision owner through light DOM, assigned slots, and open
8
+ * shadow roots. The popup may live in the top layer or a body portal; ownership
9
+ * follows its anchor instead of the popup's rendering location.
10
+ */
11
+ export declare function findAnchoredOverlayBoundary(anchor: Element): HTMLElement | null;
12
+ /** Resolve an explicit owner first, then the nearest composed-tree boundary. */
13
+ export declare function resolveAnchoredOverlayBoundaryRect(anchor: Element, explicitBoundary?: AnchoredOverlayBoundary): AnchoredCollisionRect | undefined;
14
+ //# sourceMappingURL=anchored-overlay-boundary.d.ts.map