@magicx-eng/ai-autocomplete-react 0.24.1 → 0.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";var at=Object.defineProperty;var $t=Object.getOwnPropertyDescriptor;var Vt=Object.getOwnPropertyNames;var Qt=Object.prototype.hasOwnProperty;var Zt=(e,i)=>{for(var t in i)at(e,t,{get:i[t],enumerable:!0})},Yt=(e,i,t,r)=>{if(i&&typeof i=="object"||typeof i=="function")for(let n of Vt(i))!Qt.call(e,n)&&n!==t&&at(e,n,{get:()=>i[n],enumerable:!(r=$t(i,n))||r.enumerable});return e};var Xt=e=>Yt(at({},"__esModule",{value:!0}),e);var pa={};Zt(pa,{AIAutocomplete:()=>zt,AIAutocompleteDropdown:()=>Ve,DATE_RANGE_META_END:()=>p.DATE_RANGE_META_END,DATE_RANGE_META_START:()=>p.DATE_RANGE_META_START,PRODUCT_PATH_PREFIX:()=>p.PRODUCT_PATH_PREFIX,WEEKDAY_LABELS:()=>p.WEEKDAY_LABELS,buildSubmitResult:()=>p.buildSubmitResult,cellDay:()=>p.cellDay,cellIso:()=>p.cellIso,dateCellMarks:()=>p.dateCellMarks,formatDate:()=>p.formatDate,formatDateRange:()=>p.formatDateRange,isoDate:()=>p.isoDate,monthLabel:()=>p.monthLabel,optionLabel:()=>p.optionLabel,parseDate:()=>p.parseDate,parseLooseDate:()=>p.parseLooseDate,parseLooseDateRange:()=>p.parseLooseDateRange,productFromMatchedItem:()=>p.productFromMatchedItem,productsFromCustomFields:()=>p.productsFromCustomFields,sanitizeOptionIconSvg:()=>p.sanitizeOptionIconSvg,selectedRangeFor:()=>p.selectedRangeFor,useAIAutocomplete:()=>Ze,visibleDateRange:()=>p.visibleDateRange,withSkippedParams:()=>p.withSkippedParams});module.exports=Xt(pa);var p=require("@magicx-eng/ai-autocomplete-vanilla");var L=require("react");if(typeof document<"u"&&!document.getElementById("ac-style-67791514")){let e=document.createElement("style");e.id="ac-style-67791514",e.textContent=`.aia-container-KKjFU {
1
+ "use strict";var ot=Object.defineProperty;var Vt=Object.getOwnPropertyDescriptor;var Zt=Object.getOwnPropertyNames;var Xt=Object.prototype.hasOwnProperty;var Jt=(e,o)=>{for(var t in o)ot(e,t,{get:o[t],enumerable:!0})},ea=(e,o,t,s)=>{if(o&&typeof o=="object"||typeof o=="function")for(let n of Zt(o))!Xt.call(e,n)&&n!==t&&ot(e,n,{get:()=>o[n],enumerable:!(s=Vt(o,n))||s.enumerable});return e};var ta=e=>ea(ot({},"__esModule",{value:!0}),e);var ma={};Jt(ma,{AIAutocomplete:()=>Ht,AIAutocompleteDropdown:()=>Ve,DATE_RANGE_META_END:()=>l.DATE_RANGE_META_END,DATE_RANGE_META_START:()=>l.DATE_RANGE_META_START,DEFAULT_OPTION_COUNT_UNIT:()=>l.DEFAULT_OPTION_COUNT_UNIT,PRODUCT_PATH_PREFIX:()=>l.PRODUCT_PATH_PREFIX,WEEKDAY_LABELS:()=>l.WEEKDAY_LABELS,buildSubmitResult:()=>l.buildSubmitResult,cellDay:()=>l.cellDay,cellIso:()=>l.cellIso,dateCellMarks:()=>l.dateCellMarks,formatDate:()=>l.formatDate,formatDateRange:()=>l.formatDateRange,formatOptionCount:()=>l.formatOptionCount,isoDate:()=>l.isoDate,monthLabel:()=>l.monthLabel,optionCountLabel:()=>l.optionCountLabel,optionHasImage:()=>l.optionHasImage,optionImageSrc:()=>l.optionImageSrc,optionLabel:()=>l.optionLabel,parseDate:()=>l.parseDate,parseLooseDate:()=>l.parseLooseDate,parseLooseDateRange:()=>l.parseLooseDateRange,productFromMatchedItem:()=>l.productFromMatchedItem,productsFromCustomFields:()=>l.productsFromCustomFields,sanitizeOptionIconSvg:()=>l.sanitizeOptionIconSvg,selectedRangeFor:()=>l.selectedRangeFor,useAIAutocomplete:()=>Xe,visibleDateRange:()=>l.visibleDateRange,withSkippedParams:()=>l.withSkippedParams});module.exports=ta(ma);var l=require("@magicx-eng/ai-autocomplete-vanilla");var M=require("react");if(typeof document<"u"&&!document.getElementById("ac-style-67791514")){let e=document.createElement("style");e.id="ac-style-67791514",e.textContent=`.aia-container-KKjFU {
2
2
  position: relative;
3
3
  /* Inherits the host page's font by default. Consumers can pin a specific
4
4
  font on the library via \`--aia-font-family: 'Custom Font'\` without
@@ -150,6 +150,27 @@
150
150
  height: 100%;
151
151
  }
152
152
 
153
+ /* The picked option's picture: a small rounded tile inline before the chip
154
+ text, in place of the icon. It is an empty inline span whose left padding
155
+ is the tile's width and whose background is the picture (set inline as
156
+ --aia-chip-image by the renderer) over a placeholder fill \u2014 not an <img>,
157
+ which as an atomic inline would let the line break between it and the
158
+ chip's text. The tile's height is the chip's own content height, so it
159
+ never grows the input's line. The fill shows until the picture paints and
160
+ stays if it never does; contentEditable is off on it (the renderer sets
161
+ that) so it adds no characters to the caret's plain text. */
162
+ :where(.aia-input-IW-P-) span[class~="magicx-aia-segment-image"] {
163
+ display: inline;
164
+ padding-left: var(--aia-chip-image-size, 1.25em);
165
+ margin-right: 5px;
166
+ border-radius: var(--aia-chip-image-radius, 4px);
167
+ background:
168
+ var(--aia-chip-image, none) center / cover no-repeat,
169
+ var(--aia-chip-image-bg, var(--aia-pill-bg, rgba(189, 189, 189, 0.25)));
170
+ pointer-events: none;
171
+ user-select: none;
172
+ }
173
+
153
174
  /* Re-edit highlight \u2014 applied to the completed pill being re-edited (after a
154
175
  tap). Reuses the exact hover fill so the highlight persists from tap until an
155
176
  option is selected. Hides the native caret; cursor switches to text since the
@@ -240,7 +261,7 @@
240
261
  opacity: 0;
241
262
  }
242
263
  }
243
- `,document.head.appendChild(e)}var Ee={container:"aia-container-KKjFU",inputWrapper:"aia-inputWrapper-FLq1b",editorArea:"aia-editorArea-7rBWq",input:"aia-input-IW-P-",pillListContainer:"aia-pillListContainer-h92IA",submitSlot:"aia-submitSlot-GhuCM",aiaPillReveal:"aia-aiaPillReveal-wf05b"};var Le=require("@magicx-eng/ai-autocomplete-vanilla"),J=require("react");if(typeof document<"u"&&!document.getElementById("ac-style-0ae03977")){let e=document.createElement("style");e.id="ac-style-0ae03977",e.textContent=`/*
264
+ `,document.head.appendChild(e)}var Re={container:"aia-container-KKjFU",inputWrapper:"aia-inputWrapper-FLq1b",editorArea:"aia-editorArea-7rBWq",input:"aia-input-IW-P-",pillListContainer:"aia-pillListContainer-h92IA",submitSlot:"aia-submitSlot-GhuCM",aiaPillReveal:"aia-aiaPillReveal-wf05b"};var Me=require("@magicx-eng/ai-autocomplete-vanilla"),te=require("react");if(typeof document<"u"&&!document.getElementById("ac-style-0ae03977")){let e=document.createElement("style");e.id="ac-style-0ae03977",e.textContent=`/*
244
265
  * Built-in appearance defaults \u2014 zero specificity via :where().
245
266
  * Consumer CSS always wins without !important.
246
267
  *
@@ -995,7 +1016,7 @@
995
1016
  opacity: 0.25;
996
1017
  }
997
1018
  }
998
- `,document.head.appendChild(e)}var me={dropdown:"aia-dropdown-yz2KC",visible:"aia-visible-QCoXj",scrollArrow:"aia-scrollArrow-uUzV0","magicx-aia-scroll-arrow-bob":"aia-magicx-aia-scroll-arrow-bob-z-HXC",pillBar:"aia-pillBar-pwTXe",pillScroll:"aia-pillScroll-Tpzus",skip:"aia-skip-7-olS",skeletonBars:"aia-skeletonBars-HVr9C",skeletonBar:"aia-skeletonBar-O3xIx",aiaSkeletonPulse:"aia-aiaSkeletonPulse-G8W7q"};var D=require("@magicx-eng/ai-autocomplete-vanilla"),ft=require("react");if(typeof document<"u"&&!document.getElementById("ac-style-f687bd03")){let e=document.createElement("style");e.id="ac-style-f687bd03",e.textContent=`/* --- Datepicker (replaces the options grid for date suggestions) ---
1019
+ `,document.head.appendChild(e)}var xe={dropdown:"aia-dropdown-yz2KC",visible:"aia-visible-QCoXj",scrollArrow:"aia-scrollArrow-uUzV0","magicx-aia-scroll-arrow-bob":"aia-magicx-aia-scroll-arrow-bob-z-HXC",pillBar:"aia-pillBar-pwTXe",pillScroll:"aia-pillScroll-Tpzus",skip:"aia-skip-7-olS",skeletonBars:"aia-skeletonBars-HVr9C",skeletonBar:"aia-skeletonBar-O3xIx",aiaSkeletonPulse:"aia-aiaSkeletonPulse-G8W7q"};var O=require("@magicx-eng/ai-autocomplete-vanilla"),gt=require("react");if(typeof document<"u"&&!document.getElementById("ac-style-f687bd03")){let e=document.createElement("style");e.id="ac-style-f687bd03",e.textContent=`/* --- Datepicker (replaces the options grid for date suggestions) ---
999
1020
 
1000
1021
  One of three hand-maintained copies (vanilla styles.css, this file, Angular's
1001
1022
  date-grid.component.css). Only the class-naming layer differs \u2014 the
@@ -1158,7 +1179,7 @@
1158
1179
  opacity: 0.8;
1159
1180
  background: rgba(var(--aia-streak-rgb, 255, 255, 255), 0.06);
1160
1181
  }
1161
- `,document.head.appendChild(e)}var A={datepicker:"aia-datepicker-6RrTs",header:"aia-header-z4LRk",month:"aia-month-urB2T",nav:"aia-nav-ap4AN",weekdays:"aia-weekdays-3EA3q",grid:"aia-grid-mQCgw",weekday:"aia-weekday-3lF4B",cell:"aia-cell-59k0y",number:"aia-number-aoT01",day:"aia-day-cB3u9",blank:"aia-blank-ivgRC",past:"aia-past-CEZsj",highlighted:"aia-highlighted-YIdtK",today:"aia-today-iI3ME",inRange:"aia-inRange-r9S2q",selected:"aia-selected-28KDn",pressed:"aia-pressed-bEyyN"};var H=require("react/jsx-runtime"),Jt=["sunday","monday","tuesday","wednesday","thursday","friday","saturday"];function mt({options:e,activeIndex:i,listboxId:t,view:r,selection:n,onSelect:o,onHighlight:s,onPreviousMonth:b,onNextMonth:v}){let h=(0,D.isoDate)(new Date),y=(0,D.visibleDateRange)({pendingStart:n.rangeStart,highlightedIso:(0,D.cellIso)(e[i]),selected:n.selectedRange});return(0,H.jsxs)("div",{className:A.datepicker,"data-aia-datepicker":"",children:[(0,H.jsxs)("div",{className:A.header,children:[(0,H.jsx)("button",{type:"button",tabIndex:-1,className:A.nav,"data-aia-date-prev":"","aria-label":"Previous month",onMouseDown:f=>f.preventDefault(),onClick:b,children:"\u2039"}),(0,H.jsx)("span",{className:A.month,"data-aia-date-month":"","aria-live":"polite",children:(0,D.monthLabel)(r)}),(0,H.jsx)("button",{type:"button",tabIndex:-1,className:A.nav,"data-aia-date-next":"","aria-label":"Next month",onMouseDown:f=>f.preventDefault(),onClick:v,children:"\u203A"})]}),(0,H.jsx)("div",{className:A.weekdays,"aria-hidden":"true",children:D.WEEKDAY_LABELS.map((f,k)=>(0,H.jsx)("span",{className:A.weekday,children:f},Jt[k]))}),(0,H.jsx)("div",{className:A.grid,"data-aia-date-grid":"",children:e.map((f,k)=>(0,H.jsx)(ea,{option:f,id:`${t}-option-${k}`,index:k,isHighlighted:k===i&&f.is_tappable,isToday:(0,D.cellIso)(f)===h,isPast:(0,D.cellIso)(f)!=null&&(0,D.cellIso)(f)<h,marks:(0,D.dateCellMarks)((0,D.cellIso)(f),{selectedIso:n.selectedIso,range:y}),onSelect:o,onHighlight:s},(0,D.cellIso)(f)??`pad-${k}`))})]})}function ea({option:e,id:i,index:t,isHighlighted:r,isToday:n,isPast:o,marks:s,onSelect:b,onHighlight:v}){let[h,y]=(0,ft.useState)(!1),f=(0,D.cellDay)(e);if(f==null)return(0,H.jsx)("div",{id:i,role:"option","data-aia-option":"","data-aia-date-cell":"","aria-hidden":"true","aria-selected":!1,tabIndex:-1,className:`${A.cell} ${A.blank}`});let k=()=>{y(!0),b(e),setTimeout(()=>y(!1),170)},P=[A.cell,A.day,o?A.past:"",r?A.highlighted:"",n?A.today:"",s.inRange?A.inRange:"",s.selected?A.selected:"",h?A.pressed:""].filter(Boolean).join(" ");return(0,H.jsx)("div",{id:i,role:"option","data-aia-option":"","data-aia-date-cell":"","aria-selected":r,"aria-label":e.text,tabIndex:0,className:P,onClick:k,onKeyDown:w=>{(w.key==="Enter"||w.key===" ")&&(w.preventDefault(),k())},onMouseEnter:()=>v(t),children:(0,H.jsx)("span",{className:A.number,children:f})})}var Re=require("@magicx-eng/ai-autocomplete-vanilla"),qe=require("react");if(typeof document<"u"&&!document.getElementById("ac-style-5259a217")){let e=document.createElement("style");e.id="ac-style-5259a217",e.textContent=`.aia-cluster {
1182
+ `,document.head.appendChild(e)}var D={datepicker:"aia-datepicker-6RrTs",header:"aia-header-z4LRk",month:"aia-month-urB2T",nav:"aia-nav-ap4AN",weekdays:"aia-weekdays-3EA3q",grid:"aia-grid-mQCgw",weekday:"aia-weekday-3lF4B",cell:"aia-cell-59k0y",number:"aia-number-aoT01",day:"aia-day-cB3u9",blank:"aia-blank-ivgRC",past:"aia-past-CEZsj",highlighted:"aia-highlighted-YIdtK",today:"aia-today-iI3ME",inRange:"aia-inRange-r9S2q",selected:"aia-selected-28KDn",pressed:"aia-pressed-bEyyN"};var _=require("react/jsx-runtime"),aa=["sunday","monday","tuesday","wednesday","thursday","friday","saturday"];function bt({options:e,activeIndex:o,listboxId:t,view:s,selection:n,onSelect:i,onHighlight:r,onPreviousMonth:m,onNextMonth:w}){let g=(0,O.isoDate)(new Date),x=(0,O.visibleDateRange)({pendingStart:n.rangeStart,highlightedIso:(0,O.cellIso)(e[o]),selected:n.selectedRange});return(0,_.jsxs)("div",{className:D.datepicker,"data-aia-datepicker":"",children:[(0,_.jsxs)("div",{className:D.header,children:[(0,_.jsx)("button",{type:"button",tabIndex:-1,className:D.nav,"data-aia-date-prev":"","aria-label":"Previous month",onMouseDown:h=>h.preventDefault(),onClick:m,children:"\u2039"}),(0,_.jsx)("span",{className:D.month,"data-aia-date-month":"","aria-live":"polite",children:(0,O.monthLabel)(s)}),(0,_.jsx)("button",{type:"button",tabIndex:-1,className:D.nav,"data-aia-date-next":"","aria-label":"Next month",onMouseDown:h=>h.preventDefault(),onClick:w,children:"\u203A"})]}),(0,_.jsx)("div",{className:D.weekdays,"aria-hidden":"true",children:O.WEEKDAY_LABELS.map((h,C)=>(0,_.jsx)("span",{className:D.weekday,children:h},aa[C]))}),(0,_.jsx)("div",{className:D.grid,"data-aia-date-grid":"",children:e.map((h,C)=>(0,_.jsx)(ia,{option:h,id:`${t}-option-${C}`,index:C,isHighlighted:C===o&&h.is_tappable,isToday:(0,O.cellIso)(h)===g,isPast:(0,O.cellIso)(h)!=null&&(0,O.cellIso)(h)<g,marks:(0,O.dateCellMarks)((0,O.cellIso)(h),{selectedIso:n.selectedIso,range:x}),onSelect:i,onHighlight:r},(0,O.cellIso)(h)??`pad-${C}`))})]})}function ia({option:e,id:o,index:t,isHighlighted:s,isToday:n,isPast:i,marks:r,onSelect:m,onHighlight:w}){let[g,x]=(0,gt.useState)(!1),h=(0,O.cellDay)(e);if(h==null)return(0,_.jsx)("div",{id:o,role:"option","data-aia-option":"","data-aia-date-cell":"","aria-hidden":"true","aria-selected":!1,tabIndex:-1,className:`${D.cell} ${D.blank}`});let C=()=>{x(!0),m(e),setTimeout(()=>x(!1),170)},E=[D.cell,D.day,i?D.past:"",s?D.highlighted:"",n?D.today:"",r.inRange?D.inRange:"",r.selected?D.selected:"",g?D.pressed:""].filter(Boolean).join(" ");return(0,_.jsx)("div",{id:o,role:"option","data-aia-option":"","data-aia-date-cell":"","aria-selected":s,"aria-label":e.text,tabIndex:0,className:E,onClick:C,onKeyDown:k=>{(k.key==="Enter"||k.key===" ")&&(k.preventDefault(),C())},onMouseEnter:()=>w(t),children:(0,_.jsx)("span",{className:D.number,children:h})})}var Oe=require("@magicx-eng/ai-autocomplete-vanilla"),je=require("react");if(typeof document<"u"&&!document.getElementById("ac-style-5259a217")){let e=document.createElement("style");e.id="ac-style-5259a217",e.textContent=`.aia-cluster {
1162
1183
  display: flex;
1163
1184
  flex-wrap: wrap;
1164
1185
  gap: var(--aia-cluster-gap, 0.5rem);
@@ -1198,7 +1219,7 @@
1198
1219
  .aia-cluster[data-justify="around"] {
1199
1220
  justify-content: space-around;
1200
1221
  }
1201
- `,document.head.appendChild(e)}var it=require("react/jsx-runtime");function He({gap:e,align:i="center",justify:t="start",noWrap:r=!1,inline:n=!1,className:o,children:s,...b}){let v=e?{"--aia-cluster-gap":e}:void 0,h={className:o?`aia-cluster ${o}`:"aia-cluster","data-align":i,"data-justify":t,"data-nowrap":r||void 0,"data-inline":n||void 0,style:v,...b};return n?(0,it.jsx)("span",{...h,children:s}):(0,it.jsx)("div",{...h,children:s})}if(typeof document<"u"&&!document.getElementById("ac-style-56b0c577")){let e=document.createElement("style");e.id="ac-style-56b0c577",e.textContent=`/* The footer adds its own 8px horizontal inset so it stays clear of the
1222
+ `,document.head.appendChild(e)}var nt=require("react/jsx-runtime");function Ke({gap:e,align:o="center",justify:t="start",noWrap:s=!1,inline:n=!1,className:i,children:r,...m}){let w=e?{"--aia-cluster-gap":e}:void 0,g={className:i?`aia-cluster ${i}`:"aia-cluster","data-align":o,"data-justify":t,"data-nowrap":s||void 0,"data-inline":n||void 0,style:w,...m};return n?(0,nt.jsx)("span",{...g,children:r}):(0,nt.jsx)("div",{...g,children:r})}if(typeof document<"u"&&!document.getElementById("ac-style-56b0c577")){let e=document.createElement("style");e.id="ac-style-56b0c577",e.textContent=`/* The footer adds its own 8px horizontal inset so it stays clear of the
1202
1223
  dropdown's rounded edges. The top inset (--aia-footer-gap) adds breathing
1203
1224
  room above the hint/branding row so the footer doesn't butt against the last
1204
1225
  option row \u2014 additive to the dropdown's 8px section gap. */
@@ -1332,7 +1353,7 @@
1332
1353
  justify-content: flex-end;
1333
1354
  }
1334
1355
  }
1335
- `,document.head.appendChild(e)}var ge={footer:"aia-footer-qQQ7x",hintGroup:"aia-hintGroup-ZzbPf",brandLink:"aia-brandLink-r4f3R",key:"aia-key-Bz1H-",hint:"aia-hint-GKEOH",brand:"aia-brand-Al-lR",badge:"aia-badge-Fk9vg",row:"aia-row-BgZ6Q"};var oe=require("react/jsx-runtime");function gt({isOptionHighlighted:e=!1,isInputEmpty:i=!1}){let{key:t,hint:r}=(0,Re.getFooterHint)(e,i),[n,o]=(0,qe.useState)(Re.ATTRIBUTION_URL);return(0,qe.useEffect)(()=>{o((0,Re.buildAttributionUrl)())},[]),(0,oe.jsx)("footer",{className:ge.footer,"data-aia-footer":"",children:(0,oe.jsxs)(He,{justify:"between",noWrap:!0,className:ge.row,children:[(0,oe.jsxs)(He,{gap:"5px",className:ge.hintGroup,children:[(0,oe.jsx)("kbd",{className:ge.key,children:t}),(0,oe.jsx)("span",{className:ge.hint,children:r})]}),(0,oe.jsxs)("a",{className:ge.brandLink,href:n,target:"_blank",rel:"noopener noreferrer",children:[(0,oe.jsx)("span",{className:ge.brand,children:"AI"}),(0,oe.jsx)("span",{className:ge.badge,children:"Autocomplete"})]})]})})}if(typeof document<"u"&&!document.getElementById("ac-style-199d0432")){let e=document.createElement("style");e.id="ac-style-199d0432",e.textContent=`/* ParamPill (Figma "ParamPill") \u2014 unfilled suggestion pill: transparent fill,
1356
+ `,document.head.appendChild(e)}var ye={footer:"aia-footer-qQQ7x",hintGroup:"aia-hintGroup-ZzbPf",brandLink:"aia-brandLink-r4f3R",key:"aia-key-Bz1H-",hint:"aia-hint-GKEOH",brand:"aia-brand-Al-lR",badge:"aia-badge-Fk9vg",row:"aia-row-BgZ6Q"};var ie=require("react/jsx-runtime");function vt({isOptionHighlighted:e=!1,isInputEmpty:o=!1}){let{key:t,hint:s}=(0,Oe.getFooterHint)(e,o),[n,i]=(0,je.useState)(Oe.ATTRIBUTION_URL);return(0,je.useEffect)(()=>{i((0,Oe.buildAttributionUrl)())},[]),(0,ie.jsx)("footer",{className:ye.footer,"data-aia-footer":"",children:(0,ie.jsxs)(Ke,{justify:"between",noWrap:!0,className:ye.row,children:[(0,ie.jsxs)(Ke,{gap:"5px",className:ye.hintGroup,children:[(0,ie.jsx)("kbd",{className:ye.key,children:t}),(0,ie.jsx)("span",{className:ye.hint,children:s})]}),(0,ie.jsxs)("a",{className:ye.brandLink,href:n,target:"_blank",rel:"noopener noreferrer",children:[(0,ie.jsx)("span",{className:ye.brand,children:"AI"}),(0,ie.jsx)("span",{className:ye.badge,children:"Autocomplete"})]})]})})}if(typeof document<"u"&&!document.getElementById("ac-style-199d0432")){let e=document.createElement("style");e.id="ac-style-199d0432",e.textContent=`/* ParamPill (Figma "ParamPill") \u2014 unfilled suggestion pill: transparent fill,
1336
1357
  no outline. ~28px via 6px padding + 14px text + the 1px border (border-box).
1337
1358
  The border is kept as a 1px transparent line so the box stays the same size
1338
1359
  as it was when the outline was dashed. */
@@ -1389,7 +1410,7 @@
1389
1410
  opacity: 0;
1390
1411
  }
1391
1412
  }
1392
- `,document.head.appendChild(e)}var Pe={pill:"aia-pill-6Ga7S",fadeIn:"aia-fadeIn-Ux4eQ",rounded:"aia-rounded-y7xA9",skeleton:"aia-skeleton-57P0T",skeletonPulse:"aia-skeletonPulse-xGcUy"};var vt=require("react/jsx-runtime"),ot={selected:1,first:.7,next:.4,last:.2};function bt({label:e,state:i,rounded:t,loading:r,onClick:n}){let o=[Pe.pill,t?Pe.rounded:"",r?Pe.skeleton:""].filter(Boolean).join(" ");return(0,vt.jsx)("button",{type:"button","data-aia-pill":"","data-aia-loading":r?"":void 0,tabIndex:-1,contentEditable:!1,suppressContentEditableWarning:!0,className:o,style:{opacity:ot[i]},onMouseDown:s=>s.preventDefault(),onClick:r?void 0:n,disabled:r,children:e})}if(typeof document<"u"&&!document.getElementById("ac-style-0fcb7940")){let e=document.createElement("style");e.id="ac-style-0fcb7940",e.textContent=`.aia-list-qvLqO {
1413
+ `,document.head.appendChild(e)}var Ae={pill:"aia-pill-6Ga7S",fadeIn:"aia-fadeIn-Ux4eQ",rounded:"aia-rounded-y7xA9",skeleton:"aia-skeleton-57P0T",skeletonPulse:"aia-skeletonPulse-xGcUy"};var xt=require("react/jsx-runtime"),rt={selected:1,first:.7,next:.4,last:.2};function wt({label:e,state:o,rounded:t,loading:s,onClick:n}){let i=[Ae.pill,t?Ae.rounded:"",s?Ae.skeleton:""].filter(Boolean).join(" ");return(0,xt.jsx)("button",{type:"button","data-aia-pill":"","data-aia-loading":s?"":void 0,tabIndex:-1,contentEditable:!1,suppressContentEditableWarning:!0,className:i,style:{opacity:rt[o]},onMouseDown:r=>r.preventDefault(),onClick:s?void 0:n,disabled:s,children:e})}if(typeof document<"u"&&!document.getElementById("ac-style-0fcb7940")){let e=document.createElement("style");e.id="ac-style-0fcb7940",e.textContent=`.aia-list-qvLqO {
1393
1414
  position: relative;
1394
1415
  z-index: 1;
1395
1416
  pointer-events: auto;
@@ -1399,7 +1420,7 @@
1399
1420
  align-items: center;
1400
1421
  vertical-align: middle;
1401
1422
  }
1402
- `,document.head.appendChild(e)}var nt={list:"aia-list-qvLqO"};var Be=require("react/jsx-runtime"),ta=[125,69];function wt(e){return e===0?"first":e===1?"next":"last"}function Ue({pills:e,activePillIndex:i,onSelectPill:t,activeSelected:r,rounded:n,loading:o}){return o&&e.length===0?(0,Be.jsx)("span",{className:nt.list,"data-aia-pill-list-loading":"",children:ta.map((s,b)=>(0,Be.jsx)("span",{"data-aia-pill-skeleton":"",className:`${Pe.pill} ${n?Pe.rounded:""} ${Pe.skeleton}`,style:{width:s,opacity:ot[wt(b)]}},`skel-${s}`))}):(0,Be.jsx)("span",{className:nt.list,"data-aia-pill-list-loading":o?"":void 0,children:e.map((s,b)=>{let v=!!r&&b===i;return(0,Be.jsx)(bt,{label:s.text,state:v?"selected":wt(b),selected:v,rounded:n,loading:o,onClick:()=>t(b)},`${s.type}-${s.text}`)})})}var xt=require("@magicx-eng/ai-autocomplete-vanilla"),je=require("react");if(typeof document<"u"&&!document.getElementById("ac-style-fef1688d")){let e=document.createElement("style");e.id="ac-style-fef1688d",e.textContent=`/* Product strip \u2014 the React counterpart of the vanilla core's strip rules
1423
+ `,document.head.appendChild(e)}var st={list:"aia-list-qvLqO"};var We=require("react/jsx-runtime"),oa=[125,69];function yt(e){return e===0?"first":e===1?"next":"last"}function Qe({pills:e,activePillIndex:o,onSelectPill:t,activeSelected:s,rounded:n,loading:i}){return i&&e.length===0?(0,We.jsx)("span",{className:st.list,"data-aia-pill-list-loading":"",children:oa.map((r,m)=>(0,We.jsx)("span",{"data-aia-pill-skeleton":"",className:`${Ae.pill} ${n?Ae.rounded:""} ${Ae.skeleton}`,style:{width:r,opacity:rt[yt(m)]}},`skel-${r}`))}):(0,We.jsx)("span",{className:st.list,"data-aia-pill-list-loading":i?"":void 0,children:e.map((r,m)=>{let w=!!s&&m===o;return(0,We.jsx)(wt,{label:r.text,state:w?"selected":yt(m),selected:w,rounded:n,loading:i,onClick:()=>t(m)},`${r.type}-${r.text}`)})})}var kt=require("@magicx-eng/ai-autocomplete-vanilla"),Ye=require("react");if(typeof document<"u"&&!document.getElementById("ac-style-fef1688d")){let e=document.createElement("style");e.id="ac-style-fef1688d",e.textContent=`/* Product strip \u2014 the React counterpart of the vanilla core's strip rules
1403
1424
  (packages/vanilla/src/styles.css). Same tokens, same defaults, so a consumer
1404
1425
  theming one package sees the same result in the other.
1405
1426
 
@@ -1617,7 +1638,7 @@
1617
1638
  .aia-section-Hugfg[data-aia-products-layout="list"] .aia-body-ly032 {
1618
1639
  flex: 1 1 auto;
1619
1640
  }
1620
- `,document.head.appendChild(e)}var Y={section:"aia-section-Hugfg",label:"aia-label-nuc93",row:"aia-row-WDVBX",card:"aia-card-JBGYT",media:"aia-media-RrbGe",image:"aia-image-5pNL7",body:"aia-body-ly032",vendor:"aia-vendor-Gvu7G",title:"aia-title-gCNmq",price:"aia-price-gULcE"};var U=require("react/jsx-runtime");function yt({products:e,listboxId:i,onSelect:t,onFocusChange:r,focusable:n=!0,layout:o="row"}){let s=e.length>0,b=(0,je.useRef)(null);if((0,je.useEffect)(()=>{let h=b.current;if(!(!s||!h))return(0,xt.attachProductRowWheel)(h)},[s]),!s)return null;let v=`${i}-products-label`;return(0,U.jsxs)("section",{className:Y.section,"data-aia-products":"","data-aia-products-layout":o,role:"group","aria-labelledby":v,children:[(0,U.jsx)("div",{className:Y.label,id:v,"data-aia-products-label":"",children:"Products"}),(0,U.jsx)("div",{ref:b,className:Y.row,"data-aia-products-row":"",children:e.map((h,y)=>(0,U.jsx)(aa,{product:h,id:`${i}-product-${y}`,onSelect:t,onFocusChange:r,focusable:n},h.id))})]})}function aa({product:e,id:i,onSelect:t,onFocusChange:r,focusable:n}){let o=s=>{s.metaKey||s.ctrlKey||s.shiftKey||s.altKey||s.button!==0||(s.preventDefault(),t(e))};return(0,U.jsxs)("a",{id:i,className:Y.card,"data-aia-product":"",role:"option","aria-selected":!1,href:e.url,tabIndex:n?0:-1,onClick:o,onKeyDown:s=>{s.key!=="Enter"&&s.key!==" "||(s.preventDefault(),t(e))},onFocus:()=>r?.(!0),onBlur:s=>{s.relatedTarget?.closest("[data-aia-dropdown]")||r?.(!1)},children:[(0,U.jsx)("span",{className:Y.media,"data-aia-product-placeholder":e.imageUrl?void 0:"",children:e.imageUrl?(0,U.jsx)("img",{className:Y.image,src:e.imageUrl,alt:"",loading:"lazy",decoding:"async"}):null}),(0,U.jsxs)("span",{className:Y.body,children:[e.vendor?(0,U.jsx)("span",{className:Y.vendor,children:e.vendor}):null,(0,U.jsx)("span",{className:Y.title,children:e.title}),e.price?(0,U.jsx)("span",{className:Y.price,children:e.price}):null]})]})}var j=require("@magicx-eng/ai-autocomplete-vanilla"),ve=require("react");var kt=require("@magicx-eng/ai-autocomplete-vanilla"),$e=require("react");if(typeof document<"u"&&!document.getElementById("ac-style-948e58da")){let e=document.createElement("style");e.id="ac-style-948e58da",e.textContent=`.aia-grid {
1641
+ `,document.head.appendChild(e)}var ee={section:"aia-section-Hugfg",label:"aia-label-nuc93",row:"aia-row-WDVBX",card:"aia-card-JBGYT",media:"aia-media-RrbGe",image:"aia-image-5pNL7",body:"aia-body-ly032",vendor:"aia-vendor-Gvu7G",title:"aia-title-gCNmq",price:"aia-price-gULcE"};var q=require("react/jsx-runtime");function Ct({products:e,listboxId:o,onSelect:t,onFocusChange:s,focusable:n=!0,layout:i="row"}){let r=e.length>0,m=(0,Ye.useRef)(null);if((0,Ye.useEffect)(()=>{let g=m.current;if(!(!r||!g))return(0,kt.attachProductRowWheel)(g)},[r]),!r)return null;let w=`${o}-products-label`;return(0,q.jsxs)("section",{className:ee.section,"data-aia-products":"","data-aia-products-layout":i,role:"group","aria-labelledby":w,children:[(0,q.jsx)("div",{className:ee.label,id:w,"data-aia-products-label":"",children:"Products"}),(0,q.jsx)("div",{ref:m,className:ee.row,"data-aia-products-row":"",children:e.map((g,x)=>(0,q.jsx)(na,{product:g,id:`${o}-product-${x}`,onSelect:t,onFocusChange:s,focusable:n},g.id))})]})}function na({product:e,id:o,onSelect:t,onFocusChange:s,focusable:n}){let i=r=>{r.metaKey||r.ctrlKey||r.shiftKey||r.altKey||r.button!==0||(r.preventDefault(),t(e))};return(0,q.jsxs)("a",{id:o,className:ee.card,"data-aia-product":"",role:"option","aria-selected":!1,href:e.url,tabIndex:n?0:-1,onClick:i,onKeyDown:r=>{r.key!=="Enter"&&r.key!==" "||(r.preventDefault(),t(e))},onFocus:()=>s?.(!0),onBlur:r=>{r.relatedTarget?.closest("[data-aia-dropdown]")||s?.(!1)},children:[(0,q.jsx)("span",{className:ee.media,"data-aia-product-placeholder":e.imageUrl?void 0:"",children:e.imageUrl?(0,q.jsx)("img",{className:ee.image,src:e.imageUrl,alt:"",loading:"lazy",decoding:"async"}):null}),(0,q.jsxs)("span",{className:ee.body,children:[e.vendor?(0,q.jsx)("span",{className:ee.vendor,children:e.vendor}):null,(0,q.jsx)("span",{className:ee.title,children:e.title}),e.price?(0,q.jsx)("span",{className:ee.price,children:e.price}):null]})]})}var j=require("@magicx-eng/ai-autocomplete-vanilla"),ke=require("react");var Pt=require("@magicx-eng/ai-autocomplete-vanilla"),$e=require("react");if(typeof document<"u"&&!document.getElementById("ac-style-948e58da")){let e=document.createElement("style");e.id="ac-style-948e58da",e.textContent=`.aia-grid {
1621
1642
  display: grid;
1622
1643
  grid-template-columns: repeat(
1623
1644
  auto-fit,
@@ -1650,7 +1671,7 @@
1650
1671
  background: var(--aia-scrollbar-thumb, rgba(0, 0, 0, 0.3));
1651
1672
  border-radius: 3px;
1652
1673
  }
1653
- `,document.head.appendChild(e)}var Pt=require("react/jsx-runtime");function Ct({min:e="16rem",max:i,gap:t,scroll:r=!1,maxHeight:n,scrollResetKey:o,cols:s,template:b,innerRef:v,className:h,children:y,...f}){let k=(0,$e.useRef)(null);(0,$e.useLayoutEffect)(()=>{if(o===void 0)return;let w=k.current;w&&(w.scrollTop=0)},[o]);let P={"--aia-grid-min":e};return i&&(P["--aia-grid-max"]=i),t&&(P["--aia-grid-gap"]=t),n&&(P["--aia-grid-max-height"]=n),s&&(P.gridTemplateColumns=(0,kt.optionsGridTemplateColumns)(s)),b&&(P.gridTemplateColumns=b),(0,Pt.jsx)("div",{ref:w=>{k.current=w,v?.(w)},className:h?`aia-grid ${h}`:"aia-grid","data-scroll":r||void 0,style:P,...f,children:y})}var De=require("@magicx-eng/ai-autocomplete-vanilla"),be=require("react");if(typeof document<"u"&&!document.getElementById("ac-style-82820da7")){let e=document.createElement("style");e.id="ac-style-82820da7",e.textContent=`.aia-item-d4vpD {
1674
+ `,document.head.appendChild(e)}var It=require("react/jsx-runtime");function St({min:e="16rem",max:o,gap:t,scroll:s=!1,maxHeight:n,scrollResetKey:i,cols:r,template:m,innerRef:w,className:g,children:x,...h}){let C=(0,$e.useRef)(null);(0,$e.useLayoutEffect)(()=>{if(i===void 0)return;let k=C.current;k&&(k.scrollTop=0)},[i]);let E={"--aia-grid-min":e};return o&&(E["--aia-grid-max"]=o),t&&(E["--aia-grid-gap"]=t),n&&(E["--aia-grid-max-height"]=n),r&&(E.gridTemplateColumns=(0,Pt.optionsGridTemplateColumns)(r)),m&&(E.gridTemplateColumns=m),(0,It.jsx)("div",{ref:k=>{C.current=k,w?.(k)},className:g?`aia-grid ${g}`:"aia-grid","data-scroll":s||void 0,style:E,...h,children:x})}var re=require("@magicx-eng/ai-autocomplete-vanilla"),ne=require("react");if(typeof document<"u"&&!document.getElementById("ac-style-82820da7")){let e=document.createElement("style");e.id="ac-style-82820da7",e.textContent=`.aia-item-d4vpD {
1654
1675
  position: relative;
1655
1676
  /* Clip, not visible: the entrance rise below runs on the inner content,
1656
1677
  and a transformed box extends its scroll container's scrollable area.
@@ -1841,11 +1862,115 @@
1841
1862
  first line's text rather than under the icon. \`.content\` is a flex item
1842
1863
  (blockified), so text-indent applies to it directly. Skeleton rows keep
1843
1864
  it too: their icon is hidden but still occupies its column. */
1844
- .aia-content-T-Qba:has(.aia-icon-Qw938) {
1865
+ .aia-content-T-Qba:not(:has(.aia-count-IpYbQ)):has(.aia-icon-Qw938) {
1845
1866
  padding-left: calc(1em + 8px);
1846
1867
  text-indent: calc(-1em - 8px);
1847
1868
  }
1848
1869
 
1870
+ /* --- Option pictures and counts ---
1871
+ A row that carries a thumbnail (\`image_url\`) or a count (\`item_count\`) lays
1872
+ its content out as a flex row instead of inline flow: the text becomes its
1873
+ own box, so wrapped lines start under the first line without the hanging
1874
+ indent, and the count can sit at the trailing edge. It also fills the row \u2014
1875
+ the content is a flex item of the row that would otherwise shrink to its
1876
+ text, leaving the count's auto margin nothing to push against. The inline
1877
+ flow is kept for every other row, so nothing existing moves. */
1878
+ .aia-content-T-Qba:has(.aia-image-YZAbO),
1879
+ .aia-content-T-Qba:has(.aia-count-IpYbQ) {
1880
+ display: flex;
1881
+ flex: 1 1 auto;
1882
+ align-items: flex-start;
1883
+ min-width: 0;
1884
+ }
1885
+
1886
+ .aia-content-T-Qba:has(.aia-image-YZAbO) .aia-text-yqoh9,
1887
+ .aia-content-T-Qba:has(.aia-count-IpYbQ) .aia-text-yqoh9 {
1888
+ flex: 1 1 auto;
1889
+ min-width: 0;
1890
+ }
1891
+
1892
+ /* The picture: a square tile, centred on the text beside it (a one-line
1893
+ option reads as the reference row; a wrapped one keeps the tile on its
1894
+ vertical middle). Sized and rounded by token so a consumer can shrink it
1895
+ or square it off; the placeholder fill shows through until the picture
1896
+ paints and stays if it never does. */
1897
+ .aia-content-T-Qba:has(.aia-image-YZAbO) {
1898
+ align-items: center;
1899
+ gap: var(--aia-option-image-gap, 12px);
1900
+ }
1901
+
1902
+ .aia-image-YZAbO {
1903
+ flex: 0 0 auto;
1904
+ display: block;
1905
+ width: var(--aia-option-image-size, 40px);
1906
+ height: var(--aia-option-image-size, 40px);
1907
+ border-radius: var(--aia-option-image-radius, 12px);
1908
+ overflow: hidden;
1909
+ background: var(--aia-option-image-bg, var(--aia-pill-bg, rgba(189, 189, 189, 0.25)));
1910
+ }
1911
+
1912
+ .aia-image-YZAbO img {
1913
+ display: block;
1914
+ width: 100%;
1915
+ height: 100%;
1916
+ object-fit: cover;
1917
+ }
1918
+
1919
+ /* A picture that failed to load hides itself with the \`hidden\` attribute.
1920
+ The tile's \`display: block\` above would win over the browser's own
1921
+ \`[hidden] { display: none }\` (an author rule beats a user-agent rule at
1922
+ any specificity), so the attribute is honoured here explicitly. */
1923
+ .aia-image-YZAbO img[hidden] {
1924
+ display: none;
1925
+ }
1926
+
1927
+ /* The count: a muted, tabular label at the trailing edge, on the first
1928
+ line's baseline. Never wraps \u2014 a long option wraps its text instead. */
1929
+ .aia-count-IpYbQ {
1930
+ flex: 0 0 auto;
1931
+ margin-left: auto;
1932
+ padding-left: 12px;
1933
+ font-size: var(--aia-option-count-font-size, 12px);
1934
+ font-weight: 400;
1935
+ line-height: 21px; /* = the option's line-height */
1936
+ font-variant-numeric: tabular-nums;
1937
+ white-space: nowrap;
1938
+ color: var(--aia-option-count-color, inherit);
1939
+ opacity: var(--aia-option-count-opacity, 0.6);
1940
+ }
1941
+
1942
+ /* The unit word after the number is a token, so a consumer names what is
1943
+ being counted ("sneakers", "towels") or blanks it (an empty string) without
1944
+ a render option. A count of one reads the singular token, which falls back
1945
+ to the plural one, so a consumer who sets only \`--aia-option-count-unit\`
1946
+ gets that word for every count. Generated content joins the row's
1947
+ accessible name after the number, the way the word did as text. */
1948
+ .aia-count-IpYbQ::after {
1949
+ content: " " var(--aia-option-count-unit, "items");
1950
+ }
1951
+
1952
+ .aia-item-d4vpD[data-aia-item-count="1"] .aia-count-IpYbQ::after {
1953
+ content: " " var(--aia-option-count-unit-one, var(--aia-option-count-unit, "item"));
1954
+ }
1955
+
1956
+ /* Skeleton rows keep the tile (its placeholder fill pulses with the row)
1957
+ but not the picture, and drop the count like the tag. */
1958
+ .aia-item-d4vpD[data-aia-loading] .aia-image-YZAbO img {
1959
+ visibility: hidden;
1960
+ }
1961
+
1962
+ .aia-item-d4vpD[data-aia-loading] .aia-count-IpYbQ {
1963
+ display: none;
1964
+ }
1965
+
1966
+ /* A grid of picture rows is taller per row: the visible-rows cap
1967
+ (\`--aia-grid-max-height\`, computed from \`--aia-option-row-height\` by
1968
+ planOptionsGrid) follows the tile's height plus the row's padding, so the
1969
+ same number of rows shows before the list scrolls. */
1970
+ [data-aia-group]:has(.aia-image-YZAbO) {
1971
+ --aia-option-row-height: calc(var(--aia-option-image-size, 40px) + 16px);
1972
+ }
1973
+
1849
1974
  @keyframes aia-skeletonPulse-plvdD {
1850
1975
  0%,
1851
1976
  100% {
@@ -1855,7 +1980,7 @@
1855
1980
  filter: brightness(0.55);
1856
1981
  }
1857
1982
  }
1858
- `,document.head.appendChild(e)}var X={item:"aia-item-d4vpD",fadeIn:"aia-fadeIn-I8u35",content:"aia-content-T-Qba",riseIn:"aia-riseIn-etXZT",tappable:"aia-tappable-70KcX",nonTappable:"aia-nonTappable-xSZM-",highlighted:"aia-highlighted-Hb0SU",tag:"aia-tag-e3Fwe",pressed:"aia-pressed-98o-r",pressCompress:"aia-pressCompress-ICV3q",scrollHint:"aia-scrollHint-xKXPt",skeletonPulse:"aia-skeletonPulse-plvdD",text:"aia-text-yqoh9",icon:"aia-icon-Qw938"};var Ie=require("react/jsx-runtime");function St({option:e,isHighlighted:i,onSelect:t,onHighlight:r,id:n,loading:o,showIcon:s=!0,scrollHint:b,enterDelayMs:v=0}){let[h]=(0,be.useState)(v),[y,f]=(0,be.useState)(!1),k=(0,be.useMemo)(()=>s&&e.icon_svg?(0,De.sanitizeOptionIconSvg)(e.icon_svg):null,[s,e.icon_svg]),P=(0,be.useRef)(void 0);(0,be.useEffect)(()=>()=>clearTimeout(P.current),[]);let w=()=>{o||!e.is_tappable||y||(f(!0),t(e),clearTimeout(P.current),P.current=setTimeout(()=>f(!1),170))},R=[X.item,i&&!o?X.highlighted:"",e.is_tappable?X.tappable:X.nonTappable,y?X.pressed:"",b?X.scrollHint:""].filter(Boolean).join(" ");return(0,Ie.jsx)("div",{id:n,role:"option","data-aia-option":"","data-aia-loading":o?"":void 0,"data-aia-icon":k&&e.icon?e.icon:void 0,"aria-selected":i,className:R,style:{[De.OPTION_ENTER_DELAY_VAR]:`${h}ms`},tabIndex:o||!e.is_tappable?-1:0,onClick:w,onKeyDown:O=>{!o&&e.is_tappable&&(O.key==="Enter"||O.key===" ")&&(O.preventDefault(),w())},onMouseEnter:!o&&e.is_tappable?r:void 0,children:(0,Ie.jsxs)("span",{className:X.content,children:[k&&(0,Ie.jsx)("span",{className:`${X.icon} magicx-aia-option-icon`,"aria-hidden":"true",dangerouslySetInnerHTML:{__html:k}}),(0,Ie.jsx)("span",{className:X.text,children:(0,De.optionLabel)(e)}),e.tag&&(0,Ie.jsx)("span",{className:X.tag,children:e.tag})]})})}var rt=require("react/jsx-runtime");function ia(){let[e,i]=(0,ve.useState)(j.isOptionsGridMobileViewport);return(0,ve.useEffect)(()=>{if(typeof window>"u"||!window.matchMedia)return;let t=window.matchMedia(j.OPTIONS_GRID_MOBILE_QUERY),r=()=>i(t.matches);return r(),t.addEventListener("change",r),()=>t.removeEventListener("change",r)},[]),e}function Et({options:e,activeIndex:i,onSelect:t,onHighlight:r,listboxId:n,loading:o,groupKey:s="",optionsPosition:b="below",showIcons:v=!0}){let h=ia(),y=(0,ve.useRef)(null),[f,k]=(0,ve.useState)(null);(0,ve.useLayoutEffect)(()=>{let w=y.current,O=w&&!o&&(0,j.needsOptionsGridMeasurement)(e.length,h)?(0,j.measureOptionsGrid)(w):null;k(O?(0,j.planOptionsGrid)(e.length,h,O.rowWidths,O.gridWidth):null)},[e,h,o]);let P=f??(0,j.planOptionsGrid)(e.length,h,null,null);return(0,rt.jsx)(Ct,{min:"250px",max:"1fr",gap:"0",scroll:!0,scrollResetKey:s,template:P.template,maxHeight:P.maxHeight,innerRef:w=>{y.current=w},"data-aia-group":s,children:e.map((w,R)=>(0,rt.jsx)(St,{option:w,isHighlighted:R===i,onSelect:t,onHighlight:()=>r(R),id:`${n}-option-${R}`,loading:o,showIcon:v,scrollHint:!o&&P.scrollHintIndices.includes(R),enterDelayMs:o?0:(0,j.optionEnterDelayMs)(R,P.cols,e.length,b)},`${s}\0${w.text}`))})}if(typeof document<"u"&&!document.getElementById("ac-style-8414cd5f")){let e=document.createElement("style");e.id="ac-style-8414cd5f",e.textContent=`.aia-stack {
1983
+ `,document.head.appendChild(e)}var U={item:"aia-item-d4vpD",fadeIn:"aia-fadeIn-I8u35",content:"aia-content-T-Qba",riseIn:"aia-riseIn-etXZT",tappable:"aia-tappable-70KcX",nonTappable:"aia-nonTappable-xSZM-",highlighted:"aia-highlighted-Hb0SU",tag:"aia-tag-e3Fwe",pressed:"aia-pressed-98o-r",pressCompress:"aia-pressCompress-ICV3q",scrollHint:"aia-scrollHint-xKXPt",skeletonPulse:"aia-skeletonPulse-plvdD",text:"aia-text-yqoh9",icon:"aia-icon-Qw938",count:"aia-count-IpYbQ",image:"aia-image-YZAbO"};var oe=require("react/jsx-runtime");function Et({option:e,isHighlighted:o,onSelect:t,onHighlight:s,id:n,loading:i,showIcon:r=!0,showImage:m=!0,showCount:w=!0,scrollHint:g,enterDelayMs:x=0}){let[h]=(0,ne.useState)(x),[C,E]=(0,ne.useState)(!1),k=m?(0,re.optionImageSrc)(e.image_url):null,[K,R]=(0,ne.useState)(null),T=(0,ne.useMemo)(()=>!k&&r&&e.icon_svg?(0,re.sanitizeOptionIconSvg)(e.icon_svg):null,[k,r,e.icon_svg]),N=w?(0,re.formatOptionCount)(e.item_count):null,L=(0,ne.useRef)(void 0);(0,ne.useEffect)(()=>()=>clearTimeout(L.current),[]);let F=()=>{i||!e.is_tappable||C||(E(!0),t(e),clearTimeout(L.current),L.current=setTimeout(()=>E(!1),170))},W=[U.item,o&&!i?U.highlighted:"",e.is_tappable?U.tappable:U.nonTappable,C?U.pressed:"",g?U.scrollHint:""].filter(Boolean).join(" ");return(0,oe.jsx)("div",{id:n,role:"option","data-aia-option":"","data-aia-loading":i?"":void 0,"data-aia-icon":T&&e.icon?e.icon:void 0,"data-aia-image":k?"":void 0,"data-aia-item-count":N!==null?e.item_count:void 0,"aria-selected":o,className:W,style:{[re.OPTION_ENTER_DELAY_VAR]:`${h}ms`},tabIndex:i||!e.is_tappable?-1:0,onClick:F,onKeyDown:S=>{!i&&e.is_tappable&&(S.key==="Enter"||S.key===" ")&&(S.preventDefault(),F())},onMouseEnter:!i&&e.is_tappable?s:void 0,children:(0,oe.jsxs)("span",{className:U.content,children:[k&&(0,oe.jsx)("span",{className:`${U.image} magicx-aia-option-image`,"aria-hidden":"true",children:(0,oe.jsx)("img",{src:k,alt:"",loading:"lazy",decoding:"async",referrerPolicy:"no-referrer",draggable:!1,hidden:K===k,onError:()=>R(k)})}),T&&(0,oe.jsx)("span",{className:`${U.icon} magicx-aia-option-icon`,"aria-hidden":"true",dangerouslySetInnerHTML:{__html:T}}),(0,oe.jsx)("span",{className:U.text,children:(0,re.optionLabel)(e)}),e.tag&&(0,oe.jsx)("span",{className:U.tag,children:e.tag}),N!==null&&(0,oe.jsx)("span",{className:`${U.count} magicx-aia-option-count`,children:N})]})})}var lt=require("react/jsx-runtime");function ra(){let[e,o]=(0,ke.useState)(j.isOptionsGridMobileViewport);return(0,ke.useEffect)(()=>{if(typeof window>"u"||!window.matchMedia)return;let t=window.matchMedia(j.OPTIONS_GRID_MOBILE_QUERY),s=()=>o(t.matches);return s(),t.addEventListener("change",s),()=>t.removeEventListener("change",s)},[]),e}function Tt({options:e,activeIndex:o,onSelect:t,onHighlight:s,listboxId:n,loading:i,groupKey:r="",optionsPosition:m="below",showIcons:w=!0,showImages:g=!0,showCounts:x=!0}){let h=ra(),C=(0,ke.useRef)(null),[E,k]=(0,ke.useState)(null);(0,ke.useLayoutEffect)(()=>{let R=C.current,N=R&&!i&&(0,j.needsOptionsGridMeasurement)(e.length,h)?(0,j.measureOptionsGrid)(R):null;k(N?(0,j.planOptionsGrid)(e.length,h,N.rowWidths,N.gridWidth):null)},[e,h,i]);let K=E??(0,j.planOptionsGrid)(e.length,h,null,null);return(0,lt.jsx)(St,{min:"250px",max:"1fr",gap:"0",scroll:!0,scrollResetKey:r,template:K.template,maxHeight:K.maxHeight,innerRef:R=>{C.current=R},"data-aia-group":r,children:e.map((R,T)=>(0,lt.jsx)(Et,{option:R,isHighlighted:T===o,onSelect:t,onHighlight:()=>s(T),id:`${n}-option-${T}`,loading:i,showIcon:w,showImage:g,showCount:x,scrollHint:!i&&K.scrollHintIndices.includes(T),enterDelayMs:i?0:(0,j.optionEnterDelayMs)(T,K.cols,e.length,m)},`${r}\0${R.text}`))})}if(typeof document<"u"&&!document.getElementById("ac-style-8414cd5f")){let e=document.createElement("style");e.id="ac-style-8414cd5f",e.textContent=`.aia-stack {
1859
1984
  display: flex;
1860
1985
  flex-direction: column;
1861
1986
  gap: var(--aia-stack-space, 0.5rem);
@@ -1870,7 +1995,7 @@
1870
1995
  align-items: end;
1871
1996
  }
1872
1997
  /* data-align="stretch" is the flex default \u2014 no rule needed. */
1873
- `,document.head.appendChild(e)}var Tt=require("react/jsx-runtime");function It({space:e,align:i="stretch",className:t,children:r,...n}){let o=e?{"--aia-stack-space":e}:void 0;return(0,Tt.jsx)("div",{className:t?`aia-stack ${t}`:"aia-stack","data-align":i,style:o,...n,children:r})}var z=require("react/jsx-runtime"),oa=[159,119,164],na=()=>{},At=()=>{};function ra(e){let i=()=>typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-color-scheme: dark)").matches,[t,r]=(0,J.useState)(i);if((0,J.useEffect)(()=>{if(e!=="auto"||typeof window>"u"||typeof window.matchMedia!="function")return;let n=window.matchMedia("(prefers-color-scheme: dark)"),o=()=>r(n.matches);return n.addEventListener("change",o),()=>n.removeEventListener("change",o)},[e]),e!==void 0)return e==="auto"?t?"dark":"light":e}function sa(e,i){let t=(0,J.useRef)(null);(0,J.useEffect)(()=>{let r=e.current,n=i.current;if(!r||!n)return;let o=r.querySelector(".aia-grid[data-scroll]");if(t.current&&t.current.grid!==o&&(t.current.controller.destroy(),t.current=null),o&&!t.current){t.current={grid:o,controller:(0,Le.attachScrollArrow)({dropdown:r,grid:o,button:n})};return}t.current?.controller.update()}),(0,J.useEffect)(()=>()=>{t.current?.controller.destroy(),t.current=null},[])}function Ve({suggestions:e,activeIndex:i,onSelect:t,onHighlight:r,isOpen:n,id:o,className:s,pills:b,onPillClick:v,showPills:h=!0,onSkip:y,showSkipButton:f=!0,showOptionIcons:k=!0,skipDisabled:P=!1,activeSelected:w=!1,isLoading:R=!1,isInputEmpty:O=!1,products:N,onProductSelect:B,onProductFocusChange:ne,productsLayout:F="row",formatType:I="options",dateView:te=null,selectedDateIso:we=null,selectedDateRange:re=null,dateRangeStart:u=null,onPreviousMonth:xe,onNextMonth:K,optionsPosition:se="below",mode:ye}){let le=ra(ye),ae=le!==void 0,de=(0,J.useRef)(null),ie=(0,J.useRef)(null);sa(de,ie);let ce=e[0]?.options??[],pe=!!(b&&b.length>0&&v),W=!!(N&&N.length>0),G=n&&(ce.length>0||h&&pe||R||W),Z={suggestions:e,activeIndex:i,pills:b,showPills:h,showSkipButton:f,showOptionIcons:k,skipDisabled:P,activeSelected:w,isLoading:R,isInputEmpty:O,products:N,formatType:I,dateView:te,selectedDateIso:we,selectedDateRange:re,dateRangeStart:u},c=(0,J.useRef)(Z);G&&(c.current=Z);let a=G?Z:c.current,m=a.suggestions[0],x=m?.options??[],l=a.activeIndex>=0&&!!x[a.activeIndex]?.is_tappable,T=!!(a.pills&&a.pills.length>0&&v),he=a.showPills&&T,V=a.showPills&&!T&&a.isLoading,d=he||V,ue=T&&a.showSkipButton&&!a.isInputEmpty&&!!y,Se=a.pills?.[0]?.text,ke=(0,Le.isCalendarFormat)(a.formatType)&&a.dateView!=null,Te=x.length>0&&!ke,fe=x.length>0&&ke&&!a.isLoading,ze=a.isLoading&&!Te&&!fe,_=a.products??[];return(0,z.jsxs)("div",{ref:de,id:o,role:"listbox","data-aia-dropdown":"","data-options-position":se,"data-mode":le,"data-aia-loading":a.isLoading?"":void 0,"data-aia-has-products":_.length>0?"":void 0,className:`${ae?"magicx-aia ":""}${me.dropdown} ${G?me.visible:""} ${s??""}`,onMouseDown:q=>q.preventDefault(),children:[(0,z.jsxs)(It,{space:"8px",children:[(d||ue)&&(0,z.jsxs)(He,{noWrap:!0,className:me.pillBar,"data-aia-pillbar":"",children:[d&&(0,z.jsx)("span",{className:me.pillScroll,"data-aia-pill-scroll":"",children:(0,z.jsx)(Ue,{pills:a.pills??[],activePillIndex:0,activeSelected:a.activeSelected,onSelectPill:v??(()=>{}),rounded:!0,loading:a.isLoading})}),ue&&(0,z.jsx)("button",{type:"button",tabIndex:-1,className:me.skip,"data-aia-skip":"",disabled:a.isLoading||a.skipDisabled,"aria-label":Se?`Skip ${Se}`:"Skip",onClick:y,children:"skip"})]}),Te&&(0,z.jsx)(Et,{options:x,activeIndex:a.activeIndex,onSelect:t,onHighlight:r,listboxId:o,loading:a.isLoading,groupKey:m?`${m.type} ${m.text}`:"",optionsPosition:se,showIcons:a.showOptionIcons}),fe&&a.dateView&&(0,z.jsx)(mt,{options:x,activeIndex:a.activeIndex,listboxId:o,view:a.dateView,selection:{selectedIso:a.selectedDateIso??null,selectedRange:a.selectedDateRange??null,rangeStart:a.dateRangeStart??null},onSelect:t,onHighlight:r,onPreviousMonth:xe??At,onNextMonth:K??At}),ze&&(0,z.jsx)("div",{className:me.skeletonBars,"data-aia-skeleton-bars":"",children:oa.map(q=>(0,z.jsx)("span",{className:me.skeletonBar,style:{width:q}},`bar-${q}`))}),(0,z.jsx)(yt,{products:_,listboxId:o,onSelect:B??na,onFocusChange:ne,focusable:G,layout:F}),(0,z.jsx)(gt,{isOptionHighlighted:l,isInputEmpty:a.isInputEmpty})]}),(0,z.jsx)("button",{ref:ie,type:"button",tabIndex:-1,className:me.scrollArrow,"data-aia-scroll-arrow":"","aria-label":Le.SCROLL_ARROW_LABEL,"aria-hidden":"true",children:(0,z.jsx)("svg",{viewBox:"0 0 16 16",width:"18",height:"18",fill:"none",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",focusable:"false",children:(0,z.jsx)("path",{d:"M4 6.5 8 10.5l4-4"})})})]})}var Oe=require("@magicx-eng/ai-autocomplete-vanilla");if(typeof document<"u"&&!document.getElementById("ac-style-fdee06e6")){let e=document.createElement("style");e.id="ac-style-fdee06e6",e.textContent=`.aia-submitButton-otz7H {
1998
+ `,document.head.appendChild(e)}var Rt=require("react/jsx-runtime");function At({space:e,align:o="stretch",className:t,children:s,...n}){let i=e?{"--aia-stack-space":e}:void 0;return(0,Rt.jsx)("div",{className:t?`aia-stack ${t}`:"aia-stack","data-align":o,style:i,...n,children:s})}var B=require("react/jsx-runtime"),sa=[159,119,164],la=()=>{},Dt=()=>{};function da(e){let o=()=>typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-color-scheme: dark)").matches,[t,s]=(0,te.useState)(o);if((0,te.useEffect)(()=>{if(e!=="auto"||typeof window>"u"||typeof window.matchMedia!="function")return;let n=window.matchMedia("(prefers-color-scheme: dark)"),i=()=>s(n.matches);return n.addEventListener("change",i),()=>n.removeEventListener("change",i)},[e]),e!==void 0)return e==="auto"?t?"dark":"light":e}function ca(e,o){let t=(0,te.useRef)(null);(0,te.useEffect)(()=>{let s=e.current,n=o.current;if(!s||!n)return;let i=s.querySelector(".aia-grid[data-scroll]");if(t.current&&t.current.grid!==i&&(t.current.controller.destroy(),t.current=null),i&&!t.current){t.current={grid:i,controller:(0,Me.attachScrollArrow)({dropdown:s,grid:i,button:n})};return}t.current?.controller.update()}),(0,te.useEffect)(()=>()=>{t.current?.controller.destroy(),t.current=null},[])}function Ve({suggestions:e,activeIndex:o,onSelect:t,onHighlight:s,isOpen:n,id:i,className:r,pills:m,onPillClick:w,showPills:g=!0,onSkip:x,showSkipButton:h=!0,showOptionIcons:C=!0,showOptionImages:E=!0,showOptionCounts:k=!0,skipDisabled:K=!1,activeSelected:R=!1,isLoading:T=!1,isInputEmpty:N=!1,products:L,onProductSelect:F,onProductFocusChange:W,productsLayout:S="row",formatType:se="options",dateView:le=null,selectedDateIso:Ce=null,selectedDateRange:de=null,dateRangeStart:u=null,onPreviousMonth:Y,onNextMonth:Pe,optionsPosition:ce="below",mode:Se}){let pe=da(Se),Ie=pe!==void 0,Z=(0,te.useRef)(null),he=(0,te.useRef)(null);ca(Z,he);let ue=e[0]?.options??[],me=!!(m&&m.length>0&&w),fe=!!(L&&L.length>0),H=n&&(ue.length>0||g&&me||T||fe),d={suggestions:e,activeIndex:o,pills:m,showPills:g,showSkipButton:h,showOptionIcons:C,showOptionImages:E,showOptionCounts:k,skipDisabled:K,activeSelected:R,isLoading:T,isInputEmpty:N,products:L,formatType:se,dateView:le,selectedDateIso:Ce,selectedDateRange:de,dateRangeStart:u},b=(0,te.useRef)(d);H&&(b.current=d);let a=H?d:b.current,y=a.suggestions[0],v=y?.options??[],p=a.activeIndex>=0&&!!v[a.activeIndex]?.is_tappable,$=!!(a.pills&&a.pills.length>0&&w),X=a.showPills&&$,ge=a.showPills&&!$&&a.isLoading,c=X||ge,be=$&&a.showSkipButton&&!a.isInputEmpty&&!!x,Ee=a.pills?.[0]?.text,ve=(0,Me.isCalendarFormat)(a.formatType)&&a.dateView!=null,De=v.length>0&&!ve,we=v.length>0&&ve&&!a.isLoading,He=a.isLoading&&!De&&!we,J=a.products??[];return(0,B.jsxs)("div",{ref:Z,id:i,role:"listbox","data-aia-dropdown":"","data-options-position":ce,"data-mode":pe,"data-aia-loading":a.isLoading?"":void 0,"data-aia-has-products":J.length>0?"":void 0,className:`${Ie?"magicx-aia ":""}${xe.dropdown} ${H?xe.visible:""} ${r??""}`,onMouseDown:G=>G.preventDefault(),children:[(0,B.jsxs)(At,{space:"8px",children:[(c||be)&&(0,B.jsxs)(Ke,{noWrap:!0,className:xe.pillBar,"data-aia-pillbar":"",children:[c&&(0,B.jsx)("span",{className:xe.pillScroll,"data-aia-pill-scroll":"",children:(0,B.jsx)(Qe,{pills:a.pills??[],activePillIndex:0,activeSelected:a.activeSelected,onSelectPill:w??(()=>{}),rounded:!0,loading:a.isLoading})}),be&&(0,B.jsx)("button",{type:"button",tabIndex:-1,className:xe.skip,"data-aia-skip":"",disabled:a.isLoading||a.skipDisabled,"aria-label":Ee?`Skip ${Ee}`:"Skip",onClick:x,children:"skip"})]}),De&&(0,B.jsx)(Tt,{options:v,activeIndex:a.activeIndex,onSelect:t,onHighlight:s,listboxId:i,loading:a.isLoading,groupKey:y?`${y.type} ${y.text}`:"",optionsPosition:ce,showIcons:a.showOptionIcons,showImages:a.showOptionImages,showCounts:a.showOptionCounts}),we&&a.dateView&&(0,B.jsx)(bt,{options:v,activeIndex:a.activeIndex,listboxId:i,view:a.dateView,selection:{selectedIso:a.selectedDateIso??null,selectedRange:a.selectedDateRange??null,rangeStart:a.dateRangeStart??null},onSelect:t,onHighlight:s,onPreviousMonth:Y??Dt,onNextMonth:Pe??Dt}),He&&(0,B.jsx)("div",{className:xe.skeletonBars,"data-aia-skeleton-bars":"",children:sa.map(G=>(0,B.jsx)("span",{className:xe.skeletonBar,style:{width:G}},`bar-${G}`))}),(0,B.jsx)(Ct,{products:J,listboxId:i,onSelect:F??la,onFocusChange:W,focusable:H,layout:S}),(0,B.jsx)(vt,{isOptionHighlighted:p,isInputEmpty:a.isInputEmpty})]}),(0,B.jsx)("button",{ref:he,type:"button",tabIndex:-1,className:xe.scrollArrow,"data-aia-scroll-arrow":"","aria-label":Me.SCROLL_ARROW_LABEL,"aria-hidden":"true",children:(0,B.jsx)("svg",{viewBox:"0 0 16 16",width:"18",height:"18",fill:"none",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",focusable:"false",children:(0,B.jsx)("path",{d:"M4 6.5 8 10.5l4-4"})})})]})}var Ne=require("@magicx-eng/ai-autocomplete-vanilla");if(typeof document<"u"&&!document.getElementById("ac-style-fdee06e6")){let e=document.createElement("style");e.id="ac-style-fdee06e6",e.textContent=`.aia-submitButton-otz7H {
1874
1999
  flex-shrink: 0;
1875
2000
  width: 32px;
1876
2001
  height: 32px;
@@ -1923,5 +2048,5 @@
1923
2048
  );
1924
2049
  cursor: default;
1925
2050
  }
1926
- `,document.head.appendChild(e)}var Rt={submitButton:"aia-submitButton-otz7H"};var Qe=require("react/jsx-runtime");function Dt({disabled:e,onClick:i}){return(0,Qe.jsx)("button",{type:"button","data-aia-submit":"",className:Rt.submitButton,disabled:e,onClick:t=>{t.stopPropagation(),i()},"aria-label":"Submit",children:(0,Qe.jsx)("svg",{width:"18",height:"18",viewBox:"0 0 18 18",fill:"none",role:"img","aria-label":"Submit",children:(0,Qe.jsx)("path",{d:"M9 14V4M9 4L4 9M9 4L14 9",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})}var Me=require("@magicx-eng/ai-autocomplete-vanilla"),S=require("react");var st=require("react");function Lt(e){let i=(0,st.useRef)(e);i.current=e;let t=Object.keys(e??{}).sort().join("\0"),r=(0,st.useRef)({key:"",overrides:void 0});if(r.current.key!==t){let n={};for(let o of Object.keys(e??{})){let s=(b,v,h)=>{let y=i.current?.[o];return y?y(b,v,h):[]};n[o]=s}r.current={key:t,overrides:e?n:void 0}}return{overrides:r.current.overrides,key:t}}var lt=require("react");function Mt(e){let i=(0,lt.useRef)(e);i.current=e;let t=(0,lt.useRef)(null);t.current===null&&(t.current={fetch:(n,o)=>{let s=i.current;return s?s.fetch(n,o):Promise.reject(new Error("products config removed"))},transform:n=>i.current?.transform(n)??[],get limit(){return i.current?.limit}});let r=e!==void 0;return{config:r?t.current:void 0,enabled:r}}var la={text:"",completedParams:[],identifiedParams:[],skippedParams:[],pendingSpan:null,suggestions:[],products:[],customFields:null,optionSearch:null,activeDropdownIndex:-1,newParamId:null,isLoading:!0,isReady:!1,error:null,segments:[],actionableSuggestions:[],filteredOptions:[],activeFormatType:"options",dateView:null,dateRangeStart:null,placeholderText:"",optionQuery:"",isSearchingOptions:!1,isDropdownOpen:!1,isActivePillSelected:!1,filterBase:0,filterInProgress:!1,pillTapped:!1,skipNextFetch:!1,lastRawQuery:"",isFocused:!1,editingParam:null,editingIdentified:null,editingAnchor:null,editingTail:null,caretOffset:null,inSelectionAnimation:!1,dateViewMonth:null,pendingRangeStart:null};function Ze({onSubmit:e,onResult:i,onError:t,optionOverrides:r,maskCompletedText:n,apiConfig:o,additionalContext:s,columns:b=2,dropdownTrigger:v,optionsPosition:h,closeDropdownOnBlur:y,showNonTappableOptions:f,showOptionIcons:k,showSkipButton:P,showProducts:w,onFocus:R,onBlur:O,value:N,completedParams:B,onChange:ne,onParamsChange:F,products:I,onProductSelect:te,source:we,setCursor:re}){let u=(0,S.useRef)(null),[xe,K]=(0,S.useState)(null),se=(0,S.useRef)(e);se.current=e;let ye=(0,S.useRef)(i);ye.current=i;let le=(0,S.useRef)(t);le.current=t;let ae=(0,S.useRef)(ne);ae.current=ne;let de=(0,S.useRef)(F);de.current=F;let ie=(0,S.useRef)(R);ie.current=R;let ce=(0,S.useRef)(O);ce.current=O;let pe=(0,S.useRef)(re);pe.current=re;let W=(0,S.useRef)(te);W.current=te;let G=Mt(I),Z=Lt(r);(0,S.useEffect)(()=>{if(typeof document>"u")return;let g=new Me.AIAutocomplete(document.createElement("div"),{renderMode:"headless",apiConfig:o,additionalContext:s,optionOverrides:Z.overrides,maskCompletedText:n,columns:b,dropdownTrigger:v,optionsPosition:h,closeDropdownOnBlur:y,showNonTappableOptions:f,showProducts:w,source:we,value:N,completedParams:B,onSubmit:(...M)=>se.current?.(...M),onResult:(...M)=>ye.current?.(...M),onError:(...M)=>le.current?.(...M),onChange:(...M)=>ae.current?.(...M),onParamsChange:(...M)=>de.current?.(...M),onFocus:()=>ie.current?.(),onBlur:()=>ce.current?.(),onProductSelect:M=>W.current?.(M),setCursor:M=>pe.current?.(M),products:G.config});u.current=g,K(g.getState());let Q=g.subscribe(M=>K(M));return()=>{Q(),g.destroy(),u.current===g&&(u.current=null)}},[]),(0,S.useEffect)(()=>{N!==void 0&&u.current?.setValue(N)},[N]),(0,S.useEffect)(()=>{B!==void 0&&u.current?.setCompletedParams(B)},[B]);let c=JSON.stringify(o??null),a;try{a=JSON.stringify(s??null)}catch{a="[unstringifiable]"}(0,S.useEffect)(()=>{u.current?.update({apiConfig:o,additionalContext:s,optionOverrides:Z.overrides,dropdownTrigger:v,optionsPosition:h,closeDropdownOnBlur:y,showNonTappableOptions:f,showProducts:w})},[c,a,Z.key,v,h,y,f,w]);let m=(0,S.useRef)(!1);(0,S.useEffect)(()=>{if(!m.current){m.current=!0;return}u.current?.update({products:G.config})},[G.enabled]);let x=(0,S.useRef)(null);x.current===null&&(x.current={handleTextChange:g=>u.current?.handleTextChange(g),handleKeyDown:g=>{let Q="nativeEvent"in g?g.nativeEvent:g;u.current?.handleKeyDown(Q)},setFocused:g=>u.current?.setFocused(g),startEditingParam:g=>u.current?.startEditingParam(g),exitEditMode:()=>u.current?.exitEditMode(),handleCaretAfterInput:g=>u.current?.handleCaretAfterInput(g),handleCaretMove:g=>u.current?.handleCaretMove(g),replaceEditingRange:g=>u.current?.replaceEditingRange(g)??!1,setActivePill:g=>u.current?.setActivePill(g),skipActivePill:()=>u.current?.skipActivePill(),removeLastParam:()=>u.current?.removeLastParam(),clearNewParamId:()=>u.current?.clearNewParamId(),reset:()=>u.current?.reset(),selectOption:g=>u.current?.selectOption(g),selectProduct:g=>u.current?.selectProduct(g),setActiveDropdownIndex:g=>u.current?.setActiveDropdownIndex(g),showPreviousMonth:()=>u.current?.showPreviousMonth(),showNextMonth:()=>u.current?.showNextMonth(),handleFocus:()=>u.current?.setFocused(!0),handleBlur:()=>u.current?.setFocused(!1)});let l=x.current,T=(0,S.useCallback)(g=>{let Q=g.target.value,Je=Q.length>0&&!g.nativeEvent?.isComposing&&Q[0]!==Q[0].toUpperCase()?Q[0].toUpperCase()+Q.slice(1):Q;u.current?.handleTextChange(Je)},[]),he=(0,S.useCallback)(g=>{u.current?.handleKeyDown(g.nativeEvent)},[]),V=u.current,d=xe??la,ue=N!==void 0?N:d.text,Se=B!==void 0?B:d.completedParams,ke=d.actionableSuggestions,Te=ke[0],fe=V?.listboxId??"",ze=d.activeDropdownIndex>=0&&V?`${fe}-option-${d.activeDropdownIndex}`:void 0,_=d.editingParam,q=d.editingIdentified,Ae=_?{type:_.suggestionType,text:_.suggestionPlaceholder,required:!0,options:_.options}:q?{type:q.type,text:(0,Me.identifiedParamLabel)(q.type),required:!0,options:[]}:null,Fe=Ae??Te,Xe=Ae?[Ae]:ke,Ne=(0,Me.dateSelectionFor)(d),Ke=!V||d.isLoading&&!d.editingParam&&!d.inSelectionAnimation||d.isSearchingOptions;return{completedParams:Se,skippedParams:d.skippedParams,identifiedParams:d.identifiedParams,suggestionPills:ke,setActivePill:l.setActivePill,skipActivePill:l.skipActivePill,removeLastParam:l.removeLastParam,segments:d.segments,newParamId:d.newParamId,clearNewParamId:l.clearNewParamId,suggestions:d.suggestions,activeIndex:d.activeDropdownIndex,isReady:d.isReady,isLoading:Ke,isFocused:d.isFocused,isDropdownOpen:d.isDropdownOpen,isActivePillSelected:d.isActivePillSelected,placeholderText:d.placeholderText,listboxId:fe,error:d.error,products:d.products,customFields:d.customFields,selectProduct:l.selectProduct,handleTextChange:l.handleTextChange,handleKeyDown:l.handleKeyDown,setFocused:l.setFocused,editingParam:_,editingIdentified:q,editingAnchor:d.editingAnchor,caretOffset:d.caretOffset,startEditingParam:l.startEditingParam,exitEditMode:l.exitEditMode,handleCaretAfterInput:l.handleCaretAfterInput,handleCaretMove:l.handleCaretMove,replaceEditingRange:l.replaceEditingRange,inputProps:{value:ue,placeholder:d.placeholderText||void 0,onChange:T,onKeyDown:he,onFocus:l.handleFocus,onBlur:l.handleBlur,role:"combobox","aria-expanded":d.isDropdownOpen,"aria-activedescendant":ze,"aria-autocomplete":"list","aria-controls":fe},reset:l.reset,dropdownProps:{suggestions:Fe?[{...Fe,options:d.filteredOptions}]:[],activeIndex:d.activeDropdownIndex,onSelect:l.selectOption,onHighlight:l.setActiveDropdownIndex,isOpen:d.isDropdownOpen,id:fe,pills:Xe,activeSelected:d.isActivePillSelected,onPillClick:l.setActivePill,onSkip:l.skipActivePill,showSkipButton:(P??!0)&&!_&&!q,showOptionIcons:k??!0,skipDisabled:d.inSelectionAnimation,isLoading:Ke,isInputEmpty:ue.trim().length===0,products:d.products,onProductSelect:l.selectProduct,onProductFocusChange:l.setFocused,formatType:d.activeFormatType,dateView:d.dateView,selectedDateIso:Ne.selectedIso,selectedDateRange:Ne.selectedRange,dateRangeStart:Ne.rangeStart,onPreviousMonth:l.showPreviousMonth,onNextMonth:l.showNextMonth,optionsPosition:h??"below"}}}var $=require("@magicx-eng/ai-autocomplete-vanilla"),C=require("react"),Ye;function da(){if(Ye!==void 0)return Ye;if(typeof document>"u")return!1;let e=document.createElement("div");return e.setAttribute("contenteditable","plaintext-only"),Ye=e.contentEditable==="plaintext-only",Ye}function Ot(e){let{segments:i,showChipIcons:t=!0,newParamId:r,editingParam:n,editingIdentified:o,editingAnchor:s,caretOffset:b,placeholderText:v,isFocused:h,isDropdownOpen:y,listboxId:f,activeDescendantId:k,autoFocus:P,handleTextChange:w,handleKeyDown:R,handleCaretAfterInput:O,handleCaretMove:N,startEditingParam:B,replaceEditingRange:ne,setFocused:F}=e,I=(0,C.useRef)(null),te=(0,C.useRef)(!1),we=(0,C.useRef)(""),re=(0,C.useRef)(""),u=(0,C.useRef)(null),xe=(0,C.useRef)(0);u.current=b,(0,C.useEffect)(()=>{if(!P)return;let c=I.current;if(!c)return;document.activeElement===c?F(!0):c.focus();let a=c.ownerDocument??document,m=a.getSelection(),x=m&&m.rangeCount>0&&c.contains(m.anchorNode);if(m&&!x){let l=a.createRange();l.selectNodeContents(c),l.collapse(!0),m.removeAllRanges(),m.addRange(l)}},[P,F]),(0,C.useEffect)(()=>{let c=I.current;if(!c)return;let a=c.ownerDocument??document,m=()=>{let x=a.getSelection();if(!x||x.rangeCount===0||!x.anchorNode||!c.contains(x.anchorNode))return;let l=x.anchorNode,T=l.nodeType===Node.ELEMENT_NODE?l:l.parentElement,V=(x.isCollapsed?T?.closest("strong[data-param-id]"):null)?.dataset.paramId??null,d=n?.id??o?.id??null;if(V&&V!==d){B(V);return}performance.now()-xe.current<50||N((0,$.getCursorOffset)(c))};return a.addEventListener("selectionchange",m),()=>a.removeEventListener("selectionchange",m)},[n,o,B,N]),(0,C.useLayoutEffect)(()=>{let c=I.current;c&&(0,$.renderEditableContent)({input:c,segments:i,newParamId:r,editingParamId:n?.id??null,placeholderText:v??"",isFocused:h,showChipIcons:t})},[i,r,n,v,h,t]),(0,C.useLayoutEffect)(()=>{let c=we.current,a=r??"";if(we.current=a,!a||a===c)return;let m=I.current;if(!m)return;m.focus();let x=u.current??(0,$.plainTextLength)(m);(0,$.setCursorOffset)(m,x)},[r]),(0,C.useLayoutEffect)(()=>{let c=re.current,a=n?.id??"";if(re.current=a,!a||a===c||s==null)return;let m=I.current;m&&(0,$.setCursorOffset)(m,s)},[n,s]);let K=(0,C.useCallback)(()=>{if(te.current)return;let c=I.current;if(!c)return;let a=(0,$.extractPlainText)(c),x=a.length>0&&a[0]!==a[0].toUpperCase()?a[0].toUpperCase()+a.slice(1):a;w(x)},[w]),se=(0,C.useCallback)(()=>{xe.current=performance.now(),K();let c=I.current;c&&O((0,$.getCursorOffset)(c))},[K,O]);(0,C.useEffect)(()=>{let c=I.current;if(!c)return;let a=m=>{let x=m,l=x.inputType;if(l==="insertParagraph"||l==="insertLineBreak"||l==="insertFromDrop"){m.preventDefault();return}if(l.startsWith("insert")||l.startsWith("delete")){let T=l.startsWith("delete")?"":x.data??"";ne(T)&&m.preventDefault()}};return c.addEventListener("beforeinput",a),()=>c.removeEventListener("beforeinput",a)},[ne]);let ye=(0,C.useCallback)(()=>{te.current=!0},[]),le=(0,C.useCallback)(()=>{te.current=!1,K()},[K]),ae=(0,C.useCallback)(c=>{c.preventDefault();let a=I.current;if(!a)return;let m=(c.clipboardData.getData("text/plain")??"").replace(/\r?\n/g," ");if(!m)return;let x=a.ownerDocument??document,l=x.getSelection();if(!l||l.rangeCount===0)return;let T=l.getRangeAt(0);if(!a.contains(T.startContainer))return;T.deleteContents();let he=x.createTextNode(m);T.insertNode(he),T.setStartAfter(he),T.collapse(!0),l.removeAllRanges(),l.addRange(T),K()},[K]),de=(0,C.useCallback)(c=>R(c),[R]),ie=(0,C.useCallback)(()=>F(!0),[F]),ce=(0,C.useCallback)(()=>F(!1),[F]),pe=(0,C.useCallback)(()=>I.current?.focus(),[]),W=(0,C.useCallback)(()=>I.current?.blur(),[]),G=(0,C.useCallback)(()=>{let c=I.current;return c?(0,$.extractPlainText)(c):""},[]),Z=da()?"plaintext-only":"true";return{inputRef:I,editorProps:{ref:I,contentEditable:Z,suppressContentEditableWarning:!0,tabIndex:0,role:"combobox","aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":f,"aria-expanded":y,"aria-activedescendant":k,spellCheck:!0,enterKeyHint:"send",onInput:se,onKeyDown:de,onCompositionStart:ye,onCompositionEnd:le,onPaste:ae,onFocus:ie,onBlur:ce},getPlainText:G,focus:pe,blur:W}}var ee=require("react/jsx-runtime");function ca(e){return e!=="auto"?e:typeof window>"u"||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}var zt=(0,L.forwardRef)(function({onSubmit:i,onResult:t,onError:r,optionOverrides:n,maskCompletedText:o,className:s,apiConfig:b,additionalContext:v,columns:h,pillPlacement:y="dropdown",mode:f="auto",optionsPosition:k="below",animations:P=!0,dropdownTrigger:w,closeDropdownOnBlur:R,showNonTappableOptions:O,showOptionIcons:N=!0,showChipIcons:B=!0,showSkipButton:ne,showProducts:F,productsLayout:I,autoFocus:te=!0,onFocus:we,onBlur:re,value:u,completedParams:xe,onChange:K,onParamsChange:se,products:ye,onProductSelect:le,submitButton:ae},de){let ie=(0,L.useRef)(null),ce=(0,L.useRef)(null),pe=(0,L.useRef)(()=>{}),W=(0,L.useRef)(null),G=(0,L.useRef)(null);(0,L.useEffect)(()=>{let E=ie.current;if(E)return W.current?W.current.setMode(f):W.current=new Oe.ModeController(E,f),()=>{W.current?.destroy(),W.current=null}},[f]);let Z=(0,L.useCallback)(E=>{let Ce=G.current?.current;Ce&&(Ce.focus(),(0,Oe.setCursorOffset)(Ce,E))},[]),{completedParams:c,skippedParams:a,identifiedParams:m,isReady:x,customFields:l,suggestionPills:T,setActivePill:he,skipActivePill:V,segments:d,newParamId:ue,clearNewParamId:Se,placeholderText:ke,isFocused:Te,isDropdownOpen:fe,isActivePillSelected:ze,isLoading:_,activeIndex:q,listboxId:Ae,handleTextChange:Fe,handleKeyDown:Xe,setFocused:Ne,editingParam:Ke,editingIdentified:g,editingAnchor:Q,caretOffset:M,startEditingParam:Je,handleCaretAfterInput:Nt,handleCaretMove:Ht,replaceEditingRange:Bt,dropdownProps:Ft,reset:We}=Ze({onSubmit:E=>pe.current(E),onResult:t,onError:r,optionOverrides:n,maskCompletedText:o,apiConfig:b,additionalContext:v,columns:h,dropdownTrigger:w,optionsPosition:k,closeDropdownOnBlur:R,showNonTappableOptions:O,showOptionIcons:N,showSkipButton:ne,showProducts:F,onFocus:we,onBlur:re,value:u,completedParams:xe,onChange:K,onParamsChange:se,products:ye,onProductSelect:le,source:"full-sdk",setCursor:Z});(0,L.useEffect)(()=>{if(!ue)return;let E=window.setTimeout(()=>Se(),650);return()=>window.clearTimeout(E)},[ue,Se]);let Kt=q>=0?`${Ae}-option-${q}`:void 0,{inputRef:et,editorProps:Wt,focus:Ge,blur:dt,getPlainText:ct}=Ot({segments:d,newParamId:ue,editingParam:Ke,editingIdentified:g,editingAnchor:Q,caretOffset:M,placeholderText:ke,isFocused:Te,showChipIcons:B,isDropdownOpen:fe,listboxId:Ae,activeDescendantId:Kt,autoFocus:te,handleTextChange:Fe,handleKeyDown:Xe,handleCaretAfterInput:Nt,handleCaretMove:Ht,startEditingParam:Je,replaceEditingRange:Bt,setFocused:Ne});G.current=et,(0,L.useLayoutEffect)(()=>{let E=ce.current,Ce=et.current;if(!E||!Ce)return;let pt=()=>{let ut=E.firstElementChild;if(!ut)return;let Ut=ut.getBoundingClientRect(),jt=Ce.getBoundingClientRect();Ut.top>=jt.bottom-2?E.setAttribute("data-aia-pill-wrapped",""):E.removeAttribute("data-aia-pill-wrapped")};pt();let ht=new ResizeObserver(pt);return ht.observe(Ce),()=>ht.disconnect()},[d,T.length,_,et]),(0,L.useImperativeHandle)(de,()=>({focus:Ge,blur:dt,reset:We,setMode:E=>W.current?.setMode(E),skipActivePill:V}),[Ge,dt,We,V]);let _e=!!d.length||c.length>0,tt=(0,L.useCallback)(()=>{if(!_e)return;let E=ct();i((0,Oe.buildSubmitResult)(E,c,a,{identifiedParams:m,isReady:x,customFields:l})),We()},[_e,c,a,m,x,l,i,We,ct]);pe.current=tt;let Gt=(0,L.useCallback)(E=>{E.target?.closest("[data-aia-pill]")||Ge()},[Ge]),_t=y==="inline",qt=y==="dropdown";return(0,ee.jsxs)("div",{ref:ie,className:`magicx-aia ${Ee.container} ${s??""}`,"data-pill-placement":y,"data-options-position":k,"data-animations":P?"on":"off","data-mode":ca(f),children:[(0,ee.jsx)(Ve,{...Ft,showPills:qt,productsLayout:I}),(0,ee.jsxs)("div",{className:Ee.inputWrapper,"data-aia-input-wrapper":"",onClick:Gt,children:[(0,ee.jsxs)("div",{className:Ee.editorArea,"data-aia-editor":"",children:[(0,ee.jsx)("div",{...Wt,className:Ee.input,"data-aia-input":""}),_t&&(_||T.length>0)&&(0,ee.jsx)("span",{ref:ce,className:Ee.pillListContainer,"data-aia-pill-list-container":"",children:(0,ee.jsx)(Ue,{pills:T,activePillIndex:0,activeSelected:ze,onSelectPill:he,loading:_})})]}),ae===null?null:ae===void 0?(0,ee.jsx)(Dt,{disabled:!_e,onClick:tt}):(0,ee.jsx)("span",{"data-aia-submit":"","data-aia-submit-slot":"",className:Ee.submitSlot,onClick:E=>{_e&&(E.stopPropagation(),tt())},children:ae})]})]})});0&&(module.exports={AIAutocomplete,AIAutocompleteDropdown,DATE_RANGE_META_END,DATE_RANGE_META_START,PRODUCT_PATH_PREFIX,WEEKDAY_LABELS,buildSubmitResult,cellDay,cellIso,dateCellMarks,formatDate,formatDateRange,isoDate,monthLabel,optionLabel,parseDate,parseLooseDate,parseLooseDateRange,productFromMatchedItem,productsFromCustomFields,sanitizeOptionIconSvg,selectedRangeFor,useAIAutocomplete,visibleDateRange,withSkippedParams});
2051
+ `,document.head.appendChild(e)}var Lt={submitButton:"aia-submitButton-otz7H"};var Ze=require("react/jsx-runtime");function Ot({disabled:e,onClick:o}){return(0,Ze.jsx)("button",{type:"button","data-aia-submit":"",className:Lt.submitButton,disabled:e,onClick:t=>{t.stopPropagation(),o()},"aria-label":"Submit",children:(0,Ze.jsx)("svg",{width:"18",height:"18",viewBox:"0 0 18 18",fill:"none",role:"img","aria-label":"Submit",children:(0,Ze.jsx)("path",{d:"M9 14V4M9 4L4 9M9 4L14 9",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})}var ze=require("@magicx-eng/ai-autocomplete-vanilla"),I=require("react");var dt=require("react");function Mt(e){let o=(0,dt.useRef)(e);o.current=e;let t=Object.keys(e??{}).sort().join("\0"),s=(0,dt.useRef)({key:"",overrides:void 0});if(s.current.key!==t){let n={};for(let i of Object.keys(e??{})){let r=(m,w,g)=>{let x=o.current?.[i];return x?x(m,w,g):[]};n[i]=r}s.current={key:t,overrides:e?n:void 0}}return{overrides:s.current.overrides,key:t}}var ct=require("react");function zt(e){let o=(0,ct.useRef)(e);o.current=e;let t=(0,ct.useRef)(null);t.current===null&&(t.current={fetch:(n,i)=>{let r=o.current;return r?r.fetch(n,i):Promise.reject(new Error("products config removed"))},transform:n=>o.current?.transform(n)??[],get limit(){return o.current?.limit}});let s=e!==void 0;return{config:s?t.current:void 0,enabled:s}}var pa={text:"",completedParams:[],identifiedParams:[],skippedParams:[],pendingSpan:null,suggestions:[],products:[],customFields:null,optionSearch:null,activeDropdownIndex:-1,newParamId:null,isLoading:!0,isReady:!1,error:null,segments:[],actionableSuggestions:[],filteredOptions:[],activeFormatType:"options",dateView:null,dateRangeStart:null,placeholderText:"",optionQuery:"",isSearchingOptions:!1,isDropdownOpen:!1,isActivePillSelected:!1,filterBase:0,filterInProgress:!1,pillTapped:!1,skipNextFetch:!1,lastRawQuery:"",isFocused:!1,editingParam:null,editingIdentified:null,editingAnchor:null,editingTail:null,caretOffset:null,inSelectionAnimation:!1,dateViewMonth:null,pendingRangeStart:null};function Xe({onSubmit:e,onResult:o,onError:t,optionOverrides:s,maskCompletedText:n,apiConfig:i,additionalContext:r,columns:m=2,dropdownTrigger:w,optionsPosition:g,closeDropdownOnBlur:x,showNonTappableOptions:h,showOptionIcons:C,showOptionImages:E,showOptionCounts:k,showSkipButton:K,showProducts:R,onFocus:T,onBlur:N,value:L,completedParams:F,onChange:W,onParamsChange:S,products:se,onProductSelect:le,source:Ce,setCursor:de}){let u=(0,I.useRef)(null),[Y,Pe]=(0,I.useState)(null),ce=(0,I.useRef)(e);ce.current=e;let Se=(0,I.useRef)(o);Se.current=o;let pe=(0,I.useRef)(t);pe.current=t;let Ie=(0,I.useRef)(W);Ie.current=W;let Z=(0,I.useRef)(S);Z.current=S;let he=(0,I.useRef)(T);he.current=T;let ue=(0,I.useRef)(N);ue.current=N;let me=(0,I.useRef)(de);me.current=de;let fe=(0,I.useRef)(le);fe.current=le;let H=zt(se),d=Mt(s);(0,I.useEffect)(()=>{if(typeof document>"u")return;let f=new ze.AIAutocomplete(document.createElement("div"),{renderMode:"headless",apiConfig:i,additionalContext:r,optionOverrides:d.overrides,maskCompletedText:n,columns:m,dropdownTrigger:w,optionsPosition:g,closeDropdownOnBlur:x,showNonTappableOptions:h,showProducts:R,source:Ce,value:L,completedParams:F,onSubmit:(...z)=>ce.current?.(...z),onResult:(...z)=>Se.current?.(...z),onError:(...z)=>pe.current?.(...z),onChange:(...z)=>Ie.current?.(...z),onParamsChange:(...z)=>Z.current?.(...z),onFocus:()=>he.current?.(),onBlur:()=>ue.current?.(),onProductSelect:z=>fe.current?.(z),setCursor:z=>me.current?.(z),products:H.config});u.current=f,Pe(f.getState());let V=f.subscribe(z=>Pe(z));return()=>{V(),f.destroy(),u.current===f&&(u.current=null)}},[]),(0,I.useEffect)(()=>{L!==void 0&&u.current?.setValue(L)},[L]),(0,I.useEffect)(()=>{F!==void 0&&u.current?.setCompletedParams(F)},[F]);let b=JSON.stringify(i??null),a;try{a=JSON.stringify(r??null)}catch{a="[unstringifiable]"}(0,I.useEffect)(()=>{u.current?.update({apiConfig:i,additionalContext:r,optionOverrides:d.overrides,dropdownTrigger:w,optionsPosition:g,closeDropdownOnBlur:x,showNonTappableOptions:h,showProducts:R})},[b,a,d.key,w,g,x,h,R]);let y=(0,I.useRef)(!1);(0,I.useEffect)(()=>{if(!y.current){y.current=!0;return}u.current?.update({products:H.config})},[H.enabled]);let v=(0,I.useRef)(null);v.current===null&&(v.current={handleTextChange:f=>u.current?.handleTextChange(f),handleKeyDown:f=>{let V="nativeEvent"in f?f.nativeEvent:f;u.current?.handleKeyDown(V)},setFocused:f=>u.current?.setFocused(f),startEditingParam:f=>u.current?.startEditingParam(f),exitEditMode:()=>u.current?.exitEditMode(),handleCaretAfterInput:f=>u.current?.handleCaretAfterInput(f),handleCaretMove:f=>u.current?.handleCaretMove(f),replaceEditingRange:f=>u.current?.replaceEditingRange(f)??!1,setActivePill:f=>u.current?.setActivePill(f),skipActivePill:()=>u.current?.skipActivePill(),removeLastParam:()=>u.current?.removeLastParam(),clearNewParamId:()=>u.current?.clearNewParamId(),reset:()=>u.current?.reset(),selectOption:f=>u.current?.selectOption(f),selectProduct:f=>u.current?.selectProduct(f),setActiveDropdownIndex:f=>u.current?.setActiveDropdownIndex(f),showPreviousMonth:()=>u.current?.showPreviousMonth(),showNextMonth:()=>u.current?.showNextMonth(),handleFocus:()=>u.current?.setFocused(!0),handleBlur:()=>u.current?.setFocused(!1)});let p=v.current,$=(0,I.useCallback)(f=>{let V=f.target.value,tt=V.length>0&&!f.nativeEvent?.isComposing&&V[0]!==V[0].toUpperCase()?V[0].toUpperCase()+V.slice(1):V;u.current?.handleTextChange(tt)},[]),X=(0,I.useCallback)(f=>{u.current?.handleKeyDown(f.nativeEvent)},[]),ge=u.current,c=Y??pa,be=L!==void 0?L:c.text,Ee=F!==void 0?F:c.completedParams,ve=c.actionableSuggestions,De=ve[0],we=ge?.listboxId??"",He=c.activeDropdownIndex>=0&&ge?`${we}-option-${c.activeDropdownIndex}`:void 0,J=c.editingParam,G=c.editingIdentified,Le=J?{type:J.suggestionType,text:J.suggestionPlaceholder,required:!0,options:J.options}:G?{type:G.type,text:(0,ze.identifiedParamLabel)(G.type),required:!0,options:[]}:null,Be=Le??De,et=Le?[Le]:ve,Fe=(0,ze.dateSelectionFor)(c),Ge=!ge||c.isLoading&&!c.editingParam&&!c.inSelectionAnimation||c.isSearchingOptions;return{completedParams:Ee,skippedParams:c.skippedParams,identifiedParams:c.identifiedParams,suggestionPills:ve,setActivePill:p.setActivePill,skipActivePill:p.skipActivePill,removeLastParam:p.removeLastParam,segments:c.segments,newParamId:c.newParamId,clearNewParamId:p.clearNewParamId,suggestions:c.suggestions,activeIndex:c.activeDropdownIndex,isReady:c.isReady,isLoading:Ge,isFocused:c.isFocused,isDropdownOpen:c.isDropdownOpen,isActivePillSelected:c.isActivePillSelected,placeholderText:c.placeholderText,listboxId:we,error:c.error,products:c.products,customFields:c.customFields,selectProduct:p.selectProduct,handleTextChange:p.handleTextChange,handleKeyDown:p.handleKeyDown,setFocused:p.setFocused,editingParam:J,editingIdentified:G,editingAnchor:c.editingAnchor,caretOffset:c.caretOffset,startEditingParam:p.startEditingParam,exitEditMode:p.exitEditMode,handleCaretAfterInput:p.handleCaretAfterInput,handleCaretMove:p.handleCaretMove,replaceEditingRange:p.replaceEditingRange,inputProps:{value:be,placeholder:c.placeholderText||void 0,onChange:$,onKeyDown:X,onFocus:p.handleFocus,onBlur:p.handleBlur,role:"combobox","aria-expanded":c.isDropdownOpen,"aria-activedescendant":He,"aria-autocomplete":"list","aria-controls":we},reset:p.reset,dropdownProps:{suggestions:Be?[{...Be,options:c.filteredOptions}]:[],activeIndex:c.activeDropdownIndex,onSelect:p.selectOption,onHighlight:p.setActiveDropdownIndex,isOpen:c.isDropdownOpen,id:we,pills:et,activeSelected:c.isActivePillSelected,onPillClick:p.setActivePill,onSkip:p.skipActivePill,showSkipButton:(K??!0)&&!J&&!G,showOptionIcons:C??!0,showOptionImages:E??!0,showOptionCounts:k??!0,skipDisabled:c.inSelectionAnimation,isLoading:Ge,isInputEmpty:be.trim().length===0,products:c.products,onProductSelect:p.selectProduct,onProductFocusChange:p.setFocused,formatType:c.activeFormatType,dateView:c.dateView,selectedDateIso:Fe.selectedIso,selectedDateRange:Fe.selectedRange,dateRangeStart:Fe.rangeStart,onPreviousMonth:p.showPreviousMonth,onNextMonth:p.showNextMonth,optionsPosition:g??"below"}}}var Q=require("@magicx-eng/ai-autocomplete-vanilla"),P=require("react"),Je;function ha(){if(Je!==void 0)return Je;if(typeof document>"u")return!1;let e=document.createElement("div");return e.setAttribute("contenteditable","plaintext-only"),Je=e.contentEditable==="plaintext-only",Je}function Nt(e){let{segments:o,showChipIcons:t=!0,showChipImages:s=!0,newParamId:n,editingParam:i,editingIdentified:r,editingAnchor:m,caretOffset:w,placeholderText:g,isFocused:x,isDropdownOpen:h,listboxId:C,activeDescendantId:E,autoFocus:k,handleTextChange:K,handleKeyDown:R,handleCaretAfterInput:T,handleCaretMove:N,startEditingParam:L,replaceEditingRange:F,setFocused:W}=e,S=(0,P.useRef)(null),se=(0,P.useRef)(!1),le=(0,P.useRef)(""),Ce=(0,P.useRef)(""),de=(0,P.useRef)(null),u=(0,P.useRef)(0);de.current=w,(0,P.useEffect)(()=>{if(!k)return;let d=S.current;if(!d)return;document.activeElement===d?W(!0):d.focus();let b=d.ownerDocument??document,a=b.getSelection(),y=a&&a.rangeCount>0&&d.contains(a.anchorNode);if(a&&!y){let v=b.createRange();v.selectNodeContents(d),v.collapse(!0),a.removeAllRanges(),a.addRange(v)}},[k,W]),(0,P.useEffect)(()=>{let d=S.current;if(!d)return;let b=d.ownerDocument??document,a=()=>{let y=b.getSelection();if(!y||y.rangeCount===0||!y.anchorNode||!d.contains(y.anchorNode))return;let v=y.anchorNode,p=v.nodeType===Node.ELEMENT_NODE?v:v.parentElement,X=(y.isCollapsed?p?.closest("strong[data-param-id]"):null)?.dataset.paramId??null,ge=i?.id??r?.id??null;if(X&&X!==ge){L(X);return}performance.now()-u.current<50||N((0,Q.getCursorOffset)(d))};return b.addEventListener("selectionchange",a),()=>b.removeEventListener("selectionchange",a)},[i,r,L,N]),(0,P.useLayoutEffect)(()=>{let d=S.current;d&&(0,Q.renderEditableContent)({input:d,segments:o,newParamId:n,editingParamId:i?.id??null,placeholderText:g??"",isFocused:x,showChipIcons:t,showChipImages:s})},[o,n,i,g,x,t,s]),(0,P.useLayoutEffect)(()=>{let d=le.current,b=n??"";if(le.current=b,!b||b===d)return;let a=S.current;if(!a)return;a.focus();let y=de.current??(0,Q.plainTextLength)(a);(0,Q.setCursorOffset)(a,y)},[n]),(0,P.useLayoutEffect)(()=>{let d=Ce.current,b=i?.id??"";if(Ce.current=b,!b||b===d||m==null)return;let a=S.current;a&&(0,Q.setCursorOffset)(a,m)},[i,m]);let Y=(0,P.useCallback)(()=>{if(se.current)return;let d=S.current;if(!d)return;let b=(0,Q.extractPlainText)(d),y=b.length>0&&b[0]!==b[0].toUpperCase()?b[0].toUpperCase()+b.slice(1):b;K(y)},[K]),Pe=(0,P.useCallback)(()=>{u.current=performance.now(),Y();let d=S.current;d&&T((0,Q.getCursorOffset)(d))},[Y,T]);(0,P.useEffect)(()=>{let d=S.current;if(!d)return;let b=a=>{let y=a,v=y.inputType;if(v==="insertParagraph"||v==="insertLineBreak"||v==="insertFromDrop"){a.preventDefault();return}if(v.startsWith("insert")||v.startsWith("delete")){let p=v.startsWith("delete")?"":y.data??"";F(p)&&a.preventDefault()}};return d.addEventListener("beforeinput",b),()=>d.removeEventListener("beforeinput",b)},[F]);let ce=(0,P.useCallback)(()=>{se.current=!0},[]),Se=(0,P.useCallback)(()=>{se.current=!1,Y()},[Y]),pe=(0,P.useCallback)(d=>{d.preventDefault();let b=S.current;if(!b)return;let a=(d.clipboardData.getData("text/plain")??"").replace(/\r?\n/g," ");if(!a)return;let y=b.ownerDocument??document,v=y.getSelection();if(!v||v.rangeCount===0)return;let p=v.getRangeAt(0);if(!b.contains(p.startContainer))return;p.deleteContents();let $=y.createTextNode(a);p.insertNode($),p.setStartAfter($),p.collapse(!0),v.removeAllRanges(),v.addRange(p),Y()},[Y]),Ie=(0,P.useCallback)(d=>R(d),[R]),Z=(0,P.useCallback)(()=>W(!0),[W]),he=(0,P.useCallback)(()=>W(!1),[W]),ue=(0,P.useCallback)(()=>S.current?.focus(),[]),me=(0,P.useCallback)(()=>S.current?.blur(),[]),fe=(0,P.useCallback)(()=>{let d=S.current;return d?(0,Q.extractPlainText)(d):""},[]),H=ha()?"plaintext-only":"true";return{inputRef:S,editorProps:{ref:S,contentEditable:H,suppressContentEditableWarning:!0,tabIndex:0,role:"combobox","aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":C,"aria-expanded":h,"aria-activedescendant":E,spellCheck:!0,enterKeyHint:"send",onInput:Pe,onKeyDown:Ie,onCompositionStart:ce,onCompositionEnd:Se,onPaste:pe,onFocus:Z,onBlur:he},getPlainText:fe,focus:ue,blur:me}}var ae=require("react/jsx-runtime");function ua(e){return e!=="auto"?e:typeof window>"u"||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}var Ht=(0,M.forwardRef)(function({onSubmit:o,onResult:t,onError:s,optionOverrides:n,maskCompletedText:i,className:r,apiConfig:m,additionalContext:w,columns:g,pillPlacement:x="dropdown",mode:h="auto",optionsPosition:C="below",animations:E=!0,dropdownTrigger:k,closeDropdownOnBlur:K,showNonTappableOptions:R,showOptionIcons:T=!0,showChipIcons:N=!0,showChipImages:L=!0,showOptionImages:F=!0,showOptionCounts:W=!0,showSkipButton:S,showProducts:se,productsLayout:le,autoFocus:Ce=!0,onFocus:de,onBlur:u,value:Y,completedParams:Pe,onChange:ce,onParamsChange:Se,products:pe,onProductSelect:Ie,submitButton:Z},he){let ue=(0,M.useRef)(null),me=(0,M.useRef)(null),fe=(0,M.useRef)(()=>{}),H=(0,M.useRef)(null),d=(0,M.useRef)(null);(0,M.useEffect)(()=>{let A=ue.current;if(A)return H.current?H.current.setMode(h):H.current=new Ne.ModeController(A,h),()=>{H.current?.destroy(),H.current=null}},[h]);let b=(0,M.useCallback)(A=>{let Te=d.current?.current;Te&&(Te.focus(),(0,Ne.setCursorOffset)(Te,A))},[]),{completedParams:a,skippedParams:y,identifiedParams:v,isReady:p,customFields:$,suggestionPills:X,setActivePill:ge,skipActivePill:c,segments:be,newParamId:Ee,clearNewParamId:ve,placeholderText:De,isFocused:we,isDropdownOpen:He,isActivePillSelected:J,isLoading:G,activeIndex:Le,listboxId:Be,handleTextChange:et,handleKeyDown:Fe,setFocused:Ge,editingParam:f,editingIdentified:V,editingAnchor:z,caretOffset:tt,startEditingParam:Bt,handleCaretAfterInput:Ft,handleCaretMove:Kt,replaceEditingRange:Wt,dropdownProps:Gt,reset:_e}=Xe({onSubmit:A=>fe.current(A),onResult:t,onError:s,optionOverrides:n,maskCompletedText:i,apiConfig:m,additionalContext:w,columns:g,dropdownTrigger:k,optionsPosition:C,closeDropdownOnBlur:K,showNonTappableOptions:R,showOptionIcons:T,showOptionImages:F,showOptionCounts:W,showSkipButton:S,showProducts:se,onFocus:de,onBlur:u,value:Y,completedParams:Pe,onChange:ce,onParamsChange:Se,products:pe,onProductSelect:Ie,source:"full-sdk",setCursor:b});(0,M.useEffect)(()=>{if(!Ee)return;let A=window.setTimeout(()=>ve(),650);return()=>window.clearTimeout(A)},[Ee,ve]);let _t=Le>=0?`${Be}-option-${Le}`:void 0,{inputRef:at,editorProps:qt,focus:qe,blur:pt,getPlainText:ht}=Nt({segments:be,newParamId:Ee,editingParam:f,editingIdentified:V,editingAnchor:z,caretOffset:tt,placeholderText:De,isFocused:we,showChipIcons:N,showChipImages:L,isDropdownOpen:He,listboxId:Be,activeDescendantId:_t,autoFocus:Ce,handleTextChange:et,handleKeyDown:Fe,handleCaretAfterInput:Ft,handleCaretMove:Kt,startEditingParam:Bt,replaceEditingRange:Wt,setFocused:Ge});d.current=at,(0,M.useLayoutEffect)(()=>{let A=me.current,Te=at.current;if(!A||!Te)return;let ut=()=>{let ft=A.firstElementChild;if(!ft)return;let Yt=ft.getBoundingClientRect(),$t=Te.getBoundingClientRect();Yt.top>=$t.bottom-2?A.setAttribute("data-aia-pill-wrapped",""):A.removeAttribute("data-aia-pill-wrapped")};ut();let mt=new ResizeObserver(ut);return mt.observe(Te),()=>mt.disconnect()},[be,X.length,G,at]),(0,M.useImperativeHandle)(he,()=>({focus:qe,blur:pt,reset:_e,setMode:A=>H.current?.setMode(A),skipActivePill:c}),[qe,pt,_e,c]);let Ue=!!be.length||a.length>0,it=(0,M.useCallback)(()=>{if(!Ue)return;let A=ht();o((0,Ne.buildSubmitResult)(A,a,y,{identifiedParams:v,isReady:p,customFields:$})),_e()},[Ue,a,y,v,p,$,o,_e,ht]);fe.current=it;let Ut=(0,M.useCallback)(A=>{A.target?.closest("[data-aia-pill]")||qe()},[qe]),jt=x==="inline",Qt=x==="dropdown";return(0,ae.jsxs)("div",{ref:ue,className:`magicx-aia ${Re.container} ${r??""}`,"data-pill-placement":x,"data-options-position":C,"data-animations":E?"on":"off","data-mode":ua(h),children:[(0,ae.jsx)(Ve,{...Gt,showPills:Qt,productsLayout:le}),(0,ae.jsxs)("div",{className:Re.inputWrapper,"data-aia-input-wrapper":"",onClick:Ut,children:[(0,ae.jsxs)("div",{className:Re.editorArea,"data-aia-editor":"",children:[(0,ae.jsx)("div",{...qt,className:Re.input,"data-aia-input":""}),jt&&(G||X.length>0)&&(0,ae.jsx)("span",{ref:me,className:Re.pillListContainer,"data-aia-pill-list-container":"",children:(0,ae.jsx)(Qe,{pills:X,activePillIndex:0,activeSelected:J,onSelectPill:ge,loading:G})})]}),Z===null?null:Z===void 0?(0,ae.jsx)(Ot,{disabled:!Ue,onClick:it}):(0,ae.jsx)("span",{"data-aia-submit":"","data-aia-submit-slot":"",className:Re.submitSlot,onClick:A=>{Ue&&(A.stopPropagation(),it())},children:Z})]})]})});0&&(module.exports={AIAutocomplete,AIAutocompleteDropdown,DATE_RANGE_META_END,DATE_RANGE_META_START,DEFAULT_OPTION_COUNT_UNIT,PRODUCT_PATH_PREFIX,WEEKDAY_LABELS,buildSubmitResult,cellDay,cellIso,dateCellMarks,formatDate,formatDateRange,formatOptionCount,isoDate,monthLabel,optionCountLabel,optionHasImage,optionImageSrc,optionLabel,parseDate,parseLooseDate,parseLooseDateRange,productFromMatchedItem,productsFromCustomFields,sanitizeOptionIconSvg,selectedRangeFor,useAIAutocomplete,visibleDateRange,withSkippedParams});
1927
2052
  //# sourceMappingURL=index.js.map