@ds-mo/ui 15.5.0 → 15.6.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 +1 -1
- package/dist/agent.json +48 -23
- package/dist/angular/ds-data-preferences.d.ts +1 -1
- package/dist/angular/ds-data-preferences.js +3 -3
- package/dist/angular/ds-menu.d.ts +7 -1
- package/dist/angular/ds-menu.js +5 -2
- package/dist/angular/ds-table.d.ts +1 -1
- package/dist/angular/ds-table.js +3 -3
- package/dist/components/THIRD-PARTY-NOTICES +1 -1
- package/dist/components/bundled-dependencies.json +1 -1
- package/dist/components/ds-agent-questionnaire.js +1 -1
- package/dist/components/ds-agent-response.js +1 -1
- package/dist/components/ds-banner.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-button-filled.js +1 -1
- package/dist/components/ds-button-unfilled.js +1 -1
- package/dist/components/ds-calendar.js +1 -1
- package/dist/components/ds-card-chart.js +1 -1
- package/dist/components/ds-card-overview.js +1 -1
- package/dist/components/ds-card-setting.js +1 -1
- package/dist/components/ds-code-block.js +1 -1
- package/dist/components/ds-data-customize.js +1 -1
- package/dist/components/ds-data-filter.js +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-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-filter-menu.js +1 -1
- package/dist/components/ds-input-date.js +1 -1
- package/dist/components/ds-input-time.js +1 -1
- package/dist/components/ds-input.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-composer.js +1 -1
- package/dist/components/ds-message-scroller.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-tool-header.js +1 -1
- package/dist/components/ds-panel-tool-search.js +1 -1
- package/dist/components/ds-panel-tools.js +1 -1
- package/dist/components/ds-select.js +1 -1
- package/dist/components/ds-shell-app.js +1 -1
- package/dist/components/ds-shell-tools.js +1 -1
- package/dist/components/ds-table.js +1 -1
- package/dist/components/ds-table.js.map +1 -1
- package/dist/components/ds-toast.js +1 -1
- package/dist/components/ds-toast.js.map +1 -1
- package/dist/components/ds-tooltip.js +1 -1
- package/dist/components/{p-BO5URdZF.js → p-B-pkoIX9.js} +2 -2
- package/dist/components/{p--STJbKuN.js → p-B3o9zn3Y.js} +2 -2
- package/dist/components/p-BR9Pjp15.js +2 -0
- package/dist/components/{p-Bq_ypMSy.js.map → p-BR9Pjp15.js.map} +1 -1
- package/dist/components/{p-rmPIcWED.js → p-BZY40-pE.js} +2 -2
- package/dist/components/{p-D-J7GgjY.js → p-BqipGGua.js} +2 -2
- package/dist/components/{p-D-J7GgjY.js.map → p-BqipGGua.js.map} +1 -1
- package/dist/components/{p-PtxCwf5S.js → p-C6kUn-vb.js} +2 -2
- package/dist/components/p-CElsKlxj.js +2 -0
- package/dist/components/{p-C1oczmAc.js.map → p-CElsKlxj.js.map} +1 -1
- package/dist/components/p-CIMyD_6H.js +2 -0
- package/dist/components/{p-C5BBIDVm.js.map → p-CIMyD_6H.js.map} +1 -1
- package/dist/components/{p-BcpIK9S6.js → p-CSxwWcwW.js} +2 -2
- package/dist/components/p-CUYLGe5d.js +2 -0
- package/dist/components/{p-D9_iDlkT.js.map → p-CUYLGe5d.js.map} +1 -1
- package/dist/components/{p-wRhYxngW.js → p-CaFXrn_8.js} +2 -2
- package/dist/components/{p-BYeG0b5N.js → p-DObhRLBa.js} +2 -2
- package/dist/components/{p-C_9VGgPf.js → p-DP07JCed.js} +2 -2
- package/dist/components/{p-Dg6hnCc2.js → p-DVsGfz7J.js} +2 -2
- package/dist/components/{p-Dg6hnCc2.js.map → p-DVsGfz7J.js.map} +1 -1
- package/dist/components/p-DYGllrVT.js +2 -0
- package/dist/components/{p-DEYCF-oJ.js.map → p-DYGllrVT.js.map} +1 -1
- package/dist/components/{p-BGSG6xIS.js → p-DYtVsnDS.js} +2 -2
- package/dist/components/p-DbW8S5qe.js +2 -0
- package/dist/components/p-DbW8S5qe.js.map +1 -0
- package/dist/components/p-DcxY_pdJ.js +2 -0
- package/dist/components/{p-CA3iQ1ME.js.map → p-DcxY_pdJ.js.map} +1 -1
- package/dist/components/{p-B6TX55c5.js → p-DdFeWC-e.js} +2 -2
- package/dist/components/p-DlCLfwP4.js +2 -0
- package/dist/components/p-DuCfCvPs.js +2 -0
- package/dist/components/p-DuCfCvPs.js.map +1 -0
- package/dist/components/{p-BYrBU_U9.js → p-HMDczkQf.js} +2 -2
- package/dist/components/p-HfZ1gI2q.js +2 -0
- package/dist/components/{p-jp7hwRtC.js.map → p-HfZ1gI2q.js.map} +1 -1
- package/dist/components/{p-DR_8IPn9.js → p-KA8srEed.js} +2 -2
- package/dist/components/{p-CXGjCWSh.js → p-OJ5WeR05.js} +2 -2
- package/dist/components/p-Ouk6FCxc.js +2 -0
- package/dist/components/{p-PzYJqN8B.js.map → p-Ouk6FCxc.js.map} +1 -1
- package/dist/components/p-leZFu-cd.js +2 -0
- package/dist/components/{p-DPFg5d4_.js.map → p-leZFu-cd.js.map} +1 -1
- package/dist/components/{p-DjbT9kKm.js → p-wXKIVUTn.js} +2 -2
- package/dist/components/p-xMBaOeKa.js +2 -0
- package/dist/components/p-xMBaOeKa.js.map +1 -0
- package/dist/docs/components.json +208 -30
- package/dist/lint/index.js +1 -1
- package/dist/mcp-data/registry/agent-activity.json +1 -1
- package/dist/mcp-data/registry/agent-questionnaire.json +1 -1
- package/dist/mcp-data/registry/agent-response.json +1 -1
- package/dist/mcp-data/registry/agent-source-list.json +1 -1
- package/dist/mcp-data/registry/agent-tool-call.json +1 -1
- package/dist/mcp-data/registry/attachment-list.json +1 -1
- package/dist/mcp-data/registry/avatar.json +1 -1
- package/dist/mcp-data/registry/badge.json +1 -1
- package/dist/mcp-data/registry/banner.json +1 -1
- package/dist/mcp-data/registry/bar-action.json +1 -1
- package/dist/mcp-data/registry/bar-nav.json +1 -1
- package/dist/mcp-data/registry/bar-page-title.json +1 -1
- package/dist/mcp-data/registry/bar-title.json +1 -1
- package/dist/mcp-data/registry/bar-workflow.json +1 -1
- package/dist/mcp-data/registry/breadcrumb.json +1 -1
- package/dist/mcp-data/registry/button-filled.json +2 -2
- package/dist/mcp-data/registry/button-inverted.json +1 -1
- package/dist/mcp-data/registry/button-unfilled.json +1 -1
- package/dist/mcp-data/registry/calendar.json +1 -1
- package/dist/mcp-data/registry/card-action-center.json +1 -1
- package/dist/mcp-data/registry/card-chart.json +1 -1
- package/dist/mcp-data/registry/card-navigation.json +1 -1
- package/dist/mcp-data/registry/card-overview.json +1 -1
- package/dist/mcp-data/registry/card-setting.json +1 -1
- package/dist/mcp-data/registry/card-settings-scope.json +1 -1
- package/dist/mcp-data/registry/chart-legend.json +1 -1
- package/dist/mcp-data/registry/chart.json +1 -1
- package/dist/mcp-data/registry/checkbox-group.json +1 -1
- package/dist/mcp-data/registry/checkbox.json +1 -1
- package/dist/mcp-data/registry/chip.json +1 -1
- package/dist/mcp-data/registry/code-block.json +1 -1
- package/dist/mcp-data/registry/conversation-list-item.json +1 -1
- package/dist/mcp-data/registry/conversation-list-section.json +1 -1
- package/dist/mcp-data/registry/conversation-list.json +1 -1
- package/dist/mcp-data/registry/data-customize.json +1 -1
- package/dist/mcp-data/registry/data-filter.json +1 -1
- package/dist/mcp-data/registry/data-group.json +1 -1
- package/dist/mcp-data/registry/data-preferences.json +22 -6
- package/dist/mcp-data/registry/data-saved-views.json +1 -1
- package/dist/mcp-data/registry/data-search.json +1 -1
- package/dist/mcp-data/registry/data-sort.json +1 -1
- package/dist/mcp-data/registry/data-toolbar.json +1 -1
- package/dist/mcp-data/registry/divider.json +1 -1
- package/dist/mcp-data/registry/empty-state.json +1 -1
- package/dist/mcp-data/registry/field.json +1 -1
- package/dist/mcp-data/registry/filter-menu.json +1 -1
- package/dist/mcp-data/registry/icon.json +1 -1
- package/dist/mcp-data/registry/inline-banner-settings.json +1 -1
- package/dist/mcp-data/registry/input-date.json +1 -1
- package/dist/mcp-data/registry/input-time.json +1 -1
- package/dist/mcp-data/registry/input.json +1 -1
- package/dist/mcp-data/registry/loader.json +1 -1
- package/dist/mcp-data/registry/map-cluster-marker.json +1 -1
- package/dist/mcp-data/registry/map-entity-marker.json +6 -6
- package/dist/mcp-data/registry/markdown.json +1 -1
- package/dist/mcp-data/registry/menu.json +31 -12
- package/dist/mcp-data/registry/message-actions.json +1 -1
- package/dist/mcp-data/registry/message-bubble.json +1 -1
- package/dist/mcp-data/registry/message-composer.json +1 -1
- package/dist/mcp-data/registry/message-scroller.json +1 -1
- package/dist/mcp-data/registry/message.json +1 -1
- package/dist/mcp-data/registry/mobile-bar-nav.json +1 -1
- package/dist/mcp-data/registry/mobile-header.json +1 -1
- package/dist/mcp-data/registry/mobile-section-switcher.json +1 -1
- package/dist/mcp-data/registry/mobile-sheet-nav.json +1 -1
- package/dist/mcp-data/registry/modal.json +1 -1
- package/dist/mcp-data/registry/pagination.json +1 -1
- package/dist/mcp-data/registry/panel-nav.json +1 -1
- package/dist/mcp-data/registry/panel-sub-nav.json +1 -1
- package/dist/mcp-data/registry/panel-tool-header.json +1 -1
- package/dist/mcp-data/registry/panel-tool-search.json +1 -1
- package/dist/mcp-data/registry/panel-tools.json +1 -1
- package/dist/mcp-data/registry/paper-texture.json +1 -1
- package/dist/mcp-data/registry/radio-tile.json +1 -1
- package/dist/mcp-data/registry/radio.json +1 -1
- package/dist/mcp-data/registry/registry.json +48 -23
- package/dist/mcp-data/registry/score.json +1 -1
- package/dist/mcp-data/registry/scroll-overlay.json +1 -1
- package/dist/mcp-data/registry/select.json +1 -1
- package/dist/mcp-data/registry/setting-row-checkbox.json +1 -1
- package/dist/mcp-data/registry/setting-row-radio.json +1 -1
- package/dist/mcp-data/registry/setting-row-toggle.json +1 -1
- package/dist/mcp-data/registry/shell-app.json +1 -1
- package/dist/mcp-data/registry/shell-page.json +1 -1
- package/dist/mcp-data/registry/shell-tools.json +1 -1
- package/dist/mcp-data/registry/skeleton.json +1 -1
- package/dist/mcp-data/registry/slider.json +1 -1
- package/dist/mcp-data/registry/swatch-picker.json +1 -1
- package/dist/mcp-data/registry/switch.json +1 -1
- package/dist/mcp-data/registry/tab-group.json +1 -1
- package/dist/mcp-data/registry/table.json +59 -19
- package/dist/mcp-data/registry/tag.json +1 -1
- package/dist/mcp-data/registry/text.json +1 -1
- package/dist/mcp-data/registry/textarea.json +1 -1
- package/dist/mcp-data/registry/time-picker.json +1 -1
- package/dist/mcp-data/registry/toast.json +1 -1
- package/dist/mcp-data/registry/tooltip-chart.json +1 -1
- package/dist/mcp-data/registry/tooltip.json +1 -1
- package/dist/mcp-data/registry/typing-indicator.json +1 -1
- package/dist/react/ds-menu.d.ts +2 -1
- package/dist/react/ds-menu.js +1 -0
- package/dist/styles/table.css +41 -0
- package/dist/types/components/DataPreferences/DataPreferences.d.ts +3 -0
- package/dist/types/components/MapEntityMarker/MapEntityMarker.d.ts +1 -1
- package/dist/types/components/Menu/Menu.d.ts +5 -1
- package/dist/types/components/Menu/menu-types.d.ts +36 -0
- package/dist/types/components/Table/Table.d.ts +11 -2
- package/dist/types/components/Table/index.d.ts +1 -1
- package/dist/types/components/Table/table-column-customizer.d.ts +23 -4
- package/dist/types/components/Table/table-layout-controller.d.ts +2 -1
- package/dist/types/components/Table/table-types.d.ts +3 -1
- package/dist/types/components.d.ts +44 -8
- package/dist/vue/ds-data-preferences.js +1 -0
- package/dist/vue/ds-menu.js +2 -0
- package/dist/vue/ds-table.js +2 -0
- package/package.json +3 -3
- package/dist/components/p-Bq_ypMSy.js +0 -2
- package/dist/components/p-C1oczmAc.js +0 -2
- package/dist/components/p-C5BBIDVm.js +0 -2
- package/dist/components/p-CA3iQ1ME.js +0 -2
- package/dist/components/p-CE6MaXBg.js +0 -2
- package/dist/components/p-CE6MaXBg.js.map +0 -1
- package/dist/components/p-D9_iDlkT.js +0 -2
- package/dist/components/p-DEYCF-oJ.js +0 -2
- package/dist/components/p-DPFg5d4_.js +0 -2
- package/dist/components/p-DvGrsLgt.js +0 -2
- package/dist/components/p-DvGrsLgt.js.map +0 -1
- package/dist/components/p-PzYJqN8B.js +0 -2
- package/dist/components/p-aD5cw_m2.js +0 -2
- package/dist/components/p-aD5cw_m2.js.map +0 -1
- package/dist/components/p-jp7hwRtC.js +0 -2
- package/dist/components/p-kDZ0sEII.js +0 -2
- package/dist/components/p-t2Ebn8si.js +0 -2
- package/dist/components/p-t2Ebn8si.js.map +0 -1
- /package/dist/components/{p-BO5URdZF.js.map → p-B-pkoIX9.js.map} +0 -0
- /package/dist/components/{p--STJbKuN.js.map → p-B3o9zn3Y.js.map} +0 -0
- /package/dist/components/{p-rmPIcWED.js.map → p-BZY40-pE.js.map} +0 -0
- /package/dist/components/{p-PtxCwf5S.js.map → p-C6kUn-vb.js.map} +0 -0
- /package/dist/components/{p-BcpIK9S6.js.map → p-CSxwWcwW.js.map} +0 -0
- /package/dist/components/{p-wRhYxngW.js.map → p-CaFXrn_8.js.map} +0 -0
- /package/dist/components/{p-BYeG0b5N.js.map → p-DObhRLBa.js.map} +0 -0
- /package/dist/components/{p-C_9VGgPf.js.map → p-DP07JCed.js.map} +0 -0
- /package/dist/components/{p-BGSG6xIS.js.map → p-DYtVsnDS.js.map} +0 -0
- /package/dist/components/{p-B6TX55c5.js.map → p-DdFeWC-e.js.map} +0 -0
- /package/dist/components/{p-kDZ0sEII.js.map → p-DlCLfwP4.js.map} +0 -0
- /package/dist/components/{p-BYrBU_U9.js.map → p-HMDczkQf.js.map} +0 -0
- /package/dist/components/{p-DR_8IPn9.js.map → p-KA8srEed.js.map} +0 -0
- /package/dist/components/{p-CXGjCWSh.js.map → p-OJ5WeR05.js.map} +0 -0
- /package/dist/components/{p-DjbT9kKm.js.map → p-wXKIVUTn.js.map} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as s,H as i,c as r,h as e,a as n,t}from"./index.js";import{C as a}from"./p-DlsjHRU3.js";import{g as o,i as d}from"./p-BQq26pt9.js";import{t as c,v as l,a as h,b as v}from"./p-02k7d7BH.js";import{C as b,c as f,a as u,b as p,r as g,d as m}from"./p-B0uO3-Dp.js";import{d as w}from"./p-CwdRaJER.js";import{d as _}from"./p-D-J7GgjY.js";import{d as y}from"./p-pPtjNRqC.js";import{d as k}from"./p-0XTyQNRG.js";import{d as x}from"./p-t2Ebn8si.js";import{d as T}from"./p-B9y6azEw.js";import{d as C}from"./p-Bf-BphXP.js";import{d as z}from"./p-d76Ry5nh.js";import{d as D}from"./p-D8OWhnID.js";import{d as E}from"./p-DvGrsLgt.js";function j(s,i,r){if(!s||!i){return{value:"",hideTabs:false}}if(s!==i&&!s.startsWith(`${i}/`)){return{value:"",hideTabs:false}}const e=s.slice(i.length);const n=e.startsWith("/")?e.slice(1).split("/")[0]:"";const t=o(r);if(!n){return{value:t[0]?.id??"",hideTabs:false}}const a=t.find((s=>s.id===n));if(a){return{value:a.id,hideTabs:false}}return{value:"",hideTabs:true}}function H(s,i){return s.length===0&&(i?.length??0)>0}const O=()=>`.sc-ds-bar-nav-h,.sc-ds-bar-nav:where(.ds-table),.sc-ds-bar-nav:where(.tooltip-popup),.sc-ds-bar-nav: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-bar-nav,.ds-control--lg.sc-ds-bar-nav-h,.ds-control--md.sc-ds-bar-nav-h,.ds-control--md.sc-ds-bar-nav,.ds-control--sm.sc-ds-bar-nav-h,.ds-control--sm.sc-ds-bar-nav,.ds-control--xs.sc-ds-bar-nav-h,.ds-control--xs.sc-ds-bar-nav{--ds-control-radius:var(--ds-radius-control)}.ds-control--lg.sc-ds-bar-nav-h,.ds-control--lg.sc-ds-bar-nav{--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-bar-nav-h,.ds-control--md.sc-ds-bar-nav{--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-bar-nav-h,.ds-control--sm.sc-ds-bar-nav{--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-bar-nav-h,.ds-control--xs.sc-ds-bar-nav{--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-bar-nav{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-bar-nav{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-bar-nav{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-bar-nav{min-width:0;padding-inline:var(--ds-control-label-inset, var(--dimension-space-025))}.ds-control-label-dot.sc-ds-bar-nav{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-bar-nav{position:absolute;inset-block-start:0;inset-inline-end:0;pointer-events:none}.ds-chrome-space--sm.sc-ds-bar-nav-h,.ds-chrome-space--sm.sc-ds-bar-nav{--ds-chrome-padding:var(--dimension-space-050);--ds-chrome-gap:var(--dimension-space-050)}.ds-chrome-space--md.sc-ds-bar-nav-h,.ds-chrome-space--md.sc-ds-bar-nav{--ds-chrome-padding:var(--dimension-space-100);--ds-chrome-gap:var(--dimension-space-100)}.ds-chrome-space--lg.sc-ds-bar-nav-h,.ds-chrome-space--lg.sc-ds-bar-nav{--ds-chrome-padding:var(--dimension-space-200);--ds-chrome-gap:var(--dimension-space-200)}.ds-chrome-row.sc-ds-bar-nav-h,.ds-chrome-row.sc-ds-bar-nav,.ds-chrome-column.sc-ds-bar-nav-h,.ds-chrome-column.sc-ds-bar-nav,.ds-chrome-grid.sc-ds-bar-nav-h,.ds-chrome-grid.sc-ds-bar-nav{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-bar-nav-h,.ds-chrome-row.sc-ds-bar-nav{flex-direction:row;align-items:center}.ds-chrome-column.sc-ds-bar-nav-h,.ds-chrome-column.sc-ds-bar-nav{flex-direction:column}.ds-chrome-grid.sc-ds-bar-nav-h,.ds-chrome-grid.sc-ds-bar-nav{display:grid;align-items:center}@media (forced-colors: active){.sc-ds-bar-nav:root,.sc-ds-bar-nav-h,.ds-forced-colors-scope.sc-ds-bar-nav{--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-bar-nav-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-bar-nav-h,.ds-focus-ring.sc-ds-bar-nav,.ds-focus-ring-inset.sc-ds-bar-nav-h,.ds-focus-ring-inset.sc-ds-bar-nav{outline:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.ds-focus-ring.sc-ds-bar-nav-h:focus-visible,.ds-focus-ring.sc-ds-bar-nav: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-bar-nav-h,.ds-focus-ring.ds-focus-ring--visible.sc-ds-bar-nav{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-bar-nav-h:focus-visible,.ds-focus-ring-inset.sc-ds-bar-nav:focus-visible{outline:none}.ds-focus-ring-inset.sc-ds-bar-nav-h:focus-visible::after,.ds-focus-ring-inset.sc-ds-bar-nav: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-bar-nav-h,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-bar-nav{outline:none}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-bar-nav-h::after,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-bar-nav::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-bar-nav-h{--ds-focus-ring-color:var(--ds-forced-color-selected)}}@media (forced-colors: active){.sc-ds-bar-nav:root,.sc-ds-bar-nav-h,.ds-forced-colors-scope.sc-ds-bar-nav{--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-bar-nav-h,.ds-control-inactive.sc-ds-bar-nav{opacity:var(--effect-opacity-medium);pointer-events:none;cursor:not-allowed}@media (forced-colors: active){.ds-control-inactive.sc-ds-bar-nav-h,.ds-control-inactive.sc-ds-bar-nav{color:var(--ds-forced-color-disabled);opacity:1}}@media (forced-colors: active){.sc-ds-bar-nav:root,.sc-ds-bar-nav-h,.ds-forced-colors-scope.sc-ds-bar-nav{--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-bar-nav-h,.ds-interaction-fill.sc-ds-bar-nav{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-bar-nav-h::before,.ds-interaction-fill.sc-ds-bar-nav::before,.ds-interaction-fill.sc-ds-bar-nav-h::after,.ds-interaction-fill.sc-ds-bar-nav::after{content:'';position:absolute;inset:0;border-radius:inherit;background:transparent;pointer-events:none;cursor:inherit;transition:none}.ds-interaction-fill.sc-ds-bar-nav-h::before,.ds-interaction-fill.sc-ds-bar-nav::before{z-index:1}.ds-interaction-fill.sc-ds-bar-nav-h::after,.ds-interaction-fill.sc-ds-bar-nav::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-bar-nav-h,.ds-interaction-fill--bordered.sc-ds-bar-nav{--ds-interaction-border-width:var(--dimension-stroke-width-012);--ds-interaction-border-color:var(--color-border-secondary)}.ds-interaction-fill--selected.sc-ds-bar-nav-h::before,.ds-interaction-fill--selected.sc-ds-bar-nav::before{background:var(--ds-interaction-active)}.ds-interaction-fill--selected.sc-ds-bar-nav-h,.ds-interaction-fill--selected.sc-ds-bar-nav{--ds-interaction-dot-ring:var(--ds-interaction-active)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill.sc-ds-bar-nav-h:hover:not(:disabled)::after,.ds-interaction-fill.sc-ds-bar-nav:hover:not(:disabled)::after{background:var(--ds-interaction-hover)}}.ds-interaction-fill.sc-ds-bar-nav-h:active:not(:disabled)::after,.ds-interaction-fill.sc-ds-bar-nav:active:not(:disabled)::after{background:var(--ds-interaction-pressed)}.ds-interaction-fill--grouped.sc-ds-bar-nav-h::after,.ds-interaction-fill--grouped.sc-ds-bar-nav::after,.ds-interaction-fill--grouped.sc-ds-bar-nav-h:active:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-bar-nav:active:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill--grouped.sc-ds-bar-nav-h:hover:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-bar-nav:hover:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}}.ds-interaction-fill--grouped.sc-ds-bar-nav-h,.ds-interaction-fill--grouped.sc-ds-bar-nav{--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-bar-nav-h>.ds-interaction-fill__content.sc-ds-bar-nav,.ds-interaction-fill.sc-ds-bar-nav>.ds-interaction-fill__content.sc-ds-bar-nav,.ds-interaction-fill__content.sc-ds-bar-nav{position:relative;z-index:2;cursor:inherit}.ds-interaction-fill--on-faint.sc-ds-bar-nav-h,.ds-interaction-fill--on-faint.sc-ds-bar-nav{--ds-interaction-active:var(--color-interaction-active)}.ds-interaction-fill--on-medium.sc-ds-bar-nav-h,.ds-interaction-fill--on-medium.sc-ds-bar-nav{--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-bar-nav-h,.ds-interaction-fill--on-bold.sc-ds-bar-nav{--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-bar-nav-h,.ds-interaction-fill--on-strong.sc-ds-bar-nav{--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-bar-nav-h,.ds-interaction-fill--on-translucent.sc-ds-bar-nav{--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-bar-nav-h,.ds-interaction-fill--on-inverted.sc-ds-bar-nav{--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-bar-nav-h,.ds-interaction-fill--on-media.sc-ds-bar-nav{--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-bar-nav-h,.ds-interaction-fill--on-always-dark.sc-ds-bar-nav{--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-bar-nav-h,.ds-interaction-fill--on-chrome.sc-ds-bar-nav{--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-bar-nav-h,.ds-interaction-fill--on-navigation.sc-ds-bar-nav{--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-bar-nav-h:not(:disabled)::after,.ds-interaction-fill.ds-interaction-fill--surface-open.sc-ds-bar-nav:not(:disabled)::after{background:var(--ds-interaction-pressed)}@media (forced-colors: active){.ds-interaction-fill.sc-ds-bar-nav-h::after,.ds-interaction-fill.sc-ds-bar-nav::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-bar-nav-h:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after,.ds-interaction-fill--surface-open.sc-ds-bar-nav: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-bar-nav-h::before,.ds-interaction-fill--selected.sc-ds-bar-nav::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-bar-nav-h:hover:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after,.ds-interaction-fill.sc-ds-bar-nav: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)}}.sc-ds-bar-nav-h{display:block}.bar-nav.sc-ds-bar-nav{position:relative;height:var(--dimension-size-600);border-bottom:var(--dimension-stroke-width-012) solid var(--_bar-nav-border);background-color:var(--_bar-nav-bg);color:var(--_bar-nav-fg-primary);-webkit-user-select:none;user-select:none;overflow:hidden;transition:background-color var(--effect-motion-short-3), border-color var(--effect-motion-short-3), color var(--effect-motion-short-3);isolation:isolate;--_bar-nav-bg:var(--color-chrome-background-theme);--_bar-nav-border:var(--color-chrome-border-tertiary);--_bar-nav-fg-primary:var(--color-chrome-foreground-primary);--_bar-nav-fg-secondary:var(--color-chrome-foreground-secondary);--_bar-nav-hover:var(--color-chrome-interaction-hover);--_bar-nav-pressed:var(--color-chrome-interaction-pressed);--_bar-nav-focus:var(--color-chrome-interaction-focus);--_bar-nav-dot:var(--color-chrome-foreground-theme);--ds-interaction-hover:var(--_bar-nav-hover);--ds-interaction-pressed:var(--_bar-nav-pressed);--ds-focus-ring-color:var(--_bar-nav-focus)}.bar-nav--dashboard.sc-ds-bar-nav,.bar-nav--settings.sc-ds-bar-nav{--_bar-nav-bg:var(--color-chrome-background-theme);--_bar-nav-border:var(--color-chrome-border-tertiary);--_bar-nav-fg-primary:var(--color-chrome-foreground-primary);--_bar-nav-fg-secondary:var(--color-chrome-foreground-secondary);--_bar-nav-hover:var(--color-chrome-interaction-hover);--_bar-nav-pressed:var(--color-chrome-interaction-pressed);--_bar-nav-focus:var(--color-chrome-interaction-focus);--_bar-nav-dot:var(--color-chrome-foreground-theme);--ds-interaction-hover:var(--_bar-nav-hover);--ds-interaction-pressed:var(--_bar-nav-pressed);--ds-focus-ring-color:var(--_bar-nav-focus)}ds-shell-app.sc-ds-bar-nav-h .bar-nav.sc-ds-bar-nav,ds-shell-app .sc-ds-bar-nav-h .bar-nav.sc-ds-bar-nav{background-color:transparent}.bar-nav.sc-ds-bar-nav>.sc-ds-bar-nav:not(.bar-nav__tabs-probe){position:relative;z-index:3}.bar-nav--tabs-collapsed.sc-ds-bar-nav{display:flex;gap:var(--dimension-space-100);align-items:center}.bar-nav__left.sc-ds-bar-nav{position:relative;flex:1 1 0%;min-width:0;width:0;display:flex;align-items:center}.bar-nav__tabs-visible.sc-ds-bar-nav{flex:1;min-width:0;width:100%}.bar-nav__tabs-probe.sc-ds-bar-nav{position:absolute;left:0;top:0;visibility:hidden;pointer-events:none;overflow:visible;width:max-content;max-width:none;z-index:-1}.bar-nav__tabs-probe.sc-ds-bar-nav>div.sc-ds-bar-nav{width:max-content}.bar-nav__tab-list.sc-ds-bar-nav{display:flex;align-items:center;gap:var(--dimension-space-050);position:relative;width:max-content}.bar-nav__tab.sc-ds-bar-nav{display:flex;align-items:center;justify-content:center;gap:var(--ds-control-gap);height:var(--ds-control-height);min-width:var(--ds-control-height);padding:0 var(--ds-control-padding-inline);box-sizing:border-box;border:none;border-radius:var(--ds-control-radius);background-color:transparent;color:var(--_bar-nav-fg-secondary);cursor:default;position:relative;flex-shrink:0;-webkit-user-select:none;user-select:none;transition:color var(--effect-motion-short-2)}.bar-nav__tab.sc-ds-bar-nav::after{content:'';position:absolute;inset:0;border-radius:var(--ds-control-radius);background:transparent;pointer-events:none;cursor:inherit}@media (hover: hover) and (pointer: fine){.bar-nav__tab.sc-ds-bar-nav:hover::after{background:var(--_bar-nav-hover)}}.bar-nav__tab.sc-ds-bar-nav:active::after{background:var(--_bar-nav-pressed)}.bar-nav__tab--selected.sc-ds-bar-nav{color:var(--_bar-nav-fg-primary)}.bar-nav__tab-label.sc-ds-bar-nav{display:inline-flex;align-items:center;white-space:nowrap}.bar-nav__tab-divider.sc-ds-bar-nav{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:var(--dimension-space-100);height:var(--ds-control-height);padding-block:var(--ds-control-padding-inline);flex-shrink:0;pointer-events:none}.bar-nav__tab-divider-line.sc-ds-bar-nav{width:var(--dimension-stroke-width-012);align-self:stretch;background-color:var(--_bar-nav-border)}.bar-nav__tabs-pending.sc-ds-bar-nav{flex:1;min-width:0;height:var(--ds-control-height);visibility:hidden;pointer-events:none}.bar-nav__overflow-trigger.sc-ds-bar-nav{margin-left:auto}ds-text.bar-nav__heading.sc-ds-bar-nav{display:inline-flex;align-items:center;height:var(--ds-control-height);padding-inline:calc(var(--ds-control-padding-inline) + var(--ds-control-label-inset));-webkit-user-select:none;user-select:none}`;const S=s(class s extends i{constructor(s){super();if(s!==false){this.__registerHost()}this.dsTabChange=r(this,"dsTabChange",7);this.navStyle="dashboard";this.tabs=[];this.value="";this.basePath="";this.currentUrl="";this.moreTabsLabel="More tabs";this.resolvedTabs=[];this.urlDerivedValue="";this.hideTabsForDetailRoute=false;this.tabsCollapsed=false;this.menuOpen=false;this.menuTriggerActive=false;this.tabLayoutCommitted=false;this.visibleTabs=[];this.overflowTabs=[];this.menuInitialFocusVisible=false;this.overflowRovingFocused=false;this.focusedTabId="";this.headerEl=null;this.triggerEl=null;this.menuEl=null;this.visibleTabListEl=null;this.probeTabListEl=null;this.resizeObserver=null;this.hasLoaded=false;this.connectionTasks=new a((()=>this.el.isConnected));this.intrinsicWidthRetryCount=0;this.tabLayoutPendingFrames=0;this.panelNavTransition=new b;this.panelToolsTransition=new b;this.overflowCoalescer=f((()=>{this.updateTabsCollapsed()}));this.chromeTransitionShell=null;this.committedSection="";this.pendingSection="";this.onChromeTransitionStart=s=>{const i=g(s);if(i==="panel-nav"){this.panelNavTransition.enter();return}if(i==="panel-tools"){const i=m(s)??"opening";if(i==="closing"){this.panelToolsTransition.enter()}}};this.onChromeTransitionEnd=s=>{const i=g(s);if(i==="panel-nav"){this.panelNavTransition.exit();if(!this.panelNavTransition.isActive){this.scheduleOverflowCheck()}return}if(i==="panel-tools"){this.panelToolsTransition.exit();this.scheduleOverflowCheck()}};this.handleOverflowFocus=()=>{this.overflowRovingFocused=true};this.handleOverflowBlur=()=>{this.overflowRovingFocused=false}}get effectiveValue(){if(this.currentUrl&&this.basePath){return this.urlDerivedValue}return this.value}get renderedSelectableTabs(){const s=this.hasOverflowTabs?this.visibleTabs:this.resolvedTabs;return o(s)}get hasOverflowTabs(){return this.tabLayoutCommitted&&this.tabsCollapsed&&this.overflowTabs.length>0}syncFocusedTabId(s,i){if(i.some((i=>i.id===s&&!i.isInactive))){this.focusedTabId=s;return}const r=i.find((s=>!s.isInactive));this.focusedTabId=r?.id??""}digestTabsConfig(s){return s.map((s=>d(s)?"|":s.id)).join(",")}resetTabOverflowLayout(){this.tabLayoutCommitted=false;this.tabsCollapsed=false;this.menuOpen=false;this.menuTriggerActive=false;this.menuInitialFocusVisible=false;this.intrinsicWidthRetryCount=0;this.tabLayoutPendingFrames=0;this.visibleTabs=[];this.overflowTabs=[]}onHostPropsChange(){this.applyHostProps()}onSelectionChange(){this.syncFocusedTabId(this.effectiveValue,this.renderedSelectableTabs);this.syncMenuSections();this.scheduleOverflowCheck()}onMenuOpenChange(s){if(this.menuEl){this.menuEl.open=s}}onTabsCollapsedChange(s,i){if(!s){this.menuOpen=false;this.menuTriggerActive=false;this.menuInitialFocusVisible=false;this.menuEl=null}this.scheduleOverflowCheck();if(s){this.connectionTasks.frame((()=>{this.scheduleOverflowCheck()}))}if(s||i===undefined||i===s)return;this.connectionTasks.frame((()=>this.scheduleOverflowCheck()));this.connectionTasks.microtask((()=>this.focusVisibleSelectedTab()))}componentWillLoad(){this.applyHostProps();this.syncFocusedTabId(this.effectiveValue,o(this.resolvedTabs))}connectedCallback(){if(this.hasLoaded)this.connectResources()}componentDidLoad(){this.hasLoaded=true;this.connectResources()}connectResources(){if(!this.el.isConnected)return;this.intrinsicWidthRetryCount=0;this.tabLayoutPendingFrames=0;this.syncHostPropsIfNeeded();this.scheduleDeferredHostPropSync();this.setupOverflowObserver();this.bindChromeTransitionListeners();this.scheduleOverflowCheck()}componentDidRender(){if(this.chromeOverflowPaused()){this.syncMenuAnchor();return}this.scheduleOverflowCheck();this.syncMenuAnchor()}disconnectedCallback(){this.connectionTasks.cancel();this.resizeObserver?.disconnect();this.resizeObserver=null;this.overflowCoalescer.cancel();this.unbindChromeTransitionListeners();this.panelNavTransition.exit();this.panelToolsTransition.exit()}bindChromeTransitionListeners(){this.unbindChromeTransitionListeners();const s=this.el.closest("ds-shell-app");if(!s)return;this.chromeTransitionShell=s;s.addEventListener(u,this.onChromeTransitionStart);s.addEventListener(p,this.onChromeTransitionEnd)}unbindChromeTransitionListeners(){if(!this.chromeTransitionShell)return;this.chromeTransitionShell.removeEventListener(u,this.onChromeTransitionStart);this.chromeTransitionShell.removeEventListener(p,this.onChromeTransitionEnd);this.chromeTransitionShell=null}chromeOverflowPaused(){return this.panelNavTransition.isActive||this.panelToolsTransition.isActive}syncHostPropsIfNeeded(){if(H(this.resolvedTabs,this.tabs)){this.applyHostProps()}else if(this.currentUrl&&this.basePath){this.syncValueFromUrl()}}scheduleDeferredHostPropSync(){let i=s.HOST_PROP_SYNC_BUDGET;const r=()=>{this.syncHostPropsIfNeeded();if(--i>0){this.connectionTasks.frame(r)}};this.connectionTasks.microtask(r)}setupOverflowObserver(){if(typeof ResizeObserver==="undefined"||!this.headerEl)return;this.resizeObserver?.disconnect();this.resizeObserver=new ResizeObserver((()=>{if(this.chromeOverflowPaused())return;this.scheduleOverflowCheck()}));this.resizeObserver.observe(this.headerEl)}scheduleOverflowCheck(){if(!this.el.isConnected||this.chromeOverflowPaused())return;this.overflowCoalescer.schedule()}getLeftZoneAvailableWidth(){if(!this.headerEl)return 0;const s=getComputedStyle(this.headerEl);const i=(parseFloat(s.paddingLeft)||0)+(parseFloat(s.paddingRight)||0);return Math.max(0,this.headerEl.clientWidth-i)}getTabsIntrinsicWidth(){return this.probeTabListEl?.scrollWidth??0}getHeaderGap(){if(!this.headerEl)return 0;const s=getComputedStyle(this.headerEl);return parseFloat(s.columnGap||s.gap)||0}getOverflowTriggerReserveWidth(){if(!this.triggerEl){return 40}return this.triggerEl.getBoundingClientRect().width+this.getHeaderGap()}getProbeTabMetrics(){const s=this.probeTabListEl;if(!s)return null;const i=Array.from(s.children);const r=i.map((s=>s.getBoundingClientRect().width));if(r.length===0||r.some((s=>s===0)))return null;const e=getComputedStyle(s);const n=parseFloat(e.columnGap||e.gap)||0;const t=r.reduce(((s,i)=>s+i),0);const a=n*Math.max(0,r.length-1);const o=Math.max(0,s.scrollWidth-t-a);return{itemWidths:r,itemGap:n,listExtraWidth:o}}setOverflowTabLayout(s,i){const r=i.length>0;const e=this.digestTabsConfig(s)!==this.digestTabsConfig(this.visibleTabs);const n=this.digestTabsConfig(i)!==this.digestTabsConfig(this.overflowTabs);if(e){this.visibleTabs=s}if(n){this.overflowTabs=i}if(r!==this.tabsCollapsed){this.tabsCollapsed=r;if(!r){this.menuOpen=false;this.menuTriggerActive=false}}this.syncFocusedTabId(this.effectiveValue,o(r?s:this.resolvedTabs))}scheduleIntrinsicWidthRetry(){if(this.intrinsicWidthRetryCount>=s.INTRINSIC_WIDTH_RETRY_MAX)return;this.intrinsicWidthRetryCount++;this.connectionTasks.frame((()=>this.scheduleOverflowCheck()))}forceTabLayoutCommit(s){this.intrinsicWidthRetryCount=0;this.tabLayoutPendingFrames=0;this.setOverflowTabLayout(s?[]:this.resolvedTabs,s?this.resolvedTabs:[]);this.tabLayoutCommitted=true}updateTabsCollapsed(){if(!this.el.isConnected||this.chromeOverflowPaused())return;if(!this.headerEl||this.resolvedTabs.length===0||this.hideTabsForDetailRoute){if(this.tabsCollapsed){this.setOverflowTabLayout([],[])}this.intrinsicWidthRetryCount=0;this.tabLayoutPendingFrames=0;this.tabLayoutCommitted=true;return}const i=this.getProbeTabMetrics();const r=this.getTabsIntrinsicWidth();if(!i||r===0){this.tabLayoutPendingFrames+=1;if(this.intrinsicWidthRetryCount>=s.INTRINSIC_WIDTH_RETRY_MAX){this.forceTabLayoutCommit(false)}else if(this.tabLayoutPendingFrames>=s.TAB_LAYOUT_COMMIT_MAX_FRAMES){this.forceTabLayoutCommit(false)}else{this.scheduleIntrinsicWidthRetry()}return}this.intrinsicWidthRetryCount=0;this.tabLayoutPendingFrames=0;const e=c(r,this.getLeftZoneAvailableWidth(),this.tabsCollapsed,s.OVERFLOW_HYSTERESIS_PX);if(!e){this.setOverflowTabLayout(this.resolvedTabs,[]);this.tabLayoutCommitted=true;return}const n=l(i.itemWidths,this.getLeftZoneAvailableWidth(),this.getOverflowTriggerReserveWidth(),i.itemGap,i.listExtraWidth);const t=h(this.resolvedTabs.slice(0,n));const a=this.resolvedTabs.slice(t.length);this.setOverflowTabLayout(t,a);this.tabLayoutCommitted=true}syncMenuAnchor(){if(!this.menuEl||!this.triggerEl||!this.hasOverflowTabs)return;this.menuEl.anchor=this.triggerEl;this.syncMenuSections()}handleMenuSelect(s){const i=s.detail;if(i?.value!==undefined){this.selectTab(String(i.value))}this.menuOpen=false;this.menuInitialFocusVisible=false}handleMenuClose(){this.menuOpen=false;this.menuInitialFocusVisible=false}handleMenuAfterClose(){if(!this.menuOpen)this.menuTriggerActive=false}incomingTabs(){return this.tabs??[]}applyHostProps(){const s=this.basePath;const i=s!==""&&this.committedSection!==""&&s!==this.committedSection;if(i){this.urlDerivedValue="";this.committedSection="";this.pendingSection=s;this.resolvedTabs=[];this.resetTabOverflowLayout();return}if(this.pendingSection){if(!s||s!==this.pendingSection){return}if(!this.currentUrl.startsWith(this.pendingSection)){return}const i=this.incomingTabs();if(i.length===0){return}this.pendingSection=""}const r=this.incomingTabs();const e=this.digestTabsConfig(r)!==this.digestTabsConfig(this.resolvedTabs);this.resolvedTabs=r;this.syncValueFromUrl();this.committedSection=s;if(e){this.resetTabOverflowLayout()}this.scheduleOverflowCheck()}syncMenuSections(){if(!this.menuEl)return;this.menuEl.sections=v(this.overflowTabs,this.effectiveValue)}syncValueFromUrl(){const s=this.incomingTabs();if(!this.currentUrl||!this.basePath){this.urlDerivedValue="";this.hideTabsForDetailRoute=false;return}if(!this.currentUrl.startsWith(this.basePath)){this.urlDerivedValue="";this.hideTabsForDetailRoute=false;return}const{value:i,hideTabs:r}=j(this.currentUrl,this.basePath,s);this.urlDerivedValue=i;this.hideTabsForDetailRoute=r}selectTab(s){this.value=s;this.dsTabChange.emit(s)}focusVisibleSelectedTab(){const s=this.visibleTabListEl?.querySelector(`[data-tab-id="${this.effectiveValue}"]`);s?.focus({preventScroll:true})}focusVisibleTab(s){this.focusedTabId=s;const i=this.visibleTabListEl?.querySelector(`[data-tab-id="${s}"]`);i?.focus({preventScroll:true})}focusLastVisibleTab(){const s=[...this.renderedSelectableTabs].reverse().find((s=>!s.isInactive));if(s)this.focusVisibleTab(s.id)}findEnabledVisibleTab(s,i){const r=this.renderedSelectableTabs;for(let e=s+i;e>=0&&e<r.length;e+=i){if(!r[e]?.isInactive)return e}return null}handleTabKeyDown(s){const i=this.renderedSelectableTabs;if(!i.length)return;const r=s.target?.getAttribute("data-tab-id");const e=r??this.focusedTabId;if(s.key==="Enter"||s.key===" "){const r=i.find((s=>s.id===e));if(!r||r.isInactive)return;s.preventDefault();this.selectTab(r.id);return}const n=i.findIndex((s=>s.id===e));if(n<0)return;let t;if(s.key==="ArrowRight"){t=this.findEnabledVisibleTab(n,1);if(t===null&&this.hasOverflowTabs){s.preventDefault();this.overflowRovingFocused=true;void this.triggerEl?.setFocus?.();return}}else if(s.key==="ArrowLeft"){t=this.findEnabledVisibleTab(n,-1)}else if(s.key==="Home"){t=i.findIndex((s=>!s.isInactive))}else if(s.key==="End"){const s=[...i].reverse().findIndex((s=>!s.isInactive));t=s<0?null:i.length-1-s}else{return}if(t===null||t<0||t===n)return;s.preventDefault();this.focusVisibleTab(i[t].id)}toggleTabMenu(s){if(this.menuOpen){this.menuOpen=false;this.menuInitialFocusVisible=false;return}if(this.menuEl&&this.triggerEl){this.menuEl.anchor=this.triggerEl;this.menuEl.minWidth="";this.syncMenuSections()}this.menuInitialFocusVisible=s?.focusVisible??false;this.menuTriggerActive=true;this.menuOpen=true}handleTriggerKeyDown(s){if(!this.hasOverflowTabs)return;if(!this.menuOpen){if(s.key==="ArrowLeft"){s.preventDefault();this.overflowRovingFocused=false;this.focusLastVisibleTab();return}if(s.key==="Enter"||s.key===" "){s.preventDefault();this.toggleTabMenu({focusVisible:true})}return}if(s.key==="Escape"){s.preventDefault();this.menuOpen=false;this.menuInitialFocusVisible=false;void this.triggerEl?.setFocus?.()}}renderTabList(s,i){return e("div",{role:"tablist",class:"bar-nav__tab-list","aria-label":this.heading,ref:s=>{if(i){const i=s??null;if(i===this.probeTabListEl)return;this.probeTabListEl=i;if(i){this.intrinsicWidthRetryCount=0;this.tabLayoutPendingFrames=0;this.scheduleOverflowCheck()}}else{this.visibleTabListEl=s??null}},onKeyDown:i?undefined:s=>this.handleTabKeyDown(s),onFocusin:i?undefined:()=>{this.overflowRovingFocused=false}},s.map(((s,r)=>{if(d(s)){return e("div",{class:"bar-nav__tab-divider",key:`divider-${r}`,"aria-hidden":"true"},e("div",{class:"bar-nav__tab-divider-line"}))}const n=s.id===this.effectiveValue;return e("button",{key:s.id,type:"button",role:"tab","data-tab-id":s.id,class:{"bar-nav__tab":true,"bar-nav__tab--selected":n,"ds-control--md":true,"ds-focus-ring-inset":true,"ds-interaction-fill--on-chrome":true,"ds-control-inactive":!!s.isInactive},"aria-selected":n?"true":"false","aria-disabled":s.isInactive?"true":undefined,"aria-controls":s.panelId??undefined,disabled:s.isInactive,tabIndex:!i&&!this.overflowRovingFocused&&s.id===this.focusedTabId?0:-1,onClick:()=>!i&&!s.isInactive&&this.selectTab(s.id),onFocus:()=>{if(!i)this.focusedTabId=s.id}},e("span",{class:{"bar-nav__tab-label":true,"ds-control-label-box":true,"ds-control-label-dot":!!s.dot,"bar-nav__tab-label--dot":!!s.dot}},e("ds-text",{as:"span",variant:"text-body-medium",emphasis:n,color:"inherit"},s.label),s.dot&&e("ds-badge",{class:"bar-nav__tab-dot ds-control-label-dot__badge",variant:"dot",hasRing:false,label:"","aria-hidden":"true",style:{"--_badge-bg":"var(--_bar-nav-dot)"}})))})))}render(){const s=this.basePath===""||this.committedSection===this.basePath;const i=s&&this.resolvedTabs.length>0&&!this.hideTabsForDetailRoute;const r=this.basePath||"no-section";const t=this.hasOverflowTabs?this.visibleTabs:this.resolvedTabs;return e(n,{key:"74929fece7904c01c14f418feffb600a52669abb"},e("header",{key:"6edd57b3105dce540d1abdb25781d8c944faf352",class:{"bar-nav":true,"ds-control--md":true,"ds-chrome-row":true,"ds-chrome-space--md":true,"ds-interaction-fill--on-chrome":true,"bar-nav--dashboard":this.navStyle==="dashboard","bar-nav--settings":this.navStyle==="settings","bar-nav--tabs-collapsed":i&&this.hasOverflowTabs},ref:s=>{this.headerEl=s;if(s&&!this.resizeObserver){this.setupOverflowObserver()}}},i&&e("div",{key:"710be6326954e3e143b12806b7cce5dffb250e3f",class:"bar-nav__tabs-probe","aria-hidden":"true",inert:true},e("div",{key:`probe-${r}`},this.renderTabList(this.resolvedTabs,true))),i&&this.tabLayoutCommitted&&t.length>0&&e("div",{key:"370ff89bb0a9bd83a5c34abf37290de925af7228",class:"bar-nav__left"},e("div",{key:`visible-${r}`,class:"bar-nav__tabs-visible"},this.renderTabList(t,false))),i&&!this.tabLayoutCommitted&&e("div",{key:"f938d6889ee9be08fd0b9f64d377391852942acc",class:"bar-nav__tabs-pending","aria-hidden":"true"}),!i&&this.heading&&e("ds-text",{key:"00eeeb19762b51414cdcb1b8ae72b2c23d60630b",class:"bar-nav__heading",lineTruncation:1,as:"span",variant:"text-body-medium",emphasis:true,color:"inherit",wrap:"nowrap"},this.heading),i&&this.hasOverflowTabs&&e("ds-button-unfilled",{key:"eb013c65991698a44365e6dfbdbff08431d2f482",variant:"icon",class:{"bar-nav__overflow-trigger":true},icon:"ChevronDown",activeFill:false,hasBorder:false,background:"chrome",focusTabIndex:this.overflowRovingFocused?0:-1,ref:s=>{this.triggerEl=s??null},haspopup:"menu",expanded:this.menuOpen,surfaceOpen:this.menuTriggerActive,"aria-label":this.moreTabsLabel,onDsClick:()=>this.toggleTabMenu({focusVisible:false}),onFocusin:this.handleOverflowFocus,onFocusout:this.handleOverflowBlur,onKeyDown:s=>this.handleTriggerKeyDown(s)})),i&&this.hasOverflowTabs&&e("ds-menu",{key:"e5ba4053cdfe8ef88b08019bf6339a430a535204",ref:s=>{this.menuEl=s??null},open:this.menuOpen,sections:v(this.overflowTabs,this.effectiveValue),side:"bottom",align:"end",sideOffset:"calc(var(--dimension-space-100) + var(--dimension-space-050))",initialFocusVisible:this.menuInitialFocusVisible,onDsSelect:s=>this.handleMenuSelect(s),onDsClose:()=>this.handleMenuClose(),onDsAfterClose:()=>this.handleMenuAfterClose()}))}get el(){return this}static get watchers(){return{tabs:[{onHostPropsChange:0}],currentUrl:[{onHostPropsChange:0}],basePath:[{onHostPropsChange:0}],value:[{onSelectionChange:0}],urlDerivedValue:[{onSelectionChange:0}],menuOpen:[{onMenuOpenChange:0}],tabsCollapsed:[{onTabsCollapsedChange:0}]}}static get style(){return O()}},[2,"ds-bar-nav",{navStyle:[513,"nav-style"],tabs:[16],value:[1025],heading:[1],basePath:[1,"base-path"],currentUrl:[1,"current-url"],moreTabsLabel:[1,"more-tabs-label"],resolvedTabs:[32],urlDerivedValue:[32],hideTabsForDetailRoute:[32],tabsCollapsed:[32],menuOpen:[32],menuTriggerActive:[32],tabLayoutCommitted:[32],visibleTabs:[32],overflowTabs:[32],menuInitialFocusVisible:[32],overflowRovingFocused:[32],focusedTabId:[32],committedSection:[32],pendingSection:[32]},undefined,{tabs:[{onHostPropsChange:0}],currentUrl:[{onHostPropsChange:0}],basePath:[{onHostPropsChange:0}],value:[{onSelectionChange:0}],urlDerivedValue:[{onSelectionChange:0}],menuOpen:[{onMenuOpenChange:0}],tabsCollapsed:[{onTabsCollapsedChange:0}]}]);S.HOST_PROP_SYNC_BUDGET=8;S.INTRINSIC_WIDTH_RETRY_MAX=3;S.TAB_LAYOUT_COMMIT_MAX_FRAMES=16;S.OVERFLOW_HYSTERESIS_PX=8;function P(){if(typeof customElements==="undefined"){return}const s=["ds-bar-nav","ds-badge","ds-button-unfilled","ds-icon","ds-loader","ds-menu","ds-swatch-picker","ds-switch","ds-tag","ds-text","ds-tooltip"];s.forEach((s=>{switch(s){case"ds-bar-nav":if(!customElements.get(t(s))){customElements.define(t(s),S)}break;case"ds-badge":if(!customElements.get(t(s))){w()}break;case"ds-button-unfilled":if(!customElements.get(t(s))){_()}break;case"ds-icon":if(!customElements.get(t(s))){y()}break;case"ds-loader":if(!customElements.get(t(s))){k()}break;case"ds-menu":if(!customElements.get(t(s))){x()}break;case"ds-swatch-picker":if(!customElements.get(t(s))){T()}break;case"ds-switch":if(!customElements.get(t(s))){C()}break;case"ds-tag":if(!customElements.get(t(s))){z()}break;case"ds-text":if(!customElements.get(t(s))){D()}break;case"ds-tooltip":if(!customElements.get(t(s))){E()}break}}))}P();export{S as B,P as d};
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
import{p as s,H as i,c as r,h as e,a as n,t}from"./index.js";import{C as a}from"./p-DlsjHRU3.js";import{g as o,i as d}from"./p-BQq26pt9.js";import{t as c,v as l,a as h,b as v}from"./p-02k7d7BH.js";import{C as b,c as f,a as u,b as p,r as g,d as m}from"./p-B0uO3-Dp.js";import{d as w}from"./p-CwdRaJER.js";import{d as _}from"./p-BqipGGua.js";import{d as y}from"./p-pPtjNRqC.js";import{d as k}from"./p-0XTyQNRG.js";import{d as x}from"./p-xMBaOeKa.js";import{d as T}from"./p-B9y6azEw.js";import{d as C}from"./p-Bf-BphXP.js";import{d as z}from"./p-d76Ry5nh.js";import{d as D}from"./p-D8OWhnID.js";import{d as E}from"./p-DbW8S5qe.js";function O(s,i,r){if(!s||!i){return{value:"",hideTabs:false}}if(s!==i&&!s.startsWith(`${i}/`)){return{value:"",hideTabs:false}}const e=s.slice(i.length);const n=e.startsWith("/")?e.slice(1).split("/")[0]:"";const t=o(r);if(!n){return{value:t[0]?.id??"",hideTabs:false}}const a=t.find((s=>s.id===n));if(a){return{value:a.id,hideTabs:false}}return{value:"",hideTabs:true}}function S(s,i){return s.length===0&&(i?.length??0)>0}const j=()=>`.sc-ds-bar-nav-h,.sc-ds-bar-nav:where(.ds-table),.sc-ds-bar-nav:where(.tooltip-popup),.sc-ds-bar-nav: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-bar-nav,.ds-control--lg.sc-ds-bar-nav-h,.ds-control--md.sc-ds-bar-nav-h,.ds-control--md.sc-ds-bar-nav,.ds-control--sm.sc-ds-bar-nav-h,.ds-control--sm.sc-ds-bar-nav,.ds-control--xs.sc-ds-bar-nav-h,.ds-control--xs.sc-ds-bar-nav{--ds-control-radius:var(--ds-radius-control)}.ds-control--lg.sc-ds-bar-nav-h,.ds-control--lg.sc-ds-bar-nav{--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-bar-nav-h,.ds-control--md.sc-ds-bar-nav{--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-bar-nav-h,.ds-control--sm.sc-ds-bar-nav{--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-bar-nav-h,.ds-control--xs.sc-ds-bar-nav{--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-bar-nav{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-bar-nav{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-bar-nav{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-bar-nav{min-width:0;padding-inline:var(--ds-control-label-inset, var(--dimension-space-025))}.ds-control-label-dot.sc-ds-bar-nav{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-bar-nav{position:absolute;inset-block-start:0;inset-inline-end:0;pointer-events:none}.ds-chrome-space--sm.sc-ds-bar-nav-h,.ds-chrome-space--sm.sc-ds-bar-nav{--ds-chrome-padding:var(--dimension-space-050);--ds-chrome-gap:var(--dimension-space-050)}.ds-chrome-space--md.sc-ds-bar-nav-h,.ds-chrome-space--md.sc-ds-bar-nav{--ds-chrome-padding:var(--dimension-space-100);--ds-chrome-gap:var(--dimension-space-100)}.ds-chrome-space--lg.sc-ds-bar-nav-h,.ds-chrome-space--lg.sc-ds-bar-nav{--ds-chrome-padding:var(--dimension-space-200);--ds-chrome-gap:var(--dimension-space-200)}.ds-chrome-row.sc-ds-bar-nav-h,.ds-chrome-row.sc-ds-bar-nav,.ds-chrome-column.sc-ds-bar-nav-h,.ds-chrome-column.sc-ds-bar-nav,.ds-chrome-grid.sc-ds-bar-nav-h,.ds-chrome-grid.sc-ds-bar-nav{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-bar-nav-h,.ds-chrome-row.sc-ds-bar-nav{flex-direction:row;align-items:center}.ds-chrome-column.sc-ds-bar-nav-h,.ds-chrome-column.sc-ds-bar-nav{flex-direction:column}.ds-chrome-grid.sc-ds-bar-nav-h,.ds-chrome-grid.sc-ds-bar-nav{display:grid;align-items:center}@media (forced-colors: active){.sc-ds-bar-nav:root,.sc-ds-bar-nav-h,.ds-forced-colors-scope.sc-ds-bar-nav{--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-bar-nav-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-bar-nav-h,.ds-focus-ring.sc-ds-bar-nav,.ds-focus-ring-inset.sc-ds-bar-nav-h,.ds-focus-ring-inset.sc-ds-bar-nav{outline:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.ds-focus-ring.sc-ds-bar-nav-h:focus-visible,.ds-focus-ring.sc-ds-bar-nav: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-bar-nav-h,.ds-focus-ring.ds-focus-ring--visible.sc-ds-bar-nav{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-bar-nav-h:focus-visible,.ds-focus-ring-inset.sc-ds-bar-nav:focus-visible{outline:none}.ds-focus-ring-inset.sc-ds-bar-nav-h:focus-visible::after,.ds-focus-ring-inset.sc-ds-bar-nav: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-bar-nav-h,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-bar-nav{outline:none}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-bar-nav-h::after,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-bar-nav::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-bar-nav-h{--ds-focus-ring-color:var(--ds-forced-color-selected)}}@media (forced-colors: active){.sc-ds-bar-nav:root,.sc-ds-bar-nav-h,.ds-forced-colors-scope.sc-ds-bar-nav{--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-bar-nav-h,.ds-control-inactive.sc-ds-bar-nav{opacity:var(--effect-opacity-medium);pointer-events:none;cursor:not-allowed}@media (forced-colors: active){.ds-control-inactive.sc-ds-bar-nav-h,.ds-control-inactive.sc-ds-bar-nav{color:var(--ds-forced-color-disabled);opacity:1}}@media (forced-colors: active){.sc-ds-bar-nav:root,.sc-ds-bar-nav-h,.ds-forced-colors-scope.sc-ds-bar-nav{--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-bar-nav-h,.ds-interaction-fill.sc-ds-bar-nav{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-bar-nav-h::before,.ds-interaction-fill.sc-ds-bar-nav::before,.ds-interaction-fill.sc-ds-bar-nav-h::after,.ds-interaction-fill.sc-ds-bar-nav::after{content:'';position:absolute;inset:0;border-radius:inherit;background:transparent;pointer-events:none;cursor:inherit;transition:none}.ds-interaction-fill.sc-ds-bar-nav-h::before,.ds-interaction-fill.sc-ds-bar-nav::before{z-index:1}.ds-interaction-fill.sc-ds-bar-nav-h::after,.ds-interaction-fill.sc-ds-bar-nav::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-bar-nav-h,.ds-interaction-fill--bordered.sc-ds-bar-nav{--ds-interaction-border-width:var(--dimension-stroke-width-012);--ds-interaction-border-color:var(--color-border-secondary)}.ds-interaction-fill--selected.sc-ds-bar-nav-h::before,.ds-interaction-fill--selected.sc-ds-bar-nav::before{background:var(--ds-interaction-active)}.ds-interaction-fill--selected.sc-ds-bar-nav-h,.ds-interaction-fill--selected.sc-ds-bar-nav{--ds-interaction-dot-ring:var(--ds-interaction-active)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill.sc-ds-bar-nav-h:hover:not(:disabled)::after,.ds-interaction-fill.sc-ds-bar-nav:hover:not(:disabled)::after{background:var(--ds-interaction-hover)}}.ds-interaction-fill.sc-ds-bar-nav-h:active:not(:disabled)::after,.ds-interaction-fill.sc-ds-bar-nav:active:not(:disabled)::after{background:var(--ds-interaction-pressed)}.ds-interaction-fill--grouped.sc-ds-bar-nav-h::after,.ds-interaction-fill--grouped.sc-ds-bar-nav::after,.ds-interaction-fill--grouped.sc-ds-bar-nav-h:active:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-bar-nav:active:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill--grouped.sc-ds-bar-nav-h:hover:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-bar-nav:hover:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}}.ds-interaction-fill--grouped.sc-ds-bar-nav-h,.ds-interaction-fill--grouped.sc-ds-bar-nav{--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-bar-nav-h>.ds-interaction-fill__content.sc-ds-bar-nav,.ds-interaction-fill.sc-ds-bar-nav>.ds-interaction-fill__content.sc-ds-bar-nav,.ds-interaction-fill__content.sc-ds-bar-nav{position:relative;z-index:2;cursor:inherit}.ds-interaction-fill--on-faint.sc-ds-bar-nav-h,.ds-interaction-fill--on-faint.sc-ds-bar-nav{--ds-interaction-active:var(--color-interaction-active)}.ds-interaction-fill--on-medium.sc-ds-bar-nav-h,.ds-interaction-fill--on-medium.sc-ds-bar-nav{--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-bar-nav-h,.ds-interaction-fill--on-bold.sc-ds-bar-nav{--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-bar-nav-h,.ds-interaction-fill--on-strong.sc-ds-bar-nav{--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-bar-nav-h,.ds-interaction-fill--on-translucent.sc-ds-bar-nav{--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-bar-nav-h,.ds-interaction-fill--on-inverted.sc-ds-bar-nav{--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-bar-nav-h,.ds-interaction-fill--on-media.sc-ds-bar-nav{--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-bar-nav-h,.ds-interaction-fill--on-always-dark.sc-ds-bar-nav{--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-bar-nav-h,.ds-interaction-fill--on-chrome.sc-ds-bar-nav{--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-bar-nav-h,.ds-interaction-fill--on-navigation.sc-ds-bar-nav{--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-bar-nav-h:not(:disabled)::after,.ds-interaction-fill.ds-interaction-fill--surface-open.sc-ds-bar-nav:not(:disabled)::after{background:var(--ds-interaction-pressed)}@media (forced-colors: active){.ds-interaction-fill.sc-ds-bar-nav-h::after,.ds-interaction-fill.sc-ds-bar-nav::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-bar-nav-h:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after,.ds-interaction-fill--surface-open.sc-ds-bar-nav: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-bar-nav-h::before,.ds-interaction-fill--selected.sc-ds-bar-nav::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-bar-nav-h:hover:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after,.ds-interaction-fill.sc-ds-bar-nav: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)}}.sc-ds-bar-nav-h{display:block}.bar-nav.sc-ds-bar-nav{position:relative;height:var(--dimension-size-600);border-bottom:var(--dimension-stroke-width-012) solid var(--_bar-nav-border);background-color:var(--_bar-nav-bg);color:var(--_bar-nav-fg-primary);-webkit-user-select:none;user-select:none;overflow:hidden;transition:background-color var(--effect-motion-short-3), border-color var(--effect-motion-short-3), color var(--effect-motion-short-3);isolation:isolate;--_bar-nav-bg:var(--color-chrome-background-theme);--_bar-nav-border:var(--color-chrome-border-tertiary);--_bar-nav-fg-primary:var(--color-chrome-foreground-primary);--_bar-nav-fg-secondary:var(--color-chrome-foreground-secondary);--_bar-nav-hover:var(--color-chrome-interaction-hover);--_bar-nav-pressed:var(--color-chrome-interaction-pressed);--_bar-nav-focus:var(--color-chrome-interaction-focus);--_bar-nav-dot:var(--color-chrome-foreground-theme);--ds-interaction-hover:var(--_bar-nav-hover);--ds-interaction-pressed:var(--_bar-nav-pressed);--ds-focus-ring-color:var(--_bar-nav-focus)}.bar-nav--dashboard.sc-ds-bar-nav,.bar-nav--settings.sc-ds-bar-nav{--_bar-nav-bg:var(--color-chrome-background-theme);--_bar-nav-border:var(--color-chrome-border-tertiary);--_bar-nav-fg-primary:var(--color-chrome-foreground-primary);--_bar-nav-fg-secondary:var(--color-chrome-foreground-secondary);--_bar-nav-hover:var(--color-chrome-interaction-hover);--_bar-nav-pressed:var(--color-chrome-interaction-pressed);--_bar-nav-focus:var(--color-chrome-interaction-focus);--_bar-nav-dot:var(--color-chrome-foreground-theme);--ds-interaction-hover:var(--_bar-nav-hover);--ds-interaction-pressed:var(--_bar-nav-pressed);--ds-focus-ring-color:var(--_bar-nav-focus)}ds-shell-app.sc-ds-bar-nav-h .bar-nav.sc-ds-bar-nav,ds-shell-app .sc-ds-bar-nav-h .bar-nav.sc-ds-bar-nav{background-color:transparent}.bar-nav.sc-ds-bar-nav>.sc-ds-bar-nav:not(.bar-nav__tabs-probe){position:relative;z-index:3}.bar-nav--tabs-collapsed.sc-ds-bar-nav{display:flex;gap:var(--dimension-space-100);align-items:center}.bar-nav__left.sc-ds-bar-nav{position:relative;flex:1 1 0%;min-width:0;width:0;display:flex;align-items:center}.bar-nav__tabs-visible.sc-ds-bar-nav{flex:1;min-width:0;width:100%}.bar-nav__tabs-probe.sc-ds-bar-nav{position:absolute;left:0;top:0;visibility:hidden;pointer-events:none;overflow:visible;width:max-content;max-width:none;z-index:-1}.bar-nav__tabs-probe.sc-ds-bar-nav>div.sc-ds-bar-nav{width:max-content}.bar-nav__tab-list.sc-ds-bar-nav{display:flex;align-items:center;gap:var(--dimension-space-050);position:relative;width:max-content}.bar-nav__tab.sc-ds-bar-nav{display:flex;align-items:center;justify-content:center;gap:var(--ds-control-gap);height:var(--ds-control-height);min-width:var(--ds-control-height);padding:0 var(--ds-control-padding-inline);box-sizing:border-box;border:none;border-radius:var(--ds-control-radius);background-color:transparent;color:var(--_bar-nav-fg-secondary);cursor:default;position:relative;flex-shrink:0;-webkit-user-select:none;user-select:none;transition:color var(--effect-motion-short-2)}.bar-nav__tab.sc-ds-bar-nav::after{content:'';position:absolute;inset:0;border-radius:var(--ds-control-radius);background:transparent;pointer-events:none;cursor:inherit}@media (hover: hover) and (pointer: fine){.bar-nav__tab.sc-ds-bar-nav:hover::after{background:var(--_bar-nav-hover)}}.bar-nav__tab.sc-ds-bar-nav:active::after{background:var(--_bar-nav-pressed)}.bar-nav__tab--selected.sc-ds-bar-nav{color:var(--_bar-nav-fg-primary)}.bar-nav__tab-label.sc-ds-bar-nav{display:inline-flex;align-items:center;white-space:nowrap}.bar-nav__tab-divider.sc-ds-bar-nav{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:var(--dimension-space-100);height:var(--ds-control-height);padding-block:var(--ds-control-padding-inline);flex-shrink:0;pointer-events:none}.bar-nav__tab-divider-line.sc-ds-bar-nav{width:var(--dimension-stroke-width-012);align-self:stretch;background-color:var(--_bar-nav-border)}.bar-nav__tabs-pending.sc-ds-bar-nav{flex:1;min-width:0;height:var(--ds-control-height);visibility:hidden;pointer-events:none}.bar-nav__overflow-trigger.sc-ds-bar-nav{margin-left:auto}ds-text.bar-nav__heading.sc-ds-bar-nav{display:inline-flex;align-items:center;height:var(--ds-control-height);padding-inline:calc(var(--ds-control-padding-inline) + var(--ds-control-label-inset));-webkit-user-select:none;user-select:none}`;const H=s(class s extends i{constructor(s){super();if(s!==false){this.__registerHost()}this.dsTabChange=r(this,"dsTabChange",7);this.navStyle="dashboard";this.tabs=[];this.value="";this.basePath="";this.currentUrl="";this.moreTabsLabel="More tabs";this.resolvedTabs=[];this.urlDerivedValue="";this.hideTabsForDetailRoute=false;this.tabsCollapsed=false;this.menuOpen=false;this.menuTriggerActive=false;this.tabLayoutCommitted=false;this.visibleTabs=[];this.overflowTabs=[];this.menuInitialFocusVisible=false;this.overflowRovingFocused=false;this.focusedTabId="";this.headerEl=null;this.triggerEl=null;this.menuEl=null;this.visibleTabListEl=null;this.probeTabListEl=null;this.resizeObserver=null;this.hasLoaded=false;this.connectionTasks=new a((()=>this.el.isConnected));this.intrinsicWidthRetryCount=0;this.tabLayoutPendingFrames=0;this.panelNavTransition=new b;this.panelToolsTransition=new b;this.overflowCoalescer=f((()=>{this.updateTabsCollapsed()}));this.chromeTransitionShell=null;this.committedSection="";this.pendingSection="";this.onChromeTransitionStart=s=>{const i=g(s);if(i==="panel-nav"){this.panelNavTransition.enter();return}if(i==="panel-tools"){const i=m(s)??"opening";if(i==="closing"){this.panelToolsTransition.enter()}}};this.onChromeTransitionEnd=s=>{const i=g(s);if(i==="panel-nav"){this.panelNavTransition.exit();if(!this.panelNavTransition.isActive){this.scheduleOverflowCheck()}return}if(i==="panel-tools"){this.panelToolsTransition.exit();this.scheduleOverflowCheck()}};this.handleOverflowFocus=()=>{this.overflowRovingFocused=true};this.handleOverflowBlur=()=>{this.overflowRovingFocused=false}}get effectiveValue(){if(this.currentUrl&&this.basePath){return this.urlDerivedValue}return this.value}get renderedSelectableTabs(){const s=this.hasOverflowTabs?this.visibleTabs:this.resolvedTabs;return o(s)}get hasOverflowTabs(){return this.tabLayoutCommitted&&this.tabsCollapsed&&this.overflowTabs.length>0}syncFocusedTabId(s,i){if(i.some((i=>i.id===s&&!i.isInactive))){this.focusedTabId=s;return}const r=i.find((s=>!s.isInactive));this.focusedTabId=r?.id??""}digestTabsConfig(s){return s.map((s=>d(s)?"|":s.id)).join(",")}resetTabOverflowLayout(){this.tabLayoutCommitted=false;this.tabsCollapsed=false;this.menuOpen=false;this.menuTriggerActive=false;this.menuInitialFocusVisible=false;this.intrinsicWidthRetryCount=0;this.tabLayoutPendingFrames=0;this.visibleTabs=[];this.overflowTabs=[]}onHostPropsChange(){this.applyHostProps()}onSelectionChange(){this.syncFocusedTabId(this.effectiveValue,this.renderedSelectableTabs);this.syncMenuSections();this.scheduleOverflowCheck()}onMenuOpenChange(s){if(this.menuEl){this.menuEl.open=s}}onTabsCollapsedChange(s,i){if(!s){this.menuOpen=false;this.menuTriggerActive=false;this.menuInitialFocusVisible=false;this.menuEl=null}this.scheduleOverflowCheck();if(s){this.connectionTasks.frame((()=>{this.scheduleOverflowCheck()}))}if(s||i===undefined||i===s)return;this.connectionTasks.frame((()=>this.scheduleOverflowCheck()));this.connectionTasks.microtask((()=>this.focusVisibleSelectedTab()))}componentWillLoad(){this.applyHostProps();this.syncFocusedTabId(this.effectiveValue,o(this.resolvedTabs))}connectedCallback(){if(this.hasLoaded)this.connectResources()}componentDidLoad(){this.hasLoaded=true;this.connectResources()}connectResources(){if(!this.el.isConnected)return;this.intrinsicWidthRetryCount=0;this.tabLayoutPendingFrames=0;this.syncHostPropsIfNeeded();this.scheduleDeferredHostPropSync();this.setupOverflowObserver();this.bindChromeTransitionListeners();this.scheduleOverflowCheck()}componentDidRender(){if(this.chromeOverflowPaused()){this.syncMenuAnchor();return}this.scheduleOverflowCheck();this.syncMenuAnchor()}disconnectedCallback(){this.connectionTasks.cancel();this.resizeObserver?.disconnect();this.resizeObserver=null;this.overflowCoalescer.cancel();this.unbindChromeTransitionListeners();this.panelNavTransition.exit();this.panelToolsTransition.exit()}bindChromeTransitionListeners(){this.unbindChromeTransitionListeners();const s=this.el.closest("ds-shell-app");if(!s)return;this.chromeTransitionShell=s;s.addEventListener(u,this.onChromeTransitionStart);s.addEventListener(p,this.onChromeTransitionEnd)}unbindChromeTransitionListeners(){if(!this.chromeTransitionShell)return;this.chromeTransitionShell.removeEventListener(u,this.onChromeTransitionStart);this.chromeTransitionShell.removeEventListener(p,this.onChromeTransitionEnd);this.chromeTransitionShell=null}chromeOverflowPaused(){return this.panelNavTransition.isActive||this.panelToolsTransition.isActive}syncHostPropsIfNeeded(){if(S(this.resolvedTabs,this.tabs)){this.applyHostProps()}else if(this.currentUrl&&this.basePath){this.syncValueFromUrl()}}scheduleDeferredHostPropSync(){let i=s.HOST_PROP_SYNC_BUDGET;const r=()=>{this.syncHostPropsIfNeeded();if(--i>0){this.connectionTasks.frame(r)}};this.connectionTasks.microtask(r)}setupOverflowObserver(){if(typeof ResizeObserver==="undefined"||!this.headerEl)return;this.resizeObserver?.disconnect();this.resizeObserver=new ResizeObserver((()=>{if(this.chromeOverflowPaused())return;this.scheduleOverflowCheck()}));this.resizeObserver.observe(this.headerEl)}scheduleOverflowCheck(){if(!this.el.isConnected||this.chromeOverflowPaused())return;this.overflowCoalescer.schedule()}getLeftZoneAvailableWidth(){if(!this.headerEl)return 0;const s=getComputedStyle(this.headerEl);const i=(parseFloat(s.paddingLeft)||0)+(parseFloat(s.paddingRight)||0);return Math.max(0,this.headerEl.clientWidth-i)}getTabsIntrinsicWidth(){return this.probeTabListEl?.scrollWidth??0}getHeaderGap(){if(!this.headerEl)return 0;const s=getComputedStyle(this.headerEl);return parseFloat(s.columnGap||s.gap)||0}getOverflowTriggerReserveWidth(){if(!this.triggerEl){return 40}return this.triggerEl.getBoundingClientRect().width+this.getHeaderGap()}getProbeTabMetrics(){const s=this.probeTabListEl;if(!s)return null;const i=Array.from(s.children);const r=i.map((s=>s.getBoundingClientRect().width));if(r.length===0||r.some((s=>s===0)))return null;const e=getComputedStyle(s);const n=parseFloat(e.columnGap||e.gap)||0;const t=r.reduce(((s,i)=>s+i),0);const a=n*Math.max(0,r.length-1);const o=Math.max(0,s.scrollWidth-t-a);return{itemWidths:r,itemGap:n,listExtraWidth:o}}setOverflowTabLayout(s,i){const r=i.length>0;const e=this.digestTabsConfig(s)!==this.digestTabsConfig(this.visibleTabs);const n=this.digestTabsConfig(i)!==this.digestTabsConfig(this.overflowTabs);if(e){this.visibleTabs=s}if(n){this.overflowTabs=i}if(r!==this.tabsCollapsed){this.tabsCollapsed=r;if(!r){this.menuOpen=false;this.menuTriggerActive=false}}this.syncFocusedTabId(this.effectiveValue,o(r?s:this.resolvedTabs))}scheduleIntrinsicWidthRetry(){if(this.intrinsicWidthRetryCount>=s.INTRINSIC_WIDTH_RETRY_MAX)return;this.intrinsicWidthRetryCount++;this.connectionTasks.frame((()=>this.scheduleOverflowCheck()))}forceTabLayoutCommit(s){this.intrinsicWidthRetryCount=0;this.tabLayoutPendingFrames=0;this.setOverflowTabLayout(s?[]:this.resolvedTabs,s?this.resolvedTabs:[]);this.tabLayoutCommitted=true}updateTabsCollapsed(){if(!this.el.isConnected||this.chromeOverflowPaused())return;if(!this.headerEl||this.resolvedTabs.length===0||this.hideTabsForDetailRoute){if(this.tabsCollapsed){this.setOverflowTabLayout([],[])}this.intrinsicWidthRetryCount=0;this.tabLayoutPendingFrames=0;this.tabLayoutCommitted=true;return}const i=this.getProbeTabMetrics();const r=this.getTabsIntrinsicWidth();if(!i||r===0){this.tabLayoutPendingFrames+=1;if(this.intrinsicWidthRetryCount>=s.INTRINSIC_WIDTH_RETRY_MAX){this.forceTabLayoutCommit(false)}else if(this.tabLayoutPendingFrames>=s.TAB_LAYOUT_COMMIT_MAX_FRAMES){this.forceTabLayoutCommit(false)}else{this.scheduleIntrinsicWidthRetry()}return}this.intrinsicWidthRetryCount=0;this.tabLayoutPendingFrames=0;const e=c(r,this.getLeftZoneAvailableWidth(),this.tabsCollapsed,s.OVERFLOW_HYSTERESIS_PX);if(!e){this.setOverflowTabLayout(this.resolvedTabs,[]);this.tabLayoutCommitted=true;return}const n=l(i.itemWidths,this.getLeftZoneAvailableWidth(),this.getOverflowTriggerReserveWidth(),i.itemGap,i.listExtraWidth);const t=h(this.resolvedTabs.slice(0,n));const a=this.resolvedTabs.slice(t.length);this.setOverflowTabLayout(t,a);this.tabLayoutCommitted=true}syncMenuAnchor(){if(!this.menuEl||!this.triggerEl||!this.hasOverflowTabs)return;this.menuEl.anchor=this.triggerEl;this.syncMenuSections()}handleMenuSelect(s){const i=s.detail;if(i?.value!==undefined){this.selectTab(String(i.value))}this.menuOpen=false;this.menuInitialFocusVisible=false}handleMenuClose(){this.menuOpen=false;this.menuInitialFocusVisible=false}handleMenuAfterClose(){if(!this.menuOpen)this.menuTriggerActive=false}incomingTabs(){return this.tabs??[]}applyHostProps(){const s=this.basePath;const i=s!==""&&this.committedSection!==""&&s!==this.committedSection;if(i){this.urlDerivedValue="";this.committedSection="";this.pendingSection=s;this.resolvedTabs=[];this.resetTabOverflowLayout();return}if(this.pendingSection){if(!s||s!==this.pendingSection){return}if(!this.currentUrl.startsWith(this.pendingSection)){return}const i=this.incomingTabs();if(i.length===0){return}this.pendingSection=""}const r=this.incomingTabs();const e=this.digestTabsConfig(r)!==this.digestTabsConfig(this.resolvedTabs);this.resolvedTabs=r;this.syncValueFromUrl();this.committedSection=s;if(e){this.resetTabOverflowLayout()}this.scheduleOverflowCheck()}syncMenuSections(){if(!this.menuEl)return;this.menuEl.sections=v(this.overflowTabs,this.effectiveValue)}syncValueFromUrl(){const s=this.incomingTabs();if(!this.currentUrl||!this.basePath){this.urlDerivedValue="";this.hideTabsForDetailRoute=false;return}if(!this.currentUrl.startsWith(this.basePath)){this.urlDerivedValue="";this.hideTabsForDetailRoute=false;return}const{value:i,hideTabs:r}=O(this.currentUrl,this.basePath,s);this.urlDerivedValue=i;this.hideTabsForDetailRoute=r}selectTab(s){this.value=s;this.dsTabChange.emit(s)}focusVisibleSelectedTab(){const s=this.visibleTabListEl?.querySelector(`[data-tab-id="${this.effectiveValue}"]`);s?.focus({preventScroll:true})}focusVisibleTab(s){this.focusedTabId=s;const i=this.visibleTabListEl?.querySelector(`[data-tab-id="${s}"]`);i?.focus({preventScroll:true})}focusLastVisibleTab(){const s=[...this.renderedSelectableTabs].reverse().find((s=>!s.isInactive));if(s)this.focusVisibleTab(s.id)}findEnabledVisibleTab(s,i){const r=this.renderedSelectableTabs;for(let e=s+i;e>=0&&e<r.length;e+=i){if(!r[e]?.isInactive)return e}return null}handleTabKeyDown(s){const i=this.renderedSelectableTabs;if(!i.length)return;const r=s.target?.getAttribute("data-tab-id");const e=r??this.focusedTabId;if(s.key==="Enter"||s.key===" "){const r=i.find((s=>s.id===e));if(!r||r.isInactive)return;s.preventDefault();this.selectTab(r.id);return}const n=i.findIndex((s=>s.id===e));if(n<0)return;let t;if(s.key==="ArrowRight"){t=this.findEnabledVisibleTab(n,1);if(t===null&&this.hasOverflowTabs){s.preventDefault();this.overflowRovingFocused=true;void this.triggerEl?.setFocus?.();return}}else if(s.key==="ArrowLeft"){t=this.findEnabledVisibleTab(n,-1)}else if(s.key==="Home"){t=i.findIndex((s=>!s.isInactive))}else if(s.key==="End"){const s=[...i].reverse().findIndex((s=>!s.isInactive));t=s<0?null:i.length-1-s}else{return}if(t===null||t<0||t===n)return;s.preventDefault();this.focusVisibleTab(i[t].id)}toggleTabMenu(s){if(this.menuOpen){this.menuOpen=false;this.menuInitialFocusVisible=false;return}if(this.menuEl&&this.triggerEl){this.menuEl.anchor=this.triggerEl;this.menuEl.minWidth="";this.syncMenuSections()}this.menuInitialFocusVisible=s?.focusVisible??false;this.menuTriggerActive=true;this.menuOpen=true}handleTriggerKeyDown(s){if(!this.hasOverflowTabs)return;if(!this.menuOpen){if(s.key==="ArrowLeft"){s.preventDefault();this.overflowRovingFocused=false;this.focusLastVisibleTab();return}if(s.key==="Enter"||s.key===" "){s.preventDefault();this.toggleTabMenu({focusVisible:true})}return}if(s.key==="Escape"){s.preventDefault();this.menuOpen=false;this.menuInitialFocusVisible=false;void this.triggerEl?.setFocus?.()}}renderTabList(s,i){return e("div",{role:"tablist",class:"bar-nav__tab-list","aria-label":this.heading,ref:s=>{if(i){const i=s??null;if(i===this.probeTabListEl)return;this.probeTabListEl=i;if(i){this.intrinsicWidthRetryCount=0;this.tabLayoutPendingFrames=0;this.scheduleOverflowCheck()}}else{this.visibleTabListEl=s??null}},onKeyDown:i?undefined:s=>this.handleTabKeyDown(s),onFocusin:i?undefined:()=>{this.overflowRovingFocused=false}},s.map(((s,r)=>{if(d(s)){return e("div",{class:"bar-nav__tab-divider",key:`divider-${r}`,"aria-hidden":"true"},e("div",{class:"bar-nav__tab-divider-line"}))}const n=s.id===this.effectiveValue;return e("button",{key:s.id,type:"button",role:"tab","data-tab-id":s.id,class:{"bar-nav__tab":true,"bar-nav__tab--selected":n,"ds-control--md":true,"ds-focus-ring-inset":true,"ds-interaction-fill--on-chrome":true,"ds-control-inactive":!!s.isInactive},"aria-selected":n?"true":"false","aria-disabled":s.isInactive?"true":undefined,"aria-controls":s.panelId??undefined,disabled:s.isInactive,tabIndex:!i&&!this.overflowRovingFocused&&s.id===this.focusedTabId?0:-1,onClick:()=>!i&&!s.isInactive&&this.selectTab(s.id),onFocus:()=>{if(!i)this.focusedTabId=s.id}},e("span",{class:{"bar-nav__tab-label":true,"ds-control-label-box":true,"ds-control-label-dot":!!s.dot,"bar-nav__tab-label--dot":!!s.dot}},e("ds-text",{as:"span",variant:"text-body-medium",emphasis:n,color:"inherit"},s.label),s.dot&&e("ds-badge",{class:"bar-nav__tab-dot ds-control-label-dot__badge",variant:"dot",hasRing:false,label:"","aria-hidden":"true",style:{"--_badge-bg":"var(--_bar-nav-dot)"}})))})))}render(){const s=this.basePath===""||this.committedSection===this.basePath;const i=s&&this.resolvedTabs.length>0&&!this.hideTabsForDetailRoute;const r=this.basePath||"no-section";const t=this.hasOverflowTabs?this.visibleTabs:this.resolvedTabs;return e(n,{key:"74929fece7904c01c14f418feffb600a52669abb"},e("header",{key:"6edd57b3105dce540d1abdb25781d8c944faf352",class:{"bar-nav":true,"ds-control--md":true,"ds-chrome-row":true,"ds-chrome-space--md":true,"ds-interaction-fill--on-chrome":true,"bar-nav--dashboard":this.navStyle==="dashboard","bar-nav--settings":this.navStyle==="settings","bar-nav--tabs-collapsed":i&&this.hasOverflowTabs},ref:s=>{this.headerEl=s;if(s&&!this.resizeObserver){this.setupOverflowObserver()}}},i&&e("div",{key:"710be6326954e3e143b12806b7cce5dffb250e3f",class:"bar-nav__tabs-probe","aria-hidden":"true",inert:true},e("div",{key:`probe-${r}`},this.renderTabList(this.resolvedTabs,true))),i&&this.tabLayoutCommitted&&t.length>0&&e("div",{key:"370ff89bb0a9bd83a5c34abf37290de925af7228",class:"bar-nav__left"},e("div",{key:`visible-${r}`,class:"bar-nav__tabs-visible"},this.renderTabList(t,false))),i&&!this.tabLayoutCommitted&&e("div",{key:"f938d6889ee9be08fd0b9f64d377391852942acc",class:"bar-nav__tabs-pending","aria-hidden":"true"}),!i&&this.heading&&e("ds-text",{key:"00eeeb19762b51414cdcb1b8ae72b2c23d60630b",class:"bar-nav__heading",lineTruncation:1,as:"span",variant:"text-body-medium",emphasis:true,color:"inherit",wrap:"nowrap"},this.heading),i&&this.hasOverflowTabs&&e("ds-button-unfilled",{key:"eb013c65991698a44365e6dfbdbff08431d2f482",variant:"icon",class:{"bar-nav__overflow-trigger":true},icon:"ChevronDown",activeFill:false,hasBorder:false,background:"chrome",focusTabIndex:this.overflowRovingFocused?0:-1,ref:s=>{this.triggerEl=s??null},haspopup:"menu",expanded:this.menuOpen,surfaceOpen:this.menuTriggerActive,"aria-label":this.moreTabsLabel,onDsClick:()=>this.toggleTabMenu({focusVisible:false}),onFocusin:this.handleOverflowFocus,onFocusout:this.handleOverflowBlur,onKeyDown:s=>this.handleTriggerKeyDown(s)})),i&&this.hasOverflowTabs&&e("ds-menu",{key:"e5ba4053cdfe8ef88b08019bf6339a430a535204",ref:s=>{this.menuEl=s??null},open:this.menuOpen,sections:v(this.overflowTabs,this.effectiveValue),side:"bottom",align:"end",sideOffset:"calc(var(--dimension-space-100) + var(--dimension-space-050))",initialFocusVisible:this.menuInitialFocusVisible,onDsSelect:s=>this.handleMenuSelect(s),onDsClose:()=>this.handleMenuClose(),onDsAfterClose:()=>this.handleMenuAfterClose()}))}get el(){return this}static get watchers(){return{tabs:[{onHostPropsChange:0}],currentUrl:[{onHostPropsChange:0}],basePath:[{onHostPropsChange:0}],value:[{onSelectionChange:0}],urlDerivedValue:[{onSelectionChange:0}],menuOpen:[{onMenuOpenChange:0}],tabsCollapsed:[{onTabsCollapsedChange:0}]}}static get style(){return j()}},[2,"ds-bar-nav",{navStyle:[513,"nav-style"],tabs:[16],value:[1025],heading:[1],basePath:[1,"base-path"],currentUrl:[1,"current-url"],moreTabsLabel:[1,"more-tabs-label"],resolvedTabs:[32],urlDerivedValue:[32],hideTabsForDetailRoute:[32],tabsCollapsed:[32],menuOpen:[32],menuTriggerActive:[32],tabLayoutCommitted:[32],visibleTabs:[32],overflowTabs:[32],menuInitialFocusVisible:[32],overflowRovingFocused:[32],focusedTabId:[32],committedSection:[32],pendingSection:[32]},undefined,{tabs:[{onHostPropsChange:0}],currentUrl:[{onHostPropsChange:0}],basePath:[{onHostPropsChange:0}],value:[{onSelectionChange:0}],urlDerivedValue:[{onSelectionChange:0}],menuOpen:[{onMenuOpenChange:0}],tabsCollapsed:[{onTabsCollapsedChange:0}]}]);H.HOST_PROP_SYNC_BUDGET=8;H.INTRINSIC_WIDTH_RETRY_MAX=3;H.TAB_LAYOUT_COMMIT_MAX_FRAMES=16;H.OVERFLOW_HYSTERESIS_PX=8;function P(){if(typeof customElements==="undefined"){return}const s=["ds-bar-nav","ds-badge","ds-button-unfilled","ds-icon","ds-loader","ds-menu","ds-swatch-picker","ds-switch","ds-tag","ds-text","ds-tooltip"];s.forEach((s=>{switch(s){case"ds-bar-nav":if(!customElements.get(t(s))){customElements.define(t(s),H)}break;case"ds-badge":if(!customElements.get(t(s))){w()}break;case"ds-button-unfilled":if(!customElements.get(t(s))){_()}break;case"ds-icon":if(!customElements.get(t(s))){y()}break;case"ds-loader":if(!customElements.get(t(s))){k()}break;case"ds-menu":if(!customElements.get(t(s))){x()}break;case"ds-swatch-picker":if(!customElements.get(t(s))){T()}break;case"ds-switch":if(!customElements.get(t(s))){C()}break;case"ds-tag":if(!customElements.get(t(s))){z()}break;case"ds-text":if(!customElements.get(t(s))){D()}break;case"ds-tooltip":if(!customElements.get(t(s))){E()}break}}))}P();export{H as B,P as d};
|
|
2
|
+
//# sourceMappingURL=p-DdFeWC-e.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{i as e}from"./p-DuCfCvPs.js";const n="direction:asc";const t="direction:desc";const i="field:";function r(n){const t=[];const i=new Set;for(const r of n){if(e(r)||!r.sortable)continue;const n=r.segments?.filter((e=>e.sortKey.trim()))??[];if(n.length>0){for(const e of n){if(i.has(e.sortKey))continue;i.add(e.sortKey);t.push({id:e.sortKey,label:e.dataLabel?.trim()||e.label.trim()||e.sortKey})}continue}if(i.has(r.id))continue;i.add(r.id);t.push({id:r.id,label:r.dataLabel?.trim()||r.label.trim()||r.accessibleLabel?.trim()||r.id})}return t}function c(e,c){const o=r(e);return[{header:"Data",items:o.map((e=>({label:e.label,value:`${i}${encodeURIComponent(e.id)}`,isSelected:c?.fieldId===e.id})))},{header:"Order",items:[{label:"Ascending",value:n,icon:"ArrowUp",isSelected:c?.direction==="asc"},{label:"Descending",value:t,icon:"ArrowDown",isSelected:c?.direction==="desc"}]}]}function o(e,n){if(e===n)return true;if(!e||!n)return false;return e.fieldId===n.fieldId&&e.direction===n.direction}function s(e,c,o){const s=r(e);if(s.length===0)return c??null;if(o.value===n||o.value===t){const e=o.value===n?"asc":"desc";const t=s.some((e=>e.id===c?.fieldId))?c.fieldId:s[0].id;return{fieldId:t,direction:e}}if(!o.value?.startsWith(i))return c??null;let l;try{l=decodeURIComponent(o.value.slice(i.length))}catch{return c??null}if(!s.some((e=>e.id===l)))return c??null;if(c?.fieldId===l)return c??null;return{fieldId:l,direction:c?.direction??"asc"}}export{r as a,o as b,c as d,s as n};
|
|
2
|
+
//# sourceMappingURL=p-DlCLfwP4.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{r as n,t,a as e,c as r}from"./p-HMDczkQf.js";const o={minVisible:1};let s=0;function c(){s+=1;return`ds-table-column-customizer-${s}`}function i(n){return n.kind==="action"}function u(n){return n.label.trim()||n.accessibleLabel?.trim()||n.id}function a(n){return n.filter((n=>!i(n)))}function f(n){return typeof n.size==="string"||typeof n.size==="number"&&Number.isFinite(n.size)&&n.size>0||Boolean(n.imageTracks)}function l(n){return a(n).filter((n=>!n.sticky&&f(n)))}function d(n,t,e){const r=new Set(l(n).map((n=>n.id)));const o=new Set((t??[]).filter((n=>r.has(n))));return m(n,e).filter((n=>o.has(n)))}function b(n,t,e){const r=m(n,t);const o=new Map(n.map((n=>[n.id,n])));const s=new Set(d(n,e,r));return[...r.filter((n=>o.get(n)?.sticky==="start")),...r.filter((n=>s.has(n))),...r.filter((n=>!s.has(n)&&!o.get(n)?.sticky)),...r.filter((n=>o.get(n)?.sticky==="end"))]}function m(t,e){return n(a(t).map((n=>n.id)),e)}function w(n,t){return e(a(n).map((n=>n.id)),t,o)}function p(n,t={}){if(!t.columnCustomizer)return n;const e=new Map(n.map((n=>[n.id,n])));const r=new Set(w(n,t.hiddenFieldIds));const o=new Set(d(n,t.pinnedFieldIds,t.fieldOrder));const s=b(n,t.fieldOrder,t.pinnedFieldIds).map((n=>e.get(n))).filter((n=>!!n&&!r.has(n.id)));return[...s.map((n=>o.has(n.id)&&!n.sticky?{...n,sticky:"start"}:n)),...n.filter(i)]}function S(n,t,e){const s=n.find((n=>n.id===e));if(!s||i(s))return false;return r(a(n).map((n=>n.id)),t,e,o)}function h(n,e,r){const s=n.find((n=>n.id===r));if(!s||i(s)){return w(n,e)}return t(a(n).map((n=>n.id)),e,r,o)}function v(n,t,e,r=[]){const o=new Map(n.map((n=>[n.id,n])));const s=w(n,t);const c=new Set(s);const i=new Set(d(n,r,e));const a=b(n,e,r);const l=a.filter((n=>i.has(n))).length;const m=a.filter((n=>!i.has(n))).length;const p=a.flatMap((t=>{const e=o.get(t);if(!e)return[];const r=i.has(t);const a=!e.sticky&&f(e);return[{column:e,label:u(e),visible:!c.has(t),hideable:S(n,s,t),reorderable:!e.sticky&&(r?l>1:m>1),pinned:r,pinnable:a}]}));return p}function y(n,t,e,r=[]){return v(n,t,e,r).map((n=>({label:n.label,value:n.column.id,reorderable:n.reorderable,reorderHandleInactive:n.pinned&&!n.reorderable,trailingActions:[{id:"visibility",icon:n.visible?"EyeStrikethrough":"Eye",label:n.visible?`Hide ${n.label}`:`Show ${n.label}`,isInactive:!n.hideable},...n.pinnable?[{id:"pin",icon:n.pinned?"Cross":"Pin",label:n.pinned?`Unpin ${n.label}`:`Pin ${n.label}`}]:[]]})))}function M(n,t,e,r=[]){const o=y(n,t,e,r);const s=new Set(d(n,r,e));const c=o.filter((n=>n.value&&s.has(n.value)));const i=o.filter((n=>!n.value||!s.has(n.value)));if(!c.length)return[{header:"Columns",items:i}];return[{header:"Columns",subheader:"Pinned columns",items:c},...i.length?[{subheader:"Other columns",insetDividerBefore:true,items:i}]:[]]}function $(n,t,e,r){const o=b(n,e,r);return{hiddenFieldIds:w(n,t),fieldOrder:o,pinnedFieldIds:d(n,r,o)}}function I(n,t,e,r,o){const s=l(n).some((n=>n.id===o));const c=$(n,t,e,r);if(!s)return c;const i=new Set(c.pinnedFieldIds);if(i.has(o))i.delete(o);else i.add(o);return $(n,c.hiddenFieldIds,c.fieldOrder,[...i])}function g(t,e,r,o,s){const c=$(t,e,r,o);const i=new Set(c.pinnedFieldIds);const u=new Map(t.map((n=>[n.id,n])));const a=c.fieldOrder.filter((n=>u.get(n)?.sticky==="start"));const f=c.fieldOrder.filter((n=>u.get(n)?.sticky==="end"));const l=c.fieldOrder.filter((n=>i.has(n)));const d=c.fieldOrder.filter((n=>!i.has(n)&&!u.get(n)?.sticky));const b=s.some((n=>i.has(n)));const m=b?n(l,s):l;const w=b?d:n(d,s);return $(t,c.hiddenFieldIds,[...a,...m,...w,...f],c.pinnedFieldIds)}export{u as a,M as b,$ as c,h as d,I as e,p as f,i,c as n,g as r,a as t};
|
|
2
|
+
//# sourceMappingURL=p-DuCfCvPs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TABLE_COLUMN_CUSTOMIZER","minVisible","columnCustomizerSeq","nextTableColumnCustomizerElementId","isTableActionColumn","column","kind","tableColumnCustomizerLabel","label","trim","accessibleLabel","id","tableDataColumns","columns","filter","hasResolvedTableColumnSize","size","Number","isFinite","Boolean","imageTracks","tablePinnableColumns","sticky","resolveTablePinnedFieldIds","pinnedFieldIds","fieldOrder","pinnable","Set","map","requested","has","resolveTableColumnOrder","resolveTableConfiguredColumnOrder","base","byId","Map","pinned","get","resolveListOrder","resolveTableHiddenColumnIds","hiddenFieldIds","resolveListHiddenIds","resolveTableVisibleColumns","options","columnCustomizer","hidden","visibleData","canToggleTableColumnHidden","fieldId","find","candidate","canToggleListHidden","toggleTableColumnHidden","toggleListHidden","tableColumnCustomizerItems","resolvedHidden","configuredOrder","pinnedCount","length","unpinnedCount","dataItems","flatMap","isPinned","visible","hideable","reorderable","tableColumnCustomizerMenuItems","item","value","reorderHandleInactive","trailingActions","icon","isInactive","tableColumnCustomizerSections","items","pinnedIds","unpinned","header","subheader","insetDividerBefore","resolveTableFieldsConfiguration","order","toggleTableColumnPinned","some","current","delete","add","reorderTableColumnPartition","reorderedIds","fixedStart","fixedEnd","pinnedOrder","unpinnedOrder","reordersPinned","nextPinned","nextUnpinned"],"sources":["src/wc/components/Table/table-column-customizer.ts"],"sourcesContent":["import type { MenuItemData, MenuItemsSection } from '../Menu/menu-types';\nimport {\n canToggleListHidden,\n moveListOrder,\n moveListOrderBy,\n resolveListHiddenIds,\n resolveListOrder,\n toggleListHidden,\n type ListCustomizerOptions,\n} from '../../utils/list-customizer';\nimport type { TableColumn } from './table-types';\n\n/**\n * Table's customizer policy: the last visible data column cannot be hidden, and\n * rows reorder. Everything below is a thin adapter over the domain-neutral\n * helpers in utils/list-customizer so other catalogs can reuse the same state\n * machine with different policy.\n */\nconst TABLE_COLUMN_CUSTOMIZER: ListCustomizerOptions = { minVisible: 1, reorderable: true };\n\nlet columnCustomizerSeq = 0;\n\nexport function nextTableColumnCustomizerElementId(): string {\n columnCustomizerSeq += 1;\n return `ds-table-column-customizer-${columnCustomizerSeq}`;\n}\n\nexport function isTableActionColumn(column: TableColumn): boolean {\n return column.kind === 'action';\n}\n\nexport function tableColumnCustomizerLabel(column: TableColumn): string {\n return column.label.trim() || column.accessibleLabel?.trim() || column.id;\n}\n\nexport function tableDataColumns(columns: TableColumn[]): TableColumn[] {\n return columns.filter(column => !isTableActionColumn(column));\n}\n\nfunction hasResolvedTableColumnSize(column: TableColumn): boolean {\n return (\n typeof column.size === 'string' ||\n (typeof column.size === 'number' && Number.isFinite(column.size) && column.size > 0) ||\n Boolean(column.imageTracks)\n );\n}\n\nfunction tablePinnableColumns(columns: TableColumn[]): TableColumn[] {\n return tableDataColumns(columns).filter(\n column => !column.sticky && hasResolvedTableColumnSize(column)\n );\n}\n\n/** User-managed pinned ids. Fixed start/end columns remain column-owned. */\nexport function resolveTablePinnedFieldIds(\n columns: TableColumn[],\n pinnedFieldIds: string[] | undefined,\n fieldOrder?: string[]\n): string[] {\n const pinnable = new Set(tablePinnableColumns(columns).map(column => column.id));\n const requested = new Set((pinnedFieldIds ?? []).filter(id => pinnable.has(id)));\n return resolveTableColumnOrder(columns, fieldOrder).filter(id => requested.has(id));\n}\n\n/** Fixed-start, user-pinned, unpinned, then fixed-end data columns. */\nexport function resolveTableConfiguredColumnOrder(\n columns: TableColumn[],\n fieldOrder: string[] | undefined,\n pinnedFieldIds: string[] | undefined\n): string[] {\n const base = resolveTableColumnOrder(columns, fieldOrder);\n const byId = new Map(columns.map(column => [column.id, column]));\n const pinned = new Set(resolveTablePinnedFieldIds(columns, pinnedFieldIds, base));\n return [\n ...base.filter(id => byId.get(id)?.sticky === 'start'),\n ...base.filter(id => pinned.has(id)),\n ...base.filter(id => !pinned.has(id) && !byId.get(id)?.sticky),\n ...base.filter(id => byId.get(id)?.sticky === 'end'),\n ];\n}\n\n/** Data-column ids in display order. Unknown, duplicate, and action ids are ignored. */\nexport function resolveTableColumnOrder(\n columns: TableColumn[],\n fieldOrder: string[] | undefined\n): string[] {\n return resolveListOrder(\n tableDataColumns(columns).map(column => column.id),\n fieldOrder\n );\n}\n\n/**\n * Hidden data-column ids. Action and unknown ids are dropped. At least one data\n * column remains visible when the catalog has any data columns.\n */\nexport function resolveTableHiddenColumnIds(\n columns: TableColumn[],\n hiddenFieldIds: string[] | undefined\n): string[] {\n return resolveListHiddenIds(\n tableDataColumns(columns).map(column => column.id),\n hiddenFieldIds,\n TABLE_COLUMN_CUSTOMIZER\n );\n}\n\nexport function resolveTableVisibleColumns(\n columns: TableColumn[],\n options: {\n columnCustomizer?: boolean;\n hiddenFieldIds?: string[];\n fieldOrder?: string[];\n pinnedFieldIds?: string[];\n } = {}\n): TableColumn[] {\n if (!options.columnCustomizer) return columns;\n\n const byId = new Map(columns.map(column => [column.id, column]));\n const hidden = new Set(resolveTableHiddenColumnIds(columns, options.hiddenFieldIds));\n const pinned = new Set(\n resolveTablePinnedFieldIds(columns, options.pinnedFieldIds, options.fieldOrder)\n );\n const visibleData = resolveTableConfiguredColumnOrder(\n columns,\n options.fieldOrder,\n options.pinnedFieldIds\n )\n .map(id => byId.get(id))\n .filter((column): column is TableColumn => !!column && !hidden.has(column.id));\n\n return [\n ...visibleData.map(column =>\n pinned.has(column.id) && !column.sticky ? { ...column, sticky: 'start' as const } : column\n ),\n ...columns.filter(isTableActionColumn),\n ];\n}\n\nexport function canToggleTableColumnHidden(\n columns: TableColumn[],\n hiddenFieldIds: string[] | undefined,\n fieldId: string\n): boolean {\n const column = columns.find(candidate => candidate.id === fieldId);\n if (!column || isTableActionColumn(column)) return false;\n\n return canToggleListHidden(\n tableDataColumns(columns).map(candidate => candidate.id),\n hiddenFieldIds,\n fieldId,\n TABLE_COLUMN_CUSTOMIZER\n );\n}\n\nexport function toggleTableColumnHidden(\n columns: TableColumn[],\n hiddenFieldIds: string[] | undefined,\n fieldId: string\n): string[] {\n const column = columns.find(candidate => candidate.id === fieldId);\n if (!column || isTableActionColumn(column)) {\n return resolveTableHiddenColumnIds(columns, hiddenFieldIds);\n }\n\n return toggleListHidden(\n tableDataColumns(columns).map(candidate => candidate.id),\n hiddenFieldIds,\n fieldId,\n TABLE_COLUMN_CUSTOMIZER\n );\n}\n\nexport function moveTableColumnOrder(order: string[], fromId: string, toId: string): string[] {\n return moveListOrder(order, fromId, toId);\n}\n\nexport function moveTableColumnInOrder(order: string[], fieldId: string, offset: number): string[] {\n return moveListOrderBy(order, fieldId, offset);\n}\n\nexport interface TableColumnCustomizerItem {\n column: TableColumn;\n label: string;\n visible: boolean;\n hideable: boolean;\n reorderable: boolean;\n pinned: boolean;\n pinnable: boolean;\n}\n\nexport function tableColumnCustomizerItems(\n columns: TableColumn[],\n hiddenFieldIds: string[] | undefined,\n fieldOrder: string[] | undefined,\n pinnedFieldIds: string[] | undefined = []\n): TableColumnCustomizerItem[] {\n const byId = new Map(columns.map(column => [column.id, column]));\n const resolvedHidden = resolveTableHiddenColumnIds(columns, hiddenFieldIds);\n const hidden = new Set(resolvedHidden);\n const pinned = new Set(resolveTablePinnedFieldIds(columns, pinnedFieldIds, fieldOrder));\n const configuredOrder = resolveTableConfiguredColumnOrder(columns, fieldOrder, pinnedFieldIds);\n const pinnedCount = configuredOrder.filter(id => pinned.has(id)).length;\n const unpinnedCount = configuredOrder.filter(id => !pinned.has(id)).length;\n const dataItems = configuredOrder.flatMap(id => {\n const column = byId.get(id);\n if (!column) return [];\n const isPinned = pinned.has(id);\n const pinnable = !column.sticky && hasResolvedTableColumnSize(column);\n return [\n {\n column,\n label: tableColumnCustomizerLabel(column),\n visible: !hidden.has(id),\n hideable: canToggleTableColumnHidden(columns, resolvedHidden, id),\n reorderable: !column.sticky && (isPinned ? pinnedCount > 1 : unpinnedCount > 1),\n pinned: isPinned,\n pinnable,\n },\n ];\n });\n return dataItems;\n}\n\n/** Menu action rows for the table-owned column customizer. */\nexport function tableColumnCustomizerMenuItems(\n columns: TableColumn[],\n hiddenFieldIds: string[] | undefined,\n fieldOrder: string[] | undefined,\n pinnedFieldIds: string[] | undefined = []\n): MenuItemData[] {\n return tableColumnCustomizerItems(columns, hiddenFieldIds, fieldOrder, pinnedFieldIds).map(\n item => ({\n label: item.label,\n value: item.column.id,\n reorderable: item.reorderable,\n reorderHandleInactive: item.pinned && !item.reorderable,\n trailingActions: [\n {\n id: 'visibility',\n icon: item.visible ? 'EyeStrikethrough' : 'Eye',\n label: item.visible ? `Hide ${item.label}` : `Show ${item.label}`,\n isInactive: !item.hideable,\n },\n ...(item.pinnable\n ? [\n {\n id: 'pin',\n icon: item.pinned ? 'Cross' : 'Pin',\n label: item.pinned ? `Unpin ${item.label}` : `Pin ${item.label}`,\n },\n ]\n : []),\n ],\n })\n );\n}\n\n/** Column subgroups retain one parent heading while enforcing drag boundaries. */\nexport function tableColumnCustomizerSections(\n columns: TableColumn[],\n hiddenFieldIds: string[] | undefined,\n fieldOrder: string[] | undefined,\n pinnedFieldIds: string[] | undefined = []\n): MenuItemsSection[] {\n const items = tableColumnCustomizerMenuItems(columns, hiddenFieldIds, fieldOrder, pinnedFieldIds);\n const pinnedIds = new Set(resolveTablePinnedFieldIds(columns, pinnedFieldIds, fieldOrder));\n const pinned = items.filter(item => item.value && pinnedIds.has(item.value));\n const unpinned = items.filter(item => !item.value || !pinnedIds.has(item.value));\n if (!pinned.length) return [{ header: 'Columns', items: unpinned }];\n return [\n { header: 'Columns', subheader: 'Pinned columns', items: pinned },\n ...(unpinned.length\n ? [{ subheader: 'Other columns', insetDividerBefore: true, items: unpinned }]\n : []),\n ];\n}\n\nexport interface TableFieldsConfiguration {\n hiddenFieldIds: string[];\n fieldOrder: string[];\n pinnedFieldIds: string[];\n}\n\nexport function resolveTableFieldsConfiguration(\n columns: TableColumn[],\n hiddenFieldIds: string[] | undefined,\n fieldOrder: string[] | undefined,\n pinnedFieldIds: string[] | undefined\n): TableFieldsConfiguration {\n const order = resolveTableConfiguredColumnOrder(columns, fieldOrder, pinnedFieldIds);\n return {\n hiddenFieldIds: resolveTableHiddenColumnIds(columns, hiddenFieldIds),\n fieldOrder: order,\n pinnedFieldIds: resolveTablePinnedFieldIds(columns, pinnedFieldIds, order),\n };\n}\n\n/** Pin appends to the pinned block; unpinning inserts at the start of unpinned columns. */\nexport function toggleTableColumnPinned(\n columns: TableColumn[],\n hiddenFieldIds: string[] | undefined,\n fieldOrder: string[] | undefined,\n pinnedFieldIds: string[] | undefined,\n fieldId: string\n): TableFieldsConfiguration {\n const pinnable = tablePinnableColumns(columns).some(column => column.id === fieldId);\n const current = resolveTableFieldsConfiguration(\n columns,\n hiddenFieldIds,\n fieldOrder,\n pinnedFieldIds\n );\n if (!pinnable) return current;\n\n const pinned = new Set(current.pinnedFieldIds);\n if (pinned.has(fieldId)) pinned.delete(fieldId);\n else pinned.add(fieldId);\n return resolveTableFieldsConfiguration(columns, current.hiddenFieldIds, current.fieldOrder, [\n ...pinned,\n ]);\n}\n\n/** Apply a drag result to only its pinned or unpinned partition. */\nexport function reorderTableColumnPartition(\n columns: TableColumn[],\n hiddenFieldIds: string[] | undefined,\n fieldOrder: string[] | undefined,\n pinnedFieldIds: string[] | undefined,\n reorderedIds: string[]\n): TableFieldsConfiguration {\n const current = resolveTableFieldsConfiguration(\n columns,\n hiddenFieldIds,\n fieldOrder,\n pinnedFieldIds\n );\n const pinned = new Set(current.pinnedFieldIds);\n const byId = new Map(columns.map(column => [column.id, column]));\n const fixedStart = current.fieldOrder.filter(id => byId.get(id)?.sticky === 'start');\n const fixedEnd = current.fieldOrder.filter(id => byId.get(id)?.sticky === 'end');\n const pinnedOrder = current.fieldOrder.filter(id => pinned.has(id));\n const unpinnedOrder = current.fieldOrder.filter(id => !pinned.has(id) && !byId.get(id)?.sticky);\n const reordersPinned = reorderedIds.some(id => pinned.has(id));\n const nextPinned = reordersPinned ? resolveListOrder(pinnedOrder, reorderedIds) : pinnedOrder;\n const nextUnpinned = reordersPinned\n ? unpinnedOrder\n : resolveListOrder(unpinnedOrder, reorderedIds);\n return resolveTableFieldsConfiguration(\n columns,\n current.hiddenFieldIds,\n [...fixedStart, ...nextPinned, ...nextUnpinned, ...fixedEnd],\n current.pinnedFieldIds\n );\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
function n(n,t=[]){const e=new Set(n);const o=new Set;const r=[];for(const n of t){if(!e.has(n)||o.has(n))continue;o.add(n);r.push(n)}for(const t of n){if(o.has(t))continue;r.push(t)}return r}function t(n,t=[],e={}){const o=e.minVisible??0;const r=new Set(n);const c=[...new Set(t.filter((n=>r.has(n))))];if(n.length===0)return c;const s=Math.max(n.length-o,0);if(c.length<=s)return c;const f=c.length-s;const u=new Set(c);const i=new Set;for(const t of n){if(i.size>=f)break;if(u.has(t))i.add(t)}return c.filter((n=>!i.has(n)))}function e(n,e,o,r={}){if(!n.includes(o))return false;const c=new Set(t(n,e,r));if(c.has(o))return true;const s=n.filter((n=>!c.has(n))).length;return s>(r.minVisible??0)}function o(n,o,r,c={}){const s=t(n,o,c);if(!e(n,s,r,c))return s;const f=new Set(s);if(f.has(r))f.delete(r);else f.add(r);return t(n,[...f],c)}function r(o,r,c,s={}){const f=new Map(o.map((n=>[n.id,n])));const u=o.map((n=>n.id));const i=t(u,r,s);const a=new Set(i);return n(u,c).flatMap((n=>{const t=f.get(n);if(!t)return[];return[{label:t.label,value:t.id,showSwitch:true,switchValue:!a.has(n),isInactive:!e(u,i,n,s),reorderable:s.reorderable??false}]}))}export{t as a,r as l,n as r,o as t};
|
|
2
|
-
//# sourceMappingURL=p-
|
|
1
|
+
function n(n,t=[]){const e=new Set(n);const o=new Set;const r=[];for(const n of t){if(!e.has(n)||o.has(n))continue;o.add(n);r.push(n)}for(const t of n){if(o.has(t))continue;r.push(t)}return r}function t(n,t=[],e={}){const o=e.minVisible??0;const r=new Set(n);const c=[...new Set(t.filter((n=>r.has(n))))];if(n.length===0)return c;const s=Math.max(n.length-o,0);if(c.length<=s)return c;const f=c.length-s;const u=new Set(c);const i=new Set;for(const t of n){if(i.size>=f)break;if(u.has(t))i.add(t)}return c.filter((n=>!i.has(n)))}function e(n,e,o,r={}){if(!n.includes(o))return false;const c=new Set(t(n,e,r));if(c.has(o))return true;const s=n.filter((n=>!c.has(n))).length;return s>(r.minVisible??0)}function o(n,o,r,c={}){const s=t(n,o,c);if(!e(n,s,r,c))return s;const f=new Set(s);if(f.has(r))f.delete(r);else f.add(r);return t(n,[...f],c)}function r(o,r,c,s={}){const f=new Map(o.map((n=>[n.id,n])));const u=o.map((n=>n.id));const i=t(u,r,s);const a=new Set(i);return n(u,c).flatMap((n=>{const t=f.get(n);if(!t)return[];return[{label:t.label,value:t.id,showSwitch:true,switchValue:!a.has(n),isInactive:!e(u,i,n,s),reorderable:s.reorderable??false}]}))}export{t as a,e as c,r as l,n as r,o as t};
|
|
2
|
+
//# sourceMappingURL=p-HMDczkQf.js.map
|
|
@@ -0,0 +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,d as a}from"./p-DbW8S5qe.js";import{A as c}from"./p-CwUXroLs.js";import{d as l}from"./p-CwdRaJER.js";import{d as p}from"./p-BqipGGua.js";import{d as u}from"./p-pPtjNRqC.js";import{d as h}from"./p-0XTyQNRG.js";import{d as m}from"./p-D8OWhnID.js";import{i as f,a as v,f as g,p as b,d as y}from"./p-S1Ct3FJV.js";import{D as x}from"./p-DOUk4KoT.js";import{r as w}from"./p-ioGH5SoA.js";import{r as k}from"./p-DhKvqh5G.js";import{s as z,r as C}from"./p-DGVZhrMd.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 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-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 D=0;const H="Enter a valid time.";const V="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 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=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 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 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(!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.teardownListeners();this.open=false;this.shouldRender=false;this.closing=false;this.positionReady=false;this.focused=false}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&&!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=V}else if(this.value&&this.max&&f(this.max)&&this.value>this.max){i.rangeOverflow=true;e=E}else if(this.value&&!v(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: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=this.hourFormat==="24"?t: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||!this.el.isConnected)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:"dbb1e1d24fba2ae16442cd5474ac24d61d5c2a35",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:"73d09bf0ec9f85f4cdb1706b56c55dfb7ec5528f",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:"9f6325736ebd30628714da492b898e48c0940b4f",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:"8bf7e757250fe5ca85364e6036819c7384709b9b",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:"9d96a4d7514e34841b48ee2f0df9073082dad74e",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 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],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 R(){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))){a()}break}}))}R();export{q as I,R as d};
|
|
2
|
+
//# sourceMappingURL=p-HfZ1gI2q.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","hourFormat","size","width","hasBorder","hasInteractionFill","isInactive","autoFocus","error","ariaLabel","initialValue","closeTimer","formDisabled","focused","touched","draftText","open","shouldRender","closing","positionReady","pos","x","y","position","AnchoredPositionController","getAnchor","controlEl","getPopup","el","querySelector","getOwnerDocument","ownerDocument","measure","anchor","popup","sectionInsetPx","resolveCssLengthPx","TOKEN_DEFAULTS","space050","anchorRect","getBoundingClientRect","popupWidth","offsetWidth","popupFallbackWidth","popupHeight","offsetHeight","popupFallbackHeight","side","align","sideOffsetPx","alignOffsetPx","resolveChoicePopupAlignOffset","anchorAlignment","viewportPadPx","viewportWidth","window","innerWidth","viewportHeight","innerHeight","collisionRect","resolveAnchoredOverlayBoundaryRect","apply","onReady","liveUpdate","observeResize","topLayer","interaction","AnchoredOverlayInteractionController","onOutsideActivation","closePicker","togglePicker","openPicker","handleInput","event","pickerInactive","target","parsed","parseDraft","commitIso","handleFocus","displayValue","handleBlur","handleTimeChange","stopPropagation","detail","menuWidthXs","menuFallbackHeight","formInactive","hasConstraintError","isClockTime","min","max","isClockTimeStepAligned","isInvalid","length","componentWillLoad","syncFormValue","disconnectedCallback","teardownListeners","onHourFormatChange","inactive","setFormControlValue","internals","flags","message","valueMissing","badInput","rangeUnderflow","rangeOverflow","stepMismatch","setValidity","onInteractionStateChange","formDisabledCallback","formResetCallback","formStateRestoreCallback","state","restoreStringFormState","setFocus","inputEl","focus","handleHostKeyDown","key","preventDefault","composedPath","includes","tabLeavesPopup","moveFocusAfterTab","shiftKey","formatClockTimeLabel","text","trimmed","trim","iso","parseLooseClockTime","emit","dsChange","unobserve","disconnect","clearTimeout","isConnected","connect","observe","schedule","restore","cancel","clockButton","duration","resolveMotionTimeMs","motionShort2","animationDurationShort3","finishClose","setTimeout","matches","hidePopover","render","inputId","filled","dirty","showError","Boolean","errorMessage","textVariant","CONTROL_TEXT_VARIANT","textClass","replace","describedBy","ariaDescribedby","undefined","filter","join","popupStyle","left","top","transform","Math","round","zIndex","visibility","h","Host","class","controlWidthClass","ref","element","type","id","autoComplete","spellcheck","ariaLabelledby","onInput","onFocus","onBlur","variant","icon","isInset","haspopup","expanded","surfaceOpen","controls","onDsClick","popover","style","role","onDsChange","as","color","textId"],"sources":["src/wc/components/InputTime/InputTime.css?tag=ds-input-time&encapsulation=scoped","src/wc/components/InputTime/InputTime.tsx"],"sourcesContent":["@import '../../utils/datetime-input-control.css';\n@import '../../utils/choice-popup.css';\n@import '../../utils/chrome-layout.css';\n\n.input-time-popup.ds-choice-popup {\n --ds-time-picker-padding: 0;\n padding: var(--dimension-space-050);\n}\n","import {\n AttachInternals,\n Component,\n Element,\n Prop,\n State,\n Event,\n EventEmitter,\n Listen,\n Method,\n Watch,\n h,\n Host,\n} from '@stencil/core';\nimport {\n controlWidthClass,\n CONTROL_TEXT_VARIANT,\n DEFAULT_REQUIRED_MESSAGE,\n formatClockTimeLabel,\n isClockTime,\n isClockTimeStepAligned,\n parseLooseClockTime,\n resolveChoicePopupAlignOffset,\n resolveCssLengthPx,\n resolveMotionTimeMs,\n restoreStringFormState,\n setFormControlValue,\n TOKEN_DEFAULTS,\n type ControlSize,\n type ControlWidth,\n} from '../../utils';\nimport { AnchoredPositionController } from '../../utils/anchored-position-controller';\nimport { AnchoredOverlayInteractionController } from '../../utils/anchored-overlay-interaction-controller';\nimport { resolveAnchoredOverlayBoundaryRect } from '../../utils/anchored-overlay-boundary';\n\nexport type InputTimeSize = ControlSize;\nexport type InputTimeWidth = ControlWidth;\n\nlet idCounter = 0;\n\nconst INVALID_TIME_MESSAGE = 'Enter a valid time.';\nconst TIME_BEFORE_MIN_MESSAGE = 'Time is before the minimum allowed time.';\nconst TIME_AFTER_MAX_MESSAGE = 'Time is after the maximum allowed time.';\nconst TIME_STEP_MESSAGE = 'Time does not match the allowed interval.';\n\n@Component({\n tag: 'ds-input-time',\n styleUrl: 'InputTime.css',\n scoped: true,\n formAssociated: true,\n})\nexport class InputTime {\n @Element() el!: HTMLElement;\n @AttachInternals() internals!: ElementInternals;\n\n private generatedId = `ds-input-time-${++idCounter}`;\n private errorId = `${this.generatedId}-error`;\n private popupId = `${this.generatedId}-popup`;\n\n @Prop({ mutable: true }) value: string = '';\n @Prop({ reflect: true }) name: string | undefined;\n @Prop({ reflect: true }) form: string | undefined;\n @Prop({ reflect: true }) disabled: boolean = false;\n @Prop({ reflect: true }) readOnly: boolean = false;\n @Prop({ reflect: true }) required: boolean = false;\n @Prop() requiredMessage: string = DEFAULT_REQUIRED_MESSAGE;\n /** Native time step in seconds. Defaults to minutes (`60`). */\n @Prop() step: string | number = 60;\n /** Display format; submitted values remain HH:MM in either format. */\n @Prop() hourFormat: '12' | '24' = '12';\n @Prop() min: string | undefined;\n @Prop() max: string | undefined;\n @Prop() size: InputTimeSize = 'md';\n @Prop() width: InputTimeWidth = 'fill';\n @Prop() hasBorder: boolean = true;\n @Prop() hasInteractionFill: boolean = true;\n @Prop() isInactive: boolean = false;\n @Prop() autoFocus: boolean = false;\n @Prop() error: boolean = false;\n @Prop() errorMessage: string | undefined;\n @Prop() inputId: string | undefined;\n @Prop({ attribute: 'aria-label' }) ariaLabel: string | null = null;\n @Prop({ attribute: 'aria-labelledby' }) ariaLabelledby: string | undefined;\n @Prop({ attribute: 'aria-describedby' }) ariaDescribedby: string | undefined;\n\n @Event() dsChange!: EventEmitter<string>;\n\n private initialValue = '';\n private inputEl?: HTMLInputElement;\n private controlEl?: HTMLElement;\n private clockButton?: HTMLDsButtonUnfilledElement;\n private closeTimer: ReturnType<typeof setTimeout> | null = null;\n @State() private formDisabled = false;\n @State() private focused = false;\n @State() private touched = false;\n @State() private draftText = '';\n @State() private open = false;\n @State() private shouldRender = false;\n @State() private closing = false;\n @State() private positionReady = false;\n @State() private pos = { x: 0, y: 0 };\n\n private readonly position = new AnchoredPositionController({\n getAnchor: () => this.controlEl ?? null,\n getPopup: () => this.el.querySelector<HTMLElement>('.input-time-popup'),\n getOwnerDocument: () => this.el.ownerDocument,\n measure: (anchor, popup) => {\n if (!this.open) return null;\n const sectionInsetPx = resolveCssLengthPx(TOKEN_DEFAULTS.space050, TOKEN_DEFAULTS.space050);\n return {\n anchorRect: anchor.getBoundingClientRect(),\n popupWidth: popup.offsetWidth || this.popupFallbackWidth,\n popupHeight: popup.offsetHeight || this.popupFallbackHeight,\n side: 'bottom',\n align: 'end',\n sideOffsetPx: resolveCssLengthPx(TOKEN_DEFAULTS.space050, TOKEN_DEFAULTS.space050),\n alignOffsetPx: resolveChoicePopupAlignOffset({\n align: 'end',\n alignOffsetPx: 0,\n sectionInsetPx,\n anchorAlignment: 'popup-frame',\n }),\n viewportPadPx: resolveCssLengthPx(TOKEN_DEFAULTS.space050, TOKEN_DEFAULTS.space050),\n viewportWidth: window.innerWidth,\n viewportHeight: window.innerHeight,\n collisionRect: resolveAnchoredOverlayBoundaryRect(anchor),\n };\n },\n apply: ({ x, y }) => {\n this.pos = { x, y };\n },\n onReady: () => {\n this.positionReady = true;\n },\n liveUpdate: 'double-frame',\n observeResize: true,\n topLayer: true,\n });\n private readonly interaction = new AnchoredOverlayInteractionController({\n getAnchor: () => this.controlEl ?? null,\n getPopup: () => this.el.querySelector<HTMLElement>('.input-time-popup'),\n getOwnerDocument: () => this.el.ownerDocument,\n onOutsideActivation: () => this.closePicker(false),\n });\n\n private get popupFallbackWidth(): number {\n return resolveCssLengthPx(TOKEN_DEFAULTS.menuWidthXs, TOKEN_DEFAULTS.menuWidthXs);\n }\n\n private get popupFallbackHeight(): number {\n return resolveCssLengthPx(TOKEN_DEFAULTS.menuFallbackHeight, TOKEN_DEFAULTS.menuFallbackHeight);\n }\n\n private get formInactive(): boolean {\n return this.isInactive || this.disabled || this.formDisabled;\n }\n\n private get pickerInactive(): boolean {\n return this.formInactive || this.readOnly;\n }\n\n private get hasConstraintError(): boolean {\n if (!this.value) return false;\n if (!isClockTime(this.value)) return true;\n if (this.min && isClockTime(this.min) && this.value < this.min) return true;\n if (this.max && isClockTime(this.max) && this.value > this.max) return true;\n return !isClockTimeStepAligned(this.value, this.step, this.min);\n }\n\n private get isInvalid(): boolean {\n return (\n this.error ||\n (!this.formInactive &&\n ((this.required && this.value.length === 0) || this.hasConstraintError))\n );\n }\n\n componentWillLoad() {\n this.initialValue = this.value;\n this.syncFormValue();\n }\n\n disconnectedCallback() {\n this.teardownListeners();\n this.open = false;\n this.shouldRender = false;\n this.closing = false;\n this.positionReady = false;\n this.focused = false;\n }\n\n @Watch('hourFormat')\n onHourFormatChange() {\n this.draftText = this.displayValue;\n }\n\n @Watch('value')\n @Watch('required')\n @Watch('requiredMessage')\n @Watch('min')\n @Watch('max')\n @Watch('step')\n syncFormValue() {\n const inactive = this.formInactive;\n setFormControlValue(this.internals, this.value, { inactive });\n const flags: ValidityStateFlags = {};\n let message = '';\n if (!inactive) {\n if (this.required && this.value.length === 0) {\n flags.valueMissing = true;\n message = this.requiredMessage;\n } else if (this.value && !isClockTime(this.value)) {\n flags.badInput = true;\n message = INVALID_TIME_MESSAGE;\n } else if (this.value && this.min && isClockTime(this.min) && this.value < this.min) {\n flags.rangeUnderflow = true;\n message = TIME_BEFORE_MIN_MESSAGE;\n } else if (this.value && this.max && isClockTime(this.max) && this.value > this.max) {\n flags.rangeOverflow = true;\n message = TIME_AFTER_MAX_MESSAGE;\n } else if (this.value && !isClockTimeStepAligned(this.value, this.step, this.min)) {\n flags.stepMismatch = true;\n message = TIME_STEP_MESSAGE;\n }\n }\n this.internals.setValidity(flags, message);\n }\n\n @Watch('disabled')\n @Watch('isInactive')\n @Watch('readOnly')\n onInteractionStateChange() {\n this.syncFormValue();\n if (this.pickerInactive && this.shouldRender) this.closePicker(false);\n }\n\n formDisabledCallback(disabled: boolean) {\n this.formDisabled = disabled;\n this.onInteractionStateChange();\n }\n\n formResetCallback() {\n this.value = this.initialValue;\n this.draftText = this.displayValue;\n }\n\n formStateRestoreCallback(state: string | File | FormData | null) {\n this.value = restoreStringFormState(state);\n this.draftText = this.displayValue;\n }\n\n @Method()\n async setFocus() {\n this.inputEl?.focus();\n }\n\n @Listen('keydown')\n handleHostKeyDown(event: KeyboardEvent) {\n if (!this.shouldRender || this.closing) return;\n if (event.key === 'Escape') {\n event.preventDefault();\n this.closePicker('button');\n return;\n }\n if (event.key !== 'Tab') return;\n const popup = this.el.querySelector<HTMLElement>('.input-time-popup');\n if (!popup || !event.composedPath().includes(popup)) return;\n if (!this.interaction.tabLeavesPopup(event)) return;\n event.preventDefault();\n this.closePicker(false);\n this.interaction.moveFocusAfterTab(event.shiftKey);\n }\n\n private get displayValue(): string {\n return this.hourFormat === '24' ? this.value : formatClockTimeLabel(this.value);\n }\n\n private parseDraft(text: string): string | null {\n const trimmed = text.trim();\n if (!trimmed) return '';\n const iso = parseLooseClockTime(trimmed);\n if (!iso) return null;\n if (this.min && isClockTime(this.min) && iso < this.min) return null;\n if (this.max && isClockTime(this.max) && iso > this.max) return null;\n if (!isClockTimeStepAligned(iso, this.step, this.min)) return null;\n return iso;\n }\n\n private commitIso(iso: string, emit = true) {\n if (this.value !== iso) {\n this.value = iso;\n if (emit) this.dsChange.emit(iso);\n }\n this.draftText = this.hourFormat === '24' ? iso : formatClockTimeLabel(iso);\n }\n\n private teardownListeners() {\n this.position.unobserve();\n this.interaction.disconnect();\n if (this.closeTimer) {\n clearTimeout(this.closeTimer);\n this.closeTimer = null;\n }\n }\n\n private openPicker() {\n const inactive = this.isInactive || this.disabled || this.formDisabled || this.readOnly;\n if (inactive || this.open || !this.el.isConnected) return;\n this.shouldRender = true;\n this.closing = false;\n this.positionReady = false;\n this.open = true;\n this.teardownListeners();\n this.interaction.connect();\n this.position.observe();\n this.position.schedule();\n }\n\n private closePicker(restore: 'input' | 'button' | false) {\n if (!this.shouldRender || this.closing) return;\n this.open = false;\n this.position.cancel();\n this.closing = true;\n this.interaction.disconnect();\n this.position.unobserve();\n if (restore === 'input') this.inputEl?.focus();\n if (restore === 'button') void this.clockButton?.setFocus();\n const duration = resolveMotionTimeMs(\n TOKEN_DEFAULTS.motionShort2,\n TOKEN_DEFAULTS.animationDurationShort3\n );\n if (duration <= 0) {\n this.finishClose();\n return;\n }\n this.closeTimer = setTimeout(() => this.finishClose(), duration);\n }\n\n private finishClose() {\n const popup = this.el.querySelector<HTMLElement>('.input-time-popup');\n if (popup?.matches(':popover-open')) popup.hidePopover();\n this.shouldRender = false;\n this.closing = false;\n this.closeTimer = null;\n }\n\n private togglePicker = () => {\n if (this.isInactive || this.disabled || this.formDisabled || this.readOnly) return;\n if (this.open) this.closePicker('button');\n else this.openPicker();\n };\n\n private handleInput = (event: Event) => {\n if (this.pickerInactive) return;\n this.draftText = (event.target as HTMLInputElement).value;\n const parsed = this.parseDraft(this.draftText);\n if (parsed === null) return;\n this.commitIso(parsed);\n };\n\n private handleFocus = () => {\n this.draftText = this.displayValue || this.value;\n this.focused = true;\n };\n\n private handleBlur = () => {\n this.focused = false;\n this.touched = true;\n if (this.pickerInactive) {\n this.draftText = this.displayValue;\n return;\n }\n const parsed = this.parseDraft(this.draftText);\n if (parsed === null) {\n this.draftText = this.displayValue;\n return;\n }\n this.commitIso(parsed);\n };\n\n private handleTimeChange = (event: CustomEvent<string>) => {\n event.stopPropagation();\n if (this.pickerInactive) return;\n const parsed = this.parseDraft(event.detail);\n if (parsed === null) return;\n this.commitIso(parsed);\n };\n\n render() {\n const inputId = this.inputId ?? this.generatedId;\n const inactive = this.formInactive;\n const pickerInactive = this.pickerInactive;\n const filled = this.value.length > 0;\n const dirty = this.value !== this.initialValue;\n const showError = this.error && Boolean(this.errorMessage);\n const textVariant = CONTROL_TEXT_VARIANT[this.size];\n const textClass = `ds-text--${textVariant.replace('text-', '')}`;\n const describedBy =\n [this.ariaDescribedby, showError ? this.errorId : undefined].filter(Boolean).join(' ') ||\n undefined;\n const popupStyle = {\n position: 'fixed',\n left: '0',\n top: '0',\n transform: `translate(${Math.round(this.pos.x)}px, ${Math.round(this.pos.y)}px)`,\n zIndex: 'var(--dimension-z-index-floating)',\n visibility: this.positionReady ? 'visible' : 'hidden',\n };\n\n return (\n <Host\n class={{\n 'input-host': true,\n 'ds-field-stack': true,\n 'ds-field-stack--supporting-inset': !this.hasBorder,\n 'ds-control-inactive': inactive,\n [`ds-control--${this.size}`]: true,\n ...controlWidthClass(this.width),\n }}\n data-disabled={inactive ? '' : undefined}\n data-readonly={this.readOnly ? '' : undefined}\n data-required={this.required ? '' : undefined}\n data-invalid={this.isInvalid ? '' : undefined}\n data-filled={filled ? '' : undefined}\n data-focused={this.focused ? '' : undefined}\n data-dirty={dirty ? '' : undefined}\n data-touched={this.touched ? '' : undefined}\n >\n <div\n ref={element => {\n this.controlEl = element;\n }}\n class={{\n 'input-control': true,\n 'ds-control-frame': true,\n 'input-control--bordered': this.hasBorder,\n 'input-control--error': this.hasBorder && this.error,\n 'ds-interaction-fill': this.hasInteractionFill,\n [`ds-control--${this.size}`]: true,\n }}\n >\n <input\n ref={element => {\n this.inputEl = element;\n }}\n type=\"text\"\n id={inputId}\n value={this.focused ? this.draftText : this.displayValue}\n disabled={inactive}\n readOnly={this.readOnly}\n required={this.required}\n autoFocus={this.autoFocus}\n autoComplete=\"off\"\n spellcheck={false}\n class={{\n 'native-input': true,\n 'native-input--align-start': true,\n 'ds-control-label-box': true,\n [textClass]: true,\n 'ds-text--regular': true,\n }}\n aria-label={this.ariaLabel}\n aria-labelledby={this.ariaLabelledby}\n aria-describedby={describedBy}\n aria-invalid={this.isInvalid ? 'true' : undefined}\n onInput={this.handleInput}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n <ds-button-unfilled\n ref={element => {\n this.clockButton = element as HTMLDsButtonUnfilledElement | undefined;\n }}\n class=\"input-control__datetime-action\"\n variant=\"icon\"\n size={this.size}\n icon=\"Clock\"\n hasBorder={false}\n isInset\n isInactive={pickerInactive}\n ariaLabel=\"Choose time\"\n haspopup=\"dialog\"\n expanded={this.open}\n surfaceOpen={this.open || this.closing}\n controls={this.open ? this.popupId : undefined}\n onDsClick={this.togglePicker}\n />\n </div>\n {this.shouldRender ? (\n <div\n id={this.popupId}\n popover=\"manual\"\n class={{\n 'input-time-popup': true,\n 'ds-choice-popup': true,\n 'ds-choice-popup--closing': this.closing,\n 'ds-chrome-column': true,\n 'ds-chrome-space--sm': true,\n }}\n style={popupStyle}\n role=\"dialog\"\n aria-label=\"Choose time\"\n >\n <ds-time-picker\n hourFormat={this.hourFormat}\n value={this.value}\n min={this.min}\n max={this.max}\n step={this.step}\n isInactive={pickerInactive}\n autoFocus\n onDsChange={this.handleTimeChange}\n />\n </div>\n ) : null}\n {showError && (\n <ds-text\n class=\"error-text\"\n as=\"div\"\n variant=\"text-body-small\"\n color=\"negative\"\n textId={this.errorId}\n role=\"alert\"\n >\n {this.errorMessage}\n </ds-text>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["inputTimeCss","idCounter","INVALID_TIME_MESSAGE","TIME_BEFORE_MIN_MESSAGE","TIME_AFTER_MAX_MESSAGE","TIME_STEP_MESSAGE","InputTime","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","generatedId","errorId","popupId","value","disabled","readOnly","required","requiredMessage","DEFAULT_REQUIRED_MESSAGE","step","hourFormat","size","width","hasBorder","hasInteractionFill","isInactive","autoFocus","error","ariaLabel","initialValue","closeTimer","formDisabled","focused","touched","draftText","open","shouldRender","closing","positionReady","pos","x","y","position","AnchoredPositionController","getAnchor","controlEl","getPopup","el","querySelector","getOwnerDocument","ownerDocument","measure","anchor","popup","sectionInsetPx","resolveCssLengthPx","TOKEN_DEFAULTS","space050","anchorRect","getBoundingClientRect","popupWidth","offsetWidth","popupFallbackWidth","popupHeight","offsetHeight","popupFallbackHeight","side","align","sideOffsetPx","alignOffsetPx","resolveChoicePopupAlignOffset","anchorAlignment","viewportPadPx","viewportWidth","window","innerWidth","viewportHeight","innerHeight","collisionRect","resolveAnchoredOverlayBoundaryRect","apply","onReady","liveUpdate","observeResize","topLayer","interaction","AnchoredOverlayInteractionController","onOutsideActivation","closePicker","togglePicker","openPicker","handleInput","event","pickerInactive","target","parsed","parseDraft","commitIso","handleFocus","displayValue","handleBlur","handleTimeChange","stopPropagation","detail","menuWidthXs","menuFallbackHeight","formInactive","hasConstraintError","isClockTime","min","max","isClockTimeStepAligned","isInvalid","length","componentWillLoad","syncFormValue","disconnectedCallback","teardownListeners","onHourFormatChange","inactive","setFormControlValue","internals","flags","message","valueMissing","badInput","rangeUnderflow","rangeOverflow","stepMismatch","setValidity","onInteractionStateChange","formDisabledCallback","formResetCallback","formStateRestoreCallback","state","restoreStringFormState","setFocus","inputEl","focus","handleHostKeyDown","key","preventDefault","composedPath","includes","tabLeavesPopup","moveFocusAfterTab","shiftKey","formatClockTimeLabel","text","trimmed","trim","iso","parseLooseClockTime","emit","dsChange","unobserve","disconnect","clearTimeout","isConnected","connect","observe","schedule","restore","cancel","clockButton","duration","resolveMotionTimeMs","motionShort2","animationDurationShort3","finishClose","setTimeout","matches","hidePopover","render","inputId","filled","dirty","showError","Boolean","errorMessage","textVariant","CONTROL_TEXT_VARIANT","textClass","replace","describedBy","ariaDescribedby","undefined","filter","join","popupStyle","left","top","transform","Math","round","zIndex","visibility","h","Host","class","controlWidthClass","ref","element","type","id","autoComplete","spellcheck","ariaLabelledby","onInput","onFocus","onBlur","variant","icon","isInset","haspopup","expanded","surfaceOpen","controls","onDsClick","popover","style","role","onDsChange","as","color","textId"],"sources":["src/wc/components/InputTime/InputTime.css?tag=ds-input-time&encapsulation=scoped","src/wc/components/InputTime/InputTime.tsx"],"sourcesContent":["@import '../../utils/datetime-input-control.css';\n@import '../../utils/choice-popup.css';\n@import '../../utils/chrome-layout.css';\n\n.input-time-popup.ds-choice-popup {\n --ds-time-picker-padding: 0;\n padding: var(--dimension-space-050);\n}\n","import {\n AttachInternals,\n Component,\n Element,\n Prop,\n State,\n Event,\n EventEmitter,\n Listen,\n Method,\n Watch,\n h,\n Host,\n} from '@stencil/core';\nimport {\n controlWidthClass,\n CONTROL_TEXT_VARIANT,\n DEFAULT_REQUIRED_MESSAGE,\n formatClockTimeLabel,\n isClockTime,\n isClockTimeStepAligned,\n parseLooseClockTime,\n resolveChoicePopupAlignOffset,\n resolveCssLengthPx,\n resolveMotionTimeMs,\n restoreStringFormState,\n setFormControlValue,\n TOKEN_DEFAULTS,\n type ControlSize,\n type ControlWidth,\n} from '../../utils';\nimport { AnchoredPositionController } from '../../utils/anchored-position-controller';\nimport { AnchoredOverlayInteractionController } from '../../utils/anchored-overlay-interaction-controller';\nimport { resolveAnchoredOverlayBoundaryRect } from '../../utils/anchored-overlay-boundary';\n\nexport type InputTimeSize = ControlSize;\nexport type InputTimeWidth = ControlWidth;\n\nlet idCounter = 0;\n\nconst INVALID_TIME_MESSAGE = 'Enter a valid time.';\nconst TIME_BEFORE_MIN_MESSAGE = 'Time is before the minimum allowed time.';\nconst TIME_AFTER_MAX_MESSAGE = 'Time is after the maximum allowed time.';\nconst TIME_STEP_MESSAGE = 'Time does not match the allowed interval.';\n\n@Component({\n tag: 'ds-input-time',\n styleUrl: 'InputTime.css',\n scoped: true,\n formAssociated: true,\n})\nexport class InputTime {\n @Element() el!: HTMLElement;\n @AttachInternals() internals!: ElementInternals;\n\n private generatedId = `ds-input-time-${++idCounter}`;\n private errorId = `${this.generatedId}-error`;\n private popupId = `${this.generatedId}-popup`;\n\n @Prop({ mutable: true }) value: string = '';\n @Prop({ reflect: true }) name: string | undefined;\n @Prop({ reflect: true }) form: string | undefined;\n @Prop({ reflect: true }) disabled: boolean = false;\n @Prop({ reflect: true }) readOnly: boolean = false;\n @Prop({ reflect: true }) required: boolean = false;\n @Prop() requiredMessage: string = DEFAULT_REQUIRED_MESSAGE;\n /** Native time step in seconds. Defaults to minutes (`60`). */\n @Prop() step: string | number = 60;\n /** Display format; submitted values remain HH:MM in either format. */\n @Prop() hourFormat: '12' | '24' = '12';\n @Prop() min: string | undefined;\n @Prop() max: string | undefined;\n @Prop() size: InputTimeSize = 'md';\n @Prop() width: InputTimeWidth = 'fill';\n @Prop() hasBorder: boolean = true;\n @Prop() hasInteractionFill: boolean = true;\n @Prop() isInactive: boolean = false;\n @Prop() autoFocus: boolean = false;\n @Prop() error: boolean = false;\n @Prop() errorMessage: string | undefined;\n @Prop() inputId: string | undefined;\n @Prop({ attribute: 'aria-label' }) ariaLabel: string | null = null;\n @Prop({ attribute: 'aria-labelledby' }) ariaLabelledby: string | undefined;\n @Prop({ attribute: 'aria-describedby' }) ariaDescribedby: string | undefined;\n\n @Event() dsChange!: EventEmitter<string>;\n\n private initialValue = '';\n private inputEl?: HTMLInputElement;\n private controlEl?: HTMLElement;\n private clockButton?: HTMLDsButtonUnfilledElement;\n private closeTimer: ReturnType<typeof setTimeout> | null = null;\n @State() private formDisabled = false;\n @State() private focused = false;\n @State() private touched = false;\n @State() private draftText = '';\n @State() private open = false;\n @State() private shouldRender = false;\n @State() private closing = false;\n @State() private positionReady = false;\n @State() private pos = { x: 0, y: 0 };\n\n private readonly position = new AnchoredPositionController({\n getAnchor: () => this.controlEl ?? null,\n getPopup: () => this.el.querySelector<HTMLElement>('.input-time-popup'),\n getOwnerDocument: () => this.el.ownerDocument,\n measure: (anchor, popup) => {\n if (!this.open) return null;\n const sectionInsetPx = resolveCssLengthPx(TOKEN_DEFAULTS.space050, TOKEN_DEFAULTS.space050);\n return {\n anchorRect: anchor.getBoundingClientRect(),\n popupWidth: popup.offsetWidth || this.popupFallbackWidth,\n popupHeight: popup.offsetHeight || this.popupFallbackHeight,\n side: 'bottom',\n align: 'end',\n sideOffsetPx: resolveCssLengthPx(TOKEN_DEFAULTS.space050, TOKEN_DEFAULTS.space050),\n alignOffsetPx: resolveChoicePopupAlignOffset({\n align: 'end',\n alignOffsetPx: 0,\n sectionInsetPx,\n anchorAlignment: 'popup-frame',\n }),\n viewportPadPx: resolveCssLengthPx(TOKEN_DEFAULTS.space050, TOKEN_DEFAULTS.space050),\n viewportWidth: window.innerWidth,\n viewportHeight: window.innerHeight,\n collisionRect: resolveAnchoredOverlayBoundaryRect(anchor),\n };\n },\n apply: ({ x, y }) => {\n this.pos = { x, y };\n },\n onReady: () => {\n this.positionReady = true;\n },\n liveUpdate: 'double-frame',\n observeResize: true,\n topLayer: true,\n });\n private readonly interaction = new AnchoredOverlayInteractionController({\n getAnchor: () => this.controlEl ?? null,\n getPopup: () => this.el.querySelector<HTMLElement>('.input-time-popup'),\n getOwnerDocument: () => this.el.ownerDocument,\n onOutsideActivation: () => this.closePicker(false),\n });\n\n private get popupFallbackWidth(): number {\n return resolveCssLengthPx(TOKEN_DEFAULTS.menuWidthXs, TOKEN_DEFAULTS.menuWidthXs);\n }\n\n private get popupFallbackHeight(): number {\n return resolveCssLengthPx(TOKEN_DEFAULTS.menuFallbackHeight, TOKEN_DEFAULTS.menuFallbackHeight);\n }\n\n private get formInactive(): boolean {\n return this.isInactive || this.disabled || this.formDisabled;\n }\n\n private get pickerInactive(): boolean {\n return this.formInactive || this.readOnly;\n }\n\n private get hasConstraintError(): boolean {\n if (!this.value) return false;\n if (!isClockTime(this.value)) return true;\n if (this.min && isClockTime(this.min) && this.value < this.min) return true;\n if (this.max && isClockTime(this.max) && this.value > this.max) return true;\n return !isClockTimeStepAligned(this.value, this.step, this.min);\n }\n\n private get isInvalid(): boolean {\n return (\n this.error ||\n (!this.formInactive &&\n ((this.required && this.value.length === 0) || this.hasConstraintError))\n );\n }\n\n componentWillLoad() {\n this.initialValue = this.value;\n this.syncFormValue();\n }\n\n disconnectedCallback() {\n this.teardownListeners();\n this.open = false;\n this.shouldRender = false;\n this.closing = false;\n this.positionReady = false;\n this.focused = false;\n }\n\n @Watch('hourFormat')\n onHourFormatChange() {\n this.draftText = this.displayValue;\n }\n\n @Watch('value')\n @Watch('required')\n @Watch('requiredMessage')\n @Watch('min')\n @Watch('max')\n @Watch('step')\n syncFormValue() {\n const inactive = this.formInactive;\n setFormControlValue(this.internals, this.value, { inactive });\n const flags: ValidityStateFlags = {};\n let message = '';\n if (!inactive) {\n if (this.required && this.value.length === 0) {\n flags.valueMissing = true;\n message = this.requiredMessage;\n } else if (this.value && !isClockTime(this.value)) {\n flags.badInput = true;\n message = INVALID_TIME_MESSAGE;\n } else if (this.value && this.min && isClockTime(this.min) && this.value < this.min) {\n flags.rangeUnderflow = true;\n message = TIME_BEFORE_MIN_MESSAGE;\n } else if (this.value && this.max && isClockTime(this.max) && this.value > this.max) {\n flags.rangeOverflow = true;\n message = TIME_AFTER_MAX_MESSAGE;\n } else if (this.value && !isClockTimeStepAligned(this.value, this.step, this.min)) {\n flags.stepMismatch = true;\n message = TIME_STEP_MESSAGE;\n }\n }\n this.internals.setValidity(flags, message);\n }\n\n @Watch('disabled')\n @Watch('isInactive')\n @Watch('readOnly')\n onInteractionStateChange() {\n this.syncFormValue();\n if (this.pickerInactive && this.shouldRender) this.closePicker(false);\n }\n\n formDisabledCallback(disabled: boolean) {\n this.formDisabled = disabled;\n this.onInteractionStateChange();\n }\n\n formResetCallback() {\n this.value = this.initialValue;\n this.draftText = this.displayValue;\n }\n\n formStateRestoreCallback(state: string | File | FormData | null) {\n this.value = restoreStringFormState(state);\n this.draftText = this.displayValue;\n }\n\n @Method()\n async setFocus() {\n this.inputEl?.focus();\n }\n\n @Listen('keydown')\n handleHostKeyDown(event: KeyboardEvent) {\n if (!this.shouldRender || this.closing) return;\n if (event.key === 'Escape') {\n event.preventDefault();\n this.closePicker('button');\n return;\n }\n if (event.key !== 'Tab') return;\n const popup = this.el.querySelector<HTMLElement>('.input-time-popup');\n if (!popup || !event.composedPath().includes(popup)) return;\n if (!this.interaction.tabLeavesPopup(event)) return;\n event.preventDefault();\n this.closePicker(false);\n this.interaction.moveFocusAfterTab(event.shiftKey);\n }\n\n private get displayValue(): string {\n return this.hourFormat === '24' ? this.value : formatClockTimeLabel(this.value);\n }\n\n private parseDraft(text: string): string | null {\n const trimmed = text.trim();\n if (!trimmed) return '';\n const iso = parseLooseClockTime(trimmed);\n if (!iso) return null;\n if (this.min && isClockTime(this.min) && iso < this.min) return null;\n if (this.max && isClockTime(this.max) && iso > this.max) return null;\n if (!isClockTimeStepAligned(iso, this.step, this.min)) return null;\n return iso;\n }\n\n private commitIso(iso: string, emit = true) {\n if (this.value !== iso) {\n this.value = iso;\n if (emit) this.dsChange.emit(iso);\n }\n this.draftText = this.hourFormat === '24' ? iso : formatClockTimeLabel(iso);\n }\n\n private teardownListeners() {\n this.position.unobserve();\n this.interaction.disconnect();\n if (this.closeTimer) {\n clearTimeout(this.closeTimer);\n this.closeTimer = null;\n }\n }\n\n private openPicker() {\n const inactive = this.isInactive || this.disabled || this.formDisabled || this.readOnly;\n if (inactive || this.open || !this.el.isConnected) return;\n this.shouldRender = true;\n this.closing = false;\n this.positionReady = false;\n this.open = true;\n this.teardownListeners();\n this.interaction.connect();\n this.position.observe();\n this.position.schedule();\n }\n\n private closePicker(restore: 'input' | 'button' | false) {\n if (!this.shouldRender || this.closing) return;\n this.open = false;\n this.position.cancel();\n this.closing = true;\n this.interaction.disconnect();\n this.position.unobserve();\n if (restore === 'input') this.inputEl?.focus();\n if (restore === 'button') void this.clockButton?.setFocus();\n const duration = resolveMotionTimeMs(\n TOKEN_DEFAULTS.motionShort2,\n TOKEN_DEFAULTS.animationDurationShort3\n );\n if (duration <= 0) {\n this.finishClose();\n return;\n }\n this.closeTimer = setTimeout(() => this.finishClose(), duration);\n }\n\n private finishClose() {\n const popup = this.el.querySelector<HTMLElement>('.input-time-popup');\n if (popup?.matches(':popover-open')) popup.hidePopover();\n this.shouldRender = false;\n this.closing = false;\n this.closeTimer = null;\n }\n\n private togglePicker = () => {\n if (this.isInactive || this.disabled || this.formDisabled || this.readOnly) return;\n if (this.open) this.closePicker('button');\n else this.openPicker();\n };\n\n private handleInput = (event: Event) => {\n if (this.pickerInactive) return;\n this.draftText = (event.target as HTMLInputElement).value;\n const parsed = this.parseDraft(this.draftText);\n if (parsed === null) return;\n this.commitIso(parsed);\n };\n\n private handleFocus = () => {\n this.draftText = this.displayValue || this.value;\n this.focused = true;\n };\n\n private handleBlur = () => {\n this.focused = false;\n this.touched = true;\n if (this.pickerInactive) {\n this.draftText = this.displayValue;\n return;\n }\n const parsed = this.parseDraft(this.draftText);\n if (parsed === null) {\n this.draftText = this.displayValue;\n return;\n }\n this.commitIso(parsed);\n };\n\n private handleTimeChange = (event: CustomEvent<string>) => {\n event.stopPropagation();\n if (this.pickerInactive) return;\n const parsed = this.parseDraft(event.detail);\n if (parsed === null) return;\n this.commitIso(parsed);\n };\n\n render() {\n const inputId = this.inputId ?? this.generatedId;\n const inactive = this.formInactive;\n const pickerInactive = this.pickerInactive;\n const filled = this.value.length > 0;\n const dirty = this.value !== this.initialValue;\n const showError = this.error && Boolean(this.errorMessage);\n const textVariant = CONTROL_TEXT_VARIANT[this.size];\n const textClass = `ds-text--${textVariant.replace('text-', '')}`;\n const describedBy =\n [this.ariaDescribedby, showError ? this.errorId : undefined].filter(Boolean).join(' ') ||\n undefined;\n const popupStyle = {\n position: 'fixed',\n left: '0',\n top: '0',\n transform: `translate(${Math.round(this.pos.x)}px, ${Math.round(this.pos.y)}px)`,\n zIndex: 'var(--dimension-z-index-floating)',\n visibility: this.positionReady ? 'visible' : 'hidden',\n };\n\n return (\n <Host\n class={{\n 'input-host': true,\n 'ds-field-stack': true,\n 'ds-field-stack--supporting-inset': !this.hasBorder,\n 'ds-control-inactive': inactive,\n [`ds-control--${this.size}`]: true,\n ...controlWidthClass(this.width),\n }}\n data-disabled={inactive ? '' : undefined}\n data-readonly={this.readOnly ? '' : undefined}\n data-required={this.required ? '' : undefined}\n data-invalid={this.isInvalid ? '' : undefined}\n data-filled={filled ? '' : undefined}\n data-focused={this.focused ? '' : undefined}\n data-dirty={dirty ? '' : undefined}\n data-touched={this.touched ? '' : undefined}\n >\n <div\n ref={element => {\n this.controlEl = element;\n }}\n class={{\n 'input-control': true,\n 'ds-control-frame': true,\n 'input-control--bordered': this.hasBorder,\n 'input-control--error': this.hasBorder && this.error,\n 'ds-interaction-fill': this.hasInteractionFill,\n [`ds-control--${this.size}`]: true,\n }}\n >\n <input\n ref={element => {\n this.inputEl = element;\n }}\n type=\"text\"\n id={inputId}\n value={this.focused ? this.draftText : this.displayValue}\n disabled={inactive}\n readOnly={this.readOnly}\n required={this.required}\n autoFocus={this.autoFocus}\n autoComplete=\"off\"\n spellcheck={false}\n class={{\n 'native-input': true,\n 'native-input--align-start': true,\n 'ds-control-label-box': true,\n [textClass]: true,\n 'ds-text--regular': true,\n }}\n aria-label={this.ariaLabel}\n aria-labelledby={this.ariaLabelledby}\n aria-describedby={describedBy}\n aria-invalid={this.isInvalid ? 'true' : undefined}\n onInput={this.handleInput}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n />\n <ds-button-unfilled\n ref={element => {\n this.clockButton = element as HTMLDsButtonUnfilledElement | undefined;\n }}\n class=\"input-control__datetime-action\"\n variant=\"icon\"\n size={this.size}\n icon=\"Clock\"\n hasBorder={false}\n isInset\n isInactive={pickerInactive}\n ariaLabel=\"Choose time\"\n haspopup=\"dialog\"\n expanded={this.open}\n surfaceOpen={this.open || this.closing}\n controls={this.open ? this.popupId : undefined}\n onDsClick={this.togglePicker}\n />\n </div>\n {this.shouldRender ? (\n <div\n id={this.popupId}\n popover=\"manual\"\n class={{\n 'input-time-popup': true,\n 'ds-choice-popup': true,\n 'ds-choice-popup--closing': this.closing,\n 'ds-chrome-column': true,\n 'ds-chrome-space--sm': true,\n }}\n style={popupStyle}\n role=\"dialog\"\n aria-label=\"Choose time\"\n >\n <ds-time-picker\n hourFormat={this.hourFormat}\n value={this.value}\n min={this.min}\n max={this.max}\n step={this.step}\n isInactive={pickerInactive}\n autoFocus\n onDsChange={this.handleTimeChange}\n />\n </div>\n ) : null}\n {showError && (\n <ds-text\n class=\"error-text\"\n as=\"div\"\n variant=\"text-body-small\"\n color=\"negative\"\n textId={this.errorId}\n role=\"alert\"\n >\n {this.errorMessage}\n </ds-text>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|