@ds-mo/ui 14.35.0 → 14.36.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 (326) hide show
  1. package/dist/.package-ready.json +1 -1
  2. package/dist/agent-patterns.json +1 -1
  3. package/dist/agent.json +1105 -187
  4. package/dist/angular/ds-button-inverted.d.ts +17 -0
  5. package/dist/angular/ds-button-inverted.js +46 -0
  6. package/dist/angular/ds-calendar.d.ts +15 -0
  7. package/dist/angular/ds-calendar.js +43 -0
  8. package/dist/angular/ds-field.d.ts +1 -1
  9. package/dist/angular/ds-field.js +1 -1
  10. package/dist/angular/ds-input-date.d.ts +15 -0
  11. package/dist/angular/ds-input-date.js +43 -0
  12. package/dist/angular/ds-input-time.d.ts +15 -0
  13. package/dist/angular/ds-input-time.js +43 -0
  14. package/dist/angular/ds-input.d.ts +1 -1
  15. package/dist/angular/ds-input.js +3 -3
  16. package/dist/angular/ds-select.d.ts +1 -1
  17. package/dist/angular/ds-select.js +3 -3
  18. package/dist/angular/ds-time-picker.d.ts +15 -0
  19. package/dist/angular/ds-time-picker.js +43 -0
  20. package/dist/angular/index.d.ts +1 -1
  21. package/dist/angular/index.js +5 -0
  22. package/dist/angular/proxies.d.ts +5 -0
  23. package/dist/angular/proxies.js +5 -0
  24. package/dist/angular/text-value-accessor.d.ts +1 -1
  25. package/dist/angular/text-value-accessor.js +2 -2
  26. package/dist/components/ds-agent-activity.js +1 -1
  27. package/dist/components/ds-agent-questionnaire.js +1 -1
  28. package/dist/components/ds-agent-response.js +1 -1
  29. package/dist/components/ds-agent-source-list.js +1 -1
  30. package/dist/components/ds-agent-tool-call.js +1 -1
  31. package/dist/components/ds-attachment-list.js +1 -1
  32. package/dist/components/ds-badge.js +1 -1
  33. package/dist/components/ds-banner.js +1 -1
  34. package/dist/components/ds-bar-action.js +1 -1
  35. package/dist/components/ds-bar-nav.js +1 -1
  36. package/dist/components/ds-bar-page-title.js +1 -1
  37. package/dist/components/ds-bar-title.js +1 -1
  38. package/dist/components/ds-bar-workflow.js +1 -1
  39. package/dist/components/ds-breadcrumb.js +1 -1
  40. package/dist/components/ds-button-filled.js +1 -1
  41. package/dist/components/ds-button-inverted.d.ts +11 -0
  42. package/dist/components/ds-button-inverted.js +2 -0
  43. package/dist/components/ds-button-inverted.js.map +1 -0
  44. package/dist/components/ds-button-unfilled.js +1 -1
  45. package/dist/components/ds-calendar.d.ts +11 -0
  46. package/dist/components/ds-calendar.js +2 -0
  47. package/dist/components/ds-calendar.js.map +1 -0
  48. package/dist/components/ds-card-action-center.js +1 -1
  49. package/dist/components/ds-card-chart.js +1 -1
  50. package/dist/components/ds-card-navigation.js +1 -1
  51. package/dist/components/ds-card-navigation.js.map +1 -1
  52. package/dist/components/ds-card-overview.js +1 -1
  53. package/dist/components/ds-card-setting.js +1 -1
  54. package/dist/components/ds-card-settings-scope.js +1 -1
  55. package/dist/components/ds-card-settings-scope.js.map +1 -1
  56. package/dist/components/ds-chart-legend.js +1 -1
  57. package/dist/components/ds-chart.js +1 -1
  58. package/dist/components/ds-checkbox.js +1 -1
  59. package/dist/components/ds-chip.js +1 -1
  60. package/dist/components/ds-code-block.js +1 -1
  61. package/dist/components/ds-conversation-list-item.js +1 -1
  62. package/dist/components/ds-conversation-list-item.js.map +1 -1
  63. package/dist/components/ds-conversation-list-section.js +1 -1
  64. package/dist/components/ds-conversation-list.js +1 -1
  65. package/dist/components/ds-divider.js +1 -1
  66. package/dist/components/ds-empty-state.js +1 -1
  67. package/dist/components/ds-field.js +1 -1
  68. package/dist/components/ds-filter-menu.js +1 -1
  69. package/dist/components/ds-input-date.d.ts +11 -0
  70. package/dist/components/ds-input-date.js +2 -0
  71. package/dist/components/ds-input-date.js.map +1 -0
  72. package/dist/components/ds-input-time.d.ts +11 -0
  73. package/dist/components/ds-input-time.js +2 -0
  74. package/dist/components/ds-input-time.js.map +1 -0
  75. package/dist/components/ds-input.js +1 -1
  76. package/dist/components/ds-markdown.js +1 -1
  77. package/dist/components/ds-menu.js +1 -1
  78. package/dist/components/ds-message-actions.js +1 -1
  79. package/dist/components/ds-message-bubble.js +1 -1
  80. package/dist/components/ds-message-bubble.js.map +1 -1
  81. package/dist/components/ds-message-composer.js +1 -1
  82. package/dist/components/ds-message-scroller.js +1 -1
  83. package/dist/components/ds-message.js +1 -1
  84. package/dist/components/ds-mobile-bar-nav.js +1 -1
  85. package/dist/components/ds-mobile-header.js +1 -1
  86. package/dist/components/ds-mobile-section-switcher.js +1 -1
  87. package/dist/components/ds-mobile-sheet-nav.js +1 -1
  88. package/dist/components/ds-modal.js +1 -1
  89. package/dist/components/ds-pagination.js +1 -1
  90. package/dist/components/ds-panel-nav.js +1 -1
  91. package/dist/components/ds-panel-sub-nav.js +1 -1
  92. package/dist/components/ds-panel-tool-header.js +1 -1
  93. package/dist/components/ds-panel-tool-search.js +1 -1
  94. package/dist/components/ds-panel-tools.js +1 -1
  95. package/dist/components/ds-paper-texture.js +1 -1
  96. package/dist/components/ds-radio.js +1 -1
  97. package/dist/components/ds-score.js +1 -1
  98. package/dist/components/ds-scroll-overlay.js +1 -1
  99. package/dist/components/ds-select.js +1 -1
  100. package/dist/components/ds-shell-app.js +1 -1
  101. package/dist/components/ds-shell-page.js +1 -1
  102. package/dist/components/ds-shell-tools.js +1 -1
  103. package/dist/components/ds-skeleton.js +1 -1
  104. package/dist/components/ds-slider.js +1 -1
  105. package/dist/components/ds-slider.js.map +1 -1
  106. package/dist/components/ds-swatch-picker.js +1 -1
  107. package/dist/components/ds-switch.js +1 -1
  108. package/dist/components/ds-tab-group.js +1 -1
  109. package/dist/components/ds-table-filter.js +1 -1
  110. package/dist/components/ds-table-filter.js.map +1 -1
  111. package/dist/components/ds-table-group.js +1 -1
  112. package/dist/components/ds-table-preferences.js +1 -1
  113. package/dist/components/ds-table-preferences.js.map +1 -1
  114. package/dist/components/ds-table-saved-views.js +1 -1
  115. package/dist/components/ds-table-saved-views.js.map +1 -1
  116. package/dist/components/ds-table-search.js +1 -1
  117. package/dist/components/ds-table-search.js.map +1 -1
  118. package/dist/components/ds-table-sort.js +1 -1
  119. package/dist/components/ds-table-sort.js.map +1 -1
  120. package/dist/components/ds-table-toolbar.js +1 -1
  121. package/dist/components/ds-table.js +1 -1
  122. package/dist/components/ds-tag.js +1 -1
  123. package/dist/components/ds-text.js +1 -1
  124. package/dist/components/ds-textarea.js +1 -1
  125. package/dist/components/ds-textarea.js.map +1 -1
  126. package/dist/components/ds-time-picker.d.ts +11 -0
  127. package/dist/components/ds-time-picker.js +2 -0
  128. package/dist/components/ds-time-picker.js.map +1 -0
  129. package/dist/components/ds-toast.js +1 -1
  130. package/dist/components/ds-tooltip-chart.js +1 -1
  131. package/dist/components/ds-tooltip.js +1 -1
  132. package/dist/components/ds-typing-indicator.js +1 -1
  133. package/dist/components/{p-CI7VfYC3.js → p-2GVGhrh0.js} +2 -2
  134. package/dist/components/p-7O-2D29W.js +2 -0
  135. package/dist/components/p-7O-2D29W.js.map +1 -0
  136. package/dist/components/{p-CE540WZ7.js → p-8oRkhvjy.js} +2 -2
  137. package/dist/components/p-B27_chI7.js +2 -0
  138. package/dist/components/p-B27_chI7.js.map +1 -0
  139. package/dist/components/{p-xHGqrz_p.js → p-BOhpMUwO.js} +2 -2
  140. package/dist/components/{p-DdspY23v.js → p-BV5T1hzN.js} +2 -2
  141. package/dist/components/{p-DTDLlinw.js → p-BWfzaSc3.js} +2 -2
  142. package/dist/components/{p-CLGtPE0K.js → p-BgLI9JoT.js} +2 -2
  143. package/dist/components/{p-DGzn4k4h.js → p-C-dHtQMi.js} +2 -2
  144. package/dist/components/p-C0CE2v5D.js +2 -0
  145. package/dist/components/{p-yZRXPHDe.js → p-C2JnoaWI.js} +2 -2
  146. package/dist/components/{p-umAf0fBn.js → p-C4m8y9ki.js} +2 -2
  147. package/dist/components/{p-CAxDdYjh.js → p-CDJ2Ntcq.js} +2 -2
  148. package/dist/components/{p-DQQFN2sw.js → p-CMQUuGvl.js} +2 -2
  149. package/dist/components/{p-BQaO7cg_.js → p-CQ5RwY2C.js} +2 -2
  150. package/dist/components/p-CQIh2yRP.js +2 -0
  151. package/dist/components/{p-C1_3CVma.js.map → p-CQIh2yRP.js.map} +1 -1
  152. package/dist/components/{p-DEGNrPLe.js → p-CWPT3aOB.js} +2 -2
  153. package/dist/components/p-CWog26I_.js +2 -0
  154. package/dist/components/p-CWog26I_.js.map +1 -0
  155. package/dist/components/{p-beRFLHbB.js → p-CaNCGKEJ.js} +2 -2
  156. package/dist/components/p-CbSUyv5B.js +2 -0
  157. package/dist/components/{p-BINSI_KF.js.map → p-CbSUyv5B.js.map} +1 -1
  158. package/dist/components/{p-Dhw_W8nk.js → p-Cc3ZUQlJ.js} +2 -2
  159. package/dist/components/p-Cc3ZUQlJ.js.map +1 -0
  160. package/dist/components/{p-DFjIBS5B.js → p-Ce4zy8q1.js} +2 -2
  161. package/dist/components/{p-BcdHgPi5.js → p-CeXf9-X3.js} +2 -2
  162. package/dist/components/{p-omPm8_vx.js → p-Cga6Ex0E.js} +2 -2
  163. package/dist/components/{p-y06IxxoN.js → p-Cl9phSf0.js} +2 -2
  164. package/dist/components/{p-Dk-8Ju0Q.js → p-ClJhuG5Y.js} +2 -2
  165. package/dist/components/{p-BmFeeR4q.js → p-CqW2eyiF.js} +2 -2
  166. package/dist/components/p-Cus1Sigh.js +2 -0
  167. package/dist/components/{p-N5SHSVo2.js.map → p-Cus1Sigh.js.map} +1 -1
  168. package/dist/components/{p-CzbsTZt7.js → p-Cxr0IQjC.js} +2 -2
  169. package/dist/components/{p-CwqFJMvP.js → p-D7yBIPB6.js} +2 -2
  170. package/dist/components/p-D8rpKod8.js +2 -0
  171. package/dist/components/p-D8rpKod8.js.map +1 -0
  172. package/dist/components/{p-DtLQIMsa.js → p-DBwa1OXP.js} +2 -2
  173. package/dist/components/{p-BQsVI_vO.js → p-DK9Ex3aY.js} +2 -2
  174. package/dist/components/{p-CqlBlv55.js → p-DLXXGgmf.js} +2 -2
  175. package/dist/components/{p-BnzsBNUY.js → p-DVd1TIxi.js} +2 -2
  176. package/dist/components/p-DZ58Sg5a.js.map +1 -1
  177. package/dist/components/{p-CZOiTaNa.js → p-DgG9W9N4.js} +2 -2
  178. package/dist/components/{p-mpk_Mm8_.js → p-DkfM55x8.js} +2 -2
  179. package/dist/components/p-DkikNSSO.js +2 -0
  180. package/dist/components/p-DkikNSSO.js.map +1 -0
  181. package/dist/components/{p-C7CZ9pnP.js → p-Dryt3COt.js} +2 -2
  182. package/dist/components/{p-eo_pmPqp.js → p-Ds51RgCi.js} +2 -2
  183. package/dist/components/p-DtkLtKY0.js +2 -0
  184. package/dist/components/p-DtkLtKY0.js.map +1 -0
  185. package/dist/components/{p-C8ek-1SP.js → p-DvzI2A_M.js} +2 -2
  186. package/dist/components/p-J5x-QtlD.js +2 -0
  187. package/dist/components/{p-beCz9OnD.js.map → p-J5x-QtlD.js.map} +1 -1
  188. package/dist/components/{p-CSnsz3Eb.js → p-Jaqdfw4E.js} +2 -2
  189. package/dist/components/p-MQ36mEgn.js +2 -0
  190. package/dist/components/{p-UAIxh67Q.js.map → p-MQ36mEgn.js.map} +1 -1
  191. package/dist/components/{p-BnWxbhFP.js → p-PmcUwTQ_.js} +2 -2
  192. package/dist/components/p-TjXGRPik.js +2 -0
  193. package/dist/components/{p-B-9fdIWv.js.map → p-TjXGRPik.js.map} +1 -1
  194. package/dist/components/{p-Cq_Qpe_C.js → p-bM3LH3kc.js} +2 -2
  195. package/dist/components/{p-BPhbwXOv.js → p-ji09W9el.js} +2 -2
  196. package/dist/components/{p-n68x-ZKp.js → p-neWTRxmf.js} +2 -2
  197. package/dist/components/{p-BPlWEidl.js → p-rYePOPbJ.js} +2 -2
  198. package/dist/components/{p-D44g2Kw1.js → p-su6y4hLK.js} +2 -2
  199. package/dist/components/p-su6y4hLK.js.map +1 -0
  200. package/dist/components/{p-DC69DgAR.js → p-tNQ0YulU.js} +2 -2
  201. package/dist/components/{p-Cwz9TPVS.js → p-x1wf38q3.js} +2 -2
  202. package/dist/docs/components.json +6485 -3451
  203. package/dist/lib/utils/button-render.d.ts +1 -1
  204. package/dist/lib/utils/clock-time.d.ts +22 -0
  205. package/dist/lib/utils/date-filter-value.d.ts +4 -0
  206. package/dist/lib/utils/index.d.ts +3 -1
  207. package/dist/lib/utils/index.js +133 -0
  208. package/dist/lib/utils/index.js.map +4 -4
  209. package/dist/mcp-data/registry/bar-title.json +2 -2
  210. package/dist/mcp-data/registry/button-inverted.json +580 -0
  211. package/dist/mcp-data/registry/calendar.json +273 -0
  212. package/dist/mcp-data/registry/card-navigation.json +4 -2
  213. package/dist/mcp-data/registry/field.json +19 -14
  214. package/dist/mcp-data/registry/filter-menu.json +6 -10
  215. package/dist/mcp-data/registry/input-date.json +516 -0
  216. package/dist/mcp-data/registry/input-time.json +535 -0
  217. package/dist/mcp-data/registry/input.json +56 -8
  218. package/dist/mcp-data/registry/registry.json +1118 -185
  219. package/dist/mcp-data/registry/select.json +63 -7
  220. package/dist/mcp-data/registry/table-saved-views.json +6 -4
  221. package/dist/mcp-data/registry/textarea.json +2 -2
  222. package/dist/mcp-data/registry/time-picker.json +259 -0
  223. package/dist/react/components.d.ts +5 -0
  224. package/dist/react/components.js +5 -0
  225. package/dist/react/ds-button-inverted.d.ts +13 -0
  226. package/dist/react/ds-button-inverted.js +15 -0
  227. package/dist/react/ds-calendar.d.ts +12 -0
  228. package/dist/react/ds-calendar.js +12 -0
  229. package/dist/react/ds-field.d.ts +1 -1
  230. package/dist/react/ds-input-date.d.ts +12 -0
  231. package/dist/react/ds-input-date.js +12 -0
  232. package/dist/react/ds-input-time.d.ts +12 -0
  233. package/dist/react/ds-input-time.js +12 -0
  234. package/dist/react/ds-time-picker.d.ts +12 -0
  235. package/dist/react/ds-time-picker.js +12 -0
  236. package/dist/types/components/BarTitle/BarTitle.d.ts +1 -0
  237. package/dist/types/components/BarTitle/bar-title-action-chrome.d.ts +2 -0
  238. package/dist/types/components/ButtonInverted/ButtonInverted.d.ts +83 -0
  239. package/dist/types/components/ButtonInverted/index.d.ts +2 -0
  240. package/dist/types/components/Calendar/Calendar.d.ts +32 -0
  241. package/dist/types/components/Calendar/calendar-grid.d.ts +19 -0
  242. package/dist/types/components/Field/Field.d.ts +7 -2
  243. package/dist/types/components/FilterMenu/FilterMenu.d.ts +0 -10
  244. package/dist/types/components/Input/Input.d.ts +10 -0
  245. package/dist/types/components/InputDate/InputDate.d.ts +78 -0
  246. package/dist/types/components/InputTime/InputTime.d.ts +80 -0
  247. package/dist/types/components/Select/Select.d.ts +8 -1
  248. package/dist/types/components/TimePicker/TimePicker.d.ts +33 -0
  249. package/dist/types/components.d.ts +858 -27
  250. package/dist/types/utils/button-render.d.ts +1 -1
  251. package/dist/types/utils/clock-time.d.ts +23 -0
  252. package/dist/types/utils/date-filter-value.d.ts +4 -0
  253. package/dist/types/utils/index.d.ts +3 -1
  254. package/dist/vue/components.d.ts +5 -0
  255. package/dist/vue/components.js +5 -0
  256. package/dist/vue/ds-button-inverted.d.ts +3 -0
  257. package/dist/vue/ds-button-inverted.js +33 -0
  258. package/dist/vue/ds-calendar.d.ts +3 -0
  259. package/dist/vue/ds-calendar.js +16 -0
  260. package/dist/vue/ds-input-date.d.ts +3 -0
  261. package/dist/vue/ds-input-date.js +31 -0
  262. package/dist/vue/ds-input-time.d.ts +3 -0
  263. package/dist/vue/ds-input-time.js +32 -0
  264. package/dist/vue/ds-input.js +2 -0
  265. package/dist/vue/ds-select.js +3 -0
  266. package/dist/vue/ds-time-picker.d.ts +3 -0
  267. package/dist/vue/ds-time-picker.js +16 -0
  268. package/package.json +1 -1
  269. package/dist/components/p-B-9fdIWv.js +0 -2
  270. package/dist/components/p-BINSI_KF.js +0 -2
  271. package/dist/components/p-BbfBvMRR.js +0 -2
  272. package/dist/components/p-BbfBvMRR.js.map +0 -1
  273. package/dist/components/p-C1_3CVma.js +0 -2
  274. package/dist/components/p-Cmj04E5Q.js +0 -2
  275. package/dist/components/p-Cmj04E5Q.js.map +0 -1
  276. package/dist/components/p-D44g2Kw1.js.map +0 -1
  277. package/dist/components/p-D_u8WhlU.js +0 -2
  278. package/dist/components/p-Dhw_W8nk.js.map +0 -1
  279. package/dist/components/p-FPZbS19l.js +0 -2
  280. package/dist/components/p-FPZbS19l.js.map +0 -1
  281. package/dist/components/p-N5SHSVo2.js +0 -2
  282. package/dist/components/p-QjkufCcn.js +0 -2
  283. package/dist/components/p-QjkufCcn.js.map +0 -1
  284. package/dist/components/p-UAIxh67Q.js +0 -2
  285. package/dist/components/p-beCz9OnD.js +0 -2
  286. package/dist/types/components/FilterMenu/filter-menu-calendar.d.ts +0 -13
  287. /package/dist/components/{p-CI7VfYC3.js.map → p-2GVGhrh0.js.map} +0 -0
  288. /package/dist/components/{p-CE540WZ7.js.map → p-8oRkhvjy.js.map} +0 -0
  289. /package/dist/components/{p-xHGqrz_p.js.map → p-BOhpMUwO.js.map} +0 -0
  290. /package/dist/components/{p-DdspY23v.js.map → p-BV5T1hzN.js.map} +0 -0
  291. /package/dist/components/{p-DTDLlinw.js.map → p-BWfzaSc3.js.map} +0 -0
  292. /package/dist/components/{p-CLGtPE0K.js.map → p-BgLI9JoT.js.map} +0 -0
  293. /package/dist/components/{p-DGzn4k4h.js.map → p-C-dHtQMi.js.map} +0 -0
  294. /package/dist/components/{p-D_u8WhlU.js.map → p-C0CE2v5D.js.map} +0 -0
  295. /package/dist/components/{p-yZRXPHDe.js.map → p-C2JnoaWI.js.map} +0 -0
  296. /package/dist/components/{p-umAf0fBn.js.map → p-C4m8y9ki.js.map} +0 -0
  297. /package/dist/components/{p-CAxDdYjh.js.map → p-CDJ2Ntcq.js.map} +0 -0
  298. /package/dist/components/{p-DQQFN2sw.js.map → p-CMQUuGvl.js.map} +0 -0
  299. /package/dist/components/{p-BQaO7cg_.js.map → p-CQ5RwY2C.js.map} +0 -0
  300. /package/dist/components/{p-DEGNrPLe.js.map → p-CWPT3aOB.js.map} +0 -0
  301. /package/dist/components/{p-beRFLHbB.js.map → p-CaNCGKEJ.js.map} +0 -0
  302. /package/dist/components/{p-DFjIBS5B.js.map → p-Ce4zy8q1.js.map} +0 -0
  303. /package/dist/components/{p-BcdHgPi5.js.map → p-CeXf9-X3.js.map} +0 -0
  304. /package/dist/components/{p-omPm8_vx.js.map → p-Cga6Ex0E.js.map} +0 -0
  305. /package/dist/components/{p-y06IxxoN.js.map → p-Cl9phSf0.js.map} +0 -0
  306. /package/dist/components/{p-Dk-8Ju0Q.js.map → p-ClJhuG5Y.js.map} +0 -0
  307. /package/dist/components/{p-BmFeeR4q.js.map → p-CqW2eyiF.js.map} +0 -0
  308. /package/dist/components/{p-CzbsTZt7.js.map → p-Cxr0IQjC.js.map} +0 -0
  309. /package/dist/components/{p-CwqFJMvP.js.map → p-D7yBIPB6.js.map} +0 -0
  310. /package/dist/components/{p-DtLQIMsa.js.map → p-DBwa1OXP.js.map} +0 -0
  311. /package/dist/components/{p-BQsVI_vO.js.map → p-DK9Ex3aY.js.map} +0 -0
  312. /package/dist/components/{p-CqlBlv55.js.map → p-DLXXGgmf.js.map} +0 -0
  313. /package/dist/components/{p-BnzsBNUY.js.map → p-DVd1TIxi.js.map} +0 -0
  314. /package/dist/components/{p-CZOiTaNa.js.map → p-DgG9W9N4.js.map} +0 -0
  315. /package/dist/components/{p-mpk_Mm8_.js.map → p-DkfM55x8.js.map} +0 -0
  316. /package/dist/components/{p-C7CZ9pnP.js.map → p-Dryt3COt.js.map} +0 -0
  317. /package/dist/components/{p-eo_pmPqp.js.map → p-Ds51RgCi.js.map} +0 -0
  318. /package/dist/components/{p-C8ek-1SP.js.map → p-DvzI2A_M.js.map} +0 -0
  319. /package/dist/components/{p-CSnsz3Eb.js.map → p-Jaqdfw4E.js.map} +0 -0
  320. /package/dist/components/{p-BnWxbhFP.js.map → p-PmcUwTQ_.js.map} +0 -0
  321. /package/dist/components/{p-Cq_Qpe_C.js.map → p-bM3LH3kc.js.map} +0 -0
  322. /package/dist/components/{p-BPhbwXOv.js.map → p-ji09W9el.js.map} +0 -0
  323. /package/dist/components/{p-n68x-ZKp.js.map → p-neWTRxmf.js.map} +0 -0
  324. /package/dist/components/{p-BPlWEidl.js.map → p-rYePOPbJ.js.map} +0 -0
  325. /package/dist/components/{p-DC69DgAR.js.map → p-tNQ0YulU.js.map} +0 -0
  326. /package/dist/components/{p-Cwz9TPVS.js.map → p-x1wf38q3.js.map} +0 -0
