@ds-mo/ui 15.7.0 → 15.8.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 (191) hide show
  1. package/dist/.package-ready.json +1 -1
  2. package/dist/agent-patterns.json +1 -1
  3. package/dist/agent.json +7 -2
  4. package/dist/angular/ds-table.d.ts +10 -1
  5. package/dist/angular/ds-table.js +5 -2
  6. package/dist/components/ds-agent-activity.js +1 -1
  7. package/dist/components/ds-agent-questionnaire.js +1 -1
  8. package/dist/components/ds-agent-response.js +1 -1
  9. package/dist/components/ds-agent-source-list.js +1 -1
  10. package/dist/components/ds-agent-tool-call.js +1 -1
  11. package/dist/components/ds-attachment-list.js +1 -1
  12. package/dist/components/ds-avatar.js +1 -1
  13. package/dist/components/ds-avatar.js.map +1 -1
  14. package/dist/components/ds-banner.js +1 -1
  15. package/dist/components/ds-bar-action.js +1 -1
  16. package/dist/components/ds-bar-action.js.map +1 -1
  17. package/dist/components/ds-bar-nav.js +1 -1
  18. package/dist/components/ds-bar-page-title.js +1 -1
  19. package/dist/components/ds-bar-title.js +1 -1
  20. package/dist/components/ds-bar-workflow.js +1 -1
  21. package/dist/components/ds-bar-workflow.js.map +1 -1
  22. package/dist/components/ds-button-filled.js +1 -1
  23. package/dist/components/ds-button-inverted.js +1 -1
  24. package/dist/components/ds-button-unfilled.js +1 -1
  25. package/dist/components/ds-calendar.js +1 -1
  26. package/dist/components/ds-card-action-center.js +1 -1
  27. package/dist/components/ds-card-chart.js +1 -1
  28. package/dist/components/ds-card-navigation.js +1 -1
  29. package/dist/components/ds-card-setting.js +1 -1
  30. package/dist/components/ds-chart.js +1 -1
  31. package/dist/components/ds-chip.js +1 -1
  32. package/dist/components/ds-code-block.js +1 -1
  33. package/dist/components/ds-conversation-list-item.js +1 -1
  34. package/dist/components/ds-conversation-list-item.js.map +1 -1
  35. package/dist/components/ds-data-customize.js +1 -1
  36. package/dist/components/ds-data-filter.js +1 -1
  37. package/dist/components/ds-data-group.js +1 -1
  38. package/dist/components/ds-data-preferences.js +1 -1
  39. package/dist/components/ds-data-preferences.js.map +1 -1
  40. package/dist/components/ds-data-saved-views.js +1 -1
  41. package/dist/components/ds-data-search.js +1 -1
  42. package/dist/components/ds-data-search.js.map +1 -1
  43. package/dist/components/ds-data-sort.js +1 -1
  44. package/dist/components/ds-empty-state.js +1 -1
  45. package/dist/components/ds-filter-menu.js +1 -1
  46. package/dist/components/ds-icon.js +1 -1
  47. package/dist/components/ds-input-date.js +1 -1
  48. package/dist/components/ds-input-time.js +1 -1
  49. package/dist/components/ds-input.js +1 -1
  50. package/dist/components/ds-map-entity-marker.js +1 -1
  51. package/dist/components/ds-markdown.js +1 -1
  52. package/dist/components/ds-menu.js +1 -1
  53. package/dist/components/ds-message-actions.js +1 -1
  54. package/dist/components/ds-message-composer.js +1 -1
  55. package/dist/components/ds-message-scroller.js +1 -1
  56. package/dist/components/ds-mobile-bar-nav.js +1 -1
  57. package/dist/components/ds-mobile-header.js +1 -1
  58. package/dist/components/ds-mobile-section-switcher.js +1 -1
  59. package/dist/components/ds-mobile-sheet-nav.js +1 -1
  60. package/dist/components/ds-modal.js +1 -1
  61. package/dist/components/ds-navigation-tab-group.js +1 -1
  62. package/dist/components/ds-pagination.js +1 -1
  63. package/dist/components/ds-panel-nav.js +1 -1
  64. package/dist/components/ds-panel-tool-header.js +1 -1
  65. package/dist/components/ds-panel-tool-search.js +1 -1
  66. package/dist/components/ds-panel-tool-search.js.map +1 -1
  67. package/dist/components/ds-panel-tools.js +1 -1
  68. package/dist/components/ds-select-toggle.js +1 -1
  69. package/dist/components/ds-select.js +1 -1
  70. package/dist/components/ds-shell-app.js +1 -1
  71. package/dist/components/ds-shell-app.js.map +1 -1
  72. package/dist/components/ds-shell-tools.js +1 -1
  73. package/dist/components/ds-tab-group.js +1 -1
  74. package/dist/components/ds-table.js +1 -1
  75. package/dist/components/ds-table.js.map +1 -1
  76. package/dist/components/ds-tag.js +1 -1
  77. package/dist/components/ds-toast.js +1 -1
  78. package/dist/components/ds-tooltip-chart.js +1 -1
  79. package/dist/components/{p-DKvHBXwn.js → p-B1dnisok.js} +2 -2
  80. package/dist/components/p-B7EfrM6C.js +2 -0
  81. package/dist/components/{p-CLqqb0Jp.js.map → p-B7EfrM6C.js.map} +1 -1
  82. package/dist/components/{p-CgC4SM5b.js → p-B9ZhRwE3.js} +2 -2
  83. package/dist/components/{p-DGrSro-o.js → p-BAcdqJaa.js} +2 -2
  84. package/dist/components/{p-4sBUSsqs.js → p-BREDkBUv.js} +2 -2
  85. package/dist/components/{p-pPtjNRqC.js → p-BVsVUnAw.js} +2 -2
  86. package/dist/components/p-BVsVUnAw.js.map +1 -0
  87. package/dist/components/{p-CKSJwSWd.js → p-BWnL2SWn.js} +2 -2
  88. package/dist/components/{p-CqAC2IQO.js → p-BcmJBzB6.js} +2 -2
  89. package/dist/components/p-BjD1eFx6.js +2 -0
  90. package/dist/components/{p-CHyxUWqL.js.map → p-BjD1eFx6.js.map} +1 -1
  91. package/dist/components/{p-AGqUGzNZ.js → p-Bjm-Rk_x.js} +2 -2
  92. package/dist/components/{p-UBQ5O7B-.js → p-Bls48_RF.js} +2 -2
  93. package/dist/components/{p-oBpjD9OA.js → p-BqZWKYsS.js} +2 -2
  94. package/dist/components/p-C4YUkrr0.js +2 -0
  95. package/dist/components/{p-LJXiEPw1.js.map → p-C4YUkrr0.js.map} +1 -1
  96. package/dist/components/p-C62g3d5y.js +2 -0
  97. package/dist/components/{p-CRhoeCC8.js.map → p-C62g3d5y.js.map} +1 -1
  98. package/dist/components/p-C6EXrs1S.js +2 -0
  99. package/dist/components/{p-CvIHBa8S.js.map → p-C6EXrs1S.js.map} +1 -1
  100. package/dist/components/p-CCoJ7CBB.js +2 -0
  101. package/dist/components/{p-BKyE025p.js.map → p-CCoJ7CBB.js.map} +1 -1
  102. package/dist/components/p-CG4vPDhg.js +2 -0
  103. package/dist/components/{p-DmgDVoDb.js.map → p-CG4vPDhg.js.map} +1 -1
  104. package/dist/components/p-CJSIvfpo.js +2 -0
  105. package/dist/components/{p-C0L-VnSr.js.map → p-CJSIvfpo.js.map} +1 -1
  106. package/dist/components/p-CJuc20pQ.js +2 -0
  107. package/dist/components/p-CJuc20pQ.js.map +1 -0
  108. package/dist/components/{p-dSNHIJz6.js → p-CWAeg9jl.js} +2 -2
  109. package/dist/components/{p-BwNW5nqj.js → p-CantpOo3.js} +2 -2
  110. package/dist/components/p-D-TeAVxE.js +2 -0
  111. package/dist/components/{p-Ct2KQHF4.js.map → p-D-TeAVxE.js.map} +1 -1
  112. package/dist/components/{p-DiPqdcD4.js → p-D3JCih82.js} +2 -2
  113. package/dist/components/p-DHpcv_Os.js +2 -0
  114. package/dist/components/{p-BPDo1eQV.js.map → p-DHpcv_Os.js.map} +1 -1
  115. package/dist/components/{p-D_xZ5SFL.js → p-DWXpMWIp.js} +2 -2
  116. package/dist/components/{p-Dyjs8_Cl.js → p-DagrkX2v.js} +2 -2
  117. package/dist/components/{p-D62yUMhr.js → p-DcMbWqTd.js} +2 -2
  118. package/dist/components/{p-g2OUK8Z0.js → p-DiyL2sI5.js} +2 -2
  119. package/dist/components/p-Dvw7N7TH.js +2 -0
  120. package/dist/components/{p-D9l0QBgN.js.map → p-Dvw7N7TH.js.map} +1 -1
  121. package/dist/components/{p-v9Nhw5yM.js → p-IfsszNF0.js} +2 -2
  122. package/dist/components/p-QU4czL2k.js +2 -0
  123. package/dist/components/p-QU4czL2k.js.map +1 -0
  124. package/dist/components/{p-CCsxoztj.js → p-SXaH5TeC.js} +2 -2
  125. package/dist/components/{p-CCsxoztj.js.map → p-SXaH5TeC.js.map} +1 -1
  126. package/dist/components/p-Tf6odBOV.js +2 -0
  127. package/dist/components/{p-CXB_T13u.js.map → p-Tf6odBOV.js.map} +1 -1
  128. package/dist/components/p-UWU23pbX.js +2 -0
  129. package/dist/components/{p-Cs8Gq-PZ.js.map → p-UWU23pbX.js.map} +1 -1
  130. package/dist/components/p-YFjXYN8s.js +2 -0
  131. package/dist/components/{p-DdNJPBCS.js.map → p-YFjXYN8s.js.map} +1 -1
  132. package/dist/components/{p-pJ6gbwSa.js → p-kL4EOsx5.js} +2 -2
  133. package/dist/components/{p-BjBFJ2dd.js → p-topqlGsI.js} +2 -2
  134. package/dist/components/{p-Bdp2V6-c.js → p-zopMP2ze.js} +2 -2
  135. package/dist/components/{p-Bdp2V6-c.js.map → p-zopMP2ze.js.map} +1 -1
  136. package/dist/docs/components.json +15 -1
  137. package/dist/lib/shell/index.js.map +2 -2
  138. package/dist/lib/shell/shell-responsive.d.ts +2 -0
  139. package/dist/mcp-data/registry/data-preferences.json +1 -1
  140. package/dist/mcp-data/registry/data-sort.json +1 -1
  141. package/dist/mcp-data/registry/registry.json +6 -1
  142. package/dist/mcp-data/registry/shell-app.json +2 -1
  143. package/dist/mcp-data/registry/table.json +19 -3
  144. package/dist/react/ds-table.d.ts +3 -0
  145. package/dist/react/ds-table.js +1 -0
  146. package/dist/styles/table.css +8 -0
  147. package/dist/types/components/ShellApp/ShellApp.d.ts +1 -0
  148. package/dist/types/components/Table/Table.d.ts +5 -0
  149. package/dist/types/components/Table/table-viewport-fit-controller.d.ts +3 -0
  150. package/dist/types/components.d.ts +5 -0
  151. package/dist/types/shell/shell-responsive.d.ts +2 -0
  152. package/dist/vue/ds-table.js +2 -0
  153. package/package.json +1 -1
  154. package/dist/components/p-BKyE025p.js +0 -2
  155. package/dist/components/p-BPDo1eQV.js +0 -2
  156. package/dist/components/p-C0L-VnSr.js +0 -2
  157. package/dist/components/p-CHyxUWqL.js +0 -2
  158. package/dist/components/p-CLqqb0Jp.js +0 -2
  159. package/dist/components/p-CRhoeCC8.js +0 -2
  160. package/dist/components/p-CXB_T13u.js +0 -2
  161. package/dist/components/p-CgGcgMjs.js +0 -2
  162. package/dist/components/p-CgGcgMjs.js.map +0 -1
  163. package/dist/components/p-Cs8Gq-PZ.js +0 -2
  164. package/dist/components/p-Ct2KQHF4.js +0 -2
  165. package/dist/components/p-CvIHBa8S.js +0 -2
  166. package/dist/components/p-D9l0QBgN.js +0 -2
  167. package/dist/components/p-DdNJPBCS.js +0 -2
  168. package/dist/components/p-DlCLfwP4.js +0 -2
  169. package/dist/components/p-DlCLfwP4.js.map +0 -1
  170. package/dist/components/p-DmgDVoDb.js +0 -2
  171. package/dist/components/p-LJXiEPw1.js +0 -2
  172. package/dist/components/p-pPtjNRqC.js.map +0 -1
  173. /package/dist/components/{p-DKvHBXwn.js.map → p-B1dnisok.js.map} +0 -0
  174. /package/dist/components/{p-CgC4SM5b.js.map → p-B9ZhRwE3.js.map} +0 -0
  175. /package/dist/components/{p-DGrSro-o.js.map → p-BAcdqJaa.js.map} +0 -0
  176. /package/dist/components/{p-4sBUSsqs.js.map → p-BREDkBUv.js.map} +0 -0
  177. /package/dist/components/{p-CKSJwSWd.js.map → p-BWnL2SWn.js.map} +0 -0
  178. /package/dist/components/{p-CqAC2IQO.js.map → p-BcmJBzB6.js.map} +0 -0
  179. /package/dist/components/{p-AGqUGzNZ.js.map → p-Bjm-Rk_x.js.map} +0 -0
  180. /package/dist/components/{p-UBQ5O7B-.js.map → p-Bls48_RF.js.map} +0 -0
  181. /package/dist/components/{p-oBpjD9OA.js.map → p-BqZWKYsS.js.map} +0 -0
  182. /package/dist/components/{p-dSNHIJz6.js.map → p-CWAeg9jl.js.map} +0 -0
  183. /package/dist/components/{p-BwNW5nqj.js.map → p-CantpOo3.js.map} +0 -0
  184. /package/dist/components/{p-DiPqdcD4.js.map → p-D3JCih82.js.map} +0 -0
  185. /package/dist/components/{p-D_xZ5SFL.js.map → p-DWXpMWIp.js.map} +0 -0
  186. /package/dist/components/{p-Dyjs8_Cl.js.map → p-DagrkX2v.js.map} +0 -0
  187. /package/dist/components/{p-D62yUMhr.js.map → p-DcMbWqTd.js.map} +0 -0
  188. /package/dist/components/{p-g2OUK8Z0.js.map → p-DiyL2sI5.js.map} +0 -0
  189. /package/dist/components/{p-v9Nhw5yM.js.map → p-IfsszNF0.js.map} +0 -0
  190. /package/dist/components/{p-pJ6gbwSa.js.map → p-kL4EOsx5.js.map} +0 -0
  191. /package/dist/components/{p-BjBFJ2dd.js.map → p-topqlGsI.js.map} +0 -0
@@ -1,2 +1,2 @@
1
- import{p as e,H as s,c as t,h as i,a,t as n}from"./index.js";import{d}from"./p-BWJb2rih.js";import{d as o}from"./p-dSNHIJz6.js";import{d as l}from"./p-pJ6gbwSa.js";import{d as r}from"./p--_bPiNCd.js";import{d as h}from"./p-v9Nhw5yM.js";import{d as c}from"./p-D_iZPukF.js";import{d as m}from"./p-CqAC2IQO.js";import{d as f}from"./p-QGtBlTMt.js";import{d as u}from"./p-pPtjNRqC.js";import{d as b}from"./p-CXB_T13u.js";import{d as p}from"./p-0XTyQNRG.js";import{d as v}from"./p-BPDo1eQV.js";import{d as w}from"./p-CHyxUWqL.js";import{d as k}from"./p-C0L-VnSr.js";import{d as g}from"./p-eKnJNQtL.js";import{d as C}from"./p-C2e7BkNn.js";import{d as E}from"./p-CKSJwSWd.js";import{d as D}from"./p-BbvAWFJA.js";import{d as y}from"./p-BJf49edB.js";const j=()=>`.sc-ds-data-saved-views-h{--ds-choice-popup-min-inline-size:var(--dimension-menu-width-xs);display:inline-block;min-inline-size:0;max-inline-size:var(--dimension-menu-width-xs)}ds-select.sc-ds-data-saved-views{display:block;min-inline-size:0;max-inline-size:100%}`;let V=0;const x=e(class e extends s{constructor(e){super();if(e!==false){this.__registerHost()}this.dsViewChange=t(this,"dsViewChange",7);this.dsViewCreate=t(this,"dsViewCreate",7);this.dsViewRename=t(this,"dsViewRename",7);this.dsViewRemove=t(this,"dsViewRemove",7);this.dsViewSave=t(this,"dsViewSave",7);this.dsViewDiscard=t(this,"dsViewDiscard",7);this.hasBorder=true;this.views=[];this.value="__default__";this.dirty=false;this.defaultViewId="__default__";this.defaultViewLabel="Default";this.label="Saved views";this.triggerLabel="Views";this.compact=false;this.createLabel="New view";this.actionViewId=null;this.actionMenuOpen=false;this.actionMenuInitialFocusVisible=false;this.dialogOpen=false;this.dialogMode="create";this.dialogViewId=null;this.nameDraft="";this.nameError="";this.componentId=`ds-data-saved-views-${++V}`;this.selectId=`${this.componentId}-select`;this.actionMenuId=`${this.componentId}-actions`;this.fieldId=`${this.componentId}-name-field`;this.inputId=`${this.componentId}-name-input`;this.actionItems=[{label:"Rename",value:"rename"},{label:"Remove",value:"remove",isDestructive:true}]}get selectedCustomView(){return this.views.find((e=>e.id===this.value))}get dialogView(){return this.views.find((e=>e.id===this.dialogViewId))}get sections(){const e=this.views.map((e=>({label:e.label,value:e.id,subtextActions:this.dirty&&e.id===this.selectedCustomView?.id?[{label:"Save",value:"save"},{label:"Discard",value:"discard",tone:"negative"}]:undefined,action:{label:`Options for ${e.label}`,controls:this.actionMenuId,expanded:this.actionViewId===e.id&&this.actionMenuOpen,surfaceOpen:this.actionViewId===e.id}})));const s={header:"Templates",options:[{label:this.defaultViewLabel,value:this.defaultViewId}],divider:e.length>0};return e.length>0?[s,{header:"Custom",options:e}]:[s]}handleViewChange(e){if(typeof e==="string")this.dsViewChange.emit({viewId:e})}handleSubtextAction(e){const s=this.selectedCustomView;if(!s||!this.dirty||e.value!==s.id)return;if(e.actionValue==="save")this.dsViewSave.emit({viewId:s.id});if(e.actionValue==="discard")this.dsViewDiscard.emit({viewId:s.id})}handleOptionAction(e){if(!this.views.some((s=>s.id===e.value)))return;this.actionMenuInitialFocusVisible=e.originalEvent.detail===0;if(this.actionViewId===e.value&&this.actionMenuOpen){this.actionMenuOpen=false;return}this.actionViewId=e.value;this.actionAnchorId=e.anchorId;this.actionMenuOpen=true}handleActionSelect(e){const s=this.actionViewId;this.actionMenuOpen=false;if(!s)return;if(e.detail.value==="rename")this.openDialog("rename",s);if(e.detail.value==="remove")this.dsViewRemove.emit({viewId:s})}openDialog(e,s=null){const t=e==="rename"?this.views.find((e=>e.id===s)):undefined;if(e==="rename"&&!t)return;this.dialogMode=e;this.dialogViewId=t?.id??null;this.nameDraft=t?.label??"";this.nameError="";this.dialogOpen=true;requestAnimationFrame((()=>{requestAnimationFrame((()=>{const e=this.el.querySelector(`#${this.inputId}`);void e?.setFocus?.()}))}))}validateName(){const e=this.nameDraft.trim();if(!e)return"View name is required.";const s=this.views.some((s=>s.id!==this.dialogViewId&&s.label.trim().toLocaleLowerCase()===e.toLocaleLowerCase()));if(s||this.defaultViewLabel.trim().toLocaleLowerCase()===e.toLocaleLowerCase()){return"A view with this name already exists."}return""}submitDialog(){const e=this.validateName();if(e){this.nameError=e;return}const s=this.nameDraft.trim();if(this.dialogMode==="rename"&&this.dialogView){this.dsViewRename.emit({viewId:this.dialogView.id,name:s})}else{this.dsViewCreate.emit({name:s})}this.dialogOpen=false}finishDialogClose(){if(this.dialogOpen)return;this.dialogViewId=null;this.nameDraft="";this.nameError="";const e=this.el.querySelector(`#${this.selectId}`);void e?.setFocus?.()}render(){return i(a,{key:"fbf6b47fafc96db40431d6dc57e71f430400e5a4"},i("ds-select",{key:"e5f28df1a6e98b32d4b63ed7d2d30b8b113be601",neutralTrigger:true,hasBorder:this.hasBorder,id:this.selectId,size:"md",icon:"ViewMenu",indicator:"none",collapseLabel:true,iconOnly:this.compact,width:"fill",placeholder:this.label,"aria-label":this.label,sections:this.sections,value:this.value,triggerLabel:this.selectedCustomView?undefined:this.triggerLabel,triggerLabelPlaceholder:!this.selectedCustomView,dot:this.dirty&&Boolean(this.selectedCustomView),footerActionLabel:this.createLabel,activeFill:false,allowClear:false,onDsChange:e=>this.handleViewChange(e.detail),onDsFooterAction:()=>this.openDialog("create"),onDsOptionSubtextAction:e=>this.handleSubtextAction(e.detail),onDsOptionAction:e=>this.handleOptionAction(e.detail)}),i("ds-menu",{key:"629b42a37a39b668a78b986be6e1bc6f0755340a",id:this.actionMenuId,anchorId:this.actionAnchorId,menuLabel:"Saved view options",side:"bottom",align:"end",menuWidth:"max-content",minWidth:"0",items:this.actionItems,open:this.actionMenuOpen,initialFocusVisible:this.actionMenuInitialFocusVisible,onDsClose:()=>this.actionMenuOpen=false,onDsAfterClose:()=>{if(this.actionMenuOpen)return;this.actionViewId=null;this.actionAnchorId=undefined},onDsSelect:e=>this.handleActionSelect(e)}),i("ds-modal",{key:"8b6522b64cfb60db80cde7aa09ea3e9781ff7b07",open:this.dialogOpen,heading:this.dialogMode==="rename"?"Rename view":"Save as new view",modalWidth:"sm",onDsClose:()=>this.dialogOpen=false,onDsAfterClose:()=>this.finishDialogClose()},i("ds-field",{key:"3cd26a55825711b37ccad123fd2741d184a5cbd0",fieldId:this.fieldId,error:this.nameError.length>0,errorMessage:this.nameError},i("ds-input",{key:"7bb209c447639409347ac767d355c416a944219e",id:this.inputId,size:"md","aria-label":"Name",placeholder:"Enter a unique name",value:this.nameDraft,autoFocus:true,onDsChange:e=>{this.nameDraft=e.detail;if(this.nameError)this.nameError=""},onKeyDown:e=>{if(e.key==="Enter")this.submitDialog()}})),i("ds-button-filled",{key:"8cc38918e42f25904717feeeaa25758083649fcd",slot:"footer",label:this.dialogMode==="rename"?"Rename":"Save",size:"md",onDsClick:()=>this.submitDialog()}),i("ds-button-unfilled",{key:"3d899b08c3a7a76ec265720884585724b6b33417",slot:"footer",label:"Cancel",size:"md",onDsClick:()=>this.dialogOpen=false})))}get el(){return this}static get style(){return j()}},[2,"ds-data-saved-views",{hasBorder:[4,"has-border"],views:[16],value:[1],dirty:[4],defaultViewId:[1,"default-view-id"],defaultViewLabel:[1,"default-view-label"],label:[1],triggerLabel:[1,"trigger-label"],compact:[4],createLabel:[1,"create-label"],actionViewId:[32],actionAnchorId:[32],actionMenuOpen:[32],actionMenuInitialFocusVisible:[32],dialogOpen:[32],dialogMode:[32],dialogViewId:[32],nameDraft:[32],nameError:[32]}]);function A(){if(typeof customElements==="undefined"){return}const e=["ds-data-saved-views","ds-badge","ds-button-filled","ds-button-unfilled","ds-checkbox","ds-chip","ds-divider","ds-empty-state","ds-field","ds-icon","ds-input","ds-loader","ds-menu","ds-modal","ds-select","ds-swatch-picker","ds-switch","ds-tag","ds-text","ds-tooltip"];e.forEach((e=>{switch(e){case"ds-data-saved-views":if(!customElements.get(n(e))){customElements.define(n(e),x)}break;case"ds-badge":if(!customElements.get(n(e))){d()}break;case"ds-button-filled":if(!customElements.get(n(e))){o()}break;case"ds-button-unfilled":if(!customElements.get(n(e))){l()}break;case"ds-checkbox":if(!customElements.get(n(e))){r()}break;case"ds-chip":if(!customElements.get(n(e))){h()}break;case"ds-divider":if(!customElements.get(n(e))){c()}break;case"ds-empty-state":if(!customElements.get(n(e))){m()}break;case"ds-field":if(!customElements.get(n(e))){f()}break;case"ds-icon":if(!customElements.get(n(e))){u()}break;case"ds-input":if(!customElements.get(n(e))){b()}break;case"ds-loader":if(!customElements.get(n(e))){p()}break;case"ds-menu":if(!customElements.get(n(e))){v()}break;case"ds-modal":if(!customElements.get(n(e))){w()}break;case"ds-select":if(!customElements.get(n(e))){k()}break;case"ds-swatch-picker":if(!customElements.get(n(e))){g()}break;case"ds-switch":if(!customElements.get(n(e))){C()}break;case"ds-tag":if(!customElements.get(n(e))){E()}break;case"ds-text":if(!customElements.get(n(e))){D()}break;case"ds-tooltip":if(!customElements.get(n(e))){y()}break}}))}A();const S=x;const I=A;export{S as DsDataSavedViews,I as defineCustomElement};
1
+ import{p as e,H as s,c as t,h as i,a,t as n}from"./index.js";import{d}from"./p-BWJb2rih.js";import{d as o}from"./p-CWAeg9jl.js";import{d as l}from"./p-kL4EOsx5.js";import{d as r}from"./p--_bPiNCd.js";import{d as h}from"./p-IfsszNF0.js";import{d as c}from"./p-D_iZPukF.js";import{d as m}from"./p-BcmJBzB6.js";import{d as f}from"./p-QGtBlTMt.js";import{d as u}from"./p-BVsVUnAw.js";import{d as b}from"./p-Tf6odBOV.js";import{d as p}from"./p-0XTyQNRG.js";import{d as v}from"./p-DHpcv_Os.js";import{d as w}from"./p-BjD1eFx6.js";import{d as k}from"./p-CJSIvfpo.js";import{d as g}from"./p-eKnJNQtL.js";import{d as E}from"./p-C2e7BkNn.js";import{d as D}from"./p-BWnL2SWn.js";import{d as j}from"./p-BbvAWFJA.js";import{d as V}from"./p-BJf49edB.js";const y=()=>`.sc-ds-data-saved-views-h{--ds-choice-popup-min-inline-size:var(--dimension-menu-width-xs);display:inline-block;min-inline-size:0;max-inline-size:var(--dimension-menu-width-xs)}ds-select.sc-ds-data-saved-views{display:block;min-inline-size:0;max-inline-size:100%}`;let C=0;const x=e(class e extends s{constructor(e){super();if(e!==false){this.__registerHost()}this.dsViewChange=t(this,"dsViewChange",7);this.dsViewCreate=t(this,"dsViewCreate",7);this.dsViewRename=t(this,"dsViewRename",7);this.dsViewRemove=t(this,"dsViewRemove",7);this.dsViewSave=t(this,"dsViewSave",7);this.dsViewDiscard=t(this,"dsViewDiscard",7);this.hasBorder=true;this.views=[];this.value="__default__";this.dirty=false;this.defaultViewId="__default__";this.defaultViewLabel="Default";this.label="Saved views";this.triggerLabel="Views";this.compact=false;this.createLabel="New view";this.actionViewId=null;this.actionMenuOpen=false;this.actionMenuInitialFocusVisible=false;this.dialogOpen=false;this.dialogMode="create";this.dialogViewId=null;this.nameDraft="";this.nameError="";this.componentId=`ds-data-saved-views-${++C}`;this.selectId=`${this.componentId}-select`;this.actionMenuId=`${this.componentId}-actions`;this.fieldId=`${this.componentId}-name-field`;this.inputId=`${this.componentId}-name-input`;this.actionItems=[{label:"Rename",value:"rename"},{label:"Remove",value:"remove",isDestructive:true}]}get selectedCustomView(){return this.views.find((e=>e.id===this.value))}get dialogView(){return this.views.find((e=>e.id===this.dialogViewId))}get sections(){const e=this.views.map((e=>({label:e.label,value:e.id,subtextActions:this.dirty&&e.id===this.selectedCustomView?.id?[{label:"Save",value:"save"},{label:"Discard",value:"discard",tone:"negative"}]:undefined,action:{label:`Options for ${e.label}`,controls:this.actionMenuId,expanded:this.actionViewId===e.id&&this.actionMenuOpen,surfaceOpen:this.actionViewId===e.id}})));const s={header:"Templates",options:[{label:this.defaultViewLabel,value:this.defaultViewId}],divider:e.length>0};return e.length>0?[s,{header:"Custom",options:e}]:[s]}handleViewChange(e){if(typeof e==="string")this.dsViewChange.emit({viewId:e})}handleSubtextAction(e){const s=this.selectedCustomView;if(!s||!this.dirty||e.value!==s.id)return;if(e.actionValue==="save")this.dsViewSave.emit({viewId:s.id});if(e.actionValue==="discard")this.dsViewDiscard.emit({viewId:s.id})}handleOptionAction(e){if(!this.views.some((s=>s.id===e.value)))return;this.actionMenuInitialFocusVisible=e.originalEvent.detail===0;if(this.actionViewId===e.value&&this.actionMenuOpen){this.actionMenuOpen=false;return}this.actionViewId=e.value;this.actionAnchorId=e.anchorId;this.actionMenuOpen=true}handleActionSelect(e){const s=this.actionViewId;this.actionMenuOpen=false;if(!s)return;if(e.detail.value==="rename")this.openDialog("rename",s);if(e.detail.value==="remove")this.dsViewRemove.emit({viewId:s})}openDialog(e,s=null){const t=e==="rename"?this.views.find((e=>e.id===s)):undefined;if(e==="rename"&&!t)return;this.dialogMode=e;this.dialogViewId=t?.id??null;this.nameDraft=t?.label??"";this.nameError="";this.dialogOpen=true;requestAnimationFrame((()=>{requestAnimationFrame((()=>{const e=this.el.querySelector(`#${this.inputId}`);void e?.setFocus?.()}))}))}validateName(){const e=this.nameDraft.trim();if(!e)return"View name is required.";const s=this.views.some((s=>s.id!==this.dialogViewId&&s.label.trim().toLocaleLowerCase()===e.toLocaleLowerCase()));if(s||this.defaultViewLabel.trim().toLocaleLowerCase()===e.toLocaleLowerCase()){return"A view with this name already exists."}return""}submitDialog(){const e=this.validateName();if(e){this.nameError=e;return}const s=this.nameDraft.trim();if(this.dialogMode==="rename"&&this.dialogView){this.dsViewRename.emit({viewId:this.dialogView.id,name:s})}else{this.dsViewCreate.emit({name:s})}this.dialogOpen=false}finishDialogClose(){if(this.dialogOpen)return;this.dialogViewId=null;this.nameDraft="";this.nameError="";const e=this.el.querySelector(`#${this.selectId}`);void e?.setFocus?.()}render(){return i(a,{key:"fbf6b47fafc96db40431d6dc57e71f430400e5a4"},i("ds-select",{key:"e5f28df1a6e98b32d4b63ed7d2d30b8b113be601",neutralTrigger:true,hasBorder:this.hasBorder,id:this.selectId,size:"md",icon:"ViewMenu",indicator:"none",collapseLabel:true,iconOnly:this.compact,width:"fill",placeholder:this.label,"aria-label":this.label,sections:this.sections,value:this.value,triggerLabel:this.selectedCustomView?undefined:this.triggerLabel,triggerLabelPlaceholder:!this.selectedCustomView,dot:this.dirty&&Boolean(this.selectedCustomView),footerActionLabel:this.createLabel,activeFill:false,allowClear:false,onDsChange:e=>this.handleViewChange(e.detail),onDsFooterAction:()=>this.openDialog("create"),onDsOptionSubtextAction:e=>this.handleSubtextAction(e.detail),onDsOptionAction:e=>this.handleOptionAction(e.detail)}),i("ds-menu",{key:"629b42a37a39b668a78b986be6e1bc6f0755340a",id:this.actionMenuId,anchorId:this.actionAnchorId,menuLabel:"Saved view options",side:"bottom",align:"end",menuWidth:"max-content",minWidth:"0",items:this.actionItems,open:this.actionMenuOpen,initialFocusVisible:this.actionMenuInitialFocusVisible,onDsClose:()=>this.actionMenuOpen=false,onDsAfterClose:()=>{if(this.actionMenuOpen)return;this.actionViewId=null;this.actionAnchorId=undefined},onDsSelect:e=>this.handleActionSelect(e)}),i("ds-modal",{key:"8b6522b64cfb60db80cde7aa09ea3e9781ff7b07",open:this.dialogOpen,heading:this.dialogMode==="rename"?"Rename view":"Save as new view",modalWidth:"sm",onDsClose:()=>this.dialogOpen=false,onDsAfterClose:()=>this.finishDialogClose()},i("ds-field",{key:"3cd26a55825711b37ccad123fd2741d184a5cbd0",fieldId:this.fieldId,error:this.nameError.length>0,errorMessage:this.nameError},i("ds-input",{key:"7bb209c447639409347ac767d355c416a944219e",id:this.inputId,size:"md","aria-label":"Name",placeholder:"Enter a unique name",value:this.nameDraft,autoFocus:true,onDsChange:e=>{this.nameDraft=e.detail;if(this.nameError)this.nameError=""},onKeyDown:e=>{if(e.key==="Enter")this.submitDialog()}})),i("ds-button-filled",{key:"8cc38918e42f25904717feeeaa25758083649fcd",slot:"footer",label:this.dialogMode==="rename"?"Rename":"Save",size:"md",onDsClick:()=>this.submitDialog()}),i("ds-button-unfilled",{key:"3d899b08c3a7a76ec265720884585724b6b33417",slot:"footer",label:"Cancel",size:"md",onDsClick:()=>this.dialogOpen=false})))}get el(){return this}static get style(){return y()}},[2,"ds-data-saved-views",{hasBorder:[4,"has-border"],views:[16],value:[1],dirty:[4],defaultViewId:[1,"default-view-id"],defaultViewLabel:[1,"default-view-label"],label:[1],triggerLabel:[1,"trigger-label"],compact:[4],createLabel:[1,"create-label"],actionViewId:[32],actionAnchorId:[32],actionMenuOpen:[32],actionMenuInitialFocusVisible:[32],dialogOpen:[32],dialogMode:[32],dialogViewId:[32],nameDraft:[32],nameError:[32]}]);function A(){if(typeof customElements==="undefined"){return}const e=["ds-data-saved-views","ds-badge","ds-button-filled","ds-button-unfilled","ds-checkbox","ds-chip","ds-divider","ds-empty-state","ds-field","ds-icon","ds-input","ds-loader","ds-menu","ds-modal","ds-select","ds-swatch-picker","ds-switch","ds-tag","ds-text","ds-tooltip"];e.forEach((e=>{switch(e){case"ds-data-saved-views":if(!customElements.get(n(e))){customElements.define(n(e),x)}break;case"ds-badge":if(!customElements.get(n(e))){d()}break;case"ds-button-filled":if(!customElements.get(n(e))){o()}break;case"ds-button-unfilled":if(!customElements.get(n(e))){l()}break;case"ds-checkbox":if(!customElements.get(n(e))){r()}break;case"ds-chip":if(!customElements.get(n(e))){h()}break;case"ds-divider":if(!customElements.get(n(e))){c()}break;case"ds-empty-state":if(!customElements.get(n(e))){m()}break;case"ds-field":if(!customElements.get(n(e))){f()}break;case"ds-icon":if(!customElements.get(n(e))){u()}break;case"ds-input":if(!customElements.get(n(e))){b()}break;case"ds-loader":if(!customElements.get(n(e))){p()}break;case"ds-menu":if(!customElements.get(n(e))){v()}break;case"ds-modal":if(!customElements.get(n(e))){w()}break;case"ds-select":if(!customElements.get(n(e))){k()}break;case"ds-swatch-picker":if(!customElements.get(n(e))){g()}break;case"ds-switch":if(!customElements.get(n(e))){E()}break;case"ds-tag":if(!customElements.get(n(e))){D()}break;case"ds-text":if(!customElements.get(n(e))){j()}break;case"ds-tooltip":if(!customElements.get(n(e))){V()}break}}))}A();const B=x;const I=A;export{B as DsDataSavedViews,I as defineCustomElement};
2
2
  //# sourceMappingURL=ds-data-saved-views.js.map
