@ds-mo/ui 15.2.0 → 15.4.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.
- package/dist/.package-ready.json +1 -1
- package/dist/agent-patterns.json +3 -3
- package/dist/agent.json +936 -80
- package/dist/angular/ds-card-setting.d.ts +1 -1
- package/dist/angular/ds-card-setting.js +3 -3
- package/dist/angular/ds-checkbox-group.d.ts +12 -0
- package/dist/angular/ds-checkbox-group.js +38 -0
- package/dist/angular/ds-checkbox.d.ts +1 -1
- package/dist/angular/ds-checkbox.js +3 -3
- package/dist/angular/ds-inline-banner-settings.d.ts +12 -0
- package/dist/angular/ds-inline-banner-settings.js +38 -0
- package/dist/angular/ds-input-time.d.ts +1 -1
- package/dist/angular/ds-input-time.js +3 -3
- package/dist/angular/ds-input.d.ts +5 -1
- package/dist/angular/ds-input.js +10 -4
- package/dist/angular/ds-map-entity-marker.d.ts +1 -1
- package/dist/angular/ds-map-entity-marker.js +3 -3
- package/dist/angular/ds-radio-tile.d.ts +15 -0
- package/dist/angular/ds-radio-tile.js +43 -0
- package/dist/angular/ds-radio.d.ts +1 -1
- package/dist/angular/ds-radio.js +3 -3
- package/dist/angular/ds-setting-row-checkbox.d.ts +12 -0
- package/dist/angular/ds-setting-row-checkbox.js +38 -0
- package/dist/angular/ds-setting-row-radio.d.ts +12 -0
- package/dist/angular/ds-setting-row-radio.js +38 -0
- package/dist/angular/ds-setting-row-toggle.d.ts +18 -0
- package/dist/angular/ds-setting-row-toggle.js +42 -0
- package/dist/angular/ds-slider.d.ts +1 -1
- package/dist/angular/ds-slider.js +3 -3
- package/dist/angular/ds-textarea.d.ts +1 -1
- package/dist/angular/ds-textarea.js +3 -3
- package/dist/angular/ds-time-picker.d.ts +1 -1
- package/dist/angular/ds-time-picker.js +3 -3
- package/dist/angular/index.d.ts +1 -1
- package/dist/angular/index.js +6 -0
- package/dist/angular/number-value-accessor.d.ts +9 -0
- package/dist/angular/number-value-accessor.js +39 -0
- package/dist/angular/proxies.d.ts +6 -0
- package/dist/angular/proxies.js +6 -0
- package/dist/angular/radio-value-accessor.d.ts +1 -1
- package/dist/angular/radio-value-accessor.js +2 -2
- package/dist/angular/select-value-accessor.d.ts +1 -1
- package/dist/angular/select-value-accessor.js +2 -2
- package/dist/angular/text-value-accessor.d.ts +1 -1
- package/dist/angular/text-value-accessor.js +2 -2
- package/dist/components/ds-agent-activity.js +1 -1
- package/dist/components/ds-agent-questionnaire.js +1 -1
- package/dist/components/ds-agent-response.js +1 -1
- package/dist/components/ds-agent-response.js.map +1 -1
- package/dist/components/ds-agent-source-list.js +1 -1
- package/dist/components/ds-agent-tool-call.js +1 -1
- package/dist/components/ds-attachment-list.js +1 -1
- package/dist/components/ds-badge.js +1 -1
- package/dist/components/ds-banner.js +1 -1
- package/dist/components/ds-bar-action.js +1 -1
- package/dist/components/ds-bar-nav.js +1 -1
- package/dist/components/ds-bar-page-title.js +1 -1
- package/dist/components/ds-bar-title.js +1 -1
- package/dist/components/ds-bar-workflow.js +1 -1
- package/dist/components/ds-breadcrumb.js +1 -1
- package/dist/components/ds-button-filled.js +1 -1
- package/dist/components/ds-button-inverted.js +1 -1
- package/dist/components/ds-button-inverted.js.map +1 -1
- package/dist/components/ds-button-unfilled.js +1 -1
- package/dist/components/ds-calendar.js +1 -1
- package/dist/components/ds-card-action-center.js +1 -1
- package/dist/components/ds-card-action-center.js.map +1 -1
- package/dist/components/ds-card-chart.js +1 -1
- package/dist/components/ds-card-navigation.js +1 -1
- package/dist/components/ds-card-navigation.js.map +1 -1
- package/dist/components/ds-card-overview.js +1 -1
- package/dist/components/ds-card-overview.js.map +1 -1
- package/dist/components/ds-card-setting.js +1 -1
- package/dist/components/ds-card-setting.js.map +1 -1
- package/dist/components/ds-card-settings-scope.js +1 -1
- package/dist/components/ds-card-settings-scope.js.map +1 -1
- package/dist/components/ds-chart-legend.js +1 -1
- package/dist/components/ds-chart-legend.js.map +1 -1
- package/dist/components/ds-chart.js +1 -1
- package/dist/components/ds-checkbox-group.d.ts +11 -0
- package/dist/components/ds-checkbox-group.js +2 -0
- package/dist/components/ds-checkbox-group.js.map +1 -0
- package/dist/components/ds-checkbox.js +1 -1
- package/dist/components/ds-chip.js +1 -1
- package/dist/components/ds-code-block.js +1 -1
- package/dist/components/ds-conversation-list-item.js +1 -1
- package/dist/components/ds-conversation-list-item.js.map +1 -1
- package/dist/components/ds-conversation-list-section.js +1 -1
- package/dist/components/ds-conversation-list.js +1 -1
- package/dist/components/ds-data-customize.js +1 -1
- package/dist/components/ds-data-customize.js.map +1 -1
- package/dist/components/ds-data-filter.js +1 -1
- package/dist/components/ds-data-filter.js.map +1 -1
- package/dist/components/ds-data-group.js +1 -1
- package/dist/components/ds-data-preferences.js +1 -1
- package/dist/components/ds-data-preferences.js.map +1 -1
- package/dist/components/ds-data-saved-views.js +1 -1
- package/dist/components/ds-data-saved-views.js.map +1 -1
- package/dist/components/ds-data-search.js +1 -1
- package/dist/components/ds-data-search.js.map +1 -1
- package/dist/components/ds-data-sort.js +1 -1
- package/dist/components/ds-data-toolbar.js +1 -1
- package/dist/components/ds-divider.js +1 -1
- package/dist/components/ds-empty-state.js +1 -1
- package/dist/components/ds-field.js +1 -1
- package/dist/components/ds-filter-menu.js +1 -1
- package/dist/components/ds-inline-banner-settings.d.ts +11 -0
- package/dist/components/ds-inline-banner-settings.js +2 -0
- package/dist/components/ds-inline-banner-settings.js.map +1 -0
- package/dist/components/ds-input-date.js +1 -1
- package/dist/components/ds-input-date.js.map +1 -1
- package/dist/components/ds-input-time.js +1 -1
- package/dist/components/ds-input-time.js.map +1 -1
- package/dist/components/ds-input.js +1 -1
- package/dist/components/ds-map-cluster-marker.js +1 -1
- package/dist/components/ds-map-entity-marker.js +1 -1
- package/dist/components/ds-map-entity-marker.js.map +1 -1
- package/dist/components/ds-markdown.js +1 -1
- package/dist/components/ds-menu.js +1 -1
- package/dist/components/ds-message-actions.js +1 -1
- package/dist/components/ds-message-bubble.js +1 -1
- package/dist/components/ds-message-bubble.js.map +1 -1
- package/dist/components/ds-message-composer.js +1 -1
- package/dist/components/ds-message-composer.js.map +1 -1
- package/dist/components/ds-message-scroller.js +1 -1
- package/dist/components/ds-message.js +1 -1
- package/dist/components/ds-mobile-bar-nav.js +1 -1
- package/dist/components/ds-mobile-header.js +1 -1
- package/dist/components/ds-mobile-section-switcher.js +1 -1
- package/dist/components/ds-mobile-sheet-nav.js +1 -1
- package/dist/components/ds-modal.js +1 -1
- package/dist/components/ds-pagination.js +1 -1
- package/dist/components/ds-panel-nav.js +1 -1
- package/dist/components/ds-panel-sub-nav.js +1 -1
- package/dist/components/ds-panel-sub-nav.js.map +1 -1
- package/dist/components/ds-panel-tool-header.js +1 -1
- package/dist/components/ds-panel-tool-search.js +1 -1
- package/dist/components/ds-panel-tool-search.js.map +1 -1
- package/dist/components/ds-panel-tools.js +1 -1
- package/dist/components/ds-paper-texture.js +1 -1
- package/dist/components/ds-radio-tile.d.ts +11 -0
- package/dist/components/ds-radio-tile.js +2 -0
- package/dist/components/ds-radio-tile.js.map +1 -0
- package/dist/components/ds-radio.js +1 -1
- package/dist/components/ds-score.js +1 -1
- package/dist/components/ds-scroll-overlay.js +1 -1
- package/dist/components/ds-select.js +1 -1
- package/dist/components/ds-setting-row-checkbox.d.ts +11 -0
- package/dist/components/ds-setting-row-checkbox.js +2 -0
- package/dist/components/ds-setting-row-checkbox.js.map +1 -0
- package/dist/components/ds-setting-row-radio.d.ts +11 -0
- package/dist/components/ds-setting-row-radio.js +2 -0
- package/dist/components/ds-setting-row-radio.js.map +1 -0
- package/dist/components/ds-setting-row-toggle.d.ts +11 -0
- package/dist/components/ds-setting-row-toggle.js +2 -0
- package/dist/components/ds-setting-row-toggle.js.map +1 -0
- package/dist/components/ds-shell-app.js +1 -1
- package/dist/components/ds-shell-app.js.map +1 -1
- package/dist/components/ds-shell-page.js +1 -1
- package/dist/components/ds-shell-tools.js +1 -1
- package/dist/components/ds-skeleton.js +1 -1
- package/dist/components/ds-slider.js +1 -1
- package/dist/components/ds-slider.js.map +1 -1
- package/dist/components/ds-swatch-picker.js +1 -1
- package/dist/components/ds-switch.js +1 -1
- package/dist/components/ds-tab-group.js +1 -1
- package/dist/components/ds-table.js +1 -1
- package/dist/components/ds-table.js.map +1 -1
- package/dist/components/ds-tag.js +1 -1
- package/dist/components/ds-text.js +1 -1
- package/dist/components/ds-textarea.js +1 -1
- package/dist/components/ds-textarea.js.map +1 -1
- package/dist/components/ds-time-picker.js +1 -1
- package/dist/components/ds-toast.js +1 -1
- package/dist/components/ds-tooltip-chart.js +1 -1
- package/dist/components/ds-tooltip.js +1 -1
- package/dist/components/ds-typing-indicator.js +1 -1
- package/dist/components/p-7TVdPhGR.js +2 -0
- package/dist/components/{p-YrnU2fM7.js.map → p-7TVdPhGR.js.map} +1 -1
- package/dist/components/{p-7V1AhetH.js → p-B0BQCVkq.js} +2 -2
- package/dist/components/p-B0EpvBDs.js +2 -0
- package/dist/components/{p-lamoJZE4.js.map → p-B0EpvBDs.js.map} +1 -1
- package/dist/components/{p-Cu8o2rOz.js → p-B39iJO8F.js} +2 -2
- package/dist/components/p-B9TM6FqC.js +2 -0
- package/dist/components/{p-BJJh-Bf7.js.map → p-B9TM6FqC.js.map} +1 -1
- package/dist/components/{p-B6qQaYkB.js → p-B9y6azEw.js} +2 -2
- package/dist/components/p-BDdlJZyL.js +2 -0
- package/dist/components/{p-CZ7hxDy_.js.map → p-BDdlJZyL.js.map} +1 -1
- package/dist/components/{p-5SVmAjXY.js → p-BERXvOCf.js} +2 -2
- package/dist/components/{p-xhn1cZgU.js → p-BFHpU-uU.js} +2 -2
- package/dist/components/{p-CuWPWC3t.js → p-BQspV5U7.js} +2 -2
- package/dist/components/p-BWSIw8AQ.js +2 -0
- package/dist/components/p-BWSIw8AQ.js.map +1 -0
- package/dist/components/p-BhjqYTiY.js +2 -0
- package/dist/components/p-BhjqYTiY.js.map +1 -0
- package/dist/components/{p-BOhefRMt.js → p-Bk3poU91.js} +2 -2
- package/dist/components/{p-QWukusRL.js → p-BnuNaXR2.js} +2 -2
- package/dist/components/p-BwdnVqAY.js +2 -0
- package/dist/components/p-BwdnVqAY.js.map +1 -0
- package/dist/components/p-C4huuwed.js +2 -0
- package/dist/components/{p-CRk0TjQv.js.map → p-C4huuwed.js.map} +1 -1
- package/dist/components/{p-BtnTQp4K.js → p-C8V4lkVy.js} +2 -2
- package/dist/components/p-CJ1NnOEW.js +2 -0
- package/dist/components/p-CJ1NnOEW.js.map +1 -0
- package/dist/components/p-CPamUzaj.js +2 -0
- package/dist/components/{p-CNZ6-kWd.js.map → p-CPamUzaj.js.map} +1 -1
- package/dist/components/{p-Dqfc6Nvd.js → p-CUDocY23.js} +2 -2
- package/dist/components/{p-Dqfc6Nvd.js.map → p-CUDocY23.js.map} +1 -1
- package/dist/components/p-CX6ZxUQT.js +2 -0
- package/dist/components/p-CX6ZxUQT.js.map +1 -0
- package/dist/components/p-CZNZTcYS.js +2 -0
- package/dist/components/p-CZNZTcYS.js.map +1 -0
- package/dist/components/p-CbCN9ew9.js +2 -0
- package/dist/components/p-CbCN9ew9.js.map +1 -0
- package/dist/components/p-CeXf9-X3.js.map +1 -1
- package/dist/components/p-Cgn-BORA.js +2 -0
- package/dist/components/p-Cgn-BORA.js.map +1 -0
- package/dist/components/{p-mux14tWZ.js → p-Co1rUdOR.js} +2 -2
- package/dist/components/p-Co1rUdOR.js.map +1 -0
- package/dist/components/{p-CGidq1iC.js → p-CuwopElg.js} +2 -2
- package/dist/components/p-CwUXroLs.js +2 -0
- package/dist/components/{p-etg-Uk1u.js.map → p-CwUXroLs.js.map} +1 -1
- package/dist/components/{p-Cn6AfzeF.js → p-CwdRaJER.js} +2 -2
- package/dist/components/p-D6FRqNhN.js +2 -0
- package/dist/components/p-D6FRqNhN.js.map +1 -0
- package/dist/components/{p-ZwRLjD5M.js → p-D8OWhnID.js} +2 -2
- package/dist/components/p-DCyJ3_PL.js +2 -0
- package/dist/components/{p-BZ_e69zx.js.map → p-DCyJ3_PL.js.map} +1 -1
- package/dist/components/{p-C_Ma6Xa-.js → p-DIQiHX0q.js} +2 -2
- package/dist/components/{p-B3CZvMXs.js → p-DJDbskZf.js} +2 -2
- package/dist/components/p-DRdoGSGX.js +2 -0
- package/dist/components/{p-CTGgXIXM.js.map → p-DRdoGSGX.js.map} +1 -1
- package/dist/components/{p-C1gaWjOm.js → p-DSZPO06T.js} +2 -2
- package/dist/components/{p-uADksYMl.js → p-DSmDyI2o.js} +2 -2
- package/dist/components/{p-UY63jmrO.js → p-DVEx-Xg9.js} +2 -2
- package/dist/components/p-DXk1eml1.js +2 -0
- package/dist/components/{p-Dlp1HqgS.js.map → p-DXk1eml1.js.map} +1 -1
- package/dist/components/{p-p0FVyEFa.js → p-DYQa1DVF.js} +2 -2
- package/dist/components/p-DYQa1DVF.js.map +1 -0
- package/dist/components/p-DYsE6HLk.js +2 -0
- package/dist/components/p-DYsE6HLk.js.map +1 -0
- package/dist/components/{p-vfCu7XSc.js → p-DZ58Sg5a.js} +2 -2
- package/dist/components/p-DebLYW7A.js +2 -0
- package/dist/components/p-DebLYW7A.js.map +1 -0
- package/dist/components/p-DhKvqh5G.js +2 -0
- package/dist/components/p-DhKvqh5G.js.map +1 -0
- package/dist/components/{p-DFO5lV_A.js → p-DmSnHVW6.js} +2 -2
- package/dist/components/p-Dnt5xUBD.js +2 -0
- package/dist/components/{p-BR5OC2PX.js.map → p-Dnt5xUBD.js.map} +1 -1
- package/dist/components/p-Doa2blZT.js +2 -0
- package/dist/components/{p-BLuqpHvp.js.map → p-Doa2blZT.js.map} +1 -1
- package/dist/components/{p-DsLXlxt3.js → p-Dyqd-cub.js} +2 -2
- package/dist/components/p-Dyqd-cub.js.map +1 -0
- package/dist/components/p-DzvTC27M.js +2 -0
- package/dist/components/p-DzvTC27M.js.map +1 -0
- package/dist/components/p-JBki_jyY.js +2 -0
- package/dist/components/{p-C0JkLR83.js.map → p-JBki_jyY.js.map} +1 -1
- package/dist/components/p-MOJmB6vX.js +2 -0
- package/dist/components/{p-BzYW1IqO.js.map → p-MOJmB6vX.js.map} +1 -1
- package/dist/components/p-TVkFIMXz.js +2 -0
- package/dist/components/p-TVkFIMXz.js.map +1 -0
- package/dist/components/{p-ER5M085B.js → p-UJMEz8_O.js} +2 -2
- package/dist/components/{p-CR-Jjdcn.js → p-_IqSPt5V.js} +2 -2
- package/dist/components/p-g0jsfEXz.js +2 -0
- package/dist/components/{p-BfF4RZdp.js.map → p-g0jsfEXz.js.map} +1 -1
- package/dist/components/{p-BLSSaVWm.js → p-pp1IQN4Z.js} +2 -2
- package/dist/docs/components.json +2901 -835
- package/dist/framework/angular.d.ts +1 -0
- package/dist/framework/angular.js +1 -0
- package/dist/lib/shell/index.js +1 -1
- package/dist/lib/shell/index.js.map +1 -1
- package/dist/lint/index.js +1 -1
- package/dist/mcp-data/registry/agent-activity.json +2 -2
- package/dist/mcp-data/registry/agent-questionnaire.json +2 -2
- package/dist/mcp-data/registry/agent-response.json +3 -3
- package/dist/mcp-data/registry/agent-source-list.json +2 -2
- package/dist/mcp-data/registry/agent-tool-call.json +2 -2
- package/dist/mcp-data/registry/attachment-list.json +2 -2
- package/dist/mcp-data/registry/avatar.json +2 -2
- package/dist/mcp-data/registry/badge.json +2 -2
- package/dist/mcp-data/registry/banner.json +2 -2
- package/dist/mcp-data/registry/bar-action.json +2 -2
- package/dist/mcp-data/registry/bar-nav.json +5 -5
- package/dist/mcp-data/registry/bar-page-title.json +4 -4
- package/dist/mcp-data/registry/bar-title.json +4 -4
- package/dist/mcp-data/registry/bar-workflow.json +2 -2
- package/dist/mcp-data/registry/breadcrumb.json +2 -2
- package/dist/mcp-data/registry/button-filled.json +2 -2
- package/dist/mcp-data/registry/button-inverted.json +2 -2
- package/dist/mcp-data/registry/button-unfilled.json +9 -9
- package/dist/mcp-data/registry/calendar.json +2 -2
- package/dist/mcp-data/registry/card-action-center.json +2 -2
- package/dist/mcp-data/registry/card-chart.json +2 -2
- package/dist/mcp-data/registry/card-navigation.json +2 -2
- package/dist/mcp-data/registry/card-overview.json +2 -2
- package/dist/mcp-data/registry/card-setting.json +50 -15
- package/dist/mcp-data/registry/card-settings-scope.json +2 -2
- package/dist/mcp-data/registry/chart-legend.json +2 -2
- package/dist/mcp-data/registry/chart.json +2 -2
- package/dist/mcp-data/registry/checkbox-group.json +246 -0
- package/dist/mcp-data/registry/checkbox.json +26 -6
- package/dist/mcp-data/registry/chip.json +2 -2
- package/dist/mcp-data/registry/code-block.json +2 -2
- package/dist/mcp-data/registry/conversation-list-item.json +2 -2
- package/dist/mcp-data/registry/conversation-list-section.json +2 -2
- package/dist/mcp-data/registry/conversation-list.json +2 -2
- package/dist/mcp-data/registry/data-customize.json +3 -3
- package/dist/mcp-data/registry/data-filter.json +2 -2
- package/dist/mcp-data/registry/data-group.json +2 -2
- package/dist/mcp-data/registry/data-preferences.json +2 -2
- package/dist/mcp-data/registry/data-saved-views.json +2 -2
- package/dist/mcp-data/registry/data-search.json +2 -2
- package/dist/mcp-data/registry/data-sort.json +2 -2
- package/dist/mcp-data/registry/data-toolbar.json +2 -2
- package/dist/mcp-data/registry/divider.json +2 -2
- package/dist/mcp-data/registry/empty-state.json +27 -14
- package/dist/mcp-data/registry/field.json +6 -5
- package/dist/mcp-data/registry/filter-menu.json +2 -2
- package/dist/mcp-data/registry/icon.json +2 -2
- package/dist/mcp-data/registry/inline-banner-settings.json +175 -0
- package/dist/mcp-data/registry/input-date.json +2 -2
- package/dist/mcp-data/registry/input-time.json +26 -7
- package/dist/mcp-data/registry/input.json +265 -15
- package/dist/mcp-data/registry/loader.json +2 -2
- package/dist/mcp-data/registry/map-cluster-marker.json +3 -3
- package/dist/mcp-data/registry/map-entity-marker.json +56 -56
- package/dist/mcp-data/registry/markdown.json +2 -2
- package/dist/mcp-data/registry/menu.json +2 -2
- package/dist/mcp-data/registry/message-actions.json +2 -2
- package/dist/mcp-data/registry/message-bubble.json +5 -5
- package/dist/mcp-data/registry/message-composer.json +7 -7
- package/dist/mcp-data/registry/message-scroller.json +2 -2
- package/dist/mcp-data/registry/message.json +3 -3
- package/dist/mcp-data/registry/mobile-bar-nav.json +2 -2
- package/dist/mcp-data/registry/mobile-header.json +2 -2
- package/dist/mcp-data/registry/mobile-section-switcher.json +2 -2
- package/dist/mcp-data/registry/mobile-sheet-nav.json +2 -2
- package/dist/mcp-data/registry/modal.json +2 -2
- package/dist/mcp-data/registry/pagination.json +2 -2
- package/dist/mcp-data/registry/panel-nav.json +4 -4
- package/dist/mcp-data/registry/panel-sub-nav.json +2 -2
- package/dist/mcp-data/registry/panel-tool-header.json +4 -4
- package/dist/mcp-data/registry/panel-tool-search.json +3 -3
- package/dist/mcp-data/registry/panel-tools.json +4 -4
- package/dist/mcp-data/registry/paper-texture.json +2 -2
- package/dist/mcp-data/registry/radio-tile.json +399 -0
- package/dist/mcp-data/registry/radio.json +51 -9
- package/dist/mcp-data/registry/registry.json +954 -80
- package/dist/mcp-data/registry/score.json +2 -2
- package/dist/mcp-data/registry/scroll-overlay.json +2 -2
- package/dist/mcp-data/registry/select.json +2 -2
- package/dist/mcp-data/registry/setting-row-checkbox.json +197 -0
- package/dist/mcp-data/registry/setting-row-radio.json +196 -0
- package/dist/mcp-data/registry/setting-row-toggle.json +233 -0
- package/dist/mcp-data/registry/shell-app.json +4 -4
- package/dist/mcp-data/registry/shell-page.json +2 -2
- package/dist/mcp-data/registry/shell-tools.json +2 -2
- package/dist/mcp-data/registry/skeleton.json +2 -2
- package/dist/mcp-data/registry/slider.json +32 -12
- package/dist/mcp-data/registry/swatch-picker.json +2 -2
- package/dist/mcp-data/registry/switch.json +4 -4
- package/dist/mcp-data/registry/tab-group.json +2 -2
- package/dist/mcp-data/registry/table.json +5 -5
- package/dist/mcp-data/registry/tag.json +2 -2
- package/dist/mcp-data/registry/text.json +2 -2
- package/dist/mcp-data/registry/textarea.json +72 -5
- package/dist/mcp-data/registry/time-picker.json +28 -9
- package/dist/mcp-data/registry/toast.json +2 -2
- package/dist/mcp-data/registry/tooltip-chart.json +2 -2
- package/dist/mcp-data/registry/tooltip.json +2 -2
- package/dist/mcp-data/registry/typing-indicator.json +2 -2
- package/dist/react/components.d.ts +6 -0
- package/dist/react/components.js +6 -0
- package/dist/react/ds-checkbox-group.d.ts +9 -0
- package/dist/react/ds-checkbox-group.js +12 -0
- package/dist/react/ds-inline-banner-settings.d.ts +9 -0
- package/dist/react/ds-inline-banner-settings.js +12 -0
- package/dist/react/ds-input.d.ts +2 -0
- package/dist/react/ds-input.js +2 -0
- package/dist/react/ds-radio-tile.d.ts +12 -0
- package/dist/react/ds-radio-tile.js +12 -0
- package/dist/react/ds-setting-row-checkbox.d.ts +9 -0
- package/dist/react/ds-setting-row-checkbox.js +12 -0
- package/dist/react/ds-setting-row-radio.d.ts +9 -0
- package/dist/react/ds-setting-row-radio.js +12 -0
- package/dist/react/ds-setting-row-toggle.d.ts +12 -0
- package/dist/react/ds-setting-row-toggle.js +12 -0
- package/dist/types/components/BarPageTitle/BarPageTitle.d.ts +2 -0
- package/dist/types/components/BarTitle/bar-title-action-chrome.d.ts +4 -0
- package/dist/types/components/ButtonUnfilled/ButtonUnfilled.d.ts +5 -2
- package/dist/types/components/CardSetting/CardSetting.d.ts +15 -3
- package/dist/types/components/CardSetting/index.d.ts +1 -1
- package/dist/types/components/Checkbox/Checkbox.d.ts +2 -0
- package/dist/types/components/CheckboxGroup/CheckboxGroup.d.ts +20 -0
- package/dist/types/components/EmptyState/EmptyState.d.ts +3 -0
- package/dist/types/components/Field/Field.d.ts +4 -0
- package/dist/types/components/InlineBannerSettings/InlineBannerSettings.d.ts +6 -0
- package/dist/types/components/Input/Input.d.ts +50 -1
- package/dist/types/components/InputTime/InputTime.d.ts +3 -0
- package/dist/types/components/MapEntityMarker/MapEntityMarker.d.ts +5 -5
- package/dist/types/components/Radio/Radio.d.ts +8 -0
- package/dist/types/components/RadioTile/RadioTile.d.ts +40 -0
- package/dist/types/components/RadioTile/index.d.ts +2 -0
- package/dist/types/components/SettingRowCheckbox/SettingRowCheckbox.d.ts +19 -0
- package/dist/types/components/SettingRowRadio/SettingRowRadio.d.ts +19 -0
- package/dist/types/components/SettingRowToggle/SettingRowToggle.d.ts +21 -0
- package/dist/types/components/Slider/Slider.d.ts +8 -1
- package/dist/types/components/Slider/index.d.ts +1 -1
- package/dist/types/components/Switch/Switch.d.ts +7 -0
- package/dist/types/components/Textarea/Textarea.d.ts +12 -0
- package/dist/types/components/TimePicker/TimePicker.d.ts +4 -0
- package/dist/types/components.d.ts +728 -37
- package/dist/types/utils/text-constraints.d.ts +20 -0
- package/dist/vue/components.d.ts +6 -0
- package/dist/vue/components.js +6 -0
- package/dist/vue/ds-card-setting.js +1 -0
- package/dist/vue/ds-checkbox-group.d.ts +3 -0
- package/dist/vue/ds-checkbox-group.js +12 -0
- package/dist/vue/ds-checkbox.js +1 -0
- package/dist/vue/ds-inline-banner-settings.d.ts +3 -0
- package/dist/vue/ds-inline-banner-settings.js +8 -0
- package/dist/vue/ds-input-time.js +1 -0
- package/dist/vue/ds-input.js +17 -0
- package/dist/vue/ds-map-entity-marker.js +2 -2
- package/dist/vue/ds-radio-tile.d.ts +3 -0
- package/dist/vue/ds-radio-tile.js +24 -0
- package/dist/vue/ds-radio.js +2 -0
- package/dist/vue/ds-setting-row-checkbox.d.ts +3 -0
- package/dist/vue/ds-setting-row-checkbox.js +11 -0
- package/dist/vue/ds-setting-row-radio.d.ts +3 -0
- package/dist/vue/ds-setting-row-radio.js +11 -0
- package/dist/vue/ds-setting-row-toggle.d.ts +3 -0
- package/dist/vue/ds-setting-row-toggle.js +15 -0
- package/dist/vue/ds-slider.d.ts +1 -1
- package/dist/vue/ds-slider.js +2 -1
- package/dist/vue/ds-textarea.js +4 -0
- package/dist/vue/ds-time-picker.js +1 -0
- package/package.json +5 -5
- package/dist/components/p-BCnzbfma.js +0 -2
- package/dist/components/p-BCnzbfma.js.map +0 -1
- package/dist/components/p-BJJh-Bf7.js +0 -2
- package/dist/components/p-BLuqpHvp.js +0 -2
- package/dist/components/p-BR5OC2PX.js +0 -2
- package/dist/components/p-BX506yEW.js +0 -2
- package/dist/components/p-BX506yEW.js.map +0 -1
- package/dist/components/p-BZ_e69zx.js +0 -2
- package/dist/components/p-BfF4RZdp.js +0 -2
- package/dist/components/p-Br5e83Fr.js +0 -2
- package/dist/components/p-Br5e83Fr.js.map +0 -1
- package/dist/components/p-Bv9rSkp0.js +0 -2
- package/dist/components/p-Bv9rSkp0.js.map +0 -1
- package/dist/components/p-BzYW1IqO.js +0 -2
- package/dist/components/p-C0JkLR83.js +0 -2
- package/dist/components/p-C6Aavz9h.js +0 -2
- package/dist/components/p-C6Aavz9h.js.map +0 -1
- package/dist/components/p-C6zycbhC.js +0 -2
- package/dist/components/p-C6zycbhC.js.map +0 -1
- package/dist/components/p-CNZ6-kWd.js +0 -2
- package/dist/components/p-CRk0TjQv.js +0 -2
- package/dist/components/p-CTGgXIXM.js +0 -2
- package/dist/components/p-CZ7hxDy_.js +0 -2
- package/dist/components/p-Cc3ZUQlJ.js +0 -2
- package/dist/components/p-Cc3ZUQlJ.js.map +0 -1
- package/dist/components/p-D5HxZrMA.js +0 -2
- package/dist/components/p-D5HxZrMA.js.map +0 -1
- package/dist/components/p-D7K1ZHML.js +0 -2
- package/dist/components/p-D7K1ZHML.js.map +0 -1
- package/dist/components/p-Dlp1HqgS.js +0 -2
- package/dist/components/p-DsLXlxt3.js.map +0 -1
- package/dist/components/p-YrnU2fM7.js +0 -2
- package/dist/components/p-ZYWnJaye.js +0 -2
- package/dist/components/p-ZYWnJaye.js.map +0 -1
- package/dist/components/p-etg-Uk1u.js +0 -2
- package/dist/components/p-lamoJZE4.js +0 -2
- package/dist/components/p-mV4vSjSK.js +0 -2
- package/dist/components/p-mV4vSjSK.js.map +0 -1
- package/dist/components/p-mux14tWZ.js.map +0 -1
- package/dist/components/p-mxZoWfnS.js +0 -2
- package/dist/components/p-mxZoWfnS.js.map +0 -1
- package/dist/components/p-p0FVyEFa.js.map +0 -1
- package/dist/components/p-xtGGIZmU.js +0 -2
- package/dist/components/p-xtGGIZmU.js.map +0 -1
- /package/dist/components/{p-7V1AhetH.js.map → p-B0BQCVkq.js.map} +0 -0
- /package/dist/components/{p-Cu8o2rOz.js.map → p-B39iJO8F.js.map} +0 -0
- /package/dist/components/{p-B6qQaYkB.js.map → p-B9y6azEw.js.map} +0 -0
- /package/dist/components/{p-5SVmAjXY.js.map → p-BERXvOCf.js.map} +0 -0
- /package/dist/components/{p-xhn1cZgU.js.map → p-BFHpU-uU.js.map} +0 -0
- /package/dist/components/{p-CuWPWC3t.js.map → p-BQspV5U7.js.map} +0 -0
- /package/dist/components/{p-BOhefRMt.js.map → p-Bk3poU91.js.map} +0 -0
- /package/dist/components/{p-QWukusRL.js.map → p-BnuNaXR2.js.map} +0 -0
- /package/dist/components/{p-BtnTQp4K.js.map → p-C8V4lkVy.js.map} +0 -0
- /package/dist/components/{p-CGidq1iC.js.map → p-CuwopElg.js.map} +0 -0
- /package/dist/components/{p-Cn6AfzeF.js.map → p-CwdRaJER.js.map} +0 -0
- /package/dist/components/{p-ZwRLjD5M.js.map → p-D8OWhnID.js.map} +0 -0
- /package/dist/components/{p-C_Ma6Xa-.js.map → p-DIQiHX0q.js.map} +0 -0
- /package/dist/components/{p-B3CZvMXs.js.map → p-DJDbskZf.js.map} +0 -0
- /package/dist/components/{p-C1gaWjOm.js.map → p-DSZPO06T.js.map} +0 -0
- /package/dist/components/{p-uADksYMl.js.map → p-DSmDyI2o.js.map} +0 -0
- /package/dist/components/{p-UY63jmrO.js.map → p-DVEx-Xg9.js.map} +0 -0
- /package/dist/components/{p-vfCu7XSc.js.map → p-DZ58Sg5a.js.map} +0 -0
- /package/dist/components/{p-DFO5lV_A.js.map → p-DmSnHVW6.js.map} +0 -0
- /package/dist/components/{p-ER5M085B.js.map → p-UJMEz8_O.js.map} +0 -0
- /package/dist/components/{p-CR-Jjdcn.js.map → p-_IqSPt5V.js.map} +0 -0
- /package/dist/components/{p-BLSSaVWm.js.map → p-pp1IQN4Z.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["inputDateCss","idCounter","INVALID_DATE_MESSAGE","DATE_BEFORE_MIN_MESSAGE","DATE_AFTER_MAX_MESSAGE","InputDate","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","generatedId","errorId","popupId","value","disabled","readOnly","required","requiredMessage","DEFAULT_REQUIRED_MESSAGE","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","handleCalendarChange","stopPropagation","detail","menuWidthXs","menuFallbackHeight","formInactive","hasConstraintError","isIsoCalendarDate","min","max","isInvalid","length","componentWillLoad","syncFormValue","disconnectedCallback","unobserve","teardownListeners","inactive","setFormControlValue","internals","flags","message","valueMissing","badInput","rangeUnderflow","rangeOverflow","setValidity","onInteractionStateChange","formDisabledCallback","formResetCallback","formStateRestoreCallback","state","restoreStringFormState","setFocus","inputEl","focus","handleHostKeyDown","key","preventDefault","composedPath","includes","tabLeavesPopup","moveFocusAfterTab","shiftKey","formatIsoCalendarDateLabel","text","trimmed","trim","iso","parseLooseCalendarDate","emit","dsChange","disconnect","clearTimeout","connect","observe","schedule","restore","cancel","calendarButton","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","selectionMode","onDsChange","as","color","textId"],"sources":["src/wc/components/InputDate/InputDate.css?tag=ds-input-date&encapsulation=scoped","src/wc/components/InputDate/InputDate.tsx"],"sourcesContent":["@import '../../utils/datetime-input-control.css';\n@import '../../utils/choice-popup.css';\n@import '../../utils/chrome-layout.css';\n\n.input-date-popup.ds-choice-popup {\n --ds-calendar-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 formatIsoCalendarDateLabel,\n isIsoCalendarDate,\n parseLooseCalendarDate,\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 InputDateSize = ControlSize;\nexport type InputDateWidth = ControlWidth;\n\nlet idCounter = 0;\n\nconst INVALID_DATE_MESSAGE = 'Enter a valid date.';\nconst DATE_BEFORE_MIN_MESSAGE = 'Date is before the minimum allowed date.';\nconst DATE_AFTER_MAX_MESSAGE = 'Date is after the maximum allowed date.';\n\n@Component({\n tag: 'ds-input-date',\n styleUrl: 'InputDate.css',\n scoped: true,\n formAssociated: true,\n})\nexport class InputDate {\n @Element() el!: HTMLElement;\n @AttachInternals() internals!: ElementInternals;\n\n private generatedId = `ds-input-date-${++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 @Prop() min: string | undefined;\n @Prop() max: string | undefined;\n @Prop() size: InputDateSize = 'md';\n @Prop() width: InputDateWidth = '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 calendarButton?: 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-date-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-date-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 (!isIsoCalendarDate(this.value)) return true;\n if (this.min && isIsoCalendarDate(this.min) && this.value < this.min) return true;\n if (this.max && isIsoCalendarDate(this.max) && this.value > this.max) return true;\n return false;\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.position.unobserve();\n this.teardownListeners();\n }\n\n @Watch('value')\n @Watch('required')\n @Watch('requiredMessage')\n @Watch('min')\n @Watch('max')\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 && !isIsoCalendarDate(this.value)) {\n flags.badInput = true;\n message = INVALID_DATE_MESSAGE;\n } else if (this.value && this.min && isIsoCalendarDate(this.min) && this.value < this.min) {\n flags.rangeUnderflow = true;\n message = DATE_BEFORE_MIN_MESSAGE;\n } else if (this.value && this.max && isIsoCalendarDate(this.max) && this.value > this.max) {\n flags.rangeOverflow = true;\n message = DATE_AFTER_MAX_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-date-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 formatIsoCalendarDateLabel(this.value);\n }\n\n private parseDraft(text: string): string | null {\n const trimmed = text.trim();\n if (!trimmed) return '';\n const iso = parseLooseCalendarDate(trimmed);\n if (!iso) return null;\n if (this.min && isIsoCalendarDate(this.min) && iso < this.min) return null;\n if (this.max && isIsoCalendarDate(this.max) && iso > this.max) 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 = formatIsoCalendarDateLabel(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) 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.calendarButton?.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-date-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 handleCalendarChange = (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 this.closePicker('input');\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.calendarButton = element as HTMLDsButtonUnfilledElement | undefined;\n }}\n class=\"input-control__datetime-action\"\n variant=\"icon\"\n size={this.size}\n icon=\"Calendar\"\n hasBorder={false}\n isInset\n isInactive={pickerInactive}\n ariaLabel=\"Choose date\"\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-date-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 date\"\n >\n <ds-calendar\n selectionMode=\"single\"\n value={this.value}\n min={this.min}\n max={this.max}\n isInactive={pickerInactive}\n autoFocus\n onDsChange={this.handleCalendarChange}\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
|
+
{"version":3,"names":["inputDateCss","idCounter","INVALID_DATE_MESSAGE","DATE_BEFORE_MIN_MESSAGE","DATE_AFTER_MAX_MESSAGE","InputDate","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","generatedId","errorId","popupId","value","disabled","readOnly","required","requiredMessage","DEFAULT_REQUIRED_MESSAGE","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","handleCalendarChange","stopPropagation","detail","menuWidthXs","menuFallbackHeight","formInactive","hasConstraintError","isIsoCalendarDate","min","max","isInvalid","length","componentWillLoad","syncFormValue","disconnectedCallback","unobserve","teardownListeners","inactive","setFormControlValue","internals","flags","message","valueMissing","badInput","rangeUnderflow","rangeOverflow","setValidity","onInteractionStateChange","formDisabledCallback","formResetCallback","formStateRestoreCallback","state","restoreStringFormState","setFocus","inputEl","focus","handleHostKeyDown","key","preventDefault","composedPath","includes","tabLeavesPopup","moveFocusAfterTab","shiftKey","formatIsoCalendarDateLabel","text","trimmed","trim","iso","parseLooseCalendarDate","emit","dsChange","disconnect","clearTimeout","connect","observe","schedule","restore","cancel","calendarButton","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","selectionMode","onDsChange","as","color","textId"],"sources":["src/wc/components/InputDate/InputDate.css?tag=ds-input-date&encapsulation=scoped","src/wc/components/InputDate/InputDate.tsx"],"sourcesContent":["@import '../../utils/datetime-input-control.css';\n@import '../../utils/choice-popup.css';\n@import '../../utils/chrome-layout.css';\n\n.input-date-popup.ds-choice-popup {\n --ds-calendar-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 formatIsoCalendarDateLabel,\n isIsoCalendarDate,\n parseLooseCalendarDate,\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 InputDateSize = ControlSize;\nexport type InputDateWidth = ControlWidth;\n\nlet idCounter = 0;\n\nconst INVALID_DATE_MESSAGE = 'Enter a valid date.';\nconst DATE_BEFORE_MIN_MESSAGE = 'Date is before the minimum allowed date.';\nconst DATE_AFTER_MAX_MESSAGE = 'Date is after the maximum allowed date.';\n\n@Component({\n tag: 'ds-input-date',\n styleUrl: 'InputDate.css',\n scoped: true,\n formAssociated: true,\n})\nexport class InputDate {\n @Element() el!: HTMLElement;\n @AttachInternals() internals!: ElementInternals;\n\n private generatedId = `ds-input-date-${++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 @Prop() min: string | undefined;\n @Prop() max: string | undefined;\n @Prop() size: InputDateSize = 'md';\n @Prop() width: InputDateWidth = '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 calendarButton?: 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-date-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-date-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 (!isIsoCalendarDate(this.value)) return true;\n if (this.min && isIsoCalendarDate(this.min) && this.value < this.min) return true;\n if (this.max && isIsoCalendarDate(this.max) && this.value > this.max) return true;\n return false;\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.position.unobserve();\n this.teardownListeners();\n }\n\n @Watch('value')\n @Watch('required')\n @Watch('requiredMessage')\n @Watch('min')\n @Watch('max')\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 && !isIsoCalendarDate(this.value)) {\n flags.badInput = true;\n message = INVALID_DATE_MESSAGE;\n } else if (this.value && this.min && isIsoCalendarDate(this.min) && this.value < this.min) {\n flags.rangeUnderflow = true;\n message = DATE_BEFORE_MIN_MESSAGE;\n } else if (this.value && this.max && isIsoCalendarDate(this.max) && this.value > this.max) {\n flags.rangeOverflow = true;\n message = DATE_AFTER_MAX_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-date-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 formatIsoCalendarDateLabel(this.value);\n }\n\n private parseDraft(text: string): string | null {\n const trimmed = text.trim();\n if (!trimmed) return '';\n const iso = parseLooseCalendarDate(trimmed);\n if (!iso) return null;\n if (this.min && isIsoCalendarDate(this.min) && iso < this.min) return null;\n if (this.max && isIsoCalendarDate(this.max) && iso > this.max) 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 = formatIsoCalendarDateLabel(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) 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.calendarButton?.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-date-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 handleCalendarChange = (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 this.closePicker('input');\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.calendarButton = element as HTMLDsButtonUnfilledElement | undefined;\n }}\n class=\"input-control__datetime-action\"\n variant=\"icon\"\n size={this.size}\n icon=\"Calendar\"\n hasBorder={false}\n isInset\n isInactive={pickerInactive}\n ariaLabel=\"Choose date\"\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-date-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 date\"\n >\n <ds-calendar\n selectionMode=\"single\"\n value={this.value}\n min={this.min}\n max={this.max}\n isInactive={pickerInactive}\n autoFocus\n onDsChange={this.handleCalendarChange}\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,2 +1,2 @@
|
|
|
1
|
-
import{p as t,H as i,c as e,h as s,a as n,t as o}from"./index.js";import{A as r,r as d}from"./p-B8ZonS3S.js";import{r as a,A as c}from"./p-etg-Uk1u.js";import{d as l}from"./p-Cn6AfzeF.js";import{d as p}from"./p-D7K1ZHML.js";import{d as u}from"./p-DjkUFlDW.js";import{d as h}from"./p-0XTyQNRG.js";import{d as m}from"./p-ZwRLjD5M.js";import{i as f,a as v,f as g,p as b,d as y}from"./p-DsLXlxt3.js";import{d as x}from"./p-C_Ma6Xa-.js";import{D as w}from"./p-DOUk4KoT.js";import{r as k}from"./p-CochmPyg.js";import{s as z,r as C}from"./p-C0qN3PSb.js";import{b as F,T}from"./p-CeXf9-X3.js";import{a as I}from"./p-CGidq1iC.js";import{c as _}from"./p-DuFm-ieS.js";const j=()=>`@media (forced-colors: active){.sc-ds-input-time:root,.sc-ds-input-time-h,.ds-forced-colors-scope.sc-ds-input-time{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.ds-interaction-fill.sc-ds-input-time-h,.ds-interaction-fill.sc-ds-input-time{position:var(--ds-interaction-position, relative);z-index:var(--ds-interaction-z-index, 0);cursor:default;--ds-interaction-hover:var(--color-interaction-hover);--ds-interaction-pressed:var(--color-interaction-pressed);--ds-interaction-active:var(--color-interaction-active-brand);--ds-interaction-border-width:0px;--ds-interaction-border-color:transparent;--ds-interaction-divider-width:0px;--ds-interaction-divider-color:transparent;--ds-interaction-divider-inline-start-width:0px;--ds-interaction-divider-inline-start-color:transparent;--ds-interaction-divider-inline-end-width:0px;--ds-interaction-divider-inline-end-color:transparent}.ds-interaction-fill.sc-ds-input-time-h::before,.ds-interaction-fill.sc-ds-input-time::before,.ds-interaction-fill.sc-ds-input-time-h::after,.ds-interaction-fill.sc-ds-input-time::after{content:'';position:absolute;inset:0;border-radius:inherit;background:transparent;pointer-events:none;cursor:inherit;transition:none}.ds-interaction-fill.sc-ds-input-time-h::before,.ds-interaction-fill.sc-ds-input-time::before{z-index:1}.ds-interaction-fill.sc-ds-input-time-h::after,.ds-interaction-fill.sc-ds-input-time::after{z-index:3;box-shadow:inset 0 calc(-1 * var(--ds-interaction-divider-width)) 0 var(--ds-interaction-divider-color), inset var(--ds-interaction-divider-inline-start-width) 0 0 var(--ds-interaction-divider-inline-start-color), inset calc(-1 * var(--ds-interaction-divider-inline-end-width)) 0 0 var(--ds-interaction-divider-inline-end-color), inset 0 0 0 var(--ds-interaction-border-width) var(--ds-interaction-border-color)}.ds-interaction-fill--bordered.sc-ds-input-time-h,.ds-interaction-fill--bordered.sc-ds-input-time{--ds-interaction-border-width:var(--dimension-stroke-width-012);--ds-interaction-border-color:var(--color-border-secondary)}.ds-interaction-fill--selected.sc-ds-input-time-h::before,.ds-interaction-fill--selected.sc-ds-input-time::before{background:var(--ds-interaction-active)}.ds-interaction-fill--selected.sc-ds-input-time-h,.ds-interaction-fill--selected.sc-ds-input-time{--ds-interaction-dot-ring:var(--ds-interaction-active)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill.sc-ds-input-time-h:hover:not(:disabled)::after,.ds-interaction-fill.sc-ds-input-time:hover:not(:disabled)::after{background:var(--ds-interaction-hover)}}.ds-interaction-fill.sc-ds-input-time-h:active:not(:disabled)::after,.ds-interaction-fill.sc-ds-input-time:active:not(:disabled)::after{background:var(--ds-interaction-pressed)}.ds-interaction-fill--grouped.sc-ds-input-time-h::after,.ds-interaction-fill--grouped.sc-ds-input-time::after,.ds-interaction-fill--grouped.sc-ds-input-time-h:active:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-input-time:active:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill--grouped.sc-ds-input-time-h:hover:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-input-time:hover:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}}.ds-interaction-fill--grouped.sc-ds-input-time-h,.ds-interaction-fill--grouped.sc-ds-input-time{--ds-interaction-divider-width:var(--ds-interaction-group-divider-width, 0px);--ds-interaction-divider-color:var(--ds-interaction-group-divider-color, transparent);--ds-interaction-divider-inline-start-width:var( --ds-interaction-group-divider-inline-start-width, 0px );--ds-interaction-divider-inline-start-color:var( --ds-interaction-group-divider-inline-start-color, transparent );--ds-interaction-divider-inline-end-width:var( --ds-interaction-group-divider-inline-end-width, 0px );--ds-interaction-divider-inline-end-color:var( --ds-interaction-group-divider-inline-end-color, transparent )}.ds-interaction-fill.sc-ds-input-time-h>.ds-interaction-fill__content.sc-ds-input-time,.ds-interaction-fill.sc-ds-input-time>.ds-interaction-fill__content.sc-ds-input-time,.ds-interaction-fill__content.sc-ds-input-time{position:relative;z-index:2;cursor:inherit}.ds-interaction-fill--on-faint.sc-ds-input-time-h,.ds-interaction-fill--on-faint.sc-ds-input-time{--ds-interaction-active:var(--color-interaction-active)}.ds-interaction-fill--on-medium.sc-ds-input-time-h,.ds-interaction-fill--on-medium.sc-ds-input-time{--ds-interaction-hover:var(--color-interaction-on-medium-background-hover);--ds-interaction-pressed:var(--color-interaction-on-medium-background-pressed);--ds-interaction-active:var(--color-interaction-on-medium-background-active);--ds-focus-ring-color:var(--color-interaction-on-medium-background-focus)}.ds-interaction-fill--on-bold.sc-ds-input-time-h,.ds-interaction-fill--on-bold.sc-ds-input-time{--ds-interaction-hover:var(--color-interaction-on-bold-background-hover);--ds-interaction-pressed:var(--color-interaction-on-bold-background-pressed);--ds-interaction-active:var(--color-interaction-on-bold-background-active);--ds-focus-ring-color:var(--color-interaction-on-bold-background-focus)}.ds-interaction-fill--on-strong.sc-ds-input-time-h,.ds-interaction-fill--on-strong.sc-ds-input-time{--ds-interaction-hover:var(--color-interaction-on-strong-background-hover);--ds-interaction-pressed:var(--color-interaction-on-strong-background-pressed);--ds-interaction-active:var(--color-interaction-on-strong-background-active);--ds-focus-ring-color:var(--color-interaction-on-strong-background-focus)}.ds-interaction-fill--on-translucent.sc-ds-input-time-h,.ds-interaction-fill--on-translucent.sc-ds-input-time{--ds-interaction-hover:var(--color-translucent-interaction-hover);--ds-interaction-pressed:var(--color-translucent-interaction-pressed);--ds-interaction-active:var(--color-translucent-interaction-active-brand);--ds-focus-ring-color:var(--color-translucent-interaction-focus)}.ds-interaction-fill--on-inverted.sc-ds-input-time-h,.ds-interaction-fill--on-inverted.sc-ds-input-time{--ds-interaction-hover:var(--color-inverted-interaction-hover);--ds-interaction-pressed:var(--color-inverted-interaction-pressed);--ds-interaction-active:var(--color-inverted-interaction-active-brand);--ds-focus-ring-color:var(--color-inverted-interaction-focus)}.ds-interaction-fill--on-media.sc-ds-input-time-h,.ds-interaction-fill--on-media.sc-ds-input-time{--ds-interaction-hover:var(--color-media-interaction-hover);--ds-interaction-pressed:var(--color-media-interaction-pressed);--ds-interaction-active:var(--color-media-interaction-active);--ds-focus-ring-color:var(--color-media-interaction-focus)}.ds-interaction-fill--on-always-dark.sc-ds-input-time-h,.ds-interaction-fill--on-always-dark.sc-ds-input-time{--ds-interaction-hover:var(--color-always-dark-interaction-hover);--ds-interaction-pressed:var(--color-always-dark-interaction-pressed);--ds-interaction-active:var(--color-always-dark-interaction-active-brand);--ds-focus-ring-color:var(--color-always-dark-interaction-focus)}.ds-interaction-fill--on-navigation.sc-ds-input-time-h,.ds-interaction-fill--on-navigation.sc-ds-input-time{--ds-interaction-hover:var(--color-navigation-interaction-hover);--ds-interaction-pressed:var(--color-navigation-interaction-pressed);--ds-interaction-active:var(--color-navigation-interaction-active);--ds-focus-ring-color:var(--color-navigation-interaction-focus)}.ds-interaction-fill.ds-interaction-fill--surface-open.sc-ds-input-time-h:not(:disabled)::after,.ds-interaction-fill.ds-interaction-fill--surface-open.sc-ds-input-time:not(:disabled)::after{background:var(--ds-interaction-pressed)}@media (forced-colors: active){.ds-interaction-fill.sc-ds-input-time-h::after,.ds-interaction-fill.sc-ds-input-time::after{box-shadow:none;outline:var(--ds-interaction-border-width) solid var(--ds-forced-color-control-boundary);outline-offset:calc(-1 * var(--ds-interaction-border-width))}.ds-interaction-fill--surface-open.sc-ds-input-time-h:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after,.ds-interaction-fill--surface-open.sc-ds-input-time:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after{outline:var(--dimension-stroke-width-025) dashed var(--ds-forced-color-control-boundary);outline-offset:calc(-1 * var(--dimension-stroke-width-025))}.ds-interaction-fill--selected.sc-ds-input-time-h::before,.ds-interaction-fill--selected.sc-ds-input-time::before{background:transparent;outline:var(--dimension-stroke-width-025) solid var(--ds-forced-color-selected);outline-offset:calc(-1 * var(--dimension-stroke-width-025))}}@media (forced-colors: active) and (hover: hover) and (pointer: fine){.ds-interaction-fill.sc-ds-input-time-h:hover:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after,.ds-interaction-fill.sc-ds-input-time:hover:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after{outline-color:var(--ds-forced-color-selected);outline-width:var(--dimension-stroke-width-012)}}@media (forced-colors: active){.sc-ds-input-time:root,.sc-ds-input-time-h,.ds-forced-colors-scope.sc-ds-input-time{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.sc-ds-input-time-h{--ds-focus-ring-width:var(--dimension-stroke-width-025, 2px);--ds-focus-ring-offset:var(--dimension-space-025, 2px);--ds-focus-ring-color:var(--color-interaction-focus)}.ds-focus-ring.sc-ds-input-time-h,.ds-focus-ring.sc-ds-input-time,.ds-focus-ring-inset.sc-ds-input-time-h,.ds-focus-ring-inset.sc-ds-input-time{outline:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.ds-focus-ring.sc-ds-input-time-h:focus-visible,.ds-focus-ring.sc-ds-input-time:focus-visible{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring.ds-focus-ring--visible.sc-ds-input-time-h,.ds-focus-ring.ds-focus-ring--visible.sc-ds-input-time{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring-inset.sc-ds-input-time-h:focus-visible,.ds-focus-ring-inset.sc-ds-input-time:focus-visible{outline:none}.ds-focus-ring-inset.sc-ds-input-time-h:focus-visible::after,.ds-focus-ring-inset.sc-ds-input-time:focus-visible::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-input-time-h,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-input-time{outline:none}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-input-time-h::after,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-input-time::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}@media (forced-colors: active){.sc-ds-input-time-h{--ds-focus-ring-color:var(--ds-forced-color-selected)}}@media (forced-colors: active){.sc-ds-input-time:root,.sc-ds-input-time-h,.ds-forced-colors-scope.sc-ds-input-time{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.ds-control-inactive.sc-ds-input-time-h,.ds-control-inactive.sc-ds-input-time{opacity:var(--effect-opacity-medium);pointer-events:none;cursor:not-allowed}@media (forced-colors: active){.ds-control-inactive.sc-ds-input-time-h,.ds-control-inactive.sc-ds-input-time{color:var(--ds-forced-color-disabled);opacity:1}}.sc-ds-input-time-h,.sc-ds-input-time:where(.ds-table),.sc-ds-input-time:where(.tooltip-popup),.sc-ds-input-time:where(.ds-radius){--ds-radius-control:var(--dimension-radius-025);--ds-radius-card:var(--dimension-radius-050);--ds-radius-modal:var(--dimension-radius-050);--ds-radius-menu:var(--dimension-radius-075);--ds-radius-tooltip-control:var(--dimension-radius-025);--ds-radius-tooltip-menu:var(--dimension-radius-075);--ds-radius-table:var(--dimension-radius-050)}.ds-control--lg.sc-ds-input-time,.ds-control--lg.sc-ds-input-time-h,.ds-control--md.sc-ds-input-time-h,.ds-control--md.sc-ds-input-time,.ds-control--sm.sc-ds-input-time-h,.ds-control--sm.sc-ds-input-time,.ds-control--xs.sc-ds-input-time-h,.ds-control--xs.sc-ds-input-time{--ds-control-radius:var(--ds-radius-control)}.ds-control--lg.sc-ds-input-time-h,.ds-control--lg.sc-ds-input-time{--ds-control-height:var(--dimension-size-500);--ds-control-icon:var(--dimension-iconography-lg);--ds-control-padding-inline:var(--dimension-space-100);--ds-control-label-inset:var(--dimension-space-050);--ds-control-gap:var(--dimension-space-050)}.ds-control--md.sc-ds-input-time-h,.ds-control--md.sc-ds-input-time{--ds-control-height:var(--dimension-size-400);--ds-control-icon:var(--dimension-iconography-md);--ds-control-padding-inline:var(--dimension-space-075);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:var(--dimension-space-050)}.ds-control--sm.sc-ds-input-time-h,.ds-control--sm.sc-ds-input-time{--ds-control-height:var(--dimension-size-300);--ds-control-icon:var(--dimension-iconography-sm);--ds-control-padding-inline:var(--dimension-space-050);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:var(--dimension-space-025)}.ds-control--xs.sc-ds-input-time-h,.ds-control--xs.sc-ds-input-time{--ds-control-height:var(--dimension-size-200);--ds-control-icon:var(--dimension-iconography-xs);--ds-control-padding-inline:var(--dimension-space-025);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:0}.ds-control-frame.sc-ds-input-time{display:inline-flex;align-items:center;box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400));padding-inline:var(--ds-control-padding-inline, var(--dimension-space-075));gap:var(--ds-control-gap, var(--dimension-space-050));border-radius:var(--ds-control-radius, var(--dimension-radius-025))}.ds-control-section-heading.sc-ds-input-time{display:flex;align-items:center;box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400));padding-inline:calc( var(--ds-control-padding-inline, var(--dimension-space-075)) + var(--ds-control-label-inset, var(--dimension-space-025)) )}.ds-control-icon-box.sc-ds-input-time{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--ds-control-icon, var(--dimension-iconography-md));height:var(--ds-control-icon, var(--dimension-iconography-md))}.ds-control-label-box.sc-ds-input-time{min-width:0;padding-inline:var(--ds-control-label-inset, var(--dimension-space-025))}.ds-control-label-dot.sc-ds-input-time{position:relative;padding-inline-end:calc( var(--ds-control-label-inset, var(--dimension-space-025)) + var(--ds-control-gap, var(--dimension-space-050)) )}.ds-control-label-dot__badge.sc-ds-input-time{position:absolute;inset-block-start:0;inset-inline-end:0;pointer-events:none}.ds-control-width--hug.sc-ds-input-time-h,.ds-control-width--hug.sc-ds-input-time{width:fit-content;max-width:100%;flex:0 0 auto}.ds-control-width--fill.sc-ds-input-time-h,.ds-control-width--fill.sc-ds-input-time{width:100%;min-width:0;flex:1 1 auto;align-self:stretch}.ds-field-stack.sc-ds-input-time-h,.ds-field-stack.sc-ds-input-time{display:flex;flex-direction:column;gap:var(--dimension-space-050)}.ds-field-stack.ds-field-stack--supporting-inset.sc-ds-input-time-h .error-text.sc-ds-input-time,.ds-field-stack.ds-field-stack--supporting-inset.sc-ds-input-time .error-text.sc-ds-input-time,.ds-field-stack.ds-field-stack--supporting-inset.sc-ds-input-time .field__description.sc-ds-input-time,.ds-field-stack.ds-field-stack--supporting-inset.sc-ds-input-time .field__error.sc-ds-input-time{padding-inline:calc( var(--ds-control-padding-inline, var(--dimension-space-075)) + var(--ds-control-label-inset, var(--dimension-space-025)) )}.ds-text--display-medium.sc-ds-input-time-h,.ds-text--display-medium.sc-ds-input-time{font-size:var(--typography-fontsize-3xl);line-height:var(--typography-lineheight-3xl)}.ds-text--display-small.sc-ds-input-time-h,.ds-text--display-small.sc-ds-input-time{font-size:var(--typography-fontsize-2xl);line-height:var(--typography-lineheight-2xl)}.ds-text--title-large.sc-ds-input-time-h,.ds-text--title-large.sc-ds-input-time{font-size:var(--typography-fontsize-xl);line-height:var(--typography-lineheight-xl)}.ds-text--title-medium.sc-ds-input-time-h,.ds-text--title-medium.sc-ds-input-time{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--title-small.sc-ds-input-time-h,.ds-text--title-small.sc-ds-input-time{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-large.sc-ds-input-time-h,.ds-text--body-large.sc-ds-input-time{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--body-medium.sc-ds-input-time-h,.ds-text--body-medium.sc-ds-input-time{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-small.sc-ds-input-time-h,.ds-text--body-small.sc-ds-input-time{font-size:var(--typography-fontsize-sm);line-height:var(--typography-lineheight-sm)}.ds-text--caption.sc-ds-input-time-h,.ds-text--caption.sc-ds-input-time{font-size:var(--typography-fontsize-xs);line-height:var(--typography-lineheight-xs);text-transform:uppercase}.ds-text--display-medium.ds-text--emphasis.sc-ds-input-time-h,.ds-text--display-small.ds-text--emphasis.sc-ds-input-time-h,.ds-text--display-medium.ds-text--emphasis.sc-ds-input-time,.ds-text--display-small.ds-text--emphasis.sc-ds-input-time{font-weight:var(--typography-weight-bold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--display-medium.ds-text--regular.sc-ds-input-time-h,.ds-text--display-small.ds-text--regular.sc-ds-input-time-h,.ds-text--display-medium.ds-text--regular.sc-ds-input-time,.ds-text--display-small.ds-text--regular.sc-ds-input-time{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-large.ds-text--emphasis.sc-ds-input-time-h,.ds-text--title-large.ds-text--emphasis.sc-ds-input-time{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--title-large.ds-text--regular.sc-ds-input-time-h,.ds-text--title-large.ds-text--regular.sc-ds-input-time{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--emphasis.sc-ds-input-time-h,.ds-text--title-small.ds-text--emphasis.sc-ds-input-time-h,.ds-text--title-medium.ds-text--emphasis.sc-ds-input-time,.ds-text--title-small.ds-text--emphasis.sc-ds-input-time{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--regular.sc-ds-input-time-h,.ds-text--title-small.ds-text--regular.sc-ds-input-time-h,.ds-text--title-medium.ds-text--regular.sc-ds-input-time,.ds-text--title-small.ds-text--regular.sc-ds-input-time{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-large.ds-text--emphasis.sc-ds-input-time-h,.ds-text--body-medium.ds-text--emphasis.sc-ds-input-time-h,.ds-text--body-large.ds-text--emphasis.sc-ds-input-time,.ds-text--body-medium.ds-text--emphasis.sc-ds-input-time{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--body-large.ds-text--regular.sc-ds-input-time-h,.ds-text--body-medium.ds-text--regular.sc-ds-input-time-h,.ds-text--body-large.ds-text--regular.sc-ds-input-time,.ds-text--body-medium.ds-text--regular.sc-ds-input-time{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--emphasis.sc-ds-input-time-h,.ds-text--body-small.ds-text--emphasis.sc-ds-input-time{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--regular.sc-ds-input-time-h,.ds-text--body-small.ds-text--regular.sc-ds-input-time{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-none)}.ds-text--caption.ds-text--emphasis.sc-ds-input-time-h,.ds-text--caption.ds-text--emphasis.sc-ds-input-time{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-positive)}.ds-text--caption.ds-text--regular.sc-ds-input-time-h,.ds-text--caption.ds-text--regular.sc-ds-input-time{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-positive)}@media (forced-colors: active){.sc-ds-input-time:root,.sc-ds-input-time-h,.ds-forced-colors-scope.sc-ds-input-time{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.input-host.sc-ds-input-time-h{display:inline-flex;--ds-input-fg:var(--color-foreground-primary);--ds-input-placeholder:var(--color-foreground-secondary);--ds-input-placeholder-active:var(--color-foreground-quaternary);--ds-input-adornment-fg:var(--color-foreground-secondary);--ds-input-border:var(--color-border-secondary)}.ds-control-width--fill.sc-ds-input-time-h,.ds-control-width--fill.sc-ds-input-time-h .input-control.sc-ds-input-time{width:100%}.input-control.sc-ds-input-time{overflow:hidden;background:transparent;border:none;border-radius:var(--ds-control-radius, var(--dimension-radius-025));color:var(--ds-input-fg)}.input-control--bordered.sc-ds-input-time{--ds-interaction-border-width:var(--dimension-stroke-width-012);--ds-interaction-border-color:var(--ds-input-border)}.input-control--error.sc-ds-input-time{--ds-interaction-border-width:var(--dimension-stroke-width-018);--ds-interaction-border-color:var(--color-border-bold-negative)}.input-control--bordered.sc-ds-input-time:focus-within:not(.input-control--error){--ds-interaction-border-width:var(--dimension-stroke-width-018);--ds-interaction-border-color:var(--color-border-bold-brand)}.ds-control-inactive.sc-ds-input-time-h .input-control.sc-ds-input-time::after{background:transparent}.native-input.sc-ds-input-time{position:relative;z-index:2;flex:1 1 auto;min-width:0;height:100%;background:transparent;border:none;border-radius:inherit;outline:none;color:var(--ds-input-fg);font-family:inherit;letter-spacing:inherit;text-overflow:ellipsis;-webkit-appearance:none;appearance:none;color-scheme:inherit}.native-input--align-start.sc-ds-input-time{text-align:start}.native-input.sc-ds-input-time:disabled{cursor:not-allowed}.native-input.sc-ds-input-time:read-only:not(:disabled){cursor:default}.native-input.sc-ds-input-time::-webkit-calendar-picker-indicator{display:none}.native-input.sc-ds-input-time::-webkit-inner-spin-button,.native-input.sc-ds-input-time::-webkit-clear-button{display:none}.native-input.sc-ds-input-time::-webkit-datetime-edit,.native-input.sc-ds-input-time::-webkit-datetime-edit-fields-wrapper,.native-input.sc-ds-input-time::-webkit-datetime-edit-text,.native-input.sc-ds-input-time::-webkit-datetime-edit-month-field,.native-input.sc-ds-input-time::-webkit-datetime-edit-day-field,.native-input.sc-ds-input-time::-webkit-datetime-edit-year-field,.native-input.sc-ds-input-time::-webkit-datetime-edit-hour-field,.native-input.sc-ds-input-time::-webkit-datetime-edit-minute-field,.native-input.sc-ds-input-time::-webkit-datetime-edit-second-field,.native-input.sc-ds-input-time::-webkit-datetime-edit-ampm-field{padding:0;color:inherit;font:inherit;letter-spacing:inherit}.input-control__prefix.sc-ds-input-time{position:relative;z-index:2;color:var(--ds-input-adornment-fg)}.input-control.sc-ds-input-time>.input-control__datetime-action.sc-ds-input-time{position:relative;z-index:2;flex-shrink:0;align-self:center}.ds-control-inactive.sc-ds-input-time-h .input-control.sc-ds-input-time>.input-control__datetime-action.sc-ds-input-time{--effect-opacity-medium:1}.input-control.sc-ds-input-time:has(.input-control__datetime-action){padding-inline-end:var(--dimension-space-025)}.error-text.sc-ds-input-time{width:100%}@media (forced-colors: active){.input-control--bordered.sc-ds-input-time:focus-within:not(.input-control--error)::after{outline-color:var(--ds-forced-color-selected)}.input-control--error.sc-ds-input-time::after{outline-style:dashed}}.ds-choice-popup.sc-ds-input-time{box-sizing:border-box;display:flex;flex-direction:column;min-width:var(--ds-choice-popup-min-inline-size, var(--dimension-menu-width-xs));max-width:min(var(--dimension-panel-width-lg), calc(100vw - var(--dimension-space-200)));max-height:calc(100vh - var(--dimension-space-200));overflow:hidden;inset:auto;margin:0;padding:0;border:0;background-color:var(--color-background-primary);border-radius:var(--ds-radius-menu);box-shadow:var(--effect-shadow-elevated-floating);color:var(--color-foreground-secondary);animation:dsChoiceFadeIn var(--effect-motion-short-2) forwards;backface-visibility:hidden;will-change:transform;text-align:start}.ds-choice-popup.sc-ds-input-time::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:var(--effect-highlight-elevated-floating)}.ds-choice-popup--closing.sc-ds-input-time{animation:dsChoiceFadeOut var(--effect-motion-short-2) forwards}@keyframes dsChoiceFadeIn{from{opacity:0;transform:inherit scale(0.97)}to{opacity:1}}@keyframes dsChoiceFadeOut{from{opacity:1}to{opacity:0}}@media (prefers-reduced-motion: reduce){.ds-choice-popup.sc-ds-input-time{animation:none;opacity:1}.ds-choice-popup--closing.sc-ds-input-time{opacity:0}}@media (forced-colors: active){.ds-choice-popup.sc-ds-input-time{outline:var(--dimension-stroke-width-012) solid var(--ds-forced-color-content);outline-offset:calc(-1 * var(--dimension-stroke-width-012))}.ds-choice-popup.sc-ds-input-time::after{box-shadow:none}}.ds-chrome-space--sm.sc-ds-input-time-h,.ds-chrome-space--sm.sc-ds-input-time{--ds-chrome-padding:var(--dimension-space-050);--ds-chrome-gap:var(--dimension-space-050)}.ds-chrome-space--md.sc-ds-input-time-h,.ds-chrome-space--md.sc-ds-input-time{--ds-chrome-padding:var(--dimension-space-100);--ds-chrome-gap:var(--dimension-space-100)}.ds-chrome-space--lg.sc-ds-input-time-h,.ds-chrome-space--lg.sc-ds-input-time{--ds-chrome-padding:var(--dimension-space-200);--ds-chrome-gap:var(--dimension-space-200)}.ds-chrome-row.sc-ds-input-time-h,.ds-chrome-row.sc-ds-input-time,.ds-chrome-column.sc-ds-input-time-h,.ds-chrome-column.sc-ds-input-time,.ds-chrome-grid.sc-ds-input-time-h,.ds-chrome-grid.sc-ds-input-time{display:flex;box-sizing:border-box;gap:var(--ds-chrome-gap, var(--dimension-space-100));padding:var(--ds-chrome-padding, var(--dimension-space-100))}.ds-chrome-row.sc-ds-input-time-h,.ds-chrome-row.sc-ds-input-time{flex-direction:row;align-items:center}.ds-chrome-column.sc-ds-input-time-h,.ds-chrome-column.sc-ds-input-time{flex-direction:column}.ds-chrome-grid.sc-ds-input-time-h,.ds-chrome-grid.sc-ds-input-time{display:grid;align-items:center}.input-time-popup.ds-choice-popup.sc-ds-input-time{--ds-time-picker-padding:0;padding:var(--dimension-space-050)}`;let D=0;const H="Enter a valid time.";const O="Time is before the minimum allowed time.";const V="Time is after the maximum allowed time.";const E="Time does not match the allowed interval.";const q=t(class t extends i{constructor(t){super();if(t!==false){this.__registerHost()}this.dsChange=e(this,"dsChange",7);this.internals=this.attachInternals();this.generatedId=`ds-input-time-${++D}`;this.errorId=`${this.generatedId}-error`;this.popupId=`${this.generatedId}-popup`;this.value="";this.disabled=false;this.readOnly=false;this.required=false;this.requiredMessage=w;this.step=60;this.size="md";this.width="fill";this.hasBorder=true;this.hasInteractionFill=true;this.isInactive=false;this.autoFocus=false;this.error=false;this.ariaLabel=null;this.initialValue="";this.closeTimer=null;this.formDisabled=false;this.focused=false;this.touched=false;this.draftText="";this.open=false;this.shouldRender=false;this.closing=false;this.positionReady=false;this.pos={x:0,y:0};this.position=new r({getAnchor:()=>this.controlEl??null,getPopup:()=>this.el.querySelector(".input-time-popup"),getOwnerDocument:()=>this.el.ownerDocument,measure:(t,i)=>{if(!this.open)return null;const e=k(T.space050,T.space050);return{anchorRect:t.getBoundingClientRect(),popupWidth:i.offsetWidth||this.popupFallbackWidth,popupHeight:i.offsetHeight||this.popupFallbackHeight,side:"bottom",align:"end",sideOffsetPx:k(T.space050,T.space050),alignOffsetPx:a({align:"end",alignOffsetPx:0,sectionInsetPx:e,anchorAlignment:"popup-frame"}),viewportPadPx:k(T.space050,T.space050),viewportWidth:window.innerWidth,viewportHeight:window.innerHeight,collisionRect:d(t)}},apply:({x:t,y:i})=>{this.pos={x:t,y:i}},onReady:()=>{this.positionReady=true},liveUpdate:"double-frame",observeResize:true,topLayer:true});this.interaction=new c({getAnchor:()=>this.controlEl??null,getPopup:()=>this.el.querySelector(".input-time-popup"),getOwnerDocument:()=>this.el.ownerDocument,onOutsideActivation:()=>this.closePicker(false)});this.togglePicker=()=>{if(this.isInactive||this.disabled||this.formDisabled||this.readOnly)return;if(this.open)this.closePicker("button");else this.openPicker()};this.handleInput=t=>{if(this.pickerInactive)return;this.draftText=t.target.value;const i=this.parseDraft(this.draftText);if(i===null)return;this.commitIso(i)};this.handleFocus=()=>{this.draftText=this.displayValue||this.value;this.focused=true};this.handleBlur=()=>{this.focused=false;this.touched=true;if(this.pickerInactive){this.draftText=this.displayValue;return}const t=this.parseDraft(this.draftText);if(t===null){this.draftText=this.displayValue;return}this.commitIso(t)};this.handleTimeChange=t=>{t.stopPropagation();if(this.pickerInactive)return;const i=this.parseDraft(t.detail);if(i===null)return;this.commitIso(i)}}get popupFallbackWidth(){return k(T.menuWidthXs,T.menuWidthXs)}get popupFallbackHeight(){return k(T.menuFallbackHeight,T.menuFallbackHeight)}get formInactive(){return this.isInactive||this.disabled||this.formDisabled}get pickerInactive(){return this.formInactive||this.readOnly}get hasConstraintError(){if(!this.value)return false;if(!f(this.value))return true;if(this.min&&f(this.min)&&this.value<this.min)return true;if(this.max&&f(this.max)&&this.value>this.max)return true;return!v(this.value,this.step,this.min)}get isInvalid(){return this.error||!this.formInactive&&(this.required&&this.value.length===0||this.hasConstraintError)}componentWillLoad(){this.initialValue=this.value;this.syncFormValue()}disconnectedCallback(){this.position.unobserve();this.teardownListeners()}syncFormValue(){const t=this.formInactive;z(this.internals,this.value,{inactive:t});const i={};let e="";if(!t){if(this.required&&this.value.length===0){i.valueMissing=true;e=this.requiredMessage}else if(this.value&&!f(this.value)){i.badInput=true;e=H}else if(this.value&&this.min&&f(this.min)&&this.value<this.min){i.rangeUnderflow=true;e=O}else if(this.value&&this.max&&f(this.max)&&this.value>this.max){i.rangeOverflow=true;e=V}else if(this.value&&!v(this.value,this.step,this.min)){i.stepMismatch=true;e=E}}this.internals.setValidity(i,e)}onInteractionStateChange(){this.syncFormValue();if(this.pickerInactive&&this.shouldRender)this.closePicker(false)}formDisabledCallback(t){this.formDisabled=t;this.onInteractionStateChange()}formResetCallback(){this.value=this.initialValue;this.draftText=this.displayValue}formStateRestoreCallback(t){this.value=C(t);this.draftText=this.displayValue}async setFocus(){this.inputEl?.focus()}handleHostKeyDown(t){if(!this.shouldRender||this.closing)return;if(t.key==="Escape"){t.preventDefault();this.closePicker("button");return}if(t.key!=="Tab")return;const i=this.el.querySelector(".input-time-popup");if(!i||!t.composedPath().includes(i))return;if(!this.interaction.tabLeavesPopup(t))return;t.preventDefault();this.closePicker(false);this.interaction.moveFocusAfterTab(t.shiftKey)}get displayValue(){return g(this.value)}parseDraft(t){const i=t.trim();if(!i)return"";const e=b(i);if(!e)return null;if(this.min&&f(this.min)&&e<this.min)return null;if(this.max&&f(this.max)&&e>this.max)return null;if(!v(e,this.step,this.min))return null;return e}commitIso(t,i=true){if(this.value!==t){this.value=t;if(i)this.dsChange.emit(t)}this.draftText=g(t)}teardownListeners(){this.position.unobserve();this.interaction.disconnect();if(this.closeTimer){clearTimeout(this.closeTimer);this.closeTimer=null}}openPicker(){const t=this.isInactive||this.disabled||this.formDisabled||this.readOnly;if(t||this.open)return;this.shouldRender=true;this.closing=false;this.positionReady=false;this.open=true;this.teardownListeners();this.interaction.connect();this.position.observe();this.position.schedule()}closePicker(t){if(!this.shouldRender||this.closing)return;this.open=false;this.position.cancel();this.closing=true;this.interaction.disconnect();this.position.unobserve();if(t==="input")this.inputEl?.focus();if(t==="button")void this.clockButton?.setFocus();const i=F(T.motionShort2,T.animationDurationShort3);if(i<=0){this.finishClose();return}this.closeTimer=setTimeout((()=>this.finishClose()),i)}finishClose(){const t=this.el.querySelector(".input-time-popup");if(t?.matches(":popover-open"))t.hidePopover();this.shouldRender=false;this.closing=false;this.closeTimer=null}render(){const t=this.inputId??this.generatedId;const i=this.formInactive;const e=this.pickerInactive;const o=this.value.length>0;const r=this.value!==this.initialValue;const d=this.error&&Boolean(this.errorMessage);const a=I[this.size];const c=`ds-text--${a.replace("text-","")}`;const l=[this.ariaDescribedby,d?this.errorId:undefined].filter(Boolean).join(" ")||undefined;const p={position:"fixed",left:"0",top:"0",transform:`translate(${Math.round(this.pos.x)}px, ${Math.round(this.pos.y)}px)`,zIndex:"var(--dimension-z-index-floating)",visibility:this.positionReady?"visible":"hidden"};return s(n,{key:"816e4864090d13d1a3d9ebe52da837aa619f0f88",class:{"input-host":true,"ds-field-stack":true,"ds-field-stack--supporting-inset":!this.hasBorder,"ds-control-inactive":i,[`ds-control--${this.size}`]:true,..._(this.width)},"data-disabled":i?"":undefined,"data-readonly":this.readOnly?"":undefined,"data-required":this.required?"":undefined,"data-invalid":this.isInvalid?"":undefined,"data-filled":o?"":undefined,"data-focused":this.focused?"":undefined,"data-dirty":r?"":undefined,"data-touched":this.touched?"":undefined},s("div",{key:"ec2b35f72a7218d0082b3f30717995e80db5bbc4",ref:t=>{this.controlEl=t},class:{"input-control":true,"ds-control-frame":true,"input-control--bordered":this.hasBorder,"input-control--error":this.hasBorder&&this.error,"ds-interaction-fill":this.hasInteractionFill,[`ds-control--${this.size}`]:true}},s("input",{key:"ecb4ae19f3be131486ac7349fb560d5d5d8e4309",ref:t=>{this.inputEl=t},type:"text",id:t,value:this.focused?this.draftText:this.displayValue,disabled:i,readOnly:this.readOnly,required:this.required,autoFocus:this.autoFocus,autoComplete:"off",spellcheck:false,class:{"native-input":true,"native-input--align-start":true,"ds-control-label-box":true,[c]:true,"ds-text--regular":true},"aria-label":this.ariaLabel,"aria-labelledby":this.ariaLabelledby,"aria-describedby":l,"aria-invalid":this.isInvalid?"true":undefined,onInput:this.handleInput,onFocus:this.handleFocus,onBlur:this.handleBlur}),s("ds-button-unfilled",{key:"ffcf966252e15080d5a8e26e0700e09be3b607b9",ref:t=>{this.clockButton=t},class:"input-control__datetime-action",variant:"icon",size:this.size,icon:"Clock",hasBorder:false,isInset:true,isInactive:e,ariaLabel:"Choose time",haspopup:"dialog",expanded:this.open,surfaceOpen:this.open||this.closing,controls:this.open?this.popupId:undefined,onDsClick:this.togglePicker})),this.shouldRender?s("div",{id:this.popupId,popover:"manual",class:{"input-time-popup":true,"ds-choice-popup":true,"ds-choice-popup--closing":this.closing,"ds-chrome-column":true,"ds-chrome-space--sm":true},style:p,role:"dialog","aria-label":"Choose time"},s("ds-time-picker",{value:this.value,min:this.min,max:this.max,step:this.step,isInactive:e,autoFocus:true,onDsChange:this.handleTimeChange})):null,d&&s("ds-text",{key:"9564f8a1c55f5150ef847eaee75667f9c8fba885",class:"error-text",as:"div",variant:"text-body-small",color:"negative",textId:this.errorId,role:"alert"},this.errorMessage))}static get formAssociated(){return true}get el(){return this}static get watchers(){return{value:[{syncFormValue:0}],required:[{syncFormValue:0}],requiredMessage:[{syncFormValue:0}],min:[{syncFormValue:0}],max:[{syncFormValue:0}],step:[{syncFormValue:0}],disabled:[{onInteractionStateChange:0}],isInactive:[{onInteractionStateChange:0}],readOnly:[{onInteractionStateChange:0}]}}static get style(){return j()}},[66,"ds-input-time",{value:[1025],name:[513],form:[513],disabled:[516],readOnly:[516,"read-only"],required:[516],requiredMessage:[1,"required-message"],step:[8],min:[1],max:[1],size:[1],width:[1],hasBorder:[4,"has-border"],hasInteractionFill:[4,"has-interaction-fill"],isInactive:[4,"is-inactive"],autoFocus:[4,"auto-focus"],error:[4],errorMessage:[1,"error-message"],inputId:[1,"input-id"],ariaLabel:[1,"aria-label"],ariaLabelledby:[1,"aria-labelledby"],ariaDescribedby:[1,"aria-describedby"],formDisabled:[32],focused:[32],touched:[32],draftText:[32],open:[32],shouldRender:[32],closing:[32],positionReady:[32],pos:[32],setFocus:[64]},[[0,"keydown","handleHostKeyDown"]],{value:[{syncFormValue:0}],required:[{syncFormValue:0}],requiredMessage:[{syncFormValue:0}],min:[{syncFormValue:0}],max:[{syncFormValue:0}],step:[{syncFormValue:0}],disabled:[{onInteractionStateChange:0}],isInactive:[{onInteractionStateChange:0}],readOnly:[{onInteractionStateChange:0}]}]);function P(){if(typeof customElements==="undefined"){return}const t=["ds-input-time","ds-badge","ds-button-unfilled","ds-icon","ds-loader","ds-text","ds-time-picker","ds-tooltip"];t.forEach((t=>{switch(t){case"ds-input-time":if(!customElements.get(o(t))){customElements.define(o(t),q)}break;case"ds-badge":if(!customElements.get(o(t))){l()}break;case"ds-button-unfilled":if(!customElements.get(o(t))){p()}break;case"ds-icon":if(!customElements.get(o(t))){u()}break;case"ds-loader":if(!customElements.get(o(t))){h()}break;case"ds-text":if(!customElements.get(o(t))){m()}break;case"ds-time-picker":if(!customElements.get(o(t))){y()}break;case"ds-tooltip":if(!customElements.get(o(t))){x()}break}}))}P();const S=q;const B=P;export{S as DsInputTime,B as defineCustomElement};
|
|
1
|
+
import{p as t,H as i,c as e,h as s,a as n,t as o}from"./index.js";import{A as r,r as d}from"./p-B8ZonS3S.js";import{A as a}from"./p-CwUXroLs.js";import{d as c}from"./p-CwdRaJER.js";import{d as l}from"./p-D6FRqNhN.js";import{d as p}from"./p-DjkUFlDW.js";import{d as u}from"./p-0XTyQNRG.js";import{d as h}from"./p-D8OWhnID.js";import{i as m,a as f,f as v,p as g,d as b}from"./p-Dyqd-cub.js";import{d as y}from"./p-DIQiHX0q.js";import{D as x}from"./p-DOUk4KoT.js";import{r as w}from"./p-CochmPyg.js";import{r as k}from"./p-DhKvqh5G.js";import{s as z,r as C}from"./p-C0qN3PSb.js";import{b as F,T as I}from"./p-CeXf9-X3.js";import{C as T}from"./p-CuwopElg.js";import{c as _}from"./p-DuFm-ieS.js";const D=()=>`@media (forced-colors: active){.sc-ds-input-time:root,.sc-ds-input-time-h,.ds-forced-colors-scope.sc-ds-input-time{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.ds-interaction-fill.sc-ds-input-time-h,.ds-interaction-fill.sc-ds-input-time{position:var(--ds-interaction-position, relative);z-index:var(--ds-interaction-z-index, 0);cursor:default;--ds-interaction-hover:var(--color-interaction-hover);--ds-interaction-pressed:var(--color-interaction-pressed);--ds-interaction-active:var(--color-interaction-active-brand);--ds-interaction-border-width:0px;--ds-interaction-border-color:transparent;--ds-interaction-divider-width:0px;--ds-interaction-divider-color:transparent;--ds-interaction-divider-inline-start-width:0px;--ds-interaction-divider-inline-start-color:transparent;--ds-interaction-divider-inline-end-width:0px;--ds-interaction-divider-inline-end-color:transparent}.ds-interaction-fill.sc-ds-input-time-h::before,.ds-interaction-fill.sc-ds-input-time::before,.ds-interaction-fill.sc-ds-input-time-h::after,.ds-interaction-fill.sc-ds-input-time::after{content:'';position:absolute;inset:0;border-radius:inherit;background:transparent;pointer-events:none;cursor:inherit;transition:none}.ds-interaction-fill.sc-ds-input-time-h::before,.ds-interaction-fill.sc-ds-input-time::before{z-index:1}.ds-interaction-fill.sc-ds-input-time-h::after,.ds-interaction-fill.sc-ds-input-time::after{z-index:3;box-shadow:inset 0 calc(-1 * var(--ds-interaction-divider-width)) 0 var(--ds-interaction-divider-color), inset var(--ds-interaction-divider-inline-start-width) 0 0 var(--ds-interaction-divider-inline-start-color), inset calc(-1 * var(--ds-interaction-divider-inline-end-width)) 0 0 var(--ds-interaction-divider-inline-end-color), inset 0 0 0 var(--ds-interaction-border-width) var(--ds-interaction-border-color)}.ds-interaction-fill--bordered.sc-ds-input-time-h,.ds-interaction-fill--bordered.sc-ds-input-time{--ds-interaction-border-width:var(--dimension-stroke-width-012);--ds-interaction-border-color:var(--color-border-secondary)}.ds-interaction-fill--selected.sc-ds-input-time-h::before,.ds-interaction-fill--selected.sc-ds-input-time::before{background:var(--ds-interaction-active)}.ds-interaction-fill--selected.sc-ds-input-time-h,.ds-interaction-fill--selected.sc-ds-input-time{--ds-interaction-dot-ring:var(--ds-interaction-active)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill.sc-ds-input-time-h:hover:not(:disabled)::after,.ds-interaction-fill.sc-ds-input-time:hover:not(:disabled)::after{background:var(--ds-interaction-hover)}}.ds-interaction-fill.sc-ds-input-time-h:active:not(:disabled)::after,.ds-interaction-fill.sc-ds-input-time:active:not(:disabled)::after{background:var(--ds-interaction-pressed)}.ds-interaction-fill--grouped.sc-ds-input-time-h::after,.ds-interaction-fill--grouped.sc-ds-input-time::after,.ds-interaction-fill--grouped.sc-ds-input-time-h:active:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-input-time:active:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill--grouped.sc-ds-input-time-h:hover:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-input-time:hover:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}}.ds-interaction-fill--grouped.sc-ds-input-time-h,.ds-interaction-fill--grouped.sc-ds-input-time{--ds-interaction-divider-width:var(--ds-interaction-group-divider-width, 0px);--ds-interaction-divider-color:var(--ds-interaction-group-divider-color, transparent);--ds-interaction-divider-inline-start-width:var( --ds-interaction-group-divider-inline-start-width, 0px );--ds-interaction-divider-inline-start-color:var( --ds-interaction-group-divider-inline-start-color, transparent );--ds-interaction-divider-inline-end-width:var( --ds-interaction-group-divider-inline-end-width, 0px );--ds-interaction-divider-inline-end-color:var( --ds-interaction-group-divider-inline-end-color, transparent )}.ds-interaction-fill.sc-ds-input-time-h>.ds-interaction-fill__content.sc-ds-input-time,.ds-interaction-fill.sc-ds-input-time>.ds-interaction-fill__content.sc-ds-input-time,.ds-interaction-fill__content.sc-ds-input-time{position:relative;z-index:2;cursor:inherit}.ds-interaction-fill--on-faint.sc-ds-input-time-h,.ds-interaction-fill--on-faint.sc-ds-input-time{--ds-interaction-active:var(--color-interaction-active)}.ds-interaction-fill--on-medium.sc-ds-input-time-h,.ds-interaction-fill--on-medium.sc-ds-input-time{--ds-interaction-hover:var(--color-interaction-on-medium-background-hover);--ds-interaction-pressed:var(--color-interaction-on-medium-background-pressed);--ds-interaction-active:var(--color-interaction-on-medium-background-active);--ds-focus-ring-color:var(--color-interaction-on-medium-background-focus)}.ds-interaction-fill--on-bold.sc-ds-input-time-h,.ds-interaction-fill--on-bold.sc-ds-input-time{--ds-interaction-hover:var(--color-interaction-on-bold-background-hover);--ds-interaction-pressed:var(--color-interaction-on-bold-background-pressed);--ds-interaction-active:var(--color-interaction-on-bold-background-active);--ds-focus-ring-color:var(--color-interaction-on-bold-background-focus)}.ds-interaction-fill--on-strong.sc-ds-input-time-h,.ds-interaction-fill--on-strong.sc-ds-input-time{--ds-interaction-hover:var(--color-interaction-on-strong-background-hover);--ds-interaction-pressed:var(--color-interaction-on-strong-background-pressed);--ds-interaction-active:var(--color-interaction-on-strong-background-active);--ds-focus-ring-color:var(--color-interaction-on-strong-background-focus)}.ds-interaction-fill--on-translucent.sc-ds-input-time-h,.ds-interaction-fill--on-translucent.sc-ds-input-time{--ds-interaction-hover:var(--color-translucent-interaction-hover);--ds-interaction-pressed:var(--color-translucent-interaction-pressed);--ds-interaction-active:var(--color-translucent-interaction-active-brand);--ds-focus-ring-color:var(--color-translucent-interaction-focus)}.ds-interaction-fill--on-inverted.sc-ds-input-time-h,.ds-interaction-fill--on-inverted.sc-ds-input-time{--ds-interaction-hover:var(--color-inverted-interaction-hover);--ds-interaction-pressed:var(--color-inverted-interaction-pressed);--ds-interaction-active:var(--color-inverted-interaction-active-brand);--ds-focus-ring-color:var(--color-inverted-interaction-focus)}.ds-interaction-fill--on-media.sc-ds-input-time-h,.ds-interaction-fill--on-media.sc-ds-input-time{--ds-interaction-hover:var(--color-media-interaction-hover);--ds-interaction-pressed:var(--color-media-interaction-pressed);--ds-interaction-active:var(--color-media-interaction-active);--ds-focus-ring-color:var(--color-media-interaction-focus)}.ds-interaction-fill--on-always-dark.sc-ds-input-time-h,.ds-interaction-fill--on-always-dark.sc-ds-input-time{--ds-interaction-hover:var(--color-always-dark-interaction-hover);--ds-interaction-pressed:var(--color-always-dark-interaction-pressed);--ds-interaction-active:var(--color-always-dark-interaction-active-brand);--ds-focus-ring-color:var(--color-always-dark-interaction-focus)}.ds-interaction-fill--on-chrome.sc-ds-input-time-h,.ds-interaction-fill--on-chrome.sc-ds-input-time{--ds-interaction-hover:var(--color-chrome-interaction-hover);--ds-interaction-pressed:var(--color-chrome-interaction-pressed);--ds-interaction-active:var(--color-chrome-interaction-active);--ds-focus-ring-color:var(--color-chrome-interaction-focus)}.ds-interaction-fill--on-navigation.sc-ds-input-time-h,.ds-interaction-fill--on-navigation.sc-ds-input-time{--ds-interaction-hover:var(--color-navigation-interaction-hover);--ds-interaction-pressed:var(--color-navigation-interaction-pressed);--ds-interaction-active:var(--color-navigation-interaction-active);--ds-focus-ring-color:var(--color-navigation-interaction-focus)}.ds-interaction-fill.ds-interaction-fill--surface-open.sc-ds-input-time-h:not(:disabled)::after,.ds-interaction-fill.ds-interaction-fill--surface-open.sc-ds-input-time:not(:disabled)::after{background:var(--ds-interaction-pressed)}@media (forced-colors: active){.ds-interaction-fill.sc-ds-input-time-h::after,.ds-interaction-fill.sc-ds-input-time::after{box-shadow:none;outline:var(--ds-interaction-border-width) solid var(--ds-forced-color-control-boundary);outline-offset:calc(-1 * var(--ds-interaction-border-width))}.ds-interaction-fill--surface-open.sc-ds-input-time-h:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after,.ds-interaction-fill--surface-open.sc-ds-input-time:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after{outline:var(--dimension-stroke-width-025) dashed var(--ds-forced-color-control-boundary);outline-offset:calc(-1 * var(--dimension-stroke-width-025))}.ds-interaction-fill--selected.sc-ds-input-time-h::before,.ds-interaction-fill--selected.sc-ds-input-time::before{background:transparent;outline:var(--dimension-stroke-width-025) solid var(--ds-forced-color-selected);outline-offset:calc(-1 * var(--dimension-stroke-width-025))}}@media (forced-colors: active) and (hover: hover) and (pointer: fine){.ds-interaction-fill.sc-ds-input-time-h:hover:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after,.ds-interaction-fill.sc-ds-input-time:hover:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after{outline-color:var(--ds-forced-color-selected);outline-width:var(--dimension-stroke-width-012)}}@media (forced-colors: active){.sc-ds-input-time:root,.sc-ds-input-time-h,.ds-forced-colors-scope.sc-ds-input-time{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.sc-ds-input-time-h{--ds-focus-ring-width:var(--dimension-stroke-width-025, 2px);--ds-focus-ring-offset:var(--dimension-space-025, 2px);--ds-focus-ring-color:var(--color-interaction-focus)}.ds-focus-ring.sc-ds-input-time-h,.ds-focus-ring.sc-ds-input-time,.ds-focus-ring-inset.sc-ds-input-time-h,.ds-focus-ring-inset.sc-ds-input-time{outline:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.ds-focus-ring.sc-ds-input-time-h:focus-visible,.ds-focus-ring.sc-ds-input-time:focus-visible{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring.ds-focus-ring--visible.sc-ds-input-time-h,.ds-focus-ring.ds-focus-ring--visible.sc-ds-input-time{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring-inset.sc-ds-input-time-h:focus-visible,.ds-focus-ring-inset.sc-ds-input-time:focus-visible{outline:none}.ds-focus-ring-inset.sc-ds-input-time-h:focus-visible::after,.ds-focus-ring-inset.sc-ds-input-time:focus-visible::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-input-time-h,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-input-time{outline:none}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-input-time-h::after,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-input-time::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}@media (forced-colors: active){.sc-ds-input-time-h{--ds-focus-ring-color:var(--ds-forced-color-selected)}}@media (forced-colors: active){.sc-ds-input-time:root,.sc-ds-input-time-h,.ds-forced-colors-scope.sc-ds-input-time{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.ds-control-inactive.sc-ds-input-time-h,.ds-control-inactive.sc-ds-input-time{opacity:var(--effect-opacity-medium);pointer-events:none;cursor:not-allowed}@media (forced-colors: active){.ds-control-inactive.sc-ds-input-time-h,.ds-control-inactive.sc-ds-input-time{color:var(--ds-forced-color-disabled);opacity:1}}.sc-ds-input-time-h,.sc-ds-input-time:where(.ds-table),.sc-ds-input-time:where(.tooltip-popup),.sc-ds-input-time:where(.ds-radius){--ds-radius-control:var(--dimension-radius-025);--ds-radius-card:var(--dimension-radius-050);--ds-radius-modal:var(--dimension-radius-050);--ds-radius-menu:var(--dimension-radius-075);--ds-radius-tooltip-control:var(--dimension-radius-025);--ds-radius-tooltip-menu:var(--dimension-radius-075);--ds-radius-table:var(--dimension-radius-050)}.ds-control--lg.sc-ds-input-time,.ds-control--lg.sc-ds-input-time-h,.ds-control--md.sc-ds-input-time-h,.ds-control--md.sc-ds-input-time,.ds-control--sm.sc-ds-input-time-h,.ds-control--sm.sc-ds-input-time,.ds-control--xs.sc-ds-input-time-h,.ds-control--xs.sc-ds-input-time{--ds-control-radius:var(--ds-radius-control)}.ds-control--lg.sc-ds-input-time-h,.ds-control--lg.sc-ds-input-time{--ds-control-height:var(--dimension-size-500);--ds-control-icon:var(--dimension-iconography-lg);--ds-control-padding-inline:var(--dimension-space-100);--ds-control-label-inset:var(--dimension-space-050);--ds-control-gap:var(--dimension-space-050)}.ds-control--md.sc-ds-input-time-h,.ds-control--md.sc-ds-input-time{--ds-control-height:var(--dimension-size-400);--ds-control-icon:var(--dimension-iconography-md);--ds-control-padding-inline:var(--dimension-space-075);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:var(--dimension-space-050)}.ds-control--sm.sc-ds-input-time-h,.ds-control--sm.sc-ds-input-time{--ds-control-height:var(--dimension-size-300);--ds-control-icon:var(--dimension-iconography-sm);--ds-control-padding-inline:var(--dimension-space-050);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:var(--dimension-space-025)}.ds-control--xs.sc-ds-input-time-h,.ds-control--xs.sc-ds-input-time{--ds-control-height:var(--dimension-size-200);--ds-control-icon:var(--dimension-iconography-xs);--ds-control-padding-inline:var(--dimension-space-025);--ds-control-label-inset:var(--dimension-space-025);--ds-control-gap:0}.ds-control-frame.sc-ds-input-time{display:inline-flex;align-items:center;box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400));padding-inline:var(--ds-control-padding-inline, var(--dimension-space-075));gap:var(--ds-control-gap, var(--dimension-space-050));border-radius:var(--ds-control-radius, var(--dimension-radius-025))}.ds-control-section-heading.sc-ds-input-time{display:flex;align-items:center;box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400));padding-inline:calc( var(--ds-control-padding-inline, var(--dimension-space-075)) + var(--ds-control-label-inset, var(--dimension-space-025)) )}.ds-control-icon-box.sc-ds-input-time{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--ds-control-icon, var(--dimension-iconography-md));height:var(--ds-control-icon, var(--dimension-iconography-md))}.ds-control-label-box.sc-ds-input-time{min-width:0;padding-inline:var(--ds-control-label-inset, var(--dimension-space-025))}.ds-control-label-dot.sc-ds-input-time{position:relative;padding-inline-end:calc( var(--ds-control-label-inset, var(--dimension-space-025)) + var(--ds-control-gap, var(--dimension-space-050)) )}.ds-control-label-dot__badge.sc-ds-input-time{position:absolute;inset-block-start:0;inset-inline-end:0;pointer-events:none}.ds-control-width--hug.sc-ds-input-time-h,.ds-control-width--hug.sc-ds-input-time{width:fit-content;max-width:100%;flex:0 0 auto}.ds-control-width--fill.sc-ds-input-time-h,.ds-control-width--fill.sc-ds-input-time{width:100%;min-width:0;flex:1 1 auto;align-self:stretch}.ds-field-stack.sc-ds-input-time-h,.ds-field-stack.sc-ds-input-time{display:flex;flex-direction:column;gap:var(--dimension-space-050)}.ds-field-stack.ds-field-stack--supporting-inset.sc-ds-input-time-h .error-text.sc-ds-input-time,.ds-field-stack.ds-field-stack--supporting-inset.sc-ds-input-time .error-text.sc-ds-input-time,.ds-field-stack.ds-field-stack--supporting-inset.sc-ds-input-time .field__description.sc-ds-input-time,.ds-field-stack.ds-field-stack--supporting-inset.sc-ds-input-time .field__error.sc-ds-input-time{padding-inline:calc( var(--ds-control-padding-inline, var(--dimension-space-075)) + var(--ds-control-label-inset, var(--dimension-space-025)) )}.ds-text--display-medium.sc-ds-input-time-h,.ds-text--display-medium.sc-ds-input-time{font-size:var(--typography-fontsize-3xl);line-height:var(--typography-lineheight-3xl)}.ds-text--display-small.sc-ds-input-time-h,.ds-text--display-small.sc-ds-input-time{font-size:var(--typography-fontsize-2xl);line-height:var(--typography-lineheight-2xl)}.ds-text--title-large.sc-ds-input-time-h,.ds-text--title-large.sc-ds-input-time{font-size:var(--typography-fontsize-xl);line-height:var(--typography-lineheight-xl)}.ds-text--title-medium.sc-ds-input-time-h,.ds-text--title-medium.sc-ds-input-time{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--title-small.sc-ds-input-time-h,.ds-text--title-small.sc-ds-input-time{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-large.sc-ds-input-time-h,.ds-text--body-large.sc-ds-input-time{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--body-medium.sc-ds-input-time-h,.ds-text--body-medium.sc-ds-input-time{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-small.sc-ds-input-time-h,.ds-text--body-small.sc-ds-input-time{font-size:var(--typography-fontsize-sm);line-height:var(--typography-lineheight-sm)}.ds-text--caption.sc-ds-input-time-h,.ds-text--caption.sc-ds-input-time{font-size:var(--typography-fontsize-xs);line-height:var(--typography-lineheight-xs);text-transform:uppercase}.ds-text--display-medium.ds-text--emphasis.sc-ds-input-time-h,.ds-text--display-small.ds-text--emphasis.sc-ds-input-time-h,.ds-text--display-medium.ds-text--emphasis.sc-ds-input-time,.ds-text--display-small.ds-text--emphasis.sc-ds-input-time{font-weight:var(--typography-weight-bold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--display-medium.ds-text--regular.sc-ds-input-time-h,.ds-text--display-small.ds-text--regular.sc-ds-input-time-h,.ds-text--display-medium.ds-text--regular.sc-ds-input-time,.ds-text--display-small.ds-text--regular.sc-ds-input-time{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-large.ds-text--emphasis.sc-ds-input-time-h,.ds-text--title-large.ds-text--emphasis.sc-ds-input-time{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--title-large.ds-text--regular.sc-ds-input-time-h,.ds-text--title-large.ds-text--regular.sc-ds-input-time{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--emphasis.sc-ds-input-time-h,.ds-text--title-small.ds-text--emphasis.sc-ds-input-time-h,.ds-text--title-medium.ds-text--emphasis.sc-ds-input-time,.ds-text--title-small.ds-text--emphasis.sc-ds-input-time{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--regular.sc-ds-input-time-h,.ds-text--title-small.ds-text--regular.sc-ds-input-time-h,.ds-text--title-medium.ds-text--regular.sc-ds-input-time,.ds-text--title-small.ds-text--regular.sc-ds-input-time{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-large.ds-text--emphasis.sc-ds-input-time-h,.ds-text--body-medium.ds-text--emphasis.sc-ds-input-time-h,.ds-text--body-large.ds-text--emphasis.sc-ds-input-time,.ds-text--body-medium.ds-text--emphasis.sc-ds-input-time{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--body-large.ds-text--regular.sc-ds-input-time-h,.ds-text--body-medium.ds-text--regular.sc-ds-input-time-h,.ds-text--body-large.ds-text--regular.sc-ds-input-time,.ds-text--body-medium.ds-text--regular.sc-ds-input-time{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--emphasis.sc-ds-input-time-h,.ds-text--body-small.ds-text--emphasis.sc-ds-input-time{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--regular.sc-ds-input-time-h,.ds-text--body-small.ds-text--regular.sc-ds-input-time{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-none)}.ds-text--caption.ds-text--emphasis.sc-ds-input-time-h,.ds-text--caption.ds-text--emphasis.sc-ds-input-time{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-positive)}.ds-text--caption.ds-text--regular.sc-ds-input-time-h,.ds-text--caption.ds-text--regular.sc-ds-input-time{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-positive)}@media (forced-colors: active){.sc-ds-input-time:root,.sc-ds-input-time-h,.ds-forced-colors-scope.sc-ds-input-time{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.input-host.sc-ds-input-time-h{display:inline-flex;--ds-input-fg:var(--color-foreground-primary);--ds-input-placeholder:var(--color-foreground-secondary);--ds-input-placeholder-active:var(--color-foreground-quaternary);--ds-input-adornment-fg:var(--color-foreground-secondary);--ds-input-border:var(--color-border-secondary)}.ds-control-width--fill.sc-ds-input-time-h,.ds-control-width--fill.sc-ds-input-time-h .input-control.sc-ds-input-time{width:100%}.input-control.sc-ds-input-time{overflow:hidden;background:transparent;border:none;border-radius:var(--ds-control-radius, var(--dimension-radius-025));color:var(--ds-input-fg)}.input-control--bordered.sc-ds-input-time{--ds-interaction-border-width:var(--dimension-stroke-width-012);--ds-interaction-border-color:var(--ds-input-border)}.input-control--error.sc-ds-input-time{--ds-interaction-border-width:var(--dimension-stroke-width-018);--ds-interaction-border-color:var(--color-border-bold-negative)}.input-control--bordered.sc-ds-input-time:focus-within:not(.input-control--error){--ds-interaction-border-width:var(--dimension-stroke-width-018);--ds-interaction-border-color:var(--color-border-bold-brand)}.ds-control-inactive.sc-ds-input-time-h .input-control.sc-ds-input-time::after{background:transparent}.native-input.sc-ds-input-time{position:relative;z-index:2;flex:1 1 auto;min-width:0;height:100%;background:transparent;border:none;border-radius:inherit;outline:none;color:var(--ds-input-fg);font-family:inherit;letter-spacing:inherit;text-overflow:ellipsis;-webkit-appearance:none;appearance:none;color-scheme:inherit}.native-input--align-start.sc-ds-input-time{text-align:start}.native-input.sc-ds-input-time:disabled{cursor:not-allowed}.native-input.sc-ds-input-time:read-only:not(:disabled){cursor:default}.native-input.sc-ds-input-time::-webkit-calendar-picker-indicator{display:none}.native-input.sc-ds-input-time::-webkit-inner-spin-button,.native-input.sc-ds-input-time::-webkit-clear-button{display:none}.native-input.sc-ds-input-time::-webkit-datetime-edit,.native-input.sc-ds-input-time::-webkit-datetime-edit-fields-wrapper,.native-input.sc-ds-input-time::-webkit-datetime-edit-text,.native-input.sc-ds-input-time::-webkit-datetime-edit-month-field,.native-input.sc-ds-input-time::-webkit-datetime-edit-day-field,.native-input.sc-ds-input-time::-webkit-datetime-edit-year-field,.native-input.sc-ds-input-time::-webkit-datetime-edit-hour-field,.native-input.sc-ds-input-time::-webkit-datetime-edit-minute-field,.native-input.sc-ds-input-time::-webkit-datetime-edit-second-field,.native-input.sc-ds-input-time::-webkit-datetime-edit-ampm-field{padding:0;color:inherit;font:inherit;letter-spacing:inherit}.input-control__prefix.sc-ds-input-time{position:relative;z-index:2;color:var(--ds-input-adornment-fg)}.input-control.sc-ds-input-time>.input-control__datetime-action.sc-ds-input-time{position:relative;z-index:2;flex-shrink:0;align-self:center}.ds-control-inactive.sc-ds-input-time-h .input-control.sc-ds-input-time>.input-control__datetime-action.sc-ds-input-time{--effect-opacity-medium:1}.input-control.sc-ds-input-time:has(.input-control__datetime-action){padding-inline-end:var(--dimension-space-025)}.error-text.sc-ds-input-time{width:100%}@media (forced-colors: active){.input-control--bordered.sc-ds-input-time:focus-within:not(.input-control--error)::after{outline-color:var(--ds-forced-color-selected)}.input-control--error.sc-ds-input-time::after{outline-style:dashed}}.ds-choice-popup.sc-ds-input-time{box-sizing:border-box;display:flex;flex-direction:column;min-width:var(--ds-choice-popup-min-inline-size, var(--dimension-menu-width-xs));max-width:min(var(--dimension-panel-width-lg), calc(100vw - var(--dimension-space-200)));max-height:calc(100vh - var(--dimension-space-200));overflow:hidden;inset:auto;margin:0;padding:0;border:0;background-color:var(--color-background-primary);border-radius:var(--ds-radius-menu);box-shadow:var(--effect-shadow-elevated-floating);color:var(--color-foreground-secondary);animation:dsChoiceFadeIn var(--effect-motion-short-2) forwards;backface-visibility:hidden;will-change:transform;text-align:start}.ds-choice-popup.sc-ds-input-time::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:var(--effect-highlight-elevated-floating)}.ds-choice-popup--closing.sc-ds-input-time{animation:dsChoiceFadeOut var(--effect-motion-short-2) forwards}@keyframes dsChoiceFadeIn{from{opacity:0;transform:inherit scale(0.97)}to{opacity:1}}@keyframes dsChoiceFadeOut{from{opacity:1}to{opacity:0}}@media (prefers-reduced-motion: reduce){.ds-choice-popup.sc-ds-input-time{animation:none;opacity:1}.ds-choice-popup--closing.sc-ds-input-time{opacity:0}}@media (forced-colors: active){.ds-choice-popup.sc-ds-input-time{outline:var(--dimension-stroke-width-012) solid var(--ds-forced-color-content);outline-offset:calc(-1 * var(--dimension-stroke-width-012))}.ds-choice-popup.sc-ds-input-time::after{box-shadow:none}}.ds-chrome-space--sm.sc-ds-input-time-h,.ds-chrome-space--sm.sc-ds-input-time{--ds-chrome-padding:var(--dimension-space-050);--ds-chrome-gap:var(--dimension-space-050)}.ds-chrome-space--md.sc-ds-input-time-h,.ds-chrome-space--md.sc-ds-input-time{--ds-chrome-padding:var(--dimension-space-100);--ds-chrome-gap:var(--dimension-space-100)}.ds-chrome-space--lg.sc-ds-input-time-h,.ds-chrome-space--lg.sc-ds-input-time{--ds-chrome-padding:var(--dimension-space-200);--ds-chrome-gap:var(--dimension-space-200)}.ds-chrome-row.sc-ds-input-time-h,.ds-chrome-row.sc-ds-input-time,.ds-chrome-column.sc-ds-input-time-h,.ds-chrome-column.sc-ds-input-time,.ds-chrome-grid.sc-ds-input-time-h,.ds-chrome-grid.sc-ds-input-time{display:flex;box-sizing:border-box;gap:var(--ds-chrome-gap, var(--dimension-space-100));padding:var(--ds-chrome-padding, var(--dimension-space-100))}.ds-chrome-row.sc-ds-input-time-h,.ds-chrome-row.sc-ds-input-time{flex-direction:row;align-items:center}.ds-chrome-column.sc-ds-input-time-h,.ds-chrome-column.sc-ds-input-time{flex-direction:column}.ds-chrome-grid.sc-ds-input-time-h,.ds-chrome-grid.sc-ds-input-time{display:grid;align-items:center}.input-time-popup.ds-choice-popup.sc-ds-input-time{--ds-time-picker-padding:0;padding:var(--dimension-space-050)}`;let j=0;const H="Enter a valid time.";const q="Time is before the minimum allowed time.";const E="Time is after the maximum allowed time.";const O="Time does not match the allowed interval.";const V=t(class t extends i{constructor(t){super();if(t!==false){this.__registerHost()}this.dsChange=e(this,"dsChange",7);this.internals=this.attachInternals();this.generatedId=`ds-input-time-${++j}`;this.errorId=`${this.generatedId}-error`;this.popupId=`${this.generatedId}-popup`;this.value="";this.disabled=false;this.readOnly=false;this.required=false;this.requiredMessage=x;this.step=60;this.hourFormat="12";this.size="md";this.width="fill";this.hasBorder=true;this.hasInteractionFill=true;this.isInactive=false;this.autoFocus=false;this.error=false;this.ariaLabel=null;this.initialValue="";this.closeTimer=null;this.formDisabled=false;this.focused=false;this.touched=false;this.draftText="";this.open=false;this.shouldRender=false;this.closing=false;this.positionReady=false;this.pos={x:0,y:0};this.position=new r({getAnchor:()=>this.controlEl??null,getPopup:()=>this.el.querySelector(".input-time-popup"),getOwnerDocument:()=>this.el.ownerDocument,measure:(t,i)=>{if(!this.open)return null;const e=w(I.space050,I.space050);return{anchorRect:t.getBoundingClientRect(),popupWidth:i.offsetWidth||this.popupFallbackWidth,popupHeight:i.offsetHeight||this.popupFallbackHeight,side:"bottom",align:"end",sideOffsetPx:w(I.space050,I.space050),alignOffsetPx:k({align:"end",alignOffsetPx:0,sectionInsetPx:e,anchorAlignment:"popup-frame"}),viewportPadPx:w(I.space050,I.space050),viewportWidth:window.innerWidth,viewportHeight:window.innerHeight,collisionRect:d(t)}},apply:({x:t,y:i})=>{this.pos={x:t,y:i}},onReady:()=>{this.positionReady=true},liveUpdate:"double-frame",observeResize:true,topLayer:true});this.interaction=new a({getAnchor:()=>this.controlEl??null,getPopup:()=>this.el.querySelector(".input-time-popup"),getOwnerDocument:()=>this.el.ownerDocument,onOutsideActivation:()=>this.closePicker(false)});this.togglePicker=()=>{if(this.isInactive||this.disabled||this.formDisabled||this.readOnly)return;if(this.open)this.closePicker("button");else this.openPicker()};this.handleInput=t=>{if(this.pickerInactive)return;this.draftText=t.target.value;const i=this.parseDraft(this.draftText);if(i===null)return;this.commitIso(i)};this.handleFocus=()=>{this.draftText=this.displayValue||this.value;this.focused=true};this.handleBlur=()=>{this.focused=false;this.touched=true;if(this.pickerInactive){this.draftText=this.displayValue;return}const t=this.parseDraft(this.draftText);if(t===null){this.draftText=this.displayValue;return}this.commitIso(t)};this.handleTimeChange=t=>{t.stopPropagation();if(this.pickerInactive)return;const i=this.parseDraft(t.detail);if(i===null)return;this.commitIso(i)}}get popupFallbackWidth(){return w(I.menuWidthXs,I.menuWidthXs)}get popupFallbackHeight(){return w(I.menuFallbackHeight,I.menuFallbackHeight)}get formInactive(){return this.isInactive||this.disabled||this.formDisabled}get pickerInactive(){return this.formInactive||this.readOnly}get hasConstraintError(){if(!this.value)return false;if(!m(this.value))return true;if(this.min&&m(this.min)&&this.value<this.min)return true;if(this.max&&m(this.max)&&this.value>this.max)return true;return!f(this.value,this.step,this.min)}get isInvalid(){return this.error||!this.formInactive&&(this.required&&this.value.length===0||this.hasConstraintError)}componentWillLoad(){this.initialValue=this.value;this.syncFormValue()}disconnectedCallback(){this.position.unobserve();this.teardownListeners()}onHourFormatChange(){this.draftText=this.displayValue}syncFormValue(){const t=this.formInactive;z(this.internals,this.value,{inactive:t});const i={};let e="";if(!t){if(this.required&&this.value.length===0){i.valueMissing=true;e=this.requiredMessage}else if(this.value&&!m(this.value)){i.badInput=true;e=H}else if(this.value&&this.min&&m(this.min)&&this.value<this.min){i.rangeUnderflow=true;e=q}else if(this.value&&this.max&&m(this.max)&&this.value>this.max){i.rangeOverflow=true;e=E}else if(this.value&&!f(this.value,this.step,this.min)){i.stepMismatch=true;e=O}}this.internals.setValidity(i,e)}onInteractionStateChange(){this.syncFormValue();if(this.pickerInactive&&this.shouldRender)this.closePicker(false)}formDisabledCallback(t){this.formDisabled=t;this.onInteractionStateChange()}formResetCallback(){this.value=this.initialValue;this.draftText=this.displayValue}formStateRestoreCallback(t){this.value=C(t);this.draftText=this.displayValue}async setFocus(){this.inputEl?.focus()}handleHostKeyDown(t){if(!this.shouldRender||this.closing)return;if(t.key==="Escape"){t.preventDefault();this.closePicker("button");return}if(t.key!=="Tab")return;const i=this.el.querySelector(".input-time-popup");if(!i||!t.composedPath().includes(i))return;if(!this.interaction.tabLeavesPopup(t))return;t.preventDefault();this.closePicker(false);this.interaction.moveFocusAfterTab(t.shiftKey)}get displayValue(){return this.hourFormat==="24"?this.value:v(this.value)}parseDraft(t){const i=t.trim();if(!i)return"";const e=g(i);if(!e)return null;if(this.min&&m(this.min)&&e<this.min)return null;if(this.max&&m(this.max)&&e>this.max)return null;if(!f(e,this.step,this.min))return null;return e}commitIso(t,i=true){if(this.value!==t){this.value=t;if(i)this.dsChange.emit(t)}this.draftText=this.hourFormat==="24"?t:v(t)}teardownListeners(){this.position.unobserve();this.interaction.disconnect();if(this.closeTimer){clearTimeout(this.closeTimer);this.closeTimer=null}}openPicker(){const t=this.isInactive||this.disabled||this.formDisabled||this.readOnly;if(t||this.open)return;this.shouldRender=true;this.closing=false;this.positionReady=false;this.open=true;this.teardownListeners();this.interaction.connect();this.position.observe();this.position.schedule()}closePicker(t){if(!this.shouldRender||this.closing)return;this.open=false;this.position.cancel();this.closing=true;this.interaction.disconnect();this.position.unobserve();if(t==="input")this.inputEl?.focus();if(t==="button")void this.clockButton?.setFocus();const i=F(I.motionShort2,I.animationDurationShort3);if(i<=0){this.finishClose();return}this.closeTimer=setTimeout((()=>this.finishClose()),i)}finishClose(){const t=this.el.querySelector(".input-time-popup");if(t?.matches(":popover-open"))t.hidePopover();this.shouldRender=false;this.closing=false;this.closeTimer=null}render(){const t=this.inputId??this.generatedId;const i=this.formInactive;const e=this.pickerInactive;const o=this.value.length>0;const r=this.value!==this.initialValue;const d=this.error&&Boolean(this.errorMessage);const a=T[this.size];const c=`ds-text--${a.replace("text-","")}`;const l=[this.ariaDescribedby,d?this.errorId:undefined].filter(Boolean).join(" ")||undefined;const p={position:"fixed",left:"0",top:"0",transform:`translate(${Math.round(this.pos.x)}px, ${Math.round(this.pos.y)}px)`,zIndex:"var(--dimension-z-index-floating)",visibility:this.positionReady?"visible":"hidden"};return s(n,{key:"0ecaa3962304bd1388039e7ec3535c8b184d35e1",class:{"input-host":true,"ds-field-stack":true,"ds-field-stack--supporting-inset":!this.hasBorder,"ds-control-inactive":i,[`ds-control--${this.size}`]:true,..._(this.width)},"data-disabled":i?"":undefined,"data-readonly":this.readOnly?"":undefined,"data-required":this.required?"":undefined,"data-invalid":this.isInvalid?"":undefined,"data-filled":o?"":undefined,"data-focused":this.focused?"":undefined,"data-dirty":r?"":undefined,"data-touched":this.touched?"":undefined},s("div",{key:"5923f55d0470d4f7f199ae48c7333d63397eca51",ref:t=>{this.controlEl=t},class:{"input-control":true,"ds-control-frame":true,"input-control--bordered":this.hasBorder,"input-control--error":this.hasBorder&&this.error,"ds-interaction-fill":this.hasInteractionFill,[`ds-control--${this.size}`]:true}},s("input",{key:"ef143924749fc6b300693d73d6f48fb4da7b3029",ref:t=>{this.inputEl=t},type:"text",id:t,value:this.focused?this.draftText:this.displayValue,disabled:i,readOnly:this.readOnly,required:this.required,autoFocus:this.autoFocus,autoComplete:"off",spellcheck:false,class:{"native-input":true,"native-input--align-start":true,"ds-control-label-box":true,[c]:true,"ds-text--regular":true},"aria-label":this.ariaLabel,"aria-labelledby":this.ariaLabelledby,"aria-describedby":l,"aria-invalid":this.isInvalid?"true":undefined,onInput:this.handleInput,onFocus:this.handleFocus,onBlur:this.handleBlur}),s("ds-button-unfilled",{key:"fdc6d776362dd11c16987c7ffc9f1c56823a65f0",ref:t=>{this.clockButton=t},class:"input-control__datetime-action",variant:"icon",size:this.size,icon:"Clock",hasBorder:false,isInset:true,isInactive:e,ariaLabel:"Choose time",haspopup:"dialog",expanded:this.open,surfaceOpen:this.open||this.closing,controls:this.open?this.popupId:undefined,onDsClick:this.togglePicker})),this.shouldRender?s("div",{id:this.popupId,popover:"manual",class:{"input-time-popup":true,"ds-choice-popup":true,"ds-choice-popup--closing":this.closing,"ds-chrome-column":true,"ds-chrome-space--sm":true},style:p,role:"dialog","aria-label":"Choose time"},s("ds-time-picker",{hourFormat:this.hourFormat,value:this.value,min:this.min,max:this.max,step:this.step,isInactive:e,autoFocus:true,onDsChange:this.handleTimeChange})):null,d&&s("ds-text",{key:"c643b92cc5199eb92420d0a682e9808331f25430",class:"error-text",as:"div",variant:"text-body-small",color:"negative",textId:this.errorId,role:"alert"},this.errorMessage))}static get formAssociated(){return true}get el(){return this}static get watchers(){return{hourFormat:[{onHourFormatChange:0}],value:[{syncFormValue:0}],required:[{syncFormValue:0}],requiredMessage:[{syncFormValue:0}],min:[{syncFormValue:0}],max:[{syncFormValue:0}],step:[{syncFormValue:0}],disabled:[{onInteractionStateChange:0}],isInactive:[{onInteractionStateChange:0}],readOnly:[{onInteractionStateChange:0}]}}static get style(){return D()}},[66,"ds-input-time",{value:[1025],name:[513],form:[513],disabled:[516],readOnly:[516,"read-only"],required:[516],requiredMessage:[1,"required-message"],step:[8],hourFormat:[1,"hour-format"],min:[1],max:[1],size:[1],width:[1],hasBorder:[4,"has-border"],hasInteractionFill:[4,"has-interaction-fill"],isInactive:[4,"is-inactive"],autoFocus:[4,"auto-focus"],error:[4],errorMessage:[1,"error-message"],inputId:[1,"input-id"],ariaLabel:[1,"aria-label"],ariaLabelledby:[1,"aria-labelledby"],ariaDescribedby:[1,"aria-describedby"],formDisabled:[32],focused:[32],touched:[32],draftText:[32],open:[32],shouldRender:[32],closing:[32],positionReady:[32],pos:[32],setFocus:[64]},[[0,"keydown","handleHostKeyDown"]],{hourFormat:[{onHourFormatChange:0}],value:[{syncFormValue:0}],required:[{syncFormValue:0}],requiredMessage:[{syncFormValue:0}],min:[{syncFormValue:0}],max:[{syncFormValue:0}],step:[{syncFormValue:0}],disabled:[{onInteractionStateChange:0}],isInactive:[{onInteractionStateChange:0}],readOnly:[{onInteractionStateChange:0}]}]);function P(){if(typeof customElements==="undefined"){return}const t=["ds-input-time","ds-badge","ds-button-unfilled","ds-icon","ds-loader","ds-text","ds-time-picker","ds-tooltip"];t.forEach((t=>{switch(t){case"ds-input-time":if(!customElements.get(o(t))){customElements.define(o(t),V)}break;case"ds-badge":if(!customElements.get(o(t))){c()}break;case"ds-button-unfilled":if(!customElements.get(o(t))){l()}break;case"ds-icon":if(!customElements.get(o(t))){p()}break;case"ds-loader":if(!customElements.get(o(t))){u()}break;case"ds-text":if(!customElements.get(o(t))){h()}break;case"ds-time-picker":if(!customElements.get(o(t))){b()}break;case"ds-tooltip":if(!customElements.get(o(t))){y()}break}}))}P();const R=V;const S=P;export{R as DsInputTime,S as defineCustomElement};
|
|
2
2
|
//# sourceMappingURL=ds-input-time.js.map
|
|
@@ -1 +1 @@
|
|
|
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","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","unobserve","teardownListeners","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","disconnect","clearTimeout","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 @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.position.unobserve();\n this.teardownListeners();\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 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 = 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) 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 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
|
+
{"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","unobserve","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","disconnect","clearTimeout","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.position.unobserve();\n this.teardownListeners();\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) 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":"mrBAAA,MAAMA,EAAe,IAAM,uh3BCsC3B,IAAIC,EAAY,EAEhB,MAAMC,EAAuB,sBAC7B,MAAMC,EAA0B,2CAChC,MAAMC,EAAyB,0CAC/B,MAAMC,EAAoB,4C,MAQbC,EAASC,EAAA,MAAAD,UAAAE,EANtB,WAAAC,CAAAC,G,qHAUUC,KAAAC,YAAc,mBAAmBX,IACjCU,KAAAE,QAAU,GAAGF,KAAKC,oBAClBD,KAAAG,QAAU,GAAGH,KAAKC,oBAEDD,KAAAI,MAAgB,GAGhBJ,KAAAK,SAAoB,MACpBL,KAAAM,SAAoB,MACpBN,KAAAO,SAAoB,MACrCP,KAAAQ,gBAA0BC,EAE1BT,KAAAU,KAAwB,GAExBV,KAAAW,WAA0B,KAG1BX,KAAAY,KAAsB,KACtBZ,KAAAa,MAAwB,OACxBb,KAAAc,UAAqB,KACrBd,KAAAe,mBAA8B,KAC9Bf,KAAAgB,WAAsB,MACtBhB,KAAAiB,UAAqB,MACrBjB,KAAAkB,MAAiB,MAGUlB,KAAAmB,UAA2B,KAMtDnB,KAAAoB,aAAe,GAIfpB,KAAAqB,WAAmD,KAC1CrB,KAAAsB,aAAe,MACftB,KAAAuB,QAAU,MACVvB,KAAAwB,QAAU,MACVxB,KAAAyB,UAAY,GACZzB,KAAA0B,KAAO,MACP1B,KAAA2B,aAAe,MACf3B,KAAA4B,QAAU,MACV5B,KAAA6B,cAAgB,MAChB7B,KAAA8B,IAAM,CAAEC,EAAG,EAAGC,EAAG,GAEjBhC,KAAAiC,SAAW,IAAIC,EAA2B,CACzDC,UAAW,IAAMnC,KAAKoC,WAAa,KACnCC,SAAU,IAAMrC,KAAKsC,GAAGC,cAA2B,qBACnDC,iBAAkB,IAAMxC,KAAKsC,GAAGG,cAChCC,QAAS,CAACC,EAAQC,KAChB,IAAK5C,KAAK0B,KAAM,OAAO,KACvB,MAAMmB,EAAiBC,EAAmBC,EAAeC,SAAUD,EAAeC,UAClF,MAAO,CACLC,WAAYN,EAAOO,wBACnBC,WAAYP,EAAMQ,aAAepD,KAAKqD,mBACtCC,YAAaV,EAAMW,cAAgBvD,KAAKwD,oBACxCC,KAAM,SACNC,MAAO,MACPC,aAAcb,EAAmBC,EAAeC,SAAUD,EAAeC,UACzEY,cAAeC,EAA8B,CAC3CH,MAAO,MACPE,cAAe,EACff,iBACAiB,gBAAiB,gBAEnBC,cAAejB,EAAmBC,EAAeC,SAAUD,EAAeC,UAC1EgB,cAAeC,OAAOC,WACtBC,eAAgBF,OAAOG,YACvBC,cAAeC,EAAmC3B,GACnD,EAEH4B,MAAO,EAAGxC,IAAGC,QACXhC,KAAK8B,IAAM,CAAEC,IAAGC,IAAG,EAErBwC,QAAS,KACPxE,KAAK6B,cAAgB,IAAI,EAE3B4C,WAAY,eACZC,cAAe,KACfC,SAAU,OAEK3E,KAAA4E,YAAc,IAAIC,EAAqC,CACtE1C,UAAW,IAAMnC,KAAKoC,WAAa,KACnCC,SAAU,IAAMrC,KAAKsC,GAAGC,cAA2B,qBACnDC,iBAAkB,IAAMxC,KAAKsC,GAAGG,cAChCqC,oBAAqB,IAAM9E,KAAK+E,YAAY,SAwMtC/E,KAAAgF,aAAe,KACrB,GAAIhF,KAAKgB,YAAchB,KAAKK,UAAYL,KAAKsB,cAAgBtB,KAAKM,SAAU,OAC5E,GAAIN,KAAK0B,KAAM1B,KAAK+E,YAAY,eAC3B/E,KAAKiF,YAAY,EAGhBjF,KAAAkF,YAAeC,IACrB,GAAInF,KAAKoF,eAAgB,OACzBpF,KAAKyB,UAAa0D,EAAME,OAA4BjF,MACpD,MAAMkF,EAAStF,KAAKuF,WAAWvF,KAAKyB,WACpC,GAAI6D,IAAW,KAAM,OACrBtF,KAAKwF,UAAUF,EAAO,EAGhBtF,KAAAyF,YAAc,KACpBzF,KAAKyB,UAAYzB,KAAK0F,cAAgB1F,KAAKI,MAC3CJ,KAAKuB,QAAU,IAAI,EAGbvB,KAAA2F,WAAa,KACnB3F,KAAKuB,QAAU,MACfvB,KAAKwB,QAAU,KACf,GAAIxB,KAAKoF,eAAgB,CACvBpF,KAAKyB,UAAYzB,KAAK0F,aACtB,M,CAEF,MAAMJ,EAAStF,KAAKuF,WAAWvF,KAAKyB,WACpC,GAAI6D,IAAW,KAAM,CACnBtF,KAAKyB,UAAYzB,KAAK0F,aACtB,M,CAEF1F,KAAKwF,UAAUF,EAAO,EAGhBtF,KAAA4F,iBAAoBT,IAC1BA,EAAMU,kBACN,GAAI7F,KAAKoF,eAAgB,OACzB,MAAME,EAAStF,KAAKuF,WAAWJ,EAAMW,QACrC,GAAIR,IAAW,KAAM,OACrBtF,KAAKwF,UAAUF,EAAO,CAiJzB,CA7XC,sBAAYjC,GACV,OAAOP,EAAmBC,EAAegD,YAAahD,EAAegD,Y,CAGvE,uBAAYvC,GACV,OAAOV,EAAmBC,EAAeiD,mBAAoBjD,EAAeiD,mB,CAG9E,gBAAYC,GACV,OAAOjG,KAAKgB,YAAchB,KAAKK,UAAYL,KAAKsB,Y,CAGlD,kBAAY8D,GACV,OAAOpF,KAAKiG,cAAgBjG,KAAKM,Q,CAGnC,sBAAY4F,GACV,IAAKlG,KAAKI,MAAO,OAAO,MACxB,IAAK+F,EAAYnG,KAAKI,OAAQ,OAAO,KACrC,GAAIJ,KAAKoG,KAAOD,EAAYnG,KAAKoG,MAAQpG,KAAKI,MAAQJ,KAAKoG,IAAK,OAAO,KACvE,GAAIpG,KAAKqG,KAAOF,EAAYnG,KAAKqG,MAAQrG,KAAKI,MAAQJ,KAAKqG,IAAK,OAAO,KACvE,OAAQC,EAAuBtG,KAAKI,MAAOJ,KAAKU,KAAMV,KAAKoG,I,CAG7D,aAAYG,GACV,OACEvG,KAAKkB,QACHlB,KAAKiG,eACHjG,KAAKO,UAAYP,KAAKI,MAAMoG,SAAW,GAAMxG,KAAKkG,mB,CAI1D,iBAAAO,GACEzG,KAAKoB,aAAepB,KAAKI,MACzBJ,KAAK0G,e,CAGP,oBAAAC,GACE3G,KAAKiC,SAAS2E,YACd5G,KAAK6G,mB,CAIP,kBAAAC,GACE9G,KAAKyB,UAAYzB,KAAK0F,Y,CASxB,aAAAgB,GACE,MAAMK,EAAW/G,KAAKiG,aACtBe,EAAoBhH,KAAKiH,UAAWjH,KAAKI,MAAO,CAAE2G,aAClD,MAAMG,EAA4B,GAClC,IAAIC,EAAU,GACd,IAAKJ,EAAU,CACb,GAAI/G,KAAKO,UAAYP,KAAKI,MAAMoG,SAAW,EAAG,CAC5CU,EAAME,aAAe,KACrBD,EAAUnH,KAAKQ,e,MACV,GAAIR,KAAKI,QAAU+F,EAAYnG,KAAKI,OAAQ,CACjD8G,EAAMG,SAAW,KACjBF,EAAU5H,C,MACL,GAAIS,KAAKI,OAASJ,KAAKoG,KAAOD,EAAYnG,KAAKoG,MAAQpG,KAAKI,MAAQJ,KAAKoG,IAAK,CACnFc,EAAMI,eAAiB,KACvBH,EAAU3H,C,MACL,GAAIQ,KAAKI,OAASJ,KAAKqG,KAAOF,EAAYnG,KAAKqG,MAAQrG,KAAKI,MAAQJ,KAAKqG,IAAK,CACnFa,EAAMK,cAAgB,KACtBJ,EAAU1H,C,MACL,GAAIO,KAAKI,QAAUkG,EAAuBtG,KAAKI,MAAOJ,KAAKU,KAAMV,KAAKoG,KAAM,CACjFc,EAAMM,aAAe,KACrBL,EAAUzH,C,EAGdM,KAAKiH,UAAUQ,YAAYP,EAAOC,E,CAMpC,wBAAAO,GACE1H,KAAK0G,gBACL,GAAI1G,KAAKoF,gBAAkBpF,KAAK2B,aAAc3B,KAAK+E,YAAY,M,CAGjE,oBAAA4C,CAAqBtH,GACnBL,KAAKsB,aAAejB,EACpBL,KAAK0H,0B,CAGP,iBAAAE,GACE5H,KAAKI,MAAQJ,KAAKoB,aAClBpB,KAAKyB,UAAYzB,KAAK0F,Y,CAGxB,wBAAAmC,CAAyBC,GACvB9H,KAAKI,MAAQ2H,EAAuBD,GACpC9H,KAAKyB,UAAYzB,KAAK0F,Y,CAIxB,cAAMsC,GACJhI,KAAKiI,SAASC,O,CAIhB,iBAAAC,CAAkBhD,GAChB,IAAKnF,KAAK2B,cAAgB3B,KAAK4B,QAAS,OACxC,GAAIuD,EAAMiD,MAAQ,SAAU,CAC1BjD,EAAMkD,iBACNrI,KAAK+E,YAAY,UACjB,M,CAEF,GAAII,EAAMiD,MAAQ,MAAO,OACzB,MAAMxF,EAAQ5C,KAAKsC,GAAGC,cAA2B,qBACjD,IAAKK,IAAUuC,EAAMmD,eAAeC,SAAS3F,GAAQ,OACrD,IAAK5C,KAAK4E,YAAY4D,eAAerD,GAAQ,OAC7CA,EAAMkD,iBACNrI,KAAK+E,YAAY,OACjB/E,KAAK4E,YAAY6D,kBAAkBtD,EAAMuD,S,CAG3C,gBAAYhD,GACV,OAAO1F,KAAKW,aAAe,KAAOX,KAAKI,MAAQuI,EAAqB3I,KAAKI,M,CAGnE,UAAAmF,CAAWqD,GACjB,MAAMC,EAAUD,EAAKE,OACrB,IAAKD,EAAS,MAAO,GACrB,MAAME,EAAMC,EAAoBH,GAChC,IAAKE,EAAK,OAAO,KACjB,GAAI/I,KAAKoG,KAAOD,EAAYnG,KAAKoG,MAAQ2C,EAAM/I,KAAKoG,IAAK,OAAO,KAChE,GAAIpG,KAAKqG,KAAOF,EAAYnG,KAAKqG,MAAQ0C,EAAM/I,KAAKqG,IAAK,OAAO,KAChE,IAAKC,EAAuByC,EAAK/I,KAAKU,KAAMV,KAAKoG,KAAM,OAAO,KAC9D,OAAO2C,C,CAGD,SAAAvD,CAAUuD,EAAaE,EAAO,MACpC,GAAIjJ,KAAKI,QAAU2I,EAAK,CACtB/I,KAAKI,MAAQ2I,EACb,GAAIE,EAAMjJ,KAAKkJ,SAASD,KAAKF,E,CAE/B/I,KAAKyB,UAAYzB,KAAKW,aAAe,KAAOoI,EAAMJ,EAAqBI,E,CAGjE,iBAAAlC,GACN7G,KAAKiC,SAAS2E,YACd5G,KAAK4E,YAAYuE,aACjB,GAAInJ,KAAKqB,WAAY,CACnB+H,aAAapJ,KAAKqB,YAClBrB,KAAKqB,WAAa,I,EAId,UAAA4D,GACN,MAAM8B,EAAW/G,KAAKgB,YAAchB,KAAKK,UAAYL,KAAKsB,cAAgBtB,KAAKM,SAC/E,GAAIyG,GAAY/G,KAAK0B,KAAM,OAC3B1B,KAAK2B,aAAe,KACpB3B,KAAK4B,QAAU,MACf5B,KAAK6B,cAAgB,MACrB7B,KAAK0B,KAAO,KACZ1B,KAAK6G,oBACL7G,KAAK4E,YAAYyE,UACjBrJ,KAAKiC,SAASqH,UACdtJ,KAAKiC,SAASsH,U,CAGR,WAAAxE,CAAYyE,GAClB,IAAKxJ,KAAK2B,cAAgB3B,KAAK4B,QAAS,OACxC5B,KAAK0B,KAAO,MACZ1B,KAAKiC,SAASwH,SACdzJ,KAAK4B,QAAU,KACf5B,KAAK4E,YAAYuE,aACjBnJ,KAAKiC,SAAS2E,YACd,GAAI4C,IAAY,QAASxJ,KAAKiI,SAASC,QACvC,GAAIsB,IAAY,cAAexJ,KAAK0J,aAAa1B,WACjD,MAAM2B,EAAWC,EACf7G,EAAe8G,aACf9G,EAAe+G,yBAEjB,GAAIH,GAAY,EAAG,CACjB3J,KAAK+J,cACL,M,CAEF/J,KAAKqB,WAAa2I,YAAW,IAAMhK,KAAK+J,eAAeJ,E,CAGjD,WAAAI,GACN,MAAMnH,EAAQ5C,KAAKsC,GAAGC,cAA2B,qBACjD,GAAIK,GAAOqH,QAAQ,iBAAkBrH,EAAMsH,cAC3ClK,KAAK2B,aAAe,MACpB3B,KAAK4B,QAAU,MACf5B,KAAKqB,WAAa,I,CA6CpB,MAAA8I,GACE,MAAMC,EAAUpK,KAAKoK,SAAWpK,KAAKC,YACrC,MAAM8G,EAAW/G,KAAKiG,aACtB,MAAMb,EAAiBpF,KAAKoF,eAC5B,MAAMiF,EAASrK,KAAKI,MAAMoG,OAAS,EACnC,MAAM8D,EAAQtK,KAAKI,QAAUJ,KAAKoB,aAClC,MAAMmJ,EAAYvK,KAAKkB,OAASsJ,QAAQxK,KAAKyK,cAC7C,MAAMC,EAAcC,EAAqB3K,KAAKY,MAC9C,MAAMgK,EAAY,YAAYF,EAAYG,QAAQ,QAAS,MAC3D,MAAMC,EACJ,CAAC9K,KAAK+K,gBAAiBR,EAAYvK,KAAKE,QAAU8K,WAAWC,OAAOT,SAASU,KAAK,MAClFF,UACF,MAAMG,EAAa,CACjBlJ,SAAU,QACVmJ,KAAM,IACNC,IAAK,IACLC,UAAW,aAAaC,KAAKC,MAAMxL,KAAK8B,IAAIC,SAASwJ,KAAKC,MAAMxL,KAAK8B,IAAIE,QACzEyJ,OAAQ,oCACRC,WAAY1L,KAAK6B,cAAgB,UAAY,UAG/C,OACE8J,EAACC,EAAI,CAAAxD,IAAA,2CACHyD,MAAO,CACL,aAAc,KACd,iBAAkB,KAClB,oCAAqC7L,KAAKc,UAC1C,sBAAuBiG,EACvB,CAAC,eAAe/G,KAAKY,QAAS,QAC3BkL,EAAkB9L,KAAKa,QAC3B,gBACckG,EAAW,GAAKiE,UAAS,gBACzBhL,KAAKM,SAAW,GAAK0K,UAAS,gBAC9BhL,KAAKO,SAAW,GAAKyK,UAAS,eAC/BhL,KAAKuG,UAAY,GAAKyE,UAAS,cAChCX,EAAS,GAAKW,UAAS,eACtBhL,KAAKuB,QAAU,GAAKyJ,UAAS,aAC/BV,EAAQ,GAAKU,UAAS,eACpBhL,KAAKwB,QAAU,GAAKwJ,WAElCW,EAAA,OAAAvD,IAAA,2CACE2D,IAAKC,IACHhM,KAAKoC,UAAY4J,CAAO,EAE1BH,MAAO,CACL,gBAAiB,KACjB,mBAAoB,KACpB,0BAA2B7L,KAAKc,UAChC,uBAAwBd,KAAKc,WAAad,KAAKkB,MAC/C,sBAAuBlB,KAAKe,mBAC5B,CAAC,eAAef,KAAKY,QAAS,OAGhC+K,EAAA,SAAAvD,IAAA,2CACE2D,IAAKC,IACHhM,KAAKiI,QAAU+D,CAAO,EAExBC,KAAK,OACLC,GAAI9B,EACJhK,MAAOJ,KAAKuB,QAAUvB,KAAKyB,UAAYzB,KAAK0F,aAC5CrF,SAAU0G,EACVzG,SAAUN,KAAKM,SACfC,SAAUP,KAAKO,SACfU,UAAWjB,KAAKiB,UAChBkL,aAAa,MACbC,WAAY,MACZP,MAAO,CACL,eAAgB,KAChB,4BAA6B,KAC7B,uBAAwB,KACxBjB,CAACA,GAAY,KACb,mBAAoB,MACrB,aACW5K,KAAKmB,UAAS,kBACTnB,KAAKqM,eAAc,mBAClBvB,EAAW,eACf9K,KAAKuG,UAAY,OAASyE,UACxCsB,QAAStM,KAAKkF,YACdqH,QAASvM,KAAKyF,YACd+G,OAAQxM,KAAK2F,aAEfgG,EAAA,sBAAAvD,IAAA,2CACE2D,IAAKC,IACHhM,KAAK0J,YAAcsC,CAAkD,EAEvEH,MAAM,iCACNY,QAAQ,OACR7L,KAAMZ,KAAKY,KACX8L,KAAK,QACL5L,UAAW,MACX6L,QAAO,KACP3L,WAAYoE,EACZjE,UAAU,cACVyL,SAAS,SACTC,SAAU7M,KAAK0B,KACfoL,YAAa9M,KAAK0B,MAAQ1B,KAAK4B,QAC/BmL,SAAU/M,KAAK0B,KAAO1B,KAAKG,QAAU6K,UACrCgC,UAAWhN,KAAKgF,gBAGnBhF,KAAK2B,aACJgK,EAAA,OACEO,GAAIlM,KAAKG,QACT8M,QAAQ,SACRpB,MAAO,CACL,mBAAoB,KACpB,kBAAmB,KACnB,2BAA4B7L,KAAK4B,QACjC,mBAAoB,KACpB,sBAAuB,MAEzBsL,MAAO/B,EACPgC,KAAK,SAAQ,aACF,eAEXxB,EAAA,kBACEhL,WAAYX,KAAKW,WACjBP,MAAOJ,KAAKI,MACZgG,IAAKpG,KAAKoG,IACVC,IAAKrG,KAAKqG,IACV3F,KAAMV,KAAKU,KACXM,WAAYoE,EACZnE,UAAS,KACTmM,WAAYpN,KAAK4F,oBAGnB,KACH2E,GACCoB,EAAA,WAAAvD,IAAA,2CACEyD,MAAM,aACNwB,GAAG,MACHZ,QAAQ,kBACRa,MAAM,WACNC,OAAQvN,KAAKE,QACbiN,KAAK,SAEJnN,KAAKyK,c","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{I as o,d as s}from"./p-
|
|
1
|
+
import{I as o,d as s}from"./p-BwdnVqAY.js";const t=o;const n=s;export{t as DsInput,n as defineCustomElement};
|
|
2
2
|
//# sourceMappingURL=ds-input.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as r,H as e,c as s,h as a,a as o,t}from"./index.js";import{d as i}from"./p-
|
|
1
|
+
import{p as r,H as e,c as s,h as a,a as o,t}from"./index.js";import{d as i}from"./p-D8OWhnID.js";const c=()=>`@media (forced-colors: active){.sc-ds-map-cluster-marker:root,.sc-ds-map-cluster-marker-h,.ds-forced-colors-scope.sc-ds-map-cluster-marker{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.sc-ds-map-cluster-marker-h{--ds-focus-ring-width:var(--dimension-stroke-width-025, 2px);--ds-focus-ring-offset:var(--dimension-space-025, 2px);--ds-focus-ring-color:var(--color-interaction-focus)}.ds-focus-ring.sc-ds-map-cluster-marker-h,.ds-focus-ring.sc-ds-map-cluster-marker,.ds-focus-ring-inset.sc-ds-map-cluster-marker-h,.ds-focus-ring-inset.sc-ds-map-cluster-marker{outline:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.ds-focus-ring.sc-ds-map-cluster-marker-h:focus-visible,.ds-focus-ring.sc-ds-map-cluster-marker:focus-visible{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring.ds-focus-ring--visible.sc-ds-map-cluster-marker-h,.ds-focus-ring.ds-focus-ring--visible.sc-ds-map-cluster-marker{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring-inset.sc-ds-map-cluster-marker-h:focus-visible,.ds-focus-ring-inset.sc-ds-map-cluster-marker:focus-visible{outline:none}.ds-focus-ring-inset.sc-ds-map-cluster-marker-h:focus-visible::after,.ds-focus-ring-inset.sc-ds-map-cluster-marker:focus-visible::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-map-cluster-marker-h,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-map-cluster-marker{outline:none}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-map-cluster-marker-h::after,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-map-cluster-marker::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}@media (forced-colors: active){.sc-ds-map-cluster-marker-h{--ds-focus-ring-color:var(--ds-forced-color-selected)}}.sc-ds-map-cluster-marker-h{--_map-marker-background:var(--color-entity-marker-background-in-motion);--_map-marker-foreground:var(--color-entity-marker-foreground);--_map-marker-interaction-hover:var(--color-entity-marker-interaction-hover);--_map-marker-interaction-pressed:var(--color-entity-marker-interaction-pressed);position:relative;display:inline-flex;width:max-content;overflow:visible;vertical-align:middle;transition:var(--effect-transition-interaction-opacity-short-2)}.map-marker--dimmed.sc-ds-map-cluster-marker-h{opacity:var(--effect-opacity-medium)}.map-marker--dimmed.sc-ds-map-cluster-marker-h:focus-within{opacity:1}.map-marker__button.sc-ds-map-cluster-marker{all:unset;position:relative;z-index:0;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:var(--dimension-size-300);min-width:var(--dimension-size-300);overflow:hidden;color:var(--_map-marker-foreground);background:var(--_map-marker-background);box-shadow:0 0 0 var(--dimension-stroke-width-012) var(--color-border-tertiary);cursor:pointer;transition:var(--effect-transition-interaction-opacity-short-2)}.map-marker__button.sc-ds-map-cluster-marker::before{content:'';position:absolute;z-index:1;inset:0;border-radius:inherit;pointer-events:none}.map-marker__button.sc-ds-map-cluster-marker::after{content:'';position:absolute;z-index:3;inset:0;border-radius:inherit;outline:var(--dimension-stroke-width-018) solid currentColor;outline-offset:calc(-1 * var(--dimension-stroke-width-037));pointer-events:none}.map-marker__caption.sc-ds-map-cluster-marker{position:absolute;z-index:2;top:calc(100% + var(--dimension-space-050));left:50%;display:none;box-sizing:border-box;align-items:center;justify-content:center;width:max-content;max-width:calc(var(--dimension-size-800) * 4);height:var(--dimension-size-200);padding:0 var(--dimension-space-050);overflow:visible;border-radius:var(--dimension-radius-025);color:var(--_map-marker-foreground);background:var(--_map-marker-background);pointer-events:none;transform:translateX(-50%);line-height:0;white-space:nowrap}.sc-ds-map-cluster-marker-h:focus-within .map-marker__caption.sc-ds-map-cluster-marker{display:inline-flex}@media (hover: hover) and (pointer: fine){.map-marker--dimmed.sc-ds-map-cluster-marker-h:hover{opacity:1}.sc-ds-map-cluster-marker-h:hover .map-marker__caption.sc-ds-map-cluster-marker{display:inline-flex}.map-marker__button.sc-ds-map-cluster-marker:hover::before{background:var(--_map-marker-interaction-hover)}}.map-marker__button.sc-ds-map-cluster-marker:active::before{background:var(--_map-marker-interaction-pressed)}@media (forced-colors: active){.map-marker__button.sc-ds-map-cluster-marker{border:var(--dimension-stroke-width-012) solid var(--ds-forced-color-control-boundary);color:var(--ds-forced-color-content);background:var(--ds-forced-color-surface);box-shadow:none}.map-marker__button.sc-ds-map-cluster-marker::before{display:none}.map-marker__button.sc-ds-map-cluster-marker::after{outline-color:var(--ds-forced-color-control-boundary)}.map-marker__caption.sc-ds-map-cluster-marker{border:var(--dimension-stroke-width-012) solid var(--ds-forced-color-control-boundary);color:var(--ds-forced-color-content);background:var(--ds-forced-color-surface)}}.sc-ds-map-cluster-marker-h{--_map-marker-background:var(--color-entity-cluster-marker-background);--_map-marker-foreground:var(--color-entity-cluster-marker-foreground);--_map-marker-interaction-hover:var(--color-entity-cluster-marker-interaction-hover);--_map-marker-interaction-pressed:var(--color-entity-cluster-marker-interaction-pressed)}.map-marker__button.sc-ds-map-cluster-marker{width:max-content;padding-inline:0;border-radius:var(--dimension-radius-half)}.map-marker__button.sc-ds-map-cluster-marker,.map-marker__caption.sc-ds-map-cluster-marker{-webkit-backdrop-filter:blur(var(--effect-blur-md));backdrop-filter:blur(var(--effect-blur-md))}.map-cluster-marker__button--padded.sc-ds-map-cluster-marker{padding-inline:var(--dimension-space-100)}.map-cluster-marker__count.sc-ds-map-cluster-marker{position:relative;z-index:2;display:inline-flex;white-space:nowrap}`;const n=r=>{const e=Math.max(0,Math.round(Number.isFinite(r)?r:0));if(e<1e3)return String(e);const s=Math.round(e/100)/10;return`${Number.isInteger(s)?s.toFixed(0):s.toFixed(1)}k`};const d=r(class r extends e{constructor(r){super();if(r!==false){this.__registerHost()}this.dsClick=s(this,"dsClick",7);this.caption="";this.count=0;this.dimmed=false;this.handleClick=r=>{this.dsClick.emit(r)}}async setFocus(){this.buttonEl?.focus()}render(){const r=this.caption.trim();const e=n(this.count);return a(o,{key:"ec08c475059967c3fee33f2c4131176cb91bc0b8",class:{"map-cluster-marker":true,"map-marker--dimmed":this.dimmed}},a("button",{key:"0f28c92ef7d1b8c5ae96b590aa8f1a67729704bb",ref:r=>this.buttonEl=r,type:"button",class:{"map-marker__button":true,"map-cluster-marker__button--padded":e.length>1,"ds-focus-ring":true},"aria-label":this.label,onClick:this.handleClick},a("ds-text",{key:"20c1701781d44b133f1d2d24037da91b0bf087d1",class:"map-cluster-marker__count",as:"span",variant:"text-body-medium",color:"inherit",emphasis:true},e)),r&&a("ds-text",{key:"edf77ff6c418635f94836c7668f9d1be37d2efb4",class:"map-marker__caption",as:"span",variant:"text-caption",color:"inherit","aria-hidden":"true"},r))}static get style(){return c()}},[2,"ds-map-cluster-marker",{label:[1],caption:[1],count:[2],dimmed:[516],setFocus:[64]}]);function m(){if(typeof customElements==="undefined"){return}const r=["ds-map-cluster-marker","ds-text"];r.forEach((r=>{switch(r){case"ds-map-cluster-marker":if(!customElements.get(t(r))){customElements.define(t(r),d)}break;case"ds-text":if(!customElements.get(t(r))){i()}break}}))}m();const l=d;const u=m;export{l as DsMapClusterMarker,u as defineCustomElement};
|
|
2
2
|
//# sourceMappingURL=ds-map-cluster-marker.js.map
|