@magicx-eng/ai-autocomplete-react 0.34.0 → 0.36.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.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END as kn,DATE_RANGE_META_START as Cn,DEFAULT_OPTION_COUNT_UNIT as Pn,dateCellMarks as Sn,formatDate as In,formatDateRange as En,formatOptionCount as Tn,isoDate as An,monthLabel as Rn,optionCountLabel as On,optionHasImage as Dn,optionImageSources as Ln,optionImageSrc as zn,optionLabel as Mn,PRODUCT_PATH_PREFIX as Nn,parseDate as Bn,parseLooseDate as Hn,parseLooseDateRange as Fn,productFromMatchedItem as Kn,productImageSources as Gn,productsFromCustomFields as Wn,sanitizeOptionIconSvg as _n,selectedRangeFor as Un,visibleDateRange as qn,WEEKDAY_LABELS as jn,withSkippedParams as Qn}from"@magicx-eng/ai-autocomplete-vanilla";import{forwardRef as vi,useCallback as ht,useEffect as Qt,useImperativeHandle as wi,useLayoutEffect as xi,useRef as Fe}from"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
+ import{buildSubmitResult as kn,cellDay as Cn,cellIso as Pn,DATE_RANGE_META_END as Sn,DATE_RANGE_META_START as In,DEFAULT_OPTION_COUNT_UNIT as En,dateCellMarks as Tn,formatDate as An,formatDateRange as Rn,formatOptionCount as On,isoDate as Dn,monthLabel as Ln,optionCountLabel as zn,optionHasImage as Mn,optionImageSources as Nn,optionImageSrc as Fn,optionLabel as Bn,PRODUCT_PATH_PREFIX as Hn,parseDate as Kn,parseLooseDate as Gn,parseLooseDateRange as Wn,productFromMatchedItem as _n,productImageSources as Un,productsFromCustomFields as qn,sanitizeOptionIconSvg as jn,selectedRangeFor as Qn,visibleDateRange as Yn,WEEKDAY_LABELS as Zn,withSkippedParams as Vn}from"@magicx-eng/ai-autocomplete-vanilla";import{forwardRef as yi,useCallback as ut,useEffect as Yt,useImperativeHandle as ki,useLayoutEffect as Ci,useRef as We}from"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
@@ -262,7 +262,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
262
262
  opacity: 0;
263
263
  }
264
264
  }
265
- `,document.head.appendChild(e)}var Ie={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"};import{attachScrollArrow as Xa,containScroll as Ja,isCalendarFormat as ei,uiStringsFor as ti}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as $e,useRef as Ze,useState as ai}from"react";if(typeof document<"u"&&!document.getElementById("ac-style-0ae03977")){let e=document.createElement("style");e.id="ac-style-0ae03977",e.textContent=`/*
265
+ `,document.head.appendChild(e)}var Ie={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"};import{attachScrollArrow as Ja,attachViewportFit as ei,containScroll as ti,isCalendarFormat as ai,uiStringsFor as ii}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as De,useRef as Oe,useState as oi}from"react";if(typeof document<"u"&&!document.getElementById("ac-style-0ae03977")){let e=document.createElement("style");e.id="ac-style-0ae03977",e.textContent=`/*
266
266
  * Built-in appearance defaults \u2014 zero specificity via :where().
267
267
  * Consumer CSS always wins without !important.
268
268
  *
@@ -735,6 +735,59 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
735
735
  background: var(--aia-surface, #ffffff);
736
736
  }
737
737
  }
738
+
739
+ /* Fitted to the visible viewport. When the open panel would run past the
740
+ screen's edge (a phone's keyboard, a short window), the core's viewportFit
741
+ controller sets data-aia-fit and caps the panel at the space that is left
742
+ (--aia-dropdown-fit-height). The section stack becomes the one scroll box:
743
+ the options grid drops its own row cap, so options, product strip and
744
+ footer scroll together and the strip is reached by scrolling past the last
745
+ option instead of being cut off below it. Nothing slides under the footer
746
+ any more, so its reserved band goes, as it does with a product strip.
747
+ Declared last: the two-attribute selector ties the unwrapped
748
+ above-position rule some copies carry, and must win it on source order. */
749
+ [data-aia-dropdown][data-aia-fit] {
750
+ max-height: var(--aia-dropdown-fit-height, none);
751
+ --aia-grid-scroll-bottom: 0px;
752
+ --aia-grid-overlap-bottom: 0px;
753
+ --aia-grid-scroll-top: 0px;
754
+ --aia-grid-overlap-top: 0px;
755
+ --aia-footer-fade-lead: 0px;
756
+ --aia-footer-row-min-height: 0px;
757
+ }
758
+
759
+ /* The stack is the panel's flex child, so it shrinks to the cap and scrolls.
760
+ It reaches 6px into the panel's side padding on each side: the product row
761
+ hangs that far outside the stack (its cards' hover fill), and a scroll box
762
+ clips sideways as well as down. The scrollbar is hidden, as the grid's is. */
763
+ [data-aia-dropdown][data-aia-fit] > .aia-stack {
764
+ flex: 1 1 auto;
765
+ min-height: 0;
766
+ margin-inline: -6px;
767
+ padding-inline: 6px;
768
+ overflow-x: hidden;
769
+ overflow-y: auto;
770
+ overscroll-behavior: contain;
771
+ scrollbar-width: none;
772
+ }
773
+
774
+ [data-aia-dropdown][data-aia-fit] > .aia-stack::-webkit-scrollbar {
775
+ display: none;
776
+ }
777
+
778
+ /* Sections keep their own height and overflow the stack instead. Flex items
779
+ shrink by default, and one that clips (the pill bar is overflow: hidden)
780
+ has no content floor to stop it \u2014 it collapsed to nothing. */
781
+ [data-aia-dropdown][data-aia-fit] > .aia-stack > * {
782
+ flex-shrink: 0;
783
+ }
784
+
785
+ /* The grid shows every row and leaves the scrolling to the stack. Not a
786
+ scroll box at all, so a swipe that starts on an option scrolls the panel. */
787
+ [data-aia-dropdown][data-aia-fit] .aia-grid[data-scroll] {
788
+ max-height: none;
789
+ overflow: visible;
790
+ }
738
791
  `,document.head.appendChild(e)}if(typeof document<"u"&&!document.getElementById("ac-style-3819c762")){let e=document.createElement("style");e.id="ac-style-3819c762",e.textContent=`.aia-dropdown-yz2KC {
739
792
  position: absolute;
740
793
  left: 0;
@@ -1045,7 +1098,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
1045
1098
  opacity: 0.25;
1046
1099
  }
1047
1100
  }
1048
- `,document.head.appendChild(e)}var re={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",skeletonBarsIn:"aia-skeletonBarsIn-BdPrL",skeletonBarsOut:"aia-skeletonBarsOut-TqKeD",skeletonBar:"aia-skeletonBar-O3xIx",aiaSkeletonPulse:"aia-aiaSkeletonPulse-G8W7q"};import{cellDay as aa,cellIso as Ae,dateCellMarks as ia,isoDate as oa,monthLabel as na,visibleDateRange as ra,WEEKDAY_LABELS as sa}from"@magicx-eng/ai-autocomplete-vanilla";import{useState as la}from"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) ---
1101
+ `,document.head.appendChild(e)}var ne={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",skeletonBarsIn:"aia-skeletonBarsIn-BdPrL",skeletonBarsOut:"aia-skeletonBarsOut-TqKeD",skeletonBar:"aia-skeletonBar-O3xIx",aiaSkeletonPulse:"aia-aiaSkeletonPulse-G8W7q"};import{cellDay as ia,cellIso as Re,dateCellMarks as oa,isoDate as na,monthLabel as ra,visibleDateRange as sa,WEEKDAY_LABELS as la}from"@magicx-eng/ai-autocomplete-vanilla";import{useState as da}from"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) ---
1049
1102
 
1050
1103
  One of three hand-maintained copies (vanilla styles.css, this file, Angular's
1051
1104
  date-grid.component.css). Only the class-naming layer differs \u2014 the
@@ -1208,7 +1261,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
1208
1261
  opacity: 0.8;
1209
1262
  background: rgba(var(--aia-streak-rgb, 255, 255, 255), 0.06);
1210
1263
  }
1211
- `,document.head.appendChild(e)}var O={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"};import{jsx as ae,jsxs as xt}from"react/jsx-runtime";var da=["sunday","monday","tuesday","wednesday","thursday","friday","saturday"];function yt({options:e,activeIndex:n,listboxId:t,view:i,selection:r,onSelect:o,onHighlight:a,onUnhighlight:c,onPreviousMonth:d,onNextMonth:y}){let C=oa(new Date),P=ra({pendingStart:r.rangeStart,highlightedIso:Ae(e[n]),selected:r.selectedRange});return xt("div",{className:O.datepicker,"data-aia-datepicker":"",children:[xt("div",{className:O.header,children:[ae("button",{type:"button",tabIndex:-1,className:O.nav,"data-aia-date-prev":"","aria-label":"Previous month",onMouseDown:u=>u.preventDefault(),onClick:d,children:"\u2039"}),ae("span",{className:O.month,"data-aia-date-month":"","aria-live":"polite",children:na(i)}),ae("button",{type:"button",tabIndex:-1,className:O.nav,"data-aia-date-next":"","aria-label":"Next month",onMouseDown:u=>u.preventDefault(),onClick:y,children:"\u203A"})]}),ae("div",{className:O.weekdays,"aria-hidden":"true",children:sa.map((u,f)=>ae("span",{className:O.weekday,children:u},da[f]))}),ae("div",{className:O.grid,"data-aia-date-grid":"",children:e.map((u,f)=>ae(ca,{option:u,id:`${t}-option-${f}`,index:f,isHighlighted:f===n&&u.is_tappable,isToday:Ae(u)===C,isPast:Ae(u)!=null&&Ae(u)<C,marks:ia(Ae(u),{selectedIso:r.selectedIso,range:P}),onSelect:o,onHighlight:a,onUnhighlight:c},Ae(u)??`pad-${f}`))})]})}function ca({option:e,id:n,index:t,isHighlighted:i,isToday:r,isPast:o,marks:a,onSelect:c,onHighlight:d,onUnhighlight:y}){let[C,P]=la(!1),u=aa(e);if(u==null)return ae("div",{id:n,role:"option","data-aia-option":"","data-aia-date-cell":"","aria-hidden":"true","aria-selected":!1,tabIndex:-1,className:`${O.cell} ${O.blank}`});let f=()=>{P(!0),c(e),setTimeout(()=>P(!1),170)},I=[O.cell,O.day,o?O.past:"",i?O.highlighted:"",r?O.today:"",a.inRange?O.inRange:"",a.selected?O.selected:"",C?O.pressed:""].filter(Boolean).join(" ");return ae("div",{id:n,role:"option","data-aia-option":"","data-aia-date-cell":"","aria-selected":i,"aria-label":e.text,tabIndex:0,className:I,onClick:f,onKeyDown:D=>{(D.key==="Enter"||D.key===" ")&&(D.preventDefault(),f())},onMouseEnter:()=>d(t),onMouseLeave:y?()=>y(t):void 0,children:ae("span",{className:O.number,children:u})})}import{ATTRIBUTION_URL as pa,buildAttributionUrl as ha,getFooterHint as ua,uiStringsFor as ma}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as ga,useState as fa}from"react";if(typeof document<"u"&&!document.getElementById("ac-style-5259a217")){let e=document.createElement("style");e.id="ac-style-5259a217",e.textContent=`.aia-cluster {
1264
+ `,document.head.appendChild(e)}var R={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"};import{jsx as ee,jsxs as yt}from"react/jsx-runtime";var ca=["sunday","monday","tuesday","wednesday","thursday","friday","saturday"];function kt({options:e,activeIndex:o,listboxId:t,view:a,selection:n,onSelect:r,onHighlight:i,onUnhighlight:p,onPreviousMonth:l,onNextMonth:v}){let P=na(new Date),C=sa({pendingStart:n.rangeStart,highlightedIso:Re(e[o]),selected:n.selectedRange});return yt("div",{className:R.datepicker,"data-aia-datepicker":"",children:[yt("div",{className:R.header,children:[ee("button",{type:"button",tabIndex:-1,className:R.nav,"data-aia-date-prev":"","aria-label":"Previous month",onMouseDown:g=>g.preventDefault(),onClick:l,children:"\u2039"}),ee("span",{className:R.month,"data-aia-date-month":"","aria-live":"polite",children:ra(a)}),ee("button",{type:"button",tabIndex:-1,className:R.nav,"data-aia-date-next":"","aria-label":"Next month",onMouseDown:g=>g.preventDefault(),onClick:v,children:"\u203A"})]}),ee("div",{className:R.weekdays,"aria-hidden":"true",children:la.map((g,b)=>ee("span",{className:R.weekday,children:g},ca[b]))}),ee("div",{className:R.grid,"data-aia-date-grid":"",children:e.map((g,b)=>ee(pa,{option:g,id:`${t}-option-${b}`,index:b,isHighlighted:b===o&&g.is_tappable,isToday:Re(g)===P,isPast:Re(g)!=null&&Re(g)<P,marks:oa(Re(g),{selectedIso:n.selectedIso,range:C}),onSelect:r,onHighlight:i,onUnhighlight:p},Re(g)??`pad-${b}`))})]})}function pa({option:e,id:o,index:t,isHighlighted:a,isToday:n,isPast:r,marks:i,onSelect:p,onHighlight:l,onUnhighlight:v}){let[P,C]=da(!1),g=ia(e);if(g==null)return ee("div",{id:o,role:"option","data-aia-option":"","data-aia-date-cell":"","aria-hidden":"true","aria-selected":!1,tabIndex:-1,className:`${R.cell} ${R.blank}`});let b=()=>{C(!0),p(e),setTimeout(()=>C(!1),170)},S=[R.cell,R.day,r?R.past:"",a?R.highlighted:"",n?R.today:"",i.inRange?R.inRange:"",i.selected?R.selected:"",P?R.pressed:""].filter(Boolean).join(" ");return ee("div",{id:o,role:"option","data-aia-option":"","data-aia-date-cell":"","aria-selected":a,"aria-label":e.text,tabIndex:0,className:S,onClick:b,onKeyDown:D=>{(D.key==="Enter"||D.key===" ")&&(D.preventDefault(),b())},onMouseEnter:()=>l(t),onMouseLeave:v?()=>v(t):void 0,children:ee("span",{className:R.number,children:g})})}import{ATTRIBUTION_URL as ha,buildAttributionUrl as ua,getFooterHint as ga,uiStringsFor as ma}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as fa,useState as ba}from"react";if(typeof document<"u"&&!document.getElementById("ac-style-5259a217")){let e=document.createElement("style");e.id="ac-style-5259a217",e.textContent=`.aia-cluster {
1212
1265
  display: flex;
1213
1266
  flex-wrap: wrap;
1214
1267
  gap: var(--aia-cluster-gap, 0.5rem);
@@ -1248,7 +1301,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
1248
1301
  .aia-cluster[data-justify="around"] {
1249
1302
  justify-content: space-around;
1250
1303
  }
1251
- `,document.head.appendChild(e)}import{jsx as kt}from"react/jsx-runtime";function Be({gap:e,align:n="center",justify:t="start",noWrap:i=!1,inline:r=!1,className:o,children:a,...c}){let d=e?{"--aia-cluster-gap":e}:void 0,y={className:o?`aia-cluster ${o}`:"aia-cluster","data-align":n,"data-justify":t,"data-nowrap":i||void 0,"data-inline":r||void 0,style:d,...c};return r?kt("span",{...y,children:a}):kt("div",{...y,children:a})}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
1304
+ `,document.head.appendChild(e)}import{jsx as Ct}from"react/jsx-runtime";function Ke({gap:e,align:o="center",justify:t="start",noWrap:a=!1,inline:n=!1,className:r,children:i,...p}){let l=e?{"--aia-cluster-gap":e}:void 0,v={className:r?`aia-cluster ${r}`:"aia-cluster","data-align":o,"data-justify":t,"data-nowrap":a||void 0,"data-inline":n||void 0,style:l,...p};return n?Ct("span",{...v,children:i}):Ct("div",{...v,children:i})}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
1252
1305
  dropdown's rounded edges. The top inset (--aia-footer-gap) adds breathing
1253
1306
  room above the hint/branding row so the footer doesn't butt against the last
1254
1307
  option row \u2014 additive to the dropdown's 8px section gap. */
@@ -1395,7 +1448,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
1395
1448
  justify-content: flex-end;
1396
1449
  }