@@ -1,2 +1,2 @@
1
- import{p as e,H as s,c as a,h as t,a as i,t as r}from"./index.js";import{A as d,r as o,d as c}from"./p-BJf49edB.js";import{A as n}from"./p-CwUXroLs.js";import{i as l}from"./p-DuCfCvPs.js";import{d as h}from"./p-BWJb2rih.js";import{d as p}from"./p-pJ6gbwSa.js";import{d as f}from"./p-v9Nhw5yM.js";import{d as v}from"./p-CqAC2IQO.js";import{d as u}from"./p-pPtjNRqC.js";import{d as m}from"./p-0XTyQNRG.js";import{d as g}from"./p-BbvAWFJA.js";import{r as b}from"./p-ioGH5SoA.js";import{T as x}from"./p-CeXf9-X3.js";import{c as y,r as w}from"./p-DhKvqh5G.js";function _(e){const s=[];const a=new Set;for(const t of e){if(l(t)||t.searchable===false)continue;const e=t.segments??[];if(e.length>0){for(const t of e){const e=t.sortKey.trim();const i=t.dataLabel?.trim()||t.label.trim()||e;if(!e||!i||t.searchable===false||a.has(e))continue;a.add(e);s.push({id:e,label:i})}continue}const i=t.id.trim();const r=t.dataLabel?.trim()||t.label.trim()||t.accessibleLabel?.trim()||i;if(!i||!r||a.has(i))continue;a.add(i);s.push({id:i,label:r})}return s}function k(e,s){const a=new Map(e.map((e=>[e.id,e])));const t=[];const i=new Set;for(const e of s){if(i.has(e))continue;const s=a.get(e);if(!s)continue;i.add(e);t.push(s)}return t}function z(e,s){const a=new Set(s);return e.filter((e=>!a.has(e.id)))}function C(e,s){const a=s.trim().toLocaleLowerCase();if(!a)return[...e];return e.filter((e=>`${e.label} ${e.id}`.toLocaleLowerCase().includes(a)))}function F(e,s,a){if(s<=0)return-1;const t=e>=0&&e<s?e:0;return(t+a+s)%s}const I=()=>`.sc-ds-data-search-h,.sc-ds-data-search:where(.ds-table),.sc-ds-data-search:where(.tooltip-popup),.sc-ds-data-search:where(.ds-radius){--ds-radius-control:var(--dimension-radius-025);--ds-radius-card:var(--dimension-radius-050);--ds-radius-modal:var(--dimension-radius-050);--ds-radius-menu:var(--dimension-radius-075);--ds-radius-tooltip-control:var(--dimension-radius-025);--ds-radius-tooltip-menu:var(--dimension-radius-075);--ds-radius-table:var(--dimension-radius-050)}@media (forced-colors: active){.sc-ds-data-search:root,.sc-ds-data-search-h,.ds-forced-colors-scope.sc-ds-data-search{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.sc-ds-data-search-h{--ds-focus-ring-width:var(--dimension-stroke-width-025, 2px);--ds-focus-ring-offset:var(--dimension-space-025, 2px);--ds-focus-ring-color:var(--color-interaction-focus)}.ds-focus-ring.sc-ds-data-search-h,.ds-focus-ring.sc-ds-data-search,.ds-focus-ring-inset.sc-ds-data-search-h,.ds-focus-ring-inset.sc-ds-data-search{outline:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.ds-focus-ring.sc-ds-data-search-h:focus-visible,.ds-focus-ring.sc-ds-data-search:focus-visible{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring.ds-focus-ring--visible.sc-ds-data-search-h,.ds-focus-ring.ds-focus-ring--visible.sc-ds-data-search{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring-inset.sc-ds-data-search-h:focus-visible,.ds-focus-ring-inset.sc-ds-data-search:focus-visible{outline:none}.ds-focus-ring-inset.sc-ds-data-search-h:focus-visible::after,.ds-focus-ring-inset.sc-ds-data-search:focus-visible::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-data-search-h,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-data-search{outline:none}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-data-search-h::after,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-data-search::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}@media (forced-colors: active){.sc-ds-data-search-h{--ds-focus-ring-color:var(--ds-forced-color-selected)}}@media (forced-colors: active){.sc-ds-data-search:root,.sc-ds-data-search-h,.ds-forced-colors-scope.sc-ds-data-search{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}@media (forced-colors: active){.sc-ds-data-search:root,.sc-ds-data-search-h,.ds-forced-colors-scope.sc-ds-data-search{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.ds-interaction-fill.sc-ds-data-search-h,.ds-interaction-fill.sc-ds-data-search{position:var(--ds-interaction-position, relative);z-index:var(--ds-interaction-z-index, 0);cursor:default;--ds-interaction-hover:var(--color-interaction-hover);--ds-interaction-pressed:var(--color-interaction-pressed);--ds-interaction-active:var(--color-interaction-active-brand);--ds-interaction-border-width:0px;--ds-interaction-border-color:transparent;--ds-interaction-divider-width:0px;--ds-interaction-divider-color:transparent;--ds-interaction-divider-inline-start-width:0px;--ds-interaction-divider-inline-start-color:transparent;--ds-interaction-divider-inline-end-width:0px;--ds-interaction-divider-inline-end-color:transparent}.ds-interaction-fill.sc-ds-data-search-h::before,.ds-interaction-fill.sc-ds-data-search::before,.ds-interaction-fill.sc-ds-data-search-h::after,.ds-interaction-fill.sc-ds-data-search::after{content:'';position:absolute;inset:0;border-radius:inherit;background:transparent;pointer-events:none;cursor:inherit;transition:none}.ds-interaction-fill.sc-ds-data-search-h::before,.ds-interaction-fill.sc-ds-data-search::before{z-index:1}.ds-interaction-fill.sc-ds-data-search-h::after,.ds-interaction-fill.sc-ds-data-search::after{z-index:3;box-shadow:inset 0 calc(-1 * var(--ds-interaction-divider-width)) 0 var(--ds-interaction-divider-color), inset var(--ds-interaction-divider-inline-start-width) 0 0 var(--ds-interaction-divider-inline-start-color), inset calc(-1 * var(--ds-interaction-divider-inline-end-width)) 0 0 var(--ds-interaction-divider-inline-end-color), inset 0 0 0 var(--ds-interaction-border-width) var(--ds-interaction-border-color)}.ds-interaction-fill--bordered.sc-ds-data-search-h,.ds-interaction-fill--bordered.sc-ds-data-search{--ds-interaction-border-width:var(--dimension-stroke-width-012);--ds-interaction-border-color:var(--color-border-secondary)}.ds-interaction-fill--selected.sc-ds-data-search-h::before,.ds-interaction-fill--selected.sc-ds-data-search::before{background:var(--ds-interaction-active)}.ds-interaction-fill--selected.sc-ds-data-search-h,.ds-interaction-fill--selected.sc-ds-data-search{--ds-interaction-dot-ring:var(--ds-interaction-active)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill.sc-ds-data-search-h:hover:not(:disabled)::after,.ds-interaction-fill.sc-ds-data-search:hover:not(:disabled)::after{background:var(--ds-interaction-hover)}}.ds-interaction-fill.sc-ds-data-search-h:active:not(:disabled)::after,.ds-interaction-fill.sc-ds-data-search:active:not(:disabled)::after{background:var(--ds-interaction-pressed)}.ds-interaction-fill--grouped.sc-ds-data-search-h::after,.ds-interaction-fill--grouped.sc-ds-data-search::after,.ds-interaction-fill--grouped.sc-ds-data-search-h:active:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-data-search:active:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill--grouped.sc-ds-data-search-h:hover:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-data-search:hover:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}}.ds-interaction-fill--grouped.sc-ds-data-search-h,.ds-interaction-fill--grouped.sc-ds-data-search{--ds-interaction-divider-width:var(--ds-interaction-group-divider-width, 0px);--ds-interaction-divider-color:var(--ds-interaction-group-divider-color, transparent);--ds-interaction-divider-inline-start-width:var( --ds-interaction-group-divider-inline-start-width, 0px );--ds-interaction-divider-inline-start-color:var( --ds-interaction-group-divider-inline-start-color, transparent );--ds-interaction-divider-inline-end-width:var( --ds-interaction-group-divider-inline-end-width, 0px );--ds-interaction-divider-inline-end-color:var( --ds-interaction-group-divider-inline-end-color, transparent )}.ds-interaction-fill.sc-ds-data-search-h>.ds-interaction-fill__content.sc-ds-data-search,.ds-interaction-fill.sc-ds-data-search>.ds-interaction-fill__content.sc-ds-data-search,.ds-interaction-fill__content.sc-ds-data-search{position:relative;z-index:2;cursor:inherit}.ds-interaction-fill--on-faint.sc-ds-data-search-h,.ds-interaction-fill--on-faint.sc-ds-data-search{--ds-interaction-active:var(--color-interaction-active)}.ds-interaction-fill--on-medium.sc-ds-data-search-h,.ds-interaction-fill--on-medium.sc-ds-data-search{--ds-interaction-hover:var(--color-interaction-on-medium-background-hover);--ds-interaction-pressed:var(--color-interaction-on-medium-background-pressed);--ds-interaction-active:var(--color-interaction-on-medium-background-active);--ds-focus-ring-color:var(--color-interaction-on-medium-background-focus)}.ds-interaction-fill--on-bold.sc-ds-data-search-h,.ds-interaction-fill--on-bold.sc-ds-data-search{--ds-interaction-hover:var(--color-interaction-on-bold-background-hover);--ds-interaction-pressed:var(--color-interaction-on-bold-background-pressed);--ds-interaction-active:var(--color-interaction-on-bold-background-active);--ds-focus-ring-color:var(--color-interaction-on-bold-background-focus)}.ds-interaction-fill--on-strong.sc-ds-data-search-h,.ds-interaction-fill--on-strong.sc-ds-data-search{--ds-interaction-hover:var(--color-interaction-on-strong-background-hover);--ds-interaction-pressed:var(--color-interaction-on-strong-background-pressed);--ds-interaction-active:var(--color-interaction-on-strong-background-active);--ds-focus-ring-color:var(--color-interaction-on-strong-background-focus)}.ds-interaction-fill--on-translucent.sc-ds-data-search-h,.ds-interaction-fill--on-translucent.sc-ds-data-search{--ds-interaction-hover:var(--color-translucent-interaction-hover);--ds-interaction-pressed:var(--color-translucent-interaction-pressed);--ds-interaction-active:var(--color-translucent-interaction-active-brand);--ds-focus-ring-color:var(--color-translucent-interaction-focus)}.ds-interaction-fill--on-inverted.sc-ds-data-search-h,.ds-interaction-fill--on-inverted.sc-ds-data-search{--ds-interaction-hover:var(--color-inverted-interaction-hover);--ds-interaction-pressed:var(--color-inverted-interaction-pressed);--ds-interaction-active:var(--color-inverted-interaction-active-brand);--ds-focus-ring-color:var(--color-inverted-interaction-focus)}.ds-interaction-fill--on-media.sc-ds-data-search-h,.ds-interaction-fill--on-media.sc-ds-data-search{--ds-interaction-hover:var(--color-media-interaction-hover);--ds-interaction-pressed:var(--color-media-interaction-pressed);--ds-interaction-active:var(--color-media-interaction-active);--ds-focus-ring-color:var(--color-media-interaction-focus)}.ds-interaction-fill--on-always-dark.sc-ds-data-search-h,.ds-interaction-fill--on-always-dark.sc-ds-data-search{--ds-interaction-hover:var(--color-always-dark-interaction-hover);--ds-interaction-pressed:var(--color-always-dark-interaction-pressed);--ds-interaction-active:var(--color-always-dark-interaction-active-brand);--ds-focus-ring-color:var(--color-always-dark-interaction-focus)}.ds-interaction-fill--on-chrome.sc-ds-data-search-h,.ds-interaction-fill--on-chrome.sc-ds-data-search{--ds-interaction-hover:var(--color-chrome-interaction-hover);--ds-interaction-pressed:var(--color-chrome-interaction-pressed);--ds-interaction-active:var(--color-chrome-interaction-active);--ds-focus-ring-color:var(--color-chrome-interaction-focus)}.ds-interaction-fill--on-navigation.sc-ds-data-search-h,.ds-interaction-fill--on-navigation.sc-ds-data-search{--ds-interaction-hover:var(--color-navigation-interaction-hover);--ds-interaction-pressed:var(--color-navigation-interaction-pressed);--ds-interaction-active:var(--color-navigation-interaction-active);--ds-focus-ring-color:var(--color-navigation-interaction-focus)}.ds-interaction-fill.ds-interaction-fill--surface-open.sc-ds-data-search-h:not(:disabled)::after,.ds-interaction-fill.ds-interaction-fill--surface-open.sc-ds-data-search:not(:disabled)::after{background:var(--ds-interaction-pressed)}@media (forced-colors: active){.ds-interaction-fill.sc-ds-data-search-h::after,.ds-interaction-fill.sc-ds-data-search::after{box-shadow:none;outline:var(--ds-interaction-border-width) solid var(--ds-forced-color-control-boundary);outline-offset:calc(-1 * var(--ds-interaction-border-width))}.ds-interaction-fill--surface-open.sc-ds-data-search-h:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after,.ds-interaction-fill--surface-open.sc-ds-data-search:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after{outline:var(--dimension-stroke-width-025) dashed var(--ds-forced-color-control-boundary);outline-offset:calc(-1 * var(--dimension-stroke-width-025))}.ds-interaction-fill--selected.sc-ds-data-search-h::before,.ds-interaction-fill--selected.sc-ds-data-search::before{background:transparent;outline:var(--dimension-stroke-width-025) solid var(--ds-forced-color-selected);outline-offset:calc(-1 * var(--dimension-stroke-width-025))}}@media (forced-colors: active) and (hover: hover) and (pointer: fine){.ds-interaction-fill.sc-ds-data-search-h:hover:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after,.ds-interaction-fill.sc-ds-data-search:hover:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after{outline-color:var(--ds-forced-color-selected);outline-width:var(--dimension-stroke-width-012)}}@media (forced-colors: active){.sc-ds-data-search:root,.sc-ds-data-search-h,.ds-forced-colors-scope.sc-ds-data-search{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.ds-control-inactive.sc-ds-data-search-h,.ds-control-inactive.sc-ds-data-search{opacity:var(--effect-opacity-medium);pointer-events:none;cursor:not-allowed}@media (forced-colors: active){.ds-control-inactive.sc-ds-data-search-h,.ds-control-inactive.sc-ds-data-search{color:var(--ds-forced-color-disabled);opacity:1}}.ds-control--lg.sc-ds-data-search,.ds-control--lg.sc-ds-data-search-h,.ds-control--md.sc-ds-data-search-h,.ds-control--md.sc-ds-data-search,.ds-control--sm.sc-ds-data-search-h,.ds-control--sm.sc-ds-data-search,.ds-control--xs.sc-ds-data-search-h,.ds-control--xs.sc-ds-data-search{--ds-control-radius:var(--ds-radius-control)}.ds-control--lg.sc-ds-data-search-h,.ds-control--lg.sc-ds-data-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-data-search-h,.ds-control--md.sc-ds-data-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-data-search-h,.ds-control--sm.sc-ds-data-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-data-search-h,.ds-control--xs.sc-ds-data-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-data-search-h,.ds-chrome-space--sm.sc-ds-data-search{--ds-chrome-padding:var(--dimension-space-050);--ds-chrome-gap:var(--dimension-space-050)}.ds-chrome-space--md.sc-ds-data-search-h,.ds-chrome-space--md.sc-ds-data-search{--ds-chrome-padding:var(--dimension-space-100);--ds-chrome-gap:var(--dimension-space-100)}.ds-chrome-space--lg.sc-ds-data-search-h,.ds-chrome-space--lg.sc-ds-data-search{--ds-chrome-padding:var(--dimension-space-200);--ds-chrome-gap:var(--dimension-space-200)}.ds-chrome-row.sc-ds-data-search-h,.ds-chrome-row.sc-ds-data-search,.ds-chrome-column.sc-ds-data-search-h,.ds-chrome-column.sc-ds-data-search,.ds-chrome-grid.sc-ds-data-search-h,.ds-chrome-grid.sc-ds-data-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-data-search-h,.ds-chrome-row.sc-ds-data-search{flex-direction:row;align-items:center}.ds-chrome-column.sc-ds-data-search-h,.ds-chrome-column.sc-ds-data-search{flex-direction:column}.ds-chrome-grid.sc-ds-data-search-h,.ds-chrome-grid.sc-ds-data-search{display:grid;align-items:center}.ds-control-frame.sc-ds-data-search{display:inline-flex;align-items:center;box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400));padding-inline:var(--ds-control-padding-inline, var(--dimension-space-075));gap:var(--ds-control-gap, var(--dimension-space-050));border-radius:var(--ds-control-radius, var(--dimension-radius-025))}.ds-control-section-heading.sc-ds-data-search{display:flex;align-items:center;box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400));padding-inline:calc( var(--ds-control-padding-inline, var(--dimension-space-075)) + var(--ds-control-label-inset, var(--dimension-space-025)) )}.ds-control-icon-box.sc-ds-data-search{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--ds-control-icon, var(--dimension-iconography-md));height:var(--ds-control-icon, var(--dimension-iconography-md))}.ds-control-label-box.sc-ds-data-search{min-width:0;padding-inline:var(--ds-control-label-inset, var(--dimension-space-025))}.ds-control-label-dot.sc-ds-data-search{position:relative;padding-inline-end:calc( var(--ds-control-label-inset, var(--dimension-space-025)) + var(--ds-control-gap, var(--dimension-space-050)) )}.ds-control-label-dot__badge.sc-ds-data-search{position:absolute;inset-block-start:0;inset-inline-end:0;pointer-events:none}.ds-empty-region.sc-ds-data-search{display:flex;flex:1 1 auto;align-items:center;justify-content:center;box-sizing:border-box;min-width:0;min-height:0}.ds-empty-region--padded.sc-ds-data-search{padding:var(--dimension-space-200)}.sc-ds-data-search:where(.ds-text-decoration,.ds-text-action).sc-ds-data-search{text-decoration-color:var(--ds-text-decoration-color, var(--color-foreground-tertiary));text-decoration-thickness:var(--ds-text-decoration-thickness, var(--dimension-stroke-width-012));text-underline-offset:var(--ds-text-decoration-offset, var(--dimension-space-025))}.ds-text-action.sc-ds-data-search{--ds-text-action-foreground:var(--color-foreground-bold-brand);--ds-text-decoration-color:var(--ds-text-action-foreground);color:var(--ds-text-action-foreground);text-decoration-line:none}.ds-text-action--on-medium.sc-ds-data-search{--ds-text-action-foreground:var(--color-foreground-on-medium-background-primary);--ds-text-decoration-color:var(--color-foreground-on-medium-background-secondary);text-decoration-line:underline}.ds-text-action--on-strong.sc-ds-data-search{--ds-text-action-foreground:var(--color-foreground-on-strong-background-primary);--ds-text-decoration-color:var(--color-foreground-on-strong-background-secondary);text-decoration-line:underline}.ds-text-action--on-bold.sc-ds-data-search{--ds-text-action-foreground:var(--color-foreground-on-bold-background-primary);--ds-text-decoration-color:var(--color-foreground-on-bold-background-secondary);text-decoration-line:underline}@media (hover: hover) and (pointer: fine){.ds-text-action.sc-ds-data-search:hover{text-decoration-line:underline}}@media (forced-colors: active){.ds-text-action.sc-ds-data-search{text-decoration-line:underline;text-decoration-color:currentcolor}}.ds-choice-popup.sc-ds-data-search{box-sizing:border-box;display:flex;flex-direction:column;min-width:var(--ds-choice-popup-min-inline-size, var(--dimension-menu-width-xs));max-width:min(var(--dimension-panel-width-lg), calc(100vw - var(--dimension-space-200)));max-height:calc(100vh - var(--dimension-space-200));overflow:hidden;inset:auto;margin:0;padding:0;border:0;background-color:var(--color-background-primary);border-radius:var(--ds-radius-menu);box-shadow:var(--effect-shadow-elevated-floating);color:var(--color-foreground-secondary);animation:dsChoiceFadeIn var(--effect-motion-short-2) forwards;backface-visibility:hidden;will-change:transform;text-align:start}.ds-choice-popup.sc-ds-data-search::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:var(--effect-highlight-elevated-floating)}.ds-choice-popup--closing.sc-ds-data-search{animation:dsChoiceFadeOut var(--effect-motion-short-2) forwards}@keyframes dsChoiceFadeIn{from{opacity:0;transform:inherit scale(0.97)}to{opacity:1}}@keyframes dsChoiceFadeOut{from{opacity:1}to{opacity:0}}@media (prefers-reduced-motion: reduce){.ds-choice-popup.sc-ds-data-search{animation:none;opacity:1}.ds-choice-popup--closing.sc-ds-data-search{opacity:0}}@media (forced-colors: active){.ds-choice-popup.sc-ds-data-search{outline:var(--dimension-stroke-width-012) solid var(--ds-forced-color-content);outline-offset:calc(-1 * var(--dimension-stroke-width-012))}.ds-choice-popup.sc-ds-data-search::after{box-shadow:none}}.ds-choice-list.sc-ds-data-search{display:flex;flex-direction:column;min-height:0;overflow-y:auto;overscroll-behavior:contain}.ds-choice-section--divided.sc-ds-data-search{border-bottom:var(--dimension-stroke-width-015) solid var(--color-border-tertiary)}ds-text.ds-choice-section__header.sc-ds-data-search{text-align:start;-webkit-user-select:none;user-select:none}.ds-choice-section--headed-after-first.sc-ds-data-search{margin-block-start:var(--dimension-space-050)}.select-option-row.sc-ds-data-search{display:flex;flex-direction:column;min-width:0}.ds-choice-item.sc-ds-data-search{width:100%;border:none;border-radius:var(--ds-control-radius, var(--dimension-radius-025));background:transparent;cursor:default;-webkit-user-select:none;user-select:none;text-align:left;color:inherit}.ds-choice-item.sc-ds-data-search:has(.ds-choice-item__subtext){height:auto;min-height:var(--ds-control-height, var(--dimension-size-400));padding-block:var(--ds-control-padding-inline, var(--dimension-space-075));align-items:flex-start}.ds-choice-item.ds-control--xs.sc-ds-data-search:has(.ds-choice-item__subtext){padding-block:0}.ds-choice-item__content.sc-ds-data-search{display:flex;flex:1;flex-direction:column;gap:var(--dimension-space-025);min-width:0}ds-text.ds-choice-item__label.sc-ds-data-search{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}ds-text.ds-choice-item__subtext.sc-ds-data-search{display:-webkit-box;overflow:hidden;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ds-choice-item__icon.sc-ds-data-search,.ds-choice-item__suffix.sc-ds-data-search{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--ds-control-icon, var(--dimension-iconography-md));height:var(--ds-control-icon, var(--dimension-iconography-md));pointer-events:none}.ds-choice-item.ds-interaction-fill--selected.sc-ds-data-search .ds-choice-item__icon.sc-ds-data-search{color:var(--color-foreground-primary)}.ds-choice-item__tag.sc-ds-data-search{flex-shrink:0;pointer-events:none}.ds-choice-empty.sc-ds-data-search,.ds-choice-loading.sc-ds-data-search{min-height:var(--dimension-size-600);padding:var(--dimension-space-100)}.ds-choice-footer.sc-ds-data-search{position:relative;box-sizing:border-box;padding-block:var(--dimension-space-050)}.ds-choice-footer.sc-ds-data-search::before{content:'';position:absolute;inset:0 0 auto;height:var(--dimension-stroke-width-012);background-color:var(--color-border-tertiary);pointer-events:none}.ds-choice-footer__content.sc-ds-data-search{display:flex;align-items:center;justify-content:space-between;column-gap:var(--dimension-space-050);box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400))}.ds-choice-footer__summary.sc-ds-data-search,.ds-choice-footer__summary-measure.sc-ds-data-search,.ds-choice-footer__clear.sc-ds-data-search ds-text.sc-ds-data-search,.ds-choice-footer__action.sc-ds-data-search ds-text.sc-ds-data-search{padding-inline:calc( var(--dimension-space-050) + var(--ds-control-padding-inline, var(--dimension-space-075)) + var(--ds-control-label-inset, var(--dimension-space-025)) )}.ds-choice-footer__summary.sc-ds-data-search,.ds-choice-footer__summary-measure.sc-ds-data-search,.ds-choice-footer__clear.sc-ds-data-search,.ds-choice-footer__action.sc-ds-data-search{white-space:nowrap}.ds-choice-footer__summary-measure.sc-ds-data-search{position:absolute;visibility:hidden;pointer-events:none}.ds-choice-footer__clear.sc-ds-data-search,.ds-choice-footer__action.sc-ds-data-search{appearance:none;display:inline-flex;align-items:center;padding:0;border:0;border-radius:var(--dimension-radius-025);background:transparent;cursor:default}@media (forced-colors: active){.ds-choice-section--divided.sc-ds-data-search{border-bottom-color:var(--ds-forced-color-content)}.ds-choice-footer.sc-ds-data-search::before{background-color:var(--ds-forced-color-content)}}.ds-control--lg.ds-control--inset.sc-ds-data-search-h,.ds-control--lg.ds-control--inset.sc-ds-data-search{--ds-control-height:calc(var(--dimension-size-500) - var(--dimension-space-050));--ds-control-padding-inline:calc(var(--dimension-space-100) - var(--dimension-space-025))}.ds-control--md.ds-control--inset.sc-ds-data-search-h,.ds-control--md.ds-control--inset.sc-ds-data-search{--ds-control-height:calc(var(--dimension-size-400) - var(--dimension-space-050));--ds-control-padding-inline:calc(var(--dimension-space-075) - var(--dimension-space-025))}.ds-control--sm.ds-control--inset.sc-ds-data-search-h,.ds-control--sm.ds-control--inset.sc-ds-data-search{--ds-control-height:calc(var(--dimension-size-300) - var(--dimension-space-050));--ds-control-padding-inline:calc(var(--dimension-space-050) - var(--dimension-space-025))}.ds-control--xs.ds-control--inset.sc-ds-data-search-h,.ds-control--xs.ds-control--inset.sc-ds-data-search{--ds-control-height:calc(var(--dimension-size-200) - var(--dimension-space-050));--ds-control-padding-inline:calc(var(--dimension-space-025) - var(--dimension-space-025))}.ds-control--lg.ds-control--inset-double.sc-ds-data-search-h,.ds-control--lg.ds-control--inset-double.sc-ds-data-search{--ds-control-height:calc(var(--dimension-size-500) - var(--dimension-space-100));--ds-control-padding-inline:calc(var(--dimension-space-100) - var(--dimension-space-050))}.ds-control--md.ds-control--inset-double.sc-ds-data-search-h,.ds-control--md.ds-control--inset-double.sc-ds-data-search{--ds-control-height:calc(var(--dimension-size-400) - var(--dimension-space-100));--ds-control-padding-inline:calc(var(--dimension-space-075) - var(--dimension-space-050))}.ds-control--sm.ds-control--inset-double.sc-ds-data-search-h,.ds-control--sm.ds-control--inset-double.sc-ds-data-search{--ds-control-height:calc(var(--dimension-size-300) - var(--dimension-space-100));--ds-control-padding-inline:calc(var(--dimension-space-050) - var(--dimension-space-050))}.ds-text--display-medium.sc-ds-data-search-h,.ds-text--display-medium.sc-ds-data-search{font-size:var(--typography-fontsize-3xl);line-height:var(--typography-lineheight-3xl)}.ds-text--display-small.sc-ds-data-search-h,.ds-text--display-small.sc-ds-data-search{font-size:var(--typography-fontsize-2xl);line-height:var(--typography-lineheight-2xl)}.ds-text--title-large.sc-ds-data-search-h,.ds-text--title-large.sc-ds-data-search{font-size:var(--typography-fontsize-xl);line-height:var(--typography-lineheight-xl)}.ds-text--title-medium.sc-ds-data-search-h,.ds-text--title-medium.sc-ds-data-search{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--title-small.sc-ds-data-search-h,.ds-text--title-small.sc-ds-data-search{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-large.sc-ds-data-search-h,.ds-text--body-large.sc-ds-data-search{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--body-medium.sc-ds-data-search-h,.ds-text--body-medium.sc-ds-data-search{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-small.sc-ds-data-search-h,.ds-text--body-small.sc-ds-data-search{font-size:var(--typography-fontsize-sm);line-height:var(--typography-lineheight-sm)}.ds-text--caption.sc-ds-data-search-h,.ds-text--caption.sc-ds-data-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-data-search-h,.ds-text--display-small.ds-text--emphasis.sc-ds-data-search-h,.ds-text--display-medium.ds-text--emphasis.sc-ds-data-search,.ds-text--display-small.ds-text--emphasis.sc-ds-data-search{font-weight:var(--typography-weight-bold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--display-medium.ds-text--regular.sc-ds-data-search-h,.ds-text--display-small.ds-text--regular.sc-ds-data-search-h,.ds-text--display-medium.ds-text--regular.sc-ds-data-search,.ds-text--display-small.ds-text--regular.sc-ds-data-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-large.ds-text--emphasis.sc-ds-data-search-h,.ds-text--title-large.ds-text--emphasis.sc-ds-data-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--title-large.ds-text--regular.sc-ds-data-search-h,.ds-text--title-large.ds-text--regular.sc-ds-data-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--emphasis.sc-ds-data-search-h,.ds-text--title-small.ds-text--emphasis.sc-ds-data-search-h,.ds-text--title-medium.ds-text--emphasis.sc-ds-data-search,.ds-text--title-small.ds-text--emphasis.sc-ds-data-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--regular.sc-ds-data-search-h,.ds-text--title-small.ds-text--regular.sc-ds-data-search-h,.ds-text--title-medium.ds-text--regular.sc-ds-data-search,.ds-text--title-small.ds-text--regular.sc-ds-data-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-large.ds-text--emphasis.sc-ds-data-search-h,.ds-text--body-medium.ds-text--emphasis.sc-ds-data-search-h,.ds-text--body-large.ds-text--emphasis.sc-ds-data-search,.ds-text--body-medium.ds-text--emphasis.sc-ds-data-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--body-large.ds-text--regular.sc-ds-data-search-h,.ds-text--body-medium.ds-text--regular.sc-ds-data-search-h,.ds-text--body-large.ds-text--regular.sc-ds-data-search,.ds-text--body-medium.ds-text--regular.sc-ds-data-search{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--emphasis.sc-ds-data-search-h,.ds-text--body-small.ds-text--emphasis.sc-ds-data-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--regular.sc-ds-data-search-h,.ds-text--body-small.ds-text--regular.sc-ds-data-search{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-none)}.ds-text--caption.ds-text--emphasis.sc-ds-data-search-h,.ds-text--caption.ds-text--emphasis.sc-ds-data-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-positive)}.ds-text--caption.ds-text--regular.sc-ds-data-search-h,.ds-text--caption.ds-text--regular.sc-ds-data-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-positive)}.ds-visually-hidden.sc-ds-data-search-h,.ds-visually-hidden.sc-ds-data-search{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.data-search-host.sc-ds-data-search-h{display:inline-flex;box-sizing:border-box;inline-size:100%;min-inline-size:0;--ds-data-search-foreground:var(--color-foreground-primary);--ds-data-search-adornment:var(--color-foreground-secondary);--ds-data-search-placeholder:var(--color-foreground-secondary);--ds-data-search-placeholder-active:var(--color-foreground-quaternary);--ds-data-search-border:var(--color-border-secondary)}.data-search__control.sc-ds-data-search{inline-size:100%;min-inline-size:0;padding-inline-end:var(--dimension-space-050);overflow:hidden;border:0;background:transparent;color:var(--ds-data-search-foreground);--ds-interaction-border-width:var(--dimension-stroke-width-012);--ds-interaction-border-color:var(--ds-data-search-border)}.data-search__control.sc-ds-data-search:focus-within{--ds-interaction-border-width:var(--dimension-stroke-width-018);--ds-interaction-border-color:var(--color-border-bold-brand)}.ds-control-inactive.sc-ds-data-search-h .data-search__control.sc-ds-data-search::after{background:transparent}.data-search__icon.sc-ds-data-search,.data-search__clear.sc-ds-data-search{position:relative;z-index:2;flex:none}.data-search__icon.sc-ds-data-search{color:var(--ds-data-search-adornment)}.data-search__editor.sc-ds-data-search{position:relative;z-index:2;display:flex;flex:1 1 auto;align-items:center;min-inline-size:0;block-size:100%;gap:var(--dimension-space-050);overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.data-search__editor.sc-ds-data-search::-webkit-scrollbar{display:none}.data-search__chip.sc-ds-data-search{flex:none;max-inline-size:var(--dimension-panel-width-2xs)}.data-search__input.sc-ds-data-search{appearance:none;box-sizing:border-box;flex:1 0 var(--dimension-size-600);min-inline-size:var(--dimension-size-600);block-size:100%;margin:0;padding:0;border:0;outline:0;background:transparent;color:var(--ds-data-search-foreground);text-overflow:ellipsis}.data-search__input.sc-ds-data-search::-webkit-search-cancel-button,.data-search__input.sc-ds-data-search::-webkit-search-decoration{display:none}.data-search__input.sc-ds-data-search::placeholder{color:var(--ds-data-search-placeholder)}.data-search__input.sc-ds-data-search:focus::placeholder{color:var(--ds-data-search-placeholder-active)}.data-search__popup.sc-ds-data-search{--ds-choice-popup-min-inline-size:var(--dimension-menu-width-xs)}.data-search__list.sc-ds-data-search{padding:var(--dimension-space-050)}.data-search__option.sc-ds-data-search{flex:none;inline-size:100%}@media (forced-colors: active){.data-search__control.sc-ds-data-search:focus-within::after{outline-color:var(--ds-forced-color-selected)}}.data-search-host--borderless.sc-ds-data-search-h .data-search__control.sc-ds-data-search:not(:focus-within){--ds-interaction-border-width:0px}`;let A=0;const T=e(class e extends s{constructor(e){super();if(e!==false){this.__registerHost()}this.dsChange=a(this,"dsChange",3);this.dsFieldsChange=a(this,"dsFieldsChange",3);this.dsClear=a(this,"dsClear",3);this.hasBorder=true;this.value="";this.fields=[];this.selectedFieldIds=[];this.placeholder="Search";this.ariaLabel="Search table";this.clearLabel="Clear search";this.fieldMenuLabel="Choose search fields";this.isInactive=false;this.menuOpen=false;this.menuQuery="";this.activeIndex=0;this.focusRingVisible=false;this.position={x:0,y:0};this.positionReady=false;this.availableHeight=null;this.announcement="";this.componentId=`ds-data-search-${++A}`;this.inputId=`${this.componentId}-input`;this.listboxId=`${this.componentId}-listbox`;this.descriptionId=`${this.componentId}-description`;this.inputEl=null;this.controlEl=null;this.popupEl=null;this.positionController=new d({getAnchor:()=>this.controlEl,getPopup:()=>this.popupEl,getOwnerDocument:()=>this.el.ownerDocument,measure:(e,s)=>{if(!this.menuOpen||!s.isConnected)return null;const a=b(x.space050,x.space050);s.style.minWidth=`max(var(--ds-choice-popup-min-inline-size, ${x.menuWidthXs}), ${y(e.offsetWidth,a)}px)`;const t=e.getBoundingClientRect();return{anchorRect:t,popupWidth:s.offsetWidth,popupHeight:s.offsetHeight,side:"bottom",align:"start",sideOffsetPx:a,alignOffsetPx:w({align:"start",alignOffsetPx:0,sectionInsetPx:a}),viewportPadPx:a,viewportWidth:window.innerWidth,viewportHeight:window.innerHeight,collisionRect:o(e)}},apply:({x:e,y:s,availableHeight:a})=>{this.position={x:e,y:s};this.availableHeight=a},onReady:()=>{this.positionReady=true},topLayer:true,liveUpdate:"frame",observeResize:true,observeAnchorMotion:true});this.interactionController=new n({getAnchor:()=>this.controlEl,getPopup:()=>this.popupEl,getOwnerDocument:()=>this.el.ownerDocument,onOutsideActivation:()=>this.closeMenu()})}disconnectedCallback(){this.closeMenu()}syncAvailableFields(){const e=this.availableFields.length;if(e===0){this.closeMenu();return}if(this.activeIndex>=e)this.activeIndex=e-1}syncInactive(e){if(e)this.closeMenu()}async setFocus(){this.inputEl?.focus()}get selectedFields(){return k(this.searchFields,this.selectedFieldIds)}get availableFields(){return z(this.searchFields,this.selectedFieldIds)}get visibleFields(){return C(this.availableFields,this.menuQuery)}get searchFields(){return _(this.fields)}get activeOptionId(){return this.menuOpen&&this.activeIndex>=0?`${this.componentId}-option-${this.activeIndex}`:undefined}openMenu(e){if(this.isInactive||this.menuOpen||this.availableFields.length===0)return;this.menuQuery="";if(this.inputEl)this.inputEl.value="";this.activeIndex=0;this.focusRingVisible=e;this.positionReady=false;this.menuOpen=true;requestAnimationFrame((()=>{if(!this.menuOpen)return;this.interactionController.connect();this.positionController.observe();this.positionController.schedule()}))}closeMenu(){if(!this.menuOpen&&!this.popupEl)return;if(this.popupEl?.matches(":popover-open"))this.popupEl.hidePopover();this.positionController.unobserve();this.interactionController.disconnect();this.popupEl=null;this.positionReady=false;this.availableHeight=null;this.menuOpen=false;this.menuQuery=""}handleInput(e){const s=e.target.value;if(this.menuOpen){this.menuQuery=s;this.activeIndex=C(this.availableFields,s).length?0:-1;this.focusRingVisible=false;this.positionController.schedule();return}this.dsChange.emit(s)}selectField(e){this.dsFieldsChange.emit({selectedFieldIds:[...this.selectedFieldIds,e.id]});this.announcement=`${e.label} search field added.`;this.closeMenu();requestAnimationFrame((()=>this.inputEl?.focus({preventScroll:true})))}removeLastField(){const e=this.selectedFields;const s=e[e.length-1];if(!s)return;this.dsFieldsChange.emit({selectedFieldIds:this.selectedFieldIds.filter((e=>e!==s.id))});this.announcement=`${s.label} search field removed.`}removeField(e){this.dsFieldsChange.emit({selectedFieldIds:this.selectedFieldIds.filter((s=>s!==e.id))});this.announcement=`${e.label} search field removed.`;requestAnimationFrame((()=>this.inputEl?.focus({preventScroll:true})))}clearSearch(){if(this.value)this.dsChange.emit("");if(this.selectedFieldIds.length)this.dsFieldsChange.emit({selectedFieldIds:[]});this.dsClear.emit();this.announcement="Search cleared.";this.closeMenu();requestAnimationFrame((()=>this.inputEl?.focus({preventScroll:true})))}handleKeyDown(e){if(e.key==="/"&&!this.menuOpen&&!e.altKey&&!e.ctrlKey&&!e.metaKey){e.preventDefault();this.openMenu(true);return}if(e.key==="Backspace"&&this.menuOpen&&this.menuQuery.length===0){e.preventDefault();this.closeMenu();return}if(e.key==="Backspace"&&this.value.length===0){if(this.selectedFields.length){e.preventDefault();this.removeLastField()}return}if(!this.menuOpen)return;if(e.key==="Escape"){e.preventDefault();this.closeMenu();return}if(e.key==="ArrowDown"||e.key==="ArrowUp"){e.preventDefault();this.focusRingVisible=true;this.activeIndex=F(this.activeIndex,this.visibleFields.length,e.key==="ArrowDown"?1:-1);this.el.querySelector(`#${CSS.escape(this.activeOptionId??"")}`)?.scrollIntoView({block:"nearest"});return}if(e.key==="Enter"){const s=this.visibleFields[this.activeIndex];if(!s)return;e.preventDefault();this.selectField(s);return}if(e.key==="Tab")this.closeMenu()}render(){const e=this.selectedFields;const s=this.visibleFields;const a=this.menuOpen?this.menuQuery:this.value;const r=this.value.length>0||e.length>0;const d=e.length?`Search limited to ${e.map((e=>e.label)).join(" or ")}.`:"Search includes every available table field. Type slash to choose fields.";const o={position:"fixed",left:"0",top:"0",transform:`translate(${Math.round(this.position.x)}px, ${Math.round(this.position.y)}px)`,zIndex:"var(--dimension-z-index-floating)",visibility:this.positionReady?"visible":"hidden"};if(this.availableHeight!==null){o["max-height"]=`${Math.floor(this.availableHeight)}px`}return t(i,{key:"f20d856611cc43d2af4c0efe7a5cca3fcdc4a341",class:{"data-search-host":true,"data-search-host--borderless":!this.hasBorder,"ds-control--md":true,"ds-control-inactive":this.isInactive},"data-filled":r?"":undefined,"data-expanded":this.menuOpen?"":undefined},t("div",{key:"495fb46cfa15baf0a085ab6c3193f435afddc09d",ref:e=>{this.controlEl=e??null},class:"data-search__control ds-control-frame ds-control--md ds-interaction-fill"},t("span",{key:"a2ebf844a8807d915b5e7642e010e25a3d4ca1d3",class:"data-search__icon ds-control-icon-box ds-interaction-fill__content","aria-hidden":"true"},t("ds-icon",{key:"3109fb366a35641cd021d6c604ecfbc9d0fbff97",name:"MagnifyingGlass",size:"md",color:"inherit"})),t("div",{key:"257c93d37e255ec5913bb1a0c88f8eb3e549cb4d",class:"data-search__editor ds-interaction-fill__content"},e.map((e=>t("ds-chip",{class:"data-search__chip",key:e.id,label:e.label,size:"md",state:"default",isInset:true,insetDepth:"double",isInactive:this.isInactive,onDsRemove:()=>this.removeField(e)}))),t("input",{key:"359bebc8d366d600b925b2ead3edb9a3f0f89562",ref:e=>{this.inputEl=e??null},id:this.inputId,class:"data-search__input ds-text--body-medium ds-text--regular",type:"search",role:"combobox",value:a,placeholder:this.placeholder,disabled:this.isInactive,"aria-label":this.ariaLabel,"aria-describedby":this.descriptionId,"aria-haspopup":"listbox","aria-expanded":String(this.menuOpen),"aria-controls":this.menuOpen?this.listboxId:undefined,"aria-activedescendant":this.activeOptionId,"aria-keyshortcuts":"/",autoComplete:"off",autoCapitalize:"none",autoCorrect:"off",spellcheck:false,onInput:e=>this.handleInput(e),onKeyDown:e=>this.handleKeyDown(e)})),a.length>0&&!this.isInactive&&t("ds-button-unfilled",{key:"f1537eeff4851c56996e3560f4550aec639d536e",class:"data-search__clear ds-interaction-fill__content",variant:"icon",size:"sm",icon:"CrossCircle",hasBorder:false,rounded:true,ariaLabel:this.clearLabel,onDsClick:()=>this.clearSearch()})),t("span",{key:"f9960f4979437c807e94bba53670b218cb99d2a6",id:this.descriptionId,class:"ds-visually-hidden"},d),t("span",{key:"dac05cbe2228784a3d4a6dfa509124f7084f348b",class:"ds-visually-hidden","aria-live":"polite"},this.announcement),this.menuOpen&&t("div",{key:"4dac09175462adb81379f961ffd9e45f81e1db11",popover:"manual",ref:e=>{this.popupEl=e??null},class:"data-search__popup ds-choice-popup",style:o},t("div",{key:"2edb5bb262e4b161ecce2a31b2e63001c187743d",id:this.listboxId,class:"data-search__list ds-choice-list",role:"listbox","aria-label":this.fieldMenuLabel},s.map(((e,s)=>{const a=s===this.activeIndex;return t("div",{id:`${this.componentId}-option-${s}`,key:e.id,class:{"data-search__option":true,"ds-choice-item":true,"ds-control-frame":true,"ds-control--md":true,"ds-focus-ring-inset":true,"ds-focus-ring--visible":a&&this.focusRingVisible,"ds-interaction-fill":true,"ds-interaction-fill--selected":a},role:"option","aria-selected":String(a),onMouseDown:e=>e.preventDefault(),onMouseMove:()=>{this.focusRingVisible=false;this.activeIndex=s},onClick:()=>this.selectField(e)},t("ds-text",{class:"ds-choice-item__label ds-control-label-box ds-interaction-fill__content",as:"span",variant:"text-body-medium",color:a?"primary":"secondary"},e.label))})),s.length===0&&t("div",{key:"8dc228ca4634b451a7c6259b3471802ff773a411",class:"data-search__empty ds-choice-empty ds-empty-region"},t("ds-empty-state",{key:"cd2a4ee8ac6a7a49222a8d128ae47bdbf79f4c92",body:"No matching data points"})))))}get el(){return this}static get watchers(){return{columns:[{syncAvailableFields:0}],selectedFieldIds:[{syncAvailableFields:0}],isInactive:[{syncInactive:0}]}}static get style(){return I()}},[2,"ds-data-search",{hasBorder:[516,"has-border"],value:[1],fields:[16],selectedFieldIds:[16],placeholder:[1],ariaLabel:[1,"aria-label"],clearLabel:[1,"clear-label"],fieldMenuLabel:[1,"field-menu-label"],isInactive:[4,"is-inactive"],menuOpen:[32],menuQuery:[32],activeIndex:[32],focusRingVisible:[32],position:[32],positionReady:[32],availableHeight:[32],announcement:[32],setFocus:[64]},undefined,{columns:[{syncAvailableFields:0}],selectedFieldIds:[{syncAvailableFields:0}],isInactive:[{syncInactive:0}]}]);function $(){if(typeof customElements==="undefined"){return}const e=["ds-data-search","ds-badge","ds-button-unfilled","ds-chip","ds-empty-state","ds-icon","ds-loader","ds-text","ds-tooltip"];e.forEach((e=>{switch(e){case"ds-data-search":if(!customElements.get(r(e))){customElements.define(r(e),T)}break;case"ds-badge":if(!customElements.get(r(e))){h()}break;case"ds-button-unfilled":if(!customElements.get(r(e))){p()}break;case"ds-chip":if(!customElements.get(r(e))){f()}break;case"ds-empty-state":if(!customElements.get(r(e))){v()}break;case"ds-icon":if(!customElements.get(r(e))){u()}break;case"ds-loader":if(!customElements.get(r(e))){m()}break;case"ds-text":if(!customElements.get(r(e))){g()}break;case"ds-tooltip":if(!customElements.get(r(e))){c()}break}}))}$();const j=T;const S=$;export{j as DsDataSearch,S as defineCustomElement};
1
+ import{p as e,H as s,c as a,h as t,a as i,t as r}from"./index.js";import{A as d,r as o,d as c}from"./p-BJf49edB.js";import{A as n}from"./p-CwUXroLs.js";import{i as l}from"./p-DuCfCvPs.js";import{d as h}from"./p-BWJb2rih.js";import{d as p}from"./p-kL4EOsx5.js";import{d as f}from"./p-IfsszNF0.js";import{d as v}from"./p-BcmJBzB6.js";import{d as u}from"./p-BVsVUnAw.js";import{d as m}from"./p-0XTyQNRG.js";import{d as g}from"./p-BbvAWFJA.js";import{r as b}from"./p-ioGH5SoA.js";import{T as x}from"./p-CeXf9-X3.js";import{c as y,r as w}from"./p-DhKvqh5G.js";function _(e){const s=[];const a=new Set;for(const t of e){if(l(t)||t.searchable===false)continue;const e=t.segments??[];if(e.length>0){for(const t of e){const e=t.sortKey.trim();const i=t.dataLabel?.trim()||t.label.trim()||e;if(!e||!i||t.searchable===false||a.has(e))continue;a.add(e);s.push({id:e,label:i})}continue}const i=t.id.trim();const r=t.dataLabel?.trim()||t.label.trim()||t.accessibleLabel?.trim()||i;if(!i||!r||a.has(i))continue;a.add(i);s.push({id:i,label:r})}return s}function k(e,s){const a=new Map(e.map((e=>[e.id,e])));const t=[];const i=new Set;for(const e of s){if(i.has(e))continue;const s=a.get(e);if(!s)continue;i.add(e);t.push(s)}return t}function z(e,s){const a=new Set(s);return e.filter((e=>!a.has(e.id)))}function F(e,s){const a=s.trim().toLocaleLowerCase();if(!a)return[...e];return e.filter((e=>`${e.label} ${e.id}`.toLocaleLowerCase().includes(a)))}function C(e,s,a){if(s<=0)return-1;const t=e>=0&&e<s?e:0;return(t+a+s)%s}const I=()=>`.sc-ds-data-search-h,.sc-ds-data-search:where(.ds-table),.sc-ds-data-search:where(.tooltip-popup),.sc-ds-data-search:where(.ds-radius){--ds-radius-control:var(--dimension-radius-025);--ds-radius-card:var(--dimension-radius-050);--ds-radius-modal:var(--dimension-radius-050);--ds-radius-menu:var(--dimension-radius-075);--ds-radius-tooltip-control:var(--dimension-radius-025);--ds-radius-tooltip-menu:var(--dimension-radius-075);--ds-radius-table:var(--dimension-radius-050)}@media (forced-colors: active){.sc-ds-data-search:root,.sc-ds-data-search-h,.ds-forced-colors-scope.sc-ds-data-search{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.sc-ds-data-search-h{--ds-focus-ring-width:var(--dimension-stroke-width-025, 2px);--ds-focus-ring-offset:var(--dimension-space-025, 2px);--ds-focus-ring-color:var(--color-interaction-focus)}.ds-focus-ring.sc-ds-data-search-h,.ds-focus-ring.sc-ds-data-search,.ds-focus-ring-inset.sc-ds-data-search-h,.ds-focus-ring-inset.sc-ds-data-search{outline:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.ds-focus-ring.sc-ds-data-search-h:focus-visible,.ds-focus-ring.sc-ds-data-search:focus-visible{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring.ds-focus-ring--visible.sc-ds-data-search-h,.ds-focus-ring.ds-focus-ring--visible.sc-ds-data-search{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring-inset.sc-ds-data-search-h:focus-visible,.ds-focus-ring-inset.sc-ds-data-search:focus-visible{outline:none}.ds-focus-ring-inset.sc-ds-data-search-h:focus-visible::after,.ds-focus-ring-inset.sc-ds-data-search:focus-visible::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-data-search-h,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-data-search{outline:none}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-data-search-h::after,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-data-search::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}@media (forced-colors: active){.sc-ds-data-search-h{--ds-focus-ring-color:var(--ds-forced-color-selected)}}@media (forced-colors: active){.sc-ds-data-search:root,.sc-ds-data-search-h,.ds-forced-colors-scope.sc-ds-data-search{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}@media (forced-colors: active){.sc-ds-data-search:root,.sc-ds-data-search-h,.ds-forced-colors-scope.sc-ds-data-search{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.ds-interaction-fill.sc-ds-data-search-h,.ds-interaction-fill.sc-ds-data-search{position:var(--ds-interaction-position, relative);z-index:var(--ds-interaction-z-index, 0);cursor:default;--ds-interaction-hover:var(--color-interaction-hover);--ds-interaction-pressed:var(--color-interaction-pressed);--ds-interaction-active:var(--color-interaction-active-brand);--ds-interaction-border-width:0px;--ds-interaction-border-color:transparent;--ds-interaction-divider-width:0px;--ds-interaction-divider-color:transparent;--ds-interaction-divider-inline-start-width:0px;--ds-interaction-divider-inline-start-color:transparent;--ds-interaction-divider-inline-end-width:0px;--ds-interaction-divider-inline-end-color:transparent}.ds-interaction-fill.sc-ds-data-search-h::before,.ds-interaction-fill.sc-ds-data-search::before,.ds-interaction-fill.sc-ds-data-search-h::after,.ds-interaction-fill.sc-ds-data-search::after{content:'';position:absolute;inset:0;border-radius:inherit;background:transparent;pointer-events:none;cursor:inherit;transition:none}.ds-interaction-fill.sc-ds-data-search-h::before,.ds-interaction-fill.sc-ds-data-search::before{z-index:1}.ds-interaction-fill.sc-ds-data-search-h::after,.ds-interaction-fill.sc-ds-data-search::after{z-index:3;box-shadow:inset 0 calc(-1 * var(--ds-interaction-divider-width)) 0 var(--ds-interaction-divider-color), inset var(--ds-interaction-divider-inline-start-width) 0 0 var(--ds-interaction-divider-inline-start-color), inset calc(-1 * var(--ds-interaction-divider-inline-end-width)) 0 0 var(--ds-interaction-divider-inline-end-color), inset 0 0 0 var(--ds-interaction-border-width) var(--ds-interaction-border-color)}.ds-interaction-fill--bordered.sc-ds-data-search-h,.ds-interaction-fill--bordered.sc-ds-data-search{--ds-interaction-border-width:var(--dimension-stroke-width-012);--ds-interaction-border-color:var(--color-border-secondary)}.ds-interaction-fill--selected.sc-ds-data-search-h::before,.ds-interaction-fill--selected.sc-ds-data-search::before{background:var(--ds-interaction-active)}.ds-interaction-fill--selected.sc-ds-data-search-h,.ds-interaction-fill--selected.sc-ds-data-search{--ds-interaction-dot-ring:var(--ds-interaction-active)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill.sc-ds-data-search-h:hover:not(:disabled)::after,.ds-interaction-fill.sc-ds-data-search:hover:not(:disabled)::after{background:var(--ds-interaction-hover)}}.ds-interaction-fill.sc-ds-data-search-h:active:not(:disabled)::after,.ds-interaction-fill.sc-ds-data-search:active:not(:disabled)::after{background:var(--ds-interaction-pressed)}.ds-interaction-fill--grouped.sc-ds-data-search-h::after,.ds-interaction-fill--grouped.sc-ds-data-search::after,.ds-interaction-fill--grouped.sc-ds-data-search-h:active:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-data-search:active:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}@media (hover: hover) and (pointer: fine){.ds-interaction-fill--grouped.sc-ds-data-search-h:hover:not(:disabled)::after,.ds-interaction-fill--grouped.sc-ds-data-search:hover:not(:disabled)::after{background:var(--ds-interaction-group-fill, transparent)}}.ds-interaction-fill--grouped.sc-ds-data-search-h,.ds-interaction-fill--grouped.sc-ds-data-search{--ds-interaction-divider-width:var(--ds-interaction-group-divider-width, 0px);--ds-interaction-divider-color:var(--ds-interaction-group-divider-color, transparent);--ds-interaction-divider-inline-start-width:var( --ds-interaction-group-divider-inline-start-width, 0px );--ds-interaction-divider-inline-start-color:var( --ds-interaction-group-divider-inline-start-color, transparent );--ds-interaction-divider-inline-end-width:var( --ds-interaction-group-divider-inline-end-width, 0px );--ds-interaction-divider-inline-end-color:var( --ds-interaction-group-divider-inline-end-color, transparent )}.ds-interaction-fill.sc-ds-data-search-h>.ds-interaction-fill__content.sc-ds-data-search,.ds-interaction-fill.sc-ds-data-search>.ds-interaction-fill__content.sc-ds-data-search,.ds-interaction-fill__content.sc-ds-data-search{position:relative;z-index:2;cursor:inherit}.ds-interaction-fill--on-faint.sc-ds-data-search-h,.ds-interaction-fill--on-faint.sc-ds-data-search{--ds-interaction-active:var(--color-interaction-active)}.ds-interaction-fill--on-medium.sc-ds-data-search-h,.ds-interaction-fill--on-medium.sc-ds-data-search{--ds-interaction-hover:var(--color-interaction-on-medium-background-hover);--ds-interaction-pressed:var(--color-interaction-on-medium-background-pressed);--ds-interaction-active:var(--color-interaction-on-medium-background-active);--ds-focus-ring-color:var(--color-interaction-on-medium-background-focus)}.ds-interaction-fill--on-bold.sc-ds-data-search-h,.ds-interaction-fill--on-bold.sc-ds-data-search{--ds-interaction-hover:var(--color-interaction-on-bold-background-hover);--ds-interaction-pressed:var(--color-interaction-on-bold-background-pressed);--ds-interaction-active:var(--color-interaction-on-bold-background-active);--ds-focus-ring-color:var(--color-interaction-on-bold-background-focus)}.ds-interaction-fill--on-strong.sc-ds-data-search-h,.ds-interaction-fill--on-strong.sc-ds-data-search{--ds-interaction-hover:var(--color-interaction-on-strong-background-hover);--ds-interaction-pressed:var(--color-interaction-on-strong-background-pressed);--ds-interaction-active:var(--color-interaction-on-strong-background-active);--ds-focus-ring-color:var(--color-interaction-on-strong-background-focus)}.ds-interaction-fill--on-translucent.sc-ds-data-search-h,.ds-interaction-fill--on-translucent.sc-ds-data-search{--ds-interaction-hover:var(--color-translucent-interaction-hover);--ds-interaction-pressed:var(--color-translucent-interaction-pressed);--ds-interaction-active:var(--color-translucent-interaction-active-brand);--ds-focus-ring-color:var(--color-translucent-interaction-focus)}.ds-interaction-fill--on-inverted.sc-ds-data-search-h,.ds-interaction-fill--on-inverted.sc-ds-data-search{--ds-interaction-hover:var(--color-inverted-interaction-hover);--ds-interaction-pressed:var(--color-inverted-interaction-pressed);--ds-interaction-active:var(--color-inverted-interaction-active-brand);--ds-focus-ring-color:var(--color-inverted-interaction-focus)}.ds-interaction-fill--on-media.sc-ds-data-search-h,.ds-interaction-fill--on-media.sc-ds-data-search{--ds-interaction-hover:var(--color-media-interaction-hover);--ds-interaction-pressed:var(--color-media-interaction-pressed);--ds-interaction-active:var(--color-media-interaction-active);--ds-focus-ring-color:var(--color-media-interaction-focus)}.ds-interaction-fill--on-always-dark.sc-ds-data-search-h,.ds-interaction-fill--on-always-dark.sc-ds-data-search{--ds-interaction-hover:var(--color-always-dark-interaction-hover);--ds-interaction-pressed:var(--color-always-dark-interaction-pressed);--ds-interaction-active:var(--color-always-dark-interaction-active-brand);--ds-focus-ring-color:var(--color-always-dark-interaction-focus)}.ds-interaction-fill--on-chrome.sc-ds-data-search-h,.ds-interaction-fill--on-chrome.sc-ds-data-search{--ds-interaction-hover:var(--color-chrome-interaction-hover);--ds-interaction-pressed:var(--color-chrome-interaction-pressed);--ds-interaction-active:var(--color-chrome-interaction-active);--ds-focus-ring-color:var(--color-chrome-interaction-focus)}.ds-interaction-fill--on-navigation.sc-ds-data-search-h,.ds-interaction-fill--on-navigation.sc-ds-data-search{--ds-interaction-hover:var(--color-navigation-interaction-hover);--ds-interaction-pressed:var(--color-navigation-interaction-pressed);--ds-interaction-active:var(--color-navigation-interaction-active);--ds-focus-ring-color:var(--color-navigation-interaction-focus)}.ds-interaction-fill.ds-interaction-fill--surface-open.sc-ds-data-search-h:not(:disabled)::after,.ds-interaction-fill.ds-interaction-fill--surface-open.sc-ds-data-search:not(:disabled)::after{background:var(--ds-interaction-pressed)}@media (forced-colors: active){.ds-interaction-fill.sc-ds-data-search-h::after,.ds-interaction-fill.sc-ds-data-search::after{box-shadow:none;outline:var(--ds-interaction-border-width) solid var(--ds-forced-color-control-boundary);outline-offset:calc(-1 * var(--ds-interaction-border-width))}.ds-interaction-fill--surface-open.sc-ds-data-search-h:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after,.ds-interaction-fill--surface-open.sc-ds-data-search:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after{outline:var(--dimension-stroke-width-025) dashed var(--ds-forced-color-control-boundary);outline-offset:calc(-1 * var(--dimension-stroke-width-025))}.ds-interaction-fill--selected.sc-ds-data-search-h::before,.ds-interaction-fill--selected.sc-ds-data-search::before{background:transparent;outline:var(--dimension-stroke-width-025) solid var(--ds-forced-color-selected);outline-offset:calc(-1 * var(--dimension-stroke-width-025))}}@media (forced-colors: active) and (hover: hover) and (pointer: fine){.ds-interaction-fill.sc-ds-data-search-h:hover:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after,.ds-interaction-fill.sc-ds-data-search:hover:not(:disabled):not(:focus-visible):not(:focus-within):not(.ds-focus-ring--visible)::after{outline-color:var(--ds-forced-color-selected);outline-width:var(--dimension-stroke-width-012)}}@media (forced-colors: active){.sc-ds-data-search:root,.sc-ds-data-search-h,.ds-forced-colors-scope.sc-ds-data-search{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.ds-control-inactive.sc-ds-data-search-h,.ds-control-inactive.sc-ds-data-search{opacity:var(--effect-opacity-medium);pointer-events:none;cursor:not-allowed}@media (forced-colors: active){.ds-control-inactive.sc-ds-data-search-h,.ds-control-inactive.sc-ds-data-search{color:var(--ds-forced-color-disabled);opacity:1}}.ds-control--lg.sc-ds-data-search,.ds-control--lg.sc-ds-data-search-h,.ds-control--md.sc-ds-data-search-h,.ds-control--md.sc-ds-data-search,.ds-control--sm.sc-ds-data-search-h,.ds-control--sm.sc-ds-data-search,.ds-control--xs.sc-ds-data-search-h,.ds-control--xs.sc-ds-data-search{--ds-control-radius:var(--ds-radius-control)}.ds-control--lg.sc-ds-data-search-h,.ds-control--lg.sc-ds-data-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-data-search-h,.ds-control--md.sc-ds-data-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-data-search-h,.ds-control--sm.sc-ds-data-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-data-search-h,.ds-control--xs.sc-ds-data-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-data-search-h,.ds-chrome-space--sm.sc-ds-data-search{--ds-chrome-padding:var(--ds-chrome-space-sm-padding, var(--dimension-space-050));--ds-chrome-gap:var(--dimension-space-050)}.ds-chrome-space--md.sc-ds-data-search-h,.ds-chrome-space--md.sc-ds-data-search{--ds-chrome-padding:var(--dimension-space-100);--ds-chrome-gap:var(--dimension-space-100)}.ds-chrome-space--lg.sc-ds-data-search-h,.ds-chrome-space--lg.sc-ds-data-search{--ds-chrome-padding:var(--dimension-space-200);--ds-chrome-gap:var(--dimension-space-200)}.ds-chrome-row.sc-ds-data-search-h,.ds-chrome-row.sc-ds-data-search,.ds-chrome-column.sc-ds-data-search-h,.ds-chrome-column.sc-ds-data-search,.ds-chrome-grid.sc-ds-data-search-h,.ds-chrome-grid.sc-ds-data-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-data-search-h,.ds-chrome-row.sc-ds-data-search{flex-direction:row;align-items:center}.ds-chrome-column.sc-ds-data-search-h,.ds-chrome-column.sc-ds-data-search{flex-direction:column}.ds-chrome-grid.sc-ds-data-search-h,.ds-chrome-grid.sc-ds-data-search{display:grid;align-items:center}.ds-control-frame.sc-ds-data-search{display:inline-flex;align-items:center;box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400));padding-inline:var(--ds-control-padding-inline, var(--dimension-space-075));gap:var(--ds-control-gap, var(--dimension-space-050));border-radius:var(--ds-control-radius, var(--dimension-radius-025))}.ds-control-section-heading.sc-ds-data-search{display:flex;align-items:center;box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400));padding-inline:calc( var(--ds-control-padding-inline, var(--dimension-space-075)) + var(--ds-control-label-inset, var(--dimension-space-025)) )}.ds-control-icon-box.sc-ds-data-search{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--ds-control-icon, var(--dimension-iconography-md));height:var(--ds-control-icon, var(--dimension-iconography-md))}.ds-control-label-box.sc-ds-data-search{min-width:0;padding-inline:var(--ds-control-label-inset, var(--dimension-space-025))}.ds-control-label-dot.sc-ds-data-search{position:relative;padding-inline-end:calc( var(--ds-control-label-inset, var(--dimension-space-025)) + var(--ds-control-gap, var(--dimension-space-050)) )}.ds-control-label-dot__badge.sc-ds-data-search{position:absolute;inset-block-start:0;inset-inline-end:0;pointer-events:none}.ds-empty-region.sc-ds-data-search{display:flex;flex:1 1 auto;align-items:center;justify-content:center;box-sizing:border-box;min-width:0;min-height:0}.ds-empty-region--padded.sc-ds-data-search{padding:var(--dimension-space-200)}.sc-ds-data-search:where(.ds-text-decoration,.ds-text-action).sc-ds-data-search{text-decoration-color:var(--ds-text-decoration-color, var(--color-foreground-tertiary));text-decoration-thickness:var(--ds-text-decoration-thickness, var(--dimension-stroke-width-012));text-underline-offset:var(--ds-text-decoration-offset, var(--dimension-space-025))}.ds-text-action.sc-ds-data-search{--ds-text-action-foreground:var(--color-foreground-bold-brand);--ds-text-decoration-color:var(--ds-text-action-foreground);color:var(--ds-text-action-foreground);text-decoration-line:none}.ds-text-action--on-medium.sc-ds-data-search{--ds-text-action-foreground:var(--color-foreground-on-medium-background-primary);--ds-text-decoration-color:var(--color-foreground-on-medium-background-secondary);text-decoration-line:underline}.ds-text-action--on-strong.sc-ds-data-search{--ds-text-action-foreground:var(--color-foreground-on-strong-background-primary);--ds-text-decoration-color:var(--color-foreground-on-strong-background-secondary);text-decoration-line:underline}.ds-text-action--on-bold.sc-ds-data-search{--ds-text-action-foreground:var(--color-foreground-on-bold-background-primary);--ds-text-decoration-color:var(--color-foreground-on-bold-background-secondary);text-decoration-line:underline}@media (hover: hover) and (pointer: fine){.ds-text-action.sc-ds-data-search:hover{text-decoration-line:underline}}@media (forced-colors: active){.ds-text-action.sc-ds-data-search{text-decoration-line:underline;text-decoration-color:currentcolor}}.ds-choice-popup.sc-ds-data-search{box-sizing:border-box;display:flex;flex-direction:column;min-width:var(--ds-choice-popup-min-inline-size, var(--dimension-menu-width-xs));max-width:min(var(--dimension-panel-width-lg), calc(100vw - var(--dimension-space-200)));max-height:calc(100vh - var(--dimension-space-200));overflow:hidden;inset:auto;margin:0;padding:0;border:0;background-color:var(--color-background-primary);border-radius:var(--ds-radius-menu);box-shadow:var(--effect-shadow-elevated-floating);color:var(--color-foreground-secondary);animation:dsChoiceFadeIn var(--effect-motion-short-2) forwards;backface-visibility:hidden;will-change:transform;text-align:start}.ds-choice-popup.sc-ds-data-search::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:var(--effect-highlight-elevated-floating)}.ds-choice-popup--closing.sc-ds-data-search{animation:dsChoiceFadeOut var(--effect-motion-short-2) forwards}@keyframes dsChoiceFadeIn{from{opacity:0;transform:inherit scale(0.97)}to{opacity:1}}@keyframes dsChoiceFadeOut{from{opacity:1}to{opacity:0}}@media (prefers-reduced-motion: reduce){.ds-choice-popup.sc-ds-data-search{animation:none;opacity:1}.ds-choice-popup--closing.sc-ds-data-search{opacity:0}}@media (forced-colors: active){.ds-choice-popup.sc-ds-data-search{outline:var(--dimension-stroke-width-012) solid var(--ds-forced-color-content);outline-offset:calc(-1 * var(--dimension-stroke-width-012))}.ds-choice-popup.sc-ds-data-search::after{box-shadow:none}}.ds-choice-list.sc-ds-data-search{display:flex;flex-direction:column;min-height:0;overflow-y:auto;overscroll-behavior:contain}.ds-choice-section--divided.sc-ds-data-search{border-bottom:var(--dimension-stroke-width-015) solid var(--color-border-tertiary)}ds-text.ds-choice-section__header.sc-ds-data-search{text-align:start;-webkit-user-select:none;user-select:none}.ds-choice-section--headed-after-first.sc-ds-data-search{margin-block-start:var(--dimension-space-050)}.select-option-row.sc-ds-data-search{display:flex;flex-direction:column;min-width:0}.ds-choice-item.sc-ds-data-search{width:100%;border:none;border-radius:var(--ds-control-radius, var(--dimension-radius-025));background:transparent;cursor:default;-webkit-user-select:none;user-select:none;text-align:left;color:inherit}.ds-choice-item.sc-ds-data-search:has(.ds-choice-item__subtext){height:auto;min-height:var(--ds-control-height, var(--dimension-size-400));padding-block:var(--ds-control-padding-inline, var(--dimension-space-075));align-items:flex-start}.ds-choice-item.ds-control--xs.sc-ds-data-search:has(.ds-choice-item__subtext){padding-block:0}.ds-choice-item__content.sc-ds-data-search{display:flex;flex:1;flex-direction:column;gap:var(--dimension-space-025);min-width:0}ds-text.ds-choice-item__label.sc-ds-data-search{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}ds-text.ds-choice-item__subtext.sc-ds-data-search{display:-webkit-box;overflow:hidden;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ds-choice-item__icon.sc-ds-data-search,.ds-choice-item__suffix.sc-ds-data-search{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--ds-control-icon, var(--dimension-iconography-md));height:var(--ds-control-icon, var(--dimension-iconography-md));pointer-events:none}.ds-choice-item.ds-interaction-fill--selected.sc-ds-data-search .ds-choice-item__icon.sc-ds-data-search{color:var(--color-foreground-primary)}.ds-choice-item__tag.sc-ds-data-search{flex-shrink:0;pointer-events:none}.ds-choice-empty.sc-ds-data-search,.ds-choice-loading.sc-ds-data-search{min-height:var(--dimension-size-600);padding:var(--dimension-space-100)}.ds-choice-footer.sc-ds-data-search{position:relative;box-sizing:border-box;padding-block:var(--dimension-space-050)}.ds-choice-footer.sc-ds-data-search::before{content:'';position:absolute;inset:0 0 auto;height:var(--dimension-stroke-width-012);background-color:var(--color-border-tertiary);pointer-events:none}.ds-choice-footer__content.sc-ds-data-search{display:flex;align-items:center;justify-content:space-between;column-gap:var(--dimension-space-050);box-sizing:border-box;height:var(--ds-control-height, var(--dimension-size-400))}.ds-choice-footer__summary.sc-ds-data-search,.ds-choice-footer__summary-measure.sc-ds-data-search,.ds-choice-footer__clear.sc-ds-data-search ds-text.sc-ds-data-search,.ds-choice-footer__action.sc-ds-data-search ds-text.sc-ds-data-search{padding-inline:calc( var(--dimension-space-050) + var(--ds-control-padding-inline, var(--dimension-space-075)) + var(--ds-control-label-inset, var(--dimension-space-025)) )}.ds-choice-footer__summary.sc-ds-data-search,.ds-choice-footer__summary-measure.sc-ds-data-search,.ds-choice-footer__clear.sc-ds-data-search,.ds-choice-footer__action.sc-ds-data-search{white-space:nowrap}.ds-choice-footer__summary-measure.sc-ds-data-search{position:absolute;visibility:hidden;pointer-events:none}.ds-choice-footer__clear.sc-ds-data-search,.ds-choice-footer__action.sc-ds-data-search{appearance:none;display:inline-flex;align-items:center;padding:0;border:0;border-radius:var(--dimension-radius-025);background:transparent;cursor:default}@media (forced-colors: active){.ds-choice-section--divided.sc-ds-data-search{border-bottom-color:var(--ds-forced-color-content)}.ds-choice-footer.sc-ds-data-search::before{background-color:var(--ds-forced-color-content)}}.ds-control--lg.ds-control--inset.sc-ds-data-search-h,.ds-control--lg.ds-control--inset.sc-ds-data-search{--ds-control-height:calc(var(--dimension-size-500) - var(--dimension-space-050));--ds-control-padding-inline:calc(var(--dimension-space-100) - var(--dimension-space-025))}.ds-control--md.ds-control--inset.sc-ds-data-search-h,.ds-control--md.ds-control--inset.sc-ds-data-search{--ds-control-height:calc(var(--dimension-size-400) - var(--dimension-space-050));--ds-control-padding-inline:calc(var(--dimension-space-075) - var(--dimension-space-025))}.ds-control--sm.ds-control--inset.sc-ds-data-search-h,.ds-control--sm.ds-control--inset.sc-ds-data-search{--ds-control-height:calc(var(--dimension-size-300) - var(--dimension-space-050));--ds-control-padding-inline:calc(var(--dimension-space-050) - var(--dimension-space-025))}.ds-control--xs.ds-control--inset.sc-ds-data-search-h,.ds-control--xs.ds-control--inset.sc-ds-data-search{--ds-control-height:calc(var(--dimension-size-200) - var(--dimension-space-050));--ds-control-padding-inline:calc(var(--dimension-space-025) - var(--dimension-space-025))}.ds-control--lg.ds-control--inset-double.sc-ds-data-search-h,.ds-control--lg.ds-control--inset-double.sc-ds-data-search{--ds-control-height:calc(var(--dimension-size-500) - var(--dimension-space-100));--ds-control-padding-inline:calc(var(--dimension-space-100) - var(--dimension-space-050))}.ds-control--md.ds-control--inset-double.sc-ds-data-search-h,.ds-control--md.ds-control--inset-double.sc-ds-data-search{--ds-control-height:calc(var(--dimension-size-400) - var(--dimension-space-100));--ds-control-padding-inline:calc(var(--dimension-space-075) - var(--dimension-space-050))}.ds-control--sm.ds-control--inset-double.sc-ds-data-search-h,.ds-control--sm.ds-control--inset-double.sc-ds-data-search{--ds-control-height:calc(var(--dimension-size-300) - var(--dimension-space-100));--ds-control-padding-inline:calc(var(--dimension-space-050) - var(--dimension-space-050))}.ds-text--display-medium.sc-ds-data-search-h,.ds-text--display-medium.sc-ds-data-search{font-size:var(--typography-fontsize-3xl);line-height:var(--typography-lineheight-3xl)}.ds-text--display-small.sc-ds-data-search-h,.ds-text--display-small.sc-ds-data-search{font-size:var(--typography-fontsize-2xl);line-height:var(--typography-lineheight-2xl)}.ds-text--title-large.sc-ds-data-search-h,.ds-text--title-large.sc-ds-data-search{font-size:var(--typography-fontsize-xl);line-height:var(--typography-lineheight-xl)}.ds-text--title-medium.sc-ds-data-search-h,.ds-text--title-medium.sc-ds-data-search{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--title-small.sc-ds-data-search-h,.ds-text--title-small.sc-ds-data-search{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-large.sc-ds-data-search-h,.ds-text--body-large.sc-ds-data-search{font-size:var(--typography-fontsize-lg);line-height:var(--typography-lineheight-lg)}.ds-text--body-medium.sc-ds-data-search-h,.ds-text--body-medium.sc-ds-data-search{font-size:var(--typography-fontsize-md);line-height:var(--typography-lineheight-md)}.ds-text--body-small.sc-ds-data-search-h,.ds-text--body-small.sc-ds-data-search{font-size:var(--typography-fontsize-sm);line-height:var(--typography-lineheight-sm)}.ds-text--caption.sc-ds-data-search-h,.ds-text--caption.sc-ds-data-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-data-search-h,.ds-text--display-small.ds-text--emphasis.sc-ds-data-search-h,.ds-text--display-medium.ds-text--emphasis.sc-ds-data-search,.ds-text--display-small.ds-text--emphasis.sc-ds-data-search{font-weight:var(--typography-weight-bold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--display-medium.ds-text--regular.sc-ds-data-search-h,.ds-text--display-small.ds-text--regular.sc-ds-data-search-h,.ds-text--display-medium.ds-text--regular.sc-ds-data-search,.ds-text--display-small.ds-text--regular.sc-ds-data-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-large.ds-text--emphasis.sc-ds-data-search-h,.ds-text--title-large.ds-text--emphasis.sc-ds-data-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative-double)}.ds-text--title-large.ds-text--regular.sc-ds-data-search-h,.ds-text--title-large.ds-text--regular.sc-ds-data-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--emphasis.sc-ds-data-search-h,.ds-text--title-small.ds-text--emphasis.sc-ds-data-search-h,.ds-text--title-medium.ds-text--emphasis.sc-ds-data-search,.ds-text--title-small.ds-text--emphasis.sc-ds-data-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--title-medium.ds-text--regular.sc-ds-data-search-h,.ds-text--title-small.ds-text--regular.sc-ds-data-search-h,.ds-text--title-medium.ds-text--regular.sc-ds-data-search,.ds-text--title-small.ds-text--regular.sc-ds-data-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-large.ds-text--emphasis.sc-ds-data-search-h,.ds-text--body-medium.ds-text--emphasis.sc-ds-data-search-h,.ds-text--body-large.ds-text--emphasis.sc-ds-data-search,.ds-text--body-medium.ds-text--emphasis.sc-ds-data-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative)}.ds-text--body-large.ds-text--regular.sc-ds-data-search-h,.ds-text--body-medium.ds-text--regular.sc-ds-data-search-h,.ds-text--body-large.ds-text--regular.sc-ds-data-search,.ds-text--body-medium.ds-text--regular.sc-ds-data-search{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--emphasis.sc-ds-data-search-h,.ds-text--body-small.ds-text--emphasis.sc-ds-data-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-negative-half)}.ds-text--body-small.ds-text--regular.sc-ds-data-search-h,.ds-text--body-small.ds-text--regular.sc-ds-data-search{font-weight:var(--typography-weight-regular);letter-spacing:var(--typography-letterspacing-none)}.ds-text--caption.ds-text--emphasis.sc-ds-data-search-h,.ds-text--caption.ds-text--emphasis.sc-ds-data-search{font-weight:var(--typography-weight-semibold);letter-spacing:var(--typography-letterspacing-positive)}.ds-text--caption.ds-text--regular.sc-ds-data-search-h,.ds-text--caption.ds-text--regular.sc-ds-data-search{font-weight:var(--typography-weight-medium);letter-spacing:var(--typography-letterspacing-positive)}.ds-visually-hidden.sc-ds-data-search-h,.ds-visually-hidden.sc-ds-data-search{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0}.data-search-host.sc-ds-data-search-h{display:inline-flex;box-sizing:border-box;inline-size:100%;min-inline-size:0;--ds-data-search-foreground:var(--color-foreground-primary);--ds-data-search-adornment:var(--color-foreground-secondary);--ds-data-search-placeholder:var(--color-foreground-secondary);--ds-data-search-placeholder-active:var(--color-foreground-quaternary);--ds-data-search-border:var(--color-border-secondary)}.data-search__control.sc-ds-data-search{inline-size:100%;min-inline-size:0;padding-inline-end:var(--dimension-space-050);overflow:hidden;border:0;background:transparent;color:var(--ds-data-search-foreground);--ds-interaction-border-width:var(--dimension-stroke-width-012);--ds-interaction-border-color:var(--ds-data-search-border)}.data-search__control.sc-ds-data-search:focus-within{--ds-interaction-border-width:var(--dimension-stroke-width-018);--ds-interaction-border-color:var(--color-border-bold-brand)}.ds-control-inactive.sc-ds-data-search-h .data-search__control.sc-ds-data-search::after{background:transparent}.data-search__icon.sc-ds-data-search,.data-search__clear.sc-ds-data-search{position:relative;z-index:2;flex:none}.data-search__icon.sc-ds-data-search{color:var(--ds-data-search-adornment)}.data-search__editor.sc-ds-data-search{position:relative;z-index:2;display:flex;flex:1 1 auto;align-items:center;min-inline-size:0;block-size:100%;gap:var(--dimension-space-050);overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.data-search__editor.sc-ds-data-search::-webkit-scrollbar{display:none}.data-search__chip.sc-ds-data-search{flex:none;max-inline-size:var(--dimension-panel-width-2xs)}.data-search__input.sc-ds-data-search{appearance:none;box-sizing:border-box;flex:1 0 var(--dimension-size-600);min-inline-size:var(--dimension-size-600);block-size:100%;margin:0;padding:0;border:0;outline:0;background:transparent;color:var(--ds-data-search-foreground);text-overflow:ellipsis}.data-search__input.sc-ds-data-search::-webkit-search-cancel-button,.data-search__input.sc-ds-data-search::-webkit-search-decoration{display:none}.data-search__input.sc-ds-data-search::placeholder{color:var(--ds-data-search-placeholder)}.data-search__input.sc-ds-data-search:focus::placeholder{color:var(--ds-data-search-placeholder-active)}.data-search__popup.sc-ds-data-search{--ds-choice-popup-min-inline-size:var(--dimension-menu-width-xs)}.data-search__list.sc-ds-data-search{padding:var(--dimension-space-050)}.data-search__option.sc-ds-data-search{flex:none;inline-size:100%}@media (forced-colors: active){.data-search__control.sc-ds-data-search:focus-within::after{outline-color:var(--ds-forced-color-selected)}}.data-search-host--borderless.sc-ds-data-search-h .data-search__control.sc-ds-data-search:not(:focus-within){--ds-interaction-border-width:0px}`;let A=0;const T=e(class e extends s{constructor(e){super();if(e!==false){this.__registerHost()}this.dsChange=a(this,"dsChange",3);this.dsFieldsChange=a(this,"dsFieldsChange",3);this.dsClear=a(this,"dsClear",3);this.hasBorder=true;this.value="";this.fields=[];this.selectedFieldIds=[];this.placeholder="Search";this.ariaLabel="Search table";this.clearLabel="Clear search";this.fieldMenuLabel="Choose search fields";this.isInactive=false;this.menuOpen=false;this.menuQuery="";this.activeIndex=0;this.focusRingVisible=false;this.position={x:0,y:0};this.positionReady=false;this.availableHeight=null;this.announcement="";this.componentId=`ds-data-search-${++A}`;this.inputId=`${this.componentId}-input`;this.listboxId=`${this.componentId}-listbox`;this.descriptionId=`${this.componentId}-description`;this.inputEl=null;this.controlEl=null;this.popupEl=null;this.positionController=new d({getAnchor:()=>this.controlEl,getPopup:()=>this.popupEl,getOwnerDocument:()=>this.el.ownerDocument,measure:(e,s)=>{if(!this.menuOpen||!s.isConnected)return null;const a=b(x.space050,x.space050);s.style.minWidth=`max(var(--ds-choice-popup-min-inline-size, ${x.menuWidthXs}), ${y(e.offsetWidth,a)}px)`;const t=e.getBoundingClientRect();return{anchorRect:t,popupWidth:s.offsetWidth,popupHeight:s.offsetHeight,side:"bottom",align:"start",sideOffsetPx:a,alignOffsetPx:w({align:"start",alignOffsetPx:0,sectionInsetPx:a}),viewportPadPx:a,viewportWidth:window.innerWidth,viewportHeight:window.innerHeight,collisionRect:o(e)}},apply:({x:e,y:s,availableHeight:a})=>{this.position={x:e,y:s};this.availableHeight=a},onReady:()=>{this.positionReady=true},topLayer:true,liveUpdate:"frame",observeResize:true,observeAnchorMotion:true});this.interactionController=new n({getAnchor:()=>this.controlEl,getPopup:()=>this.popupEl,getOwnerDocument:()=>this.el.ownerDocument,onOutsideActivation:()=>this.closeMenu()})}disconnectedCallback(){this.closeMenu()}syncAvailableFields(){const e=this.availableFields.length;if(e===0){this.closeMenu();return}if(this.activeIndex>=e)this.activeIndex=e-1}syncInactive(e){if(e)this.closeMenu()}async setFocus(){this.inputEl?.focus()}get selectedFields(){return k(this.searchFields,this.selectedFieldIds)}get availableFields(){return z(this.searchFields,this.selectedFieldIds)}get visibleFields(){return F(this.availableFields,this.menuQuery)}get searchFields(){return _(this.fields)}get activeOptionId(){return this.menuOpen&&this.activeIndex>=0?`${this.componentId}-option-${this.activeIndex}`:undefined}openMenu(e){if(this.isInactive||this.menuOpen||this.availableFields.length===0)return;this.menuQuery="";if(this.inputEl)this.inputEl.value="";this.activeIndex=0;this.focusRingVisible=e;this.positionReady=false;this.menuOpen=true;requestAnimationFrame((()=>{if(!this.menuOpen)return;this.interactionController.connect();this.positionController.observe();this.positionController.schedule()}))}closeMenu(){if(!this.menuOpen&&!this.popupEl)return;if(this.popupEl?.matches(":popover-open"))this.popupEl.hidePopover();this.positionController.unobserve();this.interactionController.disconnect();this.popupEl=null;this.positionReady=false;this.availableHeight=null;this.menuOpen=false;this.menuQuery=""}handleInput(e){const s=e.target.value;if(this.menuOpen){this.menuQuery=s;this.activeIndex=F(this.availableFields,s).length?0:-1;this.focusRingVisible=false;this.positionController.schedule();return}this.dsChange.emit(s)}selectField(e){this.dsFieldsChange.emit({selectedFieldIds:[...this.selectedFieldIds,e.id]});this.announcement=`${e.label} search field added.`;this.closeMenu();requestAnimationFrame((()=>this.inputEl?.focus({preventScroll:true})))}removeLastField(){const e=this.selectedFields;const s=e[e.length-1];if(!s)return;this.dsFieldsChange.emit({selectedFieldIds:this.selectedFieldIds.filter((e=>e!==s.id))});this.announcement=`${s.label} search field removed.`}removeField(e){this.dsFieldsChange.emit({selectedFieldIds:this.selectedFieldIds.filter((s=>s!==e.id))});this.announcement=`${e.label} search field removed.`;requestAnimationFrame((()=>this.inputEl?.focus({preventScroll:true})))}clearSearch(){if(this.value)this.dsChange.emit("");if(this.selectedFieldIds.length)this.dsFieldsChange.emit({selectedFieldIds:[]});this.dsClear.emit();this.announcement="Search cleared.";this.closeMenu();requestAnimationFrame((()=>this.inputEl?.focus({preventScroll:true})))}handleKeyDown(e){if(e.key==="/"&&!this.menuOpen&&!e.altKey&&!e.ctrlKey&&!e.metaKey){e.preventDefault();this.openMenu(true);return}if(e.key==="Backspace"&&this.menuOpen&&this.menuQuery.length===0){e.preventDefault();this.closeMenu();return}if(e.key==="Backspace"&&this.value.length===0){if(this.selectedFields.length){e.preventDefault();this.removeLastField()}return}if(!this.menuOpen)return;if(e.key==="Escape"){e.preventDefault();this.closeMenu();return}if(e.key==="ArrowDown"||e.key==="ArrowUp"){e.preventDefault();this.focusRingVisible=true;this.activeIndex=C(this.activeIndex,this.visibleFields.length,e.key==="ArrowDown"?1:-1);this.el.querySelector(`#${CSS.escape(this.activeOptionId??"")}`)?.scrollIntoView({block:"nearest"});return}if(e.key==="Enter"){const s=this.visibleFields[this.activeIndex];if(!s)return;e.preventDefault();this.selectField(s);return}if(e.key==="Tab")this.closeMenu()}render(){const e=this.selectedFields;const s=this.visibleFields;const a=this.menuOpen?this.menuQuery:this.value;const r=this.value.length>0||e.length>0;const d=e.length?`Search limited to ${e.map((e=>e.label)).join(" or ")}.`:"Search includes every available table field. Type slash to choose fields.";const o={position:"fixed",left:"0",top:"0",transform:`translate(${Math.round(this.position.x)}px, ${Math.round(this.position.y)}px)`,zIndex:"var(--dimension-z-index-floating)",visibility:this.positionReady?"visible":"hidden"};if(this.availableHeight!==null){o["max-height"]=`${Math.floor(this.availableHeight)}px`}return t(i,{key:"f20d856611cc43d2af4c0efe7a5cca3fcdc4a341",class:{"data-search-host":true,"data-search-host--borderless":!this.hasBorder,"ds-control--md":true,"ds-control-inactive":this.isInactive},"data-filled":r?"":undefined,"data-expanded":this.menuOpen?"":undefined},t("div",{key:"495fb46cfa15baf0a085ab6c3193f435afddc09d",ref:e=>{this.controlEl=e??null},class:"data-search__control ds-control-frame ds-control--md ds-interaction-fill"},t("span",{key:"a2ebf844a8807d915b5e7642e010e25a3d4ca1d3",class:"data-search__icon ds-control-icon-box ds-interaction-fill__content","aria-hidden":"true"},t("ds-icon",{key:"3109fb366a35641cd021d6c604ecfbc9d0fbff97",name:"MagnifyingGlass",size:"md",color:"inherit"})),t("div",{key:"257c93d37e255ec5913bb1a0c88f8eb3e549cb4d",class:"data-search__editor ds-interaction-fill__content"},e.map((e=>t("ds-chip",{class:"data-search__chip",key:e.id,label:e.label,size:"md",state:"default",isInset:true,insetDepth:"double",isInactive:this.isInactive,onDsRemove:()=>this.removeField(e)}))),t("input",{key:"359bebc8d366d600b925b2ead3edb9a3f0f89562",ref:e=>{this.inputEl=e??null},id:this.inputId,class:"data-search__input ds-text--body-medium ds-text--regular",type:"search",role:"combobox",value:a,placeholder:this.placeholder,disabled:this.isInactive,"aria-label":this.ariaLabel,"aria-describedby":this.descriptionId,"aria-haspopup":"listbox","aria-expanded":String(this.menuOpen),"aria-controls":this.menuOpen?this.listboxId:undefined,"aria-activedescendant":this.activeOptionId,"aria-keyshortcuts":"/",autoComplete:"off",autoCapitalize:"none",autoCorrect:"off",spellcheck:false,onInput:e=>this.handleInput(e),onKeyDown:e=>this.handleKeyDown(e)})),a.length>0&&!this.isInactive&&t("ds-button-unfilled",{key:"f1537eeff4851c56996e3560f4550aec639d536e",class:"data-search__clear ds-interaction-fill__content",variant:"icon",size:"sm",icon:"CrossCircle",hasBorder:false,rounded:true,ariaLabel:this.clearLabel,onDsClick:()=>this.clearSearch()})),t("span",{key:"f9960f4979437c807e94bba53670b218cb99d2a6",id:this.descriptionId,class:"ds-visually-hidden"},d),t("span",{key:"dac05cbe2228784a3d4a6dfa509124f7084f348b",class:"ds-visually-hidden","aria-live":"polite"},this.announcement),this.menuOpen&&t("div",{key:"4dac09175462adb81379f961ffd9e45f81e1db11",popover:"manual",ref:e=>{this.popupEl=e??null},class:"data-search__popup ds-choice-popup",style:o},t("div",{key:"2edb5bb262e4b161ecce2a31b2e63001c187743d",id:this.listboxId,class:"data-search__list ds-choice-list",role:"listbox","aria-label":this.fieldMenuLabel},s.map(((e,s)=>{const a=s===this.activeIndex;return t("div",{id:`${this.componentId}-option-${s}`,key:e.id,class:{"data-search__option":true,"ds-choice-item":true,"ds-control-frame":true,"ds-control--md":true,"ds-focus-ring-inset":true,"ds-focus-ring--visible":a&&this.focusRingVisible,"ds-interaction-fill":true,"ds-interaction-fill--selected":a},role:"option","aria-selected":String(a),onMouseDown:e=>e.preventDefault(),onMouseMove:()=>{this.focusRingVisible=false;this.activeIndex=s},onClick:()=>this.selectField(e)},t("ds-text",{class:"ds-choice-item__label ds-control-label-box ds-interaction-fill__content",as:"span",variant:"text-body-medium",color:a?"primary":"secondary"},e.label))})),s.length===0&&t("div",{key:"8dc228ca4634b451a7c6259b3471802ff773a411",class:"data-search__empty ds-choice-empty ds-empty-region"},t("ds-empty-state",{key:"cd2a4ee8ac6a7a49222a8d128ae47bdbf79f4c92",body:"No matching data points"})))))}get el(){return this}static get watchers(){return{columns:[{syncAvailableFields:0}],selectedFieldIds:[{syncAvailableFields:0}],isInactive:[{syncInactive:0}]}}static get style(){return I()}},[2,"ds-data-search",{hasBorder:[516,"has-border"],value:[1],fields:[16],selectedFieldIds:[16],placeholder:[1],ariaLabel:[1,"aria-label"],clearLabel:[1,"clear-label"],fieldMenuLabel:[1,"field-menu-label"],isInactive:[4,"is-inactive"],menuOpen:[32],menuQuery:[32],activeIndex:[32],focusRingVisible:[32],position:[32],positionReady:[32],availableHeight:[32],announcement:[32],setFocus:[64]},undefined,{columns:[{syncAvailableFields:0}],selectedFieldIds:[{syncAvailableFields:0}],isInactive:[{syncInactive:0}]}]);function $(){if(typeof customElements==="undefined"){return}const e=["ds-data-search","ds-badge","ds-button-unfilled","ds-chip","ds-empty-state","ds-icon","ds-loader","ds-text","ds-tooltip"];e.forEach((e=>{switch(e){case"ds-data-search":if(!customElements.get(r(e))){customElements.define(r(e),T)}break;case"ds-badge":if(!customElements.get(r(e))){h()}break;case"ds-button-unfilled":if(!customElements.get(r(e))){p()}break;case"ds-chip":if(!customElements.get(r(e))){f()}break;case"ds-empty-state":if(!customElements.get(r(e))){v()}break;case"ds-icon":if(!customElements.get(r(e))){u()}break;case"ds-loader":if(!customElements.get(r(e))){m()}break;case"ds-text":if(!customElements.get(r(e))){g()}break;case"ds-tooltip":if(!customElements.get(r(e))){c()}break}}))}$();const j=T;const S=$;export{j as DsDataSearch,S as defineCustomElement};
2
2
  //# sourceMappingURL=ds-data-search.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["tableSearchFields","columns","resolved","seen","Set","column","isTableActionColumn","searchable","segments","length","segment","id","sortKey","trim","label","dataLabel","has","add","push","accessibleLabel","selectedTableSearchFields","fields","selectedFieldIds","byId","Map","map","field","selected","fieldId","get","availableTableSearchFields","filter","filterTableSearchFields","query","normalizedQuery","toLocaleLowerCase","includes","nextTableSearchActiveIndex","currentIndex","optionCount","direction","safeIndex","dataSearchCss","tableSearchSequence","DataSearch","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","hasBorder","value","placeholder","ariaLabel","clearLabel","fieldMenuLabel","isInactive","menuOpen","menuQuery","activeIndex","focusRingVisible","position","x","y","positionReady","availableHeight","announcement","componentId","inputId","listboxId","descriptionId","inputEl","controlEl","popupEl","positionController","AnchoredPositionController","getAnchor","getPopup","getOwnerDocument","el","ownerDocument","measure","anchor","popup","isConnected","inset","resolveCssLengthPx","TOKEN_DEFAULTS","space050","style","minWidth","menuWidthXs","choicePopupMinWidth","offsetWidth","anchorRect","getBoundingClientRect","popupWidth","popupHeight","offsetHeight","side","align","sideOffsetPx","alignOffsetPx","resolveChoicePopupAlignOffset","sectionInsetPx","viewportPadPx","viewportWidth","window","innerWidth","viewportHeight","innerHeight","collisionRect","resolveAnchoredOverlayBoundaryRect","apply","onReady","topLayer","liveUpdate","observeResize","observeAnchorMotion","interactionController","AnchoredOverlayInteractionController","onOutsideActivation","closeMenu","disconnectedCallback","syncAvailableFields","count","availableFields","syncInactive","setFocus","focus","selectedFields","searchFields","visibleFields","activeOptionId","undefined","openMenu","fromKeyboard","requestAnimationFrame","connect","observe","schedule","matches","hidePopover","unobserve","disconnect","handleInput","event","nextValue","target","dsChange","emit","selectField","dsFieldsChange","preventScroll","removeLastField","removed","removeField","clearSearch","dsClear","handleKeyDown","key","altKey","ctrlKey","metaKey","preventDefault","querySelector","CSS","escape","scrollIntoView","block","render","visible","inputValue","hasValue","description","join","popupStyle","left","top","transform","Math","round","zIndex","visibility","floor","h","Host","class","ref","element","name","size","color","state","isInset","insetDepth","onDsRemove","type","role","disabled","String","autoComplete","autoCapitalize","autoCorrect","spellcheck","onInput","onKeyDown","variant","icon","rounded","onDsClick","popover","index","active","onMouseDown","onMouseMove","onClick","as","body"],"sources":["src/wc/components/DataSearch/data-search-model.ts","src/wc/components/DataSearch/DataSearch.css?tag=ds-data-search&encapsulation=scoped","src/wc/components/DataSearch/DataSearch.tsx"],"sourcesContent":["import { isTableActionColumn } from '../Table/table-column-customizer';\nimport type { TableColumn } from '../Table/table-types';\nimport type { DataSearchField } from './data-search-types';\n\n/** Searchable data points from the table catalog, including compound header segments. */\nexport function tableSearchFields(columns: readonly TableColumn[]): DataSearchField[] {\n const resolved: DataSearchField[] = [];\n const seen = new Set<string>();\n\n for (const column of columns) {\n if (isTableActionColumn(column) || column.searchable === false) continue;\n const segments = column.segments ?? [];\n if (segments.length > 0) {\n for (const segment of segments) {\n const id = segment.sortKey.trim();\n const label = segment.dataLabel?.trim() || segment.label.trim() || id;\n if (!id || !label || segment.searchable === false || seen.has(id)) continue;\n seen.add(id);\n resolved.push({ id, label });\n }\n continue;\n }\n\n const id = column.id.trim();\n const label =\n column.dataLabel?.trim() || column.label.trim() || column.accessibleLabel?.trim() || id;\n if (!id || !label || seen.has(id)) continue;\n seen.add(id);\n resolved.push({ id, label });\n }\n\n return resolved;\n}\n\nexport function selectedTableSearchFields(\n fields: readonly DataSearchField[],\n selectedFieldIds: string[]\n): DataSearchField[] {\n const byId = new Map(fields.map(field => [field.id, field]));\n const selected: DataSearchField[] = [];\n const seen = new Set<string>();\n\n for (const fieldId of selectedFieldIds) {\n if (seen.has(fieldId)) continue;\n const field = byId.get(fieldId);\n if (!field) continue;\n seen.add(fieldId);\n selected.push(field);\n }\n\n return selected;\n}\n\nexport function availableTableSearchFields(\n fields: readonly DataSearchField[],\n selectedFieldIds: string[]\n): DataSearchField[] {\n const selected = new Set(selectedFieldIds);\n return fields.filter(field => !selected.has(field.id));\n}\n\n/** Matches the field-picker query against the complete visible label and canonical identity. */\nexport function filterTableSearchFields(\n fields: readonly DataSearchField[],\n query: string\n): DataSearchField[] {\n const normalizedQuery = query.trim().toLocaleLowerCase();\n if (!normalizedQuery) return [...fields];\n\n return fields.filter(field =>\n `${field.label} ${field.id}`.toLocaleLowerCase().includes(normalizedQuery)\n );\n}\n\nexport function nextTableSearchActiveIndex(\n currentIndex: number,\n optionCount: number,\n direction: 1 | -1\n): number {\n if (optionCount <= 0) return -1;\n const safeIndex = currentIndex >= 0 && currentIndex < optionCount ? currentIndex : 0;\n return (safeIndex + direction + optionCount) % optionCount;\n}\n","@import '../../utils/radius.css';\n@import '../../utils/choice-list.css';\n@import '../../utils/control-density-inset.css';\n@import '../../utils/typography.css';\n@import '../../utils/visually-hidden.css';\n\n:host(.data-search-host) {\n display: inline-flex;\n box-sizing: border-box;\n inline-size: 100%;\n min-inline-size: 0;\n --ds-data-search-foreground: var(--color-foreground-primary);\n --ds-data-search-adornment: var(--color-foreground-secondary);\n --ds-data-search-placeholder: var(--color-foreground-secondary);\n --ds-data-search-placeholder-active: var(--color-foreground-quaternary);\n --ds-data-search-border: var(--color-border-secondary);\n}\n\n.data-search__control {\n inline-size: 100%;\n min-inline-size: 0;\n padding-inline-end: var(--dimension-space-050);\n overflow: hidden;\n border: 0;\n background: transparent;\n color: var(--ds-data-search-foreground);\n --ds-interaction-border-width: var(--dimension-stroke-width-012);\n --ds-interaction-border-color: var(--ds-data-search-border);\n}\n\n.data-search__control:focus-within {\n --ds-interaction-border-width: var(--dimension-stroke-width-018);\n --ds-interaction-border-color: var(--color-border-bold-brand);\n}\n\n:host(.ds-control-inactive) .data-search__control::after {\n background: transparent;\n}\n\n.data-search__icon,\n.data-search__clear {\n position: relative;\n z-index: 2;\n flex: none;\n}\n\n.data-search__icon {\n color: var(--ds-data-search-adornment);\n}\n\n.data-search__editor {\n position: relative;\n z-index: 2;\n display: flex;\n flex: 1 1 auto;\n align-items: center;\n min-inline-size: 0;\n block-size: 100%;\n gap: var(--dimension-space-050);\n overflow-x: auto;\n overflow-y: hidden;\n scrollbar-width: none;\n}\n\n.data-search__editor::-webkit-scrollbar {\n display: none;\n}\n\n.data-search__chip {\n flex: none;\n max-inline-size: var(--dimension-panel-width-2xs);\n}\n\n.data-search__input {\n appearance: none;\n box-sizing: border-box;\n flex: 1 0 var(--dimension-size-600);\n min-inline-size: var(--dimension-size-600);\n block-size: 100%;\n margin: 0;\n padding: 0;\n border: 0;\n outline: 0;\n background: transparent;\n color: var(--ds-data-search-foreground);\n text-overflow: ellipsis;\n}\n\n.data-search__input::-webkit-search-cancel-button,\n.data-search__input::-webkit-search-decoration {\n display: none;\n}\n\n.data-search__input::placeholder {\n color: var(--ds-data-search-placeholder);\n}\n\n.data-search__input:focus::placeholder {\n color: var(--ds-data-search-placeholder-active);\n}\n\n.data-search__popup {\n --ds-choice-popup-min-inline-size: var(--dimension-menu-width-xs);\n}\n\n.data-search__list {\n padding: var(--dimension-space-050);\n}\n\n.data-search__option {\n flex: none;\n inline-size: 100%;\n}\n\n@media (forced-colors: active) {\n .data-search__control:focus-within::after {\n outline-color: var(--ds-forced-color-selected);\n }\n}\n\n:host(.data-search-host--borderless) .data-search__control:not(:focus-within) {\n --ds-interaction-border-width: 0px;\n}\n","import type { DataField } from '../../utils/data-field';\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport {\n choicePopupMinWidth,\n resolveChoicePopupAlignOffset,\n resolveCssLengthPx,\n TOKEN_DEFAULTS,\n} from '../../utils';\nimport { AnchoredPositionController } from '../../utils/anchored-position-controller';\nimport { AnchoredOverlayInteractionController } from '../../utils/anchored-overlay-interaction-controller';\nimport { resolveAnchoredOverlayBoundaryRect } from '../../utils/anchored-overlay-boundary';\nimport {\n availableTableSearchFields,\n filterTableSearchFields,\n nextTableSearchActiveIndex,\n selectedTableSearchFields,\n tableSearchFields,\n} from './data-search-model';\nimport type { DataSearchField, DataSearchFieldsChangeDetail } from './data-search-types';\n\nlet tableSearchSequence = 0;\n\n@Component({\n tag: 'ds-data-search',\n styleUrl: 'DataSearch.css',\n scoped: true,\n})\nexport class DataSearch {\n @Element() private el!: HTMLElement;\n\n /** Show the resting field border; keyboard focus remains visible. */\n @Prop({ reflect: true }) hasBorder: boolean = true;\n\n /** Controlled free-text query. */\n @Prop() value: string = '';\n /** Table column catalog used to derive searchable data points and their complete labels. */\n @Prop() fields: DataField[] = [];\n /** Controlled ordered field scopes rendered as Tags. */\n @Prop() selectedFieldIds: string[] = [];\n @Prop() placeholder: string = 'Search';\n @Prop({ attribute: 'aria-label' }) ariaLabel: string = 'Search table';\n @Prop() clearLabel: string = 'Clear search';\n @Prop() fieldMenuLabel: string = 'Choose search fields';\n @Prop() isInactive: boolean = false;\n\n @Event({ bubbles: false }) dsChange!: EventEmitter<string>;\n @Event({ bubbles: false }) dsFieldsChange!: EventEmitter<DataSearchFieldsChangeDetail>;\n @Event({ bubbles: false }) dsClear!: EventEmitter<void>;\n\n @State() private menuOpen = false;\n @State() private menuQuery = '';\n @State() private activeIndex = 0;\n @State() private focusRingVisible = false;\n @State() private position = { x: 0, y: 0 };\n @State() private positionReady = false;\n @State() private availableHeight: number | null = null;\n @State() private announcement = '';\n\n private readonly componentId = `ds-data-search-${++tableSearchSequence}`;\n private readonly inputId = `${this.componentId}-input`;\n private readonly listboxId = `${this.componentId}-listbox`;\n private readonly descriptionId = `${this.componentId}-description`;\n private inputEl: HTMLInputElement | null = null;\n private controlEl: HTMLElement | null = null;\n private popupEl: HTMLElement | null = null;\n\n private readonly positionController = new AnchoredPositionController({\n getAnchor: () => this.controlEl,\n getPopup: () => this.popupEl,\n getOwnerDocument: () => this.el.ownerDocument,\n measure: (anchor, popup) => {\n if (!this.menuOpen || !popup.isConnected) return null;\n const inset = resolveCssLengthPx(TOKEN_DEFAULTS.space050, TOKEN_DEFAULTS.space050);\n popup.style.minWidth = `max(var(--ds-choice-popup-min-inline-size, ${TOKEN_DEFAULTS.menuWidthXs}), ${choicePopupMinWidth(anchor.offsetWidth, inset)}px)`;\n const anchorRect = anchor.getBoundingClientRect();\n return {\n anchorRect,\n popupWidth: popup.offsetWidth,\n popupHeight: popup.offsetHeight,\n side: 'bottom',\n align: 'start',\n sideOffsetPx: inset,\n alignOffsetPx: resolveChoicePopupAlignOffset({\n align: 'start',\n alignOffsetPx: 0,\n sectionInsetPx: inset,\n }),\n viewportPadPx: inset,\n viewportWidth: window.innerWidth,\n viewportHeight: window.innerHeight,\n collisionRect: resolveAnchoredOverlayBoundaryRect(anchor),\n };\n },\n apply: ({ x, y, availableHeight }) => {\n this.position = { x, y };\n this.availableHeight = availableHeight;\n },\n onReady: () => {\n this.positionReady = true;\n },\n topLayer: true,\n liveUpdate: 'frame',\n observeResize: true,\n observeAnchorMotion: true,\n });\n\n private readonly interactionController = new AnchoredOverlayInteractionController({\n getAnchor: () => this.controlEl,\n getPopup: () => this.popupEl,\n getOwnerDocument: () => this.el.ownerDocument,\n onOutsideActivation: () => this.closeMenu(),\n });\n\n disconnectedCallback(): void {\n this.closeMenu();\n }\n\n @Watch('columns')\n @Watch('selectedFieldIds')\n syncAvailableFields(): void {\n const count = this.availableFields.length;\n if (count === 0) {\n this.closeMenu();\n return;\n }\n if (this.activeIndex >= count) this.activeIndex = count - 1;\n }\n\n @Watch('isInactive')\n syncInactive(isInactive: boolean): void {\n if (isInactive) this.closeMenu();\n }\n\n @Method()\n async setFocus(): Promise<void> {\n this.inputEl?.focus();\n }\n\n private get selectedFields(): DataSearchField[] {\n return selectedTableSearchFields(this.searchFields, this.selectedFieldIds);\n }\n\n private get availableFields(): DataSearchField[] {\n return availableTableSearchFields(this.searchFields, this.selectedFieldIds);\n }\n\n private get visibleFields(): DataSearchField[] {\n return filterTableSearchFields(this.availableFields, this.menuQuery);\n }\n\n private get searchFields(): DataSearchField[] {\n return tableSearchFields(this.fields);\n }\n\n private get activeOptionId(): string | undefined {\n return this.menuOpen && this.activeIndex >= 0\n ? `${this.componentId}-option-${this.activeIndex}`\n : undefined;\n }\n\n private openMenu(fromKeyboard: boolean): void {\n if (this.isInactive || this.menuOpen || this.availableFields.length === 0) return;\n this.menuQuery = '';\n // The native value can be ahead of the controlled prop when slash follows input\n // in the same frame, so clear it before the queued render can skip an equal value.\n if (this.inputEl) this.inputEl.value = '';\n this.activeIndex = 0;\n this.focusRingVisible = fromKeyboard;\n this.positionReady = false;\n this.menuOpen = true;\n requestAnimationFrame(() => {\n if (!this.menuOpen) return;\n this.interactionController.connect();\n this.positionController.observe();\n this.positionController.schedule();\n });\n }\n\n private closeMenu(): void {\n if (!this.menuOpen && !this.popupEl) return;\n if (this.popupEl?.matches(':popover-open')) this.popupEl.hidePopover();\n this.positionController.unobserve();\n this.interactionController.disconnect();\n this.popupEl = null;\n this.positionReady = false;\n this.availableHeight = null;\n this.menuOpen = false;\n this.menuQuery = '';\n }\n\n private handleInput(event: Event): void {\n const nextValue = (event.target as HTMLInputElement).value;\n if (this.menuOpen) {\n this.menuQuery = nextValue;\n this.activeIndex = filterTableSearchFields(this.availableFields, nextValue).length ? 0 : -1;\n this.focusRingVisible = false;\n this.positionController.schedule();\n return;\n }\n\n this.dsChange.emit(nextValue);\n }\n\n private selectField(field: DataSearchField): void {\n this.dsFieldsChange.emit({ selectedFieldIds: [...this.selectedFieldIds, field.id] });\n this.announcement = `${field.label} search field added.`;\n this.closeMenu();\n requestAnimationFrame(() => this.inputEl?.focus({ preventScroll: true }));\n }\n\n private removeLastField(): void {\n const selected = this.selectedFields;\n const removed = selected[selected.length - 1];\n if (!removed) return;\n this.dsFieldsChange.emit({\n selectedFieldIds: this.selectedFieldIds.filter(fieldId => fieldId !== removed.id),\n });\n this.announcement = `${removed.label} search field removed.`;\n }\n\n private removeField(field: DataSearchField): void {\n this.dsFieldsChange.emit({\n selectedFieldIds: this.selectedFieldIds.filter(fieldId => fieldId !== field.id),\n });\n this.announcement = `${field.label} search field removed.`;\n requestAnimationFrame(() => this.inputEl?.focus({ preventScroll: true }));\n }\n\n private clearSearch(): void {\n if (this.value) this.dsChange.emit('');\n if (this.selectedFieldIds.length) this.dsFieldsChange.emit({ selectedFieldIds: [] });\n this.dsClear.emit();\n this.announcement = 'Search cleared.';\n this.closeMenu();\n requestAnimationFrame(() => this.inputEl?.focus({ preventScroll: true }));\n }\n\n private handleKeyDown(event: KeyboardEvent): void {\n if (event.key === '/' && !this.menuOpen && !event.altKey && !event.ctrlKey && !event.metaKey) {\n event.preventDefault();\n this.openMenu(true);\n return;\n }\n\n if (event.key === 'Backspace' && this.menuOpen && this.menuQuery.length === 0) {\n event.preventDefault();\n this.closeMenu();\n return;\n }\n\n if (event.key === 'Backspace' && this.value.length === 0) {\n if (this.selectedFields.length) {\n event.preventDefault();\n this.removeLastField();\n }\n return;\n }\n\n if (!this.menuOpen) return;\n\n if (event.key === 'Escape') {\n event.preventDefault();\n this.closeMenu();\n return;\n }\n\n if (event.key === 'ArrowDown' || event.key === 'ArrowUp') {\n event.preventDefault();\n this.focusRingVisible = true;\n this.activeIndex = nextTableSearchActiveIndex(\n this.activeIndex,\n this.visibleFields.length,\n event.key === 'ArrowDown' ? 1 : -1\n );\n this.el\n .querySelector<HTMLElement>(`#${CSS.escape(this.activeOptionId ?? '')}`)\n ?.scrollIntoView({ block: 'nearest' });\n return;\n }\n\n if (event.key === 'Enter') {\n const field = this.visibleFields[this.activeIndex];\n if (!field) return;\n event.preventDefault();\n this.selectField(field);\n return;\n }\n\n if (event.key === 'Tab') this.closeMenu();\n }\n\n render() {\n const selected = this.selectedFields;\n const visible = this.visibleFields;\n const inputValue = this.menuOpen ? this.menuQuery : this.value;\n const hasValue = this.value.length > 0 || selected.length > 0;\n const description = selected.length\n ? `Search limited to ${selected.map(field => field.label).join(' or ')}.`\n : 'Search includes every available table field. Type slash to choose fields.';\n const popupStyle: Record<string, string> = {\n position: 'fixed',\n left: '0',\n top: '0',\n transform: `translate(${Math.round(this.position.x)}px, ${Math.round(this.position.y)}px)`,\n zIndex: 'var(--dimension-z-index-floating)',\n visibility: this.positionReady ? 'visible' : 'hidden',\n };\n if (this.availableHeight !== null) {\n popupStyle['max-height'] = `${Math.floor(this.availableHeight)}px`;\n }\n\n return (\n <Host\n class={{\n 'data-search-host': true,\n 'data-search-host--borderless': !this.hasBorder,\n 'ds-control--md': true,\n 'ds-control-inactive': this.isInactive,\n }}\n data-filled={hasValue ? '' : undefined}\n data-expanded={this.menuOpen ? '' : undefined}\n >\n <div\n ref={element => {\n this.controlEl = element ?? null;\n }}\n class=\"data-search__control ds-control-frame ds-control--md ds-interaction-fill\"\n >\n <span\n class=\"data-search__icon ds-control-icon-box ds-interaction-fill__content\"\n aria-hidden=\"true\"\n >\n <ds-icon name=\"MagnifyingGlass\" size=\"md\" color=\"inherit\" />\n </span>\n <div class=\"data-search__editor ds-interaction-fill__content\">\n {selected.map(field => (\n <ds-chip\n class=\"data-search__chip\"\n key={field.id}\n label={field.label}\n size=\"md\"\n state=\"default\"\n isInset\n insetDepth=\"double\"\n isInactive={this.isInactive}\n onDsRemove={() => this.removeField(field)}\n />\n ))}\n <input\n ref={element => {\n this.inputEl = element ?? null;\n }}\n id={this.inputId}\n class=\"data-search__input ds-text--body-medium ds-text--regular\"\n type=\"search\"\n role=\"combobox\"\n value={inputValue}\n placeholder={this.placeholder}\n disabled={this.isInactive}\n aria-label={this.ariaLabel}\n aria-describedby={this.descriptionId}\n aria-haspopup=\"listbox\"\n aria-expanded={String(this.menuOpen)}\n aria-controls={this.menuOpen ? this.listboxId : undefined}\n aria-activedescendant={this.activeOptionId}\n aria-keyshortcuts=\"/\"\n autoComplete=\"off\"\n autoCapitalize=\"none\"\n autoCorrect=\"off\"\n spellcheck={false}\n onInput={event => this.handleInput(event)}\n onKeyDown={event => this.handleKeyDown(event)}\n />\n </div>\n {inputValue.length > 0 && !this.isInactive && (\n <ds-button-unfilled\n class=\"data-search__clear ds-interaction-fill__content\"\n variant=\"icon\"\n size=\"sm\"\n icon=\"CrossCircle\"\n hasBorder={false}\n rounded\n ariaLabel={this.clearLabel}\n onDsClick={() => this.clearSearch()}\n />\n )}\n </div>\n <span id={this.descriptionId} class=\"ds-visually-hidden\">\n {description}\n </span>\n <span class=\"ds-visually-hidden\" aria-live=\"polite\">\n {this.announcement}\n </span>\n {this.menuOpen && (\n <div\n popover=\"manual\"\n ref={element => {\n this.popupEl = element ?? null;\n }}\n class=\"data-search__popup ds-choice-popup\"\n style={popupStyle}\n >\n <div\n id={this.listboxId}\n class=\"data-search__list ds-choice-list\"\n role=\"listbox\"\n aria-label={this.fieldMenuLabel}\n >\n {visible.map((field, index) => {\n const active = index === this.activeIndex;\n return (\n /* eslint-disable-next-line compomo/prefer-direct-ds-text -- The option owns listbox semantics and pointer interaction while ds-text remains its typography child. */\n <div\n id={`${this.componentId}-option-${index}`}\n key={field.id}\n class={{\n 'data-search__option': true,\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 role=\"option\"\n aria-selected={String(active)}\n onMouseDown={event => event.preventDefault()}\n onMouseMove={() => {\n this.focusRingVisible = false;\n this.activeIndex = index;\n }}\n onClick={() => this.selectField(field)}\n >\n <ds-text\n class=\"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 {field.label}\n </ds-text>\n </div>\n );\n })}\n {visible.length === 0 && (\n <div class=\"data-search__empty ds-choice-empty ds-empty-region\">\n <ds-empty-state body=\"No matching data points\" />\n </div>\n )}\n </div>\n </div>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["tableSearchFields","columns","resolved","seen","Set","column","isTableActionColumn","searchable","segments","length","segment","id","sortKey","trim","label","dataLabel","has","add","push","accessibleLabel","selectedTableSearchFields","fields","selectedFieldIds","byId","Map","map","field","selected","fieldId","get","availableTableSearchFields","filter","filterTableSearchFields","query","normalizedQuery","toLocaleLowerCase","includes","nextTableSearchActiveIndex","currentIndex","optionCount","direction","safeIndex","dataSearchCss","tableSearchSequence","DataSearch","__stencil_proxyCustomElement","HTMLElement","constructor","registerHost","this","hasBorder","value","placeholder","ariaLabel","clearLabel","fieldMenuLabel","isInactive","menuOpen","menuQuery","activeIndex","focusRingVisible","position","x","y","positionReady","availableHeight","announcement","componentId","inputId","listboxId","descriptionId","inputEl","controlEl","popupEl","positionController","AnchoredPositionController","getAnchor","getPopup","getOwnerDocument","el","ownerDocument","measure","anchor","popup","isConnected","inset","resolveCssLengthPx","TOKEN_DEFAULTS","space050","style","minWidth","menuWidthXs","choicePopupMinWidth","offsetWidth","anchorRect","getBoundingClientRect","popupWidth","popupHeight","offsetHeight","side","align","sideOffsetPx","alignOffsetPx","resolveChoicePopupAlignOffset","sectionInsetPx","viewportPadPx","viewportWidth","window","innerWidth","viewportHeight","innerHeight","collisionRect","resolveAnchoredOverlayBoundaryRect","apply","onReady","topLayer","liveUpdate","observeResize","observeAnchorMotion","interactionController","AnchoredOverlayInteractionController","onOutsideActivation","closeMenu","disconnectedCallback","syncAvailableFields","count","availableFields","syncInactive","setFocus","focus","selectedFields","searchFields","visibleFields","activeOptionId","undefined","openMenu","fromKeyboard","requestAnimationFrame","connect","observe","schedule","matches","hidePopover","unobserve","disconnect","handleInput","event","nextValue","target","dsChange","emit","selectField","dsFieldsChange","preventScroll","removeLastField","removed","removeField","clearSearch","dsClear","handleKeyDown","key","altKey","ctrlKey","metaKey","preventDefault","querySelector","CSS","escape","scrollIntoView","block","render","visible","inputValue","hasValue","description","join","popupStyle","left","top","transform","Math","round","zIndex","visibility","floor","h","Host","class","ref","element","name","size","color","state","isInset","insetDepth","onDsRemove","type","role","disabled","String","autoComplete","autoCapitalize","autoCorrect","spellcheck","onInput","onKeyDown","variant","icon","rounded","onDsClick","popover","index","active","onMouseDown","onMouseMove","onClick","as","body"],"sources":["src/wc/components/DataSearch/data-search-model.ts","src/wc/components/DataSearch/DataSearch.css?tag=ds-data-search&encapsulation=scoped","src/wc/components/DataSearch/DataSearch.tsx"],"sourcesContent":["import { isTableActionColumn } from '../Table/table-column-customizer';\nimport type { TableColumn } from '../Table/table-types';\nimport type { DataSearchField } from './data-search-types';\n\n/** Searchable data points from the table catalog, including compound header segments. */\nexport function tableSearchFields(columns: readonly TableColumn[]): DataSearchField[] {\n const resolved: DataSearchField[] = [];\n const seen = new Set<string>();\n\n for (const column of columns) {\n if (isTableActionColumn(column) || column.searchable === false) continue;\n const segments = column.segments ?? [];\n if (segments.length > 0) {\n for (const segment of segments) {\n const id = segment.sortKey.trim();\n const label = segment.dataLabel?.trim() || segment.label.trim() || id;\n if (!id || !label || segment.searchable === false || seen.has(id)) continue;\n seen.add(id);\n resolved.push({ id, label });\n }\n continue;\n }\n\n const id = column.id.trim();\n const label =\n column.dataLabel?.trim() || column.label.trim() || column.accessibleLabel?.trim() || id;\n if (!id || !label || seen.has(id)) continue;\n seen.add(id);\n resolved.push({ id, label });\n }\n\n return resolved;\n}\n\nexport function selectedTableSearchFields(\n fields: readonly DataSearchField[],\n selectedFieldIds: string[]\n): DataSearchField[] {\n const byId = new Map(fields.map(field => [field.id, field]));\n const selected: DataSearchField[] = [];\n const seen = new Set<string>();\n\n for (const fieldId of selectedFieldIds) {\n if (seen.has(fieldId)) continue;\n const field = byId.get(fieldId);\n if (!field) continue;\n seen.add(fieldId);\n selected.push(field);\n }\n\n return selected;\n}\n\nexport function availableTableSearchFields(\n fields: readonly DataSearchField[],\n selectedFieldIds: string[]\n): DataSearchField[] {\n const selected = new Set(selectedFieldIds);\n return fields.filter(field => !selected.has(field.id));\n}\n\n/** Matches the field-picker query against the complete visible label and canonical identity. */\nexport function filterTableSearchFields(\n fields: readonly DataSearchField[],\n query: string\n): DataSearchField[] {\n const normalizedQuery = query.trim().toLocaleLowerCase();\n if (!normalizedQuery) return [...fields];\n\n return fields.filter(field =>\n `${field.label} ${field.id}`.toLocaleLowerCase().includes(normalizedQuery)\n );\n}\n\nexport function nextTableSearchActiveIndex(\n currentIndex: number,\n optionCount: number,\n direction: 1 | -1\n): number {\n if (optionCount <= 0) return -1;\n const safeIndex = currentIndex >= 0 && currentIndex < optionCount ? currentIndex : 0;\n return (safeIndex + direction + optionCount) % optionCount;\n}\n","@import '../../utils/radius.css';\n@import '../../utils/choice-list.css';\n@import '../../utils/control-density-inset.css';\n@import '../../utils/typography.css';\n@import '../../utils/visually-hidden.css';\n\n:host(.data-search-host) {\n display: inline-flex;\n box-sizing: border-box;\n inline-size: 100%;\n min-inline-size: 0;\n --ds-data-search-foreground: var(--color-foreground-primary);\n --ds-data-search-adornment: var(--color-foreground-secondary);\n --ds-data-search-placeholder: var(--color-foreground-secondary);\n --ds-data-search-placeholder-active: var(--color-foreground-quaternary);\n --ds-data-search-border: var(--color-border-secondary);\n}\n\n.data-search__control {\n inline-size: 100%;\n min-inline-size: 0;\n padding-inline-end: var(--dimension-space-050);\n overflow: hidden;\n border: 0;\n background: transparent;\n color: var(--ds-data-search-foreground);\n --ds-interaction-border-width: var(--dimension-stroke-width-012);\n --ds-interaction-border-color: var(--ds-data-search-border);\n}\n\n.data-search__control:focus-within {\n --ds-interaction-border-width: var(--dimension-stroke-width-018);\n --ds-interaction-border-color: var(--color-border-bold-brand);\n}\n\n:host(.ds-control-inactive) .data-search__control::after {\n background: transparent;\n}\n\n.data-search__icon,\n.data-search__clear {\n position: relative;\n z-index: 2;\n flex: none;\n}\n\n.data-search__icon {\n color: var(--ds-data-search-adornment);\n}\n\n.data-search__editor {\n position: relative;\n z-index: 2;\n display: flex;\n flex: 1 1 auto;\n align-items: center;\n min-inline-size: 0;\n block-size: 100%;\n gap: var(--dimension-space-050);\n overflow-x: auto;\n overflow-y: hidden;\n scrollbar-width: none;\n}\n\n.data-search__editor::-webkit-scrollbar {\n display: none;\n}\n\n.data-search__chip {\n flex: none;\n max-inline-size: var(--dimension-panel-width-2xs);\n}\n\n.data-search__input {\n appearance: none;\n box-sizing: border-box;\n flex: 1 0 var(--dimension-size-600);\n min-inline-size: var(--dimension-size-600);\n block-size: 100%;\n margin: 0;\n padding: 0;\n border: 0;\n outline: 0;\n background: transparent;\n color: var(--ds-data-search-foreground);\n text-overflow: ellipsis;\n}\n\n.data-search__input::-webkit-search-cancel-button,\n.data-search__input::-webkit-search-decoration {\n display: none;\n}\n\n.data-search__input::placeholder {\n color: var(--ds-data-search-placeholder);\n}\n\n.data-search__input:focus::placeholder {\n color: var(--ds-data-search-placeholder-active);\n}\n\n.data-search__popup {\n --ds-choice-popup-min-inline-size: var(--dimension-menu-width-xs);\n}\n\n.data-search__list {\n padding: var(--dimension-space-050);\n}\n\n.data-search__option {\n flex: none;\n inline-size: 100%;\n}\n\n@media (forced-colors: active) {\n .data-search__control:focus-within::after {\n outline-color: var(--ds-forced-color-selected);\n }\n}\n\n:host(.data-search-host--borderless) .data-search__control:not(:focus-within) {\n --ds-interaction-border-width: 0px;\n}\n","import type { DataField } from '../../utils/data-field';\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport {\n choicePopupMinWidth,\n resolveChoicePopupAlignOffset,\n resolveCssLengthPx,\n TOKEN_DEFAULTS,\n} from '../../utils';\nimport { AnchoredPositionController } from '../../utils/anchored-position-controller';\nimport { AnchoredOverlayInteractionController } from '../../utils/anchored-overlay-interaction-controller';\nimport { resolveAnchoredOverlayBoundaryRect } from '../../utils/anchored-overlay-boundary';\nimport {\n availableTableSearchFields,\n filterTableSearchFields,\n nextTableSearchActiveIndex,\n selectedTableSearchFields,\n tableSearchFields,\n} from './data-search-model';\nimport type { DataSearchField, DataSearchFieldsChangeDetail } from './data-search-types';\n\nlet tableSearchSequence = 0;\n\n@Component({\n tag: 'ds-data-search',\n styleUrl: 'DataSearch.css',\n scoped: true,\n})\nexport class DataSearch {\n @Element() private el!: HTMLElement;\n\n /** Show the resting field border; keyboard focus remains visible. */\n @Prop({ reflect: true }) hasBorder: boolean = true;\n\n /** Controlled free-text query. */\n @Prop() value: string = '';\n /** Table column catalog used to derive searchable data points and their complete labels. */\n @Prop() fields: DataField[] = [];\n /** Controlled ordered field scopes rendered as Tags. */\n @Prop() selectedFieldIds: string[] = [];\n @Prop() placeholder: string = 'Search';\n @Prop({ attribute: 'aria-label' }) ariaLabel: string = 'Search table';\n @Prop() clearLabel: string = 'Clear search';\n @Prop() fieldMenuLabel: string = 'Choose search fields';\n @Prop() isInactive: boolean = false;\n\n @Event({ bubbles: false }) dsChange!: EventEmitter<string>;\n @Event({ bubbles: false }) dsFieldsChange!: EventEmitter<DataSearchFieldsChangeDetail>;\n @Event({ bubbles: false }) dsClear!: EventEmitter<void>;\n\n @State() private menuOpen = false;\n @State() private menuQuery = '';\n @State() private activeIndex = 0;\n @State() private focusRingVisible = false;\n @State() private position = { x: 0, y: 0 };\n @State() private positionReady = false;\n @State() private availableHeight: number | null = null;\n @State() private announcement = '';\n\n private readonly componentId = `ds-data-search-${++tableSearchSequence}`;\n private readonly inputId = `${this.componentId}-input`;\n private readonly listboxId = `${this.componentId}-listbox`;\n private readonly descriptionId = `${this.componentId}-description`;\n private inputEl: HTMLInputElement | null = null;\n private controlEl: HTMLElement | null = null;\n private popupEl: HTMLElement | null = null;\n\n private readonly positionController = new AnchoredPositionController({\n getAnchor: () => this.controlEl,\n getPopup: () => this.popupEl,\n getOwnerDocument: () => this.el.ownerDocument,\n measure: (anchor, popup) => {\n if (!this.menuOpen || !popup.isConnected) return null;\n const inset = resolveCssLengthPx(TOKEN_DEFAULTS.space050, TOKEN_DEFAULTS.space050);\n popup.style.minWidth = `max(var(--ds-choice-popup-min-inline-size, ${TOKEN_DEFAULTS.menuWidthXs}), ${choicePopupMinWidth(anchor.offsetWidth, inset)}px)`;\n const anchorRect = anchor.getBoundingClientRect();\n return {\n anchorRect,\n popupWidth: popup.offsetWidth,\n popupHeight: popup.offsetHeight,\n side: 'bottom',\n align: 'start',\n sideOffsetPx: inset,\n alignOffsetPx: resolveChoicePopupAlignOffset({\n align: 'start',\n alignOffsetPx: 0,\n sectionInsetPx: inset,\n }),\n viewportPadPx: inset,\n viewportWidth: window.innerWidth,\n viewportHeight: window.innerHeight,\n collisionRect: resolveAnchoredOverlayBoundaryRect(anchor),\n };\n },\n apply: ({ x, y, availableHeight }) => {\n this.position = { x, y };\n this.availableHeight = availableHeight;\n },\n onReady: () => {\n this.positionReady = true;\n },\n topLayer: true,\n liveUpdate: 'frame',\n observeResize: true,\n observeAnchorMotion: true,\n });\n\n private readonly interactionController = new AnchoredOverlayInteractionController({\n getAnchor: () => this.controlEl,\n getPopup: () => this.popupEl,\n getOwnerDocument: () => this.el.ownerDocument,\n onOutsideActivation: () => this.closeMenu(),\n });\n\n disconnectedCallback(): void {\n this.closeMenu();\n }\n\n @Watch('columns')\n @Watch('selectedFieldIds')\n syncAvailableFields(): void {\n const count = this.availableFields.length;\n if (count === 0) {\n this.closeMenu();\n return;\n }\n if (this.activeIndex >= count) this.activeIndex = count - 1;\n }\n\n @Watch('isInactive')\n syncInactive(isInactive: boolean): void {\n if (isInactive) this.closeMenu();\n }\n\n @Method()\n async setFocus(): Promise<void> {\n this.inputEl?.focus();\n }\n\n private get selectedFields(): DataSearchField[] {\n return selectedTableSearchFields(this.searchFields, this.selectedFieldIds);\n }\n\n private get availableFields(): DataSearchField[] {\n return availableTableSearchFields(this.searchFields, this.selectedFieldIds);\n }\n\n private get visibleFields(): DataSearchField[] {\n return filterTableSearchFields(this.availableFields, this.menuQuery);\n }\n\n private get searchFields(): DataSearchField[] {\n return tableSearchFields(this.fields);\n }\n\n private get activeOptionId(): string | undefined {\n return this.menuOpen && this.activeIndex >= 0\n ? `${this.componentId}-option-${this.activeIndex}`\n : undefined;\n }\n\n private openMenu(fromKeyboard: boolean): void {\n if (this.isInactive || this.menuOpen || this.availableFields.length === 0) return;\n this.menuQuery = '';\n // The native value can be ahead of the controlled prop when slash follows input\n // in the same frame, so clear it before the queued render can skip an equal value.\n if (this.inputEl) this.inputEl.value = '';\n this.activeIndex = 0;\n this.focusRingVisible = fromKeyboard;\n this.positionReady = false;\n this.menuOpen = true;\n requestAnimationFrame(() => {\n if (!this.menuOpen) return;\n this.interactionController.connect();\n this.positionController.observe();\n this.positionController.schedule();\n });\n }\n\n private closeMenu(): void {\n if (!this.menuOpen && !this.popupEl) return;\n if (this.popupEl?.matches(':popover-open')) this.popupEl.hidePopover();\n this.positionController.unobserve();\n this.interactionController.disconnect();\n this.popupEl = null;\n this.positionReady = false;\n this.availableHeight = null;\n this.menuOpen = false;\n this.menuQuery = '';\n }\n\n private handleInput(event: Event): void {\n const nextValue = (event.target as HTMLInputElement).value;\n if (this.menuOpen) {\n this.menuQuery = nextValue;\n this.activeIndex = filterTableSearchFields(this.availableFields, nextValue).length ? 0 : -1;\n this.focusRingVisible = false;\n this.positionController.schedule();\n return;\n }\n\n this.dsChange.emit(nextValue);\n }\n\n private selectField(field: DataSearchField): void {\n this.dsFieldsChange.emit({ selectedFieldIds: [...this.selectedFieldIds, field.id] });\n this.announcement = `${field.label} search field added.`;\n this.closeMenu();\n requestAnimationFrame(() => this.inputEl?.focus({ preventScroll: true }));\n }\n\n private removeLastField(): void {\n const selected = this.selectedFields;\n const removed = selected[selected.length - 1];\n if (!removed) return;\n this.dsFieldsChange.emit({\n selectedFieldIds: this.selectedFieldIds.filter(fieldId => fieldId !== removed.id),\n });\n this.announcement = `${removed.label} search field removed.`;\n }\n\n private removeField(field: DataSearchField): void {\n this.dsFieldsChange.emit({\n selectedFieldIds: this.selectedFieldIds.filter(fieldId => fieldId !== field.id),\n });\n this.announcement = `${field.label} search field removed.`;\n requestAnimationFrame(() => this.inputEl?.focus({ preventScroll: true }));\n }\n\n private clearSearch(): void {\n if (this.value) this.dsChange.emit('');\n if (this.selectedFieldIds.length) this.dsFieldsChange.emit({ selectedFieldIds: [] });\n this.dsClear.emit();\n this.announcement = 'Search cleared.';\n this.closeMenu();\n requestAnimationFrame(() => this.inputEl?.focus({ preventScroll: true }));\n }\n\n private handleKeyDown(event: KeyboardEvent): void {\n if (event.key === '/' && !this.menuOpen && !event.altKey && !event.ctrlKey && !event.metaKey) {\n event.preventDefault();\n this.openMenu(true);\n return;\n }\n\n if (event.key === 'Backspace' && this.menuOpen && this.menuQuery.length === 0) {\n event.preventDefault();\n this.closeMenu();\n return;\n }\n\n if (event.key === 'Backspace' && this.value.length === 0) {\n if (this.selectedFields.length) {\n event.preventDefault();\n this.removeLastField();\n }\n return;\n }\n\n if (!this.menuOpen) return;\n\n if (event.key === 'Escape') {\n event.preventDefault();\n this.closeMenu();\n return;\n }\n\n if (event.key === 'ArrowDown' || event.key === 'ArrowUp') {\n event.preventDefault();\n this.focusRingVisible = true;\n this.activeIndex = nextTableSearchActiveIndex(\n this.activeIndex,\n this.visibleFields.length,\n event.key === 'ArrowDown' ? 1 : -1\n );\n this.el\n .querySelector<HTMLElement>(`#${CSS.escape(this.activeOptionId ?? '')}`)\n ?.scrollIntoView({ block: 'nearest' });\n return;\n }\n\n if (event.key === 'Enter') {\n const field = this.visibleFields[this.activeIndex];\n if (!field) return;\n event.preventDefault();\n this.selectField(field);\n return;\n }\n\n if (event.key === 'Tab') this.closeMenu();\n }\n\n render() {\n const selected = this.selectedFields;\n const visible = this.visibleFields;\n const inputValue = this.menuOpen ? this.menuQuery : this.value;\n const hasValue = this.value.length > 0 || selected.length > 0;\n const description = selected.length\n ? `Search limited to ${selected.map(field => field.label).join(' or ')}.`\n : 'Search includes every available table field. Type slash to choose fields.';\n const popupStyle: Record<string, string> = {\n position: 'fixed',\n left: '0',\n top: '0',\n transform: `translate(${Math.round(this.position.x)}px, ${Math.round(this.position.y)}px)`,\n zIndex: 'var(--dimension-z-index-floating)',\n visibility: this.positionReady ? 'visible' : 'hidden',\n };\n if (this.availableHeight !== null) {\n popupStyle['max-height'] = `${Math.floor(this.availableHeight)}px`;\n }\n\n return (\n <Host\n class={{\n 'data-search-host': true,\n 'data-search-host--borderless': !this.hasBorder,\n 'ds-control--md': true,\n 'ds-control-inactive': this.isInactive,\n }}\n data-filled={hasValue ? '' : undefined}\n data-expanded={this.menuOpen ? '' : undefined}\n >\n <div\n ref={element => {\n this.controlEl = element ?? null;\n }}\n class=\"data-search__control ds-control-frame ds-control--md ds-interaction-fill\"\n >\n <span\n class=\"data-search__icon ds-control-icon-box ds-interaction-fill__content\"\n aria-hidden=\"true\"\n >\n <ds-icon name=\"MagnifyingGlass\" size=\"md\" color=\"inherit\" />\n </span>\n <div class=\"data-search__editor ds-interaction-fill__content\">\n {selected.map(field => (\n <ds-chip\n class=\"data-search__chip\"\n key={field.id}\n label={field.label}\n size=\"md\"\n state=\"default\"\n isInset\n insetDepth=\"double\"\n isInactive={this.isInactive}\n onDsRemove={() => this.removeField(field)}\n />\n ))}\n <input\n ref={element => {\n this.inputEl = element ?? null;\n }}\n id={this.inputId}\n class=\"data-search__input ds-text--body-medium ds-text--regular\"\n type=\"search\"\n role=\"combobox\"\n value={inputValue}\n placeholder={this.placeholder}\n disabled={this.isInactive}\n aria-label={this.ariaLabel}\n aria-describedby={this.descriptionId}\n aria-haspopup=\"listbox\"\n aria-expanded={String(this.menuOpen)}\n aria-controls={this.menuOpen ? this.listboxId : undefined}\n aria-activedescendant={this.activeOptionId}\n aria-keyshortcuts=\"/\"\n autoComplete=\"off\"\n autoCapitalize=\"none\"\n autoCorrect=\"off\"\n spellcheck={false}\n onInput={event => this.handleInput(event)}\n onKeyDown={event => this.handleKeyDown(event)}\n />\n </div>\n {inputValue.length > 0 && !this.isInactive && (\n <ds-button-unfilled\n class=\"data-search__clear ds-interaction-fill__content\"\n variant=\"icon\"\n size=\"sm\"\n icon=\"CrossCircle\"\n hasBorder={false}\n rounded\n ariaLabel={this.clearLabel}\n onDsClick={() => this.clearSearch()}\n />\n )}\n </div>\n <span id={this.descriptionId} class=\"ds-visually-hidden\">\n {description}\n </span>\n <span class=\"ds-visually-hidden\" aria-live=\"polite\">\n {this.announcement}\n </span>\n {this.menuOpen && (\n <div\n popover=\"manual\"\n ref={element => {\n this.popupEl = element ?? null;\n }}\n class=\"data-search__popup ds-choice-popup\"\n style={popupStyle}\n >\n <div\n id={this.listboxId}\n class=\"data-search__list ds-choice-list\"\n role=\"listbox\"\n aria-label={this.fieldMenuLabel}\n >\n {visible.map((field, index) => {\n const active = index === this.activeIndex;\n return (\n /* eslint-disable-next-line compomo/prefer-direct-ds-text -- The option owns listbox semantics and pointer interaction while ds-text remains its typography child. */\n <div\n id={`${this.componentId}-option-${index}`}\n key={field.id}\n class={{\n 'data-search__option': true,\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 role=\"option\"\n aria-selected={String(active)}\n onMouseDown={event => event.preventDefault()}\n onMouseMove={() => {\n this.focusRingVisible = false;\n this.activeIndex = index;\n }}\n onClick={() => this.selectField(field)}\n >\n <ds-text\n class=\"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 {field.label}\n </ds-text>\n </div>\n );\n })}\n {visible.length === 0 && (\n <div class=\"data-search__empty ds-choice-empty ds-empty-region\">\n <ds-empty-state body=\"No matching data points\" />\n </div>\n )}\n </div>\n </div>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- import{p as s,H as t,c as e,h as i,a,t as o}from"./index.js";import{a as n,d as r,n as l,b as d}from"./p-DlCLfwP4.js";import{d as c}from"./p-BWJb2rih.js";import{d as h}from"./p-pJ6gbwSa.js";import{d as m}from"./p-pPtjNRqC.js";import{d as f}from"./p-0XTyQNRG.js";import{d as u}from"./p-BPDo1eQV.js";import{d as p}from"./p-eKnJNQtL.js";import{d as b}from"./p-C2e7BkNn.js";import{d as k}from"./p-CKSJwSWd.js";import{d as E}from"./p-BbvAWFJA.js";import{d as g}from"./p-BJf49edB.js";const j=()=>`.sc-ds-data-sort-h{display:inline-flex;min-inline-size:0;max-inline-size:var(--dimension-menu-width-xs)}[hidden].sc-ds-data-sort-h{display:none}`;let S=0;const w=s(class s extends t{constructor(s){super();if(s!==false){this.__registerHost()}this.dsSortChange=e(this,"dsSortChange",3);this.hasBorder=true;this.fields=[];this.sort=null;this.ariaLabel=null;this.menuOpen=false;this.menuSurfaceOpen=false;this.initialFocusVisible=false;this.componentId=`ds-data-sort-${++S}`;this.triggerId=`${this.componentId}-trigger`;this.menuId=`${this.componentId}-menu`}async setFocus(){const s=this.el.querySelector(`#${CSS.escape(this.triggerId)}`);await(s?.setFocus?.())}render(){const s=n(this.fields);const t=this.ariaLabel?.trim()||"Sort table";return i(a,{key:"663b9183d1cc112203f5954cde51fe66989e4815",hidden:s.length===0?true:undefined},s.length===0?null:i("ds-button-unfilled",{hasBorder:this.hasBorder,id:this.triggerId,variant:"icon-label",size:"md",icon:"ArrowsVertical",label:"Sort",labelEmphasis:false,pressScale:false,"aria-label":t,haspopup:"menu",collapseLabel:true,expanded:this.menuOpen,surfaceOpen:this.menuSurfaceOpen,controls:this.menuId,onDsClick:s=>{this.toggle(s.detail.detail===0)}}),s.length===0?null:i("ds-menu",{id:this.menuId,open:this.menuOpen,anchorId:this.triggerId,align:"start",side:"bottom",menuLabel:t,selectionMode:"none",initialFocusVisible:this.initialFocusVisible,sections:r(this.fields,this.sort),onDsClose:()=>this.close(),onDsAfterClose:()=>{if(!this.menuOpen)this.menuSurfaceOpen=false},onDsSelect:s=>this.handleSelect(s.detail)}))}toggle(s=false){if(this.menuOpen)this.close();else this.open(s)}open(s=false){if(this.menuOpen)return;this.initialFocusVisible=s;this.menuOpen=true;this.menuSurfaceOpen=true}close(){this.menuOpen=false}handleSelect(s){const t=l(this.fields,this.sort,s);if(d(this.sort,t))return;this.dsSortChange.emit({sort:t})}get el(){return this}static get style(){return j()}},[2,"ds-data-sort",{hasBorder:[4,"has-border"],fields:[16],sort:[16],ariaLabel:[1,"aria-label"],menuOpen:[32],menuSurfaceOpen:[32],initialFocusVisible:[32],setFocus:[64]}]);function x(){if(typeof customElements==="undefined"){return}const s=["ds-data-sort","ds-badge","ds-button-unfilled","ds-icon","ds-loader","ds-menu","ds-swatch-picker","ds-switch","ds-tag","ds-text","ds-tooltip"];s.forEach((s=>{switch(s){case"ds-data-sort":if(!customElements.get(o(s))){customElements.define(o(s),w)}break;case"ds-badge":if(!customElements.get(o(s))){c()}break;case"ds-button-unfilled":if(!customElements.get(o(s))){h()}break;case"ds-icon":if(!customElements.get(o(s))){m()}break;case"ds-loader":if(!customElements.get(o(s))){f()}break;case"ds-menu":if(!customElements.get(o(s))){u()}break;case"ds-swatch-picker":if(!customElements.get(o(s))){p()}break;case"ds-switch":if(!customElements.get(o(s))){b()}break;case"ds-tag":if(!customElements.get(o(s))){k()}break;case"ds-text":if(!customElements.get(o(s))){E()}break;case"ds-tooltip":if(!customElements.get(o(s))){g()}break}}))}x();const C=w;const B=x;export{C as DsDataSort,B as defineCustomElement};
