@ds-mo/ui 14.16.0 → 14.17.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/dist/.package-ready.json +1 -1
  2. package/dist/agent-patterns.json +1 -1
  3. package/dist/agent.json +171 -15
  4. package/dist/angular/ds-table-filter.d.ts +44 -0
  5. package/dist/angular/ds-table-filter.js +57 -0
  6. package/dist/angular/index.d.ts +1 -1
  7. package/dist/angular/index.js +1 -0
  8. package/dist/angular/proxies.d.ts +1 -0
  9. package/dist/angular/proxies.js +1 -0
  10. package/dist/components/ds-agent-questionnaire.js +1 -1
  11. package/dist/components/ds-agent-response.js +1 -1
  12. package/dist/components/ds-banner.js +1 -1
  13. package/dist/components/ds-bar-nav.js +1 -1
  14. package/dist/components/ds-bar-title.js +1 -1
  15. package/dist/components/ds-bar-workflow.js +1 -1
  16. package/dist/components/ds-button-unfilled.js +1 -1
  17. package/dist/components/ds-card-chart.js +1 -1
  18. package/dist/components/ds-card-overview.js +1 -1
  19. package/dist/components/ds-card-setting.js +1 -1
  20. package/dist/components/ds-chart.js +1 -1
  21. package/dist/components/ds-code-block.js +1 -1
  22. package/dist/components/ds-filter-menu.js +1 -1
  23. package/dist/components/ds-filter-menu.js.map +1 -1
  24. package/dist/components/ds-input.js +1 -1
  25. package/dist/components/ds-markdown.js +1 -1
  26. package/dist/components/ds-menu.js +1 -1
  27. package/dist/components/ds-message-actions.js +1 -1
  28. package/dist/components/ds-message-composer.js +1 -1
  29. package/dist/components/ds-message-scroller.js +1 -1
  30. package/dist/components/ds-mobile-header.js +1 -1
  31. package/dist/components/ds-mobile-section-switcher.js +1 -1
  32. package/dist/components/ds-mobile-sheet-nav.js +1 -1
  33. package/dist/components/ds-modal.js +1 -1
  34. package/dist/components/ds-pagination.js +1 -1
  35. package/dist/components/ds-panel-nav.js +1 -1
  36. package/dist/components/ds-panel-tool-header.js +1 -1
  37. package/dist/components/ds-panel-tool-search.js +1 -1
  38. package/dist/components/ds-panel-tools.js +1 -1
  39. package/dist/components/ds-select.js +1 -1
  40. package/dist/components/ds-shell-app.js +1 -1
  41. package/dist/components/ds-shell-tools.js +1 -1
  42. package/dist/components/ds-table-filter.d.ts +11 -0
  43. package/dist/components/ds-table-filter.js +2 -0
  44. package/dist/components/ds-table-filter.js.map +1 -0
  45. package/dist/components/ds-table-saved-views.js +1 -1
  46. package/dist/components/ds-table-sort.js +1 -1
  47. package/dist/components/ds-table-sort.js.map +1 -1
  48. package/dist/components/ds-table-toolbar.js +1 -1
  49. package/dist/components/ds-table-toolbar.js.map +1 -1
  50. package/dist/components/ds-table.js +1 -1
  51. package/dist/components/ds-table.js.map +1 -1
  52. package/dist/components/ds-toast.js +1 -1
  53. package/dist/components/ds-tooltip-chart.js +1 -1
  54. package/dist/components/ds-tooltip.js +1 -1
  55. package/dist/components/ds-typing-indicator.js +1 -1
  56. package/dist/components/{p-3dYwA4i_.js → p-Asi9h3pa.js} +2 -2
  57. package/dist/components/p-BFSLT0yc.js +2 -0
  58. package/dist/components/p-BFSLT0yc.js.map +1 -0
  59. package/dist/components/{p-C4p2i59V.js → p-BHz78C8h.js} +2 -2
  60. package/dist/components/{p-Dcnd5ZX5.js → p-BKp__CQX.js} +2 -2
  61. package/dist/components/p-BMERUCe1.js +2 -0
  62. package/dist/components/p-BMERUCe1.js.map +1 -0
  63. package/dist/components/{p-Ct2GVdSI.js → p-Be1sY58w.js} +2 -2
  64. package/dist/components/{p-vzxD117T.js → p-Bh67XbfB.js} +2 -2
  65. package/dist/components/{p-C_TOgX82.js → p-Bn8NryHK.js} +2 -2
  66. package/dist/components/{p-CaAZ-D08.js → p-C4TgWJi9.js} +2 -2
  67. package/dist/components/{p-COVcyUAA.js → p-CKmfuK7k.js} +2 -2
  68. package/dist/components/p-CKmfuK7k.js.map +1 -0
  69. package/dist/components/{p-EWI6ccs-.js → p-CMFvaY05.js} +2 -2
  70. package/dist/components/{p-BK-JjdoN.js → p-D4K9CE8a.js} +2 -2
  71. package/dist/components/{p-CxBE3l74.js → p-DEjh3klB.js} +2 -2
  72. package/dist/components/{p-NdahPypA.js → p-DFQ9mcbK.js} +2 -2
  73. package/dist/components/{p-WGZWqh-B.js → p-DHuyj-9J.js} +2 -2
  74. package/dist/components/{p-BUhShHfb.js → p-DIEK54fV.js} +2 -2
  75. package/dist/components/p-DOqnJVos.js +2 -0
  76. package/dist/components/{p-CwkcFMMe.js.map → p-DOqnJVos.js.map} +1 -1
  77. package/dist/components/{p-DRBTr6TS.js → p-DZ55e3j9.js} +2 -2
  78. package/dist/components/{p-MxptXwlW.js → p-DsJW5W3W.js} +2 -2
  79. package/dist/components/p-JPTkZ3Ji.js.map +1 -1
  80. package/dist/components/{p-DAV32g35.js → p-NzGRAPcF.js} +2 -2
  81. package/dist/components/p-NzGRAPcF.js.map +1 -0
  82. package/dist/components/{p-BUrbVZJU.js → p-ZZzC52Ea.js} +2 -2
  83. package/dist/components/{p-C91izpHV.js → p-__lNIImO.js} +2 -2
  84. package/dist/components/{p-0IbKxhqM.js → p-rrFMAZkj.js} +2 -2
  85. package/dist/components/{p-Cr2VT5zv.js → p-ruPTIV6t.js} +2 -2
  86. package/dist/docs/components.json +435 -6
  87. package/dist/mcp-data/registry/button-unfilled.json +4 -4
  88. package/dist/mcp-data/registry/filter-menu.json +5 -5
  89. package/dist/mcp-data/registry/loader.json +2 -1
  90. package/dist/mcp-data/registry/registry.json +173 -14
  91. package/dist/mcp-data/registry/select.json +1 -1
  92. package/dist/mcp-data/registry/table-filter.json +399 -0
  93. package/dist/mcp-data/registry/table-saved-views.json +1 -1
  94. package/dist/mcp-data/registry/table-sort.json +2 -2
  95. package/dist/mcp-data/registry/table-toolbar.json +9 -9
  96. package/dist/mcp-data/registry/table.json +6 -5
  97. package/dist/react/components.d.ts +1 -0
  98. package/dist/react/components.js +1 -0
  99. package/dist/react/ds-table-filter.d.ts +17 -0
  100. package/dist/react/ds-table-filter.js +19 -0
  101. package/dist/types/components/ButtonUnfilled/ButtonUnfilled.d.ts +2 -0
  102. package/dist/types/components/FilterMenu/FilterMenu.d.ts +2 -0
  103. package/dist/types/components/Select/Select.d.ts +2 -0
  104. package/dist/types/components/Table/table-column-customizer.d.ts +0 -2
  105. package/dist/types/components/TableFilter/TableFilter.d.ts +37 -0
  106. package/dist/types/components/TableToolbar/TableToolbar.d.ts +0 -6
  107. package/dist/types/components.d.ts +160 -4
  108. package/dist/vue/components.d.ts +1 -0
  109. package/dist/vue/components.js +1 -0
  110. package/dist/vue/ds-table-filter.d.ts +3 -0
  111. package/dist/vue/ds-table-filter.js +29 -0
  112. package/package.json +1 -1
  113. package/dist/components/p-BdnQv7Zl.js +0 -2
  114. package/dist/components/p-BdnQv7Zl.js.map +0 -1
  115. package/dist/components/p-COVcyUAA.js.map +0 -1
  116. package/dist/components/p-CwkcFMMe.js +0 -2
  117. package/dist/components/p-DAV32g35.js.map +0 -1
  118. /package/dist/components/{p-3dYwA4i_.js.map → p-Asi9h3pa.js.map} +0 -0
  119. /package/dist/components/{p-C4p2i59V.js.map → p-BHz78C8h.js.map} +0 -0
  120. /package/dist/components/{p-Dcnd5ZX5.js.map → p-BKp__CQX.js.map} +0 -0
  121. /package/dist/components/{p-Ct2GVdSI.js.map → p-Be1sY58w.js.map} +0 -0
  122. /package/dist/components/{p-vzxD117T.js.map → p-Bh67XbfB.js.map} +0 -0
  123. /package/dist/components/{p-C_TOgX82.js.map → p-Bn8NryHK.js.map} +0 -0
  124. /package/dist/components/{p-CaAZ-D08.js.map → p-C4TgWJi9.js.map} +0 -0
  125. /package/dist/components/{p-EWI6ccs-.js.map → p-CMFvaY05.js.map} +0 -0
  126. /package/dist/components/{p-BK-JjdoN.js.map → p-D4K9CE8a.js.map} +0 -0
  127. /package/dist/components/{p-CxBE3l74.js.map → p-DEjh3klB.js.map} +0 -0
  128. /package/dist/components/{p-NdahPypA.js.map → p-DFQ9mcbK.js.map} +0 -0
  129. /package/dist/components/{p-WGZWqh-B.js.map → p-DHuyj-9J.js.map} +0 -0
  130. /package/dist/components/{p-BUhShHfb.js.map → p-DIEK54fV.js.map} +0 -0
  131. /package/dist/components/{p-DRBTr6TS.js.map → p-DZ55e3j9.js.map} +0 -0
  132. /package/dist/components/{p-MxptXwlW.js.map → p-DsJW5W3W.js.map} +0 -0
  133. /package/dist/components/{p-BUrbVZJU.js.map → p-ZZzC52Ea.js.map} +0 -0
  134. /package/dist/components/{p-C91izpHV.js.map → p-__lNIImO.js.map} +0 -0
  135. /package/dist/components/{p-0IbKxhqM.js.map → p-rrFMAZkj.js.map} +0 -0
  136. /package/dist/components/{p-Cr2VT5zv.js.map → p-ruPTIV6t.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["filterMenuCss","FILTER_MENU_FOCUSABLE_SELECTOR","join","filterMenuId","ICON_SIZE","lg","md","sm","xs","FilterMenu","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","open","triggerLabel","icon","size","width","hasBorder","activeFill","collapseLabel","ariaLabel","filters","values","side","align","sideOffset","TOKEN_CSS_LENGTHS","space050","alignOffset","menuWidth","menuWidthLg","menuLabel","categoriesLabel","clearLabel","initialFocusVisible","shouldRender","closing","positionReady","pos","x","y","focusRingVisible","activeOptionIndex","captionCompact","generatedId","outsideHandler","triggerElement","pendingInitialFocusVisible","closeTimer","closingSnapshot","position","AnchoredPositionController","getAnchor","resolvedAnchor","getPopup","el","querySelector","measure","anchor","popup","anchorRect","getBoundingClientRect","sectionInsetPx","resolveCssLengthPx","TOKEN_DEFAULTS","popupWidth","offsetWidth","popupFallbackWidth","popupHeight","offsetHeight","popupFallbackHeight","sideOffsetPx","alignOffsetPx","resolveChoicePopupAlignOffset","viewportPadPx","viewportPad","viewportWidth","window","innerWidth","viewportHeight","innerHeight","apply","onReady","liveUpdate","observeResize","topLayer","componentDidLoad","syncCaptionCompactObserver","onOpenChange","disconnectedCallback","disconnectCaptionCompactObserver","unobserve","teardownListeners","onCollapseLabelChange","isOpen","setupListeners","schedule","focusInitialCategory","cancel","captureClosingSnapshot","duration","resolveMotionTimeMs","motionShort2","animationDurationShort3","finishClose","setTimeout","onPositionInputChange","handleKeyDown","event","key","preventDefault","close","tabLeavesPopup","moveFocusAfterTab","shiftKey","anchorId","document","getElementById","usesInternalTrigger","anchorFocusTarget","matches","menuFallbackHeight","target","contains","addEventListener","observe","removeEventListener","clearTimeout","restoreFocus","focusAnchor","dsOpenChange","emit","dsClose","toggleFromTrigger","detail","handleTriggerKeyDown","hidePopover","dsAfterClose","map","filter","options","option","Object","fromEntries","entries","value","Array","isArray","activeFilterId","setFocus","focus","requestAnimationFrame","focusables","from","querySelectorAll","element","getClientRects","length","index","indexOf","backwards","candidates","closest","selectedFilter","find","id","selectedCount","kind","totalSelected","reduce","total","activeFilterCount","selectCategory","filterId","dsActiveFilterChange","handleCategoryKeyDown","currentIndex","findIndex","nextIndex","handlePanelKeyDown","handleOptionKeyDown","selectOption","includes","enabled","candidate","optionIndex","isInactive","current","next","direction","start","toggleMultiple","checked","selected","Set","add","delete","ordered","has","dsChange","renderOptions","usesSubtext","choiceListUsesSubtext","label","subtext","description","isSelected","h","ChoiceOptionRow","active","tabIndex","leading","class","presentation","undefined","onFocus","onKeyDown","onHover","onSelect","fieldLabel","Boolean","dateValue","inputId","htmlFor","as","variant","emphasis","color","type","onInput","isInset","rounded","onDsClick","stopPropagation","captionIconOnly","captionCompactDisconnect","observeTableCaptionCompact","compact","render","state","activeFilter","hasActiveFilters","textVariant","CONTROL_TEXT_VARIANT","iconSize","popupId","popupStyle","left","top","transform","Math","round","zIndex","visibility","Host","controlWidthClass","ref","trigger","role","String","onClick","name","lineTruncation","popover","style","count","divider","onMouseDown","intent","contrast","dsClear"],"sources":["src/wc/components/FilterMenu/FilterMenu.css?tag=ds-filter-menu&encapsulation=scoped","src/wc/components/FilterMenu/FilterMenu.tsx"],"sourcesContent":["@import '../../utils/choice-list.css';\n@import '../../utils/control-parts.css';\n@import '../../utils/control-width.css';\n@import '../../utils/select-trigger.css';\n@import '../../utils/table-caption-control.css';\n\n:host(.filter-menu-host--external-trigger) {\n display: contents;\n}\n\n.filter-menu {\n display: flex;\n min-height: 0;\n flex-direction: column;\n color: var(--color-foreground-primary);\n}\n\n.filter-menu__body {\n display: grid;\n grid-template-columns: minmax(calc(var(--dimension-size-base) * 18), 2fr) minmax(0, 3fr);\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.filter-menu__categories {\n min-width: 0;\n border-inline-end: var(--dimension-stroke-width-012) solid var(--color-border-tertiary);\n}\n\n.filter-menu__category-section {\n display: flex;\n min-width: 0;\n flex-direction: column;\n}\n\n.filter-menu__category-section.ds-choice-section--divided {\n padding-block-end: var(--dimension-space-050);\n}\n\n.filter-menu__category {\n justify-content: space-between;\n width: 100%;\n border: 0;\n background: transparent;\n color: var(--color-foreground-secondary);\n cursor: default;\n text-align: start;\n}\n\n.filter-menu__category--active {\n color: var(--color-foreground-primary);\n}\n\n.filter-menu__options {\n min-width: 0;\n overflow: hidden;\n}\n\n.filter-menu__date-field {\n display: flex;\n min-width: 0;\n flex-direction: column;\n align-items: stretch;\n gap: var(--dimension-space-100);\n}\n\n.filter-menu__date-control {\n width: 100%;\n border-radius: var(--dimension-radius-025);\n background: transparent;\n box-shadow: inset 0 0 0 var(--dimension-stroke-width-012) var(--color-border-secondary);\n}\n\n.filter-menu__date-control:focus-within {\n box-shadow: inset 0 0 0 var(--dimension-stroke-width-018) var(--color-border-bold-brand);\n}\n\n.filter-menu__date-input {\n flex: 1 1 auto;\n min-width: 0;\n height: 100%;\n padding-inline: var(--dimension-space-100);\n border: 0;\n outline: 0;\n background: transparent;\n color: var(--color-foreground-primary);\n font: inherit;\n}\n\n.filter-menu__footer {\n flex: 0 0 auto;\n}\n\n.filter-menu__clear {\n color: var(--color-foreground-bold-brand);\n}\n\n@media (max-width: 520px) {\n .filter-menu__body {\n grid-template-columns: minmax(calc(var(--dimension-size-base) * 14), 2fr) minmax(0, 3fr);\n }\n}\n\n@media (forced-colors: active) {\n .filter-menu__categories {\n border-inline-end-color: var(--ds-forced-color-content);\n }\n\n .filter-menu__date-control {\n outline: var(--dimension-stroke-width-012) solid 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 CONTROL_TEXT_VARIANT,\n controlWidthClass,\n resolveChoicePopupAlignOffset,\n resolveCssLengthPx,\n resolveMotionTimeMs,\n TOKEN_CSS_LENGTHS,\n TOKEN_DEFAULTS,\n type ControlWidth,\n} from '../../utils';\nimport { observeTableCaptionCompact } from '../../utils/table-caption-compact';\nimport type { AnchoredAlign, AnchoredSide } from '../../utils/anchored-position';\nimport { AnchoredPositionController } from '../../utils/anchored-position-controller';\nimport { ChoiceOptionRow } from '../../utils/choice-list-parts';\nimport { choiceListUsesSubtext } from '../../utils/choice-list';\n\nexport type FilterMenuFilterKind = 'single' | 'multiple' | 'boolean' | 'date';\nexport type FilterMenuSize = 'lg' | 'md' | 'sm' | 'xs';\nexport type FilterMenuWidth = ControlWidth;\n\nexport interface FilterMenuOption {\n label: string;\n value: string;\n description?: string;\n isInactive?: boolean;\n}\n\nexport interface FilterMenuFilter {\n id: string;\n label: string;\n kind: FilterMenuFilterKind;\n options?: FilterMenuOption[];\n description?: string;\n fieldLabel?: string;\n /** Draw a standard menu-section divider after this category. */\n divider?: boolean;\n}\n\nexport type FilterMenuValue = string[] | boolean | string;\nexport type FilterMenuValues = Record<string, FilterMenuValue | undefined>;\n\nexport interface FilterMenuChangeDetail {\n filterId: string;\n value: FilterMenuValue;\n}\n\nconst FILTER_MENU_FOCUSABLE_SELECTOR = [\n 'a[href]',\n 'button:not([disabled])',\n 'input:not([disabled]):not([type=\"hidden\"])',\n 'select:not([disabled])',\n 'textarea:not([disabled])',\n '[tabindex]:not([tabindex=\"-1\"])',\n].join(',');\n\nlet filterMenuId = 0;\n\nconst ICON_SIZE: Record<FilterMenuSize, 'lg' | 'md' | 'sm' | 'xs'> = {\n lg: 'lg',\n md: 'md',\n sm: 'sm',\n xs: 'xs',\n};\n\n@Component({\n tag: 'ds-filter-menu',\n styleUrl: 'FilterMenu.css',\n scoped: true,\n})\nexport class FilterMenu {\n @Element() el!: HTMLElement;\n\n /** Controlled popup visibility. */\n @Prop({ mutable: true }) open: boolean = false;\n /** Select trigger text. The selected count is appended automatically. */\n @Prop() triggerLabel: string = 'Filter';\n /** Optional select trigger prefix icon name. */\n @Prop() icon: string | undefined = 'Filters';\n /** Select trigger density. */\n @Prop() size: FilterMenuSize = 'md';\n /** Select trigger width fit. */\n @Prop() width: FilterMenuWidth = 'hug';\n /** Show the surface-aware inset border around the select trigger. */\n @Prop() hasBorder: boolean = true;\n /** Show selected interaction fill when one or more criteria are active. */\n @Prop() activeFill: boolean = false;\n /**\n * Opt into table-caption icon-only chrome below 900px. The trigger omits its\n * visible label and chevron; keep an accessible name via aria-label.\n */\n @Prop({ reflect: true }) collapseLabel: boolean = false;\n /** ID applied to the internal select trigger. */\n @Prop() inputId: string | undefined;\n /** Direct accessible name for the internal select trigger. */\n @Prop({ attribute: 'aria-label' }) ariaLabel: string | null = null;\n /** Product-owned filter categories and option definitions. */\n @Prop() filters: FilterMenuFilter[] = [];\n /** Controlled values keyed by filter id. */\n @Prop() values: FilterMenuValues = {};\n /** Controlled category shown in the option pane. */\n @Prop() activeFilterId: string | undefined;\n /** External trigger element to position against. */\n @Prop() anchor: HTMLElement | undefined;\n /** ID of the external trigger element used for positioning and focus return. */\n @Prop() anchorId: string | undefined;\n /** Preferred popup side; collision handling may flip it. */\n @Prop() side: AnchoredSide = 'bottom';\n /** Cross-axis alignment against the trigger. */\n @Prop() align: AnchoredAlign = 'end';\n /** Gap between trigger and popup — number in px or a TokoMo length. */\n @Prop() sideOffset: number | string = TOKEN_CSS_LENGTHS.space050;\n /** Cross-axis offset — number in px or a TokoMo length. */\n @Prop() alignOffset: number | string = 0;\n /** Popup width. It remains clamped to the viewport by the component recipe. */\n @Prop() menuWidth: string = TOKEN_CSS_LENGTHS.menuWidthLg;\n /** Accessible name for the non-modal filter dialog. */\n @Prop() menuLabel: string = 'Filter';\n /** Accessible name for the category tab list. */\n @Prop() categoriesLabel: string = 'Filter categories';\n /** Footer action and date-clear accessible label. */\n @Prop() clearLabel: string = 'Clear';\n /** Show a visible focus ring on initial entry after keyboard activation. */\n @Prop() initialFocusVisible: boolean = false;\n\n @State() private shouldRender = false;\n @State() private closing = false;\n @State() private positionReady = false;\n @State() private pos: { x: number; y: number } = { x: 0, y: 0 };\n @State() private focusRingVisible = false;\n @State() private activeOptionIndex = 0;\n @State() private captionCompact = false;\n\n /** Requests a controlled value replacement without closing the popup. */\n @Event() dsChange!: EventEmitter<FilterMenuChangeDetail>;\n /** Requests that the consumer clear every filter value. */\n @Event() dsClear!: EventEmitter<void>;\n /** Requests a controlled active-category replacement. */\n @Event() dsActiveFilterChange!: EventEmitter<string>;\n /** Requests that the controlled popup close. */\n @Event() dsClose!: EventEmitter<void>;\n /** Emitted whenever internal select-trigger activation changes popup visibility. */\n @Event() dsOpenChange!: EventEmitter<boolean>;\n /** Emitted after exit motion and rendered popup removal complete. */\n @Event() dsAfterClose!: EventEmitter<void>;\n\n private readonly generatedId = `ds-filter-menu-${++filterMenuId}`;\n private outsideHandler: ((event: MouseEvent) => void) | null = null;\n private triggerElement: HTMLButtonElement | null = null;\n private pendingInitialFocusVisible = false;\n private closeTimer: ReturnType<typeof setTimeout> | null = null;\n private captionCompactDisconnect: (() => void) | undefined;\n private closingSnapshot: {\n filters: FilterMenuFilter[];\n values: FilterMenuValues;\n activeFilterId: string | undefined;\n } | null = null;\n\n private readonly position = new AnchoredPositionController({\n getAnchor: () => this.resolvedAnchor,\n getPopup: () => this.el.querySelector<HTMLElement>('.filter-menu-popup'),\n measure: (anchor, popup) => {\n if (!this.open) return null;\n const anchorRect = anchor.getBoundingClientRect();\n const sectionInsetPx = resolveCssLengthPx(TOKEN_DEFAULTS.space050, TOKEN_DEFAULTS.space050);\n return {\n anchorRect,\n popupWidth: popup.offsetWidth || this.popupFallbackWidth,\n popupHeight: popup.offsetHeight || this.popupFallbackHeight,\n side: this.side,\n align: this.align,\n sideOffsetPx: resolveCssLengthPx(this.sideOffset, TOKEN_DEFAULTS.space050),\n alignOffsetPx: resolveChoicePopupAlignOffset({\n align: this.align,\n alignOffsetPx: resolveCssLengthPx(this.alignOffset, 0),\n sectionInsetPx,\n }),\n viewportPadPx: this.viewportPad,\n viewportWidth: window.innerWidth,\n viewportHeight: window.innerHeight,\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 componentDidLoad() {\n this.syncCaptionCompactObserver();\n if (this.open) this.onOpenChange(true);\n }\n\n disconnectedCallback() {\n this.disconnectCaptionCompactObserver();\n this.position.unobserve();\n this.teardownListeners();\n }\n\n @Watch('collapseLabel')\n onCollapseLabelChange() {\n this.syncCaptionCompactObserver();\n }\n\n @Watch('open')\n onOpenChange(isOpen: boolean) {\n if (isOpen) {\n this.teardownListeners();\n this.closingSnapshot = null;\n this.shouldRender = true;\n this.closing = false;\n this.positionReady = false;\n this.focusRingVisible = this.pendingInitialFocusVisible || this.initialFocusVisible;\n this.setupListeners();\n this.position.schedule(() => this.focusInitialCategory());\n return;\n }\n\n if (!this.shouldRender) return;\n this.position.cancel();\n this.captureClosingSnapshot();\n this.closing = true;\n this.teardownListeners();\n const duration = resolveMotionTimeMs(\n TOKEN_DEFAULTS.motionShort2,\n TOKEN_DEFAULTS.animationDurationShort3\n );\n if (duration <= 0) {\n this.finishClose();\n return;\n }\n this.closeTimer = setTimeout(() => this.finishClose(), duration);\n }\n\n @Watch('anchor')\n @Watch('anchorId')\n @Watch('side')\n @Watch('align')\n @Watch('sideOffset')\n @Watch('alignOffset')\n @Watch('menuWidth')\n onPositionInputChange() {\n if (this.open) this.position.schedule();\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.tabLeavesPopup(event)) return;\n event.preventDefault();\n this.close(false);\n this.moveFocusAfterTab(event.shiftKey);\n }\n\n private get resolvedAnchor(): HTMLElement | null {\n if (this.anchor) return this.anchor;\n if (this.anchorId) return document.getElementById(this.anchorId);\n return this.triggerElement;\n }\n\n private get usesInternalTrigger(): boolean {\n return !this.anchor && !this.anchorId;\n }\n\n private get anchorFocusTarget(): HTMLElement | null {\n const anchor = this.resolvedAnchor;\n if (!anchor) return null;\n if (anchor.matches(FILTER_MENU_FOCUSABLE_SELECTOR)) return anchor;\n return anchor.querySelector<HTMLElement>(FILTER_MENU_FOCUSABLE_SELECTOR) ?? anchor;\n }\n\n private get viewportPad(): number {\n return resolveCssLengthPx(TOKEN_DEFAULTS.space050, TOKEN_DEFAULTS.space050);\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 setupListeners() {\n this.outsideHandler = event => {\n const target = event.target as Node;\n const popup = this.el.querySelector('.filter-menu-popup');\n if (popup?.contains(target) || this.resolvedAnchor?.contains(target)) return;\n this.close();\n };\n document.addEventListener('mousedown', this.outsideHandler, true);\n this.position.observe();\n }\n\n private teardownListeners() {\n this.position.unobserve();\n if (this.outsideHandler) {\n document.removeEventListener('mousedown', this.outsideHandler, true);\n this.outsideHandler = null;\n }\n if (this.closeTimer) {\n clearTimeout(this.closeTimer);\n this.closeTimer = null;\n }\n }\n\n private close(restoreFocus = true) {\n this.captureClosingSnapshot();\n if (restoreFocus) this.focusAnchor();\n this.dsOpenChange.emit(false);\n this.dsClose.emit();\n this.open = false;\n this.onOpenChange(false);\n }\n\n private toggleFromTrigger(event: MouseEvent) {\n if (this.open) {\n this.close();\n return;\n }\n this.pendingInitialFocusVisible = event.detail === 0;\n this.open = true;\n this.dsOpenChange.emit(true);\n this.onOpenChange(true);\n }\n\n private handleTriggerKeyDown(event: KeyboardEvent) {\n if (event.key !== 'ArrowDown' || this.open) return;\n event.preventDefault();\n this.pendingInitialFocusVisible = true;\n this.open = true;\n this.dsOpenChange.emit(true);\n this.onOpenChange(true);\n }\n\n private finishClose() {\n const popup = this.el.querySelector<HTMLElement>('.filter-menu-popup');\n if (popup?.matches(':popover-open')) popup.hidePopover();\n this.shouldRender = false;\n this.closing = false;\n this.closingSnapshot = null;\n this.closeTimer = null;\n this.dsAfterClose.emit();\n }\n\n private captureClosingSnapshot() {\n if (this.closingSnapshot) return;\n this.closingSnapshot = {\n filters: this.filters.map(filter => ({\n ...filter,\n options: filter.options?.map(option => ({ ...option })),\n })),\n values: Object.fromEntries(\n Object.entries(this.values).map(([key, value]) => [\n key,\n Array.isArray(value) ? [...value] : value,\n ])\n ),\n activeFilterId: this.activeFilterId,\n };\n }\n\n private focusAnchor() {\n const anchor = this.resolvedAnchor as\n (HTMLElement & { setFocus?: () => Promise<void> | void }) | null;\n if (anchor?.setFocus) {\n void anchor.setFocus();\n return;\n }\n this.anchorFocusTarget?.focus();\n }\n\n private focusInitialCategory() {\n requestAnimationFrame(() => {\n this.el.querySelector<HTMLElement>('.filter-menu__category[tabindex=\"0\"]')?.focus();\n this.pendingInitialFocusVisible = false;\n });\n }\n\n private tabLeavesPopup(event: KeyboardEvent): boolean {\n const popup = this.el.querySelector<HTMLElement>('.filter-menu-popup');\n if (!popup) return true;\n const focusables = Array.from(\n popup.querySelectorAll<HTMLElement>(FILTER_MENU_FOCUSABLE_SELECTOR)\n ).filter(element => element.getClientRects().length > 0);\n const index = focusables.indexOf(event.target as HTMLElement);\n if (index < 0) return true;\n return event.shiftKey ? index === 0 : index === focusables.length - 1;\n }\n\n private moveFocusAfterTab(backwards: boolean) {\n const anchor = this.anchorFocusTarget;\n if (!anchor) return;\n if (backwards) {\n anchor.focus();\n return;\n }\n const candidates = Array.from(\n document.querySelectorAll<HTMLElement>(FILTER_MENU_FOCUSABLE_SELECTOR)\n ).filter(\n element =>\n !element.closest('.filter-menu-popup') &&\n !element.closest('[inert]') &&\n element.getClientRects().length > 0\n );\n const index = candidates.indexOf(anchor);\n (candidates[index + 1] ?? anchor).focus();\n }\n\n private selectedFilter(filters: FilterMenuFilter[], activeFilterId: string | undefined) {\n return filters.find(filter => filter.id === activeFilterId) ?? filters[0];\n }\n\n private selectedCount(filter: FilterMenuFilter, values: FilterMenuValues): number {\n const value = values[filter.id];\n if (filter.kind === 'multiple') return Array.isArray(value) ? value.length : 0;\n if (filter.kind === 'boolean') return value === true ? 1 : 0;\n return typeof value === 'string' && value.length > 0 ? 1 : 0;\n }\n\n private totalSelected(filters: FilterMenuFilter[], values: FilterMenuValues): number {\n return filters.reduce((total, filter) => total + this.selectedCount(filter, values), 0);\n }\n\n private activeFilterCount(filters: FilterMenuFilter[], values: FilterMenuValues): number {\n return filters.filter(filter => this.selectedCount(filter, values) > 0).length;\n }\n\n private selectCategory(filterId: string, focus = false) {\n this.activeOptionIndex = 0;\n this.dsActiveFilterChange.emit(filterId);\n if (!focus) return;\n requestAnimationFrame(() => {\n this.el.querySelector<HTMLElement>(`[data-filter-category=\"${filterId}\"]`)?.focus();\n });\n }\n\n private handleCategoryKeyDown(\n event: KeyboardEvent,\n filters: FilterMenuFilter[],\n filterId: string\n ) {\n const currentIndex = filters.findIndex(filter => filter.id === filterId);\n let nextIndex: number;\n if (event.key === 'ArrowDown') nextIndex = (currentIndex + 1) % filters.length;\n else if (event.key === 'ArrowUp')\n nextIndex = (currentIndex - 1 + filters.length) % filters.length;\n else if (event.key === 'Home') nextIndex = 0;\n else if (event.key === 'End') nextIndex = filters.length - 1;\n else if (event.key === 'ArrowRight') {\n event.preventDefault();\n requestAnimationFrame(() => {\n this.el\n .querySelector<HTMLElement>(\n '.filter-menu__options [role=\"option\"], .filter-menu__options input'\n )\n ?.focus();\n });\n return;\n } else return;\n\n event.preventDefault();\n this.focusRingVisible = true;\n this.selectCategory(filters[nextIndex].id, true);\n }\n\n private handlePanelKeyDown(event: KeyboardEvent, filterId: string) {\n if (event.key !== 'ArrowLeft') return;\n event.preventDefault();\n this.el.querySelector<HTMLElement>(`[data-filter-category=\"${filterId}\"]`)?.focus();\n }\n\n private handleOptionKeyDown(\n event: KeyboardEvent,\n filter: FilterMenuFilter,\n option: FilterMenuOption,\n index: number,\n values: FilterMenuValues\n ) {\n const options = filter.options ?? [];\n if (event.key === 'ArrowLeft') {\n this.handlePanelKeyDown(event, filter.id);\n return;\n }\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.selectOption(filter, option, values);\n return;\n }\n if (!['ArrowDown', 'ArrowUp', 'Home', 'End'].includes(event.key)) return;\n event.preventDefault();\n const enabled = options\n .map((candidate, optionIndex) => ({ candidate, optionIndex }))\n .filter(({ candidate }) => !candidate.isInactive)\n .map(({ optionIndex }) => optionIndex);\n if (!enabled.length) return;\n const current = enabled.indexOf(index);\n let next: number;\n if (event.key === 'Home') next = enabled[0];\n else if (event.key === 'End') next = enabled[enabled.length - 1];\n else {\n const direction = event.key === 'ArrowDown' ? 1 : -1;\n const start = current >= 0 ? current : direction === 1 ? -1 : 0;\n next = enabled[(start + direction + enabled.length) % enabled.length];\n }\n this.activeOptionIndex = next;\n this.focusRingVisible = true;\n requestAnimationFrame(() => {\n this.el\n .querySelector<HTMLElement>(`#${this.generatedId}-${filter.id}-option-${next}`)\n ?.focus();\n });\n }\n\n private toggleMultiple(\n filter: FilterMenuFilter,\n option: FilterMenuOption,\n checked: boolean,\n values: FilterMenuValues\n ) {\n if (option.isInactive) return;\n const current = Array.isArray(values[filter.id]) ? (values[filter.id] as string[]) : [];\n const selected = new Set(current);\n if (checked) selected.add(option.value);\n else selected.delete(option.value);\n const ordered = (filter.options ?? [])\n .map(candidate => candidate.value)\n .filter(value => selected.has(value));\n this.dsChange.emit({ filterId: filter.id, value: ordered });\n }\n\n private selectOption(\n filter: FilterMenuFilter,\n option: FilterMenuOption,\n values: FilterMenuValues\n ) {\n if (option.isInactive) return;\n if (filter.kind === 'single') {\n this.dsChange.emit({ filterId: filter.id, value: option.value });\n return;\n }\n const selected = Array.isArray(values[filter.id])\n ? (values[filter.id] as string[]).includes(option.value)\n : false;\n this.toggleMultiple(filter, option, !selected, values);\n }\n\n private renderOptions(filter: FilterMenuFilter, values: FilterMenuValues) {\n const value = values[filter.id];\n if (filter.kind === 'multiple' || filter.kind === 'single') {\n const selected = Array.isArray(value) ? value : [];\n const options = filter.options ?? [];\n const usesSubtext = choiceListUsesSubtext(\n options.map(option => ({\n label: option.label,\n value: option.value,\n subtext: option.description,\n }))\n );\n return options.map((option, index) => {\n const isSelected =\n filter.kind === 'multiple' ? selected.includes(option.value) : value === option.value;\n return (\n <ChoiceOptionRow\n size=\"md\"\n id={`${this.generatedId}-${filter.id}-option-${index}`}\n option={{\n label: option.label,\n value: option.value,\n subtext: option.description,\n isInactive: option.isInactive,\n }}\n selected={isSelected}\n active={index === this.activeOptionIndex}\n focusRingVisible={this.focusRingVisible}\n usesSubtext={usesSubtext}\n tabIndex={index === this.activeOptionIndex ? 0 : -1}\n leading={\n filter.kind === 'multiple' ? (\n <span\n class=\"ds-choice-item__icon ds-control-icon-box ds-interaction-fill__content\"\n aria-hidden=\"true\"\n >\n <ds-checkbox label=\"\" size=\"md\" checked={isSelected} presentation />\n </span>\n ) : undefined\n }\n onFocus={() => {\n this.activeOptionIndex = index;\n }}\n onKeyDown={(event: KeyboardEvent) =>\n this.handleOptionKeyDown(event, filter, option, index, values)\n }\n onHover={() => {\n this.focusRingVisible = false;\n this.activeOptionIndex = index;\n }}\n onSelect={() => this.selectOption(filter, option, values)}\n />\n );\n });\n }\n\n if (filter.kind === 'boolean') {\n const option: FilterMenuOption = {\n label: filter.fieldLabel ?? filter.label,\n value: 'true',\n description: filter.description,\n };\n return (\n <ChoiceOptionRow\n size=\"md\"\n id={`${this.generatedId}-${filter.id}-option-0`}\n option={{\n label: option.label,\n value: option.value,\n subtext: option.description,\n }}\n selected={value === true}\n active\n focusRingVisible={this.focusRingVisible}\n usesSubtext={Boolean(option.description)}\n tabIndex={0}\n leading={\n <span\n class=\"ds-choice-item__icon ds-control-icon-box ds-interaction-fill__content\"\n aria-hidden=\"true\"\n >\n <ds-checkbox label=\"\" size=\"md\" checked={value === true} presentation />\n </span>\n }\n onKeyDown={(event: KeyboardEvent) => {\n if (event.key === 'ArrowLeft') this.handlePanelKeyDown(event, filter.id);\n else if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault();\n this.dsChange.emit({ filterId: filter.id, value: value !== true });\n }\n }}\n onHover={() => {\n this.focusRingVisible = false;\n }}\n onSelect={() => this.dsChange.emit({ filterId: filter.id, value: value !== true })}\n />\n );\n }\n\n const dateValue = typeof value === 'string' ? value : '';\n const inputId = `${this.generatedId}-${filter.id}-input`;\n return (\n <div class=\"filter-menu__date-field\">\n <label htmlFor={inputId}>\n <ds-text as=\"span\" variant=\"text-body-small\" emphasis color=\"primary\">\n {filter.fieldLabel ?? 'Event date'}\n </ds-text>\n </label>\n <div class=\"filter-menu__date-control ds-control-frame ds-control--md\">\n <input\n id={inputId}\n class=\"filter-menu__date-input\"\n type=\"date\"\n value={dateValue}\n onInput={(event: Event) =>\n this.dsChange.emit({\n filterId: filter.id,\n value: (event.target as HTMLInputElement).value,\n })\n }\n />\n {dateValue ? (\n <ds-button-unfilled\n variant=\"icon\"\n icon=\"CrossCircle\"\n size=\"sm\"\n isInset\n hasBorder={false}\n rounded\n ariaLabel={`${this.clearLabel} ${filter.fieldLabel ?? filter.label}`}\n onDsClick={(event: CustomEvent<MouseEvent>) => {\n event.stopPropagation();\n this.dsChange.emit({ filterId: filter.id, value: '' });\n }}\n />\n ) : null}\n </div>\n </div>\n );\n }\n\n private get captionIconOnly(): boolean {\n return (\n this.collapseLabel &&\n this.captionCompact &&\n this.usesInternalTrigger &&\n Boolean(this.icon)\n );\n }\n\n private syncCaptionCompactObserver(): void {\n this.disconnectCaptionCompactObserver();\n if (!this.collapseLabel) {\n if (this.captionCompact) this.captionCompact = false;\n return;\n }\n this.captionCompactDisconnect = observeTableCaptionCompact(this.el, compact => {\n if (this.captionCompact !== compact) this.captionCompact = compact;\n });\n }\n\n private disconnectCaptionCompactObserver(): void {\n this.captionCompactDisconnect?.();\n this.captionCompactDisconnect = undefined;\n }\n\n render() {\n const state =\n this.closing && this.closingSnapshot\n ? this.closingSnapshot\n : {\n filters: this.filters,\n values: this.values,\n activeFilterId: this.activeFilterId,\n };\n const activeFilter = this.selectedFilter(state.filters, state.activeFilterId);\n const totalSelected = this.totalSelected(state.filters, state.values);\n const activeFilterCount = this.activeFilterCount(state.filters, state.values);\n const hasActiveFilters = activeFilterCount > 0;\n const label = `${this.triggerLabel}${hasActiveFilters ? ` · ${activeFilterCount}` : ''}`;\n const textVariant = CONTROL_TEXT_VARIANT[this.size];\n const iconSize = ICON_SIZE[this.size];\n const popupId = `${this.generatedId}-popup`;\n const popupStyle: Record<string, string> = {\n position: 'fixed',\n left: '0',\n top: '0',\n width: this.menuWidth,\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\n class={{\n 'filter-menu-host': true,\n 'filter-menu-host--external-trigger': !this.usesInternalTrigger,\n 'ds-select-trigger-host': this.usesInternalTrigger,\n [`ds-control--${this.size}`]: true,\n 'ds-table-caption-control': this.collapseLabel,\n 'ds-table-caption-control--compact': this.captionIconOnly,\n ...controlWidthClass(this.width),\n }}\n >\n {this.usesInternalTrigger ? (\n <button\n ref={element => {\n this.triggerElement = (element as HTMLButtonElement) ?? null;\n }}\n id={this.inputId ?? `${this.generatedId}-trigger`}\n type=\"button\"\n class={{\n trigger: true,\n 'ds-control-frame': true,\n 'ds-focus-ring-inset': true,\n 'ds-interaction-fill': true,\n 'ds-interaction-fill--selected': this.activeFill && hasActiveFilters,\n 'trigger--expanded': this.open || this.closing,\n 'trigger--bordered': this.hasBorder,\n 'trigger--has-value': hasActiveFilters,\n [`ds-control--${this.size}`]: true,\n }}\n role=\"combobox\"\n aria-haspopup=\"dialog\"\n aria-expanded={String(this.open)}\n aria-controls={this.open ? popupId : undefined}\n aria-label={this.ariaLabel ?? this.menuLabel}\n onClick={(event: MouseEvent) => this.toggleFromTrigger(event)}\n onKeyDown={(event: KeyboardEvent) => this.handleTriggerKeyDown(event)}\n >\n {this.icon ? (\n <span\n class=\"trigger__prefix ds-control-icon-box ds-interaction-fill__content\"\n aria-hidden=\"true\"\n >\n <ds-icon name={this.icon} size={iconSize} color=\"inherit\" />\n </span>\n ) : null}\n {this.captionIconOnly ? null : (\n <ds-text\n class=\"trigger__label-box trigger__label trigger__label-content ds-control-label-box ds-interaction-fill__content\"\n as=\"span\"\n variant={textVariant}\n color=\"inherit\"\n lineTruncation={1}\n >\n {label}\n </ds-text>\n )}\n {this.captionIconOnly ? null : (\n <span\n class=\"trigger__chevron ds-control-icon-box ds-interaction-fill__content\"\n aria-hidden=\"true\"\n >\n <ds-icon name=\"ChevronDown\" size={iconSize} color=\"inherit\" />\n </span>\n )}\n </button>\n ) : null}\n\n {this.shouldRender ? (\n <div\n id={popupId}\n popover=\"manual\"\n class={{\n 'filter-menu-popup': true,\n 'ds-choice-popup': true,\n 'ds-choice-popup--closing': this.closing,\n }}\n style={popupStyle}\n role=\"dialog\"\n aria-label={this.menuLabel}\n >\n {activeFilter ? (\n <div class=\"filter-menu\">\n <div class=\"filter-menu__body\">\n <div\n class=\"filter-menu__categories ds-choice-list ds-chrome-column ds-chrome-space--sm\"\n role=\"tablist\"\n aria-label={this.categoriesLabel}\n aria-orientation=\"vertical\"\n >\n {state.filters.map(filter => {\n const active = filter.id === activeFilter.id;\n const count = this.selectedCount(filter, state.values);\n return (\n <div\n key={filter.id}\n class={{\n 'filter-menu__category-section': true,\n 'ds-choice-section--divided': Boolean(filter.divider),\n }}\n >\n <button\n id={`${this.generatedId}-${filter.id}-tab`}\n type=\"button\"\n role=\"tab\"\n data-filter-category={filter.id}\n class={{\n 'filter-menu__category': true,\n 'filter-menu__category--active': active,\n 'ds-choice-item': true,\n 'ds-control-frame': true,\n 'ds-control--md': true,\n 'ds-focus-ring-inset': true,\n 'ds-focus-ring--visible': active && this.focusRingVisible,\n 'ds-interaction-fill': true,\n 'ds-interaction-fill--selected': active,\n }}\n aria-selected={String(active)}\n aria-controls={`${this.generatedId}-panel`}\n tabIndex={active ? 0 : -1}\n onMouseDown={() => {\n this.focusRingVisible = false;\n }}\n onClick={() => this.selectCategory(filter.id)}\n onKeyDown={(event: KeyboardEvent) =>\n this.handleCategoryKeyDown(event, state.filters, filter.id)\n }\n >\n <ds-text\n class=\"ds-choice-item__content ds-choice-item__label ds-control-label-box ds-interaction-fill__content\"\n as=\"span\"\n variant=\"text-body-medium\"\n color={active ? 'primary' : 'secondary'}\n >\n {filter.label}\n </ds-text>\n {count > 0 ? (\n <ds-tag\n class=\"ds-choice-item__tag ds-interaction-fill__content\"\n label={String(count)}\n size=\"sm\"\n intent=\"brand\"\n contrast=\"bold\"\n isInset\n rounded\n />\n ) : null}\n </button>\n </div>\n );\n })}\n </div>\n\n <div\n id={`${this.generatedId}-panel`}\n class=\"filter-menu__options\"\n role=\"tabpanel\"\n aria-labelledby={`${this.generatedId}-${activeFilter.id}-tab`}\n >\n <div\n key={activeFilter.id}\n class=\"filter-menu__option-list ds-choice-list ds-chrome-column ds-chrome-space--sm\"\n role=\"listbox\"\n aria-label={activeFilter.label}\n aria-multiselectable={activeFilter.kind === 'multiple' ? 'true' : undefined}\n >\n {this.renderOptions(activeFilter, state.values)}\n </div>\n </div>\n </div>\n\n {totalSelected > 0 ? (\n <div class=\"filter-menu__footer ds-choice-footer\">\n <div class=\"ds-choice-footer__content ds-control--md\">\n <ds-text\n class=\"ds-choice-footer__summary\"\n as=\"span\"\n variant=\"text-body-medium\"\n color=\"secondary\"\n aria-live=\"polite\"\n >\n {totalSelected} selected\n </ds-text>\n <button\n class=\"filter-menu__clear ds-choice-footer__clear ds-text-action\"\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 </div>\n </div>\n ) : null}\n </div>\n ) : null}\n </div>\n ) : null}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":[],"mappings":"","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- import{I as o,d as s}from"./p-BUrbVZJU.js";const r=o;const t=s;export{r as DsInput,t as defineCustomElement};
1
+ import{I as o,d as s}from"./p-ZZzC52Ea.js";const t=o;const a=s;export{t as DsInput,a as defineCustomElement};
2
2
  //# sourceMappingURL=ds-input.js.map
@@ -1,2 +1,2 @@
1
- import{M as o,d as s}from"./p-CaAZ-D08.js";const t=o;const a=s;export{t as DsMarkdown,a as defineCustomElement};
1
+ import{M as o,d as s}from"./p-C4TgWJi9.js";const t=o;const p=s;export{t as DsMarkdown,p as defineCustomElement};
2
2
  //# sourceMappingURL=ds-markdown.js.map
@@ -1,2 +1,2 @@
1
- import{M as o,d as s}from"./p-3dYwA4i_.js";const t=o;const p=s;export{t as DsMenu,p as defineCustomElement};
1
+ import{M as s,d as o}from"./p-Asi9h3pa.js";const p=s;const t=o;export{p as DsMenu,t as defineCustomElement};
2
2
  //# sourceMappingURL=ds-menu.js.map
@@ -1,2 +1,2 @@
1
- import{p as s,H as e,c as t,h as a,a as i,t as o}from"./index.js";import{C as n}from"./p-BnhGV__o.js";import{d}from"./p-a6qP60zb.js";import{d as l}from"./p-DAV32g35.js";import{d as c}from"./p-BFfLvMZd.js";import{d as r}from"./p-JPTkZ3Ji.js";import{d as p}from"./p-BGXqFq2C.js";import{d as f}from"./p-BK-JjdoN.js";const h=()=>`.sc-ds-message-actions-h{display:inline-flex;box-sizing:border-box}.message-actions.sc-ds-message-actions{display:inline-flex;align-items:center;gap:var(--dimension-space-050)}`;const m=s(class s extends e{constructor(s){super();if(s!==false){this.__registerHost()}this.dsCopyResult=t(this,"dsCopyResult",7);this.dsFeedbackChange=t(this,"dsFeedbackChange",7);this.feedbackEnabled=false;this.copied=false;this.copyFeedback=new n((s=>{this.copied=s}));this.copy=async()=>{const s=await this.copyFeedback.copy(this.copyText??"");if(s===undefined)return;this.dsCopyResult.emit({status:s?"success":"error"})}}connectedCallback(){this.copyFeedback.connect()}handleCopyTextChange(){this.copyFeedback.reset()}disconnectedCallback(){this.copyFeedback.disconnect()}changeFeedback(s,e){this.dsFeedbackChange.emit(e?s:undefined)}render(){const s=this.copied?"Copied":"Copy message";return a(i,{key:"a3038209aea06856cefc84488a41ba92cffef598"},a("div",{key:"a3f43f75e29fe3eeb9aa58cfe550a1013e2cec6f",class:"message-actions",role:"group","aria-label":"Message actions"},this.copyText?a("ds-tooltip",{label:s,side:"top",size:"sm"},a("ds-button-unfilled",{variant:"icon",icon:this.copied?"Check":"Copy",size:"xs","aria-label":s,hasBorder:false,onDsClick:this.copy})):null,this.feedbackEnabled?a("ds-tooltip",{label:"Good response",side:"top",size:"sm"},a("ds-button-unfilled",{variant:"icon",icon:this.feedback==="positive"?"ThumbsUpFilled":"ThumbsUp",size:"xs","aria-label":"Good response",hasBorder:false,activeFill:false,pressed:this.feedback==="positive",onDsChange:s=>this.changeFeedback("positive",s.detail)})):null,this.feedbackEnabled?a("ds-tooltip",{label:"Bad response",side:"top",size:"sm"},a("ds-button-unfilled",{variant:"icon",icon:this.feedback==="negative"?"ThumbsDownFilled":"ThumbsDown",size:"xs","aria-label":"Bad response",hasBorder:false,activeFill:false,pressed:this.feedback==="negative",onDsChange:s=>this.changeFeedback("negative",s.detail)})):null))}static get watchers(){return{copyText:[{handleCopyTextChange:0}]}}static get style(){return h()}},[2,"ds-message-actions",{copyText:[1,"copy-text"],feedbackEnabled:[4,"feedback-enabled"],feedback:[1],copied:[32]},undefined,{copyText:[{handleCopyTextChange:0}]}]);function u(){if(typeof customElements==="undefined"){return}const s=["ds-message-actions","ds-badge","ds-button-unfilled","ds-icon","ds-loader","ds-text","ds-tooltip"];s.forEach((s=>{switch(s){case"ds-message-actions":if(!customElements.get(o(s))){customElements.define(o(s),m)}break;case"ds-badge":if(!customElements.get(o(s))){d()}break;case"ds-button-unfilled":if(!customElements.get(o(s))){l()}break;case"ds-icon":if(!customElements.get(o(s))){c()}break;case"ds-loader":if(!customElements.get(o(s))){r()}break;case"ds-text":if(!customElements.get(o(s))){p()}break;case"ds-tooltip":if(!customElements.get(o(s))){f()}break}}))}u();const b=m;const g=u;export{b as DsMessageActions,g as defineCustomElement};
1
+ import{p as s,H as e,c as t,h as a,a as i,t as o}from"./index.js";import{C as n}from"./p-BnhGV__o.js";import{d}from"./p-a6qP60zb.js";import{d as c}from"./p-NzGRAPcF.js";import{d as l}from"./p-BFfLvMZd.js";import{d as r}from"./p-JPTkZ3Ji.js";import{d as p}from"./p-BGXqFq2C.js";import{d as f}from"./p-D4K9CE8a.js";const h=()=>`.sc-ds-message-actions-h{display:inline-flex;box-sizing:border-box}.message-actions.sc-ds-message-actions{display:inline-flex;align-items:center;gap:var(--dimension-space-050)}`;const m=s(class s extends e{constructor(s){super();if(s!==false){this.__registerHost()}this.dsCopyResult=t(this,"dsCopyResult",7);this.dsFeedbackChange=t(this,"dsFeedbackChange",7);this.feedbackEnabled=false;this.copied=false;this.copyFeedback=new n((s=>{this.copied=s}));this.copy=async()=>{const s=await this.copyFeedback.copy(this.copyText??"");if(s===undefined)return;this.dsCopyResult.emit({status:s?"success":"error"})}}connectedCallback(){this.copyFeedback.connect()}handleCopyTextChange(){this.copyFeedback.reset()}disconnectedCallback(){this.copyFeedback.disconnect()}changeFeedback(s,e){this.dsFeedbackChange.emit(e?s:undefined)}render(){const s=this.copied?"Copied":"Copy message";return a(i,{key:"a3038209aea06856cefc84488a41ba92cffef598"},a("div",{key:"a3f43f75e29fe3eeb9aa58cfe550a1013e2cec6f",class:"message-actions",role:"group","aria-label":"Message actions"},this.copyText?a("ds-tooltip",{label:s,side:"top",size:"sm"},a("ds-button-unfilled",{variant:"icon",icon:this.copied?"Check":"Copy",size:"xs","aria-label":s,hasBorder:false,onDsClick:this.copy})):null,this.feedbackEnabled?a("ds-tooltip",{label:"Good response",side:"top",size:"sm"},a("ds-button-unfilled",{variant:"icon",icon:this.feedback==="positive"?"ThumbsUpFilled":"ThumbsUp",size:"xs","aria-label":"Good response",hasBorder:false,activeFill:false,pressed:this.feedback==="positive",onDsChange:s=>this.changeFeedback("positive",s.detail)})):null,this.feedbackEnabled?a("ds-tooltip",{label:"Bad response",side:"top",size:"sm"},a("ds-button-unfilled",{variant:"icon",icon:this.feedback==="negative"?"ThumbsDownFilled":"ThumbsDown",size:"xs","aria-label":"Bad response",hasBorder:false,activeFill:false,pressed:this.feedback==="negative",onDsChange:s=>this.changeFeedback("negative",s.detail)})):null))}static get watchers(){return{copyText:[{handleCopyTextChange:0}]}}static get style(){return h()}},[2,"ds-message-actions",{copyText:[1,"copy-text"],feedbackEnabled:[4,"feedback-enabled"],feedback:[1],copied:[32]},undefined,{copyText:[{handleCopyTextChange:0}]}]);function u(){if(typeof customElements==="undefined"){return}const s=["ds-message-actions","ds-badge","ds-button-unfilled","ds-icon","ds-loader","ds-text","ds-tooltip"];s.forEach((s=>{switch(s){case"ds-message-actions":if(!customElements.get(o(s))){customElements.define(o(s),m)}break;case"ds-badge":if(!customElements.get(o(s))){d()}break;case"ds-button-unfilled":if(!customElements.get(o(s))){c()}break;case"ds-icon":if(!customElements.get(o(s))){l()}break;case"ds-loader":if(!customElements.get(o(s))){r()}break;case"ds-text":if(!customElements.get(o(s))){p()}break;case"ds-tooltip":if(!customElements.get(o(s))){f()}break}}))}u();const b=m;const g=u;export{b as DsMessageActions,g as defineCustomElement};
2
2
  //# sourceMappingURL=ds-message-actions.js.map
@@ -1,2 +1,2 @@
1
- import{p as e,H as s,c as o,h as r,a,t}from"./index.js";import{d as i}from"./p-a6qP60zb.js";import{d as c}from"./p-U8JIZzI2.js";import{d}from"./p-DAV32g35.js";import{d as n}from"./p-BFfLvMZd.js";import{d as m}from"./p-JPTkZ3Ji.js";import{d as l}from"./p-BGXqFq2C.js";import{d as p}from"./p-BK-JjdoN.js";const g=()=>`@media (forced-colors: active){.sc-ds-message-composer:root,.sc-ds-message-composer-h,.ds-forced-colors-scope.sc-ds-message-composer{--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-message-composer-h{display:block;width:100%;box-sizing:border-box;-webkit-user-select:none;user-select:none}.message-composer.sc-ds-message-composer{display:flex;flex-direction:column;gap:var(--dimension-space-050);width:100%;margin:0}.message-composer__attachments.sc-ds-message-composer:empty,.message-composer__tools.sc-ds-message-composer:empty,.message-composer__error-actions.sc-ds-message-composer:empty{display:none}.message-composer__error-support.sc-ds-message-composer,.message-composer__error-message.sc-ds-message-composer,.message-composer__error-actions.sc-ds-message-composer{display:flex;align-items:center}.message-composer__error-support.sc-ds-message-composer{justify-content:space-between;flex-wrap:wrap;gap:var(--dimension-space-075) var(--dimension-space-100);min-width:0;padding:var(--dimension-space-075) var(--dimension-space-100);background:var(--color-background-faint-negative)}.message-composer__error-message.sc-ds-message-composer{flex:1 1 var(--dimension-panel-width-xs);gap:var(--dimension-space-050);min-width:0;color:var(--color-foreground-bold-negative)}.message-composer__error-actions.sc-ds-message-composer{flex:0 1 auto;flex-wrap:wrap;gap:var(--dimension-space-050)}.message-composer__stack.sc-ds-message-composer{min-width:0}.message-composer--error.sc-ds-message-composer .message-composer__stack.sc-ds-message-composer{overflow:hidden;border:var(--dimension-stroke-width-012) solid var(--color-border-bold-negative);border-radius:var(--dimension-radius-125);background:var(--color-background-primary);box-shadow:var(--effect-elevation-elevated-md)}.message-composer__field.sc-ds-message-composer{display:flex;flex-direction:column;gap:var(--dimension-space-050);padding:var(--dimension-space-100);border-radius:var(--dimension-radius-125);background:var(--color-background-primary);box-shadow:var(--effect-elevation-elevated-md);overflow:hidden}.message-composer.sc-ds-message-composer:not(.message-composer--error) .message-composer__field.sc-ds-message-composer:focus-within{box-shadow:var(--effect-elevation-elevated-md), inset 0 0 0 var(--dimension-stroke-width-018) var(--color-border-bold-brand)}.message-composer--error.sc-ds-message-composer .message-composer__field.sc-ds-message-composer{border-radius:0;box-shadow:none}textarea.sc-ds-message-composer{width:100%;min-height:calc(var(--typography-lineheight-md) * 2 + var(--dimension-space-150));max-height:calc(var(--typography-lineheight-md) * 6 + var(--dimension-space-150));padding:var(--dimension-space-075);border:none;outline:none;resize:none;overflow-y:auto;box-sizing:border-box;background:transparent;color:var(--color-foreground-primary);font-family:var(--typography-font-family-ui);font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md);font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-negative-half);-webkit-user-select:text;user-select:text}textarea.sc-ds-message-composer::placeholder{color:var(--color-foreground-secondary)}textarea.sc-ds-message-composer:focus::placeholder{color:var(--color-foreground-quaternary)}textarea.sc-ds-message-composer:focus,textarea.sc-ds-message-composer:focus-visible{outline:none}.message-composer__tools.sc-ds-message-composer{display:flex;align-items:center;gap:var(--dimension-space-050);min-height:var(--dimension-size-400)}.message-composer__controls.sc-ds-message-composer{display:flex;align-items:center;justify-content:space-between;gap:var(--dimension-space-050);width:100%;min-width:0}.message-composer__actions.sc-ds-message-composer{display:flex;align-items:center;gap:var(--dimension-space-100);flex:0 0 auto;margin-inline-start:auto}@media (forced-colors: active){.message-composer__field.sc-ds-message-composer{border:var(--dimension-stroke-width-012) solid var(--ds-forced-color-control-boundary);box-shadow:none}.message-composer--error.sc-ds-message-composer .message-composer__field.sc-ds-message-composer{border:0}.message-composer--error.sc-ds-message-composer .message-composer__stack.sc-ds-message-composer{border:var(--dimension-stroke-width-025) dashed var(--ds-forced-color-content);box-shadow:none}.message-composer__error-support.sc-ds-message-composer{border-block-end:var(--dimension-stroke-width-012) solid var(--ds-forced-color-content);background:var(--ds-forced-color-surface)}}`;let h=0;const f=e(class e extends s{constructor(e){super();if(e!==false){this.__registerHost()}this.dsInput=o(this,"dsInput",7);this.dsSubmit=o(this,"dsSubmit",7);this.dsStop=o(this,"dsStop",7);this.value="";this.placeholder="Write a message";this.label="Message";this.status="ready";this.isInactive=false;this.submitIntent="brand";this.errorId=`ds-message-composer-error-${++h}`;this.handleInput=e=>{this.value=e.target.value;this.resize();this.dsInput.emit(this.value)};this.handleKeyDown=e=>{if(e.key!=="Enter"||e.shiftKey||e.isComposing)return;e.preventDefault();this.submit()};this.handleAction=()=>{if(this.streaming)this.dsStop.emit();else this.submit()}}componentDidLoad(){this.resize()}onValueChange(){requestAnimationFrame((()=>this.resize()))}async setFocus(){this.textarea?.focus()}get streaming(){return this.status==="submitted"||this.status==="streaming"}resize(){if(!this.textarea)return;this.textarea.style.height="auto";this.textarea.style.height=`${this.textarea.scrollHeight}px`}submit(){const e=this.value.trim();if(!e||this.isInactive||this.streaming)return;this.dsSubmit.emit({text:e})}render(){const e=this.status==="error";const s=this.errorMessage||"Message could not be sent.";const o=!this.streaming&&(this.isInactive||!this.value.trim());return r(a,{key:"5cfffabaa1b826a34c346f43722cb677b29fa8b7"},r("form",{key:"2acd582093d33e11c6edaf9dcb685a22007b8b3c",class:{"message-composer":true,"message-composer--error":e},"aria-busy":this.streaming?"true":undefined,onSubmit:e=>{e.preventDefault();this.submit()}},r("div",{key:"655ec956c8f22f82c91c89d34b67b6a613ae25fe",class:"message-composer__attachments"},r("slot",{key:"42cd32dfa1965f782fb86a20c7b7416e3692dbde",name:"attachments"})),r("div",{key:"84949d1d3f605d3924bda160047b4707047643d2",class:"message-composer__stack"},e?r("div",{class:"message-composer__error-support"},r("div",{id:this.errorId,class:"message-composer__error-message",role:"alert"},r("ds-icon",{name:"ErrorTriangle",size:"xs",color:"inherit"}),r("ds-text",{variant:"text-body-small",color:"negative"},s)),r("div",{class:"message-composer__error-actions"},r("slot",{name:"error-actions"}))):null,r("div",{key:"959b839b088dda98e1026a1249944dca3d74d136",class:"message-composer__field"},r("textarea",{key:"f9b02ce632c12925f8a225edb54f060da0525c73",ref:e=>{this.textarea=e},value:this.value,placeholder:this.placeholder,"aria-label":this.label,"aria-invalid":e?"true":undefined,"aria-describedby":e?this.errorId:undefined,disabled:this.isInactive,rows:2,onInput:this.handleInput,onKeyDown:this.handleKeyDown}),r("div",{key:"24bd4afd626cd5f17b44b1290a610e9ac3b34910",class:"message-composer__controls"},r("div",{key:"df34958f844ad1431b6b08203b0752ede4031ec4",class:"message-composer__tools"},r("slot",{key:"3594826c6708c0b74ae54481aee9750c44c1428f",name:"tools"})),r("div",{key:"956e7a22fbc092161d0587318edc8147b8340c7f",class:"message-composer__actions"},r("slot",{key:"2a8299ff7c0ef855cc31a8325134644de6e14845",name:"actions"}),o?r("ds-tooltip",{label:"Send message",side:"top",size:"sm"},r("ds-button-unfilled",{class:"message-composer__action",variant:"icon",icon:"ArrowUp",size:"md","aria-label":"Send message",hasBorder:true,isInactive:true,onDsClick:this.handleAction})):r("ds-tooltip",{label:this.streaming?"Stop response":"Send message",side:"top",size:"sm"},r("ds-button-filled",{class:"message-composer__action",variant:"icon",icon:this.streaming?"SquareFilled":"ArrowUp",intent:this.streaming?"brand":this.submitIntent,contrast:"bold",size:"md","aria-label":this.streaming?"Stop response":"Send message",onDsClick:this.handleAction}))))))))}get el(){return this}static get watchers(){return{value:[{onValueChange:0}]}}static get style(){return g()}},[262,"ds-message-composer",{value:[1025],placeholder:[1],label:[1],status:[1],errorMessage:[1,"error-message"],isInactive:[4,"is-inactive"],submitIntent:[1,"submit-intent"],setFocus:[64]},undefined,{value:[{onValueChange:0}]}]);function b(){if(typeof customElements==="undefined"){return}const e=["ds-message-composer","ds-badge","ds-button-filled","ds-button-unfilled","ds-icon","ds-loader","ds-text","ds-tooltip"];e.forEach((e=>{switch(e){case"ds-message-composer":if(!customElements.get(t(e))){customElements.define(t(e),f)}break;case"ds-badge":if(!customElements.get(t(e))){i()}break;case"ds-button-filled":if(!customElements.get(t(e))){c()}break;case"ds-button-unfilled":if(!customElements.get(t(e))){d()}break;case"ds-icon":if(!customElements.get(t(e))){n()}break;case"ds-loader":if(!customElements.get(t(e))){m()}break;case"ds-text":if(!customElements.get(t(e))){l()}break;case"ds-tooltip":if(!customElements.get(t(e))){p()}break}}))}b();const u=f;const v=b;export{u as DsMessageComposer,v as defineCustomElement};
1
+ import{p as e,H as s,c as o,h as r,a,t}from"./index.js";import{d as i}from"./p-a6qP60zb.js";import{d as c}from"./p-U8JIZzI2.js";import{d}from"./p-NzGRAPcF.js";import{d as n}from"./p-BFfLvMZd.js";import{d as m}from"./p-JPTkZ3Ji.js";import{d as l}from"./p-BGXqFq2C.js";import{d as p}from"./p-D4K9CE8a.js";const g=()=>`@media (forced-colors: active){.sc-ds-message-composer:root,.sc-ds-message-composer-h,.ds-forced-colors-scope.sc-ds-message-composer{--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-message-composer-h{display:block;width:100%;box-sizing:border-box;-webkit-user-select:none;user-select:none}.message-composer.sc-ds-message-composer{display:flex;flex-direction:column;gap:var(--dimension-space-050);width:100%;margin:0}.message-composer__attachments.sc-ds-message-composer:empty,.message-composer__tools.sc-ds-message-composer:empty,.message-composer__error-actions.sc-ds-message-composer:empty{display:none}.message-composer__error-support.sc-ds-message-composer,.message-composer__error-message.sc-ds-message-composer,.message-composer__error-actions.sc-ds-message-composer{display:flex;align-items:center}.message-composer__error-support.sc-ds-message-composer{justify-content:space-between;flex-wrap:wrap;gap:var(--dimension-space-075) var(--dimension-space-100);min-width:0;padding:var(--dimension-space-075) var(--dimension-space-100);background:var(--color-background-faint-negative)}.message-composer__error-message.sc-ds-message-composer{flex:1 1 var(--dimension-panel-width-xs);gap:var(--dimension-space-050);min-width:0;color:var(--color-foreground-bold-negative)}.message-composer__error-actions.sc-ds-message-composer{flex:0 1 auto;flex-wrap:wrap;gap:var(--dimension-space-050)}.message-composer__stack.sc-ds-message-composer{min-width:0}.message-composer--error.sc-ds-message-composer .message-composer__stack.sc-ds-message-composer{overflow:hidden;border:var(--dimension-stroke-width-012) solid var(--color-border-bold-negative);border-radius:var(--dimension-radius-125);background:var(--color-background-primary);box-shadow:var(--effect-elevation-elevated-md)}.message-composer__field.sc-ds-message-composer{display:flex;flex-direction:column;gap:var(--dimension-space-050);padding:var(--dimension-space-100);border-radius:var(--dimension-radius-125);background:var(--color-background-primary);box-shadow:var(--effect-elevation-elevated-md);overflow:hidden}.message-composer.sc-ds-message-composer:not(.message-composer--error) .message-composer__field.sc-ds-message-composer:focus-within{box-shadow:var(--effect-elevation-elevated-md), inset 0 0 0 var(--dimension-stroke-width-018) var(--color-border-bold-brand)}.message-composer--error.sc-ds-message-composer .message-composer__field.sc-ds-message-composer{border-radius:0;box-shadow:none}textarea.sc-ds-message-composer{width:100%;min-height:calc(var(--typography-lineheight-md) * 2 + var(--dimension-space-150));max-height:calc(var(--typography-lineheight-md) * 6 + var(--dimension-space-150));padding:var(--dimension-space-075);border:none;outline:none;resize:none;overflow-y:auto;box-sizing:border-box;background:transparent;color:var(--color-foreground-primary);font-family:var(--typography-font-family-ui);font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md);font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-negative-half);-webkit-user-select:text;user-select:text}textarea.sc-ds-message-composer::placeholder{color:var(--color-foreground-secondary)}textarea.sc-ds-message-composer:focus::placeholder{color:var(--color-foreground-quaternary)}textarea.sc-ds-message-composer:focus,textarea.sc-ds-message-composer:focus-visible{outline:none}.message-composer__tools.sc-ds-message-composer{display:flex;align-items:center;gap:var(--dimension-space-050);min-height:var(--dimension-size-400)}.message-composer__controls.sc-ds-message-composer{display:flex;align-items:center;justify-content:space-between;gap:var(--dimension-space-050);width:100%;min-width:0}.message-composer__actions.sc-ds-message-composer{display:flex;align-items:center;gap:var(--dimension-space-100);flex:0 0 auto;margin-inline-start:auto}@media (forced-colors: active){.message-composer__field.sc-ds-message-composer{border:var(--dimension-stroke-width-012) solid var(--ds-forced-color-control-boundary);box-shadow:none}.message-composer--error.sc-ds-message-composer .message-composer__field.sc-ds-message-composer{border:0}.message-composer--error.sc-ds-message-composer .message-composer__stack.sc-ds-message-composer{border:var(--dimension-stroke-width-025) dashed var(--ds-forced-color-content);box-shadow:none}.message-composer__error-support.sc-ds-message-composer{border-block-end:var(--dimension-stroke-width-012) solid var(--ds-forced-color-content);background:var(--ds-forced-color-surface)}}`;let h=0;const f=e(class e extends s{constructor(e){super();if(e!==false){this.__registerHost()}this.dsInput=o(this,"dsInput",7);this.dsSubmit=o(this,"dsSubmit",7);this.dsStop=o(this,"dsStop",7);this.value="";this.placeholder="Write a message";this.label="Message";this.status="ready";this.isInactive=false;this.submitIntent="brand";this.errorId=`ds-message-composer-error-${++h}`;this.handleInput=e=>{this.value=e.target.value;this.resize();this.dsInput.emit(this.value)};this.handleKeyDown=e=>{if(e.key!=="Enter"||e.shiftKey||e.isComposing)return;e.preventDefault();this.submit()};this.handleAction=()=>{if(this.streaming)this.dsStop.emit();else this.submit()}}componentDidLoad(){this.resize()}onValueChange(){requestAnimationFrame((()=>this.resize()))}async setFocus(){this.textarea?.focus()}get streaming(){return this.status==="submitted"||this.status==="streaming"}resize(){if(!this.textarea)return;this.textarea.style.height="auto";this.textarea.style.height=`${this.textarea.scrollHeight}px`}submit(){const e=this.value.trim();if(!e||this.isInactive||this.streaming)return;this.dsSubmit.emit({text:e})}render(){const e=this.status==="error";const s=this.errorMessage||"Message could not be sent.";const o=!this.streaming&&(this.isInactive||!this.value.trim());return r(a,{key:"5cfffabaa1b826a34c346f43722cb677b29fa8b7"},r("form",{key:"2acd582093d33e11c6edaf9dcb685a22007b8b3c",class:{"message-composer":true,"message-composer--error":e},"aria-busy":this.streaming?"true":undefined,onSubmit:e=>{e.preventDefault();this.submit()}},r("div",{key:"655ec956c8f22f82c91c89d34b67b6a613ae25fe",class:"message-composer__attachments"},r("slot",{key:"42cd32dfa1965f782fb86a20c7b7416e3692dbde",name:"attachments"})),r("div",{key:"84949d1d3f605d3924bda160047b4707047643d2",class:"message-composer__stack"},e?r("div",{class:"message-composer__error-support"},r("div",{id:this.errorId,class:"message-composer__error-message",role:"alert"},r("ds-icon",{name:"ErrorTriangle",size:"xs",color:"inherit"}),r("ds-text",{variant:"text-body-small",color:"negative"},s)),r("div",{class:"message-composer__error-actions"},r("slot",{name:"error-actions"}))):null,r("div",{key:"959b839b088dda98e1026a1249944dca3d74d136",class:"message-composer__field"},r("textarea",{key:"f9b02ce632c12925f8a225edb54f060da0525c73",ref:e=>{this.textarea=e},value:this.value,placeholder:this.placeholder,"aria-label":this.label,"aria-invalid":e?"true":undefined,"aria-describedby":e?this.errorId:undefined,disabled:this.isInactive,rows:2,onInput:this.handleInput,onKeyDown:this.handleKeyDown}),r("div",{key:"24bd4afd626cd5f17b44b1290a610e9ac3b34910",class:"message-composer__controls"},r("div",{key:"df34958f844ad1431b6b08203b0752ede4031ec4",class:"message-composer__tools"},r("slot",{key:"3594826c6708c0b74ae54481aee9750c44c1428f",name:"tools"})),r("div",{key:"956e7a22fbc092161d0587318edc8147b8340c7f",class:"message-composer__actions"},r("slot",{key:"2a8299ff7c0ef855cc31a8325134644de6e14845",name:"actions"}),o?r("ds-tooltip",{label:"Send message",side:"top",size:"sm"},r("ds-button-unfilled",{class:"message-composer__action",variant:"icon",icon:"ArrowUp",size:"md","aria-label":"Send message",hasBorder:true,isInactive:true,onDsClick:this.handleAction})):r("ds-tooltip",{label:this.streaming?"Stop response":"Send message",side:"top",size:"sm"},r("ds-button-filled",{class:"message-composer__action",variant:"icon",icon:this.streaming?"SquareFilled":"ArrowUp",intent:this.streaming?"brand":this.submitIntent,contrast:"bold",size:"md","aria-label":this.streaming?"Stop response":"Send message",onDsClick:this.handleAction}))))))))}get el(){return this}static get watchers(){return{value:[{onValueChange:0}]}}static get style(){return g()}},[262,"ds-message-composer",{value:[1025],placeholder:[1],label:[1],status:[1],errorMessage:[1,"error-message"],isInactive:[4,"is-inactive"],submitIntent:[1,"submit-intent"],setFocus:[64]},undefined,{value:[{onValueChange:0}]}]);function b(){if(typeof customElements==="undefined"){return}const e=["ds-message-composer","ds-badge","ds-button-filled","ds-button-unfilled","ds-icon","ds-loader","ds-text","ds-tooltip"];e.forEach((e=>{switch(e){case"ds-message-composer":if(!customElements.get(t(e))){customElements.define(t(e),f)}break;case"ds-badge":if(!customElements.get(t(e))){i()}break;case"ds-button-filled":if(!customElements.get(t(e))){c()}break;case"ds-button-unfilled":if(!customElements.get(t(e))){d()}break;case"ds-icon":if(!customElements.get(t(e))){n()}break;case"ds-loader":if(!customElements.get(t(e))){m()}break;case"ds-text":if(!customElements.get(t(e))){l()}break;case"ds-tooltip":if(!customElements.get(t(e))){p()}break}}))}b();const u=f;const v=b;export{u as DsMessageComposer,v as defineCustomElement};
2
2
  //# sourceMappingURL=ds-message-composer.js.map
@@ -1,2 +1,2 @@
1
- import{p as e,H as s,c as t,h as r,a as o,t as a}from"./index.js";import{S as i}from"./p-CJq3n5kA.js";import{r as l}from"./p-BMc0DE59.js";import{d}from"./p-a6qP60zb.js";import{d as n}from"./p-DAV32g35.js";import{d as c}from"./p-BFfLvMZd.js";import{d as h}from"./p-JPTkZ3Ji.js";import{d as f}from"./p-BGXqFq2C.js";import{d as g}from"./p-BK-JjdoN.js";const m=()=>`@property --ds-scroll-edge-fade-top{syntax:'<length-percentage>';inherits:false;initial-value:0px}@property --ds-scroll-edge-fade-bottom{syntax:'<length-percentage>';inherits:false;initial-value:0px}@property --ds-scroll-edge-fade-left{syntax:'<length-percentage>';inherits:false;initial-value:0px}@property --ds-scroll-edge-fade-right{syntax:'<length-percentage>';inherits:false;initial-value:0px}@keyframes ds-scroll-edge-fade-reveal-top{from{--ds-scroll-edge-fade-top:0px}to{--ds-scroll-edge-fade-top:var(--ds-scroll-edge-fade-target-top)}}@keyframes ds-scroll-edge-fade-reveal-bottom{from{--ds-scroll-edge-fade-bottom:var(--ds-scroll-edge-fade-target-bottom)}to{--ds-scroll-edge-fade-bottom:0px}}@keyframes ds-scroll-edge-fade-reveal-left{from{--ds-scroll-edge-fade-left:0px}to{--ds-scroll-edge-fade-left:var(--ds-scroll-edge-fade-target-left)}}@keyframes ds-scroll-edge-fade-reveal-right{from{--ds-scroll-edge-fade-right:var(--ds-scroll-edge-fade-target-right)}to{--ds-scroll-edge-fade-right:0px}}.scroll-edge-fade.sc-ds-message-scroller{--ds-scroll-edge-fade-size:var(--dimension-size-600);--ds-scroll-edge-fade-reveal-distance:var(--dimension-size-800);--ds-scroll-edge-fade-target-top:0px;--ds-scroll-edge-fade-target-bottom:0px;--ds-scroll-edge-fade-target-left:0px;--ds-scroll-edge-fade-target-right:0px;--ds-scroll-edge-fade-top:var(--ds-scroll-edge-fade-target-top);--ds-scroll-edge-fade-bottom:var(--ds-scroll-edge-fade-target-bottom);--ds-scroll-edge-fade-left:var(--ds-scroll-edge-fade-target-left);--ds-scroll-edge-fade-right:var(--ds-scroll-edge-fade-target-right);--ds-scroll-edge-fade-block-mask:linear-gradient( to bottom, transparent 0, #000 var(--ds-scroll-edge-fade-top), #000 calc(100% - var(--ds-scroll-edge-fade-bottom)), transparent 100% );--ds-scroll-edge-fade-inline-mask:linear-gradient( to right, transparent 0, #000 var(--ds-scroll-edge-fade-left), #000 calc(100% - var(--ds-scroll-edge-fade-right)), transparent 100% );-webkit-mask-image:var(--ds-scroll-edge-fade-block-mask), var(--ds-scroll-edge-fade-inline-mask);mask-image:var(--ds-scroll-edge-fade-block-mask), var(--ds-scroll-edge-fade-inline-mask);-webkit-mask-composite:source-in;mask-composite:intersect;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%}.scroll-edge-fade--top.sc-ds-message-scroller{--ds-scroll-edge-fade-target-top:var(--ds-scroll-edge-fade-size)}.scroll-edge-fade--bottom.sc-ds-message-scroller{--ds-scroll-edge-fade-target-bottom:var(--ds-scroll-edge-fade-size)}.scroll-edge-fade--left.sc-ds-message-scroller{--ds-scroll-edge-fade-target-left:var(--ds-scroll-edge-fade-size)}.scroll-edge-fade--right.sc-ds-message-scroller{--ds-scroll-edge-fade-target-right:var(--ds-scroll-edge-fade-size)}.scroll-edge-fade--top-at-edge.sc-ds-message-scroller{--ds-scroll-edge-fade-target-top:0px}.scroll-edge-fade--bottom-at-edge.sc-ds-message-scroller{--ds-scroll-edge-fade-target-bottom:0px}.scroll-edge-fade--left-at-edge.sc-ds-message-scroller{--ds-scroll-edge-fade-target-left:0px}.scroll-edge-fade--right-at-edge.sc-ds-message-scroller{--ds-scroll-edge-fade-target-right:0px}@supports (animation-timeline: scroll()){.scroll-edge-fade--scroll-aware.sc-ds-message-scroller{animation-name:ds-scroll-edge-fade-reveal-top, ds-scroll-edge-fade-reveal-bottom, ds-scroll-edge-fade-reveal-left, ds-scroll-edge-fade-reveal-right;animation-duration:1ms;animation-timing-function:ease-in-out;animation-fill-mode:both;animation-timeline:scroll(self y), scroll(self y), scroll(self x), scroll(self x);animation-range:0 var(--ds-scroll-edge-fade-reveal-distance), calc(100% - var(--ds-scroll-edge-fade-reveal-distance)) 100%, 0 var(--ds-scroll-edge-fade-reveal-distance), calc(100% - var(--ds-scroll-edge-fade-reveal-distance)) 100%}@media (prefers-reduced-motion: reduce){.scroll-edge-fade--scroll-aware.sc-ds-message-scroller{animation:none}}}.scroll-edge-fade--at-end.sc-ds-message-scroller,.scroll-edge-fade--hidden.sc-ds-message-scroller{-webkit-mask-image:none;mask-image:none}.scroll-edge-fade--block-window.sc-ds-message-scroller{--ds-scroll-edge-fade-window-start:100%;--ds-scroll-edge-fade-window-end:100%;-webkit-mask-image:linear-gradient( to bottom, #000 0, #000 var(--ds-scroll-edge-fade-window-start), transparent var(--ds-scroll-edge-fade-window-end) );mask-image:linear-gradient( to bottom, #000 0, #000 var(--ds-scroll-edge-fade-window-start), transparent var(--ds-scroll-edge-fade-window-end) );-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}`;const v=()=>`.ds-control-elevation.sc-ds-message-scroller-h,.ds-control-elevation.sc-ds-message-scroller{position:relative;overflow:visible;box-shadow:var(--ds-control-elevation-shadow, none)}.ds-control-elevation.sc-ds-message-scroller-h::after,.ds-control-elevation.sc-ds-message-scroller::after{content:'';position:absolute;inset:0;z-index:4;border-radius:inherit;box-shadow:var(--ds-control-elevation-highlight, none);pointer-events:none}.ds-control-elevation--sm.sc-ds-message-scroller-h,.ds-control-elevation--sm.sc-ds-message-scroller{--ds-control-elevation-shadow:var(--effect-shadow-elevated-sm);--ds-control-elevation-highlight:var(--effect-highlight-elevated-sm)}.ds-control-elevation--md.sc-ds-message-scroller-h,.ds-control-elevation--md.sc-ds-message-scroller{--ds-control-elevation-shadow:var(--effect-shadow-elevated-md);--ds-control-elevation-highlight:var(--effect-highlight-elevated-md)}.ds-control-elevation--floating.sc-ds-message-scroller-h,.ds-control-elevation--floating.sc-ds-message-scroller{--ds-control-elevation-shadow:var(--effect-shadow-elevated-floating);--ds-control-elevation-highlight:var(--effect-highlight-elevated-floating)}.ds-control-elevation--press-scale.sc-ds-message-scroller{--ds-control-press-active-scale:var(--dimension-scale-default);transition:scale var(--effect-motion-short-2)}.ds-control-elevation--press-scale[data-ds-press-active].sc-ds-message-scroller{scale:var(--dimension-scale-subtle)}@media (prefers-reduced-motion: reduce){.ds-control-elevation--press-scale.sc-ds-message-scroller,.ds-control-elevation--press-scale[data-ds-press-active].sc-ds-message-scroller{scale:none;transition:none}}.sc-ds-message-scroller-h{--ds-message-scroller-anchor-offset:var(--dimension-space-800);display:block;width:100%;height:100%;min-height:0;box-sizing:border-box}.message-scroller.sc-ds-message-scroller{position:relative;width:100%;height:100%;min-height:0}.message-scroller__viewport.sc-ds-message-scroller{width:100%;height:100%;min-height:0;overflow:auto;overflow-anchor:none;overscroll-behavior:contain;box-sizing:border-box}.message-scroller__viewport.sc-ds-message-scroller:focus-visible{outline:var(--dimension-stroke-width-025) solid var(--color-border-bold-brand);outline-offset:calc(-1 * var(--dimension-stroke-width-025))}.message-scroller__content.sc-ds-message-scroller{display:flex;flex-direction:column;gap:var(--dimension-space-300);width:100%;max-width:var( --ds-message-scroller-content-max-width, var(--dimension-panel-width-2xl) );min-height:100%;margin-inline:auto;padding-block-start:var(--dimension-space-200);padding-inline:var(--dimension-space-200);padding-block-end:max( calc(var(--dimension-space-200) + var(--ds-scroll-overlay-block-size, 0px)), var(--ds-message-scroller-turn-clearance, 0px) );box-sizing:border-box}.message-scroller__overlay.sc-ds-message-scroller{position:absolute;right:0;bottom:0;left:0;z-index:var(--dimension-z-index-floating)}.message-scroller__overlay-stack.sc-ds-message-scroller{display:grid;width:100%}.message-scroller__interaction.sc-ds-message-scroller,.message-scroller__overlay-content.sc-ds-message-scroller{min-width:0}.message-scroller__control.sc-ds-message-scroller{position:absolute;bottom:calc( var(--ds-scroll-overlay-content-block-size, 0px) + var(--dimension-space-200) );left:50%;z-index:var(--dimension-z-index-floating);display:flex;align-items:center;justify-content:center;border-radius:var(--dimension-radius-half);background:var(--color-background-transparent);transform:translateX(-50%);-webkit-backdrop-filter:blur(var(--effect-blur-sm));backdrop-filter:blur(var(--effect-blur-sm))}`;const u=24;const p=e(class e extends s{constructor(e){super();if(e!==false){this.__registerHost()}this.dsReachStart=t(this,"dsReachStart",7);this.busy=false;this.autoFollow=true;this.defaultPosition="last-anchor";this.messagesLabel="Messages";this.showScrollToLatest=false;this.following=true;this.followReleased=false;this.releasePendingAtLiveEdge=false;this.atStart=false;this.programmatic=false;this.transcriptChildren=[];this.knownTranscriptElements=new Set;this.knownTurnAnchors=new Set;this.turnClearance=0;this.prependReconciliation=0;this.handleTranscriptChange=()=>{const e=this.getTranscriptChildren();const s=this.transcriptChildren;const t=this.knownTranscriptElements.size>0;const r=new Set(this.knownTranscriptElements);const o=[...e].reverse().find(((s,t)=>{if(!s.matches("ds-message[scroll-anchor]")||this.knownTurnAnchors.has(s)){return false}const r=e.length-t-1;return e.slice(r+1).every((e=>!this.knownTranscriptElements.has(e)))}));e.forEach((e=>{this.knownTranscriptElements.add(e);if(e.matches("ds-message[scroll-anchor]")){this.knownTurnAnchors.add(e)}}));if(!s.length){this.transcriptChildren=e;if(o&&t){requestAnimationFrame((()=>this.positionNewTurn(o)))}return}const a=e.findIndex((e=>r.has(e)));const i=e.filter((e=>!r.has(e)));const l=e.length>s.length&&s.every(((t,r)=>e[e.length-s.length+r]===t))||!o&&i.length>0&&a>0&&i.every((s=>e.indexOf(s)<a));this.transcriptChildren=e;if(l){if(this.viewport){const e=this.activeTurnAnchor?.isConnected?this.activeTurnAnchor:s[0];const t=this.activeTurnAnchor?.isConnected?this.activeTurnAnchorViewportTop:this.firstChildViewportTop;if(e&&t!==undefined){this.reconcilePrependPosition(e,t);this.schedulePrependReconciliation(e,t,i)}}this.rememberFirstChildTop();this.rememberActiveTurnAnchorTop();this.scrollOverlayController?.sync();return}if(o){requestAnimationFrame((()=>this.positionNewTurn(o)))}};this.handleTranscriptSlotChange=()=>this.handleTranscriptChange();this.handleScroll=()=>{if(!this.viewport)return;this.scrollOverlayController?.sync();this.rememberFirstChildTop();this.rememberActiveTurnAnchorTop();if(this.programmatic)return;const e=this.isAtLiveEdge();if(this.releasePendingAtLiveEdge&&e){this.following=false;this.followReleased=true;this.showScrollToLatest=false;return}this.releasePendingAtLiveEdge=false;this.following=e;this.followReleased=!this.following;this.showScrollToLatest=!this.following;const s=this.viewport.scrollTop<=u;if(s&&!this.atStart)this.dsReachStart.emit();this.atStart=s};this.releaseFollow=()=>{this.prependReconciliation+=1;this.releasePendingAtLiveEdge=this.isAtLiveEdge();this.following=false;this.followReleased=true;this.showScrollToLatest=!this.releasePendingAtLiveEdge};this.handleSelectionChange=()=>{const e=document.getSelection();if(e&&!e.isCollapsed&&e.anchorNode&&this.el.contains(e.anchorNode)){this.releaseFollow()}}}componentDidLoad(){this.transcriptChildren=this.getTranscriptChildren();this.transcriptChildren.forEach((e=>{this.knownTranscriptElements.add(e);if(e.matches("ds-message[scroll-anchor]")){this.knownTurnAnchors.add(e)}}));this.rememberFirstChildTop();this.connectObservers();requestAnimationFrame((()=>this.applyDefaultPosition()));document.addEventListener("selectionchange",this.handleSelectionChange)}disconnectedCallback(){this.prependReconciliation+=1;this.scrollOverlayController?.disconnect();this.mutationObserver?.disconnect();if(this.programmaticTimer)clearTimeout(this.programmaticTimer);document.removeEventListener("selectionchange",this.handleSelectionChange)}async scrollToMessage(e){const s=Array.from(this.el.querySelectorAll("ds-message")).find((s=>s.messageId===e||s.getAttribute("message-id")===e));if(!s)return false;this.releasePendingAtLiveEdge=false;this.following=false;this.followReleased=true;this.showScrollToLatest=true;s.scrollIntoView({block:"start",behavior:this.motionBehavior()});return true}async scrollToStart(){this.releasePendingAtLiveEdge=false;this.scrollTo(0);this.following=false;this.followReleased=true;this.showScrollToLatest=Boolean(this.viewport&&this.viewport.scrollHeight>this.viewport.clientHeight)}async scrollToEnd(){this.releasePendingAtLiveEdge=false;this.following=true;this.followReleased=false;this.showScrollToLatest=false;this.scrollTo(this.viewport?.scrollHeight??0)}motionBehavior(){return matchMedia("(prefers-reduced-motion: reduce)").matches?"auto":"smooth"}scrollTo(e){if(!this.viewport)return;this.programmatic=true;const s=this.motionBehavior();this.viewport.scrollTo({top:e,behavior:s});if(this.programmaticTimer)clearTimeout(this.programmaticTimer);this.programmaticTimer=setTimeout((()=>{this.programmatic=false;this.programmaticTimer=undefined;if(this.following){this.viewport.scrollTop=e;this.showScrollToLatest=false}}),s==="smooth"?600:0)}connectObservers(){if(!this.viewport||!this.content||!this.overlay)return;this.scrollOverlayController=new i({host:this.el,viewport:this.viewport,content:this.content,overlay:this.overlay,overlayContentSelector:".message-scroller__overlay-stack",onGeometryChange:()=>this.handleContentGrowth()});this.scrollOverlayController.connect();this.mutationObserver=new MutationObserver((()=>{this.handleTranscriptChange();this.handleContentGrowth()}));this.mutationObserver.observe(this.el,{childList:true,subtree:true,characterData:true})}handleContentGrowth(){if(!this.viewport)return;this.syncTurnClearance();const e=this.viewport.scrollHeight;if(this.autoFollow&&this.following&&!this.followReleased){this.viewport.scrollTop=e}if(this.releasePendingAtLiveEdge&&!this.isAtLiveEdge()){this.releasePendingAtLiveEdge=false}this.showScrollToLatest=!this.following&&!this.isAtLiveEdge();this.scrollOverlayController?.sync()}rememberFirstChildTop(){if(!this.viewport)return;const e=this.getTranscriptChildren()[0];this.firstChildViewportTop=e?e.getBoundingClientRect().top-this.viewport.getBoundingClientRect().top:undefined}getTranscriptChildren(){const e=this.transcriptSlot?.assignedElements()??[];const t=e.filter((e=>e instanceof s&&(e.matches("ds-message")||e.matches("ds-agent-response"))));const r=Array.from(this.el.querySelectorAll("ds-message, ds-agent-response")).filter((e=>{if(e.closest(".message-scroller__interaction, .message-scroller__overlay-content")){return false}if(e.matches("ds-agent-response"))return true;return!e.closest("ds-agent-response")}));return r.length>t.length?r:t}reconcilePrependPosition(e,s){if(!this.viewport||!e.isConnected)return;const t=e.getBoundingClientRect().top-this.viewport.getBoundingClientRect().top;this.viewport.scrollTop+=t-s}schedulePrependReconciliation(e,s,t){const r=++this.prependReconciliation;const o=t.flatMap((e=>[e,...Array.from(e.querySelectorAll("*"))])).map((e=>{const s=e.componentOnReady;return s?s.call(e).catch((()=>undefined)):null})).filter((e=>Boolean(e)));void Promise.all(o).then((()=>{requestAnimationFrame((()=>{if(r!==this.prependReconciliation)return;this.reconcilePrependPosition(e,s);requestAnimationFrame((()=>{if(r!==this.prependReconciliation)return;this.reconcilePrependPosition(e,s);this.rememberFirstChildTop();this.rememberActiveTurnAnchorTop();this.scrollOverlayController?.sync()}))}))}))}positionNewTurn(e){if(!this.viewport)return;this.activeTurnAnchor=e;this.syncTurnClearance();requestAnimationFrame((()=>this.finishPositionNewTurn(e)))}finishPositionNewTurn(e){if(!this.viewport||!e.isConnected)return;const s=this.viewport.getBoundingClientRect();const t=e.getBoundingClientRect().top-s.top+this.viewport.scrollTop;const r=getComputedStyle(this.el).getPropertyValue("--ds-message-scroller-anchor-offset").trim();const o=l(r,"var(--dimension-space-800)");const a=Math.max(this.viewport.scrollHeight-this.viewport.clientHeight,0);const i=Math.min(Math.max(t-o,0),a);this.following=a-i<=u;this.followReleased=!this.following;this.showScrollToLatest=!this.following;this.programmatic=true;this.viewport.scrollTop=i;requestAnimationFrame((()=>{this.programmatic=false;this.following=this.isAtLiveEdge();this.followReleased=!this.following;this.showScrollToLatest=!this.following;this.rememberFirstChildTop();this.rememberActiveTurnAnchorTop()}));this.scrollOverlayController?.sync()}rememberActiveTurnAnchorTop(){if(!this.viewport||!this.activeTurnAnchor?.isConnected)return;this.activeTurnAnchorViewportTop=this.activeTurnAnchor.getBoundingClientRect().top-this.viewport.getBoundingClientRect().top}syncTurnClearance(){if(!this.viewport||!this.activeTurnAnchor?.isConnected)return;const e=this.getTranscriptChildren();const s=e[e.length-1];if(!s)return;const t=this.activeTurnAnchor.getBoundingClientRect();const r=s.getBoundingClientRect();const o=getComputedStyle(this.el).getPropertyValue("--ds-message-scroller-anchor-offset").trim();const a=l(o,"var(--dimension-space-800)");const i=Math.max(r.bottom-t.top,0);const d=Math.max(Math.ceil(this.viewport.clientHeight-a-i),0);if(d===this.turnClearance)return;this.turnClearance=d;this.el.style.setProperty("--ds-message-scroller-turn-clearance",`${d}px`)}applyDefaultPosition(){if(!this.viewport)return;this.releasePendingAtLiveEdge=false;if(this.defaultPosition==="start"){this.viewport.scrollTop=0;this.following=false;this.followReleased=true;this.showScrollToLatest=this.viewport.scrollHeight>this.viewport.clientHeight;this.scrollOverlayController?.sync();return}if(this.defaultPosition==="last-anchor"){const e=this.el.querySelectorAll("ds-message[scroll-anchor]");const s=e.item(e.length-1);if(s){s.scrollIntoView({block:"start"});this.following=this.isAtLiveEdge();this.followReleased=!this.following;this.showScrollToLatest=!this.following;this.scrollOverlayController?.sync();return}}this.viewport.scrollTop=this.viewport.scrollHeight;this.following=true;this.followReleased=false;this.showScrollToLatest=false;this.scrollOverlayController?.sync()}isAtLiveEdge(){if(!this.viewport)return true;return this.viewport.scrollHeight-this.viewport.clientHeight-this.viewport.scrollTop<=u}render(){return r(o,{key:"ee4e1cc638221d4f3e06136cd6a4e328431dfedb"},r("div",{key:"35f50f8e4f970a018a1adcfc1ab71cca9a8d7e31",class:"message-scroller"},r("div",{key:"de2ff850de73eba07b3b55e0b7eb18444b70dd94",class:"message-scroller__viewport",ref:e=>{this.viewport=e},role:"region","aria-label":this.messagesLabel,tabIndex:0,onScroll:this.handleScroll,onPointerDown:e=>{if(e.pointerType==="touch")this.releaseFollow()},onWheel:this.releaseFollow,onKeyDown:e=>{if(["ArrowUp","ArrowDown","PageUp","PageDown","Home","End"," "].includes(e.key)){this.releaseFollow()}}},r("div",{key:"60a74bbdf52fb7c980c340d5298632c7f07e4f6d",class:"message-scroller__content scroll-edge-fade--block-window",ref:e=>{this.content=e},role:"log","aria-live":"polite","aria-relevant":"additions","aria-busy":this.busy?"true":undefined},r("slot",{key:"e8e4c85969f1d1f33bd554d59f0716b0be4cb39f",ref:e=>{this.transcriptSlot=e},onSlotchange:this.handleTranscriptSlotChange}))),r("div",{key:"9c9728f24e1807b747eabd0fad0a2c955268f542",class:"message-scroller__overlay",ref:e=>{this.overlay=e}},r("div",{key:"3dd22c199c40ecf0277a7119232b4f094c5797ca",class:"message-scroller__overlay-stack"},r("div",{key:"a81849c2c6c102b3253b1e881c8d2aacb5f56a54",class:"message-scroller__interaction"},r("slot",{key:"8deb93f4cb50908f53a4385d27ebea9269d6ffe9",name:"interaction"})),r("div",{key:"64791240de9e19d0b1e6104048d6c52e3ca7f017",class:"message-scroller__overlay-content"},r("slot",{key:"4baf6fb843d1dfb56015328beff0848128c17670",name:"overlay"})))),this.showScrollToLatest?r("div",{class:"message-scroller__control ds-control-elevation ds-control-elevation--md ds-control-elevation--press-scale"},r("ds-tooltip",{label:"Scroll to latest message",side:"top",size:"sm"},r("ds-button-unfilled",{variant:"icon",icon:"ChevronDown",size:"md",rounded:true,hasBorder:false,"aria-label":"Scroll to latest message",onDsClick:()=>void this.scrollToEnd()}))):null))}get el(){return this}static get style(){return m()+v()}},[262,"ds-message-scroller",{busy:[4],autoFollow:[4,"auto-follow"],defaultPosition:[1,"default-position"],messagesLabel:[1,"messages-label"],showScrollToLatest:[32],scrollToMessage:[64],scrollToStart:[64],scrollToEnd:[64]}]);function b(){if(typeof customElements==="undefined"){return}const e=["ds-message-scroller","ds-badge","ds-button-unfilled","ds-icon","ds-loader","ds-text","ds-tooltip"];e.forEach((e=>{switch(e){case"ds-message-scroller":if(!customElements.get(a(e))){customElements.define(a(e),p)}break;case"ds-badge":if(!customElements.get(a(e))){d()}break;case"ds-button-unfilled":if(!customElements.get(a(e))){n()}break;case"ds-icon":if(!customElements.get(a(e))){c()}break;case"ds-loader":if(!customElements.get(a(e))){h()}break;case"ds-text":if(!customElements.get(a(e))){f()}break;case"ds-tooltip":if(!customElements.get(a(e))){g()}break}}))}b();const k=p;const w=b;export{k as DsMessageScroller,w as defineCustomElement};
1
+ import{p as e,H as s,c as t,h as r,a as o,t as a}from"./index.js";import{S as i}from"./p-CJq3n5kA.js";import{r as l}from"./p-BMc0DE59.js";import{d}from"./p-a6qP60zb.js";import{d as n}from"./p-NzGRAPcF.js";import{d as c}from"./p-BFfLvMZd.js";import{d as h}from"./p-JPTkZ3Ji.js";import{d as f}from"./p-BGXqFq2C.js";import{d as g}from"./p-D4K9CE8a.js";const m=()=>`@property --ds-scroll-edge-fade-top{syntax:'<length-percentage>';inherits:false;initial-value:0px}@property --ds-scroll-edge-fade-bottom{syntax:'<length-percentage>';inherits:false;initial-value:0px}@property --ds-scroll-edge-fade-left{syntax:'<length-percentage>';inherits:false;initial-value:0px}@property --ds-scroll-edge-fade-right{syntax:'<length-percentage>';inherits:false;initial-value:0px}@keyframes ds-scroll-edge-fade-reveal-top{from{--ds-scroll-edge-fade-top:0px}to{--ds-scroll-edge-fade-top:var(--ds-scroll-edge-fade-target-top)}}@keyframes ds-scroll-edge-fade-reveal-bottom{from{--ds-scroll-edge-fade-bottom:var(--ds-scroll-edge-fade-target-bottom)}to{--ds-scroll-edge-fade-bottom:0px}}@keyframes ds-scroll-edge-fade-reveal-left{from{--ds-scroll-edge-fade-left:0px}to{--ds-scroll-edge-fade-left:var(--ds-scroll-edge-fade-target-left)}}@keyframes ds-scroll-edge-fade-reveal-right{from{--ds-scroll-edge-fade-right:var(--ds-scroll-edge-fade-target-right)}to{--ds-scroll-edge-fade-right:0px}}.scroll-edge-fade.sc-ds-message-scroller{--ds-scroll-edge-fade-size:var(--dimension-size-600);--ds-scroll-edge-fade-reveal-distance:var(--dimension-size-800);--ds-scroll-edge-fade-target-top:0px;--ds-scroll-edge-fade-target-bottom:0px;--ds-scroll-edge-fade-target-left:0px;--ds-scroll-edge-fade-target-right:0px;--ds-scroll-edge-fade-top:var(--ds-scroll-edge-fade-target-top);--ds-scroll-edge-fade-bottom:var(--ds-scroll-edge-fade-target-bottom);--ds-scroll-edge-fade-left:var(--ds-scroll-edge-fade-target-left);--ds-scroll-edge-fade-right:var(--ds-scroll-edge-fade-target-right);--ds-scroll-edge-fade-block-mask:linear-gradient( to bottom, transparent 0, #000 var(--ds-scroll-edge-fade-top), #000 calc(100% - var(--ds-scroll-edge-fade-bottom)), transparent 100% );--ds-scroll-edge-fade-inline-mask:linear-gradient( to right, transparent 0, #000 var(--ds-scroll-edge-fade-left), #000 calc(100% - var(--ds-scroll-edge-fade-right)), transparent 100% );-webkit-mask-image:var(--ds-scroll-edge-fade-block-mask), var(--ds-scroll-edge-fade-inline-mask);mask-image:var(--ds-scroll-edge-fade-block-mask), var(--ds-scroll-edge-fade-inline-mask);-webkit-mask-composite:source-in;mask-composite:intersect;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%}.scroll-edge-fade--top.sc-ds-message-scroller{--ds-scroll-edge-fade-target-top:var(--ds-scroll-edge-fade-size)}.scroll-edge-fade--bottom.sc-ds-message-scroller{--ds-scroll-edge-fade-target-bottom:var(--ds-scroll-edge-fade-size)}.scroll-edge-fade--left.sc-ds-message-scroller{--ds-scroll-edge-fade-target-left:var(--ds-scroll-edge-fade-size)}.scroll-edge-fade--right.sc-ds-message-scroller{--ds-scroll-edge-fade-target-right:var(--ds-scroll-edge-fade-size)}.scroll-edge-fade--top-at-edge.sc-ds-message-scroller{--ds-scroll-edge-fade-target-top:0px}.scroll-edge-fade--bottom-at-edge.sc-ds-message-scroller{--ds-scroll-edge-fade-target-bottom:0px}.scroll-edge-fade--left-at-edge.sc-ds-message-scroller{--ds-scroll-edge-fade-target-left:0px}.scroll-edge-fade--right-at-edge.sc-ds-message-scroller{--ds-scroll-edge-fade-target-right:0px}@supports (animation-timeline: scroll()){.scroll-edge-fade--scroll-aware.sc-ds-message-scroller{animation-name:ds-scroll-edge-fade-reveal-top, ds-scroll-edge-fade-reveal-bottom, ds-scroll-edge-fade-reveal-left, ds-scroll-edge-fade-reveal-right;animation-duration:1ms;animation-timing-function:ease-in-out;animation-fill-mode:both;animation-timeline:scroll(self y), scroll(self y), scroll(self x), scroll(self x);animation-range:0 var(--ds-scroll-edge-fade-reveal-distance), calc(100% - var(--ds-scroll-edge-fade-reveal-distance)) 100%, 0 var(--ds-scroll-edge-fade-reveal-distance), calc(100% - var(--ds-scroll-edge-fade-reveal-distance)) 100%}@media (prefers-reduced-motion: reduce){.scroll-edge-fade--scroll-aware.sc-ds-message-scroller{animation:none}}}.scroll-edge-fade--at-end.sc-ds-message-scroller,.scroll-edge-fade--hidden.sc-ds-message-scroller{-webkit-mask-image:none;mask-image:none}.scroll-edge-fade--block-window.sc-ds-message-scroller{--ds-scroll-edge-fade-window-start:100%;--ds-scroll-edge-fade-window-end:100%;-webkit-mask-image:linear-gradient( to bottom, #000 0, #000 var(--ds-scroll-edge-fade-window-start), transparent var(--ds-scroll-edge-fade-window-end) );mask-image:linear-gradient( to bottom, #000 0, #000 var(--ds-scroll-edge-fade-window-start), transparent var(--ds-scroll-edge-fade-window-end) );-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}`;const v=()=>`.ds-control-elevation.sc-ds-message-scroller-h,.ds-control-elevation.sc-ds-message-scroller{position:relative;overflow:visible;box-shadow:var(--ds-control-elevation-shadow, none)}.ds-control-elevation.sc-ds-message-scroller-h::after,.ds-control-elevation.sc-ds-message-scroller::after{content:'';position:absolute;inset:0;z-index:4;border-radius:inherit;box-shadow:var(--ds-control-elevation-highlight, none);pointer-events:none}.ds-control-elevation--sm.sc-ds-message-scroller-h,.ds-control-elevation--sm.sc-ds-message-scroller{--ds-control-elevation-shadow:var(--effect-shadow-elevated-sm);--ds-control-elevation-highlight:var(--effect-highlight-elevated-sm)}.ds-control-elevation--md.sc-ds-message-scroller-h,.ds-control-elevation--md.sc-ds-message-scroller{--ds-control-elevation-shadow:var(--effect-shadow-elevated-md);--ds-control-elevation-highlight:var(--effect-highlight-elevated-md)}.ds-control-elevation--floating.sc-ds-message-scroller-h,.ds-control-elevation--floating.sc-ds-message-scroller{--ds-control-elevation-shadow:var(--effect-shadow-elevated-floating);--ds-control-elevation-highlight:var(--effect-highlight-elevated-floating)}.ds-control-elevation--press-scale.sc-ds-message-scroller{--ds-control-press-active-scale:var(--dimension-scale-default);transition:scale var(--effect-motion-short-2)}.ds-control-elevation--press-scale[data-ds-press-active].sc-ds-message-scroller{scale:var(--dimension-scale-subtle)}@media (prefers-reduced-motion: reduce){.ds-control-elevation--press-scale.sc-ds-message-scroller,.ds-control-elevation--press-scale[data-ds-press-active].sc-ds-message-scroller{scale:none;transition:none}}.sc-ds-message-scroller-h{--ds-message-scroller-anchor-offset:var(--dimension-space-800);display:block;width:100%;height:100%;min-height:0;box-sizing:border-box}.message-scroller.sc-ds-message-scroller{position:relative;width:100%;height:100%;min-height:0}.message-scroller__viewport.sc-ds-message-scroller{width:100%;height:100%;min-height:0;overflow:auto;overflow-anchor:none;overscroll-behavior:contain;box-sizing:border-box}.message-scroller__viewport.sc-ds-message-scroller:focus-visible{outline:var(--dimension-stroke-width-025) solid var(--color-border-bold-brand);outline-offset:calc(-1 * var(--dimension-stroke-width-025))}.message-scroller__content.sc-ds-message-scroller{display:flex;flex-direction:column;gap:var(--dimension-space-300);width:100%;max-width:var( --ds-message-scroller-content-max-width, var(--dimension-panel-width-2xl) );min-height:100%;margin-inline:auto;padding-block-start:var(--dimension-space-200);padding-inline:var(--dimension-space-200);padding-block-end:max( calc(var(--dimension-space-200) + var(--ds-scroll-overlay-block-size, 0px)), var(--ds-message-scroller-turn-clearance, 0px) );box-sizing:border-box}.message-scroller__overlay.sc-ds-message-scroller{position:absolute;right:0;bottom:0;left:0;z-index:var(--dimension-z-index-floating)}.message-scroller__overlay-stack.sc-ds-message-scroller{display:grid;width:100%}.message-scroller__interaction.sc-ds-message-scroller,.message-scroller__overlay-content.sc-ds-message-scroller{min-width:0}.message-scroller__control.sc-ds-message-scroller{position:absolute;bottom:calc( var(--ds-scroll-overlay-content-block-size, 0px) + var(--dimension-space-200) );left:50%;z-index:var(--dimension-z-index-floating);display:flex;align-items:center;justify-content:center;border-radius:var(--dimension-radius-half);background:var(--color-background-transparent);transform:translateX(-50%);-webkit-backdrop-filter:blur(var(--effect-blur-sm));backdrop-filter:blur(var(--effect-blur-sm))}`;const u=24;const p=e(class e extends s{constructor(e){super();if(e!==false){this.__registerHost()}this.dsReachStart=t(this,"dsReachStart",7);this.busy=false;this.autoFollow=true;this.defaultPosition="last-anchor";this.messagesLabel="Messages";this.showScrollToLatest=false;this.following=true;this.followReleased=false;this.releasePendingAtLiveEdge=false;this.atStart=false;this.programmatic=false;this.transcriptChildren=[];this.knownTranscriptElements=new Set;this.knownTurnAnchors=new Set;this.turnClearance=0;this.prependReconciliation=0;this.handleTranscriptChange=()=>{const e=this.getTranscriptChildren();const s=this.transcriptChildren;const t=this.knownTranscriptElements.size>0;const r=new Set(this.knownTranscriptElements);const o=[...e].reverse().find(((s,t)=>{if(!s.matches("ds-message[scroll-anchor]")||this.knownTurnAnchors.has(s)){return false}const r=e.length-t-1;return e.slice(r+1).every((e=>!this.knownTranscriptElements.has(e)))}));e.forEach((e=>{this.knownTranscriptElements.add(e);if(e.matches("ds-message[scroll-anchor]")){this.knownTurnAnchors.add(e)}}));if(!s.length){this.transcriptChildren=e;if(o&&t){requestAnimationFrame((()=>this.positionNewTurn(o)))}return}const a=e.findIndex((e=>r.has(e)));const i=e.filter((e=>!r.has(e)));const l=e.length>s.length&&s.every(((t,r)=>e[e.length-s.length+r]===t))||!o&&i.length>0&&a>0&&i.every((s=>e.indexOf(s)<a));this.transcriptChildren=e;if(l){if(this.viewport){const e=this.activeTurnAnchor?.isConnected?this.activeTurnAnchor:s[0];const t=this.activeTurnAnchor?.isConnected?this.activeTurnAnchorViewportTop:this.firstChildViewportTop;if(e&&t!==undefined){this.reconcilePrependPosition(e,t);this.schedulePrependReconciliation(e,t,i)}}this.rememberFirstChildTop();this.rememberActiveTurnAnchorTop();this.scrollOverlayController?.sync();return}if(o){requestAnimationFrame((()=>this.positionNewTurn(o)))}};this.handleTranscriptSlotChange=()=>this.handleTranscriptChange();this.handleScroll=()=>{if(!this.viewport)return;this.scrollOverlayController?.sync();this.rememberFirstChildTop();this.rememberActiveTurnAnchorTop();if(this.programmatic)return;const e=this.isAtLiveEdge();if(this.releasePendingAtLiveEdge&&e){this.following=false;this.followReleased=true;this.showScrollToLatest=false;return}this.releasePendingAtLiveEdge=false;this.following=e;this.followReleased=!this.following;this.showScrollToLatest=!this.following;const s=this.viewport.scrollTop<=u;if(s&&!this.atStart)this.dsReachStart.emit();this.atStart=s};this.releaseFollow=()=>{this.prependReconciliation+=1;this.releasePendingAtLiveEdge=this.isAtLiveEdge();this.following=false;this.followReleased=true;this.showScrollToLatest=!this.releasePendingAtLiveEdge};this.handleSelectionChange=()=>{const e=document.getSelection();if(e&&!e.isCollapsed&&e.anchorNode&&this.el.contains(e.anchorNode)){this.releaseFollow()}}}componentDidLoad(){this.transcriptChildren=this.getTranscriptChildren();this.transcriptChildren.forEach((e=>{this.knownTranscriptElements.add(e);if(e.matches("ds-message[scroll-anchor]")){this.knownTurnAnchors.add(e)}}));this.rememberFirstChildTop();this.connectObservers();requestAnimationFrame((()=>this.applyDefaultPosition()));document.addEventListener("selectionchange",this.handleSelectionChange)}disconnectedCallback(){this.prependReconciliation+=1;this.scrollOverlayController?.disconnect();this.mutationObserver?.disconnect();if(this.programmaticTimer)clearTimeout(this.programmaticTimer);document.removeEventListener("selectionchange",this.handleSelectionChange)}async scrollToMessage(e){const s=Array.from(this.el.querySelectorAll("ds-message")).find((s=>s.messageId===e||s.getAttribute("message-id")===e));if(!s)return false;this.releasePendingAtLiveEdge=false;this.following=false;this.followReleased=true;this.showScrollToLatest=true;s.scrollIntoView({block:"start",behavior:this.motionBehavior()});return true}async scrollToStart(){this.releasePendingAtLiveEdge=false;this.scrollTo(0);this.following=false;this.followReleased=true;this.showScrollToLatest=Boolean(this.viewport&&this.viewport.scrollHeight>this.viewport.clientHeight)}async scrollToEnd(){this.releasePendingAtLiveEdge=false;this.following=true;this.followReleased=false;this.showScrollToLatest=false;this.scrollTo(this.viewport?.scrollHeight??0)}motionBehavior(){return matchMedia("(prefers-reduced-motion: reduce)").matches?"auto":"smooth"}scrollTo(e){if(!this.viewport)return;this.programmatic=true;const s=this.motionBehavior();this.viewport.scrollTo({top:e,behavior:s});if(this.programmaticTimer)clearTimeout(this.programmaticTimer);this.programmaticTimer=setTimeout((()=>{this.programmatic=false;this.programmaticTimer=undefined;if(this.following){this.viewport.scrollTop=e;this.showScrollToLatest=false}}),s==="smooth"?600:0)}connectObservers(){if(!this.viewport||!this.content||!this.overlay)return;this.scrollOverlayController=new i({host:this.el,viewport:this.viewport,content:this.content,overlay:this.overlay,overlayContentSelector:".message-scroller__overlay-stack",onGeometryChange:()=>this.handleContentGrowth()});this.scrollOverlayController.connect();this.mutationObserver=new MutationObserver((()=>{this.handleTranscriptChange();this.handleContentGrowth()}));this.mutationObserver.observe(this.el,{childList:true,subtree:true,characterData:true})}handleContentGrowth(){if(!this.viewport)return;this.syncTurnClearance();const e=this.viewport.scrollHeight;if(this.autoFollow&&this.following&&!this.followReleased){this.viewport.scrollTop=e}if(this.releasePendingAtLiveEdge&&!this.isAtLiveEdge()){this.releasePendingAtLiveEdge=false}this.showScrollToLatest=!this.following&&!this.isAtLiveEdge();this.scrollOverlayController?.sync()}rememberFirstChildTop(){if(!this.viewport)return;const e=this.getTranscriptChildren()[0];this.firstChildViewportTop=e?e.getBoundingClientRect().top-this.viewport.getBoundingClientRect().top:undefined}getTranscriptChildren(){const e=this.transcriptSlot?.assignedElements()??[];const t=e.filter((e=>e instanceof s&&(e.matches("ds-message")||e.matches("ds-agent-response"))));const r=Array.from(this.el.querySelectorAll("ds-message, ds-agent-response")).filter((e=>{if(e.closest(".message-scroller__interaction, .message-scroller__overlay-content")){return false}if(e.matches("ds-agent-response"))return true;return!e.closest("ds-agent-response")}));return r.length>t.length?r:t}reconcilePrependPosition(e,s){if(!this.viewport||!e.isConnected)return;const t=e.getBoundingClientRect().top-this.viewport.getBoundingClientRect().top;this.viewport.scrollTop+=t-s}schedulePrependReconciliation(e,s,t){const r=++this.prependReconciliation;const o=t.flatMap((e=>[e,...Array.from(e.querySelectorAll("*"))])).map((e=>{const s=e.componentOnReady;return s?s.call(e).catch((()=>undefined)):null})).filter((e=>Boolean(e)));void Promise.all(o).then((()=>{requestAnimationFrame((()=>{if(r!==this.prependReconciliation)return;this.reconcilePrependPosition(e,s);requestAnimationFrame((()=>{if(r!==this.prependReconciliation)return;this.reconcilePrependPosition(e,s);this.rememberFirstChildTop();this.rememberActiveTurnAnchorTop();this.scrollOverlayController?.sync()}))}))}))}positionNewTurn(e){if(!this.viewport)return;this.activeTurnAnchor=e;this.syncTurnClearance();requestAnimationFrame((()=>this.finishPositionNewTurn(e)))}finishPositionNewTurn(e){if(!this.viewport||!e.isConnected)return;const s=this.viewport.getBoundingClientRect();const t=e.getBoundingClientRect().top-s.top+this.viewport.scrollTop;const r=getComputedStyle(this.el).getPropertyValue("--ds-message-scroller-anchor-offset").trim();const o=l(r,"var(--dimension-space-800)");const a=Math.max(this.viewport.scrollHeight-this.viewport.clientHeight,0);const i=Math.min(Math.max(t-o,0),a);this.following=a-i<=u;this.followReleased=!this.following;this.showScrollToLatest=!this.following;this.programmatic=true;this.viewport.scrollTop=i;requestAnimationFrame((()=>{this.programmatic=false;this.following=this.isAtLiveEdge();this.followReleased=!this.following;this.showScrollToLatest=!this.following;this.rememberFirstChildTop();this.rememberActiveTurnAnchorTop()}));this.scrollOverlayController?.sync()}rememberActiveTurnAnchorTop(){if(!this.viewport||!this.activeTurnAnchor?.isConnected)return;this.activeTurnAnchorViewportTop=this.activeTurnAnchor.getBoundingClientRect().top-this.viewport.getBoundingClientRect().top}syncTurnClearance(){if(!this.viewport||!this.activeTurnAnchor?.isConnected)return;const e=this.getTranscriptChildren();const s=e[e.length-1];if(!s)return;const t=this.activeTurnAnchor.getBoundingClientRect();const r=s.getBoundingClientRect();const o=getComputedStyle(this.el).getPropertyValue("--ds-message-scroller-anchor-offset").trim();const a=l(o,"var(--dimension-space-800)");const i=Math.max(r.bottom-t.top,0);const d=Math.max(Math.ceil(this.viewport.clientHeight-a-i),0);if(d===this.turnClearance)return;this.turnClearance=d;this.el.style.setProperty("--ds-message-scroller-turn-clearance",`${d}px`)}applyDefaultPosition(){if(!this.viewport)return;this.releasePendingAtLiveEdge=false;if(this.defaultPosition==="start"){this.viewport.scrollTop=0;this.following=false;this.followReleased=true;this.showScrollToLatest=this.viewport.scrollHeight>this.viewport.clientHeight;this.scrollOverlayController?.sync();return}if(this.defaultPosition==="last-anchor"){const e=this.el.querySelectorAll("ds-message[scroll-anchor]");const s=e.item(e.length-1);if(s){s.scrollIntoView({block:"start"});this.following=this.isAtLiveEdge();this.followReleased=!this.following;this.showScrollToLatest=!this.following;this.scrollOverlayController?.sync();return}}this.viewport.scrollTop=this.viewport.scrollHeight;this.following=true;this.followReleased=false;this.showScrollToLatest=false;this.scrollOverlayController?.sync()}isAtLiveEdge(){if(!this.viewport)return true;return this.viewport.scrollHeight-this.viewport.clientHeight-this.viewport.scrollTop<=u}render(){return r(o,{key:"ee4e1cc638221d4f3e06136cd6a4e328431dfedb"},r("div",{key:"35f50f8e4f970a018a1adcfc1ab71cca9a8d7e31",class:"message-scroller"},r("div",{key:"de2ff850de73eba07b3b55e0b7eb18444b70dd94",class:"message-scroller__viewport",ref:e=>{this.viewport=e},role:"region","aria-label":this.messagesLabel,tabIndex:0,onScroll:this.handleScroll,onPointerDown:e=>{if(e.pointerType==="touch")this.releaseFollow()},onWheel:this.releaseFollow,onKeyDown:e=>{if(["ArrowUp","ArrowDown","PageUp","PageDown","Home","End"," "].includes(e.key)){this.releaseFollow()}}},r("div",{key:"60a74bbdf52fb7c980c340d5298632c7f07e4f6d",class:"message-scroller__content scroll-edge-fade--block-window",ref:e=>{this.content=e},role:"log","aria-live":"polite","aria-relevant":"additions","aria-busy":this.busy?"true":undefined},r("slot",{key:"e8e4c85969f1d1f33bd554d59f0716b0be4cb39f",ref:e=>{this.transcriptSlot=e},onSlotchange:this.handleTranscriptSlotChange}))),r("div",{key:"9c9728f24e1807b747eabd0fad0a2c955268f542",class:"message-scroller__overlay",ref:e=>{this.overlay=e}},r("div",{key:"3dd22c199c40ecf0277a7119232b4f094c5797ca",class:"message-scroller__overlay-stack"},r("div",{key:"a81849c2c6c102b3253b1e881c8d2aacb5f56a54",class:"message-scroller__interaction"},r("slot",{key:"8deb93f4cb50908f53a4385d27ebea9269d6ffe9",name:"interaction"})),r("div",{key:"64791240de9e19d0b1e6104048d6c52e3ca7f017",class:"message-scroller__overlay-content"},r("slot",{key:"4baf6fb843d1dfb56015328beff0848128c17670",name:"overlay"})))),this.showScrollToLatest?r("div",{class:"message-scroller__control ds-control-elevation ds-control-elevation--md ds-control-elevation--press-scale"},r("ds-tooltip",{label:"Scroll to latest message",side:"top",size:"sm"},r("ds-button-unfilled",{variant:"icon",icon:"ChevronDown",size:"md",rounded:true,hasBorder:false,"aria-label":"Scroll to latest message",onDsClick:()=>void this.scrollToEnd()}))):null))}get el(){return this}static get style(){return m()+v()}},[262,"ds-message-scroller",{busy:[4],autoFollow:[4,"auto-follow"],defaultPosition:[1,"default-position"],messagesLabel:[1,"messages-label"],showScrollToLatest:[32],scrollToMessage:[64],scrollToStart:[64],scrollToEnd:[64]}]);function b(){if(typeof customElements==="undefined"){return}const e=["ds-message-scroller","ds-badge","ds-button-unfilled","ds-icon","ds-loader","ds-text","ds-tooltip"];e.forEach((e=>{switch(e){case"ds-message-scroller":if(!customElements.get(a(e))){customElements.define(a(e),p)}break;case"ds-badge":if(!customElements.get(a(e))){d()}break;case"ds-button-unfilled":if(!customElements.get(a(e))){n()}break;case"ds-icon":if(!customElements.get(a(e))){c()}break;case"ds-loader":if(!customElements.get(a(e))){h()}break;case"ds-text":if(!customElements.get(a(e))){f()}break;case"ds-tooltip":if(!customElements.get(a(e))){g()}break}}))}b();const k=p;const w=b;export{k as DsMessageScroller,w as defineCustomElement};
2
2
  //# sourceMappingURL=ds-message-scroller.js.map
@@ -1,2 +1,2 @@
1
- import{M as o,d as s}from"./p-MxptXwlW.js";const t=o;const p=s;export{t as DsMobileHeader,p as defineCustomElement};
1
+ import{M as s,d as o}from"./p-DsJW5W3W.js";const t=s;const p=o;export{t as DsMobileHeader,p as defineCustomElement};
2
2
  //# sourceMappingURL=ds-mobile-header.js.map
@@ -1,2 +1,2 @@
1
- import{M as o,d as s}from"./p-C4p2i59V.js";const p=o;const t=s;export{p as DsMobileSectionSwitcher,t as defineCustomElement};
1
+ import{M as o,d as s}from"./p-BHz78C8h.js";const t=o;const p=s;export{t as DsMobileSectionSwitcher,p as defineCustomElement};
2
2
  //# sourceMappingURL=ds-mobile-section-switcher.js.map
@@ -1,2 +1,2 @@
1
- import{M as o,d as s}from"./p-C_TOgX82.js";const t=o;const p=s;export{t as DsMobileSheetNav,p as defineCustomElement};
1
+ import{M as o,d as s}from"./p-Bn8NryHK.js";const r=o;const t=s;export{r as DsMobileSheetNav,t as defineCustomElement};
2
2
  //# sourceMappingURL=ds-mobile-sheet-nav.js.map
@@ -1,2 +1,2 @@
1
- import{M as o,d as s}from"./p-0IbKxhqM.js";const t=o;const p=s;export{t as DsModal,p as defineCustomElement};
1
+ import{M as o,d as r}from"./p-rrFMAZkj.js";const s=o;const t=r;export{s as DsModal,t as defineCustomElement};
2
2
  //# sourceMappingURL=ds-modal.js.map
@@ -1,2 +1,2 @@
1
- import{P as o,d as s}from"./p-C91izpHV.js";const p=o;const t=s;export{p as DsPagination,t as defineCustomElement};
1
+ import{P as o,d as s}from"./p-__lNIImO.js";const t=o;const m=s;export{t as DsPagination,m as defineCustomElement};
2
2
  //# sourceMappingURL=ds-pagination.js.map
@@ -1,2 +1,2 @@
1
- import{P as o,d as s}from"./p-DRBTr6TS.js";const r=o;const t=s;export{r as DsPanelNav,t as defineCustomElement};
1
+ import{P as o,d as s}from"./p-DZ55e3j9.js";const t=o;const p=s;export{t as DsPanelNav,p as defineCustomElement};
2
2
  //# sourceMappingURL=ds-panel-nav.js.map
@@ -1,2 +1,2 @@
1
- import{P as o,d as s}from"./p-Ct2GVdSI.js";const t=o;const p=s;export{t as DsPanelToolHeader,p as defineCustomElement};
1
+ import{P as s,d as o}from"./p-Be1sY58w.js";const t=s;const p=o;export{t as DsPanelToolHeader,p as defineCustomElement};
2
2
  //# sourceMappingURL=ds-panel-tool-header.js.map
@@ -1,2 +1,2 @@
1
- import{p as e,H as s,c as t,h as a,a as o,t as r}from"./index.js";import{a as l}from"./p-C6DNhlES.js";import{d as i}from"./p-a6qP60zb.js";import{d}from"./p-DAV32g35.js";import{d as c}from"./p-BNkU9dcc.js";import{d as n}from"./p-BFfLvMZd.js";import{d as h}from"./p-JPTkZ3Ji.js";import{d as p}from"./p-BGXqFq2C.js";import{d as g}from"./p-BK-JjdoN.js";const m=()=>`.ds-control--lg.sc-ds-panel-tool-search,.ds-control--lg.sc-ds-panel-tool-search-h,.ds-control--md.sc-ds-panel-tool-search-h,.ds-control--md.sc-ds-panel-tool-search,.ds-control--sm.sc-ds-panel-tool-search-h,.ds-control--sm.sc-ds-panel-tool-search,.ds-control--xs.sc-ds-panel-tool-search-h,.ds-control--xs.sc-ds-panel-tool-search{--ds-control-radius:var(--dimension-radius-025)}.ds-control--lg.sc-ds-panel-tool-search-h,.ds-control--lg.sc-ds-panel-tool-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-panel-tool-search-h,.ds-control--md.sc-ds-panel-tool-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-panel-tool-search-h,.ds-control--sm.sc-ds-panel-tool-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-panel-tool-search-h,.ds-control--xs.sc-ds-panel-tool-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-panel-tool-search-h,.ds-chrome-space--sm.sc-ds-panel-tool-search{--ds-chrome-padding:var(--dimension-space-050);--ds-chrome-gap:var(--dimension-space-050)}.ds-chrome-space--md.sc-ds-panel-tool-search-h,.ds-chrome-space--md.sc-ds-panel-tool-search{--ds-chrome-padding:var(--dimension-space-100);--ds-chrome-gap:var(--dimension-space-100)}.ds-chrome-space--lg.sc-ds-panel-tool-search-h,.ds-chrome-space--lg.sc-ds-panel-tool-search{--ds-chrome-padding:var(--dimension-space-200);--ds-chrome-gap:var(--dimension-space-200)}.ds-chrome-row.sc-ds-panel-tool-search-h,.ds-chrome-row.sc-ds-panel-tool-search,.ds-chrome-column.sc-ds-panel-tool-search-h,.ds-chrome-column.sc-ds-panel-tool-search,.ds-chrome-grid.sc-ds-panel-tool-search-h,.ds-chrome-grid.sc-ds-panel-tool-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-panel-tool-search-h,.ds-chrome-row.sc-ds-panel-tool-search{flex-direction:row;align-items:center}.ds-chrome-column.sc-ds-panel-tool-search-h,.ds-chrome-column.sc-ds-panel-tool-search{flex-direction:column}.ds-chrome-grid.sc-ds-panel-tool-search-h,.ds-chrome-grid.sc-ds-panel-tool-search{display:grid;align-items:center}.select-search.sc-ds-panel-tool-search{position:relative;box-sizing:border-box;padding:var(--dimension-space-050);background:transparent}.select-search.sc-ds-panel-tool-search::after{content:'';position:absolute;inset:auto 0 0;height:var(--dimension-stroke-width-012);background-color:var(--color-border-tertiary);pointer-events:none}.select-search.sc-ds-panel-tool-search:focus-within::after{height:var(--dimension-stroke-width-018);background-color:var(--color-border-bold-brand)}.select-search__control.sc-ds-panel-tool-search{display:flex;align-items:center;box-sizing:border-box;gap:var(--ds-control-gap, var(--dimension-space-050));height:var(--ds-control-height, var(--dimension-size-400));padding:0 var(--ds-control-padding-inline, var(--dimension-space-075));border:0;border-radius:var(--ds-control-radius, var(--dimension-radius-025))}.select-search__control.sc-ds-panel-tool-search:has(.select-search__clear){padding-right:0}.select-search__control.sc-ds-panel-tool-search>ds-icon.sc-ds-panel-tool-search{flex-shrink:0;color:var(--color-foreground-secondary)}.select-search.sc-ds-panel-tool-search .select-search__control.sc-ds-panel-tool-search .select-search__clear.sc-ds-panel-tool-search{align-self:center;flex-shrink:0;margin-right:var(--dimension-space-050)}.select-search__control.sc-ds-panel-tool-search input.sc-ds-panel-tool-search{flex:1;min-width:0;height:100%;padding:0 var(--ds-control-label-inset, var(--dimension-space-025));border:0;outline:none;background:transparent;color:var(--color-foreground-primary);font-family:inherit}.select-search__control.sc-ds-panel-tool-search input.sc-ds-panel-tool-search::placeholder{color:var(--color-foreground-secondary)}.select-search__control.sc-ds-panel-tool-search input.sc-ds-panel-tool-search:focus::placeholder{color:var(--color-foreground-quaternary)}.select-search__control.sc-ds-panel-tool-search input[type='search'].sc-ds-panel-tool-search::-webkit-search-cancel-button,.select-search__control.sc-ds-panel-tool-search input[type='search'].sc-ds-panel-tool-search::-webkit-search-decoration{display:none}.ds-text--display-medium.sc-ds-panel-tool-search-h,.ds-text--display-medium.sc-ds-panel-tool-search{font-size:var(--typography-fontsize-3xl);line-height:var(--typography-lineheight-3xl)}.ds-text--display-small.sc-ds-panel-tool-search-h,.ds-text--display-small.sc-ds-panel-tool-search{font-size:var(--typography-fontsize-2xl);line-height:var(--typography-lineheight-2xl)}.ds-text--title-large.sc-ds-panel-tool-search-h,.ds-text--title-large.sc-ds-panel-tool-search{font-size:var(--typography-fontsize-xl);line-height:var(--typography-lineheight-xl)}.ds-text--title-medium.sc-ds-panel-tool-search-h,.ds-text--title-medium.sc-ds-panel-tool-search{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--title-small.sc-ds-panel-tool-search-h,.ds-text--title-small.sc-ds-panel-tool-search{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-large.sc-ds-panel-tool-search-h,.ds-text--body-large.sc-ds-panel-tool-search{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--body-medium.sc-ds-panel-tool-search-h,.ds-text--body-medium.sc-ds-panel-tool-search{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-small.sc-ds-panel-tool-search-h,.ds-text--body-small.sc-ds-panel-tool-search{font-size:var(--typography-fontsize-sm);line-height:var(--typography-lineheight-sm)}.ds-text--caption.sc-ds-panel-tool-search-h,.ds-text--caption.sc-ds-panel-tool-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-panel-tool-search-h,.ds-text--display-small.ds-text--emphasis.sc-ds-panel-tool-search-h,.ds-text--display-medium.ds-text--emphasis.sc-ds-panel-tool-search,.ds-text--display-small.ds-text--emphasis.sc-ds-panel-tool-search{font-weight:var(--typography-weight-bold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--display-medium.ds-text--regular.sc-ds-panel-tool-search-h,.ds-text--display-small.ds-text--regular.sc-ds-panel-tool-search-h,.ds-text--display-medium.ds-text--regular.sc-ds-panel-tool-search,.ds-text--display-small.ds-text--regular.sc-ds-panel-tool-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-large.ds-text--emphasis.sc-ds-panel-tool-search-h,.ds-text--title-large.ds-text--emphasis.sc-ds-panel-tool-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--title-large.ds-text--regular.sc-ds-panel-tool-search-h,.ds-text--title-large.ds-text--regular.sc-ds-panel-tool-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--emphasis.sc-ds-panel-tool-search-h,.ds-text--title-small.ds-text--emphasis.sc-ds-panel-tool-search-h,.ds-text--title-medium.ds-text--emphasis.sc-ds-panel-tool-search,.ds-text--title-small.ds-text--emphasis.sc-ds-panel-tool-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--regular.sc-ds-panel-tool-search-h,.ds-text--title-small.ds-text--regular.sc-ds-panel-tool-search-h,.ds-text--title-medium.ds-text--regular.sc-ds-panel-tool-search,.ds-text--title-small.ds-text--regular.sc-ds-panel-tool-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-large.ds-text--emphasis.sc-ds-panel-tool-search-h,.ds-text--body-medium.ds-text--emphasis.sc-ds-panel-tool-search-h,.ds-text--body-large.ds-text--emphasis.sc-ds-panel-tool-search,.ds-text--body-medium.ds-text--emphasis.sc-ds-panel-tool-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--body-large.ds-text--regular.sc-ds-panel-tool-search-h,.ds-text--body-medium.ds-text--regular.sc-ds-panel-tool-search-h,.ds-text--body-large.ds-text--regular.sc-ds-panel-tool-search,.ds-text--body-medium.ds-text--regular.sc-ds-panel-tool-search{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--emphasis.sc-ds-panel-tool-search-h,.ds-text--body-small.ds-text--emphasis.sc-ds-panel-tool-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--regular.sc-ds-panel-tool-search-h,.ds-text--body-small.ds-text--regular.sc-ds-panel-tool-search{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-none)}.ds-text--caption.ds-text--emphasis.sc-ds-panel-tool-search-h,.ds-text--caption.ds-text--emphasis.sc-ds-panel-tool-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-positive)}.ds-text--caption.ds-text--regular.sc-ds-panel-tool-search-h,.ds-text--caption.ds-text--regular.sc-ds-panel-tool-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-positive)}.sc-ds-panel-tool-search-h{display:block;flex:0 0 var(--dimension-size-600);width:100%;min-width:0;height:var(--dimension-size-600);box-sizing:border-box;background:transparent}.panel-tool-search.sc-ds-panel-tool-search{position:relative;width:100%;height:100%;background:transparent}.panel-tool-search.sc-ds-panel-tool-search::after{content:'';position:absolute;inset:auto 0 0;height:var(--dimension-stroke-width-012);background-color:var(--color-border-tertiary);pointer-events:none}.select-search.sc-ds-panel-tool-search{flex:1 1 auto;width:auto;min-width:0;height:var(--dimension-size-400);padding:0}.select-search.sc-ds-panel-tool-search::after{display:none}.panel-tool-search__filter-group.sc-ds-panel-tool-search{display:flex;flex:0 0 auto;align-items:center;gap:var(--dimension-space-100)}.panel-tool-search__divider.sc-ds-panel-tool-search,.panel-tool-search__filter.sc-ds-panel-tool-search{flex:0 0 auto}`;const y=e(class e extends s{constructor(e){super();if(e!==false){this.__registerHost()}this.dsChange=t(this,"dsChange",7);this.dsClear=t(this,"dsClear",7);this.dsFilterToggle=t(this,"dsFilterToggle",7);this.value="";this.placeholder="Search";this.ariaLabel="Search";this.isInactive=false;this.showFilter=false;this.filterAriaLabel="Filter";this.filterTriggerId="";this.filterExpanded=false;this.filterActive=false;this.handleChange=e=>{this.value=e;this.dsChange.emit(e)}}componentDidRender(){const e=this.el.querySelector("input");if(e&&e.value!==this.value)e.value=this.value}async setFocus(){this.el.querySelector("input")?.focus()}async focusFilterTrigger(){const e=this.el.querySelector("ds-button-unfilled.panel-tool-search__filter");await(e?.setFocus?.())}render(){return a(o,{key:"ed5c26d6f0c470ec5d63458a660260dbe4526156"},a("div",{key:"c2a8b91260b5c7b5aa56bf8cdd11731c9022cfde",class:"panel-tool-search ds-chrome-row ds-chrome-space--md"},a(l,{key:"9709caaa2f7357eb8c00c933cccde6fa44a234aa",value:this.value,placeholder:this.placeholder,ariaLabel:this.ariaLabel,controls:this.controls,disabled:this.isInactive,inputRef:()=>undefined,clearLabel:"Clear",onValueChange:this.handleChange,onClear:()=>this.dsClear.emit(),onKeyDown:()=>undefined}),this.showFilter?a("div",{class:"panel-tool-search__filter-group"},a("ds-divider",{class:"panel-tool-search__divider",orientation:"vertical",length:"var(--dimension-size-200)"}),a("ds-tooltip",{label:this.filterAriaLabel,side:"bottom",size:"sm"},a("ds-button-unfilled",{id:this.filterTriggerId||undefined,class:"panel-tool-search__filter",variant:"icon",icon:"Filters",size:"md","aria-label":this.filterAriaLabel,haspopup:"menu",controls:this.filterControls,expanded:this.filterExpanded,isActive:this.filterActive,isInactive:this.isInactive,activeFill:false,hasBorder:false,onDsChange:e=>{e.stopPropagation()},onDsClick:e=>{e.stopPropagation();this.dsFilterToggle.emit(e.detail)}}))):null))}get el(){return this}static get style(){return m()}},[2,"ds-panel-tool-search",{value:[1025],placeholder:[1],ariaLabel:[1,"aria-label"],controls:[1],isInactive:[4,"is-inactive"],showFilter:[4,"show-filter"],filterAriaLabel:[1,"filter-aria-label"],filterTriggerId:[1,"filter-trigger-id"],filterControls:[1,"filter-controls"],filterExpanded:[4,"filter-expanded"],filterActive:[4,"filter-active"],setFocus:[64],focusFilterTrigger:[64]}]);function v(){if(typeof customElements==="undefined"){return}const e=["ds-panel-tool-search","ds-badge","ds-button-unfilled","ds-divider","ds-icon","ds-loader","ds-text","ds-tooltip"];e.forEach((e=>{switch(e){case"ds-panel-tool-search":if(!customElements.get(r(e))){customElements.define(r(e),y)}break;case"ds-badge":if(!customElements.get(r(e))){i()}break;case"ds-button-unfilled":if(!customElements.get(r(e))){d()}break;case"ds-divider":if(!customElements.get(r(e))){c()}break;case"ds-icon":if(!customElements.get(r(e))){n()}break;case"ds-loader":if(!customElements.get(r(e))){h()}break;case"ds-text":if(!customElements.get(r(e))){p()}break;case"ds-tooltip":if(!customElements.get(r(e))){g()}break}}))}v();const x=y;const u=v;export{x as DsPanelToolSearch,u as defineCustomElement};
1
+ import{p as e,H as s,c as t,h as a,a as o,t as r}from"./index.js";import{a as l}from"./p-C6DNhlES.js";import{d as i}from"./p-a6qP60zb.js";import{d}from"./p-NzGRAPcF.js";import{d as c}from"./p-BNkU9dcc.js";import{d as n}from"./p-BFfLvMZd.js";import{d as h}from"./p-JPTkZ3Ji.js";import{d as p}from"./p-BGXqFq2C.js";import{d as g}from"./p-D4K9CE8a.js";const m=()=>`.ds-control--lg.sc-ds-panel-tool-search,.ds-control--lg.sc-ds-panel-tool-search-h,.ds-control--md.sc-ds-panel-tool-search-h,.ds-control--md.sc-ds-panel-tool-search,.ds-control--sm.sc-ds-panel-tool-search-h,.ds-control--sm.sc-ds-panel-tool-search,.ds-control--xs.sc-ds-panel-tool-search-h,.ds-control--xs.sc-ds-panel-tool-search{--ds-control-radius:var(--dimension-radius-025)}.ds-control--lg.sc-ds-panel-tool-search-h,.ds-control--lg.sc-ds-panel-tool-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-panel-tool-search-h,.ds-control--md.sc-ds-panel-tool-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-panel-tool-search-h,.ds-control--sm.sc-ds-panel-tool-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-panel-tool-search-h,.ds-control--xs.sc-ds-panel-tool-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-panel-tool-search-h,.ds-chrome-space--sm.sc-ds-panel-tool-search{--ds-chrome-padding:var(--dimension-space-050);--ds-chrome-gap:var(--dimension-space-050)}.ds-chrome-space--md.sc-ds-panel-tool-search-h,.ds-chrome-space--md.sc-ds-panel-tool-search{--ds-chrome-padding:var(--dimension-space-100);--ds-chrome-gap:var(--dimension-space-100)}.ds-chrome-space--lg.sc-ds-panel-tool-search-h,.ds-chrome-space--lg.sc-ds-panel-tool-search{--ds-chrome-padding:var(--dimension-space-200);--ds-chrome-gap:var(--dimension-space-200)}.ds-chrome-row.sc-ds-panel-tool-search-h,.ds-chrome-row.sc-ds-panel-tool-search,.ds-chrome-column.sc-ds-panel-tool-search-h,.ds-chrome-column.sc-ds-panel-tool-search,.ds-chrome-grid.sc-ds-panel-tool-search-h,.ds-chrome-grid.sc-ds-panel-tool-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-panel-tool-search-h,.ds-chrome-row.sc-ds-panel-tool-search{flex-direction:row;align-items:center}.ds-chrome-column.sc-ds-panel-tool-search-h,.ds-chrome-column.sc-ds-panel-tool-search{flex-direction:column}.ds-chrome-grid.sc-ds-panel-tool-search-h,.ds-chrome-grid.sc-ds-panel-tool-search{display:grid;align-items:center}.select-search.sc-ds-panel-tool-search{position:relative;box-sizing:border-box;padding:var(--dimension-space-050);background:transparent}.select-search.sc-ds-panel-tool-search::after{content:'';position:absolute;inset:auto 0 0;height:var(--dimension-stroke-width-012);background-color:var(--color-border-tertiary);pointer-events:none}.select-search.sc-ds-panel-tool-search:focus-within::after{height:var(--dimension-stroke-width-018);background-color:var(--color-border-bold-brand)}.select-search__control.sc-ds-panel-tool-search{display:flex;align-items:center;box-sizing:border-box;gap:var(--ds-control-gap, var(--dimension-space-050));height:var(--ds-control-height, var(--dimension-size-400));padding:0 var(--ds-control-padding-inline, var(--dimension-space-075));border:0;border-radius:var(--ds-control-radius, var(--dimension-radius-025))}.select-search__control.sc-ds-panel-tool-search:has(.select-search__clear){padding-right:0}.select-search__control.sc-ds-panel-tool-search>ds-icon.sc-ds-panel-tool-search{flex-shrink:0;color:var(--color-foreground-secondary)}.select-search.sc-ds-panel-tool-search .select-search__control.sc-ds-panel-tool-search .select-search__clear.sc-ds-panel-tool-search{align-self:center;flex-shrink:0;margin-right:var(--dimension-space-050)}.select-search__control.sc-ds-panel-tool-search input.sc-ds-panel-tool-search{flex:1;min-width:0;height:100%;padding:0 var(--ds-control-label-inset, var(--dimension-space-025));border:0;outline:none;background:transparent;color:var(--color-foreground-primary);font-family:inherit}.select-search__control.sc-ds-panel-tool-search input.sc-ds-panel-tool-search::placeholder{color:var(--color-foreground-secondary)}.select-search__control.sc-ds-panel-tool-search input.sc-ds-panel-tool-search:focus::placeholder{color:var(--color-foreground-quaternary)}.select-search__control.sc-ds-panel-tool-search input[type='search'].sc-ds-panel-tool-search::-webkit-search-cancel-button,.select-search__control.sc-ds-panel-tool-search input[type='search'].sc-ds-panel-tool-search::-webkit-search-decoration{display:none}.ds-text--display-medium.sc-ds-panel-tool-search-h,.ds-text--display-medium.sc-ds-panel-tool-search{font-size:var(--typography-fontsize-3xl);line-height:var(--typography-lineheight-3xl)}.ds-text--display-small.sc-ds-panel-tool-search-h,.ds-text--display-small.sc-ds-panel-tool-search{font-size:var(--typography-fontsize-2xl);line-height:var(--typography-lineheight-2xl)}.ds-text--title-large.sc-ds-panel-tool-search-h,.ds-text--title-large.sc-ds-panel-tool-search{font-size:var(--typography-fontsize-xl);line-height:var(--typography-lineheight-xl)}.ds-text--title-medium.sc-ds-panel-tool-search-h,.ds-text--title-medium.sc-ds-panel-tool-search{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--title-small.sc-ds-panel-tool-search-h,.ds-text--title-small.sc-ds-panel-tool-search{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-large.sc-ds-panel-tool-search-h,.ds-text--body-large.sc-ds-panel-tool-search{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--body-medium.sc-ds-panel-tool-search-h,.ds-text--body-medium.sc-ds-panel-tool-search{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-small.sc-ds-panel-tool-search-h,.ds-text--body-small.sc-ds-panel-tool-search{font-size:var(--typography-fontsize-sm);line-height:var(--typography-lineheight-sm)}.ds-text--caption.sc-ds-panel-tool-search-h,.ds-text--caption.sc-ds-panel-tool-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-panel-tool-search-h,.ds-text--display-small.ds-text--emphasis.sc-ds-panel-tool-search-h,.ds-text--display-medium.ds-text--emphasis.sc-ds-panel-tool-search,.ds-text--display-small.ds-text--emphasis.sc-ds-panel-tool-search{font-weight:var(--typography-weight-bold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--display-medium.ds-text--regular.sc-ds-panel-tool-search-h,.ds-text--display-small.ds-text--regular.sc-ds-panel-tool-search-h,.ds-text--display-medium.ds-text--regular.sc-ds-panel-tool-search,.ds-text--display-small.ds-text--regular.sc-ds-panel-tool-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-large.ds-text--emphasis.sc-ds-panel-tool-search-h,.ds-text--title-large.ds-text--emphasis.sc-ds-panel-tool-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--title-large.ds-text--regular.sc-ds-panel-tool-search-h,.ds-text--title-large.ds-text--regular.sc-ds-panel-tool-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--emphasis.sc-ds-panel-tool-search-h,.ds-text--title-small.ds-text--emphasis.sc-ds-panel-tool-search-h,.ds-text--title-medium.ds-text--emphasis.sc-ds-panel-tool-search,.ds-text--title-small.ds-text--emphasis.sc-ds-panel-tool-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--regular.sc-ds-panel-tool-search-h,.ds-text--title-small.ds-text--regular.sc-ds-panel-tool-search-h,.ds-text--title-medium.ds-text--regular.sc-ds-panel-tool-search,.ds-text--title-small.ds-text--regular.sc-ds-panel-tool-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-large.ds-text--emphasis.sc-ds-panel-tool-search-h,.ds-text--body-medium.ds-text--emphasis.sc-ds-panel-tool-search-h,.ds-text--body-large.ds-text--emphasis.sc-ds-panel-tool-search,.ds-text--body-medium.ds-text--emphasis.sc-ds-panel-tool-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--body-large.ds-text--regular.sc-ds-panel-tool-search-h,.ds-text--body-medium.ds-text--regular.sc-ds-panel-tool-search-h,.ds-text--body-large.ds-text--regular.sc-ds-panel-tool-search,.ds-text--body-medium.ds-text--regular.sc-ds-panel-tool-search{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--emphasis.sc-ds-panel-tool-search-h,.ds-text--body-small.ds-text--emphasis.sc-ds-panel-tool-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--regular.sc-ds-panel-tool-search-h,.ds-text--body-small.ds-text--regular.sc-ds-panel-tool-search{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-none)}.ds-text--caption.ds-text--emphasis.sc-ds-panel-tool-search-h,.ds-text--caption.ds-text--emphasis.sc-ds-panel-tool-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-positive)}.ds-text--caption.ds-text--regular.sc-ds-panel-tool-search-h,.ds-text--caption.ds-text--regular.sc-ds-panel-tool-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-positive)}.sc-ds-panel-tool-search-h{display:block;flex:0 0 var(--dimension-size-600);width:100%;min-width:0;height:var(--dimension-size-600);box-sizing:border-box;background:transparent}.panel-tool-search.sc-ds-panel-tool-search{position:relative;width:100%;height:100%;background:transparent}.panel-tool-search.sc-ds-panel-tool-search::after{content:'';position:absolute;inset:auto 0 0;height:var(--dimension-stroke-width-012);background-color:var(--color-border-tertiary);pointer-events:none}.select-search.sc-ds-panel-tool-search{flex:1 1 auto;width:auto;min-width:0;height:var(--dimension-size-400);padding:0}.select-search.sc-ds-panel-tool-search::after{display:none}.panel-tool-search__filter-group.sc-ds-panel-tool-search{display:flex;flex:0 0 auto;align-items:center;gap:var(--dimension-space-100)}.panel-tool-search__divider.sc-ds-panel-tool-search,.panel-tool-search__filter.sc-ds-panel-tool-search{flex:0 0 auto}`;const y=e(class e extends s{constructor(e){super();if(e!==false){this.__registerHost()}this.dsChange=t(this,"dsChange",7);this.dsClear=t(this,"dsClear",7);this.dsFilterToggle=t(this,"dsFilterToggle",7);this.value="";this.placeholder="Search";this.ariaLabel="Search";this.isInactive=false;this.showFilter=false;this.filterAriaLabel="Filter";this.filterTriggerId="";this.filterExpanded=false;this.filterActive=false;this.handleChange=e=>{this.value=e;this.dsChange.emit(e)}}componentDidRender(){const e=this.el.querySelector("input");if(e&&e.value!==this.value)e.value=this.value}async setFocus(){this.el.querySelector("input")?.focus()}async focusFilterTrigger(){const e=this.el.querySelector("ds-button-unfilled.panel-tool-search__filter");await(e?.setFocus?.())}render(){return a(o,{key:"ed5c26d6f0c470ec5d63458a660260dbe4526156"},a("div",{key:"c2a8b91260b5c7b5aa56bf8cdd11731c9022cfde",class:"panel-tool-search ds-chrome-row ds-chrome-space--md"},a(l,{key:"9709caaa2f7357eb8c00c933cccde6fa44a234aa",value:this.value,placeholder:this.placeholder,ariaLabel:this.ariaLabel,controls:this.controls,disabled:this.isInactive,inputRef:()=>undefined,clearLabel:"Clear",onValueChange:this.handleChange,onClear:()=>this.dsClear.emit(),onKeyDown:()=>undefined}),this.showFilter?a("div",{class:"panel-tool-search__filter-group"},a("ds-divider",{class:"panel-tool-search__divider",orientation:"vertical",length:"var(--dimension-size-200)"}),a("ds-tooltip",{label:this.filterAriaLabel,side:"bottom",size:"sm"},a("ds-button-unfilled",{id:this.filterTriggerId||undefined,class:"panel-tool-search__filter",variant:"icon",icon:"Filters",size:"md","aria-label":this.filterAriaLabel,haspopup:"menu",controls:this.filterControls,expanded:this.filterExpanded,isActive:this.filterActive,isInactive:this.isInactive,activeFill:false,hasBorder:false,onDsChange:e=>{e.stopPropagation()},onDsClick:e=>{e.stopPropagation();this.dsFilterToggle.emit(e.detail)}}))):null))}get el(){return this}static get style(){return m()}},[2,"ds-panel-tool-search",{value:[1025],placeholder:[1],ariaLabel:[1,"aria-label"],controls:[1],isInactive:[4,"is-inactive"],showFilter:[4,"show-filter"],filterAriaLabel:[1,"filter-aria-label"],filterTriggerId:[1,"filter-trigger-id"],filterControls:[1,"filter-controls"],filterExpanded:[4,"filter-expanded"],filterActive:[4,"filter-active"],setFocus:[64],focusFilterTrigger:[64]}]);function v(){if(typeof customElements==="undefined"){return}const e=["ds-panel-tool-search","ds-badge","ds-button-unfilled","ds-divider","ds-icon","ds-loader","ds-text","ds-tooltip"];e.forEach((e=>{switch(e){case"ds-panel-tool-search":if(!customElements.get(r(e))){customElements.define(r(e),y)}break;case"ds-badge":if(!customElements.get(r(e))){i()}break;case"ds-button-unfilled":if(!customElements.get(r(e))){d()}break;case"ds-divider":if(!customElements.get(r(e))){c()}break;case"ds-icon":if(!customElements.get(r(e))){n()}break;case"ds-loader":if(!customElements.get(r(e))){h()}break;case"ds-text":if(!customElements.get(r(e))){p()}break;case"ds-tooltip":if(!customElements.get(r(e))){g()}break}}))}v();const x=y;const u=v;export{x as DsPanelToolSearch,u as defineCustomElement};
2
2
  //# sourceMappingURL=ds-panel-tool-search.js.map
@@ -1,2 +1,2 @@
1
- import{P as o,d as s}from"./p-vzxD117T.js";const t=o;const p=s;export{t as DsPanelTools,p as defineCustomElement};
1
+ import{P as o,d as s}from"./p-Bh67XbfB.js";const t=o;const p=s;export{t as DsPanelTools,p as defineCustomElement};
2
2
  //# sourceMappingURL=ds-panel-tools.js.map
@@ -1,2 +1,2 @@
1
- import{S as o,d as s}from"./p-COVcyUAA.js";const t=o;const c=s;export{t as DsSelect,c as defineCustomElement};
1
+ import{S as o,d as s}from"./p-CKmfuK7k.js";const t=o;const m=s;export{t as DsSelect,m as defineCustomElement};
2
2
  //# sourceMappingURL=ds-select.js.map