1397
1450
  }
1398
- `,document.head.appendChild(e)}var se={footer:"aia-footer-qQQ7x",row:"aia-row-BgZ6Q",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"};import{jsx as He,jsxs as it}from"react/jsx-runtime";function Ct({isOptionHighlighted:e=!1,isInputEmpty:n=!1,strings:t=ma()}){let{key:i,hint:r}=ua(e,n,t),[o,a]=fa(pa);return ga(()=>{a(ha())},[]),He("footer",{className:se.footer,"data-aia-footer":"",children:it(Be,{justify:"between",noWrap:!0,className:se.row,children:[it(Be,{gap:"5px",className:se.hintGroup,children:[He("kbd",{className:se.key,children:i}),He("span",{className:se.hint,children:r})]}),it("a",{className:se.brandLink,href:o,target:"_blank",rel:"noopener noreferrer",children:[He("span",{className:se.brand,children:"AI"}),He("span",{className:se.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,
1451
+ `,document.head.appendChild(e)}var re={footer:"aia-footer-qQQ7x",row:"aia-row-BgZ6Q",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"};import{jsx as Ge,jsxs as ot}from"react/jsx-runtime";function Pt({isOptionHighlighted:e=!1,isInputEmpty:o=!1,strings:t=ma()}){let{key:a,hint:n}=ga(e,o,t),[r,i]=ba(ha);return fa(()=>{i(ua())},[]),Ge("footer",{className:re.footer,"data-aia-footer":"",children:ot(Ke,{justify:"between",noWrap:!0,className:re.row,children:[ot(Ke,{gap:"5px",className:re.hintGroup,children:[Ge("kbd",{className:re.key,children:a}),Ge("span",{className:re.hint,children:n})]}),ot("a",{className:re.brandLink,href:r,target:"_blank",rel:"noopener noreferrer",children:[Ge("span",{className:re.brand,children:"AI"}),Ge("span",{className:re.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,
1399
1452
  no outline. ~28px via 6px padding + 14px text + the 1px border (border-box).
1400
1453
  The border is kept as a 1px transparent line so the box stays the same size
1401
1454
  as it was when the outline was dashed. */
@@ -1471,7 +1524,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
1471
1524
  opacity: 0;
1472
1525
  }
1473
1526
  }
1474
- `,document.head.appendChild(e)}var we={pill:"aia-pill-6Ga7S",fadeIn:"aia-fadeIn-Ux4eQ",rounded:"aia-rounded-y7xA9",skeleton:"aia-skeleton-57P0T",skeletonIn:"aia-skeletonIn-54kMv",skeletonPulse:"aia-skeletonPulse-xGcUy",skeletonOut:"aia-skeletonOut-1sJ-r"};import{jsx as ba}from"react/jsx-runtime";var ot={selected:1,first:.7,next:.4,last:.2};function Pt({label:e,state:n,rounded:t,loading:i,onClick:r}){let o=[we.pill,t?we.rounded:"",i?we.skeleton:""].filter(Boolean).join(" ");return ba("button",{type:"button","data-aia-pill":"","data-aia-loading":i?"":void 0,tabIndex:-1,contentEditable:!1,suppressContentEditableWarning:!0,className:o,style:{opacity:ot[n]},onMouseDown:a=>a.preventDefault(),onClick:i?void 0:r,disabled:i,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 {
1527
+ `,document.head.appendChild(e)}var ye={pill:"aia-pill-6Ga7S",fadeIn:"aia-fadeIn-Ux4eQ",rounded:"aia-rounded-y7xA9",skeleton:"aia-skeleton-57P0T",skeletonIn:"aia-skeletonIn-54kMv",skeletonPulse:"aia-skeletonPulse-xGcUy",skeletonOut:"aia-skeletonOut-1sJ-r"};import{jsx as wa}from"react/jsx-runtime";var nt={selected:1,first:.7,next:.4,last:.2};function St({label:e,state:o,rounded:t,loading:a,onClick:n}){let r=[ye.pill,t?ye.rounded:"",a?ye.skeleton:""].filter(Boolean).join(" ");return wa("button",{type:"button","data-aia-pill":"","data-aia-loading":a?"":void 0,tabIndex:-1,contentEditable:!1,suppressContentEditableWarning:!0,className:r,style:{opacity:nt[o]},onMouseDown:i=>i.preventDefault(),onClick:a?void 0:n,disabled:a,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 {
1475
1528
  position: relative;
1476
1529
  z-index: 1;
1477
1530
  pointer-events: auto;
@@ -1481,7 +1534,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
1481
1534
  align-items: center;
1482
1535
  vertical-align: middle;
1483
1536
  }
1484
- `,document.head.appendChild(e)}var nt={list:"aia-list-qvLqO"};import{jsx as je}from"react/jsx-runtime";var va=[125,69];function St(e){return e===0?"first":e===1?"next":"last"}function Qe({pills:e,activePillIndex:n,onSelectPill:t,activeSelected:i,rounded:r,loading:o}){return o&&e.length===0?je("span",{className:nt.list,"data-aia-pill-list-loading":"",children:va.map((a,c)=>je("span",{"data-aia-pill-skeleton":"",className:`${we.pill} ${r?we.rounded:""} ${we.skeleton}`,style:{width:a,opacity:ot[St(c)]}},`skel-${a}`))}):je("span",{className:nt.list,"data-aia-pill-list-loading":o?"":void 0,children:e.map((a,c)=>{let d=!!i&&c===n;return je(Pt,{label:a.text,state:d?"selected":St(c),selected:d,rounded:r,loading:o,onClick:()=>t(c)},`${a.parameter}-${a.text}`)})})}import{attachProductRowWheel as wa,productImageSources as xa,productImageSrc as ya,productInitial as ka,uiStringsFor as Ca}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as Pa,useRef as Sa,useState as Ia}from"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
1537
+ `,document.head.appendChild(e)}var rt={list:"aia-list-qvLqO"};import{jsx as Ze}from"react/jsx-runtime";var va=[125,69];function It(e){return e===0?"first":e===1?"next":"last"}function Ve({pills:e,activePillIndex:o,onSelectPill:t,activeSelected:a,rounded:n,loading:r}){return r&&e.length===0?Ze("span",{className:rt.list,"data-aia-pill-list-loading":"",children:va.map((i,p)=>Ze("span",{"data-aia-pill-skeleton":"",className:`${ye.pill} ${n?ye.rounded:""} ${ye.skeleton}`,style:{width:i,opacity:nt[It(p)]}},`skel-${i}`))}):Ze("span",{className:rt.list,"data-aia-pill-list-loading":r?"":void 0,children:e.map((i,p)=>{let l=!!a&&p===o;return Ze(St,{label:i.text,state:l?"selected":It(p),selected:l,rounded:n,loading:r,onClick:()=>t(p)},`${i.parameter}-${i.text}`)})})}import{attachProductRowWheel as xa,productImageSources as ya,productImageSrc as ka,productInitial as Ca,uiStringsFor as Pa}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as Sa,useRef as Ia,useState as Ea}from"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
1485
1538
  (packages/vanilla/src/styles.css). Same tokens, same defaults, so a consumer
1486
1539
  theming one package sees the same result in the other.
1487
1540
 
@@ -1765,7 +1818,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
1765
1818
  letter-spacing: 0.02em;
1766
1819
  text-align: center;
1767
1820
  }