@@ -0,0 +1,259 @@
1
+ {
2
+ "$schema": "https://ui.shadcn.com/schema/registry-item.json",
3
+ "name": "time-picker",
4
+ "title": "TimePicker",
5
+ "description": "Bounded 12-hour clock lists for choosing hour, minute, and AM/PM, reused by form time fields.",
6
+ "type": "registry:ui",
7
+ "meta": {
8
+ "library": "@ds-mo/ui",
9
+ "distribution": "npm",
10
+ "storybook": "https://zainadeel.github.io/compomo/?path=/story/time-picker",
11
+ "source": "src/wc/components/TimePicker/TimePicker.tsx",
12
+ "intentStatus": "complete",
13
+ "intent": {
14
+ "audience": "general",
15
+ "status": "stable",
16
+ "summary": "Bounded 12-hour clock lists for choosing hour, minute, and AM/PM, reused by form time fields.",
17
+ "useWhen": [
18
+ "A user picks a clock time from hour, minute, and AM/PM lists.",
19
+ "A time field needs 32px clock tiles that match calendar day geometry and the shared choice-list selected treatment."
20
+ ],
21
+ "avoidWhen": [
22
+ "The user types a time without opening a picker; the owning field keeps that editable value.",
23
+ "The value is a calendar date rather than a clock time.",
24
+ "The user chooses from a finite set of named schedule options rather than an exact time."
25
+ ],
26
+ "alternatives": [
27
+ {
28
+ "when": "The time is a form field that can be typed or picked.",
29
+ "component": "component:ds-input-time",
30
+ "reason": "InputTime owns the editable field, form association, and the time-picker popup."
31
+ },
32
+ {
33
+ "when": "The value is a calendar date.",
34
+ "component": "component:ds-calendar",
35
+ "reason": "Calendar owns the month grid for single dates and ranges."
36
+ }
37
+ ],
38
+ "commonlyComposedWith": [
39
+ "component:ds-input-time",
40
+ "component:ds-text"
41
+ ],
42
+ "accessibility": [
43
+ "Hour, minute, and AM/PM are separate labelled listboxes without visible column headings. Each list keeps one tab stop on the selected option.",
44
+ "Arrow keys move to the next or previous option and stop at the first and last values; they do not wrap. Home and End jump to those ends. Left and Right move between columns and stop at Hour and AM/PM.",
45
+ "Inactive pickers disable every option. Optional min and max times disable combinations outside that inclusive bound."
46
+ ],
47
+ "states": [
48
+ "Selected hour, minute, and period tiles use the shared interaction-fill selected wash and primary text. Resting tiles use secondary text on a transparent 32px square.",
49
+ "Lists are finite. Hour runs 1 through 12, minutes follow the step, and AM/PM has two values. Scrolling and keyboard movement stop at those ends instead of looping.",
50
+ "An empty value highlights 12:00 AM so the lists have a resting selection without inventing a second empty state."
51
+ ],
52
+ "responsiveBehavior": [
53
+ "The three columns fill the width supplied by the owner. Tile size, 4px gaps, and the seven-tile list viewport are owned here; the owner supplies the popup or pane width."
54
+ ],
55
+ "frameworkCaveats": {
56
+ "customElements": [
57
+ "Listen for dsChange. The detail is the clock time string HH:MM."
58
+ ],
59
+ "react": [
60
+ "Use DsTimePicker, bind value, and handle onDsChange."
61
+ ]
62
+ },
63
+ "references": [
64
+ {
65
+ "label": "Storybook examples",
66
+ "path": "src/wc/components/TimePicker/TimePicker.stories.ts"
67
+ }
68
+ ]
69
+ },
70
+ "api": {
71
+ "props": {
72
+ "autoFocus": {
73
+ "type": "boolean",
74
+ "resolvedType": "boolean",
75
+ "attribute": "auto-focus",
76
+ "default": "false",
77
+ "required": false,
78
+ "mutable": false,
79
+ "description": "Move keyboard focus into the hour list after the picker is rendered."
80
+ },
81
+ "isInactive": {
82
+ "type": "boolean",
83
+ "resolvedType": "boolean",
84
+ "attribute": "is-inactive",
85
+ "default": "false",
86
+ "required": false,
87
+ "mutable": false
88
+ },
89
+ "max": {
90
+ "type": "string | undefined",
91
+ "resolvedType": "string | undefined",
92
+ "attribute": "max",
93
+ "required": false,
94
+ "mutable": false
95
+ },
96
+ "min": {
97
+ "type": "string | undefined",
98
+ "resolvedType": "string | undefined",
99
+ "attribute": "min",
100
+ "required": false,
101
+ "mutable": false
102
+ },
103
+ "step": {
104
+ "type": "string | number",
105
+ "resolvedType": "number | string",
106
+ "attribute": "step",
107
+ "default": "60",
108
+ "required": false,
109
+ "mutable": false,
110
+ "description": "Native time step in seconds. Defaults to minutes (`60`)."
111
+ },
112
+ "value": {
113
+ "type": "string",
114
+ "resolvedType": "string",
115
+ "attribute": "value",
116
+ "default": "''",
117
+ "required": false,
118
+ "mutable": false,
119
+ "description": "Clock value as `HH:MM`."
120
+ }
121
+ },
122
+ "events": [
123
+ {
124
+ "name": "dsChange",
125
+ "detail": "string",
126
+ "bubbles": true,
127
+ "cancelable": true,
128
+ "composed": true
129
+ }
130
+ ],
131
+ "methods": [
132
+ {
133
+ "name": "setFocus",
134
+ "signature": "setFocus() => Promise<void>"
135
+ }
136
+ ],
137
+ "slots": []
138
+ },
139
+ "props": {
140
+ "autoFocus": {
141
+ "type": "boolean",
142
+ "resolvedType": "boolean",
143
+ "attribute": "auto-focus",
144
+ "default": "false",
145
+ "required": false,
146
+ "mutable": false,
147
+ "description": "Move keyboard focus into the hour list after the picker is rendered."
148
+ },
149
+ "isInactive": {
150
+ "type": "boolean",
151
+ "resolvedType": "boolean",
152
+ "attribute": "is-inactive",
153
+ "default": "false",
154
+ "required": false,
155
+ "mutable": false
156
+ },
157
+ "max": {
158
+ "type": "string | undefined",
159
+ "resolvedType": "string | undefined",
160
+ "attribute": "max",
161
+ "required": false,
162
+ "mutable": false
163
+ },
164
+ "min": {
165
+ "type": "string | undefined",
166
+ "resolvedType": "string | undefined",
167
+ "attribute": "min",
168
+ "required": false,
169
+ "mutable": false
170
+ },
171
+ "step": {
172
+ "type": "string | number",
173
+ "resolvedType": "number | string",
174
+ "attribute": "step",
175
+ "default": "60",
176
+ "required": false,
177
+ "mutable": false,
178
+ "description": "Native time step in seconds. Defaults to minutes (`60`)."
179
+ },
180
+ "value": {
181
+ "type": "string",
182
+ "resolvedType": "string",
183
+ "attribute": "value",
184
+ "default": "''",
185
+ "required": false,
186
+ "mutable": false,
187
+ "description": "Clock value as `HH:MM`."
188
+ }
189
+ },
190
+ "events": [
191
+ {
192
+ "name": "dsChange",
193
+ "detail": "string",
194
+ "bubbles": true,
195
+ "cancelable": true,
196
+ "composed": true
197
+ }
198
+ ],
199
+ "methods": [
200
+ {
201
+ "name": "setFocus",
202
+ "signature": "setFocus() => Promise<void>"
203
+ }
204
+ ],
205
+ "slots": [],
206
+ "exports": {
207
+ "customElement": "ds-time-picker",
208
+ "react": "DsTimePicker",
209
+ "vue": "DsTimePicker",
210
+ "angular": "DsTimePicker"
211
+ },
212
+ "consumption": {
213
+ "install": "npm install @ds-mo/ui @ds-mo/tokens @ds-mo/icons",
214
+ "cssSetup": "import '@ds-mo/tokens';\nimport '@ds-mo/tokens/reset';\nimport '@ds-mo/tokens/globals';",
215
+ "customElements": {
216
+ "import": "import '@ds-mo/ui/dist/components/ds-time-picker.js';",
217
+ "example": "<ds-time-picker></ds-time-picker>"
218
+ },
219
+ "react": {
220
+ "import": "import { DsTimePicker } from '@ds-mo/ui/react';",
221
+ "example": "<DsTimePicker />"
222
+ },
223
+ "vue": {
224
+ "import": "import { DsTimePicker } from '@ds-mo/ui/vue';",
225
+ "example": "<DsTimePicker />"
226
+ },
227
+ "angular": {
228
+ "import": "import { DsTimePicker } from '@ds-mo/ui/angular/ds-time-picker';",
229
+ "example": "<ds-time-picker></ds-time-picker>"
230
+ },
231
+ "peerDependencies": {
232
+ "required": [
233
+ "@ds-mo/tokens ^6.5.1",
234
+ "@ds-mo/icons ^7.0.0"
235
+ ],
236
+ "frameworks": "Custom Elements; React 18/19 wrappers; Vue 3 wrappers; Angular 19-22 standalone adapters."
237
+ }
238
+ }
239
+ },
240
+ "dependencies": [
241
+ "@ds-mo/ui",
242
+ "@ds-mo/tokens"
243
+ ],
244
+ "registryDependencies": [
245
+ "text"
246
+ ],
247
+ "files": [
248
+ {
249
+ "path": "src/wc/components/TimePicker/TimePicker.css",
250
+ "content": "@import '../../utils/radius.css';\n@import '../../utils/control-density.css';\n@import '../../utils/focus-ring.css';\n@import '../../utils/interaction-fill.css';\n@import '../../utils/forced-colors.css';\n\n:host {\n display: flex;\n min-height: 0;\n flex-direction: column;\n}\n\n.time-picker {\n display: grid;\n grid-template-columns: repeat(3, minmax(var(--dimension-size-400), 1fr));\n column-gap: var(--dimension-space-050);\n min-width: calc(\n (var(--dimension-size-400) * 3) + (var(--dimension-space-050) * 2) +\n (var(--ds-time-picker-padding, var(--dimension-space-100)) * 2)\n );\n padding: var(--ds-time-picker-padding, var(--dimension-space-100));\n}\n\n.time-picker__column {\n display: flex;\n min-width: 0;\n flex-direction: column;\n}\n\n.time-picker__list {\n display: flex;\n flex-direction: column;\n gap: var(--dimension-space-050);\n max-height: calc((var(--dimension-size-400) * 7) + (var(--dimension-space-050) * 6));\n overflow-x: hidden;\n overflow-y: auto;\n overscroll-behavior: contain;\n}\n\n.time-picker-tile {\n appearance: none;\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-shrink: 0;\n min-width: 0;\n width: 100%;\n height: var(--dimension-size-400);\n padding: 0;\n border: 0;\n border-radius: var(--dimension-radius-025);\n background: transparent;\n color: var(--color-foreground-primary);\n cursor: default;\n}\n\n.time-picker-tile:disabled {\n cursor: not-allowed;\n}\n",
251
+ "type": "registry:ui"
252
+ },
253
+ {
254
+ "path": "src/wc/components/TimePicker/TimePicker.tsx",
255
+ "content": "import {\n Component,\n Element,\n Event,\n EventEmitter,\n Method,\n Prop,\n Watch,\n h,\n Host,\n} from '@stencil/core';\nimport {\n CLOCK_HOURS,\n CLOCK_PERIODS,\n clockMinuteStep,\n clockMinutes,\n isClockTimeStepAligned,\n isClockTimeOutOfRange,\n joinClockTime,\n splitClockTime,\n stepBoundedIndex,\n type ClockPeriod,\n type ClockTimeParts,\n} from '../../utils';\n\ntype TimePickerColumn = 'hour' | 'minute' | 'period';\n\n@Component({\n tag: 'ds-time-picker',\n styleUrl: 'TimePicker.css',\n scoped: true,\n})\nexport class TimePicker {\n @Element() el!: HTMLElement;\n\n /** Clock value as `HH:MM`. */\n @Prop() value: string = '';\n @Prop() min: string | undefined;\n @Prop() max: string | undefined;\n /** Native time step in seconds. Defaults to minutes (`60`). */\n @Prop() step: string | number = 60;\n @Prop() isInactive: boolean = false;\n /** Move keyboard focus into the hour list after the picker is rendered. */\n @Prop() autoFocus: boolean = false;\n\n @Event() dsChange!: EventEmitter<string>;\n\n componentDidLoad() {\n this.scrollSelectedIntoView();\n if (this.autoFocus) void this.setFocus();\n }\n\n @Watch('value')\n onValueChange() {\n this.scrollSelectedIntoView();\n }\n\n @Method()\n async setFocus() {\n this.focusColumn('hour', CLOCK_HOURS);\n }\n\n private parts(): ClockTimeParts {\n return splitClockTime(this.value) ?? { hour12: 12, minute: 0, period: 'AM' };\n }\n\n private minutes(): number[] {\n const minimum = this.min ? splitClockTime(this.min) : null;\n return clockMinutes(clockMinuteStep(this.step), minimum?.minute ?? 0);\n }\n\n private isDisabledTime(iso: string): boolean {\n if (this.isInactive) return true;\n return (\n isClockTimeOutOfRange(iso, this.min, this.max) ||\n !isClockTimeStepAligned(iso, this.step, this.min)\n );\n }\n\n private optionParts(\n column: TimePickerColumn,\n value: number | ClockPeriod\n ): Partial<ClockTimeParts> {\n return column === 'hour'\n ? { hour12: value as number }\n : column === 'minute'\n ? { minute: value as number }\n : { period: value as ClockPeriod };\n }\n\n private isDisabledPart(column: TimePickerColumn, next: Partial<ClockTimeParts>): boolean {\n if (this.isInactive) return true;\n\n const current = { ...this.parts(), ...next };\n const hours: ReadonlyArray<number> = column === 'hour' ? [current.hour12] : CLOCK_HOURS;\n const minutes: ReadonlyArray<number> = column === 'minute' ? [current.minute] : this.minutes();\n const periods: ReadonlyArray<ClockPeriod> =\n column === 'period' ? [current.period] : CLOCK_PERIODS;\n\n return !hours.some(hour =>\n minutes.some(minute =>\n periods.some(\n period => !this.isDisabledTime(joinClockTime({ hour12: hour, minute, period }))\n )\n )\n );\n }\n\n private orderedValues<T>(current: T, values: ReadonlyArray<T>): T[] {\n return [current, ...values.filter(value => value !== current)];\n }\n\n private commit(column: TimePickerColumn, next: Partial<ClockTimeParts>) {\n const current = { ...this.parts(), ...next };\n const hours =\n column === 'hour' ? [current.hour12] : this.orderedValues(current.hour12, CLOCK_HOURS);\n const minutes =\n column === 'minute' ? [current.minute] : this.orderedValues(current.minute, this.minutes());\n const periods =\n column === 'period' ? [current.period] : this.orderedValues(current.period, CLOCK_PERIODS);\n\n for (const hour of hours) {\n for (const minute of minutes) {\n for (const period of periods) {\n const iso = joinClockTime({ hour12: hour, minute, period });\n if (!this.isDisabledTime(iso)) {\n this.dsChange.emit(iso);\n return;\n }\n }\n }\n }\n }\n\n private optionEl(column: TimePickerColumn, value: number | ClockPeriod): HTMLElement | null {\n return this.el.querySelector<HTMLElement>(`[data-${column}-option=\"${value}\"]`);\n }\n\n private scrollSelectedIntoView() {\n const parts = this.parts();\n this.optionEl('hour', parts.hour12)?.scrollIntoView({ block: 'nearest' });\n this.optionEl('minute', parts.minute)?.scrollIntoView({ block: 'nearest' });\n this.optionEl('period', parts.period)?.scrollIntoView({ block: 'nearest' });\n }\n\n private focusOption(column: TimePickerColumn, value: number | ClockPeriod) {\n requestAnimationFrame(() => {\n this.optionEl(column, value)?.focus();\n });\n }\n\n private focusValue(\n column: TimePickerColumn,\n values: ReadonlyArray<number | ClockPeriod>\n ): number | ClockPeriod | undefined {\n const current = this.parts();\n const currentValue =\n column === 'hour' ? current.hour12 : column === 'minute' ? current.minute : current.period;\n if (!this.isDisabledPart(column, this.optionParts(column, currentValue))) return currentValue;\n return values.find(value => !this.isDisabledPart(column, this.optionParts(column, value)));\n }\n\n private focusColumn(column: TimePickerColumn, values: ReadonlyArray<number | ClockPeriod>): void {\n const value = this.focusValue(column, values);\n if (value !== undefined) this.optionEl(column, value)?.focus();\n }\n\n private handleColumnKeyDown = (\n event: KeyboardEvent,\n column: TimePickerColumn,\n values: ReadonlyArray<number | ClockPeriod>,\n current: number | ClockPeriod\n ) => {\n const columns: TimePickerColumn[] = ['hour', 'minute', 'period'];\n const columnIndex = columns.indexOf(column);\n if (event.key === 'ArrowLeft' || event.key === 'ArrowRight') {\n const nextColumn =\n columns[stepBoundedIndex(columnIndex, event.key === 'ArrowLeft' ? -1 : 1, columns.length)];\n if (!nextColumn || nextColumn === column) {\n event.preventDefault();\n return;\n }\n event.preventDefault();\n const nextValues =\n nextColumn === 'hour'\n ? CLOCK_HOURS\n : nextColumn === 'minute'\n ? this.minutes()\n : CLOCK_PERIODS;\n const nextValue = this.focusValue(nextColumn, nextValues);\n if (nextValue !== undefined) this.focusOption(nextColumn, nextValue);\n return;\n }\n\n let offset: number | null = null;\n if (event.key === 'ArrowUp') offset = -1;\n else if (event.key === 'ArrowDown') offset = 1;\n else if (event.key === 'Home' || event.key === 'End') offset = 0;\n if (offset === null) return;\n event.preventDefault();\n let next: number | ClockPeriod | undefined;\n if (event.key === 'Home') {\n next = values.find(value => !this.isDisabledPart(column, this.optionParts(column, value)));\n } else if (event.key === 'End') {\n for (let index = values.length - 1; index >= 0; index -= 1) {\n const value = values[index];\n if (value !== undefined && !this.isDisabledPart(column, this.optionParts(column, value))) {\n next = value;\n break;\n }\n }\n } else {\n const direction = offset;\n let index = values.indexOf(current);\n if (index < 0) index = direction > 0 ? -1 : values.length;\n for (\n let candidate = index + direction;\n candidate >= 0 && candidate < values.length;\n candidate += direction\n ) {\n const value = values[candidate];\n if (value !== undefined && !this.isDisabledPart(column, this.optionParts(column, value))) {\n next = value;\n break;\n }\n }\n }\n if (next === undefined) return;\n this.focusOption(column, next);\n };\n\n private renderTile(\n column: TimePickerColumn,\n value: number | ClockPeriod,\n selected: boolean,\n focused: boolean,\n label: string,\n values: ReadonlyArray<number | ClockPeriod>\n ) {\n const next = this.optionParts(column, value);\n const disabled = this.isDisabledPart(column, next);\n return (\n <button\n type=\"button\"\n role=\"option\"\n data-hour-option={column === 'hour' ? String(value) : undefined}\n data-minute-option={column === 'minute' ? String(value) : undefined}\n data-period-option={column === 'period' ? String(value) : undefined}\n class={{\n 'time-picker-tile': true,\n 'time-picker-tile--selected': selected,\n 'ds-focus-ring-inset': true,\n 'ds-interaction-fill': !disabled,\n 'ds-interaction-fill--selected': selected && !disabled,\n }}\n disabled={disabled}\n aria-selected={selected ? 'true' : 'false'}\n tabIndex={focused ? 0 : -1}\n onClick={() => this.commit(column, next)}\n onKeyDown={event => this.handleColumnKeyDown(event, column, values, value)}\n >\n <ds-text\n class=\"ds-interaction-fill__content\"\n as=\"span\"\n variant=\"text-body-medium\"\n color={selected ? 'primary' : 'secondary'}\n >\n {label}\n </ds-text>\n </button>\n );\n }\n\n render() {\n const parts = this.parts();\n const minutes = this.minutes();\n const minuteValues = minutes.includes(parts.minute)\n ? minutes\n : [...minutes, parts.minute].sort((a, b) => a - b);\n const hourFocus = this.focusValue('hour', CLOCK_HOURS);\n const minuteFocus = this.focusValue('minute', minuteValues);\n const periodFocus = this.focusValue('period', CLOCK_PERIODS);\n\n return (\n <Host>\n <div class=\"time-picker\" role=\"group\" aria-label=\"Choose time\">\n <div class=\"time-picker__column\">\n <div class=\"time-picker__list\" role=\"listbox\" aria-label=\"Hour\">\n {CLOCK_HOURS.map(hour =>\n this.renderTile(\n 'hour',\n hour,\n hour === parts.hour12,\n hour === hourFocus,\n String(hour),\n CLOCK_HOURS\n )\n )}\n </div>\n </div>\n <div class=\"time-picker__column\">\n <div class=\"time-picker__list\" role=\"listbox\" aria-label=\"Minute\">\n {minuteValues.map(minute =>\n this.renderTile(\n 'minute',\n minute,\n minute === parts.minute,\n minute === minuteFocus,\n String(minute).padStart(2, '0'),\n minuteValues\n )\n )}\n </div>\n </div>\n <div class=\"time-picker__column\">\n <div class=\"time-picker__list\" role=\"listbox\" aria-label=\"AM/PM\">\n {CLOCK_PERIODS.map(period =>\n this.renderTile(\n 'period',\n period,\n period === parts.period,\n period === periodFocus,\n period,\n CLOCK_PERIODS\n )\n )}\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n",
256
+ "type": "registry:ui"
257
+ }
258
+ ]
259
+ }
@@ -18,7 +18,9 @@ export { DsBarTitle } from "./ds-bar-title.js";
18
18
  export { DsBarWorkflow } from "./ds-bar-workflow.js";
