@ds-mo/ui 14.25.0 → 14.27.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 +343 -16
- package/dist/angular/ds-score.d.ts +12 -0
- package/dist/angular/ds-score.js +38 -0
- package/dist/angular/ds-textarea.d.ts +15 -0
- package/dist/angular/ds-textarea.js +43 -0
- package/dist/angular/index.d.ts +1 -1
- package/dist/angular/index.js +2 -0
- package/dist/angular/proxies.d.ts +2 -0
- package/dist/angular/proxies.js +2 -0
- package/dist/angular/text-value-accessor.d.ts +1 -1
- package/dist/angular/text-value-accessor.js +2 -2
- package/dist/components/ds-agent-activity.js +1 -1
- package/dist/components/ds-agent-questionnaire.js +1 -1
- package/dist/components/ds-agent-response.js +1 -1
- package/dist/components/ds-agent-source-list.js +1 -1
- package/dist/components/ds-agent-tool-call.js +1 -1
- package/dist/components/ds-attachment-list.js +1 -1
- package/dist/components/ds-badge.js +1 -1
- package/dist/components/ds-banner.js +1 -1
- package/dist/components/ds-bar-action.js +1 -1
- package/dist/components/ds-bar-nav.js +1 -1
- package/dist/components/ds-bar-title.js +1 -1
- package/dist/components/ds-bar-workflow.js +1 -1
- package/dist/components/ds-breadcrumb.js +1 -1
- package/dist/components/ds-button-filled.js +1 -1
- package/dist/components/ds-button-unfilled.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-overview.js.map +1 -1
- package/dist/components/ds-card-setting.js +1 -1
- package/dist/components/ds-chart-legend.js +1 -1
- package/dist/components/ds-chart.js +1 -1
- package/dist/components/ds-checkbox.js +1 -1
- package/dist/components/ds-chip.js +1 -1
- package/dist/components/ds-code-block.js +1 -1
- package/dist/components/ds-conversation-list-item.js +1 -1
- package/dist/components/ds-conversation-list-section.js +1 -1
- package/dist/components/ds-empty-state.js +1 -1
- package/dist/components/ds-field.js +1 -1
- package/dist/components/ds-filter-menu.js +1 -1
- package/dist/components/ds-input.js +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-message.js +1 -1
- package/dist/components/ds-mobile-bar-nav.js +1 -1
- package/dist/components/ds-mobile-header.js +1 -1
- package/dist/components/ds-mobile-section-switcher.js +1 -1
- package/dist/components/ds-mobile-sheet-nav.js +1 -1
- package/dist/components/ds-modal.js +1 -1
- package/dist/components/ds-pagination.js +1 -1
- package/dist/components/ds-panel-nav.js +1 -1
- package/dist/components/ds-panel-sub-nav.js +1 -1
- package/dist/components/ds-panel-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-paper-texture.js +1 -1
- package/dist/components/ds-radio.js +1 -1
- package/dist/components/ds-score.d.ts +11 -0
- package/dist/components/ds-score.js +2 -0
- package/dist/components/ds-score.js.map +1 -0
- package/dist/components/ds-select.js +1 -1
- package/dist/components/ds-shell-app.js +1 -1
- package/dist/components/ds-shell-page.js +1 -1
- package/dist/components/ds-shell-tools.js +1 -1
- package/dist/components/ds-slider.js +1 -1
- package/dist/components/ds-swatch-picker.js +1 -1
- package/dist/components/ds-tab-group.js +1 -1
- package/dist/components/ds-table-filter.js +1 -1
- package/dist/components/ds-table-group.js +1 -1
- package/dist/components/ds-table-group.js.map +1 -1
- package/dist/components/ds-table-saved-views.js +1 -1
- package/dist/components/ds-table-search.js +1 -1
- package/dist/components/ds-table-sort.js +1 -1
- package/dist/components/ds-table-toolbar.js +1 -1
- package/dist/components/ds-table.js +1 -1
- package/dist/components/ds-table.js.map +1 -1
- package/dist/components/ds-tag.js +1 -1
- package/dist/components/ds-text.js +1 -1
- package/dist/components/ds-textarea.d.ts +11 -0
- package/dist/components/ds-textarea.js +2 -0
- package/dist/components/ds-textarea.js.map +1 -0
- package/dist/components/ds-toast.js +1 -1
- package/dist/components/ds-tooltip-chart.js +1 -1
- package/dist/components/ds-tooltip.js +1 -1
- package/dist/components/ds-typing-indicator.js +1 -1
- package/dist/components/{p-DLaN9BPq.js → p-1604KY3B.js} +2 -2
- package/dist/components/{p-CYMKmJ2s.js → p-2wIPUcSL.js} +2 -2
- package/dist/components/{p-CEfxLsbX.js → p-537t6oRD.js} +2 -2
- package/dist/components/{p-kslioYhf.js → p-6_CNVbqa.js} +2 -2
- package/dist/components/{p-PXdvBMXB.js → p-B3Z5sQin.js} +2 -2
- package/dist/components/{p-CZjjDhUl.js → p-B3sRZBZk.js} +2 -2
- package/dist/components/{p-BZlhBJZL.js → p-B9esvbYk.js} +2 -2
- package/dist/components/{p-5Z4oYuiK.js → p-BEXkJ9lg.js} +2 -2
- package/dist/components/{p-DbLLH3hr.js → p-BIGpc__9.js} +2 -2
- package/dist/components/{p-DzPtYdXy.js → p-BMzn2Cmw.js} +2 -2
- package/dist/components/{p-BSRIF4m8.js → p-BRLDf-NK.js} +2 -2
- package/dist/components/{p-0X-4KGQf.js → p-BUh2GkPJ.js} +2 -2
- package/dist/components/{p-pUOA3iDG.js → p-BVpn_e-r.js} +2 -2
- package/dist/components/{p-CpeJMKJ5.js → p-BVz-r3g0.js} +2 -2
- package/dist/components/{p-CBymzuOO.js → p-BXDLR072.js} +2 -2
- package/dist/components/{p-DiS5BgLA.js → p-BZiGtBBk.js} +2 -2
- package/dist/components/{p-BcxidW9k.js → p-Bb9dA7sl.js} +2 -2
- package/dist/components/{p-BR1ayqMU.js → p-Bjt_8sLe.js} +2 -2
- package/dist/components/{p-BqbdABo3.js → p-BssZ4SbT.js} +2 -2
- package/dist/components/{p-bHnk8t5I.js → p-C68oSTb1.js} +2 -2
- package/dist/components/{p-C_FFU6W3.js → p-CGQnHNuW.js} +2 -2
- package/dist/components/{p-BqVXMEJm.js → p-CQjUOHiN.js} +2 -2
- package/dist/components/{p-w9fkkwL2.js → p-CaF5WCci.js} +2 -2
- package/dist/components/{p-Bjq1KP_Y.js → p-Cf5Ai4xx.js} +2 -2
- package/dist/components/{p-B0kSlcaw.js → p-Cr6pDY-e.js} +2 -2
- package/dist/components/{p-FxtgCvhA.js → p-Cy1oWIaV.js} +2 -2
- package/dist/components/{p-CTH3dSYg.js → p-DDqRCDXh.js} +2 -2
- package/dist/components/{p-x5u5Ueli.js → p-DIqAdmui.js} +2 -2
- package/dist/components/{p-Cd1JnnVK.js → p-DQQsS9Rx.js} +2 -2
- package/dist/components/{p-CZHIkVgj.js → p-DQsFmleZ.js} +2 -2
- package/dist/components/{p-CE2b5GPu.js → p-DVLghmNY.js} +2 -2
- package/dist/components/p-DW8ssbfI.js +2 -0
- package/dist/components/p-DW8ssbfI.js.map +1 -0
- package/dist/components/{p-BXv6RpoF.js → p-DZcIt_JJ.js} +2 -2
- package/dist/components/{p-CglHiyY2.js → p-DkxOEFHN.js} +2 -2
- package/dist/components/{p-DeK_6Uym.js → p-DlbhmXjH.js} +2 -2
- package/dist/components/{p-Bq8svcPs.js → p-GEi3hDJQ.js} +2 -2
- package/dist/components/p-LMmrjmI_.js +2 -0
- package/dist/components/p-LMmrjmI_.js.map +1 -0
- package/dist/components/{p-DI8DUozc.js → p-Q0dkeoJ6.js} +2 -2
- package/dist/components/{p-XaCYqck3.js → p-Q7AOgrg5.js} +2 -2
- package/dist/components/p-VT-5XDkB.js +2 -0
- package/dist/components/p-VT-5XDkB.js.map +1 -0
- package/dist/components/{p-B0OZx3JB.js → p-WFo1x6dN.js} +2 -2
- package/dist/components/{p-CEXchU5N.js → p-to8BxxgT.js} +2 -2
- package/dist/docs/components.json +1106 -5
- package/dist/mcp-data/registry/card-overview.json +8 -6
- package/dist/mcp-data/registry/field.json +5 -4
- package/dist/mcp-data/registry/panel-nav.json +2 -1
- package/dist/mcp-data/registry/registry.json +348 -15
- package/dist/mcp-data/registry/score.json +241 -0
- package/dist/mcp-data/registry/table-group.json +5 -5
- package/dist/mcp-data/registry/table.json +16 -13
- package/dist/mcp-data/registry/textarea.json +600 -0
- package/dist/mcp-data/registry/tooltip.json +5 -5
- package/dist/react/components.d.ts +2 -0
- package/dist/react/components.js +2 -0
- package/dist/react/ds-score.d.ts +9 -0
- package/dist/react/ds-score.js +12 -0
- package/dist/react/ds-textarea.d.ts +12 -0
- package/dist/react/ds-textarea.js +12 -0
- package/dist/styles/table.css +188 -69
- package/dist/types/components/CardOverview/card-overview-controller.d.ts +2 -2
- package/dist/types/components/CardOverview/card-overview-types.d.ts +2 -1
- package/dist/types/components/Score/Score.d.ts +21 -0
- package/dist/types/components/Score/index.d.ts +3 -0
- package/dist/types/components/Score/score-model.d.ts +14 -0
- package/dist/types/components/Score/score-types.d.ts +5 -0
- package/dist/types/components/Table/Table.d.ts +3 -0
- package/dist/types/components/Table/index.d.ts +1 -1
- package/dist/types/components/Table/table-cell-model.d.ts +12 -0
- package/dist/types/components/Table/table-model.d.ts +10 -1
- package/dist/types/components/Table/table-render-model.d.ts +3 -1
- package/dist/types/components/Table/table-types.d.ts +62 -1
- package/dist/types/components/Table/table-virtual-model.d.ts +6 -5
- package/dist/types/components/TableGroup/TableGroup.d.ts +13 -3
- package/dist/types/components/Textarea/Textarea.d.ts +66 -0
- package/dist/types/components/Textarea/index.d.ts +2 -0
- package/dist/types/components/Tooltip/Tooltip.d.ts +1 -1
- package/dist/types/components.d.ts +324 -2
- package/dist/vue/components.d.ts +2 -0
- package/dist/vue/components.js +2 -0
- package/dist/vue/ds-score.d.ts +3 -0
- package/dist/vue/ds-score.js +12 -0
- package/dist/vue/ds-textarea.d.ts +3 -0
- package/dist/vue/ds-textarea.js +36 -0
- package/package.json +1 -1
- package/dist/components/p-9X_p0bHr.js +0 -2
- package/dist/components/p-9X_p0bHr.js.map +0 -1
- package/dist/components/p-Bo6uW_8T.js +0 -2
- package/dist/components/p-Bo6uW_8T.js.map +0 -1
- /package/dist/components/{p-DLaN9BPq.js.map → p-1604KY3B.js.map} +0 -0
- /package/dist/components/{p-CYMKmJ2s.js.map → p-2wIPUcSL.js.map} +0 -0
- /package/dist/components/{p-CEfxLsbX.js.map → p-537t6oRD.js.map} +0 -0
- /package/dist/components/{p-kslioYhf.js.map → p-6_CNVbqa.js.map} +0 -0
- /package/dist/components/{p-PXdvBMXB.js.map → p-B3Z5sQin.js.map} +0 -0
- /package/dist/components/{p-CZjjDhUl.js.map → p-B3sRZBZk.js.map} +0 -0
- /package/dist/components/{p-BZlhBJZL.js.map → p-B9esvbYk.js.map} +0 -0
- /package/dist/components/{p-5Z4oYuiK.js.map → p-BEXkJ9lg.js.map} +0 -0
- /package/dist/components/{p-DbLLH3hr.js.map → p-BIGpc__9.js.map} +0 -0
- /package/dist/components/{p-DzPtYdXy.js.map → p-BMzn2Cmw.js.map} +0 -0
- /package/dist/components/{p-BSRIF4m8.js.map → p-BRLDf-NK.js.map} +0 -0
- /package/dist/components/{p-0X-4KGQf.js.map → p-BUh2GkPJ.js.map} +0 -0
- /package/dist/components/{p-pUOA3iDG.js.map → p-BVpn_e-r.js.map} +0 -0
- /package/dist/components/{p-CpeJMKJ5.js.map → p-BVz-r3g0.js.map} +0 -0
- /package/dist/components/{p-CBymzuOO.js.map → p-BXDLR072.js.map} +0 -0
- /package/dist/components/{p-DiS5BgLA.js.map → p-BZiGtBBk.js.map} +0 -0
- /package/dist/components/{p-BcxidW9k.js.map → p-Bb9dA7sl.js.map} +0 -0
- /package/dist/components/{p-BR1ayqMU.js.map → p-Bjt_8sLe.js.map} +0 -0
- /package/dist/components/{p-BqbdABo3.js.map → p-BssZ4SbT.js.map} +0 -0
- /package/dist/components/{p-bHnk8t5I.js.map → p-C68oSTb1.js.map} +0 -0
- /package/dist/components/{p-C_FFU6W3.js.map → p-CGQnHNuW.js.map} +0 -0
- /package/dist/components/{p-BqVXMEJm.js.map → p-CQjUOHiN.js.map} +0 -0
- /package/dist/components/{p-w9fkkwL2.js.map → p-CaF5WCci.js.map} +0 -0
- /package/dist/components/{p-Bjq1KP_Y.js.map → p-Cf5Ai4xx.js.map} +0 -0
- /package/dist/components/{p-B0kSlcaw.js.map → p-Cr6pDY-e.js.map} +0 -0
- /package/dist/components/{p-FxtgCvhA.js.map → p-Cy1oWIaV.js.map} +0 -0
- /package/dist/components/{p-CTH3dSYg.js.map → p-DDqRCDXh.js.map} +0 -0
- /package/dist/components/{p-x5u5Ueli.js.map → p-DIqAdmui.js.map} +0 -0
- /package/dist/components/{p-Cd1JnnVK.js.map → p-DQQsS9Rx.js.map} +0 -0
- /package/dist/components/{p-CZHIkVgj.js.map → p-DQsFmleZ.js.map} +0 -0
- /package/dist/components/{p-CE2b5GPu.js.map → p-DVLghmNY.js.map} +0 -0
- /package/dist/components/{p-BXv6RpoF.js.map → p-DZcIt_JJ.js.map} +0 -0
- /package/dist/components/{p-CglHiyY2.js.map → p-DkxOEFHN.js.map} +0 -0
- /package/dist/components/{p-DeK_6Uym.js.map → p-DlbhmXjH.js.map} +0 -0
- /package/dist/components/{p-Bq8svcPs.js.map → p-GEi3hDJQ.js.map} +0 -0
- /package/dist/components/{p-DI8DUozc.js.map → p-Q0dkeoJ6.js.map} +0 -0
- /package/dist/components/{p-XaCYqck3.js.map → p-Q7AOgrg5.js.map} +0 -0
- /package/dist/components/{p-B0OZx3JB.js.map → p-WFo1x6dN.js.map} +0 -0
- /package/dist/components/{p-CEXchU5N.js.map → p-to8BxxgT.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["tableGroupCss","tableGroupSeq","TableGroup","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","options","grouping","ariaLabel","open","emptyMessage","clearLabel","shouldRender","closing","positionReady","pos","x","y","focusRingVisible","componentId","triggerId","popupId","triggerElement","pendingInitialFocusVisible","closeTimer","position","AnchoredPositionController","getAnchor","getPopup","el","querySelector","getOwnerDocument","ownerDocument","measure","anchor","popup","sectionInsetPx","resolveCssLengthPx","TOKEN_DEFAULTS","space050","anchorRect","getBoundingClientRect","popupWidth","offsetWidth","popupFallbackWidth","popupHeight","offsetHeight","popupFallbackHeight","side","align","sideOffsetPx","TOKEN_CSS_LENGTHS","alignOffsetPx","resolveChoicePopupAlignOffset","viewportPadPx","viewportWidth","window","innerWidth","viewportHeight","innerHeight","collisionRect","resolveAnchoredOverlayBoundaryRect","apply","onReady","liveUpdate","observeResize","topLayer","interaction","AnchoredOverlayInteractionController","onOutsideActivation","close","componentDidLoad","onOpenChange","disconnectedCallback","unobserve","disconnect","clearTimeout","isOpen","teardown","connect","observe","schedule","focusInitialDataPoint","cancel","duration","resolveMotionTimeMs","motionShort2","animationDurationShort3","finishClose","setTimeout","handleKeyDown","event","key","preventDefault","tabLeavesPopup","moveFocusAfterTab","shiftKey","menuWidthLg","menuFallbackHeight","toggle","fromKeyboard","dsOpenChange","emit","restoreFocus","focusAnchor","matches","hidePopover","requestAnimationFrame","selected","CSS","escape","columnId","initial","focus","selectData","option","isInactive","dsGroupChange","value","direction","selectDirection","moveFocus","selector","currentIndex","oppositeSelector","includes","items","Array","from","querySelectorAll","filter","item","getAttribute","length","next","renderDataOption","index","h","ChoiceOptionRow","id","active","usesSubtext","Boolean","description","tabIndex","onHover","onSelect","onKeyDown","candidate","findIndex","undefined","renderDirection","label","render","name","trim","popupStyle","left","top","transform","Math","round","zIndex","visibility","Host","hidden","ref","element","variant","size","icon","labelEmphasis","pressScale","hasMenu","collapseLabel","expanded","controls","onDsClick","detail","popover","class","style","role","ChoiceListSection","heading","className","map","type","onClick","dsClear","as","color","body"],"sources":["src/wc/components/TableGroup/TableGroup.css?tag=ds-table-group&encapsulation=scoped","src/wc/components/TableGroup/TableGroup.tsx"],"sourcesContent":["@import '../../utils/choice-list.css';\n@import '../../utils/control-parts.css';\n@import '../../utils/table-caption-control.css';\n\n:host {\n display: inline-flex;\n min-inline-size: 0;\n max-inline-size: var(--dimension-menu-width-xs);\n}\n\n:host([hidden]) {\n display: none;\n}\n\n.table-group__body {\n display: grid;\n grid-template-columns: var(--dimension-menu-width-xs) var(--dimension-menu-width-sm);\n min-height: calc(var(--dimension-size-800) * 4 + var(--dimension-space-150));\n max-height: calc(100vh - var(--dimension-size-800) - var(--dimension-size-600));\n}\n\n.table-group__data-pane,\n.table-group__order-pane {\n display: flex;\n min-width: 0;\n min-height: 0;\n flex-direction: column;\n}\n\n.table-group__data-pane {\n border-inline-end: var(--dimension-stroke-width-012) solid var(--color-border-tertiary);\n}\n\n.table-group__list {\n flex: 1 1 auto;\n}\n\n.table-group__empty {\n flex: 1 1 auto;\n}\n\n.table-group__footer {\n flex: 0 0 auto;\n}\n\n.table-group__footer .ds-choice-footer__content {\n justify-content: flex-start;\n}\n\n.table-group__footer[aria-hidden='true']::before {\n visibility: hidden;\n}\n\n.table-group__footer[aria-hidden='true'] .ds-choice-footer__content {\n visibility: hidden;\n}\n\n@media (forced-colors: active) {\n .table-group__data-pane {\n border-inline-end-color: var(--ds-forced-color-content);\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport {\n resolveChoicePopupAlignOffset,\n resolveCssLengthPx,\n resolveMotionTimeMs,\n TOKEN_CSS_LENGTHS,\n TOKEN_DEFAULTS,\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';\nimport { ChoiceListSection, ChoiceOptionRow } from '../../utils/choice-list-parts';\nimport type { TableGroupingState, TableSortDirection } from '../Table/table-types';\n\nexport interface TableGroupOption {\n label: string;\n value: string;\n description?: string;\n isInactive?: boolean;\n}\n\nlet tableGroupSeq = 0;\n\n@Component({\n tag: 'ds-table-group',\n styleUrl: 'TableGroup.css',\n scoped: true,\n})\nexport class TableGroup {\n @Element() private el!: HTMLElement;\n\n /** Product-owned data points that may group the table. */\n @Prop() options: TableGroupOption[] = [];\n /** Controlled grouping field and the order of its group sections. */\n @Prop() grouping: TableGroupingState | null = null;\n /** Accessible name for the trigger and non-modal dialog. */\n @Prop({ attribute: 'aria-label' }) ariaLabel: string | null = null;\n /** Controlled popup visibility. */\n @Prop({ mutable: true }) open = false;\n /** Empty message kept in the order pane until a grouping data point is selected. */\n @Prop() emptyMessage = 'Select a group to choose its order.';\n /** Clear action label. */\n @Prop() clearLabel = 'Clear';\n\n /** Requests replacement of the complete controlled grouping state. */\n @Event() dsGroupChange!: EventEmitter<TableGroupingState>;\n /** Requests removal of the controlled grouping state. */\n @Event() dsClear!: EventEmitter<void>;\n /** Reports controlled popup visibility changes. */\n @Event() dsOpenChange!: EventEmitter<boolean>;\n\n @State() private shouldRender = false;\n @State() private closing = false;\n @State() private positionReady = false;\n @State() private pos = { x: 0, y: 0 };\n @State() private focusRingVisible = false;\n\n private readonly componentId = `ds-table-group-${++tableGroupSeq}`;\n private readonly triggerId = `${this.componentId}-trigger`;\n private readonly popupId = `${this.componentId}-popup`;\n private triggerElement: HTMLElement | null = null;\n private pendingInitialFocusVisible = false;\n private closeTimer: ReturnType<typeof setTimeout> | null = null;\n\n private readonly position = new AnchoredPositionController({\n getAnchor: () => this.triggerElement,\n getPopup: () => this.el.querySelector<HTMLElement>('.table-group-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_CSS_LENGTHS.space050, TOKEN_DEFAULTS.space050),\n alignOffsetPx: resolveChoicePopupAlignOffset({\n align: 'end',\n alignOffsetPx: 0,\n sectionInsetPx,\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\n private readonly interaction = new AnchoredOverlayInteractionController({\n getAnchor: () => this.triggerElement,\n getPopup: () => this.el.querySelector<HTMLElement>('.table-group-popup'),\n getOwnerDocument: () => this.el.ownerDocument,\n onOutsideActivation: () => this.close(),\n });\n\n componentDidLoad() {\n if (this.open) this.onOpenChange(true);\n }\n\n disconnectedCallback() {\n this.position.unobserve();\n this.interaction.disconnect();\n if (this.closeTimer) clearTimeout(this.closeTimer);\n }\n\n @Watch('open')\n onOpenChange(isOpen: boolean) {\n if (isOpen) {\n this.teardown();\n this.shouldRender = true;\n this.closing = false;\n this.positionReady = false;\n this.focusRingVisible = this.pendingInitialFocusVisible;\n this.interaction.connect();\n this.position.observe();\n this.position.schedule(() => this.focusInitialDataPoint());\n return;\n }\n if (!this.shouldRender) return;\n this.position.cancel();\n this.closing = true;\n this.interaction.disconnect();\n this.position.unobserve();\n const duration = resolveMotionTimeMs(\n TOKEN_DEFAULTS.motionShort2,\n TOKEN_DEFAULTS.animationDurationShort3\n );\n if (duration <= 0) this.finishClose();\n else this.closeTimer = setTimeout(() => this.finishClose(), duration);\n }\n\n @Listen('keydown')\n handleKeyDown(event: KeyboardEvent) {\n if (!this.shouldRender || this.closing) return;\n if (event.key === 'Escape') {\n event.preventDefault();\n this.close();\n return;\n }\n if (event.key !== 'Tab' || !this.interaction.tabLeavesPopup(event)) return;\n event.preventDefault();\n this.close(false);\n this.interaction.moveFocusAfterTab(event.shiftKey);\n }\n\n private get popupFallbackWidth(): number {\n return resolveCssLengthPx(TOKEN_DEFAULTS.menuWidthLg, TOKEN_DEFAULTS.menuWidthLg);\n }\n\n private get popupFallbackHeight(): number {\n return resolveCssLengthPx(TOKEN_DEFAULTS.menuFallbackHeight, TOKEN_DEFAULTS.menuFallbackHeight);\n }\n\n private teardown() {\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 toggle(fromKeyboard = false) {\n if (this.open) {\n this.close();\n return;\n }\n this.pendingInitialFocusVisible = fromKeyboard;\n this.open = true;\n this.dsOpenChange.emit(true);\n this.onOpenChange(true);\n }\n\n private close(restoreFocus = true) {\n if (restoreFocus) this.interaction.focusAnchor();\n this.open = false;\n this.dsOpenChange.emit(false);\n this.onOpenChange(false);\n }\n\n private finishClose() {\n const popup = this.el.querySelector<HTMLElement>('.table-group-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 focusInitialDataPoint() {\n requestAnimationFrame(() => {\n const selected = this.grouping\n ? this.el.querySelector<HTMLElement>(\n `[data-group-value=\"${CSS.escape(this.grouping.columnId)}\"] [role=\"option\"]`\n )\n : null;\n const initial =\n selected ??\n this.el.querySelector<HTMLElement>(\n '[data-group-value] [role=\"option\"]:not([aria-disabled=\"true\"])'\n );\n initial?.focus();\n this.pendingInitialFocusVisible = false;\n });\n }\n\n private selectData(option: TableGroupOption) {\n if (option.isInactive) return;\n this.dsGroupChange.emit({\n columnId: option.value,\n direction: this.grouping?.columnId === option.value ? this.grouping.direction : 'asc',\n });\n }\n\n private selectDirection(direction: TableSortDirection) {\n if (!this.grouping || this.grouping.direction === direction) return;\n this.dsGroupChange.emit({ ...this.grouping, direction });\n }\n\n private moveFocus(\n event: KeyboardEvent,\n selector: string,\n currentIndex: number,\n oppositeSelector?: string\n ) {\n if (oppositeSelector && (event.key === 'ArrowLeft' || event.key === 'ArrowRight')) {\n event.preventDefault();\n this.focusRingVisible = true;\n this.el.querySelector<HTMLElement>(oppositeSelector)?.focus();\n return;\n }\n if (!['ArrowDown', 'ArrowUp', 'Home', 'End'].includes(event.key)) return;\n event.preventDefault();\n const items = Array.from(this.el.querySelectorAll<HTMLElement>(selector)).filter(\n item => item.getAttribute('aria-disabled') !== 'true'\n );\n if (!items.length) return;\n let next: number;\n if (event.key === 'Home') next = 0;\n else if (event.key === 'End') next = items.length - 1;\n else next = (currentIndex + (event.key === 'ArrowDown' ? 1 : -1) + items.length) % items.length;\n this.focusRingVisible = true;\n items[next]?.focus();\n }\n\n private renderDataOption(option: TableGroupOption, index: number) {\n const selected = option.value === this.grouping?.columnId;\n return (\n <ChoiceOptionRow\n id={`${this.componentId}-data-${index}`}\n option={{ ...option }}\n selected={selected}\n active={selected}\n focusRingVisible={this.focusRingVisible}\n usesSubtext={Boolean(option.description)}\n tabIndex={selected || (!this.grouping && index === 0) ? 0 : -1}\n onHover={() => {\n this.focusRingVisible = false;\n }}\n onSelect={() => this.selectData(option)}\n onKeyDown={(event: KeyboardEvent) => {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.selectData(option);\n return;\n }\n this.moveFocus(\n event,\n '[data-group-value] [role=\"option\"]',\n this.options\n .filter(candidate => !candidate.isInactive)\n .findIndex(candidate => candidate.value === option.value),\n this.grouping\n ? `[data-group-direction=\"${this.grouping.direction}\"] [role=\"option\"]`\n : undefined\n );\n }}\n />\n );\n }\n\n private renderDirection(direction: TableSortDirection, label: string, index: number) {\n const selected = direction === this.grouping?.direction;\n return (\n <ChoiceOptionRow\n id={`${this.componentId}-direction-${direction}`}\n option={{ label, value: direction }}\n selected={selected}\n active={selected}\n focusRingVisible={this.focusRingVisible}\n usesSubtext={false}\n tabIndex={selected ? 0 : -1}\n onHover={() => {\n this.focusRingVisible = false;\n }}\n onSelect={() => this.selectDirection(direction)}\n onKeyDown={(event: KeyboardEvent) => {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.selectDirection(direction);\n return;\n }\n this.moveFocus(\n event,\n '[data-group-direction] [role=\"option\"]',\n index,\n `[data-group-value=\"${CSS.escape(this.grouping?.columnId ?? '')}\"] [role=\"option\"]`\n );\n }}\n />\n );\n }\n\n render() {\n const name = this.ariaLabel?.trim() || 'Group table';\n const popupStyle: Record<string, string> = {\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: '9998',\n visibility: this.positionReady ? 'visible' : 'hidden',\n };\n\n return (\n <Host hidden={this.options.length === 0 ? true : undefined}>\n {this.options.length ? (\n <ds-button-unfilled\n ref={element => {\n this.triggerElement = (element as HTMLElement) ?? null;\n }}\n id={this.triggerId}\n variant=\"icon-label\"\n size=\"md\"\n icon=\"SectionList\"\n label=\"Group\"\n labelEmphasis={false}\n pressScale={false}\n aria-label={name}\n hasMenu={true}\n collapseLabel={true}\n expanded={this.open}\n controls={this.popupId}\n onDsClick={(event: CustomEvent<MouseEvent>) => this.toggle(event.detail.detail === 0)}\n />\n ) : null}\n\n {this.shouldRender ? (\n <div\n id={this.popupId}\n popover=\"manual\"\n class={{\n 'table-group-popup': true,\n 'ds-choice-popup': true,\n 'ds-choice-popup--closing': this.closing,\n }}\n style={popupStyle}\n role=\"dialog\"\n aria-label={name}\n >\n <div class=\"table-group__body\">\n <div class=\"table-group__data-pane\">\n <ChoiceListSection\n heading=\"Data\"\n ariaLabel=\"Group data\"\n className=\"table-group__list\"\n >\n {this.options.map((option, index) => (\n <div data-group-value={option.value}>\n {this.renderDataOption(option, index)}\n </div>\n ))}\n </ChoiceListSection>\n <div\n class=\"table-group__footer ds-choice-footer\"\n aria-hidden={!this.grouping ? 'true' : undefined}\n >\n <div class=\"ds-choice-footer__content ds-control--md\">\n {this.grouping ? (\n <button\n class=\"ds-choice-footer__clear ds-text-action ds-focus-ring\"\n type=\"button\"\n onClick={() => this.dsClear.emit()}\n >\n <ds-text as=\"span\" variant=\"text-body-medium\" color=\"inherit\">\n {this.clearLabel}\n </ds-text>\n </button>\n ) : null}\n </div>\n </div>\n </div>\n\n <div class=\"table-group__order-pane\">\n {this.grouping ? (\n <ChoiceListSection\n heading=\"Order\"\n ariaLabel=\"Group order\"\n className=\"table-group__list\"\n >\n <div data-group-direction=\"asc\">\n {this.renderDirection('asc', 'Ascending', 0)}\n </div>\n <div data-group-direction=\"desc\">\n {this.renderDirection('desc', 'Descending', 1)}\n </div>\n </ChoiceListSection>\n ) : (\n <div class=\"table-group__empty ds-choice-empty ds-empty-region\">\n <ds-empty-state body={this.emptyMessage} />\n </div>\n )}\n </div>\n </div>\n </div>\n ) : null}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["tableGroupCss","DEFAULT_ORDER_OPTIONS","label","direction","tableGroupSeq","TableGroup","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","options","grouping","ariaLabel","open","emptyMessage","clearLabel","shouldRender","closing","positionReady","pos","x","y","focusRingVisible","componentId","triggerId","popupId","triggerElement","pendingInitialFocusVisible","closeTimer","position","AnchoredPositionController","getAnchor","getPopup","el","querySelector","getOwnerDocument","ownerDocument","measure","anchor","popup","sectionInsetPx","resolveCssLengthPx","TOKEN_DEFAULTS","space050","anchorRect","getBoundingClientRect","popupWidth","offsetWidth","popupFallbackWidth","popupHeight","offsetHeight","popupFallbackHeight","side","align","sideOffsetPx","TOKEN_CSS_LENGTHS","alignOffsetPx","resolveChoicePopupAlignOffset","viewportPadPx","viewportWidth","window","innerWidth","viewportHeight","innerHeight","collisionRect","resolveAnchoredOverlayBoundaryRect","apply","onReady","liveUpdate","observeResize","topLayer","interaction","AnchoredOverlayInteractionController","onOutsideActivation","close","componentDidLoad","onOpenChange","disconnectedCallback","unobserve","disconnect","clearTimeout","isOpen","teardown","connect","observe","schedule","focusInitialDataPoint","cancel","duration","resolveMotionTimeMs","motionShort2","animationDurationShort3","finishClose","setTimeout","handleKeyDown","event","key","preventDefault","tabLeavesPopup","moveFocusAfterTab","shiftKey","menuWidthLg","menuFallbackHeight","toggle","fromKeyboard","dsOpenChange","emit","restoreFocus","focusAnchor","matches","hidePopover","requestAnimationFrame","selected","CSS","escape","columnId","initial","focus","selectData","option","isInactive","value","dsGroupChange","initialOrder","orderOptions","orderBy","activeOrderOptions","configured","find","length","selectedOrderIndex","exact","findIndex","undefined","selectOrder","index","moveFocus","selector","currentIndex","oppositeSelector","includes","items","Array","from","querySelectorAll","filter","item","getAttribute","next","renderDataOption","h","ChoiceOptionRow","id","active","usesSubtext","Boolean","description","tabIndex","onHover","onSelect","onKeyDown","candidate","renderOrder","String","render","name","trim","popupStyle","left","top","transform","Math","round","zIndex","visibility","Host","hidden","ref","element","variant","size","icon","labelEmphasis","pressScale","hasMenu","collapseLabel","expanded","controls","onDsClick","detail","popover","class","style","role","ChoiceListSection","heading","className","map","type","onClick","dsClear","as","color","body"],"sources":["src/wc/components/TableGroup/TableGroup.css?tag=ds-table-group&encapsulation=scoped","src/wc/components/TableGroup/TableGroup.tsx"],"sourcesContent":["@import '../../utils/choice-list.css';\n@import '../../utils/control-parts.css';\n@import '../../utils/table-caption-control.css';\n\n:host {\n display: inline-flex;\n min-inline-size: 0;\n max-inline-size: var(--dimension-menu-width-xs);\n}\n\n:host([hidden]) {\n display: none;\n}\n\n.table-group__body {\n display: grid;\n grid-template-columns: var(--dimension-menu-width-xs) var(--dimension-menu-width-sm);\n min-height: calc(var(--dimension-size-800) * 4 + var(--dimension-space-150));\n max-height: calc(100vh - var(--dimension-size-800) - var(--dimension-size-600));\n}\n\n.table-group__data-pane,\n.table-group__order-pane {\n display: flex;\n min-width: 0;\n min-height: 0;\n flex-direction: column;\n}\n\n.table-group__data-pane {\n border-inline-end: var(--dimension-stroke-width-012) solid var(--color-border-tertiary);\n}\n\n.table-group__list {\n flex: 1 1 auto;\n}\n\n.table-group__empty {\n flex: 1 1 auto;\n}\n\n.table-group__footer {\n flex: 0 0 auto;\n}\n\n.table-group__footer .ds-choice-footer__content {\n justify-content: flex-start;\n}\n\n.table-group__footer[aria-hidden='true']::before {\n visibility: hidden;\n}\n\n.table-group__footer[aria-hidden='true'] .ds-choice-footer__content {\n visibility: hidden;\n}\n\n@media (forced-colors: active) {\n .table-group__data-pane {\n border-inline-end-color: var(--ds-forced-color-content);\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport {\n resolveChoicePopupAlignOffset,\n resolveCssLengthPx,\n resolveMotionTimeMs,\n TOKEN_CSS_LENGTHS,\n TOKEN_DEFAULTS,\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';\nimport { ChoiceListSection, ChoiceOptionRow } from '../../utils/choice-list-parts';\nimport type { TableGroupingState, TableSortDirection } from '../Table/table-types';\n\nexport interface TableGroupOrderOption {\n label: string;\n direction: TableSortDirection;\n /** Optional application-owned data point used to order the group sections. */\n orderBy?: string;\n}\n\nexport interface TableGroupOption {\n label: string;\n value: string;\n description?: string;\n isInactive?: boolean;\n /** Product-owned order choices for this grouping data point. */\n orderOptions?: TableGroupOrderOption[];\n}\n\nconst DEFAULT_ORDER_OPTIONS: TableGroupOrderOption[] = [\n { label: 'Ascending', direction: 'asc' },\n { label: 'Descending', direction: 'desc' },\n];\n\nlet tableGroupSeq = 0;\n\n@Component({\n tag: 'ds-table-group',\n styleUrl: 'TableGroup.css',\n scoped: true,\n})\nexport class TableGroup {\n @Element() private el!: HTMLElement;\n\n /** Product-owned data points that may group the table. */\n @Prop() options: TableGroupOption[] = [];\n /** Controlled grouping field and the order of its group sections. */\n @Prop() grouping: TableGroupingState | null = null;\n /** Accessible name for the trigger and non-modal dialog. */\n @Prop({ attribute: 'aria-label' }) ariaLabel: string | null = null;\n /** Controlled popup visibility. */\n @Prop({ mutable: true }) open = false;\n /** Empty message kept in the order pane until a grouping data point is selected. */\n @Prop() emptyMessage = 'Select a group to choose its order.';\n /** Clear action label. */\n @Prop() clearLabel = 'Clear';\n\n /** Requests replacement of the complete controlled grouping state. */\n @Event() dsGroupChange!: EventEmitter<TableGroupingState>;\n /** Requests removal of the controlled grouping state. */\n @Event() dsClear!: EventEmitter<void>;\n /** Reports controlled popup visibility changes. */\n @Event() dsOpenChange!: EventEmitter<boolean>;\n\n @State() private shouldRender = false;\n @State() private closing = false;\n @State() private positionReady = false;\n @State() private pos = { x: 0, y: 0 };\n @State() private focusRingVisible = false;\n\n private readonly componentId = `ds-table-group-${++tableGroupSeq}`;\n private readonly triggerId = `${this.componentId}-trigger`;\n private readonly popupId = `${this.componentId}-popup`;\n private triggerElement: HTMLElement | null = null;\n private pendingInitialFocusVisible = false;\n private closeTimer: ReturnType<typeof setTimeout> | null = null;\n\n private readonly position = new AnchoredPositionController({\n getAnchor: () => this.triggerElement,\n getPopup: () => this.el.querySelector<HTMLElement>('.table-group-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_CSS_LENGTHS.space050, TOKEN_DEFAULTS.space050),\n alignOffsetPx: resolveChoicePopupAlignOffset({\n align: 'end',\n alignOffsetPx: 0,\n sectionInsetPx,\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\n private readonly interaction = new AnchoredOverlayInteractionController({\n getAnchor: () => this.triggerElement,\n getPopup: () => this.el.querySelector<HTMLElement>('.table-group-popup'),\n getOwnerDocument: () => this.el.ownerDocument,\n onOutsideActivation: () => this.close(),\n });\n\n componentDidLoad() {\n if (this.open) this.onOpenChange(true);\n }\n\n disconnectedCallback() {\n this.position.unobserve();\n this.interaction.disconnect();\n if (this.closeTimer) clearTimeout(this.closeTimer);\n }\n\n @Watch('open')\n onOpenChange(isOpen: boolean) {\n if (isOpen) {\n this.teardown();\n this.shouldRender = true;\n this.closing = false;\n this.positionReady = false;\n this.focusRingVisible = this.pendingInitialFocusVisible;\n this.interaction.connect();\n this.position.observe();\n this.position.schedule(() => this.focusInitialDataPoint());\n return;\n }\n if (!this.shouldRender) return;\n this.position.cancel();\n this.closing = true;\n this.interaction.disconnect();\n this.position.unobserve();\n const duration = resolveMotionTimeMs(\n TOKEN_DEFAULTS.motionShort2,\n TOKEN_DEFAULTS.animationDurationShort3\n );\n if (duration <= 0) this.finishClose();\n else this.closeTimer = setTimeout(() => this.finishClose(), duration);\n }\n\n @Listen('keydown')\n handleKeyDown(event: KeyboardEvent) {\n if (!this.shouldRender || this.closing) return;\n if (event.key === 'Escape') {\n event.preventDefault();\n this.close();\n return;\n }\n if (event.key !== 'Tab' || !this.interaction.tabLeavesPopup(event)) return;\n event.preventDefault();\n this.close(false);\n this.interaction.moveFocusAfterTab(event.shiftKey);\n }\n\n private get popupFallbackWidth(): number {\n return resolveCssLengthPx(TOKEN_DEFAULTS.menuWidthLg, TOKEN_DEFAULTS.menuWidthLg);\n }\n\n private get popupFallbackHeight(): number {\n return resolveCssLengthPx(TOKEN_DEFAULTS.menuFallbackHeight, TOKEN_DEFAULTS.menuFallbackHeight);\n }\n\n private teardown() {\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 toggle(fromKeyboard = false) {\n if (this.open) {\n this.close();\n return;\n }\n this.pendingInitialFocusVisible = fromKeyboard;\n this.open = true;\n this.dsOpenChange.emit(true);\n this.onOpenChange(true);\n }\n\n private close(restoreFocus = true) {\n if (restoreFocus) this.interaction.focusAnchor();\n this.open = false;\n this.dsOpenChange.emit(false);\n this.onOpenChange(false);\n }\n\n private finishClose() {\n const popup = this.el.querySelector<HTMLElement>('.table-group-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 focusInitialDataPoint() {\n requestAnimationFrame(() => {\n const selected = this.grouping\n ? this.el.querySelector<HTMLElement>(\n `[data-group-value=\"${CSS.escape(this.grouping.columnId)}\"] [role=\"option\"]`\n )\n : null;\n const initial =\n selected ??\n this.el.querySelector<HTMLElement>(\n '[data-group-value] [role=\"option\"]:not([aria-disabled=\"true\"])'\n );\n initial?.focus();\n this.pendingInitialFocusVisible = false;\n });\n }\n\n private selectData(option: TableGroupOption) {\n if (option.isInactive) return;\n if (this.grouping?.columnId === option.value) {\n this.dsGroupChange.emit({ ...this.grouping });\n return;\n }\n const initialOrder = option.orderOptions?.[0];\n this.dsGroupChange.emit({\n columnId: option.value,\n direction: initialOrder?.direction ?? 'asc',\n ...(initialOrder?.orderBy ? { orderBy: initialOrder.orderBy } : {}),\n });\n }\n\n private get activeOrderOptions(): TableGroupOrderOption[] {\n const configured = this.options.find(\n option => option.value === this.grouping?.columnId\n )?.orderOptions;\n return configured?.length ? configured : DEFAULT_ORDER_OPTIONS;\n }\n\n private get selectedOrderIndex(): number {\n if (!this.grouping) return -1;\n const exact = this.activeOrderOptions.findIndex(\n option =>\n option.direction === this.grouping?.direction && option.orderBy === this.grouping?.orderBy\n );\n if (exact >= 0) return exact;\n if (this.grouping.orderBy === undefined) {\n return this.activeOrderOptions.findIndex(\n option => option.direction === this.grouping?.direction\n );\n }\n return -1;\n }\n\n private selectOrder(option: TableGroupOrderOption, index: number) {\n if (!this.grouping || this.selectedOrderIndex === index) return;\n const grouping: TableGroupingState = {\n columnId: this.grouping.columnId,\n direction: option.direction,\n };\n if (option.orderBy) grouping.orderBy = option.orderBy;\n this.dsGroupChange.emit(grouping);\n }\n\n private moveFocus(\n event: KeyboardEvent,\n selector: string,\n currentIndex: number,\n oppositeSelector?: string\n ) {\n if (oppositeSelector && (event.key === 'ArrowLeft' || event.key === 'ArrowRight')) {\n event.preventDefault();\n this.focusRingVisible = true;\n this.el.querySelector<HTMLElement>(oppositeSelector)?.focus();\n return;\n }\n if (!['ArrowDown', 'ArrowUp', 'Home', 'End'].includes(event.key)) return;\n event.preventDefault();\n const items = Array.from(this.el.querySelectorAll<HTMLElement>(selector)).filter(\n item => item.getAttribute('aria-disabled') !== 'true'\n );\n if (!items.length) return;\n let next: number;\n if (event.key === 'Home') next = 0;\n else if (event.key === 'End') next = items.length - 1;\n else next = (currentIndex + (event.key === 'ArrowDown' ? 1 : -1) + items.length) % items.length;\n this.focusRingVisible = true;\n items[next]?.focus();\n }\n\n private renderDataOption(option: TableGroupOption, index: number) {\n const selected = option.value === this.grouping?.columnId;\n return (\n <ChoiceOptionRow\n id={`${this.componentId}-data-${index}`}\n option={{ ...option }}\n selected={selected}\n active={selected}\n focusRingVisible={this.focusRingVisible}\n usesSubtext={Boolean(option.description)}\n tabIndex={selected || (!this.grouping && index === 0) ? 0 : -1}\n onHover={() => {\n this.focusRingVisible = false;\n }}\n onSelect={() => this.selectData(option)}\n onKeyDown={(event: KeyboardEvent) => {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.selectData(option);\n return;\n }\n this.moveFocus(\n event,\n '[data-group-value] [role=\"option\"]',\n this.options\n .filter(candidate => !candidate.isInactive)\n .findIndex(candidate => candidate.value === option.value),\n this.grouping\n ? `[data-group-order-index=\"${this.selectedOrderIndex}\"] [role=\"option\"]`\n : undefined\n );\n }}\n />\n );\n }\n\n private renderOrder(option: TableGroupOrderOption, index: number) {\n const selected = index === this.selectedOrderIndex;\n return (\n <ChoiceOptionRow\n id={`${this.componentId}-order-${index}`}\n option={{ label: option.label, value: String(index) }}\n selected={selected}\n active={selected}\n focusRingVisible={this.focusRingVisible}\n usesSubtext={false}\n tabIndex={selected ? 0 : -1}\n onHover={() => {\n this.focusRingVisible = false;\n }}\n onSelect={() => this.selectOrder(option, index)}\n onKeyDown={(event: KeyboardEvent) => {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.selectOrder(option, index);\n return;\n }\n this.moveFocus(\n event,\n '[data-group-order-index] [role=\"option\"]',\n index,\n `[data-group-value=\"${CSS.escape(this.grouping?.columnId ?? '')}\"] [role=\"option\"]`\n );\n }}\n />\n );\n }\n\n render() {\n const name = this.ariaLabel?.trim() || 'Group table';\n const popupStyle: Record<string, string> = {\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: '9998',\n visibility: this.positionReady ? 'visible' : 'hidden',\n };\n\n return (\n <Host hidden={this.options.length === 0 ? true : undefined}>\n {this.options.length ? (\n <ds-button-unfilled\n ref={element => {\n this.triggerElement = (element as HTMLElement) ?? null;\n }}\n id={this.triggerId}\n variant=\"icon-label\"\n size=\"md\"\n icon=\"SectionList\"\n label=\"Group\"\n labelEmphasis={false}\n pressScale={false}\n aria-label={name}\n hasMenu={true}\n collapseLabel={true}\n expanded={this.open}\n controls={this.popupId}\n onDsClick={(event: CustomEvent<MouseEvent>) => this.toggle(event.detail.detail === 0)}\n />\n ) : null}\n\n {this.shouldRender ? (\n <div\n id={this.popupId}\n popover=\"manual\"\n class={{\n 'table-group-popup': true,\n 'ds-choice-popup': true,\n 'ds-choice-popup--closing': this.closing,\n }}\n style={popupStyle}\n role=\"dialog\"\n aria-label={name}\n >\n <div class=\"table-group__body\">\n <div class=\"table-group__data-pane\">\n <ChoiceListSection\n heading=\"Data\"\n ariaLabel=\"Group data\"\n className=\"table-group__list\"\n >\n {this.options.map((option, index) => (\n <div data-group-value={option.value}>\n {this.renderDataOption(option, index)}\n </div>\n ))}\n </ChoiceListSection>\n <div\n class=\"table-group__footer ds-choice-footer\"\n aria-hidden={!this.grouping ? 'true' : undefined}\n >\n <div class=\"ds-choice-footer__content ds-control--md\">\n {this.grouping ? (\n <button\n class=\"ds-choice-footer__clear ds-text-action ds-focus-ring\"\n type=\"button\"\n onClick={() => this.dsClear.emit()}\n >\n <ds-text as=\"span\" variant=\"text-body-medium\" color=\"inherit\">\n {this.clearLabel}\n </ds-text>\n </button>\n ) : null}\n </div>\n </div>\n </div>\n\n <div class=\"table-group__order-pane\">\n {this.grouping ? (\n <ChoiceListSection\n heading=\"Order\"\n ariaLabel=\"Group order\"\n className=\"table-group__list\"\n >\n {this.activeOrderOptions.map((option, index) => (\n <div data-group-order-index={index}>{this.renderOrder(option, index)}</div>\n ))}\n </ChoiceListSection>\n ) : (\n <div class=\"table-group__empty ds-choice-empty ds-empty-region\">\n <ds-empty-state body={this.emptyMessage} />\n </div>\n )}\n </div>\n </div>\n </div>\n ) : null}\n </Host>\n );\n }\n}\n"],"mappings":"yjBAAA,MAAMA,EAAgB,IAAM,go1BCyC5B,MAAMC,EAAiD,CACrD,CAAEC,MAAO,YAAaC,UAAW,OACjC,CAAED,MAAO,aAAcC,UAAW,SAGpC,IAAIC,EAAgB,E,MAOPC,EAAUC,EAAA,MAAAD,UAAAE,EALvB,WAAAC,CAAAC,G,qKASUC,KAAAC,QAA8B,GAE9BD,KAAAE,SAAsC,KAEXF,KAAAG,UAA2B,KAErCH,KAAAI,KAAO,MAExBJ,KAAAK,aAAe,sCAEfL,KAAAM,WAAa,QASJN,KAAAO,aAAe,MACfP,KAAAQ,QAAU,MACVR,KAAAS,cAAgB,MAChBT,KAAAU,IAAM,CAAEC,EAAG,EAAGC,EAAG,GACjBZ,KAAAa,iBAAmB,MAEnBb,KAAAc,YAAc,oBAAoBpB,IAClCM,KAAAe,UAAY,GAAGf,KAAKc,sBACpBd,KAAAgB,QAAU,GAAGhB,KAAKc,oBAC3Bd,KAAAiB,eAAqC,KACrCjB,KAAAkB,2BAA6B,MAC7BlB,KAAAmB,WAAmD,KAE1CnB,KAAAoB,SAAW,IAAIC,EAA2B,CACzDC,UAAW,IAAMtB,KAAKiB,eACtBM,SAAU,IAAMvB,KAAKwB,GAAGC,cAA2B,sBACnDC,iBAAkB,IAAM1B,KAAKwB,GAAGG,cAChCC,QAAS,CAACC,EAAQC,KAChB,IAAK9B,KAAKI,KAAM,OAAO,KACvB,MAAM2B,EAAiBC,EAAmBC,EAAeC,SAAUD,EAAeC,UAClF,MAAO,CACLC,WAAYN,EAAOO,wBACnBC,WAAYP,EAAMQ,aAAetC,KAAKuC,mBACtCC,YAAaV,EAAMW,cAAgBzC,KAAK0C,oBACxCC,KAAM,SACNC,MAAO,MACPC,aAAcb,EAAmBc,EAAkBZ,SAAUD,EAAeC,UAC5Ea,cAAeC,EAA8B,CAC3CJ,MAAO,MACPG,cAAe,EACfhB,mBAEFkB,cAAejB,EAAmBC,EAAeC,SAAUD,EAAeC,UAC1EgB,cAAeC,OAAOC,WACtBC,eAAgBF,OAAOG,YACvBC,cAAeC,EAAmC3B,GACnD,EAEH4B,MAAO,EAAG9C,IAAGC,QACXZ,KAAKU,IAAM,CAAEC,IAAGC,IAAG,EAErB8C,QAAS,KACP1D,KAAKS,cAAgB,IAAI,EAE3BkD,WAAY,eACZC,cAAe,KACfC,SAAU,OAGK7D,KAAA8D,YAAc,IAAIC,EAAqC,CACtEzC,UAAW,IAAMtB,KAAKiB,eACtBM,SAAU,IAAMvB,KAAKwB,GAAGC,cAA2B,sBACnDC,iBAAkB,IAAM1B,KAAKwB,GAAGG,cAChCqC,oBAAqB,IAAMhE,KAAKiE,SAoWnC,CAjWC,gBAAAC,GACE,GAAIlE,KAAKI,KAAMJ,KAAKmE,aAAa,K,CAGnC,oBAAAC,GACEpE,KAAKoB,SAASiD,YACdrE,KAAK8D,YAAYQ,aACjB,GAAItE,KAAKmB,WAAYoD,aAAavE,KAAKmB,W,CAIzC,YAAAgD,CAAaK,GACX,GAAIA,EAAQ,CACVxE,KAAKyE,WACLzE,KAAKO,aAAe,KACpBP,KAAKQ,QAAU,MACfR,KAAKS,cAAgB,MACrBT,KAAKa,iBAAmBb,KAAKkB,2BAC7BlB,KAAK8D,YAAYY,UACjB1E,KAAKoB,SAASuD,UACd3E,KAAKoB,SAASwD,UAAS,IAAM5E,KAAK6E,0BAClC,M,CAEF,IAAK7E,KAAKO,aAAc,OACxBP,KAAKoB,SAAS0D,SACd9E,KAAKQ,QAAU,KACfR,KAAK8D,YAAYQ,aACjBtE,KAAKoB,SAASiD,YACd,MAAMU,EAAWC,EACf/C,EAAegD,aACfhD,EAAeiD,yBAEjB,GAAIH,GAAY,EAAG/E,KAAKmF,mBACnBnF,KAAKmB,WAAaiE,YAAW,IAAMpF,KAAKmF,eAAeJ,E,CAI9D,aAAAM,CAAcC,GACZ,IAAKtF,KAAKO,cAAgBP,KAAKQ,QAAS,OACxC,GAAI8E,EAAMC,MAAQ,SAAU,CAC1BD,EAAME,iBACNxF,KAAKiE,QACL,M,CAEF,GAAIqB,EAAMC,MAAQ,QAAUvF,KAAK8D,YAAY2B,eAAeH,GAAQ,OACpEA,EAAME,iBACNxF,KAAKiE,MAAM,OACXjE,KAAK8D,YAAY4B,kBAAkBJ,EAAMK,S,CAG3C,sBAAYpD,GACV,OAAOP,EAAmBC,EAAe2D,YAAa3D,EAAe2D,Y,CAGvE,uBAAYlD,GACV,OAAOV,EAAmBC,EAAe4D,mBAAoB5D,EAAe4D,mB,CAGtE,QAAApB,GACNzE,KAAKoB,SAASiD,YACdrE,KAAK8D,YAAYQ,aACjB,GAAItE,KAAKmB,WAAY,CACnBoD,aAAavE,KAAKmB,YAClBnB,KAAKmB,WAAa,I,EAId,MAAA2E,CAAOC,EAAe,OAC5B,GAAI/F,KAAKI,KAAM,CACbJ,KAAKiE,QACL,M,CAEFjE,KAAKkB,2BAA6B6E,EAClC/F,KAAKI,KAAO,KACZJ,KAAKgG,aAAaC,KAAK,MACvBjG,KAAKmE,aAAa,K,CAGZ,KAAAF,CAAMiC,EAAe,MAC3B,GAAIA,EAAclG,KAAK8D,YAAYqC,cACnCnG,KAAKI,KAAO,MACZJ,KAAKgG,aAAaC,KAAK,OACvBjG,KAAKmE,aAAa,M,CAGZ,WAAAgB,GACN,MAAMrD,EAAQ9B,KAAKwB,GAAGC,cAA2B,sBACjD,GAAIK,GAAOsE,QAAQ,iBAAkBtE,EAAMuE,cAC3CrG,KAAKO,aAAe,MACpBP,KAAKQ,QAAU,MACfR,KAAKmB,WAAa,I,CAGZ,qBAAA0D,GACNyB,uBAAsB,KACpB,MAAMC,EAAWvG,KAAKE,SAClBF,KAAKwB,GAAGC,cACN,sBAAsB+E,IAAIC,OAAOzG,KAAKE,SAASwG,+BAEjD,KACJ,MAAMC,EACJJ,GACAvG,KAAKwB,GAAGC,cACN,kEAEJkF,GAASC,QACT5G,KAAKkB,2BAA6B,KAAK,G,CAInC,UAAA2F,CAAWC,GACjB,GAAIA,EAAOC,WAAY,OACvB,GAAI/G,KAAKE,UAAUwG,WAAaI,EAAOE,MAAO,CAC5ChH,KAAKiH,cAAchB,KAAK,IAAKjG,KAAKE,WAClC,M,CAEF,MAAMgH,EAAeJ,EAAOK,eAAe,GAC3CnH,KAAKiH,cAAchB,KAAK,CACtBS,SAAUI,EAAOE,MACjBvH,UAAWyH,GAAczH,WAAa,SAClCyH,GAAcE,QAAU,CAAEA,QAASF,EAAaE,SAAY,I,CAIpE,sBAAYC,GACV,MAAMC,EAAatH,KAAKC,QAAQsH,MAC9BT,GAAUA,EAAOE,QAAUhH,KAAKE,UAAUwG,YACzCS,aACH,OAAOG,GAAYE,OAASF,EAAa/H,C,CAG3C,sBAAYkI,GACV,IAAKzH,KAAKE,SAAU,OAAO,EAC3B,MAAMwH,EAAQ1H,KAAKqH,mBAAmBM,WACpCb,GACEA,EAAOrH,YAAcO,KAAKE,UAAUT,WAAaqH,EAAOM,UAAYpH,KAAKE,UAAUkH,UAEvF,GAAIM,GAAS,EAAG,OAAOA,EACvB,GAAI1H,KAAKE,SAASkH,UAAYQ,UAAW,CACvC,OAAO5H,KAAKqH,mBAAmBM,WAC7Bb,GAAUA,EAAOrH,YAAcO,KAAKE,UAAUT,W,CAGlD,OAAO,C,CAGD,WAAAoI,CAAYf,EAA+BgB,GACjD,IAAK9H,KAAKE,UAAYF,KAAKyH,qBAAuBK,EAAO,OACzD,MAAM5H,EAA+B,CACnCwG,SAAU1G,KAAKE,SAASwG,SACxBjH,UAAWqH,EAAOrH,WAEpB,GAAIqH,EAAOM,QAASlH,EAASkH,QAAUN,EAAOM,QAC9CpH,KAAKiH,cAAchB,KAAK/F,E,CAGlB,SAAA6H,CACNzC,EACA0C,EACAC,EACAC,GAEA,GAAIA,IAAqB5C,EAAMC,MAAQ,aAAeD,EAAMC,MAAQ,cAAe,CACjFD,EAAME,iBACNxF,KAAKa,iBAAmB,KACxBb,KAAKwB,GAAGC,cAA2ByG,IAAmBtB,QACtD,M,CAEF,IAAK,CAAC,YAAa,UAAW,OAAQ,OAAOuB,SAAS7C,EAAMC,KAAM,OAClED,EAAME,iBACN,MAAM4C,EAAQC,MAAMC,KAAKtI,KAAKwB,GAAG+G,iBAA8BP,IAAWQ,QACxEC,GAAQA,EAAKC,aAAa,mBAAqB,SAEjD,IAAKN,EAAMZ,OAAQ,OACnB,IAAImB,EACJ,GAAIrD,EAAMC,MAAQ,OAAQoD,EAAO,OAC5B,GAAIrD,EAAMC,MAAQ,MAAOoD,EAAOP,EAAMZ,OAAS,OAC/CmB,GAAQV,GAAgB3C,EAAMC,MAAQ,YAAc,GAAI,GAAM6C,EAAMZ,QAAUY,EAAMZ,OACzFxH,KAAKa,iBAAmB,KACxBuH,EAAMO,IAAO/B,O,CAGP,gBAAAgC,CAAiB9B,EAA0BgB,GACjD,MAAMvB,EAAWO,EAAOE,QAAUhH,KAAKE,UAAUwG,SACjD,OACEmC,EAACC,EAAe,CACdC,GAAI,GAAG/I,KAAKc,oBAAoBgH,IAChChB,OAAQ,IAAKA,GACbP,SAAUA,EACVyC,OAAQzC,EACR1F,iBAAkBb,KAAKa,iBACvBoI,YAAaC,QAAQpC,EAAOqC,aAC5BC,SAAU7C,IAAcvG,KAAKE,UAAY4H,IAAU,EAAK,GAAI,EAC5DuB,QAAS,KACPrJ,KAAKa,iBAAmB,KAAK,EAE/ByI,SAAU,IAAMtJ,KAAK6G,WAAWC,GAChCyC,UAAYjE,IACV,GAAIA,EAAMC,MAAQ,SAAWD,EAAMC,MAAQ,IAAK,CAC9CD,EAAME,iBACNxF,KAAK6G,WAAWC,GAChB,M,CAEF9G,KAAK+H,UACHzC,EACA,qCACAtF,KAAKC,QACFuI,QAAOgB,IAAcA,EAAUzC,aAC/BY,WAAU6B,GAAaA,EAAUxC,QAAUF,EAAOE,QACrDhH,KAAKE,SACD,4BAA4BF,KAAKyH,uCACjCG,UACL,G,CAMD,WAAA6B,CAAY3C,EAA+BgB,GACjD,MAAMvB,EAAWuB,IAAU9H,KAAKyH,mBAChC,OACEoB,EAACC,EAAe,CACdC,GAAI,GAAG/I,KAAKc,qBAAqBgH,IACjChB,OAAQ,CAAEtH,MAAOsH,EAAOtH,MAAOwH,MAAO0C,OAAO5B,IAC7CvB,SAAUA,EACVyC,OAAQzC,EACR1F,iBAAkBb,KAAKa,iBACvBoI,YAAa,MACbG,SAAU7C,EAAW,GAAI,EACzB8C,QAAS,KACPrJ,KAAKa,iBAAmB,KAAK,EAE/ByI,SAAU,IAAMtJ,KAAK6H,YAAYf,EAAQgB,GACzCyB,UAAYjE,IACV,GAAIA,EAAMC,MAAQ,SAAWD,EAAMC,MAAQ,IAAK,CAC9CD,EAAME,iBACNxF,KAAK6H,YAAYf,EAAQgB,GACzB,M,CAEF9H,KAAK+H,UACHzC,EACA,2CACAwC,EACA,sBAAsBtB,IAAIC,OAAOzG,KAAKE,UAAUwG,UAAY,wBAC7D,G,CAMT,MAAAiD,GACE,MAAMC,EAAO5J,KAAKG,WAAW0J,QAAU,cACvC,MAAMC,EAAqC,CACzC1I,SAAU,QACV2I,KAAM,IACNC,IAAK,IACLC,UAAW,aAAaC,KAAKC,MAAMnK,KAAKU,IAAIC,SAASuJ,KAAKC,MAAMnK,KAAKU,IAAIE,QACzEwJ,OAAQ,OACRC,WAAYrK,KAAKS,cAAgB,UAAY,UAG/C,OACEoI,EAACyB,EAAI,CAAA/E,IAAA,2CAACgF,OAAQvK,KAAKC,QAAQuH,SAAW,EAAI,KAAOI,WAC9C5H,KAAKC,QAAQuH,OACZqB,EAAA,sBACE2B,IAAKC,IACHzK,KAAKiB,eAAkBwJ,GAA2B,IAAI,EAExD1B,GAAI/I,KAAKe,UACT2J,QAAQ,aACRC,KAAK,KACLC,KAAK,cACLpL,MAAM,QACNqL,cAAe,MACfC,WAAY,MAAK,aACLlB,EACZmB,QAAS,KACTC,cAAe,KACfC,SAAUjL,KAAKI,KACf8K,SAAUlL,KAAKgB,QACfmK,UAAY7F,GAAmCtF,KAAK8F,OAAOR,EAAM8F,OAAOA,SAAW,KAEnF,KAEHpL,KAAKO,aACJsI,EAAA,OACEE,GAAI/I,KAAKgB,QACTqK,QAAQ,SACRC,MAAO,CACL,oBAAqB,KACrB,kBAAmB,KACnB,2BAA4BtL,KAAKQ,SAEnC+K,MAAOzB,EACP0B,KAAK,SAAQ,aACD5B,GAEZf,EAAA,OAAKyC,MAAM,qBACTzC,EAAA,OAAKyC,MAAM,0BACTzC,EAAC4C,EAAiB,CAChBC,QAAQ,OACRvL,UAAU,aACVwL,UAAU,qBAET3L,KAAKC,QAAQ2L,KAAI,CAAC9E,EAAQgB,IACzBe,EAAA,0BAAuB/B,EAAOE,OAC3BhH,KAAK4I,iBAAiB9B,EAAQgB,OAIrCe,EAAA,OACEyC,MAAM,uCAAsC,eAC9BtL,KAAKE,SAAW,OAAS0H,WAEvCiB,EAAA,OAAKyC,MAAM,4CACRtL,KAAKE,SACJ2I,EAAA,UACEyC,MAAM,uDACNO,KAAK,SACLC,QAAS,IAAM9L,KAAK+L,QAAQ9F,QAE5B4C,EAAA,WAASmD,GAAG,OAAOtB,QAAQ,mBAAmBuB,MAAM,WACjDjM,KAAKM,aAGR,QAKVuI,EAAA,OAAKyC,MAAM,2BACRtL,KAAKE,SACJ2I,EAAC4C,EAAiB,CAChBC,QAAQ,QACRvL,UAAU,cACVwL,UAAU,qBAET3L,KAAKqH,mBAAmBuE,KAAI,CAAC9E,EAAQgB,IACpCe,EAAA,gCAA6Bf,GAAQ9H,KAAKyJ,YAAY3C,EAAQgB,OAIlEe,EAAA,OAAKyC,MAAM,sDACTzC,EAAA,kBAAgBqD,KAAMlM,KAAKK,mBAMnC,K","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as e,H as s,c as t,h as i,a,t as n}from"./index.js";import{d}from"./p-
|
|
1
|
+
import{p as e,H as s,c as t,h as i,a,t as n}from"./index.js";import{d}from"./p-BMzn2Cmw.js";import{d as o}from"./p-Bjt_8sLe.js";import{d as l}from"./p-6_CNVbqa.js";import{d as r}from"./p-BXDLR072.js";import{d as h}from"./p-BVz-r3g0.js";import{d as c}from"./p-DVLghmNY.js";import{d as m}from"./p-Cea7rROU.js";import{d as f}from"./p-to8BxxgT.js";import{d as u}from"./p-0XTyQNRG.js";import{d as b}from"./p-DlbhmXjH.js";import{d as p}from"./p-B3sRZBZk.js";import{d as v}from"./p-GEi3hDJQ.js";import{d as w}from"./p-Q7AOgrg5.js";import{d as g}from"./p-DGkn8FwV.js";import{d as k}from"./p-BIGpc__9.js";import{d as D}from"./p-DQQsS9Rx.js";import{d as E}from"./p-DW8ssbfI.js";const x=()=>`.sc-ds-table-saved-views-h{--ds-choice-popup-min-inline-size:var(--dimension-menu-width-xs);display:inline-block;min-inline-size:0;max-inline-size:var(--dimension-menu-width-xs)}ds-select.sc-ds-table-saved-views{display:block;min-inline-size:0;max-inline-size:100%}.table-saved-views__dialog-actions.sc-ds-table-saved-views{display:flex;align-items:center;justify-content:flex-start;gap:var(--dimension-space-100)}`;let y=0;const j=e(class e extends s{constructor(e){super();if(e!==false){this.__registerHost()}this.dsViewChange=t(this,"dsViewChange",7);this.dsViewCreate=t(this,"dsViewCreate",7);this.dsViewRename=t(this,"dsViewRename",7);this.dsViewRemove=t(this,"dsViewRemove",7);this.dsViewSave=t(this,"dsViewSave",7);this.dsViewDiscard=t(this,"dsViewDiscard",7);this.views=[];this.value="__default__";this.dirty=false;this.defaultViewId="__default__";this.defaultViewLabel="Default";this.label="Saved views";this.triggerLabel="Views";this.createLabel="New view";this.actionViewId=null;this.actionMenuOpen=false;this.actionMenuInitialFocusVisible=false;this.dialogOpen=false;this.dialogMode="create";this.dialogViewId=null;this.nameDraft="";this.nameError="";this.componentId=`ds-table-saved-views-${++y}`;this.selectId=`${this.componentId}-select`;this.actionMenuId=`${this.componentId}-actions`;this.fieldId=`${this.componentId}-name-field`;this.inputId=`${this.componentId}-name-input`;this.actionItems=[{label:"Rename",value:"rename"},{label:"Remove",value:"remove",isDestructive:true}]}get selectedCustomView(){return this.views.find((e=>e.id===this.value))}get dialogView(){return this.views.find((e=>e.id===this.dialogViewId))}get sections(){const e=this.views.map((e=>({label:e.label,value:e.id,subtextActions:this.dirty&&e.id===this.selectedCustomView?.id?[{label:"Save",value:"save"},{label:"Discard",value:"discard",tone:"negative"}]:undefined,action:{label:`Options for ${e.label}`,controls:this.actionMenuId,expanded:this.actionViewId===e.id&&this.actionMenuOpen}})));const s={header:"Templates",options:[{label:this.defaultViewLabel,value:this.defaultViewId}],divider:e.length>0};return e.length>0?[s,{header:"Custom",options:e}]:[s]}handleViewChange(e){if(typeof e==="string")this.dsViewChange.emit({viewId:e})}handleSubtextAction(e){const s=this.selectedCustomView;if(!s||!this.dirty||e.value!==s.id)return;if(e.actionValue==="save")this.dsViewSave.emit({viewId:s.id});if(e.actionValue==="discard")this.dsViewDiscard.emit({viewId:s.id})}handleOptionAction(e){if(!this.views.some((s=>s.id===e.value)))return;this.actionMenuInitialFocusVisible=e.originalEvent.detail===0;if(this.actionViewId===e.value&&this.actionMenuOpen){this.actionMenuOpen=false;return}this.actionViewId=e.value;this.actionAnchorId=e.anchorId;this.actionMenuOpen=true}handleActionSelect(e){const s=this.actionViewId;this.actionMenuOpen=false;if(!s)return;if(e.detail.value==="rename")this.openDialog("rename",s);if(e.detail.value==="remove")this.dsViewRemove.emit({viewId:s})}openDialog(e,s=null){const t=e==="rename"?this.views.find((e=>e.id===s)):undefined;if(e==="rename"&&!t)return;this.dialogMode=e;this.dialogViewId=t?.id??null;this.nameDraft=t?.label??"";this.nameError="";this.dialogOpen=true;requestAnimationFrame((()=>{requestAnimationFrame((()=>{const e=this.el.querySelector(`#${this.inputId}`);void e?.setFocus?.()}))}))}validateName(){const e=this.nameDraft.trim();if(!e)return"View name is required.";const s=this.views.some((s=>s.id!==this.dialogViewId&&s.label.trim().toLocaleLowerCase()===e.toLocaleLowerCase()));if(s||this.defaultViewLabel.trim().toLocaleLowerCase()===e.toLocaleLowerCase()){return"A view with this name already exists."}return""}submitDialog(){const e=this.validateName();if(e){this.nameError=e;return}const s=this.nameDraft.trim();if(this.dialogMode==="rename"&&this.dialogView){this.dsViewRename.emit({viewId:this.dialogView.id,name:s})}else{this.dsViewCreate.emit({name:s})}this.dialogOpen=false}finishDialogClose(){if(this.dialogOpen)return;this.dialogViewId=null;this.nameDraft="";this.nameError="";const e=this.el.querySelector(`#${this.selectId}`);void e?.setFocus?.()}render(){return i(a,{key:"01de9feec0a8ea96015a6e6815a7079e361d6536"},i("ds-select",{key:"5e28320496edd027febe3cb1ea1eba0ecdc1c151",id:this.selectId,size:"md",width:"fill",placeholder:this.label,"aria-label":this.label,sections:this.sections,value:this.value,triggerLabel:this.selectedCustomView?undefined:this.triggerLabel,triggerLabelPlaceholder:!this.selectedCustomView,dot:this.dirty&&Boolean(this.selectedCustomView),footerActionLabel:this.createLabel,activeFill:false,allowClear:false,onDsChange:e=>this.handleViewChange(e.detail),onDsFooterAction:()=>this.openDialog("create"),onDsOptionSubtextAction:e=>this.handleSubtextAction(e.detail),onDsOptionAction:e=>this.handleOptionAction(e.detail)}),i("ds-menu",{key:"dc03d3b6e3e0e036e9eebd0a0c1d8c467c099ded",id:this.actionMenuId,anchorId:this.actionAnchorId,menuLabel:"Saved view options",side:"bottom",align:"end",menuWidth:"max-content",minWidth:"0",items:this.actionItems,open:this.actionMenuOpen,initialFocusVisible:this.actionMenuInitialFocusVisible,onDsClose:()=>this.actionMenuOpen=false,onDsAfterClose:()=>{if(this.actionMenuOpen)return;this.actionViewId=null;this.actionAnchorId=undefined},onDsSelect:e=>this.handleActionSelect(e)}),i("ds-modal",{key:"21e01cf0bc7d8f23acecb3e7815541401684e8f3",open:this.dialogOpen,heading:this.dialogMode==="rename"?"Rename view":"Save as new view",modalWidth:"sm",onDsClose:()=>this.dialogOpen=false,onDsAfterClose:()=>this.finishDialogClose()},i("ds-field",{key:"346e2d5dd70d00a1787da39a2eb1624b4e861bb2",label:"Name",fieldId:this.fieldId,error:this.nameError.length>0,errorMessage:this.nameError},i("ds-input",{key:"7e685da71c95342db593c44155d90a0e3430d571",id:this.inputId,size:"md",placeholder:"Enter a unique name",value:this.nameDraft,autoFocus:true,onDsChange:e=>{this.nameDraft=e.detail;if(this.nameError)this.nameError=""},onKeyDown:e=>{if(e.key==="Enter")this.submitDialog()}})),i("div",{key:"9769885246722673269528e0fefa6b1570f1d7f1",slot:"footer",class:"table-saved-views__dialog-actions"},i("ds-button-filled",{key:"d7f721e3f6d0aab39a6a2db65d43d1555222ad36",label:this.dialogMode==="rename"?"Rename":"Save",size:"md",onDsClick:()=>this.submitDialog()}),i("ds-button-unfilled",{key:"75350d51986d1a6c0d1dc72a27b15a769343f07c",label:"Cancel",size:"md",onDsClick:()=>this.dialogOpen=false}))))}get el(){return this}static get style(){return x()}},[2,"ds-table-saved-views",{views:[16],value:[1],dirty:[4],defaultViewId:[1,"default-view-id"],defaultViewLabel:[1,"default-view-label"],label:[1],triggerLabel:[1,"trigger-label"],createLabel:[1,"create-label"],actionViewId:[32],actionAnchorId:[32],actionMenuOpen:[32],actionMenuInitialFocusVisible:[32],dialogOpen:[32],dialogMode:[32],dialogViewId:[32],nameDraft:[32],nameError:[32]}]);function V(){if(typeof customElements==="undefined"){return}const e=["ds-table-saved-views","ds-badge","ds-button-filled","ds-button-unfilled","ds-checkbox","ds-empty-state","ds-field","ds-icon","ds-input","ds-loader","ds-menu","ds-modal","ds-select","ds-swatch-picker","ds-switch","ds-tag","ds-text","ds-tooltip"];e.forEach((e=>{switch(e){case"ds-table-saved-views":if(!customElements.get(n(e))){customElements.define(n(e),j)}break;case"ds-badge":if(!customElements.get(n(e))){d()}break;case"ds-button-filled":if(!customElements.get(n(e))){o()}break;case"ds-button-unfilled":if(!customElements.get(n(e))){l()}break;case"ds-checkbox":if(!customElements.get(n(e))){r()}break;case"ds-empty-state":if(!customElements.get(n(e))){h()}break;case"ds-field":if(!customElements.get(n(e))){c()}break;case"ds-icon":if(!customElements.get(n(e))){m()}break;case"ds-input":if(!customElements.get(n(e))){f()}break;case"ds-loader":if(!customElements.get(n(e))){u()}break;case"ds-menu":if(!customElements.get(n(e))){b()}break;case"ds-modal":if(!customElements.get(n(e))){p()}break;case"ds-select":if(!customElements.get(n(e))){v()}break;case"ds-swatch-picker":if(!customElements.get(n(e))){w()}break;case"ds-switch":if(!customElements.get(n(e))){g()}break;case"ds-tag":if(!customElements.get(n(e))){k()}break;case"ds-text":if(!customElements.get(n(e))){D()}break;case"ds-tooltip":if(!customElements.get(n(e))){E()}break}}))}V();const C=j;const _=V;export{C as DsTableSavedViews,_ as defineCustomElement};
|
|
2
2
|
//# sourceMappingURL=ds-table-saved-views.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as e,H as s,c as t,h as i,a,t as r}from"./index.js";import{A as o,r as c}from"./p-DjF2m7bf.js";import{c as n,r as d,A as l}from"./p-etg-Uk1u.js";import{i as h}from"./p-BMERUCe1.js";import{d as b}from"./p-DzPtYdXy.js";import{d as p}from"./p-kslioYhf.js";import{d as f}from"./p-BqVXMEJm.js";import{d as v}from"./p-Bv6FSDPR.js";import{d as m}from"./p-CpeJMKJ5.js";import{d as u}from"./p-Cea7rROU.js";import{d as g}from"./p-0XTyQNRG.js";import{d as x}from"./p-Cd1JnnVK.js";import{d as y}from"./p-9X_p0bHr.js";import{r as w}from"./p-CochmPyg.js";import{T as _}from"./p-CUL5_8JM.js";function k(e){const s=[];const t=new Set;for(const i of e){if(h(i)||i.searchable===false)continue;const e=i.headerSegments??[];if(e.length>0){for(const i of e){const e=i.sortKey.trim();const a=i.dataLabel?.trim()||i.label.trim()||e;if(!e||!a||i.searchable===false||t.has(e))continue;t.add(e);s.push({id:e,label:a})}continue}const a=i.id.trim();const r=i.dataLabel?.trim()||i.header.trim()||i.headerLabel?.trim()||a;if(!a||!r||t.has(a))continue;t.add(a);s.push({id:a,label:r})}return s}function z(e,s){const t=new Map(e.map((e=>[e.id,e])));const i=[];const a=new Set;for(const e of s){if(a.has(e))continue;const s=t.get(e);if(!s)continue;a.add(e);i.push(s)}return i}function C(e,s){const t=new Set(s);return e.filter((e=>!t.has(e.id)))}function F(e,s){const t=s.trim().toLocaleLowerCase();if(!t)return[...e];return e.filter((e=>`${e.label} ${e.id}`.toLocaleLowerCase().includes(t)))}function I(e,s,t){if(s<=0)return-1;const i=e>=0&&e<s?e:0;return(i+t+s)%s}const T=()=>`@media (forced-colors: active){.sc-ds-table-search:root,.sc-ds-table-search-h,.ds-forced-colors-scope.sc-ds-table-search{--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-table-search-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-table-search-h,.ds-focus-ring.sc-ds-table-search,.ds-focus-ring-inset.sc-ds-table-search-h,.ds-focus-ring-inset.sc-ds-table-search{outline:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.ds-focus-ring.sc-ds-table-search-h:focus-visible,.ds-focus-ring.sc-ds-table-search: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-table-search-h,.ds-focus-ring.ds-focus-ring--visible.sc-ds-table-search{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-table-search-h:focus-visible,.ds-focus-ring-inset.sc-ds-table-search:focus-visible{outline:none}.ds-focus-ring-inset.sc-ds-table-search-h:focus-visible::after,.ds-focus-ring-inset.sc-ds-table-search: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-table-search-h,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-table-search{outline:none}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-table-search-h::after,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-table-search::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-table-search-h{--ds-focus-ring-color:var(--ds-forced-color-selected)}}@media (forced-colors: active){.sc-ds-table-search:root,.sc-ds-table-search-h,.ds-forced-colors-scope.sc-ds-table-search{--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}}@media (forced-colors: active){.sc-ds-table-search:root,.sc-ds-table-search-h,.ds-forced-colors-scope.sc-ds-table-search{--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-table-search-h,.ds-interaction-fill.sc-ds-table-search{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-table-search-h::before,.ds-interaction-fill.sc-ds-table-search::before,.ds-interaction-fill.sc-ds-table-search-h::after,.ds-interaction-fill.sc-ds-table-search::after{content:'';position:absolute;inset:0;border-radius:inherit;background:transparent;pointer-events:none;cursor:inherit;transition:none}.ds-interaction-fill.sc-ds-table-search-h::before,.ds-interaction-fill.sc-ds-table-search::before{z-index:1}.ds-interaction-fill.sc-ds-table-search-h::after,.ds-interaction-fill.sc-ds-table-search::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-table-search-h,.ds-interaction-fill--bordered.sc-ds-table-search{--ds-interaction-border-width:var(--dimension-stroke-width-012);--ds-interaction-border-color:var(--color-border-secondary)}.ds-interaction-fill--selected.sc-ds-table-search-h::before,.ds-interaction-fill--selected.sc-ds-table-search::before{background:var(--ds-interaction-active)}.ds-interaction-fill--selected.sc-ds-table-search-h,.ds-interaction-fill--selected.sc-ds-table-search{--ds-interaction-dot-ring:var(--ds-interaction-active)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill.sc-ds-table-search-h:hover:not(:disabled)::after,.ds-interaction-fill.sc-ds-table-search:hover:not(:disabled)::after{background:var(--ds-interaction-hover)}}.ds-interaction-fill.sc-ds-table-search-h:active:not(:disabled)::after,.ds-interaction-fill.sc-ds-table-search:active:not(:disabled)::after{background:var(--ds-interaction-pressed)}.ds-interaction-fill--grouped.sc-ds-table-search-h::after,.ds-interaction-fill--grouped.sc-ds-table-search::after,.ds-interaction-fill--grouped.sc-ds-table-search-h:active:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-table-search:active:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill--grouped.sc-ds-table-search-h:hover:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-table-search:hover:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}}.ds-interaction-fill--grouped.sc-ds-table-search-h,.ds-interaction-fill--grouped.sc-ds-table-search{--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-table-search-h>.ds-interaction-fill__content.sc-ds-table-search,.ds-interaction-fill.sc-ds-table-search>.ds-interaction-fill__content.sc-ds-table-search,.ds-interaction-fill__content.sc-ds-table-search{position:relative;z-index:2;cursor:inherit}.ds-interaction-fill--on-faint.sc-ds-table-search-h,.ds-interaction-fill--on-faint.sc-ds-table-search{--ds-interaction-active:var(--color-interaction-active)}.ds-interaction-fill--on-medium.sc-ds-table-search-h,.ds-interaction-fill--on-medium.sc-ds-table-search{--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-table-search-h,.ds-interaction-fill--on-bold.sc-ds-table-search{--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-table-search-h,.ds-interaction-fill--on-strong.sc-ds-table-search{--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-table-search-h,.ds-interaction-fill--on-translucent.sc-ds-table-search{--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-table-search-h,.ds-interaction-fill--on-inverted.sc-ds-table-search{--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-table-search-h,.ds-interaction-fill--on-media.sc-ds-table-search{--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-table-search-h,.ds-interaction-fill--on-always-dark.sc-ds-table-search{--ds-interaction-hover:var(--color-always-dark-interaction-hover);--ds-interaction-pressed:var(--color-always-dark-interaction-pressed);--ds-interaction-active:var(--color-always-dark-interaction-active-brand);--ds-focus-ring-color:var(--color-always-dark-interaction-focus)}.ds-interaction-fill--on-navigation.sc-ds-table-search-h,.ds-interaction-fill--on-navigation.sc-ds-table-search{--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)}@media (forced-colors: active){.ds-interaction-fill.sc-ds-table-search-h::after,.ds-interaction-fill.sc-ds-table-search::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--selected.sc-ds-table-search-h::before,.ds-interaction-fill--selected.sc-ds-table-search::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-table-search-h:hover:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after,.ds-interaction-fill.sc-ds-table-search: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-table-search:root,.sc-ds-table-search-h,.ds-forced-colors-scope.sc-ds-table-search{--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-table-search-h,.ds-control-inactive.sc-ds-table-search{opacity:var(--effect-opacity-medium);pointer-events:none;cursor:not-allowed}@media (forced-colors: active){.ds-control-inactive.sc-ds-table-search-h,.ds-control-inactive.sc-ds-table-search{color:var(--ds-forced-color-disabled);opacity:1}}.ds-control--lg.sc-ds-table-search,.ds-control--lg.sc-ds-table-search-h,.ds-control--md.sc-ds-table-search-h,.ds-control--md.sc-ds-table-search,.ds-control--sm.sc-ds-table-search-h,.ds-control--sm.sc-ds-table-search,.ds-control--xs.sc-ds-table-search-h,.ds-control--xs.sc-ds-table-search{--ds-control-radius:var(--dimension-radius-025)}.ds-control--lg.sc-ds-table-search-h,.ds-control--lg.sc-ds-table-search{--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-table-search-h,.ds-control--md.sc-ds-table-search{--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-table-search-h,.ds-control--sm.sc-ds-table-search{--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-table-search-h,.ds-control--xs.sc-ds-table-search{--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-chrome-space--sm.sc-ds-table-search-h,.ds-chrome-space--sm.sc-ds-table-search{--ds-chrome-padding:var(--dimension-space-050);--ds-chrome-gap:var(--dimension-space-050)}.ds-chrome-space--md.sc-ds-table-search-h,.ds-chrome-space--md.sc-ds-table-search{--ds-chrome-padding:var(--dimension-space-100);--ds-chrome-gap:var(--dimension-space-100)}.ds-chrome-space--lg.sc-ds-table-search-h,.ds-chrome-space--lg.sc-ds-table-search{--ds-chrome-padding:var(--dimension-space-200);--ds-chrome-gap:var(--dimension-space-200)}.ds-chrome-row.sc-ds-table-search-h,.ds-chrome-row.sc-ds-table-search,.ds-chrome-column.sc-ds-table-search-h,.ds-chrome-column.sc-ds-table-search,.ds-chrome-grid.sc-ds-table-search-h,.ds-chrome-grid.sc-ds-table-search{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-table-search-h,.ds-chrome-row.sc-ds-table-search{flex-direction:row;align-items:center}.ds-chrome-column.sc-ds-table-search-h,.ds-chrome-column.sc-ds-table-search{flex-direction:column}.ds-chrome-grid.sc-ds-table-search-h,.ds-chrome-grid.sc-ds-table-search{display:grid;align-items:center}.ds-control-frame.sc-ds-table-search{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-table-search{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-table-search{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-table-search{min-width:0;padding-inline:var(--ds-control-label-inset, var(--dimension-space-025))}.ds-control-label-dot.sc-ds-table-search{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-table-search{position:absolute;inset-block-start:0;inset-inline-end:0;pointer-events:none}.ds-empty-region.sc-ds-table-search{display:flex;flex:1 1 auto;align-items:center;justify-content:center;box-sizing:border-box;min-width:0;min-height:0}.ds-empty-region--padded.sc-ds-table-search{padding:var(--dimension-space-200)}.sc-ds-table-search:where(.ds-text-decoration,.ds-text-action).sc-ds-table-search{text-decoration-color:var(--ds-text-decoration-color, var(--color-foreground-tertiary));text-decoration-thickness:var(--ds-text-decoration-thickness, var(--dimension-stroke-width-012));text-underline-offset:var(--ds-text-decoration-offset, var(--dimension-space-025))}.ds-text-action.sc-ds-table-search{--ds-text-action-foreground:var(--color-foreground-bold-brand);--ds-text-decoration-color:var(--ds-text-action-foreground);color:var(--ds-text-action-foreground);text-decoration-line:none}.ds-text-action--on-medium.sc-ds-table-search{--ds-text-action-foreground:var(--color-foreground-on-medium-background-primary);--ds-text-decoration-color:var(--color-foreground-on-medium-background-secondary);text-decoration-line:underline}.ds-text-action--on-strong.sc-ds-table-search{--ds-text-action-foreground:var(--color-foreground-on-strong-background-primary);--ds-text-decoration-color:var(--color-foreground-on-strong-background-secondary);text-decoration-line:underline}.ds-text-action--on-bold.sc-ds-table-search{--ds-text-action-foreground:var(--color-foreground-on-bold-background-primary);--ds-text-decoration-color:var(--color-foreground-on-bold-background-secondary);text-decoration-line:underline}@media (hover: hover) and (pointer: fine){.ds-text-action.sc-ds-table-search:hover{text-decoration-line:underline}}@media (forced-colors: active){.ds-text-action.sc-ds-table-search{text-decoration-line:underline;text-decoration-color:currentcolor}}.ds-choice-popup.sc-ds-table-search{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(--dimension-radius-075);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-table-search::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-table-search{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-table-search{animation:none;opacity:1}.ds-choice-popup--closing.sc-ds-table-search{opacity:0}}.ds-choice-list.sc-ds-table-search{display:flex;flex-direction:column;min-height:0;overflow-y:auto;overscroll-behavior:contain}.ds-choice-section--divided.sc-ds-table-search{border-bottom:var(--dimension-stroke-width-015) solid var(--color-border-tertiary)}ds-text.ds-choice-section__header.sc-ds-table-search{text-align:start;-webkit-user-select:none;user-select:none}.ds-choice-section--headed-after-first.sc-ds-table-search{margin-block-start:var(--dimension-space-050)}.ds-choice-item.sc-ds-table-search{width:100%;border:none;border-radius:var(--ds-control-radius, var(--dimension-radius-025));background:transparent;cursor:default;-webkit-user-select:none;user-select:none;text-align:left;color:inherit}.ds-choice-item.sc-ds-table-search:has(.ds-choice-item__subtext){height:auto;min-height:var(--ds-control-height, var(--dimension-size-400));padding-block:var(--ds-control-padding-inline, var(--dimension-space-075));align-items:flex-start}.ds-choice-item__content.sc-ds-table-search{display:flex;flex:1;flex-direction:column;gap:var(--dimension-space-025);min-width:0}ds-text.ds-choice-item__label.sc-ds-table-search{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}ds-text.ds-choice-item__subtext.sc-ds-table-search{display:-webkit-box;overflow:hidden;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ds-choice-item__icon.sc-ds-table-search,.ds-choice-item__suffix.sc-ds-table-search{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));pointer-events:none}.ds-choice-item.ds-interaction-fill--selected.sc-ds-table-search .ds-choice-item__icon.sc-ds-table-search{color:var(--color-foreground-primary)}.ds-choice-item__tag.sc-ds-table-search{flex-shrink:0;pointer-events:none}.ds-choice-empty.sc-ds-table-search,.ds-choice-loading.sc-ds-table-search{min-height:var(--dimension-size-600);padding:var(--dimension-space-100)}.ds-choice-footer.sc-ds-table-search{position:relative;box-sizing:border-box;padding-block:var(--dimension-space-050)}.ds-choice-footer.sc-ds-table-search::before{content:'';position:absolute;inset:0 0 auto;height:var(--dimension-stroke-width-012);background-color:var(--color-border-tertiary);pointer-events:none}.ds-choice-footer__content.sc-ds-table-search{display:flex;align-items:center;justify-content:space-between;column-gap:var(--dimension-space-050);box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400))}.ds-choice-footer__summary.sc-ds-table-search,.ds-choice-footer__summary-measure.sc-ds-table-search,.ds-choice-footer__clear.sc-ds-table-search ds-text.sc-ds-table-search,.ds-choice-footer__action.sc-ds-table-search ds-text.sc-ds-table-search{padding-inline:calc( var(--dimension-space-050) + var(--ds-control-padding-inline, var(--dimension-space-075)) + var(--ds-control-label-inset, var(--dimension-space-025)) )}.ds-choice-footer__summary.sc-ds-table-search,.ds-choice-footer__summary-measure.sc-ds-table-search,.ds-choice-footer__clear.sc-ds-table-search,.ds-choice-footer__action.sc-ds-table-search{white-space:nowrap}.ds-choice-footer__summary-measure.sc-ds-table-search{position:absolute;visibility:hidden;pointer-events:none}.ds-choice-footer__clear.sc-ds-table-search,.ds-choice-footer__action.sc-ds-table-search{appearance:none;display:inline-flex;align-items:center;padding:0;border:0;border-radius:var(--dimension-radius-025);background:transparent;cursor:default}@media (forced-colors: active){.ds-choice-popup.sc-ds-table-search{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-table-search::after{box-shadow:none}.ds-choice-section--divided.sc-ds-table-search{border-bottom-color:var(--ds-forced-color-content)}.ds-choice-footer.sc-ds-table-search::before{background-color:var(--ds-forced-color-content)}}.ds-control--lg.ds-control--inset.sc-ds-table-search-h,.ds-control--lg.ds-control--inset.sc-ds-table-search{--ds-control-height:calc(var(--dimension-size-500) - var(--dimension-space-050));--ds-control-padding-inline:calc(var(--dimension-space-100) - var(--dimension-space-025))}.ds-control--md.ds-control--inset.sc-ds-table-search-h,.ds-control--md.ds-control--inset.sc-ds-table-search{--ds-control-height:calc(var(--dimension-size-400) - var(--dimension-space-050));--ds-control-padding-inline:calc(var(--dimension-space-075) - var(--dimension-space-025))}.ds-control--sm.ds-control--inset.sc-ds-table-search-h,.ds-control--sm.ds-control--inset.sc-ds-table-search{--ds-control-height:calc(var(--dimension-size-300) - var(--dimension-space-050));--ds-control-padding-inline:calc(var(--dimension-space-050) - var(--dimension-space-025))}.ds-control--xs.ds-control--inset.sc-ds-table-search-h,.ds-control--xs.ds-control--inset.sc-ds-table-search{--ds-control-height:calc(var(--dimension-size-200) - var(--dimension-space-050));--ds-control-padding-inline:calc(var(--dimension-space-025) - var(--dimension-space-025))}.ds-control--lg.ds-control--inset-double.sc-ds-table-search-h,.ds-control--lg.ds-control--inset-double.sc-ds-table-search{--ds-control-height:calc(var(--dimension-size-500) - var(--dimension-space-100));--ds-control-padding-inline:calc(var(--dimension-space-100) - var(--dimension-space-050))}.ds-control--md.ds-control--inset-double.sc-ds-table-search-h,.ds-control--md.ds-control--inset-double.sc-ds-table-search{--ds-control-height:calc(var(--dimension-size-400) - var(--dimension-space-100));--ds-control-padding-inline:calc(var(--dimension-space-075) - var(--dimension-space-050))}.ds-control--sm.ds-control--inset-double.sc-ds-table-search-h,.ds-control--sm.ds-control--inset-double.sc-ds-table-search{--ds-control-height:calc(var(--dimension-size-300) - var(--dimension-space-100));--ds-control-padding-inline:calc(var(--dimension-space-050) - var(--dimension-space-050))}.ds-text--display-medium.sc-ds-table-search-h,.ds-text--display-medium.sc-ds-table-search{font-size:var(--typography-fontsize-3xl);line-height:var(--typography-lineheight-3xl)}.ds-text--display-small.sc-ds-table-search-h,.ds-text--display-small.sc-ds-table-search{font-size:var(--typography-fontsize-2xl);line-height:var(--typography-lineheight-2xl)}.ds-text--title-large.sc-ds-table-search-h,.ds-text--title-large.sc-ds-table-search{font-size:var(--typography-fontsize-xl);line-height:var(--typography-lineheight-xl)}.ds-text--title-medium.sc-ds-table-search-h,.ds-text--title-medium.sc-ds-table-search{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--title-small.sc-ds-table-search-h,.ds-text--title-small.sc-ds-table-search{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-large.sc-ds-table-search-h,.ds-text--body-large.sc-ds-table-search{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--body-medium.sc-ds-table-search-h,.ds-text--body-medium.sc-ds-table-search{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-small.sc-ds-table-search-h,.ds-text--body-small.sc-ds-table-search{font-size:var(--typography-fontsize-sm);line-height:var(--typography-lineheight-sm)}.ds-text--caption.sc-ds-table-search-h,.ds-text--caption.sc-ds-table-search{font-size:var(--typography-fontsize-xs);line-height:var(--typography-lineheight-xs);text-transform:uppercase}.ds-text--display-medium.ds-text--emphasis.sc-ds-table-search-h,.ds-text--display-small.ds-text--emphasis.sc-ds-table-search-h,.ds-text--display-medium.ds-text--emphasis.sc-ds-table-search,.ds-text--display-small.ds-text--emphasis.sc-ds-table-search{font-weight:var(--typography-weight-bold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--display-medium.ds-text--regular.sc-ds-table-search-h,.ds-text--display-small.ds-text--regular.sc-ds-table-search-h,.ds-text--display-medium.ds-text--regular.sc-ds-table-search,.ds-text--display-small.ds-text--regular.sc-ds-table-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-large.ds-text--emphasis.sc-ds-table-search-h,.ds-text--title-large.ds-text--emphasis.sc-ds-table-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--title-large.ds-text--regular.sc-ds-table-search-h,.ds-text--title-large.ds-text--regular.sc-ds-table-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--emphasis.sc-ds-table-search-h,.ds-text--title-small.ds-text--emphasis.sc-ds-table-search-h,.ds-text--title-medium.ds-text--emphasis.sc-ds-table-search,.ds-text--title-small.ds-text--emphasis.sc-ds-table-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--regular.sc-ds-table-search-h,.ds-text--title-small.ds-text--regular.sc-ds-table-search-h,.ds-text--title-medium.ds-text--regular.sc-ds-table-search,.ds-text--title-small.ds-text--regular.sc-ds-table-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-large.ds-text--emphasis.sc-ds-table-search-h,.ds-text--body-medium.ds-text--emphasis.sc-ds-table-search-h,.ds-text--body-large.ds-text--emphasis.sc-ds-table-search,.ds-text--body-medium.ds-text--emphasis.sc-ds-table-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--body-large.ds-text--regular.sc-ds-table-search-h,.ds-text--body-medium.ds-text--regular.sc-ds-table-search-h,.ds-text--body-large.ds-text--regular.sc-ds-table-search,.ds-text--body-medium.ds-text--regular.sc-ds-table-search{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--emphasis.sc-ds-table-search-h,.ds-text--body-small.ds-text--emphasis.sc-ds-table-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--regular.sc-ds-table-search-h,.ds-text--body-small.ds-text--regular.sc-ds-table-search{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-none)}.ds-text--caption.ds-text--emphasis.sc-ds-table-search-h,.ds-text--caption.ds-text--emphasis.sc-ds-table-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-positive)}.ds-text--caption.ds-text--regular.sc-ds-table-search-h,.ds-text--caption.ds-text--regular.sc-ds-table-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-positive)}.ds-visually-hidden.sc-ds-table-search-h,.ds-visually-hidden.sc-ds-table-search{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.table-search-host.sc-ds-table-search-h{display:inline-flex;box-sizing:border-box;inline-size:100%;min-inline-size:0;--ds-table-search-foreground:var(--color-foreground-primary);--ds-table-search-adornment:var(--color-foreground-secondary);--ds-table-search-placeholder:var(--color-foreground-secondary);--ds-table-search-placeholder-active:var(--color-foreground-quaternary);--ds-table-search-border:var(--color-border-secondary)}.table-search__control.sc-ds-table-search{inline-size:100%;min-inline-size:0;padding-inline-end:var(--dimension-space-050);overflow:hidden;border:0;background:transparent;color:var(--ds-table-search-foreground);--ds-interaction-border-width:var(--dimension-stroke-width-012);--ds-interaction-border-color:var(--ds-table-search-border)}.table-search__control.sc-ds-table-search:focus-within{--ds-interaction-border-width:var(--dimension-stroke-width-018);--ds-interaction-border-color:var(--color-border-bold-brand)}.ds-control-inactive.sc-ds-table-search-h .table-search__control.sc-ds-table-search::after{background:transparent}.table-search__icon.sc-ds-table-search,.table-search__actions.sc-ds-table-search{position:relative;z-index:2;flex:none}.table-search__icon.sc-ds-table-search{color:var(--ds-table-search-adornment)}.table-search__editor.sc-ds-table-search{position:relative;z-index:2;display:flex;flex:1 1 auto;align-items:center;min-inline-size:0;block-size:100%;gap:var(--dimension-space-050);overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.table-search__editor.sc-ds-table-search::-webkit-scrollbar{display:none}.table-search__chip.sc-ds-table-search{flex:none;max-inline-size:var(--dimension-panel-width-2xs)}.table-search__input.sc-ds-table-search{appearance:none;box-sizing:border-box;flex:1 0 var(--dimension-size-600);min-inline-size:var(--dimension-size-600);block-size:100%;margin:0;padding:0;border:0;outline:0;background:transparent;color:var(--ds-table-search-foreground);text-overflow:ellipsis}.table-search__input.sc-ds-table-search::-webkit-search-cancel-button,.table-search__input.sc-ds-table-search::-webkit-search-decoration{display:none}.table-search__input.sc-ds-table-search::placeholder{color:var(--ds-table-search-placeholder)}.table-search__input.sc-ds-table-search:focus::placeholder{color:var(--ds-table-search-placeholder-active)}.table-search__actions.sc-ds-table-search{display:flex;align-items:center;gap:var(--dimension-space-050)}.table-search__clear.sc-ds-table-search,.table-search__slash.sc-ds-table-search,.table-search__action-divider.sc-ds-table-search{flex:none}.table-search__slash.sc-ds-table-search{color:var(--ds-table-search-adornment)}.table-search__popup.sc-ds-table-search{--ds-choice-popup-min-inline-size:var(--dimension-menu-width-xs)}.table-search__list.sc-ds-table-search{padding:var(--dimension-space-050)}.table-search__option.sc-ds-table-search{flex:none;inline-size:100%}@media (forced-colors: active){.table-search__control.sc-ds-table-search:focus-within::after{outline-color:var(--ds-forced-color-selected)}}`;let j=0;const $=e(class e extends s{constructor(e){super();if(e!==false){this.__registerHost()}this.dsChange=t(this,"dsChange",3);this.dsFieldsChange=t(this,"dsFieldsChange",3);this.dsClear=t(this,"dsClear",3);this.value="";this.columns=[];this.selectedFieldIds=[];this.placeholder="Search";this.ariaLabel="Search table";this.clearLabel="Clear search";this.fieldMenuLabel="Choose search fields";this.isInactive=false;this.menuOpen=false;this.menuQuery="";this.activeIndex=0;this.focusRingVisible=false;this.position={x:0,y:0};this.positionReady=false;this.availableHeight=null;this.announcement="";this.componentId=`ds-table-search-${++j}`;this.inputId=`${this.componentId}-input`;this.listboxId=`${this.componentId}-listbox`;this.descriptionId=`${this.componentId}-description`;this.inputEl=null;this.controlEl=null;this.popupEl=null;this.positionController=new o({getAnchor:()=>this.controlEl,getPopup:()=>this.popupEl,getOwnerDocument:()=>this.el.ownerDocument,measure:(e,s)=>{if(!this.menuOpen||!s.isConnected)return null;const t=w(_.space050,_.space050);s.style.minWidth=`max(var(--ds-choice-popup-min-inline-size, ${_.menuWidthXs}), ${n(e.offsetWidth,t)}px)`;const i=e.getBoundingClientRect();return{anchorRect:i,popupWidth:s.offsetWidth,popupHeight:s.offsetHeight,side:"bottom",align:"start",sideOffsetPx:t,alignOffsetPx:d({align:"start",alignOffsetPx:0,sectionInsetPx:t}),viewportPadPx:t,viewportWidth:window.innerWidth,viewportHeight:window.innerHeight,collisionRect:c(e)}},apply:({x:e,y:s,availableHeight:t})=>{this.position={x:e,y:s};this.availableHeight=t},onReady:()=>{this.positionReady=true},topLayer:true,liveUpdate:"frame",observeResize:true,observeAnchorMotion:true});this.interactionController=new l({getAnchor:()=>this.controlEl,getPopup:()=>this.popupEl,getOwnerDocument:()=>this.el.ownerDocument,onOutsideActivation:()=>this.closeMenu()})}disconnectedCallback(){this.closeMenu()}syncAvailableFields(){const e=this.availableFields.length;if(e===0){this.closeMenu();return}if(this.activeIndex>=e)this.activeIndex=e-1}syncInactive(e){if(e)this.closeMenu()}async setFocus(){this.inputEl?.focus()}get selectedFields(){return z(this.searchFields,this.selectedFieldIds)}get availableFields(){return C(this.searchFields,this.selectedFieldIds)}get visibleFields(){return F(this.availableFields,this.menuQuery)}get searchFields(){return k(this.columns)}get activeOptionId(){return this.menuOpen&&this.activeIndex>=0?`${this.componentId}-option-${this.activeIndex}`:undefined}openMenu(e){if(this.isInactive||this.menuOpen||this.availableFields.length===0)return;this.menuQuery="";if(this.inputEl)this.inputEl.value="";this.activeIndex=0;this.focusRingVisible=e;this.positionReady=false;this.menuOpen=true;requestAnimationFrame((()=>{if(!this.menuOpen)return;this.interactionController.connect();this.positionController.observe();this.positionController.schedule()}))}closeMenu(){if(!this.menuOpen&&!this.popupEl)return;if(this.popupEl?.matches(":popover-open"))this.popupEl.hidePopover();this.positionController.unobserve();this.interactionController.disconnect();this.popupEl=null;this.positionReady=false;this.availableHeight=null;this.menuOpen=false;this.menuQuery=""}handleInput(e){const s=e.target.value;if(this.menuOpen){this.menuQuery=s;this.activeIndex=F(this.availableFields,s).length?0:-1;this.focusRingVisible=false;this.positionController.schedule();return}this.dsChange.emit(s)}selectField(e){this.dsFieldsChange.emit({selectedFieldIds:[...this.selectedFieldIds,e.id]});this.announcement=`${e.label} search field added.`;this.closeMenu();requestAnimationFrame((()=>this.inputEl?.focus({preventScroll:true})))}removeLastField(){const e=this.selectedFields;const s=e[e.length-1];if(!s)return;this.dsFieldsChange.emit({selectedFieldIds:this.selectedFieldIds.filter((e=>e!==s.id))});this.announcement=`${s.label} search field removed.`}removeField(e){this.dsFieldsChange.emit({selectedFieldIds:this.selectedFieldIds.filter((s=>s!==e.id))});this.announcement=`${e.label} search field removed.`;requestAnimationFrame((()=>this.inputEl?.focus({preventScroll:true})))}clearSearch(){if(this.value)this.dsChange.emit("");if(this.selectedFieldIds.length)this.dsFieldsChange.emit({selectedFieldIds:[]});this.dsClear.emit();this.announcement="Search cleared.";this.closeMenu();requestAnimationFrame((()=>this.inputEl?.focus({preventScroll:true})))}handleKeyDown(e){if(e.key==="/"&&!this.menuOpen&&!e.altKey&&!e.ctrlKey&&!e.metaKey){e.preventDefault();this.openMenu(true);return}if(e.key==="Backspace"&&this.menuOpen&&this.menuQuery.length===0){e.preventDefault();this.closeMenu();return}if(e.key==="Backspace"&&this.value.length===0){if(this.selectedFields.length){e.preventDefault();this.removeLastField()}return}if(!this.menuOpen)return;if(e.key==="Escape"){e.preventDefault();this.closeMenu();return}if(e.key==="ArrowDown"||e.key==="ArrowUp"){e.preventDefault();this.focusRingVisible=true;this.activeIndex=I(this.activeIndex,this.visibleFields.length,e.key==="ArrowDown"?1:-1);this.el.querySelector(`#${CSS.escape(this.activeOptionId??"")}`)?.scrollIntoView({block:"nearest"});return}if(e.key==="Enter"){const s=this.visibleFields[this.activeIndex];if(!s)return;e.preventDefault();this.selectField(s);return}if(e.key==="Tab")this.closeMenu()}render(){const e=this.selectedFields;const s=this.availableFields;const t=this.visibleFields;const r=this.menuOpen?this.menuQuery:this.value;const o=this.value.length>0||e.length>0;const c=e.length?`Search limited to ${e.map((e=>e.label)).join(" or ")}.`:"Search includes every available table field. Type slash to choose fields.";const n={position:"fixed",left:"0",top:"0",transform:`translate(${Math.round(this.position.x)}px, ${Math.round(this.position.y)}px)`,zIndex:"var(--dimension-z-index-floating)",visibility:this.positionReady?"visible":"hidden"};if(this.availableHeight!==null){n["max-height"]=`${Math.floor(this.availableHeight)}px`}return i(a,{key:"14fd113152e41c3ab836e738b5856a3faa45c0c2",class:{"table-search-host":true,"ds-control--md":true,"ds-control-inactive":this.isInactive},"data-filled":o?"":undefined,"data-expanded":this.menuOpen?"":undefined},i("div",{key:"12ea798e38d6fbe0950e56298377f6c40a00f202",ref:e=>{this.controlEl=e??null},class:"table-search__control ds-control-frame ds-control--md ds-interaction-fill"},i("span",{key:"7aa31196146654c4f9b9f20c61ab566ef5a7d790",class:"table-search__icon ds-control-icon-box ds-interaction-fill__content","aria-hidden":"true"},i("ds-icon",{key:"7b573555419e2a7d3345b5afe0534d8b26f81d9e",name:"MagnifyingGlass",size:"md",color:"inherit"})),i("div",{key:"777217b03bbd7c57c29308c66c68b67a334fce01",class:"table-search__editor ds-interaction-fill__content"},e.map((e=>i("ds-chip",{class:"table-search__chip",key:e.id,label:e.label,size:"md",state:"default",isInset:true,insetDepth:"double",isInactive:this.isInactive,onDsRemove:()=>this.removeField(e)}))),i("input",{key:"604c98eb1c63f081af6dedd0cc5b58a663d21923",ref:e=>{this.inputEl=e??null},id:this.inputId,class:"table-search__input ds-text--body-medium ds-text--regular",type:"search",role:"combobox",value:r,placeholder:this.placeholder,disabled:this.isInactive,"aria-label":this.ariaLabel,"aria-describedby":this.descriptionId,"aria-haspopup":"listbox","aria-expanded":String(this.menuOpen),"aria-controls":this.menuOpen?this.listboxId:undefined,"aria-activedescendant":this.activeOptionId,"aria-keyshortcuts":"/",autoComplete:"off",autoCapitalize:"none",autoCorrect:"off",spellcheck:false,onInput:e=>this.handleInput(e),onKeyDown:e=>this.handleKeyDown(e)})),this.searchFields.length>0&&i("div",{key:"b46d932763b3e4efaccbd6c61d45de107a4dee91",class:"table-search__actions ds-interaction-fill__content"},r.length>0&&!this.isInactive&&i("ds-button-unfilled",{key:"39fb848aea6fb7a5dd5484e702d3b012c24472d3",class:"table-search__clear",variant:"icon",size:"sm",icon:"CrossCircle",hasBorder:false,rounded:true,ariaLabel:this.clearLabel,onDsClick:()=>this.clearSearch()}),r.length>0&&!this.isInactive&&i("ds-divider",{key:"5be3e362f1d450fb3e4fe9feddb4d7006bc23f49",class:"table-search__action-divider",orientation:"vertical",length:"var(--dimension-size-200)"}),i("ds-button-unfilled",{key:"725bea6ac23e5620fbc079106ab6a35eaf54881f",class:"table-search__slash",variant:"label",size:"md",label:"/",labelEmphasis:false,isInset:true,insetDepth:"double",hasBorder:false,ariaLabel:this.fieldMenuLabel,focusTabIndex:-1,haspopup:"listbox",controls:this.menuOpen?this.listboxId:undefined,expanded:this.menuOpen,isInactive:this.isInactive||s.length===0,onMouseDown:e=>e.preventDefault(),onDsClick:()=>{this.inputEl?.focus({preventScroll:true});this.openMenu(false)}}))),i("span",{key:"4ac16d58cb43979af3cea4f5692e6a8af8401516",id:this.descriptionId,class:"ds-visually-hidden"},c),i("span",{key:"60612b6f999e17bf48bd8c723c3546224774b090",class:"ds-visually-hidden","aria-live":"polite"},this.announcement),this.menuOpen&&i("div",{key:"7056325ba23d48f242675697d6fad1c26bdcdd4c",popover:"manual",ref:e=>{this.popupEl=e??null},class:"table-search__popup ds-choice-popup",style:n},i("div",{key:"bf56602c4c9f6e67dc0d4031931e40f8dc73879e",id:this.listboxId,class:"table-search__list ds-choice-list",role:"listbox","aria-label":this.fieldMenuLabel},t.map(((e,s)=>{const t=s===this.activeIndex;return i("div",{id:`${this.componentId}-option-${s}`,key:e.id,class:{"table-search__option":true,"ds-choice-item":true,"ds-control-frame":true,"ds-control--md":true,"ds-focus-ring-inset":true,"ds-focus-ring--visible":t&&this.focusRingVisible,"ds-interaction-fill":true,"ds-interaction-fill--selected":t},role:"option","aria-selected":String(t),onMouseDown:e=>e.preventDefault(),onMouseMove:()=>{this.focusRingVisible=false;this.activeIndex=s},onClick:()=>this.selectField(e)},i("ds-text",{class:"ds-choice-item__label ds-control-label-box ds-interaction-fill__content",as:"span",variant:"text-body-medium",color:t?"primary":"secondary"},e.label))})),t.length===0&&i("div",{key:"98d54cf736e557573bf170c7309708812eb6128e",class:"table-search__empty ds-choice-empty ds-empty-region"},i("ds-empty-state",{key:"bd98a81f2186b03b75f5bfb3a918aaebcd74362f",body:"No matching data points"})))))}get el(){return this}static get watchers(){return{columns:[{syncAvailableFields:0}],selectedFieldIds:[{syncAvailableFields:0}],isInactive:[{syncInactive:0}]}}static get style(){return T()}},[2,"ds-table-search",{value:[1],columns:[16],selectedFieldIds:[16],placeholder:[1],ariaLabel:[1,"aria-label"],clearLabel:[1,"clear-label"],fieldMenuLabel:[1,"field-menu-label"],isInactive:[4,"is-inactive"],menuOpen:[32],menuQuery:[32],activeIndex:[32],focusRingVisible:[32],position:[32],positionReady:[32],availableHeight:[32],announcement:[32],setFocus:[64]},undefined,{columns:[{syncAvailableFields:0}],selectedFieldIds:[{syncAvailableFields:0}],isInactive:[{syncInactive:0}]}]);function A(){if(typeof customElements==="undefined"){return}const e=["ds-table-search","ds-badge","ds-button-unfilled","ds-chip","ds-divider","ds-empty-state","ds-icon","ds-loader","ds-text","ds-tooltip"];e.forEach((e=>{switch(e){case"ds-table-search":if(!customElements.get(r(e))){customElements.define(r(e),$)}break;case"ds-badge":if(!customElements.get(r(e))){b()}break;case"ds-button-unfilled":if(!customElements.get(r(e))){p()}break;case"ds-chip":if(!customElements.get(r(e))){f()}break;case"ds-divider":if(!customElements.get(r(e))){v()}break;case"ds-empty-state":if(!customElements.get(r(e))){m()}break;case"ds-icon":if(!customElements.get(r(e))){u()}break;case"ds-loader":if(!customElements.get(r(e))){g()}break;case"ds-text":if(!customElements.get(r(e))){x()}break;case"ds-tooltip":if(!customElements.get(r(e))){y()}break}}))}A();const S=$;const E=A;export{S as DsTableSearch,E as defineCustomElement};
|
|
1
|
+
import{p as e,H as s,c as t,h as i,a,t as r}from"./index.js";import{A as o,r as c}from"./p-DjF2m7bf.js";import{c as n,r as d,A as l}from"./p-etg-Uk1u.js";import{i as h}from"./p-BMERUCe1.js";import{d as b}from"./p-BMzn2Cmw.js";import{d as p}from"./p-6_CNVbqa.js";import{d as f}from"./p-CQjUOHiN.js";import{d as v}from"./p-Bv6FSDPR.js";import{d as m}from"./p-BVz-r3g0.js";import{d as u}from"./p-Cea7rROU.js";import{d as g}from"./p-0XTyQNRG.js";import{d as x}from"./p-DQQsS9Rx.js";import{d as y}from"./p-DW8ssbfI.js";import{r as w}from"./p-CochmPyg.js";import{T as _}from"./p-CUL5_8JM.js";function k(e){const s=[];const t=new Set;for(const i of e){if(h(i)||i.searchable===false)continue;const e=i.headerSegments??[];if(e.length>0){for(const i of e){const e=i.sortKey.trim();const a=i.dataLabel?.trim()||i.label.trim()||e;if(!e||!a||i.searchable===false||t.has(e))continue;t.add(e);s.push({id:e,label:a})}continue}const a=i.id.trim();const r=i.dataLabel?.trim()||i.header.trim()||i.headerLabel?.trim()||a;if(!a||!r||t.has(a))continue;t.add(a);s.push({id:a,label:r})}return s}function z(e,s){const t=new Map(e.map((e=>[e.id,e])));const i=[];const a=new Set;for(const e of s){if(a.has(e))continue;const s=t.get(e);if(!s)continue;a.add(e);i.push(s)}return i}function C(e,s){const t=new Set(s);return e.filter((e=>!t.has(e.id)))}function F(e,s){const t=s.trim().toLocaleLowerCase();if(!t)return[...e];return e.filter((e=>`${e.label} ${e.id}`.toLocaleLowerCase().includes(t)))}function I(e,s,t){if(s<=0)return-1;const i=e>=0&&e<s?e:0;return(i+t+s)%s}const j=()=>`@media (forced-colors: active){.sc-ds-table-search:root,.sc-ds-table-search-h,.ds-forced-colors-scope.sc-ds-table-search{--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-table-search-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-table-search-h,.ds-focus-ring.sc-ds-table-search,.ds-focus-ring-inset.sc-ds-table-search-h,.ds-focus-ring-inset.sc-ds-table-search{outline:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.ds-focus-ring.sc-ds-table-search-h:focus-visible,.ds-focus-ring.sc-ds-table-search: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-table-search-h,.ds-focus-ring.ds-focus-ring--visible.sc-ds-table-search{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-table-search-h:focus-visible,.ds-focus-ring-inset.sc-ds-table-search:focus-visible{outline:none}.ds-focus-ring-inset.sc-ds-table-search-h:focus-visible::after,.ds-focus-ring-inset.sc-ds-table-search: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-table-search-h,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-table-search{outline:none}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-table-search-h::after,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-table-search::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-table-search-h{--ds-focus-ring-color:var(--ds-forced-color-selected)}}@media (forced-colors: active){.sc-ds-table-search:root,.sc-ds-table-search-h,.ds-forced-colors-scope.sc-ds-table-search{--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}}@media (forced-colors: active){.sc-ds-table-search:root,.sc-ds-table-search-h,.ds-forced-colors-scope.sc-ds-table-search{--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-table-search-h,.ds-interaction-fill.sc-ds-table-search{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-table-search-h::before,.ds-interaction-fill.sc-ds-table-search::before,.ds-interaction-fill.sc-ds-table-search-h::after,.ds-interaction-fill.sc-ds-table-search::after{content:'';position:absolute;inset:0;border-radius:inherit;background:transparent;pointer-events:none;cursor:inherit;transition:none}.ds-interaction-fill.sc-ds-table-search-h::before,.ds-interaction-fill.sc-ds-table-search::before{z-index:1}.ds-interaction-fill.sc-ds-table-search-h::after,.ds-interaction-fill.sc-ds-table-search::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-table-search-h,.ds-interaction-fill--bordered.sc-ds-table-search{--ds-interaction-border-width:var(--dimension-stroke-width-012);--ds-interaction-border-color:var(--color-border-secondary)}.ds-interaction-fill--selected.sc-ds-table-search-h::before,.ds-interaction-fill--selected.sc-ds-table-search::before{background:var(--ds-interaction-active)}.ds-interaction-fill--selected.sc-ds-table-search-h,.ds-interaction-fill--selected.sc-ds-table-search{--ds-interaction-dot-ring:var(--ds-interaction-active)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill.sc-ds-table-search-h:hover:not(:disabled)::after,.ds-interaction-fill.sc-ds-table-search:hover:not(:disabled)::after{background:var(--ds-interaction-hover)}}.ds-interaction-fill.sc-ds-table-search-h:active:not(:disabled)::after,.ds-interaction-fill.sc-ds-table-search:active:not(:disabled)::after{background:var(--ds-interaction-pressed)}.ds-interaction-fill--grouped.sc-ds-table-search-h::after,.ds-interaction-fill--grouped.sc-ds-table-search::after,.ds-interaction-fill--grouped.sc-ds-table-search-h:active:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-table-search:active:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill--grouped.sc-ds-table-search-h:hover:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-table-search:hover:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}}.ds-interaction-fill--grouped.sc-ds-table-search-h,.ds-interaction-fill--grouped.sc-ds-table-search{--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-table-search-h>.ds-interaction-fill__content.sc-ds-table-search,.ds-interaction-fill.sc-ds-table-search>.ds-interaction-fill__content.sc-ds-table-search,.ds-interaction-fill__content.sc-ds-table-search{position:relative;z-index:2;cursor:inherit}.ds-interaction-fill--on-faint.sc-ds-table-search-h,.ds-interaction-fill--on-faint.sc-ds-table-search{--ds-interaction-active:var(--color-interaction-active)}.ds-interaction-fill--on-medium.sc-ds-table-search-h,.ds-interaction-fill--on-medium.sc-ds-table-search{--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-table-search-h,.ds-interaction-fill--on-bold.sc-ds-table-search{--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-table-search-h,.ds-interaction-fill--on-strong.sc-ds-table-search{--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-table-search-h,.ds-interaction-fill--on-translucent.sc-ds-table-search{--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-table-search-h,.ds-interaction-fill--on-inverted.sc-ds-table-search{--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-table-search-h,.ds-interaction-fill--on-media.sc-ds-table-search{--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-table-search-h,.ds-interaction-fill--on-always-dark.sc-ds-table-search{--ds-interaction-hover:var(--color-always-dark-interaction-hover);--ds-interaction-pressed:var(--color-always-dark-interaction-pressed);--ds-interaction-active:var(--color-always-dark-interaction-active-brand);--ds-focus-ring-color:var(--color-always-dark-interaction-focus)}.ds-interaction-fill--on-navigation.sc-ds-table-search-h,.ds-interaction-fill--on-navigation.sc-ds-table-search{--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)}@media (forced-colors: active){.ds-interaction-fill.sc-ds-table-search-h::after,.ds-interaction-fill.sc-ds-table-search::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--selected.sc-ds-table-search-h::before,.ds-interaction-fill--selected.sc-ds-table-search::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-table-search-h:hover:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after,.ds-interaction-fill.sc-ds-table-search: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-table-search:root,.sc-ds-table-search-h,.ds-forced-colors-scope.sc-ds-table-search{--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-table-search-h,.ds-control-inactive.sc-ds-table-search{opacity:var(--effect-opacity-medium);pointer-events:none;cursor:not-allowed}@media (forced-colors: active){.ds-control-inactive.sc-ds-table-search-h,.ds-control-inactive.sc-ds-table-search{color:var(--ds-forced-color-disabled);opacity:1}}.ds-control--lg.sc-ds-table-search,.ds-control--lg.sc-ds-table-search-h,.ds-control--md.sc-ds-table-search-h,.ds-control--md.sc-ds-table-search,.ds-control--sm.sc-ds-table-search-h,.ds-control--sm.sc-ds-table-search,.ds-control--xs.sc-ds-table-search-h,.ds-control--xs.sc-ds-table-search{--ds-control-radius:var(--dimension-radius-025)}.ds-control--lg.sc-ds-table-search-h,.ds-control--lg.sc-ds-table-search{--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-table-search-h,.ds-control--md.sc-ds-table-search{--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-table-search-h,.ds-control--sm.sc-ds-table-search{--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-table-search-h,.ds-control--xs.sc-ds-table-search{--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-chrome-space--sm.sc-ds-table-search-h,.ds-chrome-space--sm.sc-ds-table-search{--ds-chrome-padding:var(--dimension-space-050);--ds-chrome-gap:var(--dimension-space-050)}.ds-chrome-space--md.sc-ds-table-search-h,.ds-chrome-space--md.sc-ds-table-search{--ds-chrome-padding:var(--dimension-space-100);--ds-chrome-gap:var(--dimension-space-100)}.ds-chrome-space--lg.sc-ds-table-search-h,.ds-chrome-space--lg.sc-ds-table-search{--ds-chrome-padding:var(--dimension-space-200);--ds-chrome-gap:var(--dimension-space-200)}.ds-chrome-row.sc-ds-table-search-h,.ds-chrome-row.sc-ds-table-search,.ds-chrome-column.sc-ds-table-search-h,.ds-chrome-column.sc-ds-table-search,.ds-chrome-grid.sc-ds-table-search-h,.ds-chrome-grid.sc-ds-table-search{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-table-search-h,.ds-chrome-row.sc-ds-table-search{flex-direction:row;align-items:center}.ds-chrome-column.sc-ds-table-search-h,.ds-chrome-column.sc-ds-table-search{flex-direction:column}.ds-chrome-grid.sc-ds-table-search-h,.ds-chrome-grid.sc-ds-table-search{display:grid;align-items:center}.ds-control-frame.sc-ds-table-search{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-table-search{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-table-search{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-table-search{min-width:0;padding-inline:var(--ds-control-label-inset, var(--dimension-space-025))}.ds-control-label-dot.sc-ds-table-search{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-table-search{position:absolute;inset-block-start:0;inset-inline-end:0;pointer-events:none}.ds-empty-region.sc-ds-table-search{display:flex;flex:1 1 auto;align-items:center;justify-content:center;box-sizing:border-box;min-width:0;min-height:0}.ds-empty-region--padded.sc-ds-table-search{padding:var(--dimension-space-200)}.sc-ds-table-search:where(.ds-text-decoration,.ds-text-action).sc-ds-table-search{text-decoration-color:var(--ds-text-decoration-color, var(--color-foreground-tertiary));text-decoration-thickness:var(--ds-text-decoration-thickness, var(--dimension-stroke-width-012));text-underline-offset:var(--ds-text-decoration-offset, var(--dimension-space-025))}.ds-text-action.sc-ds-table-search{--ds-text-action-foreground:var(--color-foreground-bold-brand);--ds-text-decoration-color:var(--ds-text-action-foreground);color:var(--ds-text-action-foreground);text-decoration-line:none}.ds-text-action--on-medium.sc-ds-table-search{--ds-text-action-foreground:var(--color-foreground-on-medium-background-primary);--ds-text-decoration-color:var(--color-foreground-on-medium-background-secondary);text-decoration-line:underline}.ds-text-action--on-strong.sc-ds-table-search{--ds-text-action-foreground:var(--color-foreground-on-strong-background-primary);--ds-text-decoration-color:var(--color-foreground-on-strong-background-secondary);text-decoration-line:underline}.ds-text-action--on-bold.sc-ds-table-search{--ds-text-action-foreground:var(--color-foreground-on-bold-background-primary);--ds-text-decoration-color:var(--color-foreground-on-bold-background-secondary);text-decoration-line:underline}@media (hover: hover) and (pointer: fine){.ds-text-action.sc-ds-table-search:hover{text-decoration-line:underline}}@media (forced-colors: active){.ds-text-action.sc-ds-table-search{text-decoration-line:underline;text-decoration-color:currentcolor}}.ds-choice-popup.sc-ds-table-search{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(--dimension-radius-075);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-table-search::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-table-search{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-table-search{animation:none;opacity:1}.ds-choice-popup--closing.sc-ds-table-search{opacity:0}}.ds-choice-list.sc-ds-table-search{display:flex;flex-direction:column;min-height:0;overflow-y:auto;overscroll-behavior:contain}.ds-choice-section--divided.sc-ds-table-search{border-bottom:var(--dimension-stroke-width-015) solid var(--color-border-tertiary)}ds-text.ds-choice-section__header.sc-ds-table-search{text-align:start;-webkit-user-select:none;user-select:none}.ds-choice-section--headed-after-first.sc-ds-table-search{margin-block-start:var(--dimension-space-050)}.ds-choice-item.sc-ds-table-search{width:100%;border:none;border-radius:var(--ds-control-radius, var(--dimension-radius-025));background:transparent;cursor:default;-webkit-user-select:none;user-select:none;text-align:left;color:inherit}.ds-choice-item.sc-ds-table-search:has(.ds-choice-item__subtext){height:auto;min-height:var(--ds-control-height, var(--dimension-size-400));padding-block:var(--ds-control-padding-inline, var(--dimension-space-075));align-items:flex-start}.ds-choice-item__content.sc-ds-table-search{display:flex;flex:1;flex-direction:column;gap:var(--dimension-space-025);min-width:0}ds-text.ds-choice-item__label.sc-ds-table-search{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}ds-text.ds-choice-item__subtext.sc-ds-table-search{display:-webkit-box;overflow:hidden;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ds-choice-item__icon.sc-ds-table-search,.ds-choice-item__suffix.sc-ds-table-search{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));pointer-events:none}.ds-choice-item.ds-interaction-fill--selected.sc-ds-table-search .ds-choice-item__icon.sc-ds-table-search{color:var(--color-foreground-primary)}.ds-choice-item__tag.sc-ds-table-search{flex-shrink:0;pointer-events:none}.ds-choice-empty.sc-ds-table-search,.ds-choice-loading.sc-ds-table-search{min-height:var(--dimension-size-600);padding:var(--dimension-space-100)}.ds-choice-footer.sc-ds-table-search{position:relative;box-sizing:border-box;padding-block:var(--dimension-space-050)}.ds-choice-footer.sc-ds-table-search::before{content:'';position:absolute;inset:0 0 auto;height:var(--dimension-stroke-width-012);background-color:var(--color-border-tertiary);pointer-events:none}.ds-choice-footer__content.sc-ds-table-search{display:flex;align-items:center;justify-content:space-between;column-gap:var(--dimension-space-050);box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400))}.ds-choice-footer__summary.sc-ds-table-search,.ds-choice-footer__summary-measure.sc-ds-table-search,.ds-choice-footer__clear.sc-ds-table-search ds-text.sc-ds-table-search,.ds-choice-footer__action.sc-ds-table-search ds-text.sc-ds-table-search{padding-inline:calc( var(--dimension-space-050) + var(--ds-control-padding-inline, var(--dimension-space-075)) + var(--ds-control-label-inset, var(--dimension-space-025)) )}.ds-choice-footer__summary.sc-ds-table-search,.ds-choice-footer__summary-measure.sc-ds-table-search,.ds-choice-footer__clear.sc-ds-table-search,.ds-choice-footer__action.sc-ds-table-search{white-space:nowrap}.ds-choice-footer__summary-measure.sc-ds-table-search{position:absolute;visibility:hidden;pointer-events:none}.ds-choice-footer__clear.sc-ds-table-search,.ds-choice-footer__action.sc-ds-table-search{appearance:none;display:inline-flex;align-items:center;padding:0;border:0;border-radius:var(--dimension-radius-025);background:transparent;cursor:default}@media (forced-colors: active){.ds-choice-popup.sc-ds-table-search{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-table-search::after{box-shadow:none}.ds-choice-section--divided.sc-ds-table-search{border-bottom-color:var(--ds-forced-color-content)}.ds-choice-footer.sc-ds-table-search::before{background-color:var(--ds-forced-color-content)}}.ds-control--lg.ds-control--inset.sc-ds-table-search-h,.ds-control--lg.ds-control--inset.sc-ds-table-search{--ds-control-height:calc(var(--dimension-size-500) - var(--dimension-space-050));--ds-control-padding-inline:calc(var(--dimension-space-100) - var(--dimension-space-025))}.ds-control--md.ds-control--inset.sc-ds-table-search-h,.ds-control--md.ds-control--inset.sc-ds-table-search{--ds-control-height:calc(var(--dimension-size-400) - var(--dimension-space-050));--ds-control-padding-inline:calc(var(--dimension-space-075) - var(--dimension-space-025))}.ds-control--sm.ds-control--inset.sc-ds-table-search-h,.ds-control--sm.ds-control--inset.sc-ds-table-search{--ds-control-height:calc(var(--dimension-size-300) - var(--dimension-space-050));--ds-control-padding-inline:calc(var(--dimension-space-050) - var(--dimension-space-025))}.ds-control--xs.ds-control--inset.sc-ds-table-search-h,.ds-control--xs.ds-control--inset.sc-ds-table-search{--ds-control-height:calc(var(--dimension-size-200) - var(--dimension-space-050));--ds-control-padding-inline:calc(var(--dimension-space-025) - var(--dimension-space-025))}.ds-control--lg.ds-control--inset-double.sc-ds-table-search-h,.ds-control--lg.ds-control--inset-double.sc-ds-table-search{--ds-control-height:calc(var(--dimension-size-500) - var(--dimension-space-100));--ds-control-padding-inline:calc(var(--dimension-space-100) - var(--dimension-space-050))}.ds-control--md.ds-control--inset-double.sc-ds-table-search-h,.ds-control--md.ds-control--inset-double.sc-ds-table-search{--ds-control-height:calc(var(--dimension-size-400) - var(--dimension-space-100));--ds-control-padding-inline:calc(var(--dimension-space-075) - var(--dimension-space-050))}.ds-control--sm.ds-control--inset-double.sc-ds-table-search-h,.ds-control--sm.ds-control--inset-double.sc-ds-table-search{--ds-control-height:calc(var(--dimension-size-300) - var(--dimension-space-100));--ds-control-padding-inline:calc(var(--dimension-space-050) - var(--dimension-space-050))}.ds-text--display-medium.sc-ds-table-search-h,.ds-text--display-medium.sc-ds-table-search{font-size:var(--typography-fontsize-3xl);line-height:var(--typography-lineheight-3xl)}.ds-text--display-small.sc-ds-table-search-h,.ds-text--display-small.sc-ds-table-search{font-size:var(--typography-fontsize-2xl);line-height:var(--typography-lineheight-2xl)}.ds-text--title-large.sc-ds-table-search-h,.ds-text--title-large.sc-ds-table-search{font-size:var(--typography-fontsize-xl);line-height:var(--typography-lineheight-xl)}.ds-text--title-medium.sc-ds-table-search-h,.ds-text--title-medium.sc-ds-table-search{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--title-small.sc-ds-table-search-h,.ds-text--title-small.sc-ds-table-search{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-large.sc-ds-table-search-h,.ds-text--body-large.sc-ds-table-search{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--body-medium.sc-ds-table-search-h,.ds-text--body-medium.sc-ds-table-search{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-small.sc-ds-table-search-h,.ds-text--body-small.sc-ds-table-search{font-size:var(--typography-fontsize-sm);line-height:var(--typography-lineheight-sm)}.ds-text--caption.sc-ds-table-search-h,.ds-text--caption.sc-ds-table-search{font-size:var(--typography-fontsize-xs);line-height:var(--typography-lineheight-xs);text-transform:uppercase}.ds-text--display-medium.ds-text--emphasis.sc-ds-table-search-h,.ds-text--display-small.ds-text--emphasis.sc-ds-table-search-h,.ds-text--display-medium.ds-text--emphasis.sc-ds-table-search,.ds-text--display-small.ds-text--emphasis.sc-ds-table-search{font-weight:var(--typography-weight-bold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--display-medium.ds-text--regular.sc-ds-table-search-h,.ds-text--display-small.ds-text--regular.sc-ds-table-search-h,.ds-text--display-medium.ds-text--regular.sc-ds-table-search,.ds-text--display-small.ds-text--regular.sc-ds-table-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-large.ds-text--emphasis.sc-ds-table-search-h,.ds-text--title-large.ds-text--emphasis.sc-ds-table-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--title-large.ds-text--regular.sc-ds-table-search-h,.ds-text--title-large.ds-text--regular.sc-ds-table-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--emphasis.sc-ds-table-search-h,.ds-text--title-small.ds-text--emphasis.sc-ds-table-search-h,.ds-text--title-medium.ds-text--emphasis.sc-ds-table-search,.ds-text--title-small.ds-text--emphasis.sc-ds-table-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--regular.sc-ds-table-search-h,.ds-text--title-small.ds-text--regular.sc-ds-table-search-h,.ds-text--title-medium.ds-text--regular.sc-ds-table-search,.ds-text--title-small.ds-text--regular.sc-ds-table-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-large.ds-text--emphasis.sc-ds-table-search-h,.ds-text--body-medium.ds-text--emphasis.sc-ds-table-search-h,.ds-text--body-large.ds-text--emphasis.sc-ds-table-search,.ds-text--body-medium.ds-text--emphasis.sc-ds-table-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--body-large.ds-text--regular.sc-ds-table-search-h,.ds-text--body-medium.ds-text--regular.sc-ds-table-search-h,.ds-text--body-large.ds-text--regular.sc-ds-table-search,.ds-text--body-medium.ds-text--regular.sc-ds-table-search{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--emphasis.sc-ds-table-search-h,.ds-text--body-small.ds-text--emphasis.sc-ds-table-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--regular.sc-ds-table-search-h,.ds-text--body-small.ds-text--regular.sc-ds-table-search{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-none)}.ds-text--caption.ds-text--emphasis.sc-ds-table-search-h,.ds-text--caption.ds-text--emphasis.sc-ds-table-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-positive)}.ds-text--caption.ds-text--regular.sc-ds-table-search-h,.ds-text--caption.ds-text--regular.sc-ds-table-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-positive)}.ds-visually-hidden.sc-ds-table-search-h,.ds-visually-hidden.sc-ds-table-search{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.table-search-host.sc-ds-table-search-h{display:inline-flex;box-sizing:border-box;inline-size:100%;min-inline-size:0;--ds-table-search-foreground:var(--color-foreground-primary);--ds-table-search-adornment:var(--color-foreground-secondary);--ds-table-search-placeholder:var(--color-foreground-secondary);--ds-table-search-placeholder-active:var(--color-foreground-quaternary);--ds-table-search-border:var(--color-border-secondary)}.table-search__control.sc-ds-table-search{inline-size:100%;min-inline-size:0;padding-inline-end:var(--dimension-space-050);overflow:hidden;border:0;background:transparent;color:var(--ds-table-search-foreground);--ds-interaction-border-width:var(--dimension-stroke-width-012);--ds-interaction-border-color:var(--ds-table-search-border)}.table-search__control.sc-ds-table-search:focus-within{--ds-interaction-border-width:var(--dimension-stroke-width-018);--ds-interaction-border-color:var(--color-border-bold-brand)}.ds-control-inactive.sc-ds-table-search-h .table-search__control.sc-ds-table-search::after{background:transparent}.table-search__icon.sc-ds-table-search,.table-search__actions.sc-ds-table-search{position:relative;z-index:2;flex:none}.table-search__icon.sc-ds-table-search{color:var(--ds-table-search-adornment)}.table-search__editor.sc-ds-table-search{position:relative;z-index:2;display:flex;flex:1 1 auto;align-items:center;min-inline-size:0;block-size:100%;gap:var(--dimension-space-050);overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.table-search__editor.sc-ds-table-search::-webkit-scrollbar{display:none}.table-search__chip.sc-ds-table-search{flex:none;max-inline-size:var(--dimension-panel-width-2xs)}.table-search__input.sc-ds-table-search{appearance:none;box-sizing:border-box;flex:1 0 var(--dimension-size-600);min-inline-size:var(--dimension-size-600);block-size:100%;margin:0;padding:0;border:0;outline:0;background:transparent;color:var(--ds-table-search-foreground);text-overflow:ellipsis}.table-search__input.sc-ds-table-search::-webkit-search-cancel-button,.table-search__input.sc-ds-table-search::-webkit-search-decoration{display:none}.table-search__input.sc-ds-table-search::placeholder{color:var(--ds-table-search-placeholder)}.table-search__input.sc-ds-table-search:focus::placeholder{color:var(--ds-table-search-placeholder-active)}.table-search__actions.sc-ds-table-search{display:flex;align-items:center;gap:var(--dimension-space-050)}.table-search__clear.sc-ds-table-search,.table-search__slash.sc-ds-table-search,.table-search__action-divider.sc-ds-table-search{flex:none}.table-search__slash.sc-ds-table-search{color:var(--ds-table-search-adornment)}.table-search__popup.sc-ds-table-search{--ds-choice-popup-min-inline-size:var(--dimension-menu-width-xs)}.table-search__list.sc-ds-table-search{padding:var(--dimension-space-050)}.table-search__option.sc-ds-table-search{flex:none;inline-size:100%}@media (forced-colors: active){.table-search__control.sc-ds-table-search:focus-within::after{outline-color:var(--ds-forced-color-selected)}}`;let T=0;const $=e(class e extends s{constructor(e){super();if(e!==false){this.__registerHost()}this.dsChange=t(this,"dsChange",3);this.dsFieldsChange=t(this,"dsFieldsChange",3);this.dsClear=t(this,"dsClear",3);this.value="";this.columns=[];this.selectedFieldIds=[];this.placeholder="Search";this.ariaLabel="Search table";this.clearLabel="Clear search";this.fieldMenuLabel="Choose search fields";this.isInactive=false;this.menuOpen=false;this.menuQuery="";this.activeIndex=0;this.focusRingVisible=false;this.position={x:0,y:0};this.positionReady=false;this.availableHeight=null;this.announcement="";this.componentId=`ds-table-search-${++T}`;this.inputId=`${this.componentId}-input`;this.listboxId=`${this.componentId}-listbox`;this.descriptionId=`${this.componentId}-description`;this.inputEl=null;this.controlEl=null;this.popupEl=null;this.positionController=new o({getAnchor:()=>this.controlEl,getPopup:()=>this.popupEl,getOwnerDocument:()=>this.el.ownerDocument,measure:(e,s)=>{if(!this.menuOpen||!s.isConnected)return null;const t=w(_.space050,_.space050);s.style.minWidth=`max(var(--ds-choice-popup-min-inline-size, ${_.menuWidthXs}), ${n(e.offsetWidth,t)}px)`;const i=e.getBoundingClientRect();return{anchorRect:i,popupWidth:s.offsetWidth,popupHeight:s.offsetHeight,side:"bottom",align:"start",sideOffsetPx:t,alignOffsetPx:d({align:"start",alignOffsetPx:0,sectionInsetPx:t}),viewportPadPx:t,viewportWidth:window.innerWidth,viewportHeight:window.innerHeight,collisionRect:c(e)}},apply:({x:e,y:s,availableHeight:t})=>{this.position={x:e,y:s};this.availableHeight=t},onReady:()=>{this.positionReady=true},topLayer:true,liveUpdate:"frame",observeResize:true,observeAnchorMotion:true});this.interactionController=new l({getAnchor:()=>this.controlEl,getPopup:()=>this.popupEl,getOwnerDocument:()=>this.el.ownerDocument,onOutsideActivation:()=>this.closeMenu()})}disconnectedCallback(){this.closeMenu()}syncAvailableFields(){const e=this.availableFields.length;if(e===0){this.closeMenu();return}if(this.activeIndex>=e)this.activeIndex=e-1}syncInactive(e){if(e)this.closeMenu()}async setFocus(){this.inputEl?.focus()}get selectedFields(){return z(this.searchFields,this.selectedFieldIds)}get availableFields(){return C(this.searchFields,this.selectedFieldIds)}get visibleFields(){return F(this.availableFields,this.menuQuery)}get searchFields(){return k(this.columns)}get activeOptionId(){return this.menuOpen&&this.activeIndex>=0?`${this.componentId}-option-${this.activeIndex}`:undefined}openMenu(e){if(this.isInactive||this.menuOpen||this.availableFields.length===0)return;this.menuQuery="";if(this.inputEl)this.inputEl.value="";this.activeIndex=0;this.focusRingVisible=e;this.positionReady=false;this.menuOpen=true;requestAnimationFrame((()=>{if(!this.menuOpen)return;this.interactionController.connect();this.positionController.observe();this.positionController.schedule()}))}closeMenu(){if(!this.menuOpen&&!this.popupEl)return;if(this.popupEl?.matches(":popover-open"))this.popupEl.hidePopover();this.positionController.unobserve();this.interactionController.disconnect();this.popupEl=null;this.positionReady=false;this.availableHeight=null;this.menuOpen=false;this.menuQuery=""}handleInput(e){const s=e.target.value;if(this.menuOpen){this.menuQuery=s;this.activeIndex=F(this.availableFields,s).length?0:-1;this.focusRingVisible=false;this.positionController.schedule();return}this.dsChange.emit(s)}selectField(e){this.dsFieldsChange.emit({selectedFieldIds:[...this.selectedFieldIds,e.id]});this.announcement=`${e.label} search field added.`;this.closeMenu();requestAnimationFrame((()=>this.inputEl?.focus({preventScroll:true})))}removeLastField(){const e=this.selectedFields;const s=e[e.length-1];if(!s)return;this.dsFieldsChange.emit({selectedFieldIds:this.selectedFieldIds.filter((e=>e!==s.id))});this.announcement=`${s.label} search field removed.`}removeField(e){this.dsFieldsChange.emit({selectedFieldIds:this.selectedFieldIds.filter((s=>s!==e.id))});this.announcement=`${e.label} search field removed.`;requestAnimationFrame((()=>this.inputEl?.focus({preventScroll:true})))}clearSearch(){if(this.value)this.dsChange.emit("");if(this.selectedFieldIds.length)this.dsFieldsChange.emit({selectedFieldIds:[]});this.dsClear.emit();this.announcement="Search cleared.";this.closeMenu();requestAnimationFrame((()=>this.inputEl?.focus({preventScroll:true})))}handleKeyDown(e){if(e.key==="/"&&!this.menuOpen&&!e.altKey&&!e.ctrlKey&&!e.metaKey){e.preventDefault();this.openMenu(true);return}if(e.key==="Backspace"&&this.menuOpen&&this.menuQuery.length===0){e.preventDefault();this.closeMenu();return}if(e.key==="Backspace"&&this.value.length===0){if(this.selectedFields.length){e.preventDefault();this.removeLastField()}return}if(!this.menuOpen)return;if(e.key==="Escape"){e.preventDefault();this.closeMenu();return}if(e.key==="ArrowDown"||e.key==="ArrowUp"){e.preventDefault();this.focusRingVisible=true;this.activeIndex=I(this.activeIndex,this.visibleFields.length,e.key==="ArrowDown"?1:-1);this.el.querySelector(`#${CSS.escape(this.activeOptionId??"")}`)?.scrollIntoView({block:"nearest"});return}if(e.key==="Enter"){const s=this.visibleFields[this.activeIndex];if(!s)return;e.preventDefault();this.selectField(s);return}if(e.key==="Tab")this.closeMenu()}render(){const e=this.selectedFields;const s=this.availableFields;const t=this.visibleFields;const r=this.menuOpen?this.menuQuery:this.value;const o=this.value.length>0||e.length>0;const c=e.length?`Search limited to ${e.map((e=>e.label)).join(" or ")}.`:"Search includes every available table field. Type slash to choose fields.";const n={position:"fixed",left:"0",top:"0",transform:`translate(${Math.round(this.position.x)}px, ${Math.round(this.position.y)}px)`,zIndex:"var(--dimension-z-index-floating)",visibility:this.positionReady?"visible":"hidden"};if(this.availableHeight!==null){n["max-height"]=`${Math.floor(this.availableHeight)}px`}return i(a,{key:"13585b279a0702ce769cc30c90901ed051851198",class:{"table-search-host":true,"ds-control--md":true,"ds-control-inactive":this.isInactive},"data-filled":o?"":undefined,"data-expanded":this.menuOpen?"":undefined},i("div",{key:"aa03b12ed4354e70fb02e8805945f2f57ce2d15d",ref:e=>{this.controlEl=e??null},class:"table-search__control ds-control-frame ds-control--md ds-interaction-fill"},i("span",{key:"cc4610915e159d7c4a6ffd8ab92971611772d162",class:"table-search__icon ds-control-icon-box ds-interaction-fill__content","aria-hidden":"true"},i("ds-icon",{key:"62b6a953aeac492d63048c29025737b63e77ab78",name:"MagnifyingGlass",size:"md",color:"inherit"})),i("div",{key:"8c63a2b646caa93c9cc7eee5eacd5fe0586e20c2",class:"table-search__editor ds-interaction-fill__content"},e.map((e=>i("ds-chip",{class:"table-search__chip",key:e.id,label:e.label,size:"md",state:"default",isInset:true,insetDepth:"double",isInactive:this.isInactive,onDsRemove:()=>this.removeField(e)}))),i("input",{key:"44c7777b353af1519814f47a7eb7b73c0f973a4b",ref:e=>{this.inputEl=e??null},id:this.inputId,class:"table-search__input ds-text--body-medium ds-text--regular",type:"search",role:"combobox",value:r,placeholder:this.placeholder,disabled:this.isInactive,"aria-label":this.ariaLabel,"aria-describedby":this.descriptionId,"aria-haspopup":"listbox","aria-expanded":String(this.menuOpen),"aria-controls":this.menuOpen?this.listboxId:undefined,"aria-activedescendant":this.activeOptionId,"aria-keyshortcuts":"/",autoComplete:"off",autoCapitalize:"none",autoCorrect:"off",spellcheck:false,onInput:e=>this.handleInput(e),onKeyDown:e=>this.handleKeyDown(e)})),this.searchFields.length>0&&i("div",{key:"f95f5207858ceb300b24ce64b6e629306579db6c",class:"table-search__actions ds-interaction-fill__content"},r.length>0&&!this.isInactive&&i("ds-button-unfilled",{key:"0d3fad8a08c7accd8cf0555b4f57b522e753d6bc",class:"table-search__clear",variant:"icon",size:"sm",icon:"CrossCircle",hasBorder:false,rounded:true,ariaLabel:this.clearLabel,onDsClick:()=>this.clearSearch()}),r.length>0&&!this.isInactive&&i("ds-divider",{key:"f2f3c02956599ce4368c7e7223f3c64a0e4a939d",class:"table-search__action-divider",orientation:"vertical",length:"var(--dimension-size-200)"}),i("ds-button-unfilled",{key:"0c6b5a245476ff97145ab34db0328dff99c2050b",class:"table-search__slash",variant:"label",size:"md",label:"/",labelEmphasis:false,isInset:true,insetDepth:"double",hasBorder:false,ariaLabel:this.fieldMenuLabel,focusTabIndex:-1,haspopup:"listbox",controls:this.menuOpen?this.listboxId:undefined,expanded:this.menuOpen,isInactive:this.isInactive||s.length===0,onMouseDown:e=>e.preventDefault(),onDsClick:()=>{this.inputEl?.focus({preventScroll:true});this.openMenu(false)}}))),i("span",{key:"65a1be5684207cdce818cc6a940dc97ff2f89b4f",id:this.descriptionId,class:"ds-visually-hidden"},c),i("span",{key:"a8ee6c3a260a40456186ea915b629c3c0d58e1e5",class:"ds-visually-hidden","aria-live":"polite"},this.announcement),this.menuOpen&&i("div",{key:"3600c5576b6c1b551c4f90c5058c18d8e4a2a142",popover:"manual",ref:e=>{this.popupEl=e??null},class:"table-search__popup ds-choice-popup",style:n},i("div",{key:"fd4f4bb867ba2a7cb1907d474303b1a11545bf8d",id:this.listboxId,class:"table-search__list ds-choice-list",role:"listbox","aria-label":this.fieldMenuLabel},t.map(((e,s)=>{const t=s===this.activeIndex;return i("div",{id:`${this.componentId}-option-${s}`,key:e.id,class:{"table-search__option":true,"ds-choice-item":true,"ds-control-frame":true,"ds-control--md":true,"ds-focus-ring-inset":true,"ds-focus-ring--visible":t&&this.focusRingVisible,"ds-interaction-fill":true,"ds-interaction-fill--selected":t},role:"option","aria-selected":String(t),onMouseDown:e=>e.preventDefault(),onMouseMove:()=>{this.focusRingVisible=false;this.activeIndex=s},onClick:()=>this.selectField(e)},i("ds-text",{class:"ds-choice-item__label ds-control-label-box ds-interaction-fill__content",as:"span",variant:"text-body-medium",color:t?"primary":"secondary"},e.label))})),t.length===0&&i("div",{key:"d71b036fbc57f029d4cc44266e3a61ee7f33f6ec",class:"table-search__empty ds-choice-empty ds-empty-region"},i("ds-empty-state",{key:"2ff57f0a81221da6f7e65abb5e2435931d10aa22",body:"No matching data points"})))))}get el(){return this}static get watchers(){return{columns:[{syncAvailableFields:0}],selectedFieldIds:[{syncAvailableFields:0}],isInactive:[{syncInactive:0}]}}static get style(){return j()}},[2,"ds-table-search",{value:[1],columns:[16],selectedFieldIds:[16],placeholder:[1],ariaLabel:[1,"aria-label"],clearLabel:[1,"clear-label"],fieldMenuLabel:[1,"field-menu-label"],isInactive:[4,"is-inactive"],menuOpen:[32],menuQuery:[32],activeIndex:[32],focusRingVisible:[32],position:[32],positionReady:[32],availableHeight:[32],announcement:[32],setFocus:[64]},undefined,{columns:[{syncAvailableFields:0}],selectedFieldIds:[{syncAvailableFields:0}],isInactive:[{syncInactive:0}]}]);function S(){if(typeof customElements==="undefined"){return}const e=["ds-table-search","ds-badge","ds-button-unfilled","ds-chip","ds-divider","ds-empty-state","ds-icon","ds-loader","ds-text","ds-tooltip"];e.forEach((e=>{switch(e){case"ds-table-search":if(!customElements.get(r(e))){customElements.define(r(e),$)}break;case"ds-badge":if(!customElements.get(r(e))){b()}break;case"ds-button-unfilled":if(!customElements.get(r(e))){p()}break;case"ds-chip":if(!customElements.get(r(e))){f()}break;case"ds-divider":if(!customElements.get(r(e))){v()}break;case"ds-empty-state":if(!customElements.get(r(e))){m()}break;case"ds-icon":if(!customElements.get(r(e))){u()}break;case"ds-loader":if(!customElements.get(r(e))){g()}break;case"ds-text":if(!customElements.get(r(e))){x()}break;case"ds-tooltip":if(!customElements.get(r(e))){y()}break}}))}S();const A=$;const D=S;export{A as DsTableSearch,D as defineCustomElement};
|
|
2
2
|
//# sourceMappingURL=ds-table-search.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as s,H as e,c as t,h as i,a as n,t as o}from"./index.js";import{i as r}from"./p-BMERUCe1.js";import{d as
|
|
1
|
+
import{p as s,H as e,c as t,h as i,a as n,t as o}from"./index.js";import{i as r}from"./p-BMERUCe1.js";import{d as l}from"./p-BMzn2Cmw.js";import{d as a}from"./p-6_CNVbqa.js";import{d as c}from"./p-Cea7rROU.js";import{d}from"./p-0XTyQNRG.js";import{d as u}from"./p-DlbhmXjH.js";import{d as m}from"./p-Q7AOgrg5.js";import{d as f}from"./p-DGkn8FwV.js";import{d as h}from"./p-BIGpc__9.js";import{d as b}from"./p-DQQsS9Rx.js";import{d as p}from"./p-DW8ssbfI.js";const g="direction:asc";const k="direction:desc";const E="field:";function w(s){const e=[];const t=new Set;for(const i of s){if(r(i)||!i.sortable)continue;const s=i.headerSegments?.filter((s=>s.sortKey.trim()))??[];if(s.length>0){for(const i of s){if(t.has(i.sortKey))continue;t.add(i.sortKey);e.push({id:i.sortKey,label:i.dataLabel?.trim()||i.label.trim()||i.sortKey})}continue}if(t.has(i.id))continue;t.add(i.id);e.push({id:i.id,label:i.dataLabel?.trim()||i.header.trim()||i.headerLabel?.trim()||i.id})}return e}function j(s,e){const t=w(s);return[{header:"Data",items:t.map((s=>({label:s.label,value:`${E}${encodeURIComponent(s.id)}`,isSelected:e?.columnId===s.id})))},{header:"Direction",items:[{label:"Ascending",value:g,icon:"ArrowUp",isSelected:e?.direction==="asc"},{label:"Descending",value:k,icon:"ArrowDown",isSelected:e?.direction==="desc"}]}]}function S(s,e){if(s===e)return true;if(!s||!e)return false;return s.columnId===e.columnId&&s.direction===e.direction}function D(s,e,t){const i=w(s);if(i.length===0)return e??null;if(t.value===g||t.value===k){const s=t.value===g?"asc":"desc";const n=i.some((s=>s.id===e?.columnId))?e.columnId:i[0].id;return{columnId:n,direction:s}}if(!t.value?.startsWith(E))return e??null;let n;try{n=decodeURIComponent(t.value.slice(E.length))}catch{return e??null}if(!i.some((s=>s.id===n)))return e??null;if(e?.columnId===n)return e??null;return{columnId:n,direction:e?.direction??"asc"}}const x=()=>`.sc-ds-table-sort-h{display:inline-flex;min-inline-size:0;max-inline-size:var(--dimension-menu-width-xs)}[hidden].sc-ds-table-sort-h{display:none}`;let C=0;const y=s(class s extends e{constructor(s){super();if(s!==false){this.__registerHost()}this.dsSortChange=t(this,"dsSortChange",3);this.columns=[];this.sort=null;this.ariaLabel=null;this.menuOpen=false;this.initialFocusVisible=false;this.componentId=`ds-table-sort-${++C}`;this.triggerId=`${this.componentId}-trigger`;this.menuId=`${this.componentId}-menu`}async setFocus(){const s=this.el.querySelector(`#${CSS.escape(this.triggerId)}`);await(s?.setFocus?.())}render(){const s=w(this.columns);const e=this.ariaLabel?.trim()||"Sort table";return i(n,{key:"dcbc9380d1ece45053cd5b1d69899c333963af08",hidden:s.length===0?true:undefined},s.length===0?null:i("ds-button-unfilled",{id:this.triggerId,variant:"icon-label",size:"md",icon:"ArrowsVertical",label:"Sort",labelEmphasis:false,pressScale:false,"aria-label":e,hasMenu:true,collapseLabel:true,expanded:this.menuOpen,controls:this.menuId,onDsClick:s=>{this.toggle(s.detail.detail===0)}}),s.length===0?null:i("ds-menu",{id:this.menuId,open:this.menuOpen,anchorId:this.triggerId,align:"start",side:"bottom",menuLabel:e,selectionMode:"none",initialFocusVisible:this.initialFocusVisible,sections:j(this.columns,this.sort),onDsClose:()=>this.close(),onDsSelect:s=>this.handleSelect(s.detail)}))}toggle(s=false){if(this.menuOpen)this.close();else this.open(s)}open(s=false){if(this.menuOpen)return;this.initialFocusVisible=s;this.menuOpen=true}close(){this.menuOpen=false}handleSelect(s){const e=D(this.columns,this.sort,s);if(S(this.sort,e))return;this.dsSortChange.emit({sort:e})}get el(){return this}static get style(){return x()}},[2,"ds-table-sort",{columns:[16],sort:[16],ariaLabel:[1,"aria-label"],menuOpen:[32],initialFocusVisible:[32],setFocus:[64]}]);function I(){if(typeof customElements==="undefined"){return}const s=["ds-table-sort","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-table-sort":if(!customElements.get(o(s))){customElements.define(o(s),y)}break;case"ds-badge":if(!customElements.get(o(s))){l()}break;case"ds-button-unfilled":if(!customElements.get(o(s))){a()}break;case"ds-icon":if(!customElements.get(o(s))){c()}break;case"ds-loader":if(!customElements.get(o(s))){d()}break;case"ds-menu":if(!customElements.get(o(s))){u()}break;case"ds-swatch-picker":if(!customElements.get(o(s))){m()}break;case"ds-switch":if(!customElements.get(o(s))){f()}break;case"ds-tag":if(!customElements.get(o(s))){h()}break;case"ds-text":if(!customElements.get(o(s))){b()}break;case"ds-tooltip":if(!customElements.get(o(s))){p()}break}}))}I();const R=y;const $=I;export{R as DsTableSort,$ as defineCustomElement};
|
|
2
2
|
//# sourceMappingURL=ds-table-sort.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as t,H as a,h as e,a as l,t as o}from"./index.js";import{d as s}from"./p-Bv6FSDPR.js";const b=()=>`.sc-ds-table-toolbar-h{--ds-control-press-active-scale:var(--dimension-scale-default);display:block;min-inline-size:0;max-inline-size:100%}[slot='header'].sc-ds-table-toolbar-h{display:contents;max-inline-size:none}.table-toolbar.sc-ds-table-toolbar{box-sizing:border-box;display:flex;align-items:center;inline-size:100%;min-inline-size:0;gap:var(--dimension-space-100);overflow-x:auto;overflow-y:hidden;scrollbar-width:none}[slot='header'].sc-ds-table-toolbar-h .table-toolbar.sc-ds-table-toolbar{display:contents}.table-toolbar.sc-ds-table-toolbar::-webkit-scrollbar{display:none}.table-toolbar__start.sc-ds-table-toolbar,.table-toolbar__search.sc-ds-table-toolbar,.table-toolbar__leading.sc-ds-table-toolbar,.table-toolbar__trailing.sc-ds-table-toolbar{display:flex;align-items:center;min-inline-size:0;gap:var(--dimension-space-100)}.table-toolbar__start.sc-ds-table-toolbar{flex:0 0 auto;min-inline-size:0;max-inline-size:var(--dimension-menu-width-xs);overflow:hidden}.table-toolbar__rule.sc-ds-table-toolbar{flex:0 0 auto}.table-toolbar__search.sc-ds-table-toolbar{flex:1 1 0;max-inline-size:none;contain:inline-size}.table-toolbar__slot--empty.sc-ds-table-toolbar{display:none}.table-toolbar__leading.sc-ds-table-toolbar{flex:0 0 auto}.table-toolbar__trailing.sc-ds-table-toolbar{flex:0 0 auto;margin-inline-start:auto}.table-toolbar__trailing.sc-ds-table-toolbar>*.sc-ds-table-toolbar,.table-toolbar.sc-ds-table-toolbar [slot='start'].sc-ds-table-toolbar,.table-toolbar.sc-ds-table-toolbar ds-table-filter.sc-ds-table-toolbar,.table-toolbar.sc-ds-table-toolbar ds-filter-menu.sc-ds-table-toolbar,.table-toolbar.sc-ds-table-toolbar ds-select.sc-ds-table-toolbar,.table-toolbar.sc-ds-table-toolbar ds-table-group.sc-ds-table-toolbar,.table-toolbar.sc-ds-table-toolbar ds-table-sort.sc-ds-table-toolbar{min-inline-size:0;max-inline-size:var(--dimension-menu-width-xs);--ds-choice-popup-min-inline-size:var(--dimension-menu-width-xs)}.table-toolbar__trailing.sc-ds-table-toolbar>*.sc-ds-table-toolbar{flex:0 0 auto}.table-toolbar__start.sc-ds-table-toolbar slot.sc-ds-table-toolbar,.table-toolbar__search.sc-ds-table-toolbar slot.sc-ds-table-toolbar,.table-toolbar__leading.sc-ds-table-toolbar slot.sc-ds-table-toolbar,.table-toolbar__trailing.sc-ds-table-toolbar slot.sc-ds-table-toolbar{display:contents}`;const r=1<<0;const i=1<<1;const n=1<<2;const
|
|
1
|
+
import{p as t,H as a,h as e,a as l,t as o}from"./index.js";import{d as s}from"./p-Bv6FSDPR.js";const b=()=>`.sc-ds-table-toolbar-h{--ds-control-press-active-scale:var(--dimension-scale-default);display:block;min-inline-size:0;max-inline-size:100%}[slot='header'].sc-ds-table-toolbar-h{display:contents;max-inline-size:none}.table-toolbar.sc-ds-table-toolbar{box-sizing:border-box;display:flex;align-items:center;inline-size:100%;min-inline-size:0;gap:var(--dimension-space-100);overflow-x:auto;overflow-y:hidden;scrollbar-width:none}[slot='header'].sc-ds-table-toolbar-h .table-toolbar.sc-ds-table-toolbar{display:contents}.table-toolbar.sc-ds-table-toolbar::-webkit-scrollbar{display:none}.table-toolbar__start.sc-ds-table-toolbar,.table-toolbar__search.sc-ds-table-toolbar,.table-toolbar__leading.sc-ds-table-toolbar,.table-toolbar__trailing.sc-ds-table-toolbar{display:flex;align-items:center;min-inline-size:0;gap:var(--dimension-space-100)}.table-toolbar__start.sc-ds-table-toolbar{flex:0 0 auto;min-inline-size:0;max-inline-size:var(--dimension-menu-width-xs);overflow:hidden}.table-toolbar__rule.sc-ds-table-toolbar{flex:0 0 auto}.table-toolbar__search.sc-ds-table-toolbar{flex:1 1 0;max-inline-size:none;contain:inline-size}.table-toolbar__slot--empty.sc-ds-table-toolbar{display:none}.table-toolbar__leading.sc-ds-table-toolbar{flex:0 0 auto}.table-toolbar__trailing.sc-ds-table-toolbar{flex:0 0 auto;margin-inline-start:auto}.table-toolbar__trailing.sc-ds-table-toolbar>*.sc-ds-table-toolbar,.table-toolbar.sc-ds-table-toolbar [slot='start'].sc-ds-table-toolbar,.table-toolbar.sc-ds-table-toolbar ds-table-filter.sc-ds-table-toolbar,.table-toolbar.sc-ds-table-toolbar ds-filter-menu.sc-ds-table-toolbar,.table-toolbar.sc-ds-table-toolbar ds-select.sc-ds-table-toolbar,.table-toolbar.sc-ds-table-toolbar ds-table-group.sc-ds-table-toolbar,.table-toolbar.sc-ds-table-toolbar ds-table-sort.sc-ds-table-toolbar{min-inline-size:0;max-inline-size:var(--dimension-menu-width-xs);--ds-choice-popup-min-inline-size:var(--dimension-menu-width-xs)}.table-toolbar__trailing.sc-ds-table-toolbar>*.sc-ds-table-toolbar{flex:0 0 auto}.table-toolbar__start.sc-ds-table-toolbar slot.sc-ds-table-toolbar,.table-toolbar__search.sc-ds-table-toolbar slot.sc-ds-table-toolbar,.table-toolbar__leading.sc-ds-table-toolbar slot.sc-ds-table-toolbar,.table-toolbar__trailing.sc-ds-table-toolbar slot.sc-ds-table-toolbar{display:contents}`;const r=1<<0;const i=1<<1;const n=1<<2;const d=1<<3;const c=t(class t extends a{constructor(t){super();if(t!==false){this.__registerHost()}this.label="Table controls";this.slotPresence=0;this.syncSlotPresence=()=>{let t=0;if(this.hasOwnedSlot("start"))t|=r;if(this.hasOwnedSlot("search"))t|=i;if(this.hasOwnedSlot("leading"))t|=n;if(this.hasOwnedSlot("trailing"))t|=d;if(t!==this.slotPresence)this.slotPresence=t}}componentWillLoad(){this.syncSlotPresence()}hasOwnedSlot(t){return Array.from(this.el.querySelectorAll(`[slot="${t}"]`)).some((t=>t.closest("ds-table-toolbar")===this.el))}render(){const t=(this.slotPresence&r)!==0;const a=(this.slotPresence&i)!==0;const o=(this.slotPresence&n)!==0;const s=(this.slotPresence&d)!==0;return e(l,{key:"654b4665cea13ff61af810e67d9aba8315b04aa5"},e("div",{key:"d70a19fe75b90dbd28c56ab8b223159b541c1c69",class:"table-toolbar",role:"toolbar","aria-label":this.label},e("div",{key:"795fda2e3bf3e358233b0a7d94154bc1d0f6ad0b",class:{"table-toolbar__start":true,"table-toolbar__slot--empty":!t}},e("slot",{key:"e8bcc94f577d928863691a622e293998ea28080e",name:"start",onSlotchange:this.syncSlotPresence})),e("ds-divider",{key:"6749f58593fdc7133fc4a9a9ed5a66b849ad3eb4",class:{"table-toolbar__rule":true,"table-toolbar__slot--empty":!t},orientation:"vertical",length:"32px"}),e("div",{key:"9cdc9b4de2ae13739b83469bc9e13ba298066a43",class:{"table-toolbar__search":true,"table-toolbar__slot--empty":!a}},e("slot",{key:"00cbc140107922d651313ba373615c67c7ac75a7",name:"search",onSlotchange:this.syncSlotPresence})),e("div",{key:"f00e5a6ee10ac54baa17187a1a748a7d7d1ce2e4",class:{"table-toolbar__leading":true,"table-toolbar__slot--empty":!o}},e("slot",{key:"011eafe240802fddeb898dedb40ce0423730ea40",name:"leading",onSlotchange:this.syncSlotPresence})),e("div",{key:"ac9f8be556d44bc93b743ddf8da4bc83e1ad2355",class:{"table-toolbar__trailing":true,"table-toolbar__slot--empty":!s}},e("slot",{key:"ddd058aabc0e4b597c64a069739889fd2975d881",name:"trailing",onSlotchange:this.syncSlotPresence}))))}get el(){return this}static get style(){return b()}},[262,"ds-table-toolbar",{label:[1],slotPresence:[32]}]);function _(){if(typeof customElements==="undefined"){return}const t=["ds-table-toolbar","ds-divider"];t.forEach((t=>{switch(t){case"ds-table-toolbar":if(!customElements.get(o(t))){customElements.define(o(t),c)}break;case"ds-divider":if(!customElements.get(o(t))){s()}break}}))}_();const h=c;const m=_;export{h as DsTableToolbar,m as defineCustomElement};
|
|
2
2
|
//# sourceMappingURL=ds-table-toolbar.js.map
|