1768
- `,document.head.appendChild(e)}var Q={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",badge:"aia-badge-j9Hcd"};import{jsx as le,jsxs as Ye}from"react/jsx-runtime";function It({products:e,listboxId:n,onSelect:t,onFocusChange:i,focusable:r=!0,layout:o="row",imageFallback:a="image",strings:c=Ca()}){let d=e.length>0,y=Sa(null);if(Pa(()=>{let P=y.current;if(!(!d||!P))return wa(P)},[d]),!d)return null;let C=`${n}-products-label`;return Ye("section",{className:Q.section,"data-aia-products":"","data-aia-products-layout":o,role:"group","aria-labelledby":C,children:[le("div",{className:Q.label,id:C,"data-aia-products-label":"",children:c.products}),le("div",{ref:y,className:Q.row,"data-aia-products-row":"",children:e.map((P,u)=>le(Ea,{product:P,id:`${n}-product-${u}`,onSelect:t,onFocusChange:i,focusable:r,imageFallback:a,soldOut:c.soldOut},P.id))})]})}function Ea({product:e,id:n,onSelect:t,onFocusChange:i,focusable:r,imageFallback:o,soldOut:a}){let c=d=>{d.metaKey||d.ctrlKey||d.shiftKey||d.altKey||d.button!==0||(d.preventDefault(),t(e))};return Ye("a",{id:n,className:Q.card,"data-aia-product":"","data-aia-product-sold-out":e.available===!1?"":void 0,role:"option","aria-selected":!1,href:e.url,tabIndex:r?0:-1,onClick:c,onKeyDown:d=>{d.key!=="Enter"&&d.key!==" "||(d.preventDefault(),t(e))},onFocus:()=>i?.(!0),onBlur:d=>{d.relatedTarget?.closest("[data-aia-dropdown]")||i?.(!1)},children:[le(Ta,{sources:xa(e.imageUrl),title:e.title,fallback:o},ya(e.imageUrl)??""),Ye("span",{className:Q.body,children:[e.vendor?le("span",{className:Q.vendor,children:e.vendor}):null,le("span",{className:Q.title,children:e.title}),e.price?le("span",{className:Q.price,children:e.price}):null,e.available===!1?le("span",{className:Q.badge,children:a}):null]})]})}function Ta({sources:e,title:n,fallback:t}){let[i,r]=Ia(0),o=e[i],a=!!o,c=!a&&t==="initial";return Ye("span",{className:Q.media,"aria-hidden":"true","data-aia-product-placeholder":!a&&!c?"":void 0,"data-aia-product-initial":c?"":void 0,children:[a?le("img",{className:Q.image,src:o,alt:"",loading:"lazy",decoding:"async",onError:()=>r(d=>d+1)}):null,c?ka(n):null]})}import{isOptionsGridMobileViewport as Wa,measureOptionsGrid as _a,needsOptionsGridMeasurement as Ua,OPTIONS_GRID_MOBILE_QUERY as qa,optionEnterDelayMs as ja,planOptionsGrid as At,sameOptionRows as Qa}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as Ya,useLayoutEffect as Za,useRef as Rt,useState as Dt}from"react";import{optionsGridTemplateColumns as Aa}from"@magicx-eng/ai-autocomplete-vanilla";import{useLayoutEffect as Ra,useRef as Oa}from"react";if(typeof document<"u"&&!document.getElementById("ac-style-948e58da")){let e=document.createElement("style");e.id="ac-style-948e58da",e.textContent=`.aia-grid {
1821
+ `,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",badge:"aia-badge-j9Hcd"};import{jsx as se,jsxs as $e}from"react/jsx-runtime";function Et({products:e,listboxId:o,onSelect:t,onFocusChange:a,focusable:n=!0,layout:r="row",imageFallback:i="image",strings:p=Pa()}){let l=e.length>0,v=Ia(null);if(Sa(()=>{let C=v.current;if(!(!l||!C))return xa(C)},[l]),!l)return null;let P=`${o}-products-label`;return $e("section",{className:Y.section,"data-aia-products":"","data-aia-products-layout":r,role:"group","aria-labelledby":P,children:[se("div",{className:Y.label,id:P,"data-aia-products-label":"",children:p.products}),se("div",{ref:v,className:Y.row,"data-aia-products-row":"",children:e.map((C,g)=>se(Ta,{product:C,id:`${o}-product-${g}`,onSelect:t,onFocusChange:a,focusable:n,imageFallback:i,soldOut:p.soldOut},C.id))})]})}function Ta({product:e,id:o,onSelect:t,onFocusChange:a,focusable:n,imageFallback:r,soldOut:i}){let p=l=>{l.metaKey||l.ctrlKey||l.shiftKey||l.altKey||l.button!==0||(l.preventDefault(),t(e))};return $e("a",{id:o,className:Y.card,"data-aia-product":"","data-aia-product-sold-out":e.available===!1?"":void 0,role:"option","aria-selected":!1,href:e.url,tabIndex:n?0:-1,onClick:p,onKeyDown:l=>{l.key!=="Enter"&&l.key!==" "||(l.preventDefault(),t(e))},onFocus:()=>a?.(!0),onBlur:l=>{l.relatedTarget?.closest("[data-aia-dropdown]")||a?.(!1)},children:[se(Aa,{sources:ya(e.imageUrl),title:e.title,fallback:r},ka(e.imageUrl)??""),$e("span",{className:Y.body,children:[e.vendor?se("span",{className:Y.vendor,children:e.vendor}):null,se("span",{className:Y.title,children:e.title}),e.price?se("span",{className:Y.price,children:e.price}):null,e.available===!1?se("span",{className:Y.badge,children:i}):null]})]})}function Aa({sources:e,title:o,fallback:t}){let[a,n]=Ea(0),r=e[a],i=!!r,p=!i&&t==="initial";return $e("span",{className:Y.media,"aria-hidden":"true","data-aia-product-placeholder":!i&&!p?"":void 0,"data-aia-product-initial":p?"":void 0,children:[i?se("img",{className:Y.image,src:r,alt:"",loading:"lazy",decoding:"async",onError:()=>n(l=>l+1)}):null,p?Ca(o):null]})}import{isOptionsGridMobileViewport as _a,measureOptionsGrid as Ua,needsOptionsGridMeasurement as qa,OPTIONS_GRID_MOBILE_QUERY as ja,optionEnterDelayMs as Qa,planOptionsGrid as Rt,sameOptionRows as Ya}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as Za,useLayoutEffect as Va,useRef as Ot,useState as Lt}from"react";import{optionsGridTemplateColumns as Ra}from"@magicx-eng/ai-autocomplete-vanilla";import{useLayoutEffect as Oa,useRef as Da}from"react";if(typeof document<"u"&&!document.getElementById("ac-style-948e58da")){let e=document.createElement("style");e.id="ac-style-948e58da",e.textContent=`.aia-grid {
1769
1822
  display: grid;
1770
1823
  grid-template-columns: repeat(
1771
1824
  auto-fit,
@@ -1801,7 +1854,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
1801
1854
  .aia-grid[data-scroll]::-webkit-scrollbar {
1802
1855
  display: none;
1803
1856
  }
1804
- `,document.head.appendChild(e)}import{jsx as Da}from"react/jsx-runtime";function Et({min:e="16rem",max:n,gap:t,scroll:i=!1,maxHeight:r,scrollResetKey:o,cols:a,template:c,innerRef:d,className:y,children:C,...P}){let u=Oa(null);Ra(()=>{if(o===void 0)return;let I=u.current;I&&(I.scrollTop=0)},[o]);let f={"--aia-grid-min":e};return n&&(f["--aia-grid-max"]=n),t&&(f["--aia-grid-gap"]=t),r&&(f["--aia-grid-max-height"]=r),a&&(f.gridTemplateColumns=Aa(a)),c&&(f.gridTemplateColumns=c),Da("div",{ref:I=>{u.current=I,d?.(I)},className:y?`aia-grid ${y}`:"aia-grid","data-scroll":i||void 0,style:f,...P,children:C})}import{formatOptionCount as La,OPTION_ENTER_DELAY_VAR as za,optionImageSources as Ma,optionLabel as Na,sanitizeOptionIconSvg as Ba}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as Ha,useMemo as Fa,useRef as Ka,useState as rt}from"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 {
1857
+ `,document.head.appendChild(e)}import{jsx as La}from"react/jsx-runtime";function Tt({min:e="16rem",max:o,gap:t,scroll:a=!1,maxHeight:n,scrollResetKey:r,cols:i,template:p,innerRef:l,className:v,children:P,...C}){let g=Da(null);Oa(()=>{if(r===void 0)return;let S=g.current;S&&(S.scrollTop=0)},[r]);let b={"--aia-grid-min":e};return o&&(b["--aia-grid-max"]=o),t&&(b["--aia-grid-gap"]=t),n&&(b["--aia-grid-max-height"]=n),i&&(b.gridTemplateColumns=Ra(i)),p&&(b.gridTemplateColumns=p),La("div",{ref:S=>{g.current=S,l?.(S)},className:v?`aia-grid ${v}`:"aia-grid","data-scroll":a||void 0,style:b,...C,children:P})}import{formatOptionCount as za,OPTION_ENTER_DELAY_VAR as Ma,optionImageSources as Na,optionLabel as Fa,sanitizeOptionIconSvg as Ba}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as Ha,useMemo as Ka,useRef as Ga,useState as st}from"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 {
1805
1858
  position: relative;
1806
1859
  /* Clip, not visible: the entrance rise below runs on the inner content,
1807
1860
  and a transformed box extends its scroll container's scrollable area.
@@ -1935,6 +1988,13 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
1935
1988
  mask-image: linear-gradient(to bottom, rgb(0 0 0), rgb(0 0 0 / 0.6));
1936
1989
  }
1937
1990
 
1991
+ /* A panel fitted to the viewport (data-aia-fit, see appearance.css) shows
1992
+ every row, so the row the hint picked is not the last one on screen. */
1993
+ [data-aia-fit] .aia-scrollHint-xKXPt .aia-content-T-Qba {
1994
+ -webkit-mask-image: none;
1995
+ mask-image: none;
1996
+ }
1997
+
1938
1998
  /* Loading state \u2014 preserve the row's exact dimensions. The content stays an
1939
1999
  inline span so the line box and padding match the non-loading state byte
1940
2000
  for byte. Just hide the text and apply a background as a skeleton bar; the
@@ -2198,7 +2258,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
2198
2258
  opacity: 0;
2199
2259
  }
2200
2260
  }
2201
- `,document.head.appendChild(e)}var q={item:"aia-item-d4vpD",content:"aia-content-T-Qba",riseIn:"aia-riseIn-etXZT",fadeIn:"aia-fadeIn-I8u35",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",skeletonBarIn:"aia-skeletonBarIn-ZlEM0",icon:"aia-icon-Qw938",count:"aia-count-IpYbQ",image:"aia-image-YZAbO",skeletonOut:"aia-skeletonOut-x6NRd"};import{jsx as Ee,jsxs as Ga}from"react/jsx-runtime";function Tt({option:e,isHighlighted:n,onSelect:t,onHighlight:i,onUnhighlight:r,id:o,loading:a,showIcon:c=!0,showImage:d=!0,showCount:y=!0,scrollHint:C,enterDelayMs:P=0}){let[u]=rt(P),[f,I]=rt(!1),D=d?Ma(e.image_url):[],L=D[0]??null,[K,E]=rt([]),S=D.find(B=>!K.includes(B))??null,z=Fa(()=>!L&&c&&e.icon_svg?Ba(e.icon_svg):null,[L,c,e.icon_svg]),M=y?La(e.item_count):null,k=Ka(void 0);Ha(()=>()=>clearTimeout(k.current),[]);let N=()=>{a||!e.is_tappable||f||(I(!0),t(e),clearTimeout(k.current),k.current=setTimeout(()=>I(!1),170))},Z=[q.item,n&&!a?q.highlighted:"",e.is_tappable?q.tappable:q.nonTappable,f?q.pressed:"",C?q.scrollHint:""].filter(Boolean).join(" ");return Ee("div",{id:o,role:"option","data-aia-option":"","data-aia-loading":a?"":void 0,"data-aia-icon":z&&e.icon?e.icon:void 0,"data-aia-image":L?"":void 0,"data-aia-item-count":M!==null?e.item_count:void 0,"aria-selected":n,className:Z,style:{[za]:`${u}ms`},tabIndex:a||!e.is_tappable?-1:0,onClick:N,onKeyDown:B=>{!a&&e.is_tappable&&(B.key==="Enter"||B.key===" ")&&(B.preventDefault(),N())},onMouseEnter:!a&&e.is_tappable?i:void 0,onMouseLeave:r,children:Ga("span",{className:q.content,children:[L&&Ee("span",{className:`${q.image} magicx-aia-option-image`,"aria-hidden":"true",children:Ee("img",{src:S??L,alt:"",loading:"lazy",decoding:"async",referrerPolicy:"no-referrer",draggable:!1,hidden:S===null,onError:()=>{S!==null&&E(B=>[...B,S])}})}),z&&Ee("span",{className:`${q.icon} magicx-aia-option-icon`,"aria-hidden":"true",dangerouslySetInnerHTML:{__html:z}}),Ee("span",{className:q.text,children:Na(e)}),e.tag&&Ee("span",{className:q.tag,children:e.tag}),M!==null&&Ee("span",{className:`${q.count} magicx-aia-option-count`,children:M})]})})}import{jsx as Ot}from"react/jsx-runtime";function $a(){let[e,n]=Dt(Wa);return Ya(()=>{if(typeof window>"u"||!window.matchMedia)return;let t=window.matchMedia(qa),i=()=>n(t.matches);return i(),t.addEventListener("change",i),()=>t.removeEventListener("change",i)},[]),e}function Lt({options:e,activeIndex:n,onSelect:t,onHighlight:i,onUnhighlight:r,listboxId:o,loading:a,groupKey:c="",optionsPosition:d="below",showIcons:y=!0,showImages:C=!0,showCounts:P=!0}){let u=$a(),f=Rt(null),[I,D]=Dt(null),L=Rt(null);Za(()=>{if(a&&Qa(L.current,e))return;L.current=a?null:e;let E=f.current,z=E&&!a&&Ua(e.length,u)?_a(E):null;D(z?At(e.length,u,z.rowWidths,z.gridWidth):null)},[e,u,a]);let K=I??At(e.length,u,null,null);return Ot(Et,{min:"250px",max:"1fr",gap:"0",scroll:!0,scrollResetKey:c,template:K.template,maxHeight:K.maxHeight,innerRef:E=>{f.current=E},"data-aia-group":c,children:e.map((E,S)=>Ot(Tt,{option:E,isHighlighted:S===n,onSelect:t,onHighlight:()=>i(S),onUnhighlight:r?()=>r(S):void 0,id:`${o}-option-${S}`,loading:a,showIcon:y,showImage:C,showCount:P,scrollHint:!a&&K.scrollHintIndices.includes(S),enterDelayMs:a?0:ja(S,K.cols,e.length,d)},`${c}\0${E.text}`))})}if(typeof document<"u"&&!document.getElementById("ac-style-8414cd5f")){let e=document.createElement("style");e.id="ac-style-8414cd5f",e.textContent=`.aia-stack {
2261
+ `,document.head.appendChild(e)}var U={item:"aia-item-d4vpD",content:"aia-content-T-Qba",riseIn:"aia-riseIn-etXZT",fadeIn:"aia-fadeIn-I8u35",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",skeletonBarIn:"aia-skeletonBarIn-ZlEM0",icon:"aia-icon-Qw938",count:"aia-count-IpYbQ",image:"aia-image-YZAbO",skeletonOut:"aia-skeletonOut-x6NRd"};import{jsx as Ee,jsxs as Wa}from"react/jsx-runtime";function At({option:e,isHighlighted:o,onSelect:t,onHighlight:a,onUnhighlight:n,id:r,loading:i,showIcon:p=!0,showImage:l=!0,showCount:v=!0,scrollHint:P,enterDelayMs:C=0}){let[g]=st(C),[b,S]=st(!1),D=l?Na(e.image_url):[],L=D[0]??null,[H,O]=st([]),I=D.find(N=>!H.includes(N))??null,F=Ka(()=>!L&&p&&e.icon_svg?Ba(e.icon_svg):null,[L,p,e.icon_svg]),z=v?za(e.item_count):null,k=Ga(void 0);Ha(()=>()=>clearTimeout(k.current),[]);let M=()=>{i||!e.is_tappable||b||(S(!0),t(e),clearTimeout(k.current),k.current=setTimeout(()=>S(!1),170))},K=[U.item,o&&!i?U.highlighted:"",e.is_tappable?U.tappable:U.nonTappable,b?U.pressed:"",P?U.scrollHint:""].filter(Boolean).join(" ");return Ee("div",{id:r,role:"option","data-aia-option":"","data-aia-loading":i?"":void 0,"data-aia-icon":F&&e.icon?e.icon:void 0,"data-aia-image":L?"":void 0,"data-aia-item-count":z!==null?e.item_count:void 0,"aria-selected":o,className:K,style:{[Ma]:`${g}ms`},tabIndex:i||!e.is_tappable?-1:0,onClick:M,onKeyDown:N=>{!i&&e.is_tappable&&(N.key==="Enter"||N.key===" ")&&(N.preventDefault(),M())},onMouseEnter:!i&&e.is_tappable?a:void 0,onMouseLeave:n,children:Wa("span",{className:U.content,children:[L&&Ee("span",{className:`${U.image} magicx-aia-option-image`,"aria-hidden":"true",children:Ee("img",{src:I??L,alt:"",loading:"lazy",decoding:"async",referrerPolicy:"no-referrer",draggable:!1,hidden:I===null,onError:()=>{I!==null&&O(N=>[...N,I])}})}),F&&Ee("span",{className:`${U.icon} magicx-aia-option-icon`,"aria-hidden":"true",dangerouslySetInnerHTML:{__html:F}}),Ee("span",{className:U.text,children:Fa(e)}),e.tag&&Ee("span",{className:U.tag,children:e.tag}),z!==null&&Ee("span",{className:`${U.count} magicx-aia-option-count`,children:z})]})})}import{jsx as Dt}from"react/jsx-runtime";function $a(){let[e,o]=Lt(_a);return Za(()=>{if(typeof window>"u"||!window.matchMedia)return;let t=window.matchMedia(ja),a=()=>o(t.matches);return a(),t.addEventListener("change",a),()=>t.removeEventListener("change",a)},[]),e}function zt({options:e,activeIndex:o,onSelect:t,onHighlight:a,onUnhighlight:n,listboxId:r,loading:i,groupKey:p="",optionsPosition:l="below",showIcons:v=!0,showImages:P=!0,showCounts:C=!0}){let g=$a(),b=Ot(null),[S,D]=Lt(null),L=Ot(null);Va(()=>{if(i&&Ya(L.current,e))return;L.current=i?null:e;let O=b.current,F=O&&!i&&qa(e.length,g)?Ua(O):null;D(F?Rt(e.length,g,F.rowWidths,F.gridWidth):null)},[e,g,i]);let H=S??Rt(e.length,g,null,null);return Dt(Tt,{min:"250px",max:"1fr",gap:"0",scroll:!0,scrollResetKey:p,template:H.template,maxHeight:H.maxHeight,innerRef:O=>{b.current=O},"data-aia-group":p,children:e.map((O,I)=>Dt(At,{option:O,isHighlighted:I===o,onSelect:t,onHighlight:()=>a(I),onUnhighlight:n?()=>n(I):void 0,id:`${r}-option-${I}`,loading:i,showIcon:v,showImage:P,showCount:C,scrollHint:!i&&H.scrollHintIndices.includes(I),enterDelayMs:i?0:Qa(I,H.cols,e.length,l)},`${p}\0${O.text}`))})}if(typeof document<"u"&&!document.getElementById("ac-style-8414cd5f")){let e=document.createElement("style");e.id="ac-style-8414cd5f",e.textContent=`.aia-stack {
2202
2262
  display: flex;
2203
2263
  flex-direction: column;
2204
2264
  gap: var(--aia-stack-space, 0.5rem);
@@ -2213,7 +2273,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
2213
2273
  align-items: end;
2214
2274
  }
2215
2275
  /* data-align="stretch" is the flex default \u2014 no rule needed. */
2216
- `,document.head.appendChild(e)}import{jsx as Va}from"react/jsx-runtime";function zt({space:e,align:n="stretch",className:t,children:i,...r}){let o=e?{"--aia-stack-space":e}:void 0;return Va("div",{className:t?`aia-stack ${t}`:"aia-stack","data-align":n,style:o,...r,children:i})}import{jsx as Y,jsxs as st}from"react/jsx-runtime";var ii=[159,119,164],oi=()=>{},Mt=()=>{};function ni(e){let n=()=>typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-color-scheme: dark)").matches,[t,i]=ai(n);if($e(()=>{if(e!=="auto"||typeof window>"u"||typeof window.matchMedia!="function")return;let r=window.matchMedia("(prefers-color-scheme: dark)"),o=()=>i(r.matches);return r.addEventListener("change",o),()=>r.removeEventListener("change",o)},[e]),e!==void 0)return e==="auto"?t?"dark":"light":e}function ri(e,n){let t=Ze(null);$e(()=>{let i=e.current,r=n.current;if(!i||!r)return;let o=i.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:Xa({dropdown:i,grid:o,button:r})};return}t.current?.controller.update()}),$e(()=>()=>{t.current?.controller.destroy(),t.current=null},[])}function lt({suggestions:e,activeIndex:n,onSelect:t,onHighlight:i,onUnhighlight:r,isOpen:o,id:a,className:c,pills:d,onPillClick:y,showPills:C=!0,onSkip:P,showSkipButton:u=!0,showOptionIcons:f=!0,showOptionImages:I=!0,showOptionCounts:D=!0,skipDisabled:L=!1,activeSelected:K=!1,isLoading:E=!1,skeletonExiting:S=!1,isInputEmpty:z=!1,language:M,products:k,onProductSelect:N,onProductFocusChange:Z,productsLayout:B="row",productImageFallback:de="image",formatType:V="options",dateView:W=null,selectedDateIso:xe=null,selectedDateRange:ce=null,dateRangeStart:m=null,onPreviousMonth:ye,onNextMonth:pe,optionsPosition:ie="below",mode:he}){let oe=ni(he),ue=oe!==void 0,_=Ze(null),X=Ze(null);ri(_,X),$e(()=>{if(_.current)return Ja(_.current)},[]);let s=e[0]?.options??[],g=!!(d&&d.length>0&&y),b=!!(k&&k.length>0),v=o&&(s.length>0||C&&g||E||b),w={suggestions:e,activeIndex:n,pills:d,showPills:C,showSkipButton:u,showOptionIcons:f,showOptionImages:I,showOptionCounts:D,skipDisabled:L,activeSelected:K,isLoading:E,skeletonExiting:S,isInputEmpty:z,products:k,formatType:V,dateView:W,selectedDateIso:xe,selectedDateRange:ce,dateRangeStart:m},R=Ze(w);v&&(R.current=w);let p=v?w:R.current,H=ti(M),U=p.suggestions[0],j=U?.options??[],Te=p.activeIndex>=0&&!!j[p.activeIndex]?.is_tappable,J=!!(p.pills&&p.pills.length>0&&y),me=p.showPills&&J,ke=p.showPills&&!J&&p.isLoading,x=me||ke,ge=J&&p.showSkipButton&&!p.isInputEmpty&&!!P,fe=p.pills?.[0]?.text,ne=ei(p.formatType)&&p.dateView!=null,h=j.length>0&&!ne,Ce=j.length>0&&ne&&!p.isLoading,Le=p.isLoading&&!h&&!Ce,be=p.products??[];return st("div",{ref:_,id:a,role:"listbox","data-aia-dropdown":"","data-options-position":ie,"data-mode":oe,"data-aia-loading":p.isLoading?"":void 0,"data-aia-skeleton-exiting":p.skeletonExiting?"":void 0,"data-aia-has-products":be.length>0?"":void 0,className:`${ue?"magicx-aia ":""}${re.dropdown} ${v?re.visible:""} ${c??""}`,onMouseDown:ee=>ee.preventDefault(),children:[st(zt,{space:"8px",children:[(x||ge)&&st(Be,{noWrap:!0,className:re.pillBar,"data-aia-pillbar":"",children:[x&&Y("span",{className:re.pillScroll,"data-aia-pill-scroll":"",children:Y(Qe,{pills:p.pills??[],activePillIndex:0,activeSelected:p.activeSelected,onSelectPill:y??(()=>{}),rounded:!0,loading:p.isLoading})}),ge&&Y("button",{type:"button",tabIndex:-1,className:re.skip,"data-aia-skip":"",disabled:p.isLoading||p.skipDisabled,"aria-label":fe?`${H.skipLabel} ${fe}`:H.skipLabel,onClick:P,children:H.skip})]}),h&&Y(Lt,{options:j,activeIndex:p.activeIndex,onSelect:t,onHighlight:i,onUnhighlight:r,listboxId:a,loading:p.isLoading,groupKey:U?`${U.parameter} ${U.text}`:"",optionsPosition:ie,showIcons:p.showOptionIcons,showImages:p.showOptionImages,showCounts:p.showOptionCounts}),Ce&&p.dateView&&Y(yt,{options:j,activeIndex:p.activeIndex,listboxId:a,view:p.dateView,selection:{selectedIso:p.selectedDateIso??null,selectedRange:p.selectedDateRange??null,rangeStart:p.dateRangeStart??null},onSelect:t,onHighlight:i,onUnhighlight:r,onPreviousMonth:ye??Mt,onNextMonth:pe??Mt}),Le&&Y("div",{className:re.skeletonBars,"data-aia-skeleton-bars":"",children:ii.map(ee=>Y("span",{className:re.skeletonBar,style:{width:ee}},`bar-${ee}`))}),Y(It,{products:be,listboxId:a,onSelect:N??oi,onFocusChange:Z,focusable:v,layout:B,imageFallback:de,strings:H}),Y(Ct,{isOptionHighlighted:Te,isInputEmpty:p.isInputEmpty,strings:H})]}),Y("button",{ref:X,type:"button",tabIndex:-1,className:re.scrollArrow,"data-aia-scroll-arrow":"","aria-label":H.scrollArrow,"aria-hidden":"true",children:Y("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:Y("path",{d:"M4 6.5 8 10.5l4-4"})})})]})}import{buildSubmitResult as yi,ModeController as ki,setCursorOffset as Ci,uiStringsFor as Pi}from"@magicx-eng/ai-autocomplete-vanilla";import{uiStringsFor as si}from"@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 {
2276
+ `,document.head.appendChild(e)}import{jsx as Xa}from"react/jsx-runtime";function Mt({space:e,align:o="stretch",className:t,children:a,...n}){let r=e?{"--aia-stack-space":e}:void 0;return Xa("div",{className:t?`aia-stack ${t}`:"aia-stack","data-align":o,style:r,...n,children:a})}import{jsx as Z,jsxs as lt}from"react/jsx-runtime";var ni=[159,119,164],ri=()=>{},Nt=()=>{};function si(e){let o=()=>typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-color-scheme: dark)").matches,[t,a]=oi(o);if(De(()=>{if(e!=="auto"||typeof window>"u"||typeof window.matchMedia!="function")return;let n=window.matchMedia("(prefers-color-scheme: dark)"),r=()=>a(n.matches);return n.addEventListener("change",r),()=>n.removeEventListener("change",r)},[e]),e!==void 0)return e==="auto"?t?"dark":"light":e}function li(e,o){let t=Oe(null);De(()=>{let a=e.current,n=o.current;if(!a||!n)return;let r=a.querySelector(".aia-grid[data-scroll]");if(t.current&&t.current.grid!==r&&(t.current.controller.destroy(),t.current=null),r&&!t.current){t.current={grid:r,controller:Ja({dropdown:a,grid:r,button:n})};return}t.current?.controller.update()}),De(()=>()=>{t.current?.controller.destroy(),t.current=null},[])}function di(e,o){let t=Oe(o);t.current=o;let a=Oe(null);De(()=>{let n=e.current;if(n){if(!a.current){a.current=ei({dropdown:n,isOpen:()=>t.current});return}a.current.update()}}),De(()=>()=>{a.current?.destroy(),a.current=null},[])}function dt({suggestions:e,activeIndex:o,onSelect:t,onHighlight:a,onUnhighlight:n,isOpen:r,id:i,className:p,pills:l,onPillClick:v,showPills:P=!0,onSkip:C,showSkipButton:g=!0,showOptionIcons:b=!0,showOptionImages:S=!0,showOptionCounts:D=!0,skipDisabled:L=!1,activeSelected:H=!1,isLoading:O=!1,skeletonExiting:I=!1,isInputEmpty:F=!1,language:z,products:k,onProductSelect:M,onProductFocusChange:K,productsLayout:N="row",productImageFallback:te="image",formatType:le="options",dateView:W=null,selectedDateIso:de=null,selectedDateRange:ke=null,dateRangeStart:ce=null,onPreviousMonth:u,onNextMonth:Ce,optionsPosition:ae="below",mode:pe}){let ie=si(pe),he=ie!==void 0,q=Oe(null),V=Oe(null);li(q,V),De(()=>{if(q.current)return ti(q.current)},[]);let s=e[0]?.options??[],m=!!(l&&l.length>0&&v),f=!!(k&&k.length>0),w=r&&(s.length>0||P&&m||O||f);di(q,w);let y={suggestions:e,activeIndex:o,pills:l,showPills:P,showSkipButton:g,showOptionIcons:b,showOptionImages:S,showOptionCounts:D,skipDisabled:L,activeSelected:H,isLoading:O,skeletonExiting:I,isInputEmpty:F,products:k,formatType:le,dateView:W,selectedDateIso:de,selectedDateRange:ke,dateRangeStart:ce},E=Oe(y);w&&(E.current=y);let c=w?y:E.current,G=ii(z),j=c.suggestions[0],Q=j?.options??[],ue=c.activeIndex>=0&&!!Q[c.activeIndex]?.is_tappable,ge=!!(c.pills&&c.pills.length>0&&v),me=c.showPills&&ge,fe=c.showPills&&!ge&&c.isLoading,be=me||fe,x=ge&&c.showSkipButton&&!c.isInputEmpty&&!!C,we=c.pills?.[0]?.text,ve=ai(c.formatType)&&c.dateView!=null,oe=Q.length>0&&!ve,h=Q.length>0&&ve&&!c.isLoading,Te=c.isLoading&&!oe&&!h,Ae=c.products??[];return lt("div",{ref:q,id:i,role:"listbox","data-aia-dropdown":"","data-options-position":ae,"data-mode":ie,"data-aia-loading":c.isLoading?"":void 0,"data-aia-skeleton-exiting":c.skeletonExiting?"":void 0,"data-aia-has-products":Ae.length>0?"":void 0,className:`${he?"magicx-aia ":""}${ne.dropdown} ${w?ne.visible:""} ${p??""}`,onMouseDown:X=>X.preventDefault(),children:[lt(Mt,{space:"8px",children:[(be||x)&&lt(Ke,{noWrap:!0,className:ne.pillBar,"data-aia-pillbar":"",children:[be&&Z("span",{className:ne.pillScroll,"data-aia-pill-scroll":"",children:Z(Ve,{pills:c.pills??[],activePillIndex:0,activeSelected:c.activeSelected,onSelectPill:v??(()=>{}),rounded:!0,loading:c.isLoading})}),x&&Z("button",{type:"button",tabIndex:-1,className:ne.skip,"data-aia-skip":"",disabled:c.isLoading||c.skipDisabled,"aria-label":we?`${G.skipLabel} ${we}`:G.skipLabel,onClick:C,children:G.skip})]}),oe&&Z(zt,{options:Q,activeIndex:c.activeIndex,onSelect:t,onHighlight:a,onUnhighlight:n,listboxId:i,loading:c.isLoading,groupKey:j?`${j.parameter} ${j.text}`:"",optionsPosition:ae,showIcons:c.showOptionIcons,showImages:c.showOptionImages,showCounts:c.showOptionCounts}),h&&c.dateView&&Z(kt,{options:Q,activeIndex:c.activeIndex,listboxId:i,view:c.dateView,selection:{selectedIso:c.selectedDateIso??null,selectedRange:c.selectedDateRange??null,rangeStart:c.dateRangeStart??null},onSelect:t,onHighlight:a,onUnhighlight:n,onPreviousMonth:u??Nt,onNextMonth:Ce??Nt}),Te&&Z("div",{className:ne.skeletonBars,"data-aia-skeleton-bars":"",children:ni.map(X=>Z("span",{className:ne.skeletonBar,style:{width:X}},`bar-${X}`))}),Z(Et,{products:Ae,listboxId:i,onSelect:M??ri,onFocusChange:K,focusable:w,layout:N,imageFallback:te,strings:G}),Z(Pt,{isOptionHighlighted:ue,isInputEmpty:c.isInputEmpty,strings:G})]}),Z("button",{ref:V,type:"button",tabIndex:-1,className:ne.scrollArrow,"data-aia-scroll-arrow":"","aria-label":G.scrollArrow,"aria-hidden":"true",children:Z("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:Z("path",{d:"M4 6.5 8 10.5l4-4"})})})]})}import{buildSubmitResult as Pi,ModeController as Si,setCursorOffset as Ii,uiStringsFor as Ei}from"@magicx-eng/ai-autocomplete-vanilla";import{uiStringsFor as ci}from"@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 {
2217
2277
  flex-shrink: 0;