19
19
  export { DsBreadcrumb } from "./ds-breadcrumb.js";
20
20
  export { DsButtonFilled } from "./ds-button-filled.js";
21
+ export { DsButtonInverted } from "./ds-button-inverted.js";
21
22
  export { DsButtonUnfilled } from "./ds-button-unfilled.js";
23
+ export { DsCalendar } from "./ds-calendar.js";
22
24
  export { DsCardActionCenter } from "./ds-card-action-center.js";
23
25
  export { DsCardChart } from "./ds-card-chart.js";
24
26
  export { DsCardNavigation } from "./ds-card-navigation.js";
@@ -38,6 +40,8 @@ export { DsEmptyState } from "./ds-empty-state.js";
38
40
  export { DsField } from "./ds-field.js";
39
41
  export { DsFilterMenu } from "./ds-filter-menu.js";
40
42
  export { DsIcon } from "./ds-icon.js";
43
+ export { DsInputDate } from "./ds-input-date.js";
44
+ export { DsInputTime } from "./ds-input-time.js";
41
45
  export { DsInput } from "./ds-input.js";
42
46
  export { DsLoader } from "./ds-loader.js";
43
47
  export { DsMarkdown } from "./ds-markdown.js";
@@ -82,6 +86,7 @@ export { DsTable } from "./ds-table.js";
82
86
  export { DsTag } from "./ds-tag.js";
83
87
  export { DsText } from "./ds-text.js";
84
88
  export { DsTextarea } from "./ds-textarea.js";
89
+ export { DsTimePicker } from "./ds-time-picker.js";
85
90
  export { DsToast } from "./ds-toast.js";
86
91
  export { DsTooltipChart } from "./ds-tooltip-chart.js";
87
92
  export { DsTooltip } from "./ds-tooltip.js";
@@ -19,7 +19,9 @@ export { DsBarTitle } from "./ds-bar-title.js";
19
19
  export { DsBarWorkflow } from "./ds-bar-workflow.js";
20
20
  export { DsBreadcrumb } from "./ds-breadcrumb.js";
21
21
  export { DsButtonFilled } from "./ds-button-filled.js";
22
+ export { DsButtonInverted } from "./ds-button-inverted.js";
22
23
  export { DsButtonUnfilled } from "./ds-button-unfilled.js";
24
+ export { DsCalendar } from "./ds-calendar.js";
23
25
  export { DsCardActionCenter } from "./ds-card-action-center.js";
24
26
  export { DsCardChart } from "./ds-card-chart.js";
25
27
  export { DsCardNavigation } from "./ds-card-navigation.js";
@@ -39,6 +41,8 @@ export { DsEmptyState } from "./ds-empty-state.js";
39
41
  export { DsField } from "./ds-field.js";
40
42
  export { DsFilterMenu } from "./ds-filter-menu.js";
41
43
  export { DsIcon } from "./ds-icon.js";
44
+ export { DsInputDate } from "./ds-input-date.js";
45
+ export { DsInputTime } from "./ds-input-time.js";
42
46
  export { DsInput } from "./ds-input.js";
43
47
  export { DsLoader } from "./ds-loader.js";
44
48
  export { DsMarkdown } from "./ds-markdown.js";
@@ -83,6 +87,7 @@ export { DsTable } from "./ds-table.js";
83
87
  export { DsTag } from "./ds-tag.js";
84
88
  export { DsText } from "./ds-text.js";
85
89
  export { DsTextarea } from "./ds-textarea.js";
90
+ export { DsTimePicker } from "./ds-time-picker.js";
86
91
  export { DsToast } from "./ds-toast.js";
87
92
  export { DsTooltipChart } from "./ds-tooltip-chart.js";
88
93
  export { DsTooltip } from "./ds-tooltip.js";
@@ -0,0 +1,13 @@
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 DsButtonInvertedCustomEvent } from "@ds-mo/ui";
7
+ import type { Components } from "@ds-mo/ui/dist/components";
8
+ import { DsButtonInverted as DsButtonInvertedElement } from "@ds-mo/ui/dist/components/ds-button-inverted.js";
9
+ export type DsButtonInvertedEvents = {
10
+ onDsClick: EventName<DsButtonInvertedCustomEvent<MouseEvent>>;
11
+ onDsMenuClick: EventName<DsButtonInvertedCustomEvent<MouseEvent>>;
12
+ };
13
+ export declare const DsButtonInverted: StencilReactComponent<DsButtonInvertedElement, DsButtonInvertedEvents, Components.DsButtonInverted>;
@@ -0,0 +1,15 @@
1
+ 'use client';
2
+ import { createComponent } from './react-runtime.js';
3
+ import React from 'react';
4
+ import { DsButtonInverted as DsButtonInvertedElement, defineCustomElement as defineDsButtonInverted } from "@ds-mo/ui/dist/components/ds-button-inverted.js";
5
+ export const DsButtonInverted = /*@__PURE__*/ createComponent({
6
+ tagName: 'ds-button-inverted',
7
+ elementClass: DsButtonInvertedElement,
8
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
9
+ react: React,
10
+ events: {
11
+ onDsClick: 'dsClick',
12
+ onDsMenuClick: 'dsMenuClick'
13
+ },
14
+ defineCustomElement: defineDsButtonInverted
15
+ });
@@ -0,0 +1,12 @@
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 DsCalendarCustomEvent } from "@ds-mo/ui";
7
+ import type { Components } from "@ds-mo/ui/dist/components";
8
+ import { DsCalendar as DsCalendarElement } from "@ds-mo/ui/dist/components/ds-calendar.js";
9
+ export type DsCalendarEvents = {
10
+ onDsChange: EventName<DsCalendarCustomEvent<string>>;
11
+ };
12
+ export declare const DsCalendar: StencilReactComponent<DsCalendarElement, DsCalendarEvents, Components.DsCalendar>;
@@ -0,0 +1,12 @@
1
+ 'use client';
2
+ import { createComponent } from './react-runtime.js';
3
+ import React from 'react';
4
+ import { DsCalendar as DsCalendarElement, defineCustomElement as defineDsCalendar } from "@ds-mo/ui/dist/components/ds-calendar.js";
5
+ export const DsCalendar = /*@__PURE__*/ createComponent({
6
+ tagName: 'ds-calendar',
7
+ elementClass: DsCalendarElement,
8
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
9
+ react: React,
10
+ events: { onDsChange: 'dsChange' },
11
+ defineCustomElement: defineDsCalendar
12
+ });
@@ -6,4 +6,4 @@ import type { StencilReactComponent } from './react-runtime.js';
6
6
  import type { Components } from "@ds-mo/ui/dist/components";
7
7
  import { DsField as DsFieldElement } from "@ds-mo/ui/dist/components/ds-field.js";
8
8
  export type DsFieldEvents = NonNullable<unknown>;
9
- export declare const DsField: StencilReactComponent<DsFieldElement, DsFieldEvents, Components.DsField, 'label'>;
9
+ export declare const DsField: StencilReactComponent<DsFieldElement, DsFieldEvents, Components.DsField>;
@@ -0,0 +1,12 @@
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 DsInputDateCustomEvent } from "@ds-mo/ui";
7
+ import type { Components } from "@ds-mo/ui/dist/components";
8
+ import { DsInputDate as DsInputDateElement } from "@ds-mo/ui/dist/components/ds-input-date.js";
9
+ export type DsInputDateEvents = {
10
+ onDsChange: EventName<DsInputDateCustomEvent<string>>;
11
+ };
12
+ export declare const DsInputDate: StencilReactComponent<DsInputDateElement, DsInputDateEvents, Components.DsInputDate>;
@@ -0,0 +1,12 @@
1
+ 'use client';
2
+ import { createComponent } from './react-runtime.js';
3
+ import React from 'react';
4
+ import { DsInputDate as DsInputDateElement, defineCustomElement as defineDsInputDate } from "@ds-mo/ui/dist/components/ds-input-date.js";
5
+ export const DsInputDate = /*@__PURE__*/ createComponent({
6
+ tagName: 'ds-input-date',
7
+ elementClass: DsInputDateElement,
8
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
9
+ react: React,
10
+ events: { onDsChange: 'dsChange' },
11
+ defineCustomElement: defineDsInputDate
12
+ });
@@ -0,0 +1,12 @@
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 DsInputTimeCustomEvent } from "@ds-mo/ui";
7
+ import type { Components } from "@ds-mo/ui/dist/components";
8
+ import { DsInputTime as DsInputTimeElement } from "@ds-mo/ui/dist/components/ds-input-time.js";
9
+ export type DsInputTimeEvents = {
10
+ onDsChange: EventName<DsInputTimeCustomEvent<string>>;
11
+ };
12
+ export declare const DsInputTime: StencilReactComponent<DsInputTimeElement, DsInputTimeEvents, Components.DsInputTime>;
@@ -0,0 +1,12 @@
1
+ 'use client';
2
+ import { createComponent } from './react-runtime.js';
3
+ import React from 'react';
4
+ import { DsInputTime as DsInputTimeElement, defineCustomElement as defineDsInputTime } from "@ds-mo/ui/dist/components/ds-input-time.js";
5
+ export const DsInputTime = /*@__PURE__*/ createComponent({
6
+ tagName: 'ds-input-time',
7
+ elementClass: DsInputTimeElement,
8
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
9
+ react: React,
10
+ events: { onDsChange: 'dsChange' },
11
+ defineCustomElement: defineDsInputTime
12
+ });
@@ -0,0 +1,12 @@
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 DsTimePickerCustomEvent } from "@ds-mo/ui";
7
+ import type { Components } from "@ds-mo/ui/dist/components";
8
+ import { DsTimePicker as DsTimePickerElement } from "@ds-mo/ui/dist/components/ds-time-picker.js";
9
+ export type DsTimePickerEvents = {
10
+ onDsChange: EventName<DsTimePickerCustomEvent<string>>;
11
+ };
12
+ export declare const DsTimePicker: StencilReactComponent<DsTimePickerElement, DsTimePickerEvents, Components.DsTimePicker>;
@@ -0,0 +1,12 @@
1
+ 'use client';
2
+ import { createComponent } from './react-runtime.js';
3
+ import React from 'react';
4
+ import { DsTimePicker as DsTimePickerElement, defineCustomElement as defineDsTimePicker } from "@ds-mo/ui/dist/components/ds-time-picker.js";
5
+ export const DsTimePicker = /*@__PURE__*/ createComponent({
6
+ tagName: 'ds-time-picker',
7
+ elementClass: DsTimePickerElement,
8
+ // @ts-ignore - ignore potential React type mismatches between the Stencil Output Target and your project.
9
+ react: React,
10
+ events: { onDsChange: 'dsChange' },
11
+ defineCustomElement: defineDsTimePicker
12
+ });
@@ -69,6 +69,7 @@ export declare class BarTitle {
69
69
  handleActionsChange(): void;
70
70
  private reportActionIdIssues;
71
71
  private get compact();
72
+ private get menuSideOffset();
72
73
  private get effectiveVariant();
73
74
  private get dividerVisible();
74
75
  private get expandedBreadcrumbItems();
@@ -52,6 +52,7 @@ export declare function renderBarTitleActionMenus(options: {
52
52
  visibleActions: BarTitleActionConfigItem[];
53
53
  instanceId: number;
54
54
  resolvedActionItems: BarTitleActionConfigItem[];
55
+ sideOffset?: number | string;
55
56
  openActionMenuId: string;
56
57
  actionMenuInitialFocusVisible: boolean;
57
58
  overflowTrigger: FocusableBarTitleButton | null;
@@ -65,6 +66,7 @@ export declare function renderBarTitleOverflowMenu(options: {
65
66
  showOverflowTrigger: boolean;
66
67
  actionMenuId: string;
67
68
  actionMenuTriggerId: string;
69
+ sideOffset?: number | string;
68
70
  actionsAriaLabel: string;
69
71
  open: boolean;
70
72
  actionMenuInitialFocusVisible: boolean;
@@ -0,0 +1,83 @@
1
+ import { EventEmitter } from '../../stencil-public-runtime';
2
+ import type { ControlInsetDepth } from '../../utils/control-text';
3
+ import type { ButtonPopup, ButtonSize, ButtonVariant, ButtonWidth } from '../../utils/button-types';
4
+ export type ButtonInvertedVariant = ButtonVariant;
5
+ export type ButtonInvertedSize = ButtonSize;
6
+ export type ButtonInvertedWidth = ButtonWidth;
7
+ export type ButtonInvertedPopup = ButtonPopup;
8
+ export declare class ButtonInverted {
9
+ /**
10
+ * Content layout. Default is label-only; pass `icon` for icon-only chrome
11
+ * or `icon-label` for leading icon + text.
12
+ */
13
+ variant: ButtonInvertedVariant;
14
+ /** Control density (height, padding, icon, type). */
15
+ size: ButtonInvertedSize;
16
+ /** Use reduced outer geometry when nested inside a control of the same size. */
17
+ isInset: boolean;
18
+ /** Single removes 4px overall; double removes 8px overall (xs stays single). */
19
+ insetDepth: ControlInsetDepth;
20
+ /** Width fit — hug content (default) or fill the parent. */
21
+ width: ButtonInvertedWidth;
22
+ /** Visible text for `label` / `icon-label` variants. */
23
+ label: string;
24
+ /** Whether the visible label uses the emphasized weight. */
25
+ labelEmphasis: boolean;
26
+ /** Icon name passed to <ds-icon> for `icon` / `icon-label` variants. */
27
+ icon: string;
28
+ /** Use the half-radius treatment instead of the default control radius. */
29
+ rounded: boolean;
30
+ /**
31
+ * Scale down during a physical pointer press.
32
+ * Disable when an owning composite requires fixed child or background geometry.
33
+ */
34
+ pressScale: boolean;
35
+ /** Disables interaction. */
36
+ isInactive: boolean;
37
+ /** Shows an inline loader and prevents interaction without applying inactive opacity. */
38
+ isLoading: boolean;
39
+ /** Native button type. */
40
+ type: 'button' | 'submit' | 'reset';
41
+ /** Accessible name override. Required for icon-only buttons. */
42
+ ariaLabel: string | null;
43
+ /** ID of the popup this button controls. */
44
+ controls: string | undefined;
45
+ /** Controlled disclosure state forwarded to aria-expanded. */
46
+ expanded: boolean | undefined;
47
+ /**
48
+ * The associated menu, picker, or panel is visible, including its exit motion.
49
+ * Holds only the pressed wash and does not set ARIA or selection state.
50
+ */
51
+ surfaceOpen: boolean | undefined;
52
+ /** Popup type exposed to assistive technology. */
53
+ haspopup: ButtonInvertedPopup | undefined;
54
+ /**
55
+ * Append a separate ChevronDown menu segment while preserving the inverted
56
+ * recipe, variant, size, loading, inactive, and width treatment.
57
+ */
58
+ split: boolean;
59
+ /** Accessible name for the appended menu segment in split mode. */
60
+ menuAriaLabel: string;
61
+ /**
62
+ * This action has a menu: implies `aria-haspopup="menu"` and adds the
63
+ * trailing chevron that carries the affordance.
64
+ *
65
+ * Only `label` and `icon-label` are supported. Icon-only menu triggers belong
66
+ * to ButtonUnfilled so the glyph can communicate the overflow affordance.
67
+ */
68
+ hasMenu: boolean;
69
+ dsClick: EventEmitter<MouseEvent>;
70
+ dsMenuClick: EventEmitter<MouseEvent>;
71
+ private buttonEl;
72
+ private menuButtonEl;
73
+ setFocus(segment?: 'primary' | 'menu'): Promise<void>;
74
+ private handleClick;
75
+ private handleMenuClick;
76
+ private get resolvedHaspopup();
77
+ private get resolvedSurfaceOpen();
78
+ private get accessibleName();
79
+ private get doubleInset();
80
+ private buttonClass;
81
+ render(): any;
82
+ }
83
+ //# sourceMappingURL=ButtonInverted.d.ts.map
@@ -0,0 +1,2 @@
1
+ export type { ButtonInvertedPopup, ButtonInvertedSize, ButtonInvertedVariant, ButtonInvertedWidth, } from './ButtonInverted';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,32 @@
1
+ import { EventEmitter } from '../../stencil-public-runtime';
2
+ export type CalendarSelectionMode = 'single' | 'range';
3
+ export declare class Calendar {
4
+ el: HTMLElement;
5
+ /** Single date emits YYYY-MM-DD. Range emits the shared `range:start/end` string. */
6
+ selectionMode: CalendarSelectionMode;
7
+ value: string;
8
+ min: string | undefined;
9
+ max: string | undefined;
10
+ isInactive: boolean;
11
+ /** Move keyboard focus into the grid after the calendar is rendered. */
12
+ autoFocus: boolean;
13
+ dsChange: EventEmitter<string>;
14
+ private month;
15
+ private pendingStart;
16
+ private previewEnd;
17
+ private heldRange;
18
+ componentWillLoad(): void;
19
+ componentDidLoad(): void;
20
+ onValueChange(): void;
21
+ setFocus(): Promise<void>;
22
+ private anchorDate;
23
+ private isDisabled;
24
+ private moveMonth;
25
+ private selectDate;
26
+ private previewRange;
27
+ private clearPreview;
28
+ private focusDate;
29
+ private handleDayKeyDown;
30
+ render(): any;
31
+ }
32
+ //# sourceMappingURL=Calendar.d.ts.map