@magicx-eng/ai-autocomplete-react 0.39.4 → 0.40.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/README.md +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +12 -12
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +10 -10
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{buildSubmitResult as
|
|
1
|
+
import{buildSubmitResult as En,cellDay as An,cellIso as Rn,DATE_RANGE_META_END as Dn,DATE_RANGE_META_START as On,DEFAULT_OPTION_COUNT_UNIT as Ln,dateCellMarks as zn,formatDate as Mn,formatDateRange as Nn,formatOptionCount as Fn,isoDate as Bn,monthLabel as Hn,optionCountLabel as Kn,optionHasImage as Gn,optionImageSources as Wn,optionImageSrc as _n,optionLabel as qn,optionsShowLeadingVisuals as Un,PRODUCT_PATH_PREFIX as jn,parseDate as Qn,parseLooseDate as Yn,parseLooseDateRange as Vn,productFromMatchedItem as Zn,productImageSources as $n,productsFromCustomFields as Xn,sanitizeOptionIconSvg as Jn,selectedRangeFor as er,visibleDateRange as tr,WEEKDAY_LABELS as ar,withSkippedParams as ir}from"@magicx-eng/ai-autocomplete-vanilla";import{forwardRef as Ti,useCallback as mt,useEffect as $t,useImperativeHandle as Ei,useLayoutEffect as Ai,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
|
|
@@ -268,7 +268,7 @@ import{buildSubmitResult as Tn,cellDay as En,cellIso as An,DATE_RANGE_META_END a
|
|
|
268
268
|
opacity: 0;
|
|
269
269
|
}
|
|
270
270
|
}
|
|
271
|
-
`,document.head.appendChild(e)}var Ae={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
|
|
271
|
+
`,document.head.appendChild(e)}var Ae={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 ai,attachViewportFit as ii,containScroll as oi,hasSkippablePill as ni,isCalendarFormat as ri,labelTraditionalAutocomplete as si,uiStringsFor as li}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as Oe,useRef as De,useState as di}from"react";if(typeof document<"u"&&!document.getElementById("ac-style-0ae03977")){let e=document.createElement("style");e.id="ac-style-0ae03977",e.textContent=`/*
|
|
272
272
|
* Built-in appearance defaults \u2014 zero specificity via :where().
|
|
273
273
|
* Consumer CSS always wins without !important.
|
|
274
274
|
*
|
|
@@ -1277,7 +1277,7 @@ import{buildSubmitResult as Tn,cellDay as En,cellIso as An,DATE_RANGE_META_END a
|
|
|
1277
1277
|
opacity: 0.8;
|
|
1278
1278
|
background: rgba(var(--aia-streak-rgb, 255, 255, 255), 0.06);
|
|
1279
1279
|
}
|
|
1280
|
-
`,document.head.appendChild(e)}var
|
|
1280
|
+
`,document.head.appendChild(e)}var L={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 Ct}from"react/jsx-runtime";var ha=["sunday","monday","tuesday","wednesday","thursday","friday","saturday"];function Pt({options:e,activeIndex:o,listboxId:t,view:a,selection:n,onSelect:r,onHighlight:i,onUnhighlight:c,onPreviousMonth:l,onNextMonth:b}){let C=sa(new Date),P=da({pendingStart:n.rangeStart,highlightedIso:Re(e[o]),selected:n.selectedRange});return Ct("div",{className:L.datepicker,"data-aia-datepicker":"",children:[Ct("div",{className:L.header,children:[ae("button",{type:"button",tabIndex:-1,className:L.nav,"data-aia-date-prev":"","aria-label":"Previous month",onMouseDown:g=>g.preventDefault(),onClick:l,children:"\u2039"}),ae("span",{className:L.month,"data-aia-date-month":"","aria-live":"polite",children:la(a)}),ae("button",{type:"button",tabIndex:-1,className:L.nav,"data-aia-date-next":"","aria-label":"Next month",onMouseDown:g=>g.preventDefault(),onClick:b,children:"\u203A"})]}),ae("div",{className:L.weekdays,"aria-hidden":"true",children:ca.map((g,w)=>ae("span",{className:L.weekday,children:g},ha[w]))}),ae("div",{className:L.grid,"data-aia-date-grid":"",children:e.map((g,w)=>ae(ua,{option:g,id:`${t}-option-${w}`,index:w,isHighlighted:w===o&&g.is_tappable,isToday:Re(g)===C,isPast:Re(g)!=null&&Re(g)<C,marks:ra(Re(g),{selectedIso:n.selectedIso,range:P}),onSelect:r,onHighlight:i,onUnhighlight:c},Re(g)??`pad-${w}`))})]})}function ua({option:e,id:o,index:t,isHighlighted:a,isToday:n,isPast:r,marks:i,onSelect:c,onHighlight:l,onUnhighlight:b}){let[C,P]=pa(!1),g=na(e);if(g==null)return ae("div",{id:o,role:"option","data-aia-option":"","data-aia-date-cell":"","aria-hidden":"true","aria-selected":!1,tabIndex:-1,className:`${L.cell} ${L.blank}`});let w=()=>{P(!0),c(e),setTimeout(()=>P(!1),170)},S=[L.cell,L.day,r?L.past:"",a?L.highlighted:"",n?L.today:"",i.inRange?L.inRange:"",i.selected?L.selected:"",C?L.pressed:""].filter(Boolean).join(" ");return ae("div",{id:o,role:"option","data-aia-option":"","data-aia-date-cell":"","aria-selected":a,"aria-label":e.text,tabIndex:0,className:S,onClick:w,onKeyDown:z=>{(z.key==="Enter"||z.key===" ")&&(z.preventDefault(),w())},onMouseEnter:()=>l(t),onMouseLeave:b?()=>b(t):void 0,children:ae("span",{className:L.number,children:g})})}import{ATTRIBUTION_URL as ga,buildAttributionUrl as ma,getFooterHint as fa,uiStringsFor as ba}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as wa,useState as va}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 {
|
|
1281
1281
|
display: flex;
|
|
1282
1282
|
flex-wrap: wrap;
|
|
1283
1283
|
gap: var(--aia-cluster-gap, 0.5rem);
|
|
@@ -1317,7 +1317,7 @@ import{buildSubmitResult as Tn,cellDay as En,cellIso as An,DATE_RANGE_META_END a
|
|
|
1317
1317
|
.aia-cluster[data-justify="around"] {
|
|
1318
1318
|
justify-content: space-around;
|
|
1319
1319
|
}
|
|
1320
|
-
`,document.head.appendChild(e)}import{jsx as St}from"react/jsx-runtime";function Ke({gap:e,align:o="center",justify:t="start",noWrap:a=!1,inline:n=!1,className:r,children:i,...c}){let l=e?{"--aia-cluster-gap":e}:void 0,
|
|
1320
|
+
`,document.head.appendChild(e)}import{jsx as St}from"react/jsx-runtime";function Ke({gap:e,align:o="center",justify:t="start",noWrap:a=!1,inline:n=!1,className:r,children:i,...c}){let l=e?{"--aia-cluster-gap":e}:void 0,b={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,...c};return n?St("span",{...b,children:i}):St("div",{...b,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
|
|
1321
1321
|
dropdown's rounded edges. The top inset (--aia-footer-gap) adds breathing
|
|
1322
1322
|
room above the hint/branding row so the footer doesn't butt against the last
|
|
1323
1323
|
option row \u2014 additive to the dropdown's 8px section gap. */
|
|
@@ -1550,7 +1550,7 @@ import{buildSubmitResult as Tn,cellDay as En,cellIso as An,DATE_RANGE_META_END a
|
|
|
1550
1550
|
align-items: center;
|
|
1551
1551
|
vertical-align: middle;
|
|
1552
1552
|
}
|
|
1553
|
-
`,document.head.appendChild(e)}var st={list:"aia-list-qvLqO"};import{jsx as
|
|
1553
|
+
`,document.head.appendChild(e)}var st={list:"aia-list-qvLqO"};import{jsx as Ve}from"react/jsx-runtime";var ya=[125,69];function Et(e){return e===0?"first":e===1?"next":"last"}function Ze({pills:e,activePillIndex:o,onSelectPill:t,activeSelected:a,rounded:n,loading:r}){return r&&e.length===0?Ve("span",{className:st.list,"data-aia-pill-list-loading":"",children:ya.map((i,c)=>Ve("span",{"data-aia-pill-skeleton":"",className:`${ye.pill} ${n?ye.rounded:""} ${ye.skeleton}`,style:{width:i,opacity:rt[Et(c)]}},`skel-${i}`))}):Ve("span",{className:st.list,"data-aia-pill-list-loading":r?"":void 0,children:e.map((i,c)=>{let l=!!a&&c===o;return Ve(Tt,{label:i.text,state:l?"selected":Et(c),selected:l,rounded:n,loading:r,onClick:()=>t(c)},`${i.parameter}-${i.text}`)})})}import{attachProductRowWheel as ka,productImageSources as Ca,productImageSrc as Pa,productInitial as Sa,uiStringsFor as Ia}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as Ta,useRef as Ea,useState as Aa}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
|
|
1554
1554
|
(packages/vanilla/src/styles.css). Same tokens, same defaults, so a consumer
|
|
1555
1555
|
theming one package sees the same result in the other.
|
|
1556
1556
|
|
|
@@ -1837,7 +1837,7 @@ import{buildSubmitResult as Tn,cellDay as En,cellIso as An,DATE_RANGE_META_END a
|
|
|
1837
1837
|
letter-spacing: 0.02em;
|
|
1838
1838
|
text-align: center;
|
|
1839
1839
|
}
|
|
1840
|
-
`,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 de,jsxs as $e}from"react/jsx-runtime";function At({products:e,listboxId:o,onSelect:t,onFocusChange:a,focusable:n=!0,layout:r="row",imageFallback:i="image",strings:c=Ia()}){let l=e.length>0,
|
|
1840
|
+
`,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 de,jsxs as $e}from"react/jsx-runtime";function At({products:e,listboxId:o,onSelect:t,onFocusChange:a,focusable:n=!0,layout:r="row",imageFallback:i="image",strings:c=Ia()}){let l=e.length>0,b=Ea(null);if(Ta(()=>{let P=b.current;if(!(!l||!P))return ka(P)},[l]),!l)return null;let C=`${o}-products-label`;return $e("section",{className:Y.section,"data-aia-products":"","data-aia-products-layout":r,role:"group","aria-labelledby":C,children:[de("div",{className:Y.label,id:C,"data-aia-products-label":"",children:c.products}),de("div",{ref:b,className:Y.row,"data-aia-products-row":"",children:e.map((P,g)=>de(Ra,{product:P,id:`${o}-product-${g}`,onSelect:t,onFocusChange:a,focusable:n,imageFallback:i,soldOut:c.soldOut},P.id))})]})}function Ra({product:e,id:o,onSelect:t,onFocusChange:a,focusable:n,imageFallback:r,soldOut:i}){let c=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:c,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:[de(Da,{sources:Ca(e.imageUrl),title:e.title,fallback:r},Pa(e.imageUrl)??""),$e("span",{className:Y.body,children:[e.vendor?de("span",{className:Y.vendor,children:e.vendor}):null,de("span",{className:Y.title,children:e.title}),e.price?de("span",{className:Y.price,children:e.price}):null,e.available===!1?de("span",{className:Y.badge,children:i}):null]})]})}function Da({sources:e,title:o,fallback:t}){let[a,n]=Aa(0),r=e[a],i=!!r,c=!i&&t==="initial";return $e("span",{className:Y.media,"aria-hidden":"true","data-aia-product-placeholder":!i&&!c?"":void 0,"data-aia-product-initial":c?"":void 0,children:[i?de("img",{className:Y.image,src:r,alt:"",loading:"lazy",decoding:"async",onError:()=>n(l=>l+1)}):null,c?Sa(o):null]})}import{isOptionsGridMobileViewport as Ua,measureOptionsGrid as ja,needsOptionsGridMeasurement as Qa,OPTIONS_GRID_MOBILE_QUERY as Ya,optionEnterDelayMs as Va,optionsShowLeadingVisuals as Za,planOptionsGrid as Lt,sameOptionRows as $a}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as Xa,useLayoutEffect as Ja,useRef as zt,useState as Nt}from"react";import{optionsGridTemplateColumns as Oa}from"@magicx-eng/ai-autocomplete-vanilla";import{useLayoutEffect as La,useRef as za}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 {
|
|
1841
1841
|
display: grid;
|
|
1842
1842
|
grid-template-columns: repeat(
|
|
1843
1843
|
auto-fit,
|
|
@@ -1873,7 +1873,7 @@ import{buildSubmitResult as Tn,cellDay as En,cellIso as An,DATE_RANGE_META_END a
|
|
|
1873
1873
|
.aia-grid[data-scroll]::-webkit-scrollbar {
|
|
1874
1874
|
display: none;
|
|
1875
1875
|
}
|
|
1876
|
-
`,document.head.appendChild(e)}import{jsx as Ma}from"react/jsx-runtime";function Rt({min:e="16rem",max:o,gap:t,scroll:a=!1,maxHeight:n,scrollResetKey:r,cols:i,template:c,innerRef:l,className:
|
|
1876
|
+
`,document.head.appendChild(e)}import{jsx as Ma}from"react/jsx-runtime";function Rt({min:e="16rem",max:o,gap:t,scroll:a=!1,maxHeight:n,scrollResetKey:r,cols:i,template:c,innerRef:l,className:b,children:C,...P}){let g=za(null);La(()=>{if(r===void 0)return;let S=g.current;S&&(S.scrollTop=0)},[r]);let w={"--aia-grid-min":e};return o&&(w["--aia-grid-max"]=o),t&&(w["--aia-grid-gap"]=t),n&&(w["--aia-grid-max-height"]=n),i&&(w.gridTemplateColumns=Oa(i)),c&&(w.gridTemplateColumns=c),Ma("div",{ref:S=>{g.current=S,l?.(S)},className:b?`aia-grid ${b}`:"aia-grid","data-scroll":a||void 0,style:w,...P,children:C})}import{formatOptionCount as Na,highlightParts as Fa,OPTION_ENTER_DELAY_VAR as Ba,optionImageSources as Ha,optionLabel as Dt,sanitizeOptionIconSvg as Ka}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as Ga,useMemo as Wa,useRef as _a,useState as lt}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 {
|
|
1877
1877
|
position: relative;
|
|
1878
1878
|
/* Clip, not visible: the entrance rise below runs on the inner content,
|
|
1879
1879
|
and a transformed box extends its scroll container's scrollable area.
|
|
@@ -2302,7 +2302,7 @@ import{buildSubmitResult as Tn,cellDay as En,cellIso as An,DATE_RANGE_META_END a
|
|
|
2302
2302
|
opacity: 0;
|
|
2303
2303
|
}
|
|
2304
2304
|
}
|
|
2305
|
-
`,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",parameter:"aia-parameter-Dt2zF",icon:"aia-icon-Qw938",count:"aia-count-IpYbQ",image:"aia-image-YZAbO",skeletonOut:"aia-skeletonOut-x6NRd"};import{Fragment as qa,jsx as ke,jsxs as dt}from"react/jsx-runtime";function Ot({option:e,isHighlighted:o,onSelect:t,onHighlight:a,onUnhighlight:n,id:r,loading:i,showIcon:c=!0,showImage:l=!0,showCount:
|
|
2305
|
+
`,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",parameter:"aia-parameter-Dt2zF",icon:"aia-icon-Qw938",count:"aia-count-IpYbQ",image:"aia-image-YZAbO",skeletonOut:"aia-skeletonOut-x6NRd"};import{Fragment as qa,jsx as ke,jsxs as dt}from"react/jsx-runtime";function Ot({option:e,isHighlighted:o,onSelect:t,onHighlight:a,onUnhighlight:n,id:r,loading:i,showIcon:c=!0,showImage:l=!0,showCount:b=!0,scrollHint:C,enterDelayMs:P=0}){let[g]=lt(P),[w,S]=lt(!1),z=l?Ha(e.image_url):[],M=z[0]??null,[H,G]=lt([]),I=z.find(A=>!H.includes(A))??null,O=Wa(()=>!M&&c&&e.icon_svg?Ka(e.icon_svg):null,[M,c,e.icon_svg]),E=b?Na(e.item_count):null,y=_a(void 0);Ga(()=>()=>clearTimeout(y.current),[]);let N=()=>{i||!e.is_tappable||w||(S(!0),t(e),clearTimeout(y.current),y.current=setTimeout(()=>S(!1),170))},K=[q.item,o&&!i?q.highlighted:"",e.is_tappable?q.tappable:q.nonTappable,w?q.pressed:"",C?q.scrollHint:""].filter(Boolean).join(" ");return ke("div",{id:r,role:"option","data-aia-option":"","data-aia-loading":i?"":void 0,"data-aia-icon":O&&e.icon?e.icon:void 0,"data-aia-image":M?"":void 0,"data-aia-item-count":E!==null?e.item_count:void 0,"aria-selected":o,className:K,style:{[Ba]:`${g}ms`},tabIndex:i||!e.is_tappable?-1:0,onClick:N,onKeyDown:A=>{!i&&e.is_tappable&&(A.key==="Enter"||A.key===" ")&&(A.preventDefault(),N())},onMouseEnter:!i&&e.is_tappable?a:void 0,onMouseLeave:n,children:dt("span",{className:q.content,children:[M&&ke("span",{className:`${q.image} magicx-aia-option-image`,"aria-hidden":"true",children:ke("img",{src:I??M,alt:"",loading:"lazy",decoding:"async",referrerPolicy:"no-referrer",draggable:!1,hidden:I===null,onError:()=>{I!==null&&G(A=>[...A,I])}})}),O&&ke("span",{className:`${q.icon} magicx-aia-option-icon`,"aria-hidden":"true",dangerouslySetInnerHTML:{__html:O}}),dt("span",{className:q.text,children:[e.matchedText?Fa(Dt(e),e.matchedText).map((A,Z)=>A.bold?ke("strong",{children:A.text},Z):A.text):Dt(e),e.parameterLabel&&dt(qa,{children:[" ",ke("span",{className:`${q.parameter} magicx-aia-option-parameter`,children:e.parameterLabel})]})]}),e.tag&&ke("span",{className:q.tag,children:e.tag}),E!==null&&ke("span",{className:`${q.count} magicx-aia-option-count`,children:E})]})})}import{jsx as Mt}from"react/jsx-runtime";function ei(){let[e,o]=Nt(Ua);return Xa(()=>{if(typeof window>"u"||!window.matchMedia)return;let t=window.matchMedia(Ya),a=()=>o(t.matches);return a(),t.addEventListener("change",a),()=>t.removeEventListener("change",a)},[]),e}function Ft({options:e,activeIndex:o,onSelect:t,onHighlight:a,onUnhighlight:n,listboxId:r,loading:i,groupKey:c="",optionsPosition:l="below",showIcons:b=!0,showImages:C=!0,showCounts:P=!0}){let g=ei(),w=zt(null),[S,z]=Nt(null),M=zt(null);Ja(()=>{if(i&&$a(M.current,e))return;M.current=i?null:e;let I=w.current,E=I&&!i&&Qa(e.length,g)?ja(I):null;z(E?Lt(e.length,g,E.rowWidths,E.gridWidth):null)},[e,g,i]);let H=S??Lt(e.length,g,null,null),G=Za(e,b,C);return Mt(Rt,{min:"250px",max:"1fr",gap:"0",scroll:!0,scrollResetKey:c,template:H.template,maxHeight:H.maxHeight,innerRef:I=>{w.current=I},"data-aia-group":c,children:e.map((I,O)=>Mt(Ot,{option:I,isHighlighted:O===o,onSelect:t,onHighlight:()=>a(O),onUnhighlight:n?()=>n(O):void 0,id:`${r}-option-${O}`,loading:i,showIcon:b&&G,showImage:C&&G,showCount:P,scrollHint:!i&&H.scrollHintIndices.includes(O),enterDelayMs:i?0:Va(O,H.cols,e.length,l)},`${c}\0${I.text}`))})}if(typeof document<"u"&&!document.getElementById("ac-style-8414cd5f")){let e=document.createElement("style");e.id="ac-style-8414cd5f",e.textContent=`.aia-stack {
|
|
2306
2306
|
display: flex;
|
|
2307
2307
|
flex-direction: column;
|
|
2308
2308
|
gap: var(--aia-stack-space, 0.5rem);
|
|
@@ -2317,7 +2317,7 @@ import{buildSubmitResult as Tn,cellDay as En,cellIso as An,DATE_RANGE_META_END a
|
|
|
2317
2317
|
align-items: end;
|
|
2318
2318
|
}
|
|
2319
2319
|
/* data-align="stretch" is the flex default \u2014 no rule needed. */
|
|
2320
|
-
`,document.head.appendChild(e)}import{jsx as
|
|
2320
|
+
`,document.head.appendChild(e)}import{jsx as ti}from"react/jsx-runtime";function Bt({space:e,align:o="stretch",className:t,children:a,...n}){let r=e?{"--aia-stack-space":e}:void 0;return ti("div",{className:t?`aia-stack ${t}`:"aia-stack","data-align":o,style:r,...n,children:a})}import{jsx as V,jsxs as ct}from"react/jsx-runtime";var ci=[159,119,164],pi=()=>{},Ht=()=>{};function hi(e){let o=()=>typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-color-scheme: dark)").matches,[t,a]=di(o);if(Oe(()=>{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 ui(e,o){let t=De(null);Oe(()=>{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:ai({dropdown:a,grid:r,button:n})};return}t.current?.controller.update()}),Oe(()=>()=>{t.current?.controller.destroy(),t.current=null},[])}function gi(e,o){let t=De(o);t.current=o;let a=De(null);Oe(()=>{let n=e.current;if(n){if(!a.current){a.current=ii({dropdown:n,isOpen:()=>t.current});return}a.current.update()}}),Oe(()=>()=>{a.current?.destroy(),a.current=null},[])}function pt({suggestions:e,activeIndex:o,onSelect:t,onHighlight:a,onUnhighlight:n,isOpen:r,id:i,className:c,pills:l,onPillClick:b,showPills:C=!0,onSkip:P,showSkipButton:g=!0,showOptionIcons:w=!0,showOptionImages:S=!0,showOptionCounts:z=!0,skipDisabled:M=!1,activeSelected:H=!1,isLoading:G=!1,skeletonExiting:I=!1,isInputEmpty:O=!1,language:E,products:y,onProductSelect:N,onProductFocusChange:K,productsLayout:A="row",productImageFallback:Z="image",formatType:ce="options",dateView:W=null,selectedDateIso:pe=null,selectedDateRange:Ce=null,dateRangeStart:he=null,onPreviousMonth:u,onNextMonth:Pe,optionsPosition:ie="below",mode:ue}){let oe=hi(ue),ge=oe!==void 0,U=De(null),$=De(null);ui(U,$),Oe(()=>{if(U.current)return oi(U.current)},[]);let s=e[0]?.options??[],m=!!(l&&l.length>0&&b),f=!!(y&&y.length>0),v=r&&(s.length>0||C&&m||G||f);gi(U,v);let k={suggestions:e,activeIndex:o,pills:l,showPills:C,showSkipButton:g,showOptionIcons:w,showOptionImages:S,showOptionCounts:z,skipDisabled:M,activeSelected:H,isLoading:G,skeletonExiting:I,isInputEmpty:O,products:y,formatType:ce,dateView:W,selectedDateIso:pe,selectedDateRange:Ce,dateRangeStart:he},T=De(k);v&&(T.current=k);let p=v?k:T.current,F=li(E),j=p.suggestions[0],Q=j?.options??[],me=p.activeIndex>=0&&!!Q[p.activeIndex]?.is_tappable,ne=si(p.pills??[],F.keepTyping),J=!!(ne.length>0&&b),fe=p.showPills&&J,Se=p.showPills&&!J&&p.isLoading,x=fe||Se,be=J&&ni(ne)&&p.showSkipButton&&!p.isInputEmpty&&!!P,we=ne[0]?.text,re=ri(p.formatType)&&p.dateView!=null,h=Q.length>0&&!re,Ie=Q.length>0&&re&&!p.isLoading,Ne=p.isLoading&&!h&&!Ie,ve=p.products??[];return ct("div",{ref:U,id:i,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":ve.length>0?"":void 0,className:`${ge?"magicx-aia ":""}${se.dropdown} ${v?se.visible:""} ${c??""}`,onMouseDown:ee=>ee.preventDefault(),children:[ct(Bt,{space:"8px",children:[(x||be)&&ct(Ke,{noWrap:!0,className:se.pillBar,"data-aia-pillbar":"",children:[x&&V("span",{className:se.pillScroll,"data-aia-pill-scroll":"",children:V(Ze,{pills:ne,activePillIndex:0,activeSelected:p.activeSelected,onSelectPill:b??(()=>{}),rounded:!0,loading:p.isLoading})}),be&&V("button",{type:"button",tabIndex:-1,className:se.skip,"data-aia-skip":"",disabled:p.isLoading||p.skipDisabled,"aria-label":we?`${F.skipLabel} ${we}`:F.skipLabel,onClick:P,children:F.skip})]}),h&&V(Ft,{options:Q,activeIndex:p.activeIndex,onSelect:t,onHighlight:a,onUnhighlight:n,listboxId:i,loading:p.isLoading,groupKey:j?`${j.parameter} ${j.text}`:"",optionsPosition:ie,showIcons:p.showOptionIcons,showImages:p.showOptionImages,showCounts:p.showOptionCounts}),Ie&&p.dateView&&V(Pt,{options:Q,activeIndex:p.activeIndex,listboxId:i,view:p.dateView,selection:{selectedIso:p.selectedDateIso??null,selectedRange:p.selectedDateRange??null,rangeStart:p.dateRangeStart??null},onSelect:t,onHighlight:a,onUnhighlight:n,onPreviousMonth:u??Ht,onNextMonth:Pe??Ht}),Ne&&V("div",{className:se.skeletonBars,"data-aia-skeleton-bars":"",children:ci.map(ee=>V("span",{className:se.skeletonBar,style:{width:ee}},`bar-${ee}`))}),V(At,{products:ve,listboxId:i,onSelect:N??pi,onFocusChange:K,focusable:v,layout:A,imageFallback:Z,strings:F}),V(It,{isOptionHighlighted:me,isInputEmpty:p.isInputEmpty,strings:F})]}),V("button",{ref:$,type:"button",tabIndex:-1,className:se.scrollArrow,"data-aia-scroll-arrow":"","aria-label":F.scrollArrow,"aria-hidden":"true",children:V("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:V("path",{d:"M4 6.5 8 10.5l4-4"})})})]})}import{buildSubmitResult as Ri,ModeController as Di,setCursorOffset as Oi,uiStringsFor as Li}from"@magicx-eng/ai-autocomplete-vanilla";import{uiStringsFor as mi}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 {
|
|
2321
2321
|
flex-shrink: 0;
|
|
2322
2322
|
width: 32px;
|
|
2323
2323
|
height: 32px;
|
|
@@ -2370,5 +2370,5 @@ import{buildSubmitResult as Tn,cellDay as En,cellIso as An,DATE_RANGE_META_END a
|
|
|
2370
2370
|
);
|
|
2371
2371
|
cursor: default;
|
|
2372
2372
|
}
|
|
2373
|
-
`,document.head.appendChild(e)}var Kt={submitButton:"aia-submitButton-otz7H"};import{jsx as ht}from"react/jsx-runtime";function Gt({disabled:e,onClick:o,label:t=gi().submit}){return ht("button",{type:"button","data-aia-submit":"",className:Kt.submitButton,disabled:e,onClick:a=>{a.stopPropagation(),o()},"aria-label":t,children:ht("svg",{width:"18",height:"18",viewBox:"0 0 18 18",fill:"none",role:"img","aria-label":t,children:ht("path",{d:"M9 14V4M9 4L4 9M9 4L14 9",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})}import{AIAutocomplete as mi,dateSelectionFor as fi,identifiedParamLabel as bi,withoutTraditionalAutocomplete as wi}from"@magicx-eng/ai-autocomplete-vanilla";import{useCallback as jt,useEffect as Le,useRef as H,useState as vi}from"react";import{useRef as Wt}from"react";function _t(e){let o=Wt(e);o.current=e;let t=Object.keys(e??{}).sort().join("\0"),a=Wt({key:"",overrides:void 0});if(a.current.key!==t){let n={};for(let r of Object.keys(e??{})){let i=(c,l,v)=>{let P=o.current?.[r];return P?P(c,l,v):[]};n[r]=i}a.current={key:t,overrides:e?n:void 0}}return{overrides:a.current.overrides,key:t}}import{useRef as qt}from"react";function Ut(e){let o=qt(e);o.current=e;let t=qt(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 xi={text:"",completedParams:[],identifiedParams:[],skippedParams:[],pendingSpan:null,suggestions:[],products:[],traditionalAutocomplete:!1,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,dropdownHeld:!1,editingParam:null,editingIdentified:null,editingAnchor:null,editingTail:null,caretOffset:null,inSelectionAnimation:!1,dateViewMonth:null,pendingRangeStart:null};function ut({onSubmit:e,onResult:o,onError:t,optionOverrides:a,maskCompletedText:n,apiConfig:r,additionalContext:i,language:c,productId:l,visitorId:v,columns:P=2,dropdownTrigger:C,optionsPosition:g,closeDropdownOnBlur:b,showNonTappableOptions:S,showOptionIcons:L,showOptionImages:z,showOptionCounts:K,showSkipButton:O,showProducts:I,productImageFallback:F="image",onFocus:M,onBlur:y,value:N,completedParams:G,onChange:E,onParamsChange:V,products:ce,mapProducts:W,onProductSelect:pe,source:Ce,setCursor:he}){let u=H(null),[Pe,ie]=vi(null),ue=H(e);ue.current=e;let oe=H(o);oe.current=o;let ge=H(t);ge.current=t;let U=H(E);U.current=E;let $=H(V);$.current=V;let s=H(M);s.current=M;let m=H(y);m.current=y;let f=H(he);f.current=he;let w=H(pe);w.current=pe;let k=H(v);k.current=v;let T=H(()=>{let d=k.current;return typeof d=="function"?d():d}).current,p=Ut(ce),B=H(W);B.current=W;let j=H((d,_)=>{let A=B.current;return A?A(d,_):d}).current,Q=W?j:void 0,me=_t(a);Le(()=>{if(typeof document>"u")return;let d=new mi(document.createElement("div"),{renderMode:"headless",apiConfig:r,additionalContext:i,language:c,productId:l,visitorId:T,optionOverrides:me.overrides,maskCompletedText:n,columns:P,dropdownTrigger:C,optionsPosition:g,closeDropdownOnBlur:b,showNonTappableOptions:S,showProducts:I,source:Ce,value:N,completedParams:G,onSubmit:(...A)=>ue.current?.(...A),onResult:(...A)=>oe.current?.(...A),onError:(...A)=>ge.current?.(...A),onChange:(...A)=>U.current?.(...A),onParamsChange:(...A)=>$.current?.(...A),onFocus:()=>s.current?.(),onBlur:()=>m.current?.(),onProductSelect:A=>w.current?.(A),setCursor:A=>f.current?.(A),products:p.config,mapProducts:Q});u.current=d,ie(d.getState());let _=d.subscribe(A=>ie(A));return()=>{_(),d.destroy(),u.current===d&&(u.current=null)}},[]),Le(()=>{N!==void 0&&u.current?.setValue(N)},[N]),Le(()=>{G!==void 0&&u.current?.setCompletedParams(G)},[G]);let ne=JSON.stringify(r??null),J;try{J=JSON.stringify(i??null)}catch{J="[unstringifiable]"}Le(()=>{u.current?.update({apiConfig:r,additionalContext:i,language:c,productId:l,optionOverrides:me.overrides,dropdownTrigger:C,optionsPosition:g,closeDropdownOnBlur:b,showNonTappableOptions:S,showProducts:I})},[ne,J,c,l,me.key,C,g,b,S,I]);let fe=H(!1);Le(()=>{if(!fe.current){fe.current=!0;return}u.current?.update({products:p.config})},[p.enabled]),Le(()=>{u.current?.update({mapProducts:Q})},[Q]);let Se=H(null);Se.current===null&&(Se.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=Se.current,be=jt(d=>{let _=d.target.value,at=_.length>0&&!d.nativeEvent?.isComposing&&_[0]!==_[0].toUpperCase()?_[0].toUpperCase()+_.slice(1):_;u.current?.handleTextChange(at)},[]),we=jt(d=>{u.current?.handleKeyDown(d.nativeEvent)},[]),re=u.current,h=Pe??xi,Ie=N!==void 0?N:h.text,Ne=G!==void 0?G:h.completedParams,ve=h.actionableSuggestions,ee=ve[0],_e=wi(ve),Te=re?.listboxId??"",et=h.activeDropdownIndex>=0&&re?`${Te}-option-${h.activeDropdownIndex}`:void 0,xe=h.editingParam,Ee=h.editingIdentified,Fe=xe?{parameter:xe.suggestionParameter,text:xe.suggestionPlaceholder,required:!0,options:xe.options}:Ee?{parameter:Ee.parameter,text:bi(Ee.parameter),required:!0,options:[]}:null,qe=h.dropdownSuggestion??Fe??ee,tt=Fe?[Fe]:ve,Be=fi(h),Ue=!re||h.dropdownLoading;return{completedParams:Ne,skippedParams:h.skippedParams,identifiedParams:h.identifiedParams,suggestionPills:_e,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:Ue,isFocused:h.isFocused,isDropdownOpen:h.isDropdownOpen,isActivePillSelected:h.isActivePillSelected,placeholderText:h.placeholderText,listboxId:Te,error:h.error,products:h.products,customFields:h.customFields,selectProduct:x.selectProduct,handleTextChange:x.handleTextChange,handleKeyDown:x.handleKeyDown,setFocused:x.setFocused,editingParam:xe,editingIdentified:Ee,editingAnchor:h.editingAnchor,caretOffset:h.caretOffset,startEditingParam:x.startEditingParam,exitEditMode:x.exitEditMode,handleCaretAfterInput:x.handleCaretAfterInput,handleCaretMove:x.handleCaretMove,replaceEditingRange:x.replaceEditingRange,inputProps:{value:Ie,placeholder:h.placeholderText||void 0,onChange:be,onKeyDown:we,onFocus:x.handleFocus,onBlur:x.handleBlur,role:"combobox","aria-expanded":h.isDropdownOpen,"aria-activedescendant":et,"aria-autocomplete":"list","aria-controls":Te},reset:x.reset,refreshProducts:x.refreshProducts,recordSubmit:x.recordSubmit,dropdownProps:{suggestions:qe?[{...qe,options:h.dropdownOptions}]:[],activeIndex:h.activeDropdownIndex,onSelect:x.selectOption,onHighlight:x.setActiveDropdownIndex,onUnhighlight:x.clearHighlight,isOpen:h.isDropdownOpen,id:Te,pills:tt,activeSelected:h.isActivePillSelected,onPillClick:x.setActivePill,onSkip:x.skipActivePill,showSkipButton:(O??!0)&&!xe&&!Ee,showOptionIcons:L??!0,showOptionImages:z??!0,showOptionCounts:K??!0,skipDisabled:h.inSelectionAnimation,isLoading:Ue,skeletonExiting:h.skeletonExiting,isInputEmpty:Ie.trim().length===0,language:c,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 yi,extractPlainText as Qt,getCursorOffset as Yt,keepCaretOnChip as ki,plainTextLength as Ci,renderEditableContent as Pi,setCursorOffset as Zt}from"@magicx-eng/ai-autocomplete-vanilla";import{useCallback as X,useEffect as Xe,useLayoutEffect as gt,useRef as ze}from"react";var Je;function Si(){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 Vt(e){let{segments:o,showChipIcons:t=!0,showChipImages:a=!0,newParamId:n,editingParam:r,editingIdentified:i,editingAnchor:c,caretOffset:l,placeholderText:v,isFocused:P,isDropdownOpen:C,listboxId:g,activeDescendantId:b,autoFocus:S,handleTextChange:L,handleKeyDown:z,handleCaretAfterInput:K,handleCaretMove:O,startEditingParam:I,replaceEditingRange:F,setFocused:M}=e,y=ze(null),N=ze(!1),G=ze(""),E=ze(""),V=ze(null),ce=ze(0);V.current=l,Xe(()=>{if(!S)return;let s=y.current;if(!s)return;document.activeElement===s?M(!0):s.focus();let m=s.ownerDocument??document,f=m.getSelection(),w=f&&f.rangeCount>0&&s.contains(f.anchorNode);if(f&&!w){let k=m.createRange();k.selectNodeContents(s),k.collapse(!0),f.removeAllRanges(),f.addRange(k)}},[S,M]),Xe(()=>{let s=y.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 k=w.anchorNode,T=k.nodeType===Node.ELEMENT_NODE?k:k.parentElement,B=(w.isCollapsed?T?.closest("strong[data-param-id]"):null)?.dataset.paramId??null,j=r?.id??i?.id??null;if(B&&B!==j){I(B);return}performance.now()-ce.current<50||O(Yt(s))};return m.addEventListener("selectionchange",f),()=>m.removeEventListener("selectionchange",f)},[r,i,I,O]),Xe(()=>{let s=y.current;if(!s)return;let m=f=>{let w=yi(s,f.target);w&&(I(w),ki(s,w))};return s.addEventListener("click",m),()=>s.removeEventListener("click",m)},[I]),gt(()=>{let s=y.current;s&&Pi({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]),gt(()=>{let s=G.current,m=n??"";if(G.current=m,!m||m===s)return;let f=y.current;if(!f)return;f.focus();let w=V.current??Ci(f);Zt(f,w)},[n]),gt(()=>{let s=E.current,m=r?.id??"";if(E.current=m,!m||m===s||c==null)return;let f=y.current;f&&Zt(f,c)},[r,c]);let W=X(()=>{if(N.current)return;let s=y.current;if(!s)return;let m=Qt(s),w=m.length>0&&m[0]!==m[0].toUpperCase()?m[0].toUpperCase()+m.slice(1):m;L(w)},[L]),pe=X(()=>{ce.current=performance.now(),W();let s=y.current;s&&K(Yt(s))},[W,K]);Xe(()=>{let s=y.current;if(!s)return;let m=f=>{let w=f,k=w.inputType;if(k==="insertParagraph"||k==="insertLineBreak"||k==="insertFromDrop"){f.preventDefault();return}if(k.startsWith("insert")||k.startsWith("delete")){let T=k.startsWith("delete")?"":w.data??"";F(T)&&f.preventDefault()}};return s.addEventListener("beforeinput",m),()=>s.removeEventListener("beforeinput",m)},[F]);let Ce=X(()=>{N.current=!0,y.current?.setAttribute("data-aia-composing","true")},[]),he=X(()=>{N.current=!1,y.current?.removeAttribute("data-aia-composing"),W()},[W]),u=X(s=>{s.preventDefault();let m=y.current;if(!m)return;let f=(s.clipboardData.getData("text/plain")??"").replace(/\r?\n/g," ");if(!f)return;let w=m.ownerDocument??document,k=w.getSelection();if(!k||k.rangeCount===0)return;let T=k.getRangeAt(0);if(!m.contains(T.startContainer))return;T.deleteContents();let p=w.createTextNode(f);T.insertNode(p),T.setStartAfter(p),T.collapse(!0),k.removeAllRanges(),k.addRange(T),W()},[W]),Pe=X(s=>z(s),[z]),ie=X(()=>M(!0),[M]),ue=X(()=>M(!1),[M]),oe=X(()=>y.current?.focus(),[]),ge=X(()=>y.current?.blur(),[]),U=X(()=>{let s=y.current;return s?Qt(s):""},[]),$=Si()?"plaintext-only":"true";return{inputRef:y,editorProps:{ref:y,contentEditable:$,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:pe,onKeyDown:Pe,onCompositionStart:Ce,onCompositionEnd:he,onPaste:u,onFocus:ie,onBlur:ue},getPlainText:U,focus:oe,blur:ge}}import{jsx as Me,jsxs as ft}from"react/jsx-runtime";function Li(e){return e!=="auto"?e:typeof window>"u"||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}var zi=Ii(function({onSubmit:o,onResult:t,onError:a,optionOverrides:n,maskCompletedText:r,className:i,apiConfig:c,additionalContext:l,language:v,productId:P,visitorId:C,columns:g,pillPlacement:b="dropdown",mode:S="auto",optionsPosition:L="below",animations:z=!0,dropdownTrigger:K,closeDropdownOnBlur:O,showNonTappableOptions:I,showOptionIcons:F=!0,showChipIcons:M=!0,showChipImages:y=!0,showOptionImages:N=!0,showOptionCounts:G=!0,showSkipButton:E,showProducts:V,productsLayout:ce,productImageFallback:W,autoFocus:pe=!0,onFocus:Ce,onBlur:he,value:u,completedParams:Pe,onChange:ie,onParamsChange:ue,products:oe,mapProducts:ge,onProductSelect:U,submitButton:$,resetOnSubmit:s=!0},m){let f=We(null),w=We(null),k=We(()=>{}),T=We(null),p=We(null);$t(()=>{let R=f.current;if(R)return T.current?T.current.setMode(S):T.current=new Ri(R,S),()=>{T.current?.destroy(),T.current=null}},[S]);let B=mt(R=>{let te=p.current?.current;te&&(te.focus(),Di(te,R))},[]),{completedParams:j,skippedParams:Q,identifiedParams:me,isReady:ne,customFields:J,suggestionPills:fe,setActivePill:Se,skipActivePill:x,segments:be,newParamId:we,clearNewParamId:re,placeholderText:h,isFocused:Ie,isDropdownOpen:Ne,isActivePillSelected:ve,isLoading:ee,activeIndex:_e,listboxId:Te,handleTextChange:et,handleKeyDown:xe,setFocused:Ee,editingParam:Fe,editingIdentified:qe,editingAnchor:tt,caretOffset:Be,startEditingParam:Ue,handleCaretAfterInput:d,handleCaretMove:_,replaceEditingRange:A,dropdownProps:at,reset:je,refreshProducts:bt,recordSubmit:wt}=ut({onSubmit:R=>k.current(R),onResult:t,onError:a,optionOverrides:n,maskCompletedText:r,apiConfig:c,additionalContext:l,language:v,productId:P,visitorId:C,columns:g,dropdownTrigger:K,optionsPosition:L,closeDropdownOnBlur:O,showNonTappableOptions:I,showOptionIcons:F,showOptionImages:N,showOptionCounts:G,showSkipButton:E,showProducts:V,onFocus:Ce,onBlur:he,value:u,completedParams:Pe,onChange:ie,onParamsChange:ue,products:oe,mapProducts:ge,onProductSelect:U,source:"full-sdk",setCursor:B});$t(()=>{if(!we)return;let R=window.setTimeout(()=>re(),650);return()=>window.clearTimeout(R)},[we,re]);let Xt=_e>=0?`${Te}-option-${_e}`:void 0,{inputRef:it,editorProps:Jt,focus:Qe,blur:vt,getPlainText:xt}=Vt({segments:be,newParamId:we,editingParam:Fe,editingIdentified:qe,editingAnchor:tt,caretOffset:Be,placeholderText:h,isFocused:Ie,showChipIcons:M,showChipImages:y,isDropdownOpen:Ne,listboxId:Te,activeDescendantId:Xt,autoFocus:pe,handleTextChange:et,handleKeyDown:xe,handleCaretAfterInput:d,handleCaretMove:_,startEditingParam:Ue,replaceEditingRange:A,setFocused:Ee});p.current=it,Ei(()=>{let R=w.current,te=it.current;if(!R||!te)return;let He=()=>{let kt=R.firstElementChild;if(!kt)return;let ia=kt.getBoundingClientRect(),oa=te.getBoundingClientRect();ia.top>=oa.bottom-2?R.setAttribute("data-aia-pill-wrapped",""):R.removeAttribute("data-aia-pill-wrapped")};He();let yt=new ResizeObserver(He);return yt.observe(te),()=>yt.disconnect()},[be,fe.length,ee,it]),Ti(m,()=>({focus:Qe,blur:vt,reset:je,refreshProducts:bt,setMode:R=>T.current?.setMode(R),skipActivePill:x}),[Qe,vt,je,bt,x]);let Ye=!!be.length||j.length>0,ot=mt(R=>{if(!Ye)return;let te=xt(),He=Ai(te,j,Q,{identifiedParams:me,isReady:ne,customFields:J});R&&wt(He),o(He),s&&je()},[wt,s,Ye,j,Q,me,ne,J,o,je,xt]);k.current=()=>ot(!1);let ea=mt(R=>{R.target?.closest("[data-aia-pill]")||Qe()},[Qe]),ta=b==="inline",aa=b==="dropdown";return ft("div",{ref:f,className:`magicx-aia ${Ae.container} ${i??""}`,"data-pill-placement":b,"data-options-position":L,"data-animations":z?"on":"off","data-mode":Li(S),children:[Me(pt,{...at,showPills:aa,productsLayout:ce,productImageFallback:W}),ft("div",{className:Ae.inputWrapper,"data-aia-input-wrapper":"",onClick:ea,children:[ft("div",{className:Ae.editorArea,"data-aia-editor":"",children:[Me("div",{...Jt,className:Ae.input,"data-aia-input":""}),ta&&(ee||fe.length>0)&&Me("span",{ref:w,className:Ae.pillListContainer,"data-aia-pill-list-container":"",children:Me(Ve,{pills:fe,activePillIndex:0,activeSelected:ve,onSelectPill:Se,loading:ee})})]}),$===null?null:$===void 0?Me(Gt,{disabled:!Ye,onClick:()=>ot(!0),label:Oi(v).submit}):Me("span",{"data-aia-submit":"","data-aia-submit-slot":"",className:Ae.submitSlot,onClick:R=>{Ye&&(R.stopPropagation(),ot(!0))},children:$})]})]})});export{zi as AIAutocomplete,pt as AIAutocompleteDropdown,Rn as DATE_RANGE_META_END,Dn as DATE_RANGE_META_START,On as DEFAULT_OPTION_COUNT_UNIT,qn as PRODUCT_PATH_PREFIX,er as WEEKDAY_LABELS,Tn as buildSubmitResult,En as cellDay,An as cellIso,Ln as dateCellMarks,zn as formatDate,Mn as formatDateRange,Nn as formatOptionCount,Fn as isoDate,Bn as monthLabel,Hn as optionCountLabel,Kn as optionHasImage,Gn as optionImageSources,Wn as optionImageSrc,_n as optionLabel,Un as parseDate,jn as parseLooseDate,Qn as parseLooseDateRange,Yn as productFromMatchedItem,Zn as productImageSources,Vn as productsFromCustomFields,$n as sanitizeOptionIconSvg,Xn as selectedRangeFor,ut as useAIAutocomplete,Jn as visibleDateRange,tr as withSkippedParams};
|
|
2373
|
+
`,document.head.appendChild(e)}var Kt={submitButton:"aia-submitButton-otz7H"};import{jsx as ht}from"react/jsx-runtime";function Gt({disabled:e,onClick:o,label:t=mi().submit}){return ht("button",{type:"button","data-aia-submit":"",className:Kt.submitButton,disabled:e,onClick:a=>{a.stopPropagation(),o()},"aria-label":t,children:ht("svg",{width:"18",height:"18",viewBox:"0 0 18 18",fill:"none",role:"img","aria-label":t,children:ht("path",{d:"M9 14V4M9 4L4 9M9 4L14 9",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})}import{AIAutocomplete as fi,dateSelectionFor as bi,identifiedParamLabel as wi,withoutTraditionalAutocomplete as vi}from"@magicx-eng/ai-autocomplete-vanilla";import{useCallback as jt,useEffect as Le,useRef as B,useState as xi}from"react";import{useRef as Wt}from"react";function _t(e){let o=Wt(e);o.current=e;let t=Object.keys(e??{}).sort().join("\0"),a=Wt({key:"",overrides:void 0});if(a.current.key!==t){let n={};for(let r of Object.keys(e??{})){let i=(c,l,b)=>{let C=o.current?.[r];return C?C(c,l,b):[]};n[r]=i}a.current={key:t,overrides:e?n:void 0}}return{overrides:a.current.overrides,key:t}}import{useRef as qt}from"react";function Ut(e){let o=qt(e);o.current=e;let t=qt(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 yi={text:"",completedParams:[],identifiedParams:[],skippedParams:[],pendingSpan:null,suggestions:[],products:[],traditionalAutocomplete:!1,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,dropdownHeld:!1,editingParam:null,editingIdentified:null,editingAnchor:null,editingTail:null,caretOffset:null,inSelectionAnimation:!1,dateViewMonth:null,pendingRangeStart:null};function ut({onSubmit:e,onResult:o,onError:t,optionOverrides:a,maskCompletedText:n,apiConfig:r,additionalContext:i,language:c,productId:l,visitorId:b,columns:C=2,dropdownTrigger:P,optionsPosition:g,closeDropdownOnBlur:w,showNonTappableOptions:S,showOptionIcons:z,showOptionImages:M,showOptionCounts:H,showSkipButton:G,showProducts:I,productImageFallback:O="image",onFocus:E,onBlur:y,value:N,completedParams:K,onChange:A,onParamsChange:Z,products:ce,mapProducts:W,onProductSelect:pe,source:Ce,setCursor:he}){let u=B(null),[Pe,ie]=xi(null),ue=B(e);ue.current=e;let oe=B(o);oe.current=o;let ge=B(t);ge.current=t;let U=B(A);U.current=A;let $=B(Z);$.current=Z;let s=B(E);s.current=E;let m=B(y);m.current=y;let f=B(he);f.current=he;let v=B(pe);v.current=pe;let k=B(b);k.current=b;let T=B(()=>{let d=k.current;return typeof d=="function"?d():d}).current,p=Ut(ce),F=B(W);F.current=W;let j=B((d,_)=>{let R=F.current;return R?R(d,_):d}).current,Q=W?j:void 0,me=_t(a);Le(()=>{if(typeof document>"u")return;let d=new fi(document.createElement("div"),{renderMode:"headless",apiConfig:r,additionalContext:i,language:c,productId:l,visitorId:T,optionOverrides:me.overrides,maskCompletedText:n,columns:C,dropdownTrigger:P,optionsPosition:g,closeDropdownOnBlur:w,showNonTappableOptions:S,showProducts:I,source:Ce,value:N,completedParams:K,onSubmit:(...R)=>ue.current?.(...R),onResult:(...R)=>oe.current?.(...R),onError:(...R)=>ge.current?.(...R),onChange:(...R)=>U.current?.(...R),onParamsChange:(...R)=>$.current?.(...R),onFocus:()=>s.current?.(),onBlur:()=>m.current?.(),onProductSelect:R=>v.current?.(R),setCursor:R=>f.current?.(R),products:p.config,mapProducts:Q});u.current=d,ie(d.getState());let _=d.subscribe(R=>ie(R));return()=>{_(),d.destroy(),u.current===d&&(u.current=null)}},[]),Le(()=>{N!==void 0&&u.current?.setValue(N)},[N]),Le(()=>{K!==void 0&&u.current?.setCompletedParams(K)},[K]);let ne=JSON.stringify(r??null),J;try{J=JSON.stringify(i??null)}catch{J="[unstringifiable]"}Le(()=>{u.current?.update({apiConfig:r,additionalContext:i,language:c,productId:l,optionOverrides:me.overrides,dropdownTrigger:P,optionsPosition:g,closeDropdownOnBlur:w,showNonTappableOptions:S,showProducts:I})},[ne,J,c,l,me.key,P,g,w,S,I]);let fe=B(!1);Le(()=>{if(!fe.current){fe.current=!0;return}u.current?.update({products:p.config})},[p.enabled]),Le(()=>{u.current?.update({mapProducts:Q})},[Q]);let Se=B(null);Se.current===null&&(Se.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=Se.current,be=jt(d=>{let _=d.target.value,at=_.length>0&&!d.nativeEvent?.isComposing&&_[0]!==_[0].toUpperCase()?_[0].toUpperCase()+_.slice(1):_;u.current?.handleTextChange(at)},[]),we=jt(d=>{u.current?.handleKeyDown(d.nativeEvent)},[]),re=u.current,h=Pe??yi,Ie=N!==void 0?N:h.text,Ne=K!==void 0?K:h.completedParams,ve=h.actionableSuggestions,ee=ve[0],_e=vi(ve),Te=re?.listboxId??"",et=h.activeDropdownIndex>=0&&re?`${Te}-option-${h.activeDropdownIndex}`:void 0,xe=h.editingParam,Ee=h.editingIdentified,Fe=xe?{parameter:xe.suggestionParameter,text:xe.suggestionPlaceholder,required:!0,options:xe.options}:Ee?{parameter:Ee.parameter,text:wi(Ee.parameter),required:!0,options:[]}:null,qe=h.dropdownSuggestion??Fe??ee,tt=Fe?[Fe]:ve,Be=bi(h),Ue=!re||h.dropdownLoading;return{completedParams:Ne,skippedParams:h.skippedParams,identifiedParams:h.identifiedParams,suggestionPills:_e,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:Ue,isFocused:h.isFocused,isDropdownOpen:h.isDropdownOpen,isActivePillSelected:h.isActivePillSelected,placeholderText:h.placeholderText,listboxId:Te,error:h.error,products:h.products,customFields:h.customFields,selectProduct:x.selectProduct,handleTextChange:x.handleTextChange,handleKeyDown:x.handleKeyDown,setFocused:x.setFocused,editingParam:xe,editingIdentified:Ee,editingAnchor:h.editingAnchor,caretOffset:h.caretOffset,startEditingParam:x.startEditingParam,exitEditMode:x.exitEditMode,handleCaretAfterInput:x.handleCaretAfterInput,handleCaretMove:x.handleCaretMove,replaceEditingRange:x.replaceEditingRange,inputProps:{value:Ie,placeholder:h.placeholderText||void 0,onChange:be,onKeyDown:we,onFocus:x.handleFocus,onBlur:x.handleBlur,role:"combobox","aria-expanded":h.isDropdownOpen,"aria-activedescendant":et,"aria-autocomplete":"list","aria-controls":Te},reset:x.reset,refreshProducts:x.refreshProducts,recordSubmit:x.recordSubmit,dropdownProps:{suggestions:qe?[{...qe,options:h.dropdownOptions}]:[],activeIndex:h.activeDropdownIndex,onSelect:x.selectOption,onHighlight:x.setActiveDropdownIndex,onUnhighlight:x.clearHighlight,isOpen:h.isDropdownOpen,id:Te,pills:tt,activeSelected:h.isActivePillSelected,onPillClick:x.setActivePill,onSkip:x.skipActivePill,showSkipButton:(G??!0)&&!xe&&!Ee,showOptionIcons:z??!0,showOptionImages:M??!0,showOptionCounts:H??!0,skipDisabled:h.inSelectionAnimation,isLoading:Ue,skeletonExiting:h.skeletonExiting,isInputEmpty:Ie.trim().length===0,language:c,products:h.products,productImageFallback:O,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 ki,extractPlainText as Qt,getCursorOffset as Yt,keepCaretOnChip as Ci,plainTextLength as Pi,renderEditableContent as Si,setCursorOffset as Vt}from"@magicx-eng/ai-autocomplete-vanilla";import{useCallback as X,useEffect as Xe,useLayoutEffect as gt,useRef as ze}from"react";var Je;function Ii(){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 Zt(e){let{segments:o,showChipIcons:t=!0,showChipImages:a=!0,newParamId:n,editingParam:r,editingIdentified:i,editingAnchor:c,caretOffset:l,placeholderText:b,isFocused:C,isDropdownOpen:P,listboxId:g,activeDescendantId:w,autoFocus:S,handleTextChange:z,handleKeyDown:M,handleCaretAfterInput:H,handleCaretMove:G,startEditingParam:I,replaceEditingRange:O,setFocused:E}=e,y=ze(null),N=ze(!1),K=ze(""),A=ze(""),Z=ze(null),ce=ze(0);Z.current=l,Xe(()=>{if(!S)return;let s=y.current;if(!s)return;document.activeElement===s?E(!0):s.focus();let m=s.ownerDocument??document,f=m.getSelection(),v=f&&f.rangeCount>0&&s.contains(f.anchorNode);if(f&&!v){let k=m.createRange();k.selectNodeContents(s),k.collapse(!0),f.removeAllRanges(),f.addRange(k)}},[S,E]),Xe(()=>{let s=y.current;if(!s)return;let m=s.ownerDocument??document,f=()=>{let v=m.getSelection();if(!v||v.rangeCount===0||!v.anchorNode||!s.contains(v.anchorNode))return;let k=v.anchorNode,T=k.nodeType===Node.ELEMENT_NODE?k:k.parentElement,F=(v.isCollapsed?T?.closest("strong[data-param-id]"):null)?.dataset.paramId??null,j=r?.id??i?.id??null;if(F&&F!==j){I(F);return}performance.now()-ce.current<50||G(Yt(s))};return m.addEventListener("selectionchange",f),()=>m.removeEventListener("selectionchange",f)},[r,i,I,G]),Xe(()=>{let s=y.current;if(!s)return;let m=f=>{let v=ki(s,f.target);v&&(I(v),Ci(s,v))};return s.addEventListener("click",m),()=>s.removeEventListener("click",m)},[I]),gt(()=>{let s=y.current;s&&Si({input:s,segments:o,newParamId:n,editingParamId:r?.id??null,placeholderText:b??"",isFocused:C,showChipIcons:t,showChipImages:a})},[o,n,r,b,C,t,a]),gt(()=>{let s=K.current,m=n??"";if(K.current=m,!m||m===s)return;let f=y.current;if(!f)return;f.focus();let v=Z.current??Pi(f);Vt(f,v)},[n]),gt(()=>{let s=A.current,m=r?.id??"";if(A.current=m,!m||m===s||c==null)return;let f=y.current;f&&Vt(f,c)},[r,c]);let W=X(()=>{if(N.current)return;let s=y.current;if(!s)return;let m=Qt(s),v=m.length>0&&m[0]!==m[0].toUpperCase()?m[0].toUpperCase()+m.slice(1):m;z(v)},[z]),pe=X(()=>{ce.current=performance.now(),W();let s=y.current;s&&H(Yt(s))},[W,H]);Xe(()=>{let s=y.current;if(!s)return;let m=f=>{let v=f,k=v.inputType;if(k==="insertParagraph"||k==="insertLineBreak"||k==="insertFromDrop"){f.preventDefault();return}if(k.startsWith("insert")||k.startsWith("delete")){let T=k.startsWith("delete")?"":v.data??"";O(T)&&f.preventDefault()}};return s.addEventListener("beforeinput",m),()=>s.removeEventListener("beforeinput",m)},[O]);let Ce=X(()=>{N.current=!0,y.current?.setAttribute("data-aia-composing","true")},[]),he=X(()=>{N.current=!1,y.current?.removeAttribute("data-aia-composing"),W()},[W]),u=X(s=>{s.preventDefault();let m=y.current;if(!m)return;let f=(s.clipboardData.getData("text/plain")??"").replace(/\r?\n/g," ");if(!f)return;let v=m.ownerDocument??document,k=v.getSelection();if(!k||k.rangeCount===0)return;let T=k.getRangeAt(0);if(!m.contains(T.startContainer))return;T.deleteContents();let p=v.createTextNode(f);T.insertNode(p),T.setStartAfter(p),T.collapse(!0),k.removeAllRanges(),k.addRange(T),W()},[W]),Pe=X(s=>M(s),[M]),ie=X(()=>E(!0),[E]),ue=X(()=>E(!1),[E]),oe=X(()=>y.current?.focus(),[]),ge=X(()=>y.current?.blur(),[]),U=X(()=>{let s=y.current;return s?Qt(s):""},[]),$=Ii()?"plaintext-only":"true";return{inputRef:y,editorProps:{ref:y,contentEditable:$,suppressContentEditableWarning:!0,tabIndex:0,role:"combobox","aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":g,"aria-expanded":P,"aria-activedescendant":w,spellCheck:!0,enterKeyHint:"send",onInput:pe,onKeyDown:Pe,onCompositionStart:Ce,onCompositionEnd:he,onPaste:u,onFocus:ie,onBlur:ue},getPlainText:U,focus:oe,blur:ge}}import{jsx as Me,jsxs as ft}from"react/jsx-runtime";function zi(e){return e!=="auto"?e:typeof window>"u"||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}var Mi=Ti(function({onSubmit:o,onResult:t,onError:a,optionOverrides:n,maskCompletedText:r,className:i,apiConfig:c,additionalContext:l,language:b,productId:C,visitorId:P,columns:g,pillPlacement:w="dropdown",mode:S="auto",optionsPosition:z="below",animations:M=!0,dropdownTrigger:H,closeDropdownOnBlur:G,showNonTappableOptions:I,showOptionIcons:O=!0,showChipIcons:E=!0,showChipImages:y=!0,showOptionImages:N=!0,showOptionCounts:K=!0,showSkipButton:A,showProducts:Z,productsLayout:ce,productImageFallback:W,autoFocus:pe=!0,onFocus:Ce,onBlur:he,value:u,completedParams:Pe,onChange:ie,onParamsChange:ue,products:oe,mapProducts:ge,onProductSelect:U,submitButton:$,resetOnSubmit:s=!0},m){let f=We(null),v=We(null),k=We(()=>{}),T=We(null),p=We(null);$t(()=>{let D=f.current;if(D)return T.current?T.current.setMode(S):T.current=new Di(D,S),()=>{T.current?.destroy(),T.current=null}},[S]);let F=mt(D=>{let te=p.current?.current;te&&(te.focus(),Oi(te,D))},[]),{completedParams:j,skippedParams:Q,identifiedParams:me,isReady:ne,customFields:J,suggestionPills:fe,setActivePill:Se,skipActivePill:x,segments:be,newParamId:we,clearNewParamId:re,placeholderText:h,isFocused:Ie,isDropdownOpen:Ne,isActivePillSelected:ve,isLoading:ee,activeIndex:_e,listboxId:Te,handleTextChange:et,handleKeyDown:xe,setFocused:Ee,editingParam:Fe,editingIdentified:qe,editingAnchor:tt,caretOffset:Be,startEditingParam:Ue,handleCaretAfterInput:d,handleCaretMove:_,replaceEditingRange:R,dropdownProps:at,reset:je,refreshProducts:bt,recordSubmit:wt}=ut({onSubmit:D=>k.current(D),onResult:t,onError:a,optionOverrides:n,maskCompletedText:r,apiConfig:c,additionalContext:l,language:b,productId:C,visitorId:P,columns:g,dropdownTrigger:H,optionsPosition:z,closeDropdownOnBlur:G,showNonTappableOptions:I,showOptionIcons:O,showOptionImages:N,showOptionCounts:K,showSkipButton:A,showProducts:Z,onFocus:Ce,onBlur:he,value:u,completedParams:Pe,onChange:ie,onParamsChange:ue,products:oe,mapProducts:ge,onProductSelect:U,source:"full-sdk",setCursor:F});$t(()=>{if(!we)return;let D=window.setTimeout(()=>re(),650);return()=>window.clearTimeout(D)},[we,re]);let Xt=_e>=0?`${Te}-option-${_e}`:void 0,{inputRef:it,editorProps:Jt,focus:Qe,blur:vt,getPlainText:xt}=Zt({segments:be,newParamId:we,editingParam:Fe,editingIdentified:qe,editingAnchor:tt,caretOffset:Be,placeholderText:h,isFocused:Ie,showChipIcons:E,showChipImages:y,isDropdownOpen:Ne,listboxId:Te,activeDescendantId:Xt,autoFocus:pe,handleTextChange:et,handleKeyDown:xe,handleCaretAfterInput:d,handleCaretMove:_,startEditingParam:Ue,replaceEditingRange:R,setFocused:Ee});p.current=it,Ai(()=>{let D=v.current,te=it.current;if(!D||!te)return;let He=()=>{let kt=D.firstElementChild;if(!kt)return;let ia=kt.getBoundingClientRect(),oa=te.getBoundingClientRect();ia.top>=oa.bottom-2?D.setAttribute("data-aia-pill-wrapped",""):D.removeAttribute("data-aia-pill-wrapped")};He();let yt=new ResizeObserver(He);return yt.observe(te),()=>yt.disconnect()},[be,fe.length,ee,it]),Ei(m,()=>({focus:Qe,blur:vt,reset:je,refreshProducts:bt,setMode:D=>T.current?.setMode(D),skipActivePill:x}),[Qe,vt,je,bt,x]);let Ye=!!be.length||j.length>0,ot=mt(D=>{if(!Ye)return;let te=xt(),He=Ri(te,j,Q,{identifiedParams:me,isReady:ne,customFields:J});D&&wt(He),o(He),s&&je()},[wt,s,Ye,j,Q,me,ne,J,o,je,xt]);k.current=()=>ot(!1);let ea=mt(D=>{D.target?.closest("[data-aia-pill]")||Qe()},[Qe]),ta=w==="inline",aa=w==="dropdown";return ft("div",{ref:f,className:`magicx-aia ${Ae.container} ${i??""}`,"data-pill-placement":w,"data-options-position":z,"data-animations":M?"on":"off","data-mode":zi(S),children:[Me(pt,{...at,showPills:aa,productsLayout:ce,productImageFallback:W}),ft("div",{className:Ae.inputWrapper,"data-aia-input-wrapper":"",onClick:ea,children:[ft("div",{className:Ae.editorArea,"data-aia-editor":"",children:[Me("div",{...Jt,className:Ae.input,"data-aia-input":""}),ta&&(ee||fe.length>0)&&Me("span",{ref:v,className:Ae.pillListContainer,"data-aia-pill-list-container":"",children:Me(Ze,{pills:fe,activePillIndex:0,activeSelected:ve,onSelectPill:Se,loading:ee})})]}),$===null?null:$===void 0?Me(Gt,{disabled:!Ye,onClick:()=>ot(!0),label:Li(b).submit}):Me("span",{"data-aia-submit":"","data-aia-submit-slot":"",className:Ae.submitSlot,onClick:D=>{Ye&&(D.stopPropagation(),ot(!0))},children:$})]})]})});export{Mi as AIAutocomplete,pt as AIAutocompleteDropdown,Dn as DATE_RANGE_META_END,On as DATE_RANGE_META_START,Ln as DEFAULT_OPTION_COUNT_UNIT,jn as PRODUCT_PATH_PREFIX,ar as WEEKDAY_LABELS,En as buildSubmitResult,An as cellDay,Rn as cellIso,zn as dateCellMarks,Mn as formatDate,Nn as formatDateRange,Fn as formatOptionCount,Bn as isoDate,Hn as monthLabel,Kn as optionCountLabel,Gn as optionHasImage,Wn as optionImageSources,_n as optionImageSrc,qn as optionLabel,Un as optionsShowLeadingVisuals,Qn as parseDate,Yn as parseLooseDate,Vn as parseLooseDateRange,Zn as productFromMatchedItem,$n as productImageSources,Xn as productsFromCustomFields,Jn as sanitizeOptionIconSvg,er as selectedRangeFor,ut as useAIAutocomplete,tr as visibleDateRange,ir as withSkippedParams};
|
|
2374
2374
|
//# sourceMappingURL=index.mjs.map
|