2218
2278
  width: 32px;
2219
2279
  height: 32px;
@@ -2266,5 +2326,5 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
2266
2326
  );
2267
2327
  cursor: default;
2268
2328
  }
2269
- `,document.head.appendChild(e)}var Nt={submitButton:"aia-submitButton-otz7H"};import{jsx as dt}from"react/jsx-runtime";function Bt({disabled:e,onClick:n,label:t=si().submit}){return dt("button",{type:"button","data-aia-submit":"",className:Nt.submitButton,disabled:e,onClick:i=>{i.stopPropagation(),n()},"aria-label":t,children:dt("svg",{width:"18",height:"18",viewBox:"0 0 18 18",fill:"none",role:"img","aria-label":t,children:dt("path",{d:"M9 14V4M9 4L4 9M9 4L14 9",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})}import{AIAutocomplete as li,dateSelectionFor as di,identifiedParamLabel as ci}from"@magicx-eng/ai-autocomplete-vanilla";import{useCallback as Wt,useEffect as Re,useRef as F,useState as pi}from"react";import{useRef as Ht}from"react";function Ft(e){let n=Ht(e);n.current=e;let t=Object.keys(e??{}).sort().join("\0"),i=Ht({key:"",overrides:void 0});if(i.current.key!==t){let r={};for(let o of Object.keys(e??{})){let a=(c,d,y)=>{let C=n.current?.[o];return C?C(c,d,y):[]};r[o]=a}i.current={key:t,overrides:e?r:void 0}}return{overrides:i.current.overrides,key:t}}import{useRef as Kt}from"react";function Gt(e){let n=Kt(e);n.current=e;let t=Kt(null);t.current===null&&(t.current={fetch:(r,o)=>{let a=n.current;return a?a.fetch(r,o):Promise.reject(new Error("products config removed"))},transform:r=>n.current?.transform(r)??[],get limit(){return n.current?.limit}});let i=e!==void 0;return{config:i?t.current:void 0,enabled:i}}var hi={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:[],dropdownLoading:!0,dropdownOptions:[],skeletonOptions:null,skeletonSuggestion:null,dropdownSuggestion:null,skeletonRequested:!1,skeletonExiting:!1,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 ct({onSubmit:e,onResult:n,onError:t,optionOverrides:i,maskCompletedText:r,apiConfig:o,additionalContext:a,language:c,visitorId:d,columns:y=2,dropdownTrigger:C,optionsPosition:P,closeDropdownOnBlur:u,showNonTappableOptions:f,showOptionIcons:I,showOptionImages:D,showOptionCounts:L,showSkipButton:K,showProducts:E,productImageFallback:S="image",onFocus:z,onBlur:M,value:k,completedParams:N,onChange:Z,onParamsChange:B,products:de,mapProducts:V,onProductSelect:W,source:xe,setCursor:ce}){let m=F(null),[ye,pe]=pi(null),ie=F(e);ie.current=e;let he=F(n);he.current=n;let oe=F(t);oe.current=t;let ue=F(Z);ue.current=Z;let _=F(B);_.current=B;let X=F(z);X.current=z;let s=F(M);s.current=M;let g=F(ce);g.current=ce;let b=F(W);b.current=W;let v=F(d);v.current=d;let w=F(()=>{let l=v.current;return typeof l=="function"?l():l}).current,R=Gt(de),p=F(V);p.current=V;let H=F((l,G)=>{let T=p.current;return T?T(l,G):l}).current,U=V?H:void 0,j=Ft(i);Re(()=>{if(typeof document>"u")return;let l=new li(document.createElement("div"),{renderMode:"headless",apiConfig:o,additionalContext:a,language:c,visitorId:w,optionOverrides:j.overrides,maskCompletedText:r,columns:y,dropdownTrigger:C,optionsPosition:P,closeDropdownOnBlur:u,showNonTappableOptions:f,showProducts:E,source:xe,value:k,completedParams:N,onSubmit:(...T)=>ie.current?.(...T),onResult:(...T)=>he.current?.(...T),onError:(...T)=>oe.current?.(...T),onChange:(...T)=>ue.current?.(...T),onParamsChange:(...T)=>_.current?.(...T),onFocus:()=>X.current?.(),onBlur:()=>s.current?.(),onProductSelect:T=>b.current?.(T),setCursor:T=>g.current?.(T),products:R.config,mapProducts:U});m.current=l,pe(l.getState());let G=l.subscribe(T=>pe(T));return()=>{G(),l.destroy(),m.current===l&&(m.current=null)}},[]),Re(()=>{k!==void 0&&m.current?.setValue(k)},[k]),Re(()=>{N!==void 0&&m.current?.setCompletedParams(N)},[N]);let Te=JSON.stringify(o??null),J;try{J=JSON.stringify(a??null)}catch{J="[unstringifiable]"}Re(()=>{m.current?.update({apiConfig:o,additionalContext:a,language:c,optionOverrides:j.overrides,dropdownTrigger:C,optionsPosition:P,closeDropdownOnBlur:u,showNonTappableOptions:f,showProducts:E})},[Te,J,c,j.key,C,P,u,f,E]);let me=F(!1);Re(()=>{if(!me.current){me.current=!0;return}m.current?.update({products:R.config})},[R.enabled]),Re(()=>{m.current?.update({mapProducts:U})},[U]);let ke=F(null);ke.current===null&&(ke.current={handleTextChange:l=>m.current?.handleTextChange(l),handleKeyDown:l=>{let G="nativeEvent"in l?l.nativeEvent:l;m.current?.handleKeyDown(G)},setFocused:l=>m.current?.setFocused(l),startEditingParam:l=>m.current?.startEditingParam(l),exitEditMode:()=>m.current?.exitEditMode(),handleCaretAfterInput:l=>m.current?.handleCaretAfterInput(l),handleCaretMove:l=>m.current?.handleCaretMove(l),replaceEditingRange:l=>m.current?.replaceEditingRange(l)??!1,setActivePill:l=>m.current?.setActivePill(l),skipActivePill:()=>m.current?.skipActivePill(),removeLastParam:()=>m.current?.removeLastParam(),clearNewParamId:()=>m.current?.clearNewParamId(),reset:()=>m.current?.reset(),refreshProducts:()=>m.current?.refreshProducts(),recordSubmit:l=>m.current?.recordSubmit(l),selectOption:l=>m.current?.selectOption(l),selectProduct:l=>m.current?.selectProduct(l),setActiveDropdownIndex:l=>m.current?.setActiveDropdownIndex(l),clearHighlight:l=>m.current?.clearHighlight(l),showPreviousMonth:()=>m.current?.showPreviousMonth(),showNextMonth:()=>m.current?.showNextMonth(),handleFocus:()=>m.current?.setFocused(!0),handleBlur:()=>m.current?.setFocused(!1)});let x=ke.current,ge=Wt(l=>{let G=l.target.value,et=G.length>0&&!l.nativeEvent?.isComposing&&G[0]!==G[0].toUpperCase()?G[0].toUpperCase()+G.slice(1):G;m.current?.handleTextChange(et)},[]),fe=Wt(l=>{m.current?.handleKeyDown(l.nativeEvent)},[]),ne=m.current,h=ye??hi,Ce=k!==void 0?k:h.text,Le=N!==void 0?N:h.completedParams,be=h.actionableSuggestions,ee=be[0],Pe=ne?.listboxId??"",Ke=h.activeDropdownIndex>=0&&ne?`${Pe}-option-${h.activeDropdownIndex}`:void 0,ve=h.editingParam,Se=h.editingIdentified,ze=ve?{parameter:ve.suggestionParameter,text:ve.suggestionPlaceholder,required:!0,options:ve.options}:Se?{parameter:Se.parameter,text:ci(Se.parameter),required:!0,options:[]}:null,Ge=h.dropdownSuggestion??ze??ee,Je=ze?[ze]:be,Me=di(h),We=!ne||h.dropdownLoading;return{completedParams:Le,skippedParams:h.skippedParams,identifiedParams:h.identifiedParams,suggestionPills:be,setActivePill:x.setActivePill,skipActivePill:x.skipActivePill,removeLastParam:x.removeLastParam,segments:h.segments,newParamId:h.newParamId,clearNewParamId:x.clearNewParamId,suggestions:h.suggestions,activeIndex:h.activeDropdownIndex,isReady:h.isReady,isLoading:We,isFocused:h.isFocused,isDropdownOpen:h.isDropdownOpen,isActivePillSelected:h.isActivePillSelected,placeholderText:h.placeholderText,listboxId:Pe,error:h.error,products:h.products,customFields:h.customFields,selectProduct:x.selectProduct,handleTextChange:x.handleTextChange,handleKeyDown:x.handleKeyDown,setFocused:x.setFocused,editingParam:ve,editingIdentified:Se,editingAnchor:h.editingAnchor,caretOffset:h.caretOffset,startEditingParam:x.startEditingParam,exitEditMode:x.exitEditMode,handleCaretAfterInput:x.handleCaretAfterInput,handleCaretMove:x.handleCaretMove,replaceEditingRange:x.replaceEditingRange,inputProps:{value:Ce,placeholder:h.placeholderText||void 0,onChange:ge,onKeyDown:fe,onFocus:x.handleFocus,onBlur:x.handleBlur,role:"combobox","aria-expanded":h.isDropdownOpen,"aria-activedescendant":Ke,"aria-autocomplete":"list","aria-controls":Pe},reset:x.reset,refreshProducts:x.refreshProducts,recordSubmit:x.recordSubmit,dropdownProps:{suggestions:Ge?[{...Ge,options:h.dropdownOptions}]:[],activeIndex:h.activeDropdownIndex,onSelect:x.selectOption,onHighlight:x.setActiveDropdownIndex,onUnhighlight:x.clearHighlight,isOpen:h.isDropdownOpen,id:Pe,pills:Je,activeSelected:h.isActivePillSelected,onPillClick:x.setActivePill,onSkip:x.skipActivePill,showSkipButton:(K??!0)&&!ve&&!Se,showOptionIcons:I??!0,showOptionImages:D??!0,showOptionCounts:L??!0,skipDisabled:h.inSelectionAnimation,isLoading:We,skeletonExiting:h.skeletonExiting,isInputEmpty:Ce.trim().length===0,language:c,products:h.products,productImageFallback:S,onProductSelect:x.selectProduct,onProductFocusChange:x.setFocused,formatType:h.activeFormatType,dateView:h.dateView,selectedDateIso:Me.selectedIso,selectedDateRange:Me.selectedRange,dateRangeStart:Me.rangeStart,onPreviousMonth:x.showPreviousMonth,onNextMonth:x.showNextMonth,optionsPosition:P??"below"}}}import{chipIdFromTap as ui,extractPlainText as _t,getCursorOffset as Ut,keepCaretOnChip as mi,plainTextLength as gi,renderEditableContent as fi,setCursorOffset as qt}from"@magicx-eng/ai-autocomplete-vanilla";import{useCallback as $,useEffect as Ve,useLayoutEffect as pt,useRef as Oe}from"react";var Xe;function bi(){if(Xe!==void 0)return Xe;if(typeof document>"u")return!1;let e=document.createElement("div");return e.setAttribute("contenteditable","plaintext-only"),Xe=e.contentEditable==="plaintext-only",Xe}function jt(e){let{segments:n,showChipIcons:t=!0,showChipImages:i=!0,newParamId:r,editingParam:o,editingIdentified:a,editingAnchor:c,caretOffset:d,placeholderText:y,isFocused:C,isDropdownOpen:P,listboxId:u,activeDescendantId:f,autoFocus:I,handleTextChange:D,handleKeyDown:L,handleCaretAfterInput:K,handleCaretMove:E,startEditingParam:S,replaceEditingRange:z,setFocused:M}=e,k=Oe(null),N=Oe(!1),Z=Oe(""),B=Oe(""),de=Oe(null),V=Oe(0);de.current=d,Ve(()=>{if(!I)return;let s=k.current;if(!s)return;document.activeElement===s?M(!0):s.focus();let g=s.ownerDocument??document,b=g.getSelection(),v=b&&b.rangeCount>0&&s.contains(b.anchorNode);if(b&&!v){let w=g.createRange();w.selectNodeContents(s),w.collapse(!0),b.removeAllRanges(),b.addRange(w)}},[I,M]),Ve(()=>{let s=k.current;if(!s)return;let g=s.ownerDocument??document,b=()=>{let v=g.getSelection();if(!v||v.rangeCount===0||!v.anchorNode||!s.contains(v.anchorNode))return;let w=v.anchorNode,R=w.nodeType===Node.ELEMENT_NODE?w:w.parentElement,H=(v.isCollapsed?R?.closest("strong[data-param-id]"):null)?.dataset.paramId??null,U=o?.id??a?.id??null;if(H&&H!==U){S(H);return}performance.now()-V.current<50||E(Ut(s))};return g.addEventListener("selectionchange",b),()=>g.removeEventListener("selectionchange",b)},[o,a,S,E]),Ve(()=>{let s=k.current;if(!s)return;let g=b=>{let v=ui(s,b.target);v&&(S(v),mi(s,v))};return s.addEventListener("click",g),()=>s.removeEventListener("click",g)},[S]),pt(()=>{let s=k.current;s&&fi({input:s,segments:n,newParamId:r,editingParamId:o?.id??null,placeholderText:y??"",isFocused:C,showChipIcons:t,showChipImages:i})},[n,r,o,y,C,t,i]),pt(()=>{let s=Z.current,g=r??"";if(Z.current=g,!g||g===s)return;let b=k.current;if(!b)return;b.focus();let v=de.current??gi(b);qt(b,v)},[r]),pt(()=>{let s=B.current,g=o?.id??"";if(B.current=g,!g||g===s||c==null)return;let b=k.current;b&&qt(b,c)},[o,c]);let W=$(()=>{if(N.current)return;let s=k.current;if(!s)return;let g=_t(s),v=g.length>0&&g[0]!==g[0].toUpperCase()?g[0].toUpperCase()+g.slice(1):g;D(v)},[D]),xe=$(()=>{V.current=performance.now(),W();let s=k.current;s&&K(Ut(s))},[W,K]);Ve(()=>{let s=k.current;if(!s)return;let g=b=>{let v=b,w=v.inputType;if(w==="insertParagraph"||w==="insertLineBreak"||w==="insertFromDrop"){b.preventDefault();return}if(w.startsWith("insert")||w.startsWith("delete")){let R=w.startsWith("delete")?"":v.data??"";z(R)&&b.preventDefault()}};return s.addEventListener("beforeinput",g),()=>s.removeEventListener("beforeinput",g)},[z]);let ce=$(()=>{N.current=!0},[]),m=$(()=>{N.current=!1,W()},[W]),ye=$(s=>{s.preventDefault();let g=k.current;if(!g)return;let b=(s.clipboardData.getData("text/plain")??"").replace(/\r?\n/g," ");if(!b)return;let v=g.ownerDocument??document,w=v.getSelection();if(!w||w.rangeCount===0)return;let R=w.getRangeAt(0);if(!g.contains(R.startContainer))return;R.deleteContents();let p=v.createTextNode(b);R.insertNode(p),R.setStartAfter(p),R.collapse(!0),w.removeAllRanges(),w.addRange(R),W()},[W]),pe=$(s=>L(s),[L]),ie=$(()=>M(!0),[M]),he=$(()=>M(!1),[M]),oe=$(()=>k.current?.focus(),[]),ue=$(()=>k.current?.blur(),[]),_=$(()=>{let s=k.current;return s?_t(s):""},[]),X=bi()?"plaintext-only":"true";return{inputRef:k,editorProps:{ref:k,contentEditable:X,suppressContentEditableWarning:!0,tabIndex:0,role:"combobox","aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":u,"aria-expanded":P,"aria-activedescendant":f,spellCheck:!0,enterKeyHint:"send",onInput:xe,onKeyDown:pe,onCompositionStart:ce,onCompositionEnd:m,onPaste:ye,onFocus:ie,onBlur:he},getPlainText:_,focus:oe,blur:ue}}import{jsx as De,jsxs as ut}from"react/jsx-runtime";function Si(e){return e!=="auto"?e:typeof window>"u"||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}var Ii=vi(function({onSubmit:n,onResult:t,onError:i,optionOverrides:r,maskCompletedText:o,className:a,apiConfig:c,additionalContext:d,language:y,visitorId:C,columns:P,pillPlacement:u="dropdown",mode:f="auto",optionsPosition:I="below",animations:D=!0,dropdownTrigger:L,closeDropdownOnBlur:K,showNonTappableOptions:E,showOptionIcons:S=!0,showChipIcons:z=!0,showChipImages:M=!0,showOptionImages:k=!0,showOptionCounts:N=!0,showSkipButton:Z,showProducts:B,productsLayout:de,productImageFallback:V,autoFocus:W=!0,onFocus:xe,onBlur:ce,value:m,completedParams:ye,onChange:pe,onParamsChange:ie,products:he,mapProducts:oe,onProductSelect:ue,submitButton:_,resetOnSubmit:X=!0},s){let g=Fe(null),b=Fe(null),v=Fe(()=>{}),w=Fe(null),R=Fe(null);Qt(()=>{let A=g.current;if(A)return w.current?w.current.setMode(f):w.current=new ki(A,f),()=>{w.current?.destroy(),w.current=null}},[f]);let p=ht(A=>{let te=R.current?.current;te&&(te.focus(),Ci(te,A))},[]),{completedParams:H,skippedParams:U,identifiedParams:j,isReady:Te,customFields:J,suggestionPills:me,setActivePill:ke,skipActivePill:x,segments:ge,newParamId:fe,clearNewParamId:ne,placeholderText:h,isFocused:Ce,isDropdownOpen:Le,isActivePillSelected:be,isLoading:ee,activeIndex:Pe,listboxId:Ke,handleTextChange:ve,handleKeyDown:Se,setFocused:ze,editingParam:Ge,editingIdentified:Je,editingAnchor:Me,caretOffset:We,startEditingParam:l,handleCaretAfterInput:G,handleCaretMove:T,replaceEditingRange:et,dropdownProps:Yt,reset:_e,refreshProducts:mt,recordSubmit:gt}=ct({onSubmit:A=>v.current(A),onResult:t,onError:i,optionOverrides:r,maskCompletedText:o,apiConfig:c,additionalContext:d,language:y,visitorId:C,columns:P,dropdownTrigger:L,optionsPosition:I,closeDropdownOnBlur:K,showNonTappableOptions:E,showOptionIcons:S,showOptionImages:k,showOptionCounts:N,showSkipButton:Z,showProducts:B,onFocus:xe,onBlur:ce,value:m,completedParams:ye,onChange:pe,onParamsChange:ie,products:he,mapProducts:oe,onProductSelect:ue,source:"full-sdk",setCursor:p});Qt(()=>{if(!fe)return;let A=window.setTimeout(()=>ne(),650);return()=>window.clearTimeout(A)},[fe,ne]);let Zt=Pe>=0?`${Ke}-option-${Pe}`:void 0,{inputRef:tt,editorProps:$t,focus:Ue,blur:ft,getPlainText:bt}=jt({segments:ge,newParamId:fe,editingParam:Ge,editingIdentified:Je,editingAnchor:Me,caretOffset:We,placeholderText:h,isFocused:Ce,showChipIcons:z,showChipImages:M,isDropdownOpen:Le,listboxId:Ke,activeDescendantId:Zt,autoFocus:W,handleTextChange:ve,handleKeyDown:Se,handleCaretAfterInput:G,handleCaretMove:T,startEditingParam:l,replaceEditingRange:et,setFocused:ze});R.current=tt,xi(()=>{let A=b.current,te=tt.current;if(!A||!te)return;let Ne=()=>{let wt=A.firstElementChild;if(!wt)return;let ea=wt.getBoundingClientRect(),ta=te.getBoundingClientRect();ea.top>=ta.bottom-2?A.setAttribute("data-aia-pill-wrapped",""):A.removeAttribute("data-aia-pill-wrapped")};Ne();let vt=new ResizeObserver(Ne);return vt.observe(te),()=>vt.disconnect()},[ge,me.length,ee,tt]),wi(s,()=>({focus:Ue,blur:ft,reset:_e,refreshProducts:mt,setMode:A=>w.current?.setMode(A),skipActivePill:x}),[Ue,ft,_e,mt,x]);let qe=!!ge.length||H.length>0,at=ht(A=>{if(!qe)return;let te=bt(),Ne=yi(te,H,U,{identifiedParams:j,isReady:Te,customFields:J});A&&gt(Ne),n(Ne),X&&_e()},[gt,X,qe,H,U,j,Te,J,n,_e,bt]);v.current=()=>at(!1);let Vt=ht(A=>{A.target?.closest("[data-aia-pill]")||Ue()},[Ue]),Xt=u==="inline",Jt=u==="dropdown";return ut("div",{ref:g,className:`magicx-aia ${Ie.container} ${a??""}`,"data-pill-placement":u,"data-options-position":I,"data-animations":D?"on":"off","data-mode":Si(f),children:[De(lt,{...Yt,showPills:Jt,productsLayout:de,productImageFallback:V}),ut("div",{className:Ie.inputWrapper,"data-aia-input-wrapper":"",onClick:Vt,children:[ut("div",{className:Ie.editorArea,"data-aia-editor":"",children:[De("div",{...$t,className:Ie.input,"data-aia-input":""}),Xt&&(ee||me.length>0)&&De("span",{ref:b,className:Ie.pillListContainer,"data-aia-pill-list-container":"",children:De(Qe,{pills:me,activePillIndex:0,activeSelected:be,onSelectPill:ke,loading:ee})})]}),_===null?null:_===void 0?De(Bt,{disabled:!qe,onClick:()=>at(!0),label:Pi(y).submit}):De("span",{"data-aia-submit":"","data-aia-submit-slot":"",className:Ie.submitSlot,onClick:A=>{qe&&(A.stopPropagation(),at(!0))},children:_})]})]})});export{Ii as AIAutocomplete,lt as AIAutocompleteDropdown,kn as DATE_RANGE_META_END,Cn as DATE_RANGE_META_START,Pn as DEFAULT_OPTION_COUNT_UNIT,Nn as PRODUCT_PATH_PREFIX,jn as WEEKDAY_LABELS,wn as buildSubmitResult,xn as cellDay,yn as cellIso,Sn as dateCellMarks,In as formatDate,En as formatDateRange,Tn as formatOptionCount,An as isoDate,Rn as monthLabel,On as optionCountLabel,Dn as optionHasImage,Ln as optionImageSources,zn as optionImageSrc,Mn as optionLabel,Bn as parseDate,Hn as parseLooseDate,Fn as parseLooseDateRange,Kn as productFromMatchedItem,Gn as productImageSources,Wn as productsFromCustomFields,_n as sanitizeOptionIconSvg,Un as selectedRangeFor,ct as useAIAutocomplete,qn as visibleDateRange,Qn as withSkippedParams};
2329
+ `,document.head.appendChild(e)}var Ft={submitButton:"aia-submitButton-otz7H"};import{jsx as ct}from"react/jsx-runtime";function Bt({disabled:e,onClick:o,label:t=ci().submit}){return ct("button",{type:"button","data-aia-submit":"",className:Ft.submitButton,disabled:e,onClick:a=>{a.stopPropagation(),o()},"aria-label":t,children:ct("svg",{width:"18",height:"18",viewBox:"0 0 18 18",fill:"none",role:"img","aria-label":t,children:ct("path",{d:"M9 14V4M9 4L4 9M9 4L14 9",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})}import{AIAutocomplete as pi,dateSelectionFor as hi,identifiedParamLabel as ui}from"@magicx-eng/ai-autocomplete-vanilla";import{useCallback as _t,useEffect as Le,useRef as B,useState as gi}from"react";import{useRef as Ht}from"react";function Kt(e){let o=Ht(e);o.current=e;let t=Object.keys(e??{}).sort().join("\0"),a=Ht({key:"",overrides:void 0});if(a.current.key!==t){let n={};for(let r of Object.keys(e??{})){let i=(p,l,v)=>{let P=o.current?.[r];return P?P(p,l,v):[]};n[r]=i}a.current={key:t,overrides:e?n:void 0}}return{overrides:a.current.overrides,key:t}}import{useRef as Gt}from"react";function Wt(e){let o=Gt(e);o.current=e;let t=Gt(null);t.current===null&&(t.current={fetch:(n,r)=>{let i=o.current;return i?i.fetch(n,r):Promise.reject(new Error("products config removed"))},transform:n=>o.current?.transform(n)??[],get limit(){return o.current?.limit}});let a=e!==void 0;return{config:a?t.current:void 0,enabled:a}}var mi={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:[],dropdownLoading:!0,dropdownOptions:[],skeletonOptions:null,skeletonSuggestion:null,dropdownSuggestion:null,skeletonRequested:!1,skeletonExiting:!1,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 pt({onSubmit:e,onResult:o,onError:t,optionOverrides:a,maskCompletedText:n,apiConfig:r,additionalContext:i,language:p,productId:l,visitorId:v,columns:P=2,dropdownTrigger:C,optionsPosition:g,closeDropdownOnBlur:b,showNonTappableOptions:S,showOptionIcons:D,showOptionImages:L,showOptionCounts:H,showSkipButton:O,showProducts:I,productImageFallback:F="image",onFocus:z,onBlur:k,value:M,completedParams:K,onChange:N,onParamsChange:te,products:le,mapProducts:W,onProductSelect:de,source:ke,setCursor:ce}){let u=B(null),[Ce,ae]=gi(null),pe=B(e);pe.current=e;let ie=B(o);ie.current=o;let he=B(t);he.current=t;let q=B(N);q.current=N;let V=B(te);V.current=te;let s=B(z);s.current=z;let m=B(k);m.current=k;let f=B(ce);f.current=ce;let w=B(de);w.current=de;let y=B(v);y.current=v;let E=B(()=>{let d=y.current;return typeof d=="function"?d():d}).current,c=Wt(le),G=B(W);G.current=W;let j=B((d,_)=>{let T=G.current;return T?T(d,_):d}).current,Q=W?j:void 0,ue=Kt(a);Le(()=>{if(typeof document>"u")return;let d=new pi(document.createElement("div"),{renderMode:"headless",apiConfig:r,additionalContext:i,language:p,productId:l,visitorId:E,optionOverrides:ue.overrides,maskCompletedText:n,columns:P,dropdownTrigger:C,optionsPosition:g,closeDropdownOnBlur:b,showNonTappableOptions:S,showProducts:I,source:ke,value:M,completedParams:K,onSubmit:(...T)=>pe.current?.(...T),onResult:(...T)=>ie.current?.(...T),onError:(...T)=>he.current?.(...T),onChange:(...T)=>q.current?.(...T),onParamsChange:(...T)=>V.current?.(...T),onFocus:()=>s.current?.(),onBlur:()=>m.current?.(),onProductSelect:T=>w.current?.(T),setCursor:T=>f.current?.(T),products:c.config,mapProducts:Q});u.current=d,ae(d.getState());let _=d.subscribe(T=>ae(T));return()=>{_(),d.destroy(),u.current===d&&(u.current=null)}},[]),Le(()=>{M!==void 0&&u.current?.setValue(M)},[M]),Le(()=>{K!==void 0&&u.current?.setCompletedParams(K)},[K]);let ge=JSON.stringify(r??null),me;try{me=JSON.stringify(i??null)}catch{me="[unstringifiable]"}Le(()=>{u.current?.update({apiConfig:r,additionalContext:i,language:p,productId:l,optionOverrides:ue.overrides,dropdownTrigger:C,optionsPosition:g,closeDropdownOnBlur:b,showNonTappableOptions:S,showProducts:I})},[ge,me,p,l,ue.key,C,g,b,S,I]);let fe=B(!1);Le(()=>{if(!fe.current){fe.current=!0;return}u.current?.update({products:c.config})},[c.enabled]),Le(()=>{u.current?.update({mapProducts:Q})},[Q]);let be=B(null);be.current===null&&(be.current={handleTextChange:d=>u.current?.handleTextChange(d),handleKeyDown:d=>{let _="nativeEvent"in d?d.nativeEvent:d;u.current?.handleKeyDown(_)},setFocused:d=>u.current?.setFocused(d),startEditingParam:d=>u.current?.startEditingParam(d),exitEditMode:()=>u.current?.exitEditMode(),handleCaretAfterInput:d=>u.current?.handleCaretAfterInput(d),handleCaretMove:d=>u.current?.handleCaretMove(d),replaceEditingRange:d=>u.current?.replaceEditingRange(d)??!1,setActivePill:d=>u.current?.setActivePill(d),skipActivePill:()=>u.current?.skipActivePill(),removeLastParam:()=>u.current?.removeLastParam(),clearNewParamId:()=>u.current?.clearNewParamId(),reset:()=>u.current?.reset(),refreshProducts:()=>u.current?.refreshProducts(),recordSubmit:d=>u.current?.recordSubmit(d),selectOption:d=>u.current?.selectOption(d),selectProduct:d=>u.current?.selectProduct(d),setActiveDropdownIndex:d=>u.current?.setActiveDropdownIndex(d),clearHighlight:d=>u.current?.clearHighlight(d),showPreviousMonth:()=>u.current?.showPreviousMonth(),showNextMonth:()=>u.current?.showNextMonth(),handleFocus:()=>u.current?.setFocused(!0),handleBlur:()=>u.current?.setFocused(!1)});let x=be.current,we=_t(d=>{let _=d.target.value,tt=_.length>0&&!d.nativeEvent?.isComposing&&_[0]!==_[0].toUpperCase()?_[0].toUpperCase()+_.slice(1):_;u.current?.handleTextChange(tt)},[]),ve=_t(d=>{u.current?.handleKeyDown(d.nativeEvent)},[]),oe=u.current,h=Ce??mi,Te=M!==void 0?M:h.text,Ae=K!==void 0?K:h.completedParams,X=h.actionableSuggestions,Ne=X[0],Pe=oe?.listboxId??"",_e=h.activeDropdownIndex>=0&&oe?`${Pe}-option-${h.activeDropdownIndex}`:void 0,xe=h.editingParam,Se=h.editingIdentified,Fe=xe?{parameter:xe.suggestionParameter,text:xe.suggestionPlaceholder,required:!0,options:xe.options}:Se?{parameter:Se.parameter,text:ui(Se.parameter),required:!0,options:[]}:null,Ue=h.dropdownSuggestion??Fe??Ne,et=Fe?[Fe]:X,Be=hi(h),qe=!oe||h.dropdownLoading;return{completedParams:Ae,skippedParams:h.skippedParams,identifiedParams:h.identifiedParams,suggestionPills:X,setActivePill:x.setActivePill,skipActivePill:x.skipActivePill,removeLastParam:x.removeLastParam,segments:h.segments,newParamId:h.newParamId,clearNewParamId:x.clearNewParamId,suggestions:h.suggestions,activeIndex:h.activeDropdownIndex,isReady:h.isReady,isLoading:qe,isFocused:h.isFocused,isDropdownOpen:h.isDropdownOpen,isActivePillSelected:h.isActivePillSelected,placeholderText:h.placeholderText,listboxId:Pe,error:h.error,products:h.products,customFields:h.customFields,selectProduct:x.selectProduct,handleTextChange:x.handleTextChange,handleKeyDown:x.handleKeyDown,setFocused:x.setFocused,editingParam:xe,editingIdentified:Se,editingAnchor:h.editingAnchor,caretOffset:h.caretOffset,startEditingParam:x.startEditingParam,exitEditMode:x.exitEditMode,handleCaretAfterInput:x.handleCaretAfterInput,handleCaretMove:x.handleCaretMove,replaceEditingRange:x.replaceEditingRange,inputProps:{value:Te,placeholder:h.placeholderText||void 0,onChange:we,onKeyDown:ve,onFocus:x.handleFocus,onBlur:x.handleBlur,role:"combobox","aria-expanded":h.isDropdownOpen,"aria-activedescendant":_e,"aria-autocomplete":"list","aria-controls":Pe},reset:x.reset,refreshProducts:x.refreshProducts,recordSubmit:x.recordSubmit,dropdownProps:{suggestions:Ue?[{...Ue,options:h.dropdownOptions}]:[],activeIndex:h.activeDropdownIndex,onSelect:x.selectOption,onHighlight:x.setActiveDropdownIndex,onUnhighlight:x.clearHighlight,isOpen:h.isDropdownOpen,id:Pe,pills:et,activeSelected:h.isActivePillSelected,onPillClick:x.setActivePill,onSkip:x.skipActivePill,showSkipButton:(O??!0)&&!xe&&!Se,showOptionIcons:D??!0,showOptionImages:L??!0,showOptionCounts:H??!0,skipDisabled:h.inSelectionAnimation,isLoading:qe,skeletonExiting:h.skeletonExiting,isInputEmpty:Te.trim().length===0,language:p,products:h.products,productImageFallback:F,onProductSelect:x.selectProduct,onProductFocusChange:x.setFocused,formatType:h.activeFormatType,dateView:h.dateView,selectedDateIso:Be.selectedIso,selectedDateRange:Be.selectedRange,dateRangeStart:Be.rangeStart,onPreviousMonth:x.showPreviousMonth,onNextMonth:x.showNextMonth,optionsPosition:g??"below"}}}import{chipIdFromTap as fi,extractPlainText as Ut,getCursorOffset as qt,keepCaretOnChip as bi,plainTextLength as wi,renderEditableContent as vi,setCursorOffset as jt}from"@magicx-eng/ai-autocomplete-vanilla";import{useCallback as $,useEffect as Xe,useLayoutEffect as ht,useRef as ze}from"react";var Je;function xi(){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 Qt(e){let{segments:o,showChipIcons:t=!0,showChipImages:a=!0,newParamId:n,editingParam:r,editingIdentified:i,editingAnchor:p,caretOffset:l,placeholderText:v,isFocused:P,isDropdownOpen:C,listboxId:g,activeDescendantId:b,autoFocus:S,handleTextChange:D,handleKeyDown:L,handleCaretAfterInput:H,handleCaretMove:O,startEditingParam:I,replaceEditingRange:F,setFocused:z}=e,k=ze(null),M=ze(!1),K=ze(""),N=ze(""),te=ze(null),le=ze(0);te.current=l,Xe(()=>{if(!S)return;let s=k.current;if(!s)return;document.activeElement===s?z(!0):s.focus();let m=s.ownerDocument??document,f=m.getSelection(),w=f&&f.rangeCount>0&&s.contains(f.anchorNode);if(f&&!w){let y=m.createRange();y.selectNodeContents(s),y.collapse(!0),f.removeAllRanges(),f.addRange(y)}},[S,z]),Xe(()=>{let s=k.current;if(!s)return;let m=s.ownerDocument??document,f=()=>{let w=m.getSelection();if(!w||w.rangeCount===0||!w.anchorNode||!s.contains(w.anchorNode))return;let y=w.anchorNode,E=y.nodeType===Node.ELEMENT_NODE?y:y.parentElement,G=(w.isCollapsed?E?.closest("strong[data-param-id]"):null)?.dataset.paramId??null,j=r?.id??i?.id??null;if(G&&G!==j){I(G);return}performance.now()-le.current<50||O(qt(s))};return m.addEventListener("selectionchange",f),()=>m.removeEventListener("selectionchange",f)},[r,i,I,O]),Xe(()=>{let s=k.current;if(!s)return;let m=f=>{let w=fi(s,f.target);w&&(I(w),bi(s,w))};return s.addEventListener("click",m),()=>s.removeEventListener("click",m)},[I]),ht(()=>{let s=k.current;s&&vi({input:s,segments:o,newParamId:n,editingParamId:r?.id??null,placeholderText:v??"",isFocused:P,showChipIcons:t,showChipImages:a})},[o,n,r,v,P,t,a]),ht(()=>{let s=K.current,m=n??"";if(K.current=m,!m||m===s)return;let f=k.current;if(!f)return;f.focus();let w=te.current??wi(f);jt(f,w)},[n]),ht(()=>{let s=N.current,m=r?.id??"";if(N.current=m,!m||m===s||p==null)return;let f=k.current;f&&jt(f,p)},[r,p]);let W=$(()=>{if(M.current)return;let s=k.current;if(!s)return;let m=Ut(s),w=m.length>0&&m[0]!==m[0].toUpperCase()?m[0].toUpperCase()+m.slice(1):m;D(w)},[D]),de=$(()=>{le.current=performance.now(),W();let s=k.current;s&&H(qt(s))},[W,H]);Xe(()=>{let s=k.current;if(!s)return;let m=f=>{let w=f,y=w.inputType;if(y==="insertParagraph"||y==="insertLineBreak"||y==="insertFromDrop"){f.preventDefault();return}if(y.startsWith("insert")||y.startsWith("delete")){let E=y.startsWith("delete")?"":w.data??"";F(E)&&f.preventDefault()}};return s.addEventListener("beforeinput",m),()=>s.removeEventListener("beforeinput",m)},[F]);let ke=$(()=>{M.current=!0},[]),ce=$(()=>{M.current=!1,W()},[W]),u=$(s=>{s.preventDefault();let m=k.current;if(!m)return;let f=(s.clipboardData.getData("text/plain")??"").replace(/\r?\n/g," ");if(!f)return;let w=m.ownerDocument??document,y=w.getSelection();if(!y||y.rangeCount===0)return;let E=y.getRangeAt(0);if(!m.contains(E.startContainer))return;E.deleteContents();let c=w.createTextNode(f);E.insertNode(c),E.setStartAfter(c),E.collapse(!0),y.removeAllRanges(),y.addRange(E),W()},[W]),Ce=$(s=>L(s),[L]),ae=$(()=>z(!0),[z]),pe=$(()=>z(!1),[z]),ie=$(()=>k.current?.focus(),[]),he=$(()=>k.current?.blur(),[]),q=$(()=>{let s=k.current;return s?Ut(s):""},[]),V=xi()?"plaintext-only":"true";return{inputRef:k,editorProps:{ref:k,contentEditable:V,suppressContentEditableWarning:!0,tabIndex:0,role:"combobox","aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":g,"aria-expanded":C,"aria-activedescendant":b,spellCheck:!0,enterKeyHint:"send",onInput:de,onKeyDown:Ce,onCompositionStart:ke,onCompositionEnd:ce,onPaste:u,onFocus:ae,onBlur:pe},getPlainText:q,focus:ie,blur:he}}import{jsx as Me,jsxs as gt}from"react/jsx-runtime";function Ti(e){return e!=="auto"?e:typeof window>"u"||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}var Ai=yi(function({onSubmit:o,onResult:t,onError:a,optionOverrides:n,maskCompletedText:r,className:i,apiConfig:p,additionalContext:l,language:v,productId:P,visitorId:C,columns:g,pillPlacement:b="dropdown",mode:S="auto",optionsPosition:D="below",animations:L=!0,dropdownTrigger:H,closeDropdownOnBlur:O,showNonTappableOptions:I,showOptionIcons:F=!0,showChipIcons:z=!0,showChipImages:k=!0,showOptionImages:M=!0,showOptionCounts:K=!0,showSkipButton:N,showProducts:te,productsLayout:le,productImageFallback:W,autoFocus:de=!0,onFocus:ke,onBlur:ce,value:u,completedParams:Ce,onChange:ae,onParamsChange:pe,products:ie,mapProducts:he,onProductSelect:q,submitButton:V,resetOnSubmit:s=!0},m){let f=We(null),w=We(null),y=We(()=>{}),E=We(null),c=We(null);Yt(()=>{let A=f.current;if(A)return E.current?E.current.setMode(S):E.current=new Si(A,S),()=>{E.current?.destroy(),E.current=null}},[S]);let G=ut(A=>{let J=c.current?.current;J&&(J.focus(),Ii(J,A))},[]),{completedParams:j,skippedParams:Q,identifiedParams:ue,isReady:ge,customFields:me,suggestionPills:fe,setActivePill:be,skipActivePill:x,segments:we,newParamId:ve,clearNewParamId:oe,placeholderText:h,isFocused:Te,isDropdownOpen:Ae,isActivePillSelected:X,isLoading:Ne,activeIndex:Pe,listboxId:_e,handleTextChange:xe,handleKeyDown:Se,setFocused:Fe,editingParam:Ue,editingIdentified:et,editingAnchor:Be,caretOffset:qe,startEditingParam:d,handleCaretAfterInput:_,handleCaretMove:T,replaceEditingRange:tt,dropdownProps:Zt,reset:je,refreshProducts:mt,recordSubmit:ft}=pt({onSubmit:A=>y.current(A),onResult:t,onError:a,optionOverrides:n,maskCompletedText:r,apiConfig:p,additionalContext:l,language:v,productId:P,visitorId:C,columns:g,dropdownTrigger:H,optionsPosition:D,closeDropdownOnBlur:O,showNonTappableOptions:I,showOptionIcons:F,showOptionImages:M,showOptionCounts:K,showSkipButton:N,showProducts:te,onFocus:ke,onBlur:ce,value:u,completedParams:Ce,onChange:ae,onParamsChange:pe,products:ie,mapProducts:he,onProductSelect:q,source:"full-sdk",setCursor:G});Yt(()=>{if(!ve)return;let A=window.setTimeout(()=>oe(),650);return()=>window.clearTimeout(A)},[ve,oe]);let Vt=Pe>=0?`${_e}-option-${Pe}`:void 0,{inputRef:at,editorProps:$t,focus:Qe,blur:bt,getPlainText:wt}=Qt({segments:we,newParamId:ve,editingParam:Ue,editingIdentified:et,editingAnchor:Be,caretOffset:qe,placeholderText:h,isFocused:Te,showChipIcons:z,showChipImages:k,isDropdownOpen:Ae,listboxId:_e,activeDescendantId:Vt,autoFocus:de,handleTextChange:xe,handleKeyDown:Se,handleCaretAfterInput:_,handleCaretMove:T,startEditingParam:d,replaceEditingRange:tt,setFocused:Fe});c.current=at,Ci(()=>{let A=w.current,J=at.current;if(!A||!J)return;let He=()=>{let xt=A.firstElementChild;if(!xt)return;let ta=xt.getBoundingClientRect(),aa=J.getBoundingClientRect();ta.top>=aa.bottom-2?A.setAttribute("data-aia-pill-wrapped",""):A.removeAttribute("data-aia-pill-wrapped")};He();let vt=new ResizeObserver(He);return vt.observe(J),()=>vt.disconnect()},[we,fe.length,Ne,at]),ki(m,()=>({focus:Qe,blur:bt,reset:je,refreshProducts:mt,setMode:A=>E.current?.setMode(A),skipActivePill:x}),[Qe,bt,je,mt,x]);let Ye=!!we.length||j.length>0,it=ut(A=>{if(!Ye)return;let J=wt(),He=Pi(J,j,Q,{identifiedParams:ue,isReady:ge,customFields:me});A&&ft(He),o(He),s&&je()},[ft,s,Ye,j,Q,ue,ge,me,o,je,wt]);y.current=()=>it(!1);let Xt=ut(A=>{A.target?.closest("[data-aia-pill]")||Qe()},[Qe]),Jt=b==="inline",ea=b==="dropdown";return gt("div",{ref:f,className:`magicx-aia ${Ie.container} ${i??""}`,"data-pill-placement":b,"data-options-position":D,"data-animations":L?"on":"off","data-mode":Ti(S),children:[Me(dt,{...Zt,showPills:ea,productsLayout:le,productImageFallback:W}),gt("div",{className:Ie.inputWrapper,"data-aia-input-wrapper":"",onClick:Xt,children:[gt("div",{className:Ie.editorArea,"data-aia-editor":"",children:[Me("div",{...$t,className:Ie.input,"data-aia-input":""}),Jt&&(Ne||fe.length>0)&&Me("span",{ref:w,className:Ie.pillListContainer,"data-aia-pill-list-container":"",children:Me(Ve,{pills:fe,activePillIndex:0,activeSelected:X,onSelectPill:be,loading:Ne})})]}),V===null?null:V===void 0?Me(Bt,{disabled:!Ye,onClick:()=>it(!0),label:Ei(v).submit}):Me("span",{"data-aia-submit":"","data-aia-submit-slot":"",className:Ie.submitSlot,onClick:A=>{Ye&&(A.stopPropagation(),it(!0))},children:V})]})]})});export{Ai as AIAutocomplete,dt as AIAutocompleteDropdown,Sn as DATE_RANGE_META_END,In as DATE_RANGE_META_START,En as DEFAULT_OPTION_COUNT_UNIT,Hn as PRODUCT_PATH_PREFIX,Zn as WEEKDAY_LABELS,kn as buildSubmitResult,Cn as cellDay,Pn as cellIso,Tn as dateCellMarks,An as formatDate,Rn as formatDateRange,On as formatOptionCount,Dn as isoDate,Ln as monthLabel,zn as optionCountLabel,Mn as optionHasImage,Nn as optionImageSources,Fn as optionImageSrc,Bn as optionLabel,Kn as parseDate,Gn as parseLooseDate,Wn as parseLooseDateRange,_n as productFromMatchedItem,Un as productImageSources,qn as productsFromCustomFields,jn as sanitizeOptionIconSvg,Qn as selectedRangeFor,pt as useAIAutocomplete,Yn as visibleDateRange,Vn as withSkippedParams};
2270
2330
  //# sourceMappingURL=index.mjs.map