@ds-mo/ui 15.11.1 → 15.11.2

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 (232) hide show
  1. package/dist/.package-ready.json +1 -1
  2. package/dist/agent-patterns.json +1 -1
  3. package/dist/agent.json +1 -1
  4. package/dist/components/THIRD-PARTY-NOTICES +1 -1
  5. package/dist/components/bundled-dependencies.json +1 -1
  6. package/dist/components/ds-agent-questionnaire.js +1 -1
  7. package/dist/components/ds-agent-response.js +1 -1
  8. package/dist/components/ds-banner.js +1 -1
  9. package/dist/components/ds-bar-nav.js +1 -1
  10. package/dist/components/ds-bar-page-title.js +1 -1
  11. package/dist/components/ds-bar-title.js +1 -1
  12. package/dist/components/ds-bar-workflow.js +1 -1
  13. package/dist/components/ds-button-unfilled.js +1 -1
  14. package/dist/components/ds-calendar.js +1 -1
  15. package/dist/components/ds-card-chart.js +1 -1
  16. package/dist/components/ds-card-overview.js +1 -1
  17. package/dist/components/ds-card-setting.js +1 -1
  18. package/dist/components/ds-chart.js +1 -1
  19. package/dist/components/ds-code-block.js +1 -1
  20. package/dist/components/ds-data-customize.js +1 -1
  21. package/dist/components/ds-data-filter.js +1 -1
  22. package/dist/components/ds-data-group.js +1 -1
  23. package/dist/components/ds-data-preferences.js +1 -1
  24. package/dist/components/ds-data-saved-views.js +1 -1
  25. package/dist/components/ds-data-search.js +1 -1
  26. package/dist/components/ds-data-sort.js +1 -1
  27. package/dist/components/ds-filter-menu.js +1 -1
  28. package/dist/components/ds-input-date.js +1 -1
  29. package/dist/components/ds-input-time.js +1 -1
  30. package/dist/components/ds-input.js +1 -1
  31. package/dist/components/ds-markdown.js +1 -1
  32. package/dist/components/ds-menu.js +1 -1
  33. package/dist/components/ds-message-actions.js +1 -1
  34. package/dist/components/ds-message-composer.js +1 -1
  35. package/dist/components/ds-message-scroller.js +1 -1
  36. package/dist/components/ds-mobile-header.js +1 -1
  37. package/dist/components/ds-mobile-section-switcher.js +1 -1
  38. package/dist/components/ds-mobile-sheet-nav.js +1 -1
  39. package/dist/components/ds-modal.js +1 -1
  40. package/dist/components/ds-pagination.js +1 -1
  41. package/dist/components/ds-panel-nav.js +1 -1
  42. package/dist/components/ds-panel-tool-header.js +1 -1
  43. package/dist/components/ds-panel-tool-search.js +1 -1
  44. package/dist/components/ds-panel-tools.js +1 -1
  45. package/dist/components/ds-select.js +1 -1
  46. package/dist/components/ds-shell-app.js +1 -1
  47. package/dist/components/ds-shell-tools.js +1 -1
  48. package/dist/components/ds-table.js +1 -1
  49. package/dist/components/ds-table.js.map +1 -1
  50. package/dist/components/ds-toast.js +1 -1
  51. package/dist/components/ds-tooltip-chart.js +1 -1
  52. package/dist/components/ds-tooltip.js +1 -1
  53. package/dist/components/{p-B9Q7fXxW.js → p-4qKHg502.js} +2 -2
  54. package/dist/components/{p-DixX2_Bd.js → p-529k8euH.js} +2 -2
  55. package/dist/components/{p-CEB8RFih.js → p-BI6L3JoU.js} +2 -2
  56. package/dist/components/p-BjYoM1f8.js +2 -0
  57. package/dist/components/{p-BqIRExej.js.map → p-BjYoM1f8.js.map} +1 -1
  58. package/dist/components/p-BkKdzYZP.js +2 -0
  59. package/dist/components/{p-B5rN3slq.js.map → p-BkKdzYZP.js.map} +1 -1
  60. package/dist/components/{p-DKG26pp5.js → p-BrJebF5t.js} +2 -2
  61. package/dist/components/{p-y2Sdv9M3.js → p-BvlkO__o.js} +2 -2
  62. package/dist/components/{p-DvMCOJwc.js → p-C31AjGbg.js} +2 -2
  63. package/dist/components/{p-DwFnt0W0.js → p-C4kVTIBc.js} +2 -2
  64. package/dist/components/{p-BNnw_O4e.js → p-C6VWVB87.js} +2 -2
  65. package/dist/components/{p-CaNMVLhm.js → p-CC4X8rpT.js} +2 -2
  66. package/dist/components/{p-S5QCVAdH.js → p-CJ-igzsZ.js} +2 -2
  67. package/dist/components/{p-D-cZ6cRI.js → p-CTstnsLe.js} +2 -2
  68. package/dist/components/{p-Ba-dSshd.js → p-CXF8wj9I.js} +2 -2
  69. package/dist/components/{p-OFJpWJcN.js → p-Cqg9T781.js} +2 -2
  70. package/dist/components/p-D0kzIzGQ.js +2 -0
  71. package/dist/components/p-D0kzIzGQ.js.map +1 -0
  72. package/dist/components/p-DEJLfD7k.js +2 -0
  73. package/dist/components/p-DEJLfD7k.js.map +1 -0
  74. package/dist/components/{p-BkajUPiA.js → p-DHmHllUM.js} +2 -2
  75. package/dist/components/p-DNtwJJOC.js +2 -0
  76. package/dist/components/p-DNtwJJOC.js.map +1 -0
  77. package/dist/components/{p-DfwvHxYi.js → p-DXEInGEq.js} +2 -2
  78. package/dist/components/{p-DGDF4NMV.js → p-DcVK0W4X.js} +2 -2
  79. package/dist/components/{p-Cxk1A7Sx.js → p-Ds58qo_J.js} +2 -2
  80. package/dist/components/{p-CMrHRjjH.js → p-DwcAROOo.js} +2 -2
  81. package/dist/components/{p-CW-7vLUB.js → p-DxVokKm8.js} +2 -2
  82. package/dist/components/{p-CqW2eyiF.js → p-E0RqkUNq.js} +2 -2
  83. package/dist/components/p-HNktxWtF.js +2 -0
  84. package/dist/components/p-HNktxWtF.js.map +1 -0
  85. package/dist/components/{p-DfzXyVoM.js → p-YE1r-XSR.js} +2 -2
  86. package/dist/components/{p-CeXf9-X3.js → p-mSCnWLhL.js} +2 -2
  87. package/dist/components/{p-C8D853vs.js → p-vrRbdZAI.js} +2 -2
  88. package/dist/docs/components.json +16 -16
  89. package/dist/mcp-data/registry/agent-activity.json +2 -2
  90. package/dist/mcp-data/registry/agent-questionnaire.json +2 -2
  91. package/dist/mcp-data/registry/agent-response.json +2 -2
  92. package/dist/mcp-data/registry/agent-source-list.json +2 -2
  93. package/dist/mcp-data/registry/agent-tool-call.json +2 -2
  94. package/dist/mcp-data/registry/attachment-list.json +2 -2
  95. package/dist/mcp-data/registry/avatar.json +2 -2
  96. package/dist/mcp-data/registry/badge.json +2 -2
  97. package/dist/mcp-data/registry/banner.json +2 -2
  98. package/dist/mcp-data/registry/bar-action.json +2 -2
  99. package/dist/mcp-data/registry/bar-nav.json +2 -2
  100. package/dist/mcp-data/registry/bar-page-title.json +2 -2
  101. package/dist/mcp-data/registry/bar-title.json +2 -2
  102. package/dist/mcp-data/registry/bar-workflow.json +2 -2
  103. package/dist/mcp-data/registry/breadcrumb.json +2 -2
  104. package/dist/mcp-data/registry/button-filled.json +2 -2
  105. package/dist/mcp-data/registry/button-inverted.json +2 -2
  106. package/dist/mcp-data/registry/button-unfilled.json +2 -2
  107. package/dist/mcp-data/registry/calendar.json +2 -2
  108. package/dist/mcp-data/registry/card-action-center.json +2 -2
  109. package/dist/mcp-data/registry/card-chart.json +2 -2
  110. package/dist/mcp-data/registry/card-navigation.json +2 -2
  111. package/dist/mcp-data/registry/card-overview.json +2 -2
  112. package/dist/mcp-data/registry/card-setting.json +2 -2
  113. package/dist/mcp-data/registry/card-settings-scope.json +2 -2
  114. package/dist/mcp-data/registry/chart-legend.json +2 -2
  115. package/dist/mcp-data/registry/chart.json +2 -2
  116. package/dist/mcp-data/registry/checkbox-group.json +2 -2
  117. package/dist/mcp-data/registry/checkbox.json +2 -2
  118. package/dist/mcp-data/registry/chip.json +2 -2
  119. package/dist/mcp-data/registry/code-block.json +2 -2
  120. package/dist/mcp-data/registry/conversation-list-item.json +2 -2
  121. package/dist/mcp-data/registry/conversation-list-section.json +2 -2
  122. package/dist/mcp-data/registry/conversation-list.json +2 -2
  123. package/dist/mcp-data/registry/data-customize.json +2 -2
  124. package/dist/mcp-data/registry/data-filter.json +2 -2
  125. package/dist/mcp-data/registry/data-group.json +2 -2
  126. package/dist/mcp-data/registry/data-preferences.json +2 -2
  127. package/dist/mcp-data/registry/data-saved-views.json +2 -2
  128. package/dist/mcp-data/registry/data-search.json +2 -2
  129. package/dist/mcp-data/registry/data-sort.json +2 -2
  130. package/dist/mcp-data/registry/data-toolbar.json +2 -2
  131. package/dist/mcp-data/registry/divider.json +2 -2
  132. package/dist/mcp-data/registry/empty-state.json +2 -2
  133. package/dist/mcp-data/registry/field.json +2 -2
  134. package/dist/mcp-data/registry/filter-menu.json +2 -2
  135. package/dist/mcp-data/registry/icon.json +2 -2
  136. package/dist/mcp-data/registry/inline-banner-settings.json +2 -2
  137. package/dist/mcp-data/registry/input-date.json +3 -3
  138. package/dist/mcp-data/registry/input-time.json +3 -3
  139. package/dist/mcp-data/registry/input.json +2 -2
  140. package/dist/mcp-data/registry/loader.json +2 -2
  141. package/dist/mcp-data/registry/map-cluster-marker.json +2 -2
  142. package/dist/mcp-data/registry/map-entity-marker.json +2 -2
  143. package/dist/mcp-data/registry/map-marker.json +2 -2
  144. package/dist/mcp-data/registry/markdown.json +2 -2
  145. package/dist/mcp-data/registry/menu.json +2 -2
  146. package/dist/mcp-data/registry/message-actions.json +2 -2
  147. package/dist/mcp-data/registry/message-bubble.json +2 -2
  148. package/dist/mcp-data/registry/message-composer.json +2 -2
  149. package/dist/mcp-data/registry/message-scroller.json +2 -2
  150. package/dist/mcp-data/registry/message.json +2 -2
  151. package/dist/mcp-data/registry/mobile-bar-nav.json +2 -2
  152. package/dist/mcp-data/registry/mobile-header.json +2 -2
  153. package/dist/mcp-data/registry/mobile-section-switcher.json +2 -2
  154. package/dist/mcp-data/registry/mobile-sheet-nav.json +2 -2
  155. package/dist/mcp-data/registry/modal.json +2 -2
  156. package/dist/mcp-data/registry/navigation-tab-group.json +2 -2
  157. package/dist/mcp-data/registry/pagination.json +2 -2
  158. package/dist/mcp-data/registry/panel-nav.json +2 -2
  159. package/dist/mcp-data/registry/panel-sub-nav.json +2 -2
  160. package/dist/mcp-data/registry/panel-tool-header.json +2 -2
  161. package/dist/mcp-data/registry/panel-tool-search.json +2 -2
  162. package/dist/mcp-data/registry/panel-tools.json +2 -2
  163. package/dist/mcp-data/registry/paper-texture.json +2 -2
  164. package/dist/mcp-data/registry/radio-tile.json +2 -2
  165. package/dist/mcp-data/registry/radio.json +2 -2
  166. package/dist/mcp-data/registry/registry.json +2 -2
  167. package/dist/mcp-data/registry/score.json +2 -2
  168. package/dist/mcp-data/registry/scroll-overlay.json +2 -2
  169. package/dist/mcp-data/registry/select-toggle.json +2 -2
  170. package/dist/mcp-data/registry/select.json +2 -2
  171. package/dist/mcp-data/registry/setting-row-checkbox.json +2 -2
  172. package/dist/mcp-data/registry/setting-row-radio.json +2 -2
  173. package/dist/mcp-data/registry/setting-row-toggle.json +2 -2
  174. package/dist/mcp-data/registry/shell-app.json +2 -2
  175. package/dist/mcp-data/registry/shell-page.json +2 -2
  176. package/dist/mcp-data/registry/shell-tools.json +2 -2
  177. package/dist/mcp-data/registry/skeleton.json +2 -2
  178. package/dist/mcp-data/registry/slider.json +2 -2
  179. package/dist/mcp-data/registry/swatch-picker.json +2 -2
  180. package/dist/mcp-data/registry/switch.json +2 -2
  181. package/dist/mcp-data/registry/tab-group.json +2 -2
  182. package/dist/mcp-data/registry/table.json +14 -4
  183. package/dist/mcp-data/registry/tag.json +2 -2
  184. package/dist/mcp-data/registry/text.json +2 -2
  185. package/dist/mcp-data/registry/textarea.json +2 -2
  186. package/dist/mcp-data/registry/time-picker.json +2 -2
  187. package/dist/mcp-data/registry/toast.json +2 -2
  188. package/dist/mcp-data/registry/tooltip-chart.json +2 -2
  189. package/dist/mcp-data/registry/tooltip.json +2 -2
  190. package/dist/mcp-data/registry/typing-indicator.json +2 -2
  191. package/dist/types/components/InputDate/InputDate.d.ts +5 -6
  192. package/dist/types/components/InputTime/InputTime.d.ts +5 -6
  193. package/dist/types/components/Table/Table.d.ts +5 -48
  194. package/dist/types/components/Table/table-caption-controller.d.ts +54 -0
  195. package/dist/types/components/Table/table-cell-editor.d.ts +1 -1
  196. package/dist/types/components/Table/table-editing-controller.d.ts +37 -0
  197. package/dist/types/utils/picker-popup-controller.d.ts +24 -0
  198. package/dist/types/utils/select-controller.d.ts +1 -0
  199. package/package.json +6 -6
  200. package/dist/components/p-B5rN3slq.js +0 -2
  201. package/dist/components/p-BT6xQogY.js +0 -2
  202. package/dist/components/p-BT6xQogY.js.map +0 -1
  203. package/dist/components/p-BqIRExej.js +0 -2
  204. package/dist/components/p-CPNA8raE.js +0 -2
  205. package/dist/components/p-CPNA8raE.js.map +0 -1
  206. package/dist/components/p-Djkk338n.js +0 -2
  207. package/dist/components/p-Djkk338n.js.map +0 -1
  208. package/dist/types/utils/cartesian-chart-layout.d.ts +0 -13
  209. package/dist/types/utils/chart-viewport-controller.d.ts +0 -21
  210. /package/dist/components/{p-B9Q7fXxW.js.map → p-4qKHg502.js.map} +0 -0
  211. /package/dist/components/{p-DixX2_Bd.js.map → p-529k8euH.js.map} +0 -0
  212. /package/dist/components/{p-CEB8RFih.js.map → p-BI6L3JoU.js.map} +0 -0
  213. /package/dist/components/{p-DKG26pp5.js.map → p-BrJebF5t.js.map} +0 -0
  214. /package/dist/components/{p-y2Sdv9M3.js.map → p-BvlkO__o.js.map} +0 -0
  215. /package/dist/components/{p-DvMCOJwc.js.map → p-C31AjGbg.js.map} +0 -0
  216. /package/dist/components/{p-DwFnt0W0.js.map → p-C4kVTIBc.js.map} +0 -0
  217. /package/dist/components/{p-BNnw_O4e.js.map → p-C6VWVB87.js.map} +0 -0
  218. /package/dist/components/{p-CaNMVLhm.js.map → p-CC4X8rpT.js.map} +0 -0
  219. /package/dist/components/{p-S5QCVAdH.js.map → p-CJ-igzsZ.js.map} +0 -0
  220. /package/dist/components/{p-D-cZ6cRI.js.map → p-CTstnsLe.js.map} +0 -0
  221. /package/dist/components/{p-Ba-dSshd.js.map → p-CXF8wj9I.js.map} +0 -0
  222. /package/dist/components/{p-OFJpWJcN.js.map → p-Cqg9T781.js.map} +0 -0
  223. /package/dist/components/{p-BkajUPiA.js.map → p-DHmHllUM.js.map} +0 -0
  224. /package/dist/components/{p-DfwvHxYi.js.map → p-DXEInGEq.js.map} +0 -0
  225. /package/dist/components/{p-DGDF4NMV.js.map → p-DcVK0W4X.js.map} +0 -0
  226. /package/dist/components/{p-Cxk1A7Sx.js.map → p-Ds58qo_J.js.map} +0 -0
  227. /package/dist/components/{p-CMrHRjjH.js.map → p-DwcAROOo.js.map} +0 -0
  228. /package/dist/components/{p-CW-7vLUB.js.map → p-DxVokKm8.js.map} +0 -0
  229. /package/dist/components/{p-CqW2eyiF.js.map → p-E0RqkUNq.js.map} +0 -0
  230. /package/dist/components/{p-DfzXyVoM.js.map → p-YE1r-XSR.js.map} +0 -0
  231. /package/dist/components/{p-CeXf9-X3.js.map → p-mSCnWLhL.js.map} +0 -0
  232. /package/dist/components/{p-C8D853vs.js.map → p-vrRbdZAI.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"names":["inputTimeCss","idCounter","INVALID_TIME_MESSAGE","TIME_BEFORE_MIN_MESSAGE","TIME_AFTER_MAX_MESSAGE","TIME_STEP_MESSAGE","InputTime","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","generatedId","errorId","popupId","value","disabled","readOnly","required","requiredMessage","DEFAULT_REQUIRED_MESSAGE","step","hourFormat","size","width","hasBorder","hasInteractionFill","isInactive","autoFocus","error","ariaLabel","initialValue","closeTimer","formDisabled","focused","touched","draftText","open","shouldRender","closing","positionReady","pos","x","y","position","AnchoredPositionController","getAnchor","controlEl","getPopup","el","querySelector","getOwnerDocument","ownerDocument","measure","anchor","popup","sectionInsetPx","resolveCssLengthPx","TOKEN_DEFAULTS","space050","anchorRect","getBoundingClientRect","popupWidth","offsetWidth","popupFallbackWidth","popupHeight","offsetHeight","popupFallbackHeight","side","align","sideOffsetPx","alignOffsetPx","resolveChoicePopupAlignOffset","anchorAlignment","viewportPadPx","viewportWidth","window","innerWidth","viewportHeight","innerHeight","collisionRect","resolveAnchoredOverlayBoundaryRect","apply","onReady","liveUpdate","observeResize","topLayer","interaction","AnchoredOverlayInteractionController","onOutsideActivation","closePicker","togglePicker","openPicker","handleInput","event","pickerInactive","target","parsed","parseDraft","commitIso","handleFocus","displayValue","handleBlur","handleTimeChange","stopPropagation","detail","menuWidthXs","menuFallbackHeight","formInactive","hasConstraintError","isClockTime","min","max","isClockTimeStepAligned","isInvalid","length","componentWillLoad","syncFormValue","disconnectedCallback","teardownListeners","onHourFormatChange","inactive","setFormControlValue","internals","flags","message","valueMissing","badInput","rangeUnderflow","rangeOverflow","stepMismatch","setValidity","onInteractionStateChange","formDisabledCallback","formResetCallback","formStateRestoreCallback","state","restoreStringFormState","setFocus","inputEl","focus","handleHostKeyDown","key","preventDefault","composedPath","includes","tabLeavesPopup","moveFocusAfterTab","shiftKey","formatClockTimeLabel","text","trimmed","trim","iso","parseLooseClockTime","emit","dsChange","unobserve","disconnect","clearTimeout","isConnected","connect","observe","schedule","restore","cancel","clockButton","duration","resolveMotionTimeMs","motionShort2","animationDurationShort3","finishClose","setTimeout","matches","hidePopover","render","inputId","filled","dirty","showError","Boolean","errorMessage","textVariant","CONTROL_TEXT_VARIANT","textClass","replace","describedBy","ariaDescribedby","undefined","filter","join","popupStyle","left","top","transform","Math","round","zIndex","visibility","h","Host","class","controlWidthClass","ref","element","type","id","autoComplete","spellcheck","ariaLabelledby","onInput","onFocus","onBlur","variant","icon","isInset","haspopup","expanded","surfaceOpen","controls","onDsClick","popover","style","role","onDsChange","as","color","textId"],"sources":["src/wc/components/InputTime/InputTime.css?tag=ds-input-time&encapsulation=scoped","src/wc/components/InputTime/InputTime.tsx"],"sourcesContent":["@import '../../utils/datetime-input-control.css';\n@import '../../utils/choice-popup.css';\n@import '../../utils/chrome-layout.css';\n\n.input-time-popup.ds-choice-popup {\n --ds-time-picker-padding: 0;\n padding: var(--dimension-space-050);\n}\n","import {\n AttachInternals,\n Component,\n Element,\n Prop,\n State,\n Event,\n EventEmitter,\n Listen,\n Method,\n Watch,\n h,\n Host,\n} from '@stencil/core';\nimport {\n controlWidthClass,\n CONTROL_TEXT_VARIANT,\n DEFAULT_REQUIRED_MESSAGE,\n formatClockTimeLabel,\n isClockTime,\n isClockTimeStepAligned,\n parseLooseClockTime,\n resolveChoicePopupAlignOffset,\n resolveCssLengthPx,\n resolveMotionTimeMs,\n restoreStringFormState,\n setFormControlValue,\n TOKEN_DEFAULTS,\n type ControlSize,\n type ControlWidth,\n} from '../../utils';\nimport { AnchoredPositionController } from '../../utils/anchored-position-controller';\nimport { AnchoredOverlayInteractionController } from '../../utils/anchored-overlay-interaction-controller';\nimport { resolveAnchoredOverlayBoundaryRect } from '../../utils/anchored-overlay-boundary';\n\nexport type InputTimeSize = ControlSize;\nexport type InputTimeWidth = ControlWidth;\n\nlet idCounter = 0;\n\nconst INVALID_TIME_MESSAGE = 'Enter a valid time.';\nconst TIME_BEFORE_MIN_MESSAGE = 'Time is before the minimum allowed time.';\nconst TIME_AFTER_MAX_MESSAGE = 'Time is after the maximum allowed time.';\nconst TIME_STEP_MESSAGE = 'Time does not match the allowed interval.';\n\n@Component({\n tag: 'ds-input-time',\n styleUrl: 'InputTime.css',\n scoped: true,\n formAssociated: true,\n})\nexport class InputTime {\n @Element() el!: HTMLElement;\n @AttachInternals() internals!: ElementInternals;\n\n private generatedId = `ds-input-time-${++idCounter}`;\n private errorId = `${this.generatedId}-error`;\n private popupId = `${this.generatedId}-popup`;\n\n @Prop({ mutable: true }) value: string = '';\n @Prop({ reflect: true }) name: string | undefined;\n @Prop({ reflect: true }) form: string | undefined;\n @Prop({ reflect: true }) disabled: boolean = false;\n @Prop({ reflect: true }) readOnly: boolean = false;\n @Prop({ reflect: true }) required: boolean = false;\n @Prop() requiredMessage: string = DEFAULT_REQUIRED_MESSAGE;\n /** Native time step in seconds. Defaults to minutes (`60`). */\n @Prop() step: string | number = 60;\n /** Display format; submitted values remain HH:MM in either format. */\n @Prop() hourFormat: '12' | '24' = '12';\n @Prop() min: string | undefined;\n @Prop() max: string | undefined;\n @Prop() size: InputTimeSize = 'md';\n @Prop() width: InputTimeWidth = 'fill';\n @Prop() hasBorder: boolean = true;\n @Prop() hasInteractionFill: boolean = true;\n @Prop() isInactive: boolean = false;\n @Prop() autoFocus: boolean = false;\n @Prop() error: boolean = false;\n @Prop() errorMessage: string | undefined;\n @Prop() inputId: string | undefined;\n @Prop({ attribute: 'aria-label' }) ariaLabel: string | null = null;\n @Prop({ attribute: 'aria-labelledby' }) ariaLabelledby: string | undefined;\n @Prop({ attribute: 'aria-describedby' }) ariaDescribedby: string | undefined;\n\n @Event() dsChange!: EventEmitter<string>;\n\n private initialValue = '';\n private inputEl?: HTMLInputElement;\n private controlEl?: HTMLElement;\n private clockButton?: HTMLDsButtonUnfilledElement;\n private closeTimer: ReturnType<typeof setTimeout> | null = null;\n @State() private formDisabled = false;\n @State() private focused = false;\n @State() private touched = false;\n @State() private draftText = '';\n @State() private open = false;\n @State() private shouldRender = false;\n @State() private closing = false;\n @State() private positionReady = false;\n @State() private pos = { x: 0, y: 0 };\n\n private readonly position = new AnchoredPositionController({\n getAnchor: () => this.controlEl ?? null,\n getPopup: () => this.el.querySelector<HTMLElement>('.input-time-popup'),\n getOwnerDocument: () => this.el.ownerDocument,\n measure: (anchor, popup) => {\n if (!this.open) return null;\n const sectionInsetPx = resolveCssLengthPx(TOKEN_DEFAULTS.space050, TOKEN_DEFAULTS.space050);\n return {\n anchorRect: anchor.getBoundingClientRect(),\n popupWidth: popup.offsetWidth || this.popupFallbackWidth,\n popupHeight: popup.offsetHeight || this.popupFallbackHeight,\n side: 'bottom',\n align: 'end',\n sideOffsetPx: resolveCssLengthPx(TOKEN_DEFAULTS.space050, TOKEN_DEFAULTS.space050),\n alignOffsetPx: resolveChoicePopupAlignOffset({\n align: 'end',\n alignOffsetPx: 0,\n sectionInsetPx,\n anchorAlignment: 'popup-frame',\n }),\n viewportPadPx: resolveCssLengthPx(TOKEN_DEFAULTS.space050, TOKEN_DEFAULTS.space050),\n viewportWidth: window.innerWidth,\n viewportHeight: window.innerHeight,\n collisionRect: resolveAnchoredOverlayBoundaryRect(anchor),\n };\n },\n apply: ({ x, y }) => {\n this.pos = { x, y };\n },\n onReady: () => {\n this.positionReady = true;\n },\n liveUpdate: 'double-frame',\n observeResize: true,\n topLayer: true,\n });\n private readonly interaction = new AnchoredOverlayInteractionController({\n getAnchor: () => this.controlEl ?? null,\n getPopup: () => this.el.querySelector<HTMLElement>('.input-time-popup'),\n getOwnerDocument: () => this.el.ownerDocument,\n onOutsideActivation: () => this.closePicker(false),\n });\n\n private get popupFallbackWidth(): number {\n return resolveCssLengthPx(TOKEN_DEFAULTS.menuWidthXs, TOKEN_DEFAULTS.menuWidthXs);\n }\n\n private get popupFallbackHeight(): number {\n return resolveCssLengthPx(TOKEN_DEFAULTS.menuFallbackHeight, TOKEN_DEFAULTS.menuFallbackHeight);\n }\n\n private get formInactive(): boolean {\n return this.isInactive || this.disabled || this.formDisabled;\n }\n\n private get pickerInactive(): boolean {\n return this.formInactive || this.readOnly;\n }\n\n private get hasConstraintError(): boolean {\n if (!this.value) return false;\n if (!isClockTime(this.value)) return true;\n if (this.min && isClockTime(this.min) && this.value < this.min) return true;\n if (this.max && isClockTime(this.max) && this.value > this.max) return true;\n return !isClockTimeStepAligned(this.value, this.step, this.min);\n }\n\n private get isInvalid(): boolean {\n return (\n this.error ||\n (!this.formInactive &&\n ((this.required && this.value.length === 0) || this.hasConstraintError))\n );\n }\n\n componentWillLoad() {\n this.initialValue = this.value;\n this.syncFormValue();\n }\n\n disconnectedCallback() {\n this.teardownListeners();\n this.open = false;\n this.shouldRender = false;\n this.closing = false;\n this.positionReady = false;\n this.focused = false;\n }\n\n @Watch('hourFormat')\n onHourFormatChange() {\n this.draftText = this.displayValue;\n }\n\n @Watch('value')\n @Watch('required')\n @Watch('requiredMessage')\n @Watch('min')\n @Watch('max')\n @Watch('step')\n syncFormValue() {\n const inactive = this.formInactive;\n setFormControlValue(this.internals, this.value, { inactive });\n const flags: ValidityStateFlags = {};\n let message = '';\n if (!inactive) {\n if (this.required && this.value.length === 0) {\n flags.valueMissing = true;\n message = this.requiredMessage;\n } else if (this.value && !isClockTime(this.value)) {\n flags.badInput = true;\n message = INVALID_TIME_MESSAGE;\n } else if (this.value && this.min && isClockTime(this.min) && this.value < this.min) {\n flags.rangeUnderflow = true;\n message = TIME_BEFORE_MIN_MESSAGE;\n } else if (this.value && this.max && isClockTime(this.max) && this.value > this.max) {\n flags.rangeOverflow = true;\n message = TIME_AFTER_MAX_MESSAGE;\n } else if (this.value && !isClockTimeStepAligned(this.value, this.step, this.min)) {\n flags.stepMismatch = true;\n message = TIME_STEP_MESSAGE;\n }\n }\n this.internals.setValidity(flags, message);\n }\n\n @Watch('disabled')\n @Watch('isInactive')\n @Watch('readOnly')\n onInteractionStateChange() {\n this.syncFormValue();\n if (this.pickerInactive && this.shouldRender) this.closePicker(false);\n }\n\n formDisabledCallback(disabled: boolean) {\n this.formDisabled = disabled;\n this.onInteractionStateChange();\n }\n\n formResetCallback() {\n this.value = this.initialValue;\n this.draftText = this.displayValue;\n }\n\n formStateRestoreCallback(state: string | File | FormData | null) {\n this.value = restoreStringFormState(state);\n this.draftText = this.displayValue;\n }\n\n @Method()\n async setFocus() {\n this.inputEl?.focus();\n }\n\n @Listen('keydown')\n handleHostKeyDown(event: KeyboardEvent) {\n if (!this.shouldRender || this.closing) return;\n if (event.key === 'Escape') {\n event.preventDefault();\n this.closePicker('button');\n return;\n }\n if (event.key !== 'Tab') return;\n const popup = this.el.querySelector<HTMLElement>('.input-time-popup');\n if (!popup || !event.composedPath().includes(popup)) return;\n if (!this.interaction.tabLeavesPopup(event)) return;\n event.preventDefault();\n this.closePicker(false);\n this.interaction.moveFocusAfterTab(event.shiftKey);\n }\n\n private get displayValue(): string {\n return this.hourFormat === '24' ? this.value : formatClockTimeLabel(this.value);\n }\n\n private parseDraft(text: string): string | null {\n const trimmed = text.trim();\n if (!trimmed) return '';\n const iso = parseLooseClockTime(trimmed);\n if (!iso) return null;\n if (this.min && isClockTime(this.min) && iso < this.min) return null;\n if (this.max && isClockTime(this.max) && iso > this.max) return null;\n if (!isClockTimeStepAligned(iso, this.step, this.min)) return null;\n return iso;\n }\n\n private commitIso(iso: string, emit = true) {\n if (this.value !== iso) {\n this.value = iso;\n if (emit) this.dsChange.emit(iso);\n }\n this.draftText = this.hourFormat === '24' ? iso : formatClockTimeLabel(iso);\n }\n\n private teardownListeners() {\n this.position.unobserve();\n this.interaction.disconnect();\n if (this.closeTimer) {\n clearTimeout(this.closeTimer);\n this.closeTimer = null;\n }\n }\n\n private openPicker() {\n const inactive = this.isInactive || this.disabled || this.formDisabled || this.readOnly;\n if (inactive || this.open || !this.el.isConnected) return;\n this.shouldRender = true;\n this.closing = false;\n this.positionReady = false;\n this.open = true;\n this.teardownListeners();\n this.interaction.connect();\n this.position.observe();\n this.position.schedule();\n }\n\n private closePicker(restore: 'input' | 'button' | false) {\n if (!this.shouldRender || this.closing) return;\n this.open = false;\n this.position.cancel();\n this.closing = true;\n this.interaction.disconnect();\n this.position.unobserve();\n if (restore === 'input') this.inputEl?.focus();\n if (restore === 'button') void this.clockButton?.setFocus();\n const duration = resolveMotionTimeMs(\n TOKEN_DEFAULTS.motionShort2,\n TOKEN_DEFAULTS.animationDurationShort3\n );\n if (duration <= 0) {\n this.finishClose();\n return;\n }\n this.closeTimer = setTimeout(() => this.finishClose(), duration);\n }\n\n private finishClose() {\n const popup = this.el.querySelector<HTMLElement>('.input-time-popup');\n if (popup?.matches(':popover-open')) popup.hidePopover();\n this.shouldRender = false;\n this.closing = false;\n this.closeTimer = null;\n }\n\n private togglePicker = () => {\n if (this.isInactive || this.disabled || this.formDisabled || this.readOnly) return;\n if (this.open) this.closePicker('button');\n else this.openPicker();\n };\n\n private handleInput = (event: Event) => {\n if (this.pickerInactive) return;\n this.draftText = (event.target as HTMLInputElement).value;\n const parsed = this.parseDraft(this.draftText);\n if (parsed === null) return;\n this.commitIso(parsed);\n };\n\n private handleFocus = () => {\n this.draftText = this.displayValue || this.value;\n this.focused = true;\n };\n\n private handleBlur = () => {\n this.focused = false;\n this.touched = true;\n if (this.pickerInactive) {\n this.draftText = this.displayValue;\n return;\n }\n const parsed = this.parseDraft(this.draftText);\n if (parsed === null) {\n this.draftText = this.displayValue;\n return;\n }\n this.commitIso(parsed);\n };\n\n private handleTimeChange = (event: CustomEvent<string>) => {\n event.stopPropagation();\n if (this.pickerInactive) return;\n const parsed = this.parseDraft(event.detail);\n if (parsed === null) return;\n this.commitIso(parsed);\n };\n\n render() {\n const inputId = this.inputId ?? this.generatedId;\n const inactive = this.formInactive;\n const pickerInactive = this.pickerInactive;\n const filled = this.value.length > 0;\n const dirty = this.value !== this.initialValue;\n const showError = this.error && Boolean(this.errorMessage);\n const textVariant = CONTROL_TEXT_VARIANT[this.size];\n const textClass = `ds-text--${textVariant.replace('text-', '')}`;\n const describedBy =\n [this.ariaDescribedby, showError ? this.errorId : undefined].filter(Boolean).join(' ') ||\n undefined;\n const popupStyle = {\n position: 'fixed',\n left: '0',\n top: '0',\n transform: `translate(${Math.round(this.pos.x)}px, ${Math.round(this.pos.y)}px)`,\n zIndex: 'var(--dimension-z-index-floating)',\n visibility: this.positionReady ? 'visible' : 'hidden',\n };\n\n return (\n <Host\n class={{\n 'input-host': true,\n 'ds-field-stack': true,\n 'ds-field-stack--supporting-inset': !this.hasBorder,\n 'ds-control-inactive': inactive,\n [`ds-control--${this.size}`]: true,\n ...controlWidthClass(this.width),\n }}\n data-disabled={inactive ? '' : undefined}\n data-readonly={this.readOnly ? '' : undefined}\n data-required={this.required ? '' : undefined}\n data-invalid={this.isInvalid ? '' : undefined}\n data-filled={filled ? '' : undefined}\n data-focused={this.focused ? '' : undefined}\n data-dirty={dirty ? '' : undefined}\n data-touched={this.touched ? '' : undefined}\n >\n <div\n ref={element => {\n this.controlEl = element;\n }}\n class={{\n 'input-control': true,\n 'ds-control-frame': true,\n 'input-control--bordered': this.hasBorder,\n 'input-control--error': this.hasBorder && this.error,\n 'ds-interaction-fill': this.hasInteractionFill,\n [`ds-control--${this.size}`]: true,\n }}\n >\n <input\n ref={element => {\n this.inputEl = element;\n }}\n type=\"text\"\n id={inputId}\n value={this.focused ? this.draftText : this.displayValue}\n disabled={inactive}\n readOnly={this.readOnly}\n required={this.required}\n autoFocus={this.autoFocus}\n autoComplete=\"off\"\n spellcheck={false}\n class={{\n 'native-input': true,\n 'native-input--align-start': true,\n 'ds-control-label-box': true,\n [textClass]: true,\n 'ds-text--regular': true,\n }}\n aria-label={this.ariaLabel}\n aria-labelledby={this.ariaLabelledby}\n aria-describedby={describedBy}\n aria-invalid={this.isInvalid ? 'true' : undefined}\n onInput={this.handleInput}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n <ds-button-unfilled\n ref={element => {\n this.clockButton = element as HTMLDsButtonUnfilledElement | undefined;\n }}\n class=\"input-control__datetime-action\"\n variant=\"icon\"\n size={this.size}\n icon=\"Clock\"\n hasBorder={false}\n isInset\n isInactive={pickerInactive}\n ariaLabel=\"Choose time\"\n haspopup=\"dialog\"\n expanded={this.open}\n surfaceOpen={this.open || this.closing}\n controls={this.open ? this.popupId : undefined}\n onDsClick={this.togglePicker}\n />\n </div>\n {this.shouldRender ? (\n <div\n id={this.popupId}\n popover=\"manual\"\n class={{\n 'input-time-popup': true,\n 'ds-choice-popup': true,\n 'ds-choice-popup--closing': this.closing,\n 'ds-chrome-column': true,\n 'ds-chrome-space--sm': true,\n }}\n style={popupStyle}\n role=\"dialog\"\n aria-label=\"Choose time\"\n >\n <ds-time-picker\n hourFormat={this.hourFormat}\n value={this.value}\n min={this.min}\n max={this.max}\n step={this.step}\n isInactive={pickerInactive}\n autoFocus\n onDsChange={this.handleTimeChange}\n />\n </div>\n ) : null}\n {showError && (\n <ds-text\n class=\"error-text\"\n as=\"div\"\n variant=\"text-body-small\"\n color=\"negative\"\n textId={this.errorId}\n role=\"alert\"\n >\n {this.errorMessage}\n </ds-text>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,13 +0,0 @@
1
- export interface CartesianChartLayout {
2
- margin: {
3
- top: number;
4
- right: number;
5
- bottom: number;
6
- left: number;
7
- };
8
- axisLabelGap: number;
9
- categoryLabelOffset: number;
10
- }
11
- /** Resolve shared Cartesian chart geometry from TokoMo dimension tokens. */
12
- export declare function resolveCartesianChartLayout(): CartesianChartLayout;
13
- //# sourceMappingURL=cartesian-chart-layout.d.ts.map
@@ -1,21 +0,0 @@
1
- export interface ChartViewportSize {
2
- width: number;
3
- height: number;
4
- }
5
- /**
6
- * Keeps SVG chart geometry matched to the rendered SVG viewport.
7
- *
8
- * Cartesian charts intentionally render without a viewBox: changing the host
9
- * reflows plot geometry instead of scaling its strokes, text, radii, or points.
10
- */
11
- export declare class ChartViewportController {
12
- private readonly target;
13
- private readonly onResize;
14
- private resizeObserver;
15
- constructor(target: Element, onResize: (size: ChartViewportSize) => void);
16
- connect(): void;
17
- measure(): void;
18
- disconnect(): void;
19
- private update;
20
- }
21
- //# sourceMappingURL=chart-viewport-controller.d.ts.map