1
+ import{p as s,H as t,c as e,h as i,a,t as o}from"./index.js";import{a as n,d as r,n as l,b as d}from"./p-CJuc20pQ.js";import{d as c}from"./p-BWJb2rih.js";import{d as h}from"./p-kL4EOsx5.js";import{d as m}from"./p-BVsVUnAw.js";import{d as u}from"./p-0XTyQNRG.js";import{d as f}from"./p-DHpcv_Os.js";import{d as p}from"./p-eKnJNQtL.js";import{d as b}from"./p-C2e7BkNn.js";import{d as k}from"./p-BWnL2SWn.js";import{d as E}from"./p-BbvAWFJA.js";import{d as g}from"./p-BJf49edB.js";const j=()=>`.sc-ds-data-sort-h{display:inline-flex;min-inline-size:0;max-inline-size:var(--dimension-menu-width-xs)}[hidden].sc-ds-data-sort-h{display:none}`;let x=0;const S=s(class s extends t{constructor(s){super();if(s!==false){this.__registerHost()}this.dsSortChange=e(this,"dsSortChange",3);this.hasBorder=true;this.fields=[];this.sort=null;this.ariaLabel=null;this.menuOpen=false;this.menuSurfaceOpen=false;this.initialFocusVisible=false;this.componentId=`ds-data-sort-${++x}`;this.triggerId=`${this.componentId}-trigger`;this.menuId=`${this.componentId}-menu`}async setFocus(){const s=this.el.querySelector(`#${CSS.escape(this.triggerId)}`);await(s?.setFocus?.())}render(){const s=n(this.fields);const t=this.ariaLabel?.trim()||"Sort table";return i(a,{key:"663b9183d1cc112203f5954cde51fe66989e4815",hidden:s.length===0?true:undefined},s.length===0?null:i("ds-button-unfilled",{hasBorder:this.hasBorder,id:this.triggerId,variant:"icon-label",size:"md",icon:"ArrowsVertical",label:"Sort",labelEmphasis:false,pressScale:false,"aria-label":t,haspopup:"menu",collapseLabel:true,expanded:this.menuOpen,surfaceOpen:this.menuSurfaceOpen,controls:this.menuId,onDsClick:s=>{this.toggle(s.detail.detail===0)}}),s.length===0?null:i("ds-menu",{id:this.menuId,open:this.menuOpen,anchorId:this.triggerId,align:"start",side:"bottom",menuLabel:t,selectionMode:"none",initialFocusVisible:this.initialFocusVisible,sections:r(this.fields,this.sort),onDsClose:()=>this.close(),onDsAfterClose:()=>{if(!this.menuOpen)this.menuSurfaceOpen=false},onDsSelect:s=>this.handleSelect(s.detail)}))}toggle(s=false){if(this.menuOpen)this.close();else this.open(s)}open(s=false){if(this.menuOpen)return;this.initialFocusVisible=s;this.menuOpen=true;this.menuSurfaceOpen=true}close(){this.menuOpen=false}handleSelect(s){const t=l(this.fields,this.sort,s);if(d(this.sort,t))return;this.dsSortChange.emit({sort:t})}get el(){return this}static get style(){return j()}},[2,"ds-data-sort",{hasBorder:[4,"has-border"],fields:[16],sort:[16],ariaLabel:[1,"aria-label"],menuOpen:[32],menuSurfaceOpen:[32],initialFocusVisible:[32],setFocus:[64]}]);function w(){if(typeof customElements==="undefined"){return}const s=["ds-data-sort","ds-badge","ds-button-unfilled","ds-icon","ds-loader","ds-menu","ds-swatch-picker","ds-switch","ds-tag","ds-text","ds-tooltip"];s.forEach((s=>{switch(s){case"ds-data-sort":if(!customElements.get(o(s))){customElements.define(o(s),S)}break;case"ds-badge":if(!customElements.get(o(s))){c()}break;case"ds-button-unfilled":if(!customElements.get(o(s))){h()}break;case"ds-icon":if(!customElements.get(o(s))){m()}break;case"ds-loader":if(!customElements.get(o(s))){u()}break;case"ds-menu":if(!customElements.get(o(s))){f()}break;case"ds-swatch-picker":if(!customElements.get(o(s))){p()}break;case"ds-switch":if(!customElements.get(o(s))){b()}break;case"ds-tag":if(!customElements.get(o(s))){k()}break;case"ds-text":if(!customElements.get(o(s))){E()}break;case"ds-tooltip":if(!customElements.get(o(s))){g()}break}}))}w();const B=S;const y=w;export{B as DsDataSort,y as defineCustomElement};
2
2
  //# sourceMappingURL=ds-data-sort.js.map
@@ -1,2 +1,2 @@
1
- import{E as o,d as s}from"./p-CqAC2IQO.js";const t=o;const p=s;export{t as DsEmptyState,p as defineCustomElement};
1
+ import{E as o,d as s}from"./p-BcmJBzB6.js";const t=o;const c=s;export{t as DsEmptyState,c as defineCustomElement};
2
2
  //# sourceMappingURL=ds-empty-state.js.map
@@ -1,2 +1,2 @@
1
- import{F as o,d as s}from"./p-DmgDVoDb.js";const t=o;const m=s;export{t as DsFilterMenu,m as defineCustomElement};
1
+ import{F as o,d as s}from"./p-CG4vPDhg.js";const t=o;const p=s;export{t as DsFilterMenu,p as defineCustomElement};
2
2
  //# sourceMappingURL=ds-filter-menu.js.map
@@ -1,2 +1,2 @@
1
- import{I as o,d as s}from"./p-pPtjNRqC.js";const t=o;const p=s;export{t as DsIcon,p as defineCustomElement};
1
+ import{I as s,d as o}from"./p-BVsVUnAw.js";const t=s;const n=o;export{t as DsIcon,n as defineCustomElement};
2
2
  //# sourceMappingURL=ds-icon.js.map
@@ -1,2 +1,2 @@
1
- import{I as o,d as s}from"./p-CCsxoztj.js";const t=o;const p=s;export{t as DsInputDate,p as defineCustomElement};
1
+ import{I as o,d as s}from"./p-SXaH5TeC.js";const t=o;const a=s;export{t as DsInputDate,a as defineCustomElement};
2
2
  //# sourceMappingURL=ds-input-date.js.map
@@ -1,2 +1,2 @@
1
- import{I as o,d as s}from"./p-Bdp2V6-c.js";const p=o;const t=s;export{p as DsInputTime,t as defineCustomElement};
1
+ import{I as o,d as s}from"./p-zopMP2ze.js";const p=o;const t=s;export{p as DsInputTime,t as defineCustomElement};
2
2
  //# sourceMappingURL=ds-input-time.js.map
@@ -1,2 +1,2 @@
1
- import{I as o,d as s}from"./p-CXB_T13u.js";const t=o;const p=s;export{t as DsInput,p as defineCustomElement};
1
+ import{I as o,d as s}from"./p-Tf6odBOV.js";const t=o;const p=s;export{t as DsInput,p as defineCustomElement};
2
2
  //# sourceMappingURL=ds-input.js.map
@@ -1,2 +1,2 @@
1
- import{p as e,H as r,c as t,h as a,a as s,t as i}from"./index.js";import{d as o}from"./p-pPtjNRqC.js";import{d as n}from"./p-BbvAWFJA.js";const c=()=>`@media (forced-colors: active){.sc-ds-map-entity-marker:root,.sc-ds-map-entity-marker-h,.ds-forced-colors-scope.sc-ds-map-entity-marker{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.sc-ds-map-entity-marker-h{--ds-focus-ring-width:var(--dimension-stroke-width-025, 2px);--ds-focus-ring-offset:var(--dimension-space-025, 2px);--ds-focus-ring-color:var(--color-interaction-focus)}.ds-focus-ring.sc-ds-map-entity-marker-h,.ds-focus-ring.sc-ds-map-entity-marker,.ds-focus-ring-inset.sc-ds-map-entity-marker-h,.ds-focus-ring-inset.sc-ds-map-entity-marker{outline:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.ds-focus-ring.sc-ds-map-entity-marker-h:focus-visible,.ds-focus-ring.sc-ds-map-entity-marker:focus-visible{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring.ds-focus-ring--visible.sc-ds-map-entity-marker-h,.ds-focus-ring.ds-focus-ring--visible.sc-ds-map-entity-marker{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring-inset.sc-ds-map-entity-marker-h:focus-visible,.ds-focus-ring-inset.sc-ds-map-entity-marker:focus-visible{outline:none}.ds-focus-ring-inset.sc-ds-map-entity-marker-h:focus-visible::after,.ds-focus-ring-inset.sc-ds-map-entity-marker:focus-visible::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-map-entity-marker-h,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-map-entity-marker{outline:none}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-map-entity-marker-h::after,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-map-entity-marker::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}@media (forced-colors: active){.sc-ds-map-entity-marker-h{--ds-focus-ring-color:var(--ds-forced-color-selected)}}.sc-ds-map-entity-marker-h{--_map-marker-background:var(--color-entity-marker-background-in-motion);--_map-marker-foreground:var(--color-entity-marker-foreground);--_map-marker-interaction-hover:var(--color-entity-marker-interaction-hover);--_map-marker-interaction-pressed:var(--color-entity-marker-interaction-pressed);position:relative;display:inline-flex;width:max-content;overflow:visible;vertical-align:middle;transition:var(--effect-transition-interaction-opacity-short-2)}.map-marker--dimmed.sc-ds-map-entity-marker-h{opacity:var(--effect-opacity-medium)}.map-marker--dimmed.sc-ds-map-entity-marker-h:focus-within{opacity:1}.map-marker__button.sc-ds-map-entity-marker{all:unset;position:relative;z-index:0;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:var(--dimension-size-300);min-width:var(--dimension-size-300);overflow:hidden;color:var(--_map-marker-foreground);background:var(--_map-marker-background);box-shadow:0 0 0 var(--dimension-stroke-width-012) var(--color-border-tertiary);cursor:pointer;transition:var(--effect-transition-interaction-opacity-short-2)}.map-marker__button.sc-ds-map-entity-marker::before{content:'';position:absolute;z-index:1;inset:0;border-radius:inherit;pointer-events:none}.map-marker__button.sc-ds-map-entity-marker::after{content:'';position:absolute;z-index:3;inset:0;border-radius:inherit;outline:var(--dimension-stroke-width-018) solid currentColor;outline-offset:calc(-1 * var(--dimension-stroke-width-037));pointer-events:none}.map-marker__caption.sc-ds-map-entity-marker{position:absolute;z-index:2;top:calc(100% + var(--dimension-space-050));left:50%;display:none;box-sizing:border-box;align-items:center;justify-content:center;width:max-content;max-width:calc(var(--dimension-size-800) * 4);height:var(--dimension-size-200);padding:0 var(--dimension-space-050);overflow:visible;border-radius:var(--dimension-radius-025);color:var(--_map-marker-foreground);background:var(--_map-marker-background);pointer-events:none;transform:translateX(-50%);line-height:0;white-space:nowrap}.sc-ds-map-entity-marker-h:focus-within .map-marker__caption.sc-ds-map-entity-marker{display:inline-flex}@media (hover: hover) and (pointer: fine){.map-marker--dimmed.sc-ds-map-entity-marker-h:hover{opacity:1}.sc-ds-map-entity-marker-h:hover .map-marker__caption.sc-ds-map-entity-marker{display:inline-flex}.map-marker__button.sc-ds-map-entity-marker:hover::before{background:var(--_map-marker-interaction-hover)}}.map-marker__button.sc-ds-map-entity-marker:active::before{background:var(--_map-marker-interaction-pressed)}@media (forced-colors: active){.map-marker__button.sc-ds-map-entity-marker{border:var(--dimension-stroke-width-012) solid var(--ds-forced-color-control-boundary);color:var(--ds-forced-color-content);background:var(--ds-forced-color-surface);box-shadow:none}.map-marker__button.sc-ds-map-entity-marker::before{display:none}.map-marker__button.sc-ds-map-entity-marker::after{outline-color:var(--ds-forced-color-control-boundary)}.map-marker__caption.sc-ds-map-entity-marker{border:var(--dimension-stroke-width-012) solid var(--ds-forced-color-control-boundary);color:var(--ds-forced-color-content);background:var(--ds-forced-color-surface)}}[state='moving'].sc-ds-map-entity-marker-h{--_map-marker-background:var(--color-entity-marker-background-in-motion)}[state='idling'].sc-ds-map-entity-marker-h{--_map-marker-background:var(--color-entity-marker-background-idling)}[state='stationary'].sc-ds-map-entity-marker-h{--_map-marker-background:var(--color-entity-marker-background-stationary)}[state='immobilized'].sc-ds-map-entity-marker-h{--_map-marker-background:var(--color-entity-marker-background-immobilized)}[state='unknown'].sc-ds-map-entity-marker-h{--_map-marker-background:var(--color-entity-marker-background-stale)}.map-marker__button.sc-ds-map-entity-marker{width:var(--dimension-size-300);border-radius:var(--dimension-radius-half)}.map-entity-marker--dashed.sc-ds-map-entity-marker-h .map-marker__button.sc-ds-map-entity-marker::after{display:none}.map-entity-marker__dashed-outline.sc-ds-map-entity-marker{position:absolute;z-index:3;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;transform:rotate(-90deg);fill:none;stroke:currentcolor;stroke-width:1;stroke-linecap:butt}.map-entity-marker__glyph.sc-ds-map-entity-marker{position:relative;z-index:2;display:inline-flex;transform:rotate(var(--ds-map-entity-marker-bearing))}@media (forced-colors: active){.map-entity-marker--dashed.sc-ds-map-entity-marker-h .map-marker__button.sc-ds-map-entity-marker::after{display:block;outline-style:dashed}.map-entity-marker__dashed-outline.sc-ds-map-entity-marker{display:none}}`;const d=e=>{if(!Number.isFinite(e))return 0;return(e%360+360)%360};const m=new Set(["MapEntityTravelGroup","MapEntityVehicle"]);const l=8;const p=6.5;const f=45;const u=6;const k=e=>{const r=e*Math.PI/180;return[l+p*Math.cos(r),l+p*Math.sin(r)]};const h=Array.from({length:8},((e,r)=>{const t=r*f+u;const a=(r+1)*f-u;const[s,i]=k(t);const[o,n]=k(a);return`M ${s.toFixed(3)} ${i.toFixed(3)} A ${p} ${p} 0 0 1 ${o.toFixed(3)} ${n.toFixed(3)}`})).join(" ");const y=e(class e extends r{constructor(e){super();if(e!==false){this.__registerHost()}this.dsClick=t(this,"dsClick",7);this.caption="";this.icon="MapEntityTravelGroup";this.state="moving";this.dashed=false;this.bearing=0;this.dimmed=false;this.handleClick=e=>{this.dsClick.emit(e)}}async setFocus(){this.buttonEl?.focus()}render(){const e=this.caption.trim();const r=this.state==="immobilized"&&this.icon==="MapEntityVehicle"?"MapKey":this.icon;const t=m.has(r)?d(this.bearing):0;return a(s,{key:"2ed79e19e01ae1e4c7989f6630a2b375fe8093d0",class:{"map-entity-marker":true,"map-marker--dimmed":this.dimmed,"map-entity-marker--dashed":this.dashed}},a("button",{key:"8ad7fbf18c13986abc351dee13f3ff03d73621fd",ref:e=>this.buttonEl=e,type:"button",class:"map-marker__button ds-focus-ring","aria-label":this.label,onClick:this.handleClick},a("span",{key:"093bcc1775efbab22d15a660b46c77f0f2c4d7ec",class:"map-entity-marker__glyph",style:{"--ds-map-entity-marker-bearing":`${t}deg`},"aria-hidden":"true"},a("ds-icon",{key:"a5bff120a90cf5b356a452b479d9f0b658082d05",name:r,size:"sm",color:"inherit"})),this.dashed&&a("svg",{key:"3514526bcc41400f1bd68c9a98814a5ed8ddf332",class:"map-entity-marker__dashed-outline",viewBox:"0 0 16 16","aria-hidden":"true"},a("path",{key:"0041525d5364842c78240a547c6a08abdc07d132",d:h}))),e&&a("ds-text",{key:"42745fdca1762c1d0817309f2f0e5fa5f4bae113",class:"map-marker__caption",as:"span",variant:"text-caption",color:"inherit","aria-hidden":"true"},e))}static get style(){return c()}},[2,"ds-map-entity-marker",{label:[1],caption:[1],icon:[1],state:[513],dashed:[516],bearing:[2],dimmed:[516],setFocus:[64]}]);function b(){if(typeof customElements==="undefined"){return}const e=["ds-map-entity-marker","ds-icon","ds-text"];e.forEach((e=>{switch(e){case"ds-map-entity-marker":if(!customElements.get(i(e))){customElements.define(i(e),y)}break;case"ds-icon":if(!customElements.get(i(e))){o()}break;case"ds-text":if(!customElements.get(i(e))){n()}break}}))}b();const v=y;const g=b;export{v as DsMapEntityMarker,g as defineCustomElement};
1
+ import{p as e,H as r,c as t,h as a,a as s,t as i}from"./index.js";import{d as o}from"./p-BVsVUnAw.js";import{d as n}from"./p-BbvAWFJA.js";const c=()=>`@media (forced-colors: active){.sc-ds-map-entity-marker:root,.sc-ds-map-entity-marker-h,.ds-forced-colors-scope.sc-ds-map-entity-marker{--ds-forced-color-surface:Canvas;--ds-forced-color-content:CanvasText;--ds-forced-color-control-boundary:ButtonText;--ds-forced-color-selected:Highlight;--ds-forced-color-on-selected:HighlightText;--ds-forced-color-disabled:GrayText}}.sc-ds-map-entity-marker-h{--ds-focus-ring-width:var(--dimension-stroke-width-025, 2px);--ds-focus-ring-offset:var(--dimension-space-025, 2px);--ds-focus-ring-color:var(--color-interaction-focus)}.ds-focus-ring.sc-ds-map-entity-marker-h,.ds-focus-ring.sc-ds-map-entity-marker,.ds-focus-ring-inset.sc-ds-map-entity-marker-h,.ds-focus-ring-inset.sc-ds-map-entity-marker{outline:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.ds-focus-ring.sc-ds-map-entity-marker-h:focus-visible,.ds-focus-ring.sc-ds-map-entity-marker:focus-visible{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring.ds-focus-ring--visible.sc-ds-map-entity-marker-h,.ds-focus-ring.ds-focus-ring--visible.sc-ds-map-entity-marker{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:var(--ds-focus-ring-offset)}.ds-focus-ring-inset.sc-ds-map-entity-marker-h:focus-visible,.ds-focus-ring-inset.sc-ds-map-entity-marker:focus-visible{outline:none}.ds-focus-ring-inset.sc-ds-map-entity-marker-h:focus-visible::after,.ds-focus-ring-inset.sc-ds-map-entity-marker:focus-visible::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-map-entity-marker-h,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-map-entity-marker{outline:none}.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-map-entity-marker-h::after,.ds-focus-ring-inset.ds-focus-ring--visible.sc-ds-map-entity-marker::after{outline:var(--ds-focus-ring-width) solid var(--ds-focus-ring-color);outline-offset:calc(-1 * var(--ds-focus-ring-width))}@media (forced-colors: active){.sc-ds-map-entity-marker-h{--ds-focus-ring-color:var(--ds-forced-color-selected)}}.sc-ds-map-entity-marker-h{--_map-marker-background:var(--color-entity-marker-background-in-motion);--_map-marker-foreground:var(--color-entity-marker-foreground);--_map-marker-interaction-hover:var(--color-entity-marker-interaction-hover);--_map-marker-interaction-pressed:var(--color-entity-marker-interaction-pressed);position:relative;display:inline-flex;width:max-content;overflow:visible;vertical-align:middle;transition:var(--effect-transition-interaction-opacity-short-2)}.map-marker--dimmed.sc-ds-map-entity-marker-h{opacity:var(--effect-opacity-medium)}.map-marker--dimmed.sc-ds-map-entity-marker-h:focus-within{opacity:1}.map-marker__button.sc-ds-map-entity-marker{all:unset;position:relative;z-index:0;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:var(--dimension-size-300);min-width:var(--dimension-size-300);overflow:hidden;color:var(--_map-marker-foreground);background:var(--_map-marker-background);box-shadow:0 0 0 var(--dimension-stroke-width-012) var(--color-border-tertiary);cursor:pointer;transition:var(--effect-transition-interaction-opacity-short-2)}.map-marker__button.sc-ds-map-entity-marker::before{content:'';position:absolute;z-index:1;inset:0;border-radius:inherit;pointer-events:none}.map-marker__button.sc-ds-map-entity-marker::after{content:'';position:absolute;z-index:3;inset:0;border-radius:inherit;outline:var(--dimension-stroke-width-018) solid currentColor;outline-offset:calc(-1 * var(--dimension-stroke-width-037));pointer-events:none}.map-marker__caption.sc-ds-map-entity-marker{position:absolute;z-index:2;top:calc(100% + var(--dimension-space-050));left:50%;display:none;box-sizing:border-box;align-items:center;justify-content:center;width:max-content;max-width:calc(var(--dimension-size-800) * 4);height:var(--dimension-size-200);padding:0 var(--dimension-space-050);overflow:visible;border-radius:var(--dimension-radius-025);color:var(--_map-marker-foreground);background:var(--_map-marker-background);pointer-events:none;transform:translateX(-50%);line-height:0;white-space:nowrap}.sc-ds-map-entity-marker-h:focus-within .map-marker__caption.sc-ds-map-entity-marker{display:inline-flex}@media (hover: hover) and (pointer: fine){.map-marker--dimmed.sc-ds-map-entity-marker-h:hover{opacity:1}.sc-ds-map-entity-marker-h:hover .map-marker__caption.sc-ds-map-entity-marker{display:inline-flex}.map-marker__button.sc-ds-map-entity-marker:hover::before{background:var(--_map-marker-interaction-hover)}}.map-marker__button.sc-ds-map-entity-marker:active::before{background:var(--_map-marker-interaction-pressed)}@media (forced-colors: active){.map-marker__button.sc-ds-map-entity-marker{border:var(--dimension-stroke-width-012) solid var(--ds-forced-color-control-boundary);color:var(--ds-forced-color-content);background:var(--ds-forced-color-surface);box-shadow:none}.map-marker__button.sc-ds-map-entity-marker::before{display:none}.map-marker__button.sc-ds-map-entity-marker::after{outline-color:var(--ds-forced-color-control-boundary)}.map-marker__caption.sc-ds-map-entity-marker{border:var(--dimension-stroke-width-012) solid var(--ds-forced-color-control-boundary);color:var(--ds-forced-color-content);background:var(--ds-forced-color-surface)}}[state='moving'].sc-ds-map-entity-marker-h{--_map-marker-background:var(--color-entity-marker-background-in-motion)}[state='idling'].sc-ds-map-entity-marker-h{--_map-marker-background:var(--color-entity-marker-background-idling)}[state='stationary'].sc-ds-map-entity-marker-h{--_map-marker-background:var(--color-entity-marker-background-stationary)}[state='immobilized'].sc-ds-map-entity-marker-h{--_map-marker-background:var(--color-entity-marker-background-immobilized)}[state='unknown'].sc-ds-map-entity-marker-h{--_map-marker-background:var(--color-entity-marker-background-stale)}.map-marker__button.sc-ds-map-entity-marker{width:var(--dimension-size-300);border-radius:var(--dimension-radius-half)}.map-entity-marker--dashed.sc-ds-map-entity-marker-h .map-marker__button.sc-ds-map-entity-marker::after{display:none}.map-entity-marker__dashed-outline.sc-ds-map-entity-marker{position:absolute;z-index:3;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;transform:rotate(-90deg);fill:none;stroke:currentcolor;stroke-width:1;stroke-linecap:butt}.map-entity-marker__glyph.sc-ds-map-entity-marker{position:relative;z-index:2;display:inline-flex;transform:rotate(var(--ds-map-entity-marker-bearing))}@media (forced-colors: active){.map-entity-marker--dashed.sc-ds-map-entity-marker-h .map-marker__button.sc-ds-map-entity-marker::after{display:block;outline-style:dashed}.map-entity-marker__dashed-outline.sc-ds-map-entity-marker{display:none}}`;const d=e=>{if(!Number.isFinite(e))return 0;return(e%360+360)%360};const m=new Set(["MapEntityTravelGroup","MapEntityVehicle"]);const l=8;const p=6.5;const f=45;const u=6;const k=e=>{const r=e*Math.PI/180;return[l+p*Math.cos(r),l+p*Math.sin(r)]};const h=Array.from({length:8},((e,r)=>{const t=r*f+u;const a=(r+1)*f-u;const[s,i]=k(t);const[o,n]=k(a);return`M ${s.toFixed(3)} ${i.toFixed(3)} A ${p} ${p} 0 0 1 ${o.toFixed(3)} ${n.toFixed(3)}`})).join(" ");const y=e(class e extends r{constructor(e){super();if(e!==false){this.__registerHost()}this.dsClick=t(this,"dsClick",7);this.caption="";this.icon="MapEntityTravelGroup";this.state="moving";this.dashed=false;this.bearing=0;this.dimmed=false;this.handleClick=e=>{this.dsClick.emit(e)}}async setFocus(){this.buttonEl?.focus()}render(){const e=this.caption.trim();const r=this.state==="immobilized"&&this.icon==="MapEntityVehicle"?"MapKey":this.icon;const t=m.has(r)?d(this.bearing):0;return a(s,{key:"2ed79e19e01ae1e4c7989f6630a2b375fe8093d0",class:{"map-entity-marker":true,"map-marker--dimmed":this.dimmed,"map-entity-marker--dashed":this.dashed}},a("button",{key:"8ad7fbf18c13986abc351dee13f3ff03d73621fd",ref:e=>this.buttonEl=e,type:"button",class:"map-marker__button ds-focus-ring","aria-label":this.label,onClick:this.handleClick},a("span",{key:"093bcc1775efbab22d15a660b46c77f0f2c4d7ec",class:"map-entity-marker__glyph",style:{"--ds-map-entity-marker-bearing":`${t}deg`},"aria-hidden":"true"},a("ds-icon",{key:"a5bff120a90cf5b356a452b479d9f0b658082d05",name:r,size:"sm",color:"inherit"})),this.dashed&&a("svg",{key:"3514526bcc41400f1bd68c9a98814a5ed8ddf332",class:"map-entity-marker__dashed-outline",viewBox:"0 0 16 16","aria-hidden":"true"},a("path",{key:"0041525d5364842c78240a547c6a08abdc07d132",d:h}))),e&&a("ds-text",{key:"42745fdca1762c1d0817309f2f0e5fa5f4bae113",class:"map-marker__caption",as:"span",variant:"text-caption",color:"inherit","aria-hidden":"true"},e))}static get style(){return c()}},[2,"ds-map-entity-marker",{label:[1],caption:[1],icon:[1],state:[513],dashed:[516],bearing:[2],dimmed:[516],setFocus:[64]}]);function b(){if(typeof customElements==="undefined"){return}const e=["ds-map-entity-marker","ds-icon","ds-text"];e.forEach((e=>{switch(e){case"ds-map-entity-marker":if(!customElements.get(i(e))){customElements.define(i(e),y)}break;case"ds-icon":if(!customElements.get(i(e))){o()}break;case"ds-text":if(!customElements.get(i(e))){n()}break}}))}b();const v=y;const g=b;export{v as DsMapEntityMarker,g as defineCustomElement};
2
2
  //# sourceMappingURL=ds-map-entity-marker.js.map
@@ -1,2 +1,2 @@
1
- import{M as o,d as s}from"./p-D62yUMhr.js";const r=o;const t=s;export{r as DsMarkdown,t as defineCustomElement};
1
+ import{M as o,d as s}from"./p-DcMbWqTd.js";const t=o;const c=s;export{t as DsMarkdown,c as defineCustomElement};
2
2
  //# sourceMappingURL=ds-markdown.js.map
@@ -1,2 +1,2 @@
1
- import{M as o,d as s}from"./p-BPDo1eQV.js";const t=o;const p=s;export{t as DsMenu,p as defineCustomElement};
1
+ import{M as s,d as o}from"./p-DHpcv_Os.js";const p=s;const t=o;export{p as DsMenu,t as defineCustomElement};
2
2
  //# sourceMappingURL=ds-menu.js.map