@magicx-eng/ai-autocomplete-react 0.34.0 → 0.35.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 -0
- package/dist/index.d.mts +15 -1
- package/dist/index.d.ts +15 -1
- package/dist/index.js +13 -13
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +13 -13
- 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 xn,cellDay as yn,cellIso as kn,DATE_RANGE_META_END as Cn,DATE_RANGE_META_START as Pn,DEFAULT_OPTION_COUNT_UNIT as Sn,dateCellMarks as In,formatDate as En,formatDateRange as Tn,formatOptionCount as An,isoDate as Rn,monthLabel as On,optionCountLabel as Dn,optionHasImage as Ln,optionImageSources as zn,optionImageSrc as Mn,optionLabel as Nn,PRODUCT_PATH_PREFIX as Bn,parseDate as Hn,parseLooseDate as Fn,parseLooseDateRange as Kn,productFromMatchedItem as Gn,productImageSources as Wn,productsFromCustomFields as _n,sanitizeOptionIconSvg as Un,selectedRangeFor as qn,visibleDateRange as jn,WEEKDAY_LABELS as Qn,withSkippedParams as Yn}from"@magicx-eng/ai-autocomplete-vanilla";import{forwardRef as wi,useCallback as ut,useEffect as Yt,useImperativeHandle as xi,useLayoutEffect as yi,useRef as Ke}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
|
|
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,containScroll as ei,isCalendarFormat as ti,uiStringsFor as ai}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as Ve,useRef as $e,useState as ii}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
|
*
|
|
@@ -1045,7 +1045,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
|
|
|
1045
1045
|
opacity: 0.25;
|
|
1046
1046
|
}
|
|
1047
1047
|
}
|
|
1048
|
-
`,document.head.appendChild(e)}var
|
|
1048
|
+
`,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
1049
|
|
|
1050
1050
|
One of three hand-maintained copies (vanilla styles.css, this file, Angular's
|
|
1051
1051
|
date-grid.component.css). Only the class-naming layer differs \u2014 the
|
|
@@ -1208,7 +1208,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
|
|
|
1208
1208
|
opacity: 0.8;
|
|
1209
1209
|
background: rgba(var(--aia-streak-rgb, 255, 255, 255), 0.06);
|
|
1210
1210
|
}
|
|
1211
|
-
`,document.head.appendChild(e)}var
|
|
1211
|
+
`,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:n,listboxId:t,view:i,selection:r,onSelect:o,onHighlight:a,onUnhighlight:p,onPreviousMonth:l,onNextMonth:v}){let P=na(new Date),C=sa({pendingStart:r.rangeStart,highlightedIso:Re(e[n]),selected:r.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:m=>m.preventDefault(),onClick:l,children:"\u2039"}),ee("span",{className:R.month,"data-aia-date-month":"","aria-live":"polite",children:ra(i)}),ee("button",{type:"button",tabIndex:-1,className:R.nav,"data-aia-date-next":"","aria-label":"Next month",onMouseDown:m=>m.preventDefault(),onClick:v,children:"\u203A"})]}),ee("div",{className:R.weekdays,"aria-hidden":"true",children:la.map((m,b)=>ee("span",{className:R.weekday,children:m},ca[b]))}),ee("div",{className:R.grid,"data-aia-date-grid":"",children:e.map((m,b)=>ee(pa,{option:m,id:`${t}-option-${b}`,index:b,isHighlighted:b===n&&m.is_tappable,isToday:Re(m)===P,isPast:Re(m)!=null&&Re(m)<P,marks:oa(Re(m),{selectedIso:r.selectedIso,range:C}),onSelect:o,onHighlight:a,onUnhighlight:p},Re(m)??`pad-${b}`))})]})}function pa({option:e,id:n,index:t,isHighlighted:i,isToday:r,isPast:o,marks:a,onSelect:p,onHighlight:l,onUnhighlight:v}){let[P,C]=da(!1),m=ia(e);if(m==null)return ee("div",{id:n,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,o?R.past:"",i?R.highlighted:"",r?R.today:"",a.inRange?R.inRange:"",a.selected?R.selected:"",P?R.pressed:""].filter(Boolean).join(" ");return ee("div",{id:n,role:"option","data-aia-option":"","data-aia-date-cell":"","aria-selected":i,"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:m})})}import{ATTRIBUTION_URL as ha,buildAttributionUrl as ua,getFooterHint as ma,uiStringsFor as ga}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
1212
|
display: flex;
|
|
1213
1213
|
flex-wrap: wrap;
|
|
1214
1214
|
gap: var(--aia-cluster-gap, 0.5rem);
|
|
@@ -1248,7 +1248,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
|
|
|
1248
1248
|
.aia-cluster[data-justify="around"] {
|
|
1249
1249
|
justify-content: space-around;
|
|
1250
1250
|
}
|
|
1251
|
-
`,document.head.appendChild(e)}import{jsx as
|
|
1251
|
+
`,document.head.appendChild(e)}import{jsx as Ct}from"react/jsx-runtime";function He({gap:e,align:n="center",justify:t="start",noWrap:i=!1,inline:r=!1,className:o,children:a,...p}){let l=e?{"--aia-cluster-gap":e}:void 0,v={className:o?`aia-cluster ${o}`:"aia-cluster","data-align":n,"data-justify":t,"data-nowrap":i||void 0,"data-inline":r||void 0,style:l,...p};return r?Ct("span",{...v,children:a}):Ct("div",{...v,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
|
|
1252
1252
|
dropdown's rounded edges. The top inset (--aia-footer-gap) adds breathing
|
|
1253
1253
|
room above the hint/branding row so the footer doesn't butt against the last
|
|
1254
1254
|
option row \u2014 additive to the dropdown's 8px section gap. */
|
|
@@ -1395,7 +1395,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
|
|
|
1395
1395
|
justify-content: flex-end;
|
|
1396
1396
|
}
|
|
1397
1397
|
}
|
|
1398
|
-
`,document.head.appendChild(e)}var
|
|
1398
|
+
`,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 Fe,jsxs as ot}from"react/jsx-runtime";function Pt({isOptionHighlighted:e=!1,isInputEmpty:n=!1,strings:t=ga()}){let{key:i,hint:r}=ma(e,n,t),[o,a]=ba(ha);return fa(()=>{a(ua())},[]),Fe("footer",{className:re.footer,"data-aia-footer":"",children:ot(He,{justify:"between",noWrap:!0,className:re.row,children:[ot(He,{gap:"5px",className:re.hintGroup,children:[Fe("kbd",{className:re.key,children:i}),Fe("span",{className:re.hint,children:r})]}),ot("a",{className:re.brandLink,href:o,target:"_blank",rel:"noopener noreferrer",children:[Fe("span",{className:re.brand,children:"AI"}),Fe("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
1399
|
no outline. ~28px via 6px padding + 14px text + the 1px border (border-box).
|
|
1400
1400
|
The border is kept as a 1px transparent line so the box stays the same size
|
|
1401
1401
|
as it was when the outline was dashed. */
|
|
@@ -1471,7 +1471,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
|
|
|
1471
1471
|
opacity: 0;
|
|
1472
1472
|
}
|
|
1473
1473
|
}
|
|
1474
|
-
`,document.head.appendChild(e)}var
|
|
1474
|
+
`,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 va}from"react/jsx-runtime";var nt={selected:1,first:.7,next:.4,last:.2};function St({label:e,state:n,rounded:t,loading:i,onClick:r}){let o=[ye.pill,t?ye.rounded:"",i?ye.skeleton:""].filter(Boolean).join(" ");return va("button",{type:"button","data-aia-pill":"","data-aia-loading":i?"":void 0,tabIndex:-1,contentEditable:!1,suppressContentEditableWarning:!0,className:o,style:{opacity:nt[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 {
|
|
1475
1475
|
position: relative;
|
|
1476
1476
|
z-index: 1;
|
|
1477
1477
|
pointer-events: auto;
|
|
@@ -1481,7 +1481,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
|
|
|
1481
1481
|
align-items: center;
|
|
1482
1482
|
vertical-align: middle;
|
|
1483
1483
|
}
|
|
1484
|
-
`,document.head.appendChild(e)}var
|
|
1484
|
+
`,document.head.appendChild(e)}var rt={list:"aia-list-qvLqO"};import{jsx as Qe}from"react/jsx-runtime";var wa=[125,69];function It(e){return e===0?"first":e===1?"next":"last"}function Ye({pills:e,activePillIndex:n,onSelectPill:t,activeSelected:i,rounded:r,loading:o}){return o&&e.length===0?Qe("span",{className:rt.list,"data-aia-pill-list-loading":"",children:wa.map((a,p)=>Qe("span",{"data-aia-pill-skeleton":"",className:`${ye.pill} ${r?ye.rounded:""} ${ye.skeleton}`,style:{width:a,opacity:nt[It(p)]}},`skel-${a}`))}):Qe("span",{className:rt.list,"data-aia-pill-list-loading":o?"":void 0,children:e.map((a,p)=>{let l=!!i&&p===n;return Qe(St,{label:a.text,state:l?"selected":It(p),selected:l,rounded:r,loading:o,onClick:()=>t(p)},`${a.parameter}-${a.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
1485
|
(packages/vanilla/src/styles.css). Same tokens, same defaults, so a consumer
|
|
1486
1486
|
theming one package sees the same result in the other.
|
|
1487
1487
|
|
|
@@ -1765,7 +1765,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
|
|
|
1765
1765
|
letter-spacing: 0.02em;
|
|
1766
1766
|
text-align: center;
|
|
1767
1767
|
}
|
|
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
|
|
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 se,jsxs as Ze}from"react/jsx-runtime";function Et({products:e,listboxId:n,onSelect:t,onFocusChange:i,focusable:r=!0,layout:o="row",imageFallback:a="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=`${n}-products-label`;return Ze("section",{className:Q.section,"data-aia-products":"","data-aia-products-layout":o,role:"group","aria-labelledby":P,children:[se("div",{className:Q.label,id:P,"data-aia-products-label":"",children:p.products}),se("div",{ref:v,className:Q.row,"data-aia-products-row":"",children:e.map((C,m)=>se(Ta,{product:C,id:`${n}-product-${m}`,onSelect:t,onFocusChange:i,focusable:r,imageFallback:a,soldOut:p.soldOut},C.id))})]})}function Ta({product:e,id:n,onSelect:t,onFocusChange:i,focusable:r,imageFallback:o,soldOut:a}){let p=l=>{l.metaKey||l.ctrlKey||l.shiftKey||l.altKey||l.button!==0||(l.preventDefault(),t(e))};return Ze("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:p,onKeyDown:l=>{l.key!=="Enter"&&l.key!==" "||(l.preventDefault(),t(e))},onFocus:()=>i?.(!0),onBlur:l=>{l.relatedTarget?.closest("[data-aia-dropdown]")||i?.(!1)},children:[se(Aa,{sources:ya(e.imageUrl),title:e.title,fallback:o},ka(e.imageUrl)??""),Ze("span",{className:Q.body,children:[e.vendor?se("span",{className:Q.vendor,children:e.vendor}):null,se("span",{className:Q.title,children:e.title}),e.price?se("span",{className:Q.price,children:e.price}):null,e.available===!1?se("span",{className:Q.badge,children:a}):null]})]})}function Aa({sources:e,title:n,fallback:t}){let[i,r]=Ea(0),o=e[i],a=!!o,p=!a&&t==="initial";return Ze("span",{className:Q.media,"aria-hidden":"true","data-aia-product-placeholder":!a&&!p?"":void 0,"data-aia-product-initial":p?"":void 0,children:[a?se("img",{className:Q.image,src:o,alt:"",loading:"lazy",decoding:"async",onError:()=>r(l=>l+1)}):null,p?Ca(n):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 $a,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
1769
|
display: grid;
|
|
1770
1770
|
grid-template-columns: repeat(
|
|
1771
1771
|
auto-fit,
|
|
@@ -1801,7 +1801,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
|
|
|
1801
1801
|
.aia-grid[data-scroll]::-webkit-scrollbar {
|
|
1802
1802
|
display: none;
|
|
1803
1803
|
}
|
|
1804
|
-
`,document.head.appendChild(e)}import{jsx as
|
|
1804
|
+
`,document.head.appendChild(e)}import{jsx as La}from"react/jsx-runtime";function Tt({min:e="16rem",max:n,gap:t,scroll:i=!1,maxHeight:r,scrollResetKey:o,cols:a,template:p,innerRef:l,className:v,children:P,...C}){let m=Da(null);Oa(()=>{if(o===void 0)return;let S=m.current;S&&(S.scrollTop=0)},[o]);let b={"--aia-grid-min":e};return n&&(b["--aia-grid-max"]=n),t&&(b["--aia-grid-gap"]=t),r&&(b["--aia-grid-max-height"]=r),a&&(b.gridTemplateColumns=Ra(a)),p&&(b.gridTemplateColumns=p),La("div",{ref:S=>{m.current=S,l?.(S)},className:v?`aia-grid ${v}`:"aia-grid","data-scroll":i||void 0,style:b,...C,children:P})}import{formatOptionCount as za,OPTION_ENTER_DELAY_VAR as Ma,optionImageSources as Na,optionLabel as Ba,sanitizeOptionIconSvg as Ha}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as Fa,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
1805
|
position: relative;
|
|
1806
1806
|
/* Clip, not visible: the entrance rise below runs on the inner content,
|
|
1807
1807
|
and a transformed box extends its scroll container's scrollable area.
|
|
@@ -2198,7 +2198,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
|
|
|
2198
2198
|
opacity: 0;
|
|
2199
2199
|
}
|
|
2200
2200
|
}
|
|
2201
|
-
`,document.head.appendChild(e)}var
|
|
2201
|
+
`,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:n,onSelect:t,onHighlight:i,onUnhighlight:r,id:o,loading:a,showIcon:p=!0,showImage:l=!0,showCount:v=!0,scrollHint:P,enterDelayMs:C=0}){let[m]=st(C),[b,S]=st(!1),D=l?Na(e.image_url):[],L=D[0]??null,[F,O]=st([]),I=D.find(N=>!F.includes(N))??null,B=Ka(()=>!L&&p&&e.icon_svg?Ha(e.icon_svg):null,[L,p,e.icon_svg]),z=v?za(e.item_count):null,k=Ga(void 0);Fa(()=>()=>clearTimeout(k.current),[]);let M=()=>{a||!e.is_tappable||b||(S(!0),t(e),clearTimeout(k.current),k.current=setTimeout(()=>S(!1),170))},K=[U.item,n&&!a?U.highlighted:"",e.is_tappable?U.tappable:U.nonTappable,b?U.pressed:"",P?U.scrollHint:""].filter(Boolean).join(" ");return Ee("div",{id:o,role:"option","data-aia-option":"","data-aia-loading":a?"":void 0,"data-aia-icon":B&&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":n,className:K,style:{[Ma]:`${m}ms`},tabIndex:a||!e.is_tappable?-1:0,onClick:M,onKeyDown:N=>{!a&&e.is_tappable&&(N.key==="Enter"||N.key===" ")&&(N.preventDefault(),M())},onMouseEnter:!a&&e.is_tappable?i:void 0,onMouseLeave:r,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])}})}),B&&Ee("span",{className:`${U.icon} magicx-aia-option-icon`,"aria-hidden":"true",dangerouslySetInnerHTML:{__html:B}}),Ee("span",{className:U.text,children:Ba(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 Va(){let[e,n]=Lt(_a);return Za(()=>{if(typeof window>"u"||!window.matchMedia)return;let t=window.matchMedia(ja),i=()=>n(t.matches);return i(),t.addEventListener("change",i),()=>t.removeEventListener("change",i)},[]),e}function zt({options:e,activeIndex:n,onSelect:t,onHighlight:i,onUnhighlight:r,listboxId:o,loading:a,groupKey:p="",optionsPosition:l="below",showIcons:v=!0,showImages:P=!0,showCounts:C=!0}){let m=Va(),b=Ot(null),[S,D]=Lt(null),L=Ot(null);$a(()=>{if(a&&Ya(L.current,e))return;L.current=a?null:e;let O=b.current,B=O&&!a&&qa(e.length,m)?Ua(O):null;D(B?Rt(e.length,m,B.rowWidths,B.gridWidth):null)},[e,m,a]);let F=S??Rt(e.length,m,null,null);return Dt(Tt,{min:"250px",max:"1fr",gap:"0",scroll:!0,scrollResetKey:p,template:F.template,maxHeight:F.maxHeight,innerRef:O=>{b.current=O},"data-aia-group":p,children:e.map((O,I)=>Dt(At,{option:O,isHighlighted:I===n,onSelect:t,onHighlight:()=>i(I),onUnhighlight:r?()=>r(I):void 0,id:`${o}-option-${I}`,loading:a,showIcon:v,showImage:P,showCount:C,scrollHint:!a&&F.scrollHintIndices.includes(I),enterDelayMs:a?0:Qa(I,F.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
2202
|
display: flex;
|
|
2203
2203
|
flex-direction: column;
|
|
2204
2204
|
gap: var(--aia-stack-space, 0.5rem);
|
|
@@ -2213,7 +2213,7 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
|
|
|
2213
2213
|
align-items: end;
|
|
2214
2214
|
}
|
|
2215
2215
|
/* data-align="stretch" is the flex default \u2014 no rule needed. */
|
|
2216
|
-
`,document.head.appendChild(e)}import{jsx as
|
|
2216
|
+
`,document.head.appendChild(e)}import{jsx as Xa}from"react/jsx-runtime";function Mt({space:e,align:n="stretch",className:t,children:i,...r}){let o=e?{"--aia-stack-space":e}:void 0;return Xa("div",{className:t?`aia-stack ${t}`:"aia-stack","data-align":n,style:o,...r,children:i})}import{jsx as Y,jsxs as lt}from"react/jsx-runtime";var oi=[159,119,164],ni=()=>{},Nt=()=>{};function ri(e){let n=()=>typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-color-scheme: dark)").matches,[t,i]=ii(n);if(Ve(()=>{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 si(e,n){let t=$e(null);Ve(()=>{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:Ja({dropdown:i,grid:o,button:r})};return}t.current?.controller.update()}),Ve(()=>()=>{t.current?.controller.destroy(),t.current=null},[])}function dt({suggestions:e,activeIndex:n,onSelect:t,onHighlight:i,onUnhighlight:r,isOpen:o,id:a,className:p,pills:l,onPillClick:v,showPills:P=!0,onSkip:C,showSkipButton:m=!0,showOptionIcons:b=!0,showOptionImages:S=!0,showOptionCounts:D=!0,skipDisabled:L=!1,activeSelected:F=!1,isLoading:O=!1,skeletonExiting:I=!1,isInputEmpty:B=!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=ri(pe),he=ie!==void 0,Z=$e(null),$=$e(null);si(Z,$),Ve(()=>{if(Z.current)return ei(Z.current)},[]);let s=e[0]?.options??[],g=!!(l&&l.length>0&&v),f=!!(k&&k.length>0),w=o&&(s.length>0||P&&g||O||f),y={suggestions:e,activeIndex:n,pills:l,showPills:P,showSkipButton:m,showOptionIcons:b,showOptionImages:S,showOptionCounts:D,skipDisabled:L,activeSelected:F,isLoading:O,skeletonExiting:I,isInputEmpty:B,products:k,formatType:le,dateView:W,selectedDateIso:de,selectedDateRange:ke,dateRangeStart:ce},E=$e(y);w&&(E.current=y);let c=w?y:E.current,G=ai(z),q=c.suggestions[0],j=q?.options??[],ue=c.activeIndex>=0&&!!j[c.activeIndex]?.is_tappable,me=!!(c.pills&&c.pills.length>0&&v),ge=c.showPills&&me,fe=c.showPills&&!me&&c.isLoading,be=ge||fe,x=me&&c.showSkipButton&&!c.isInputEmpty&&!!C,ve=c.pills?.[0]?.text,we=ti(c.formatType)&&c.dateView!=null,oe=j.length>0&&!we,h=j.length>0&&we&&!c.isLoading,Te=c.isLoading&&!oe&&!h,Ae=c.products??[];return lt("div",{ref:Z,id:a,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)&<(He,{noWrap:!0,className:ne.pillBar,"data-aia-pillbar":"",children:[be&&Y("span",{className:ne.pillScroll,"data-aia-pill-scroll":"",children:Y(Ye,{pills:c.pills??[],activePillIndex:0,activeSelected:c.activeSelected,onSelectPill:v??(()=>{}),rounded:!0,loading:c.isLoading})}),x&&Y("button",{type:"button",tabIndex:-1,className:ne.skip,"data-aia-skip":"",disabled:c.isLoading||c.skipDisabled,"aria-label":ve?`${G.skipLabel} ${ve}`:G.skipLabel,onClick:C,children:G.skip})]}),oe&&Y(zt,{options:j,activeIndex:c.activeIndex,onSelect:t,onHighlight:i,onUnhighlight:r,listboxId:a,loading:c.isLoading,groupKey:q?`${q.parameter} ${q.text}`:"",optionsPosition:ae,showIcons:c.showOptionIcons,showImages:c.showOptionImages,showCounts:c.showOptionCounts}),h&&c.dateView&&Y(kt,{options:j,activeIndex:c.activeIndex,listboxId:a,view:c.dateView,selection:{selectedIso:c.selectedDateIso??null,selectedRange:c.selectedDateRange??null,rangeStart:c.dateRangeStart??null},onSelect:t,onHighlight:i,onUnhighlight:r,onPreviousMonth:u??Nt,onNextMonth:Ce??Nt}),Te&&Y("div",{className:ne.skeletonBars,"data-aia-skeleton-bars":"",children:oi.map(X=>Y("span",{className:ne.skeletonBar,style:{width:X}},`bar-${X}`))}),Y(Et,{products:Ae,listboxId:a,onSelect:M??ni,onFocusChange:K,focusable:w,layout:N,imageFallback:te,strings:G}),Y(Pt,{isOptionHighlighted:ue,isInputEmpty:c.isInputEmpty,strings:G})]}),Y("button",{ref:$,type:"button",tabIndex:-1,className:ne.scrollArrow,"data-aia-scroll-arrow":"","aria-label":G.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 ki,ModeController as Ci,setCursorOffset as Pi,uiStringsFor as Si}from"@magicx-eng/ai-autocomplete-vanilla";import{uiStringsFor as li}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
2217
|
flex-shrink: 0;
|
|
2218
2218
|
width: 32px;
|
|
2219
2219
|
height: 32px;
|
|
@@ -2266,5 +2266,5 @@ import{buildSubmitResult as wn,cellDay as xn,cellIso as yn,DATE_RANGE_META_END a
|
|
|
2266
2266
|
);
|
|
2267
2267
|
cursor: default;
|
|
2268
2268
|
}
|
|
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&>(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};
|
|
2269
|
+
`,document.head.appendChild(e)}var Bt={submitButton:"aia-submitButton-otz7H"};import{jsx as ct}from"react/jsx-runtime";function Ht({disabled:e,onClick:n,label:t=li().submit}){return ct("button",{type:"button","data-aia-submit":"",className:Bt.submitButton,disabled:e,onClick:i=>{i.stopPropagation(),n()},"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 di,dateSelectionFor as ci,identifiedParamLabel as pi}from"@magicx-eng/ai-autocomplete-vanilla";import{useCallback as _t,useEffect as Oe,useRef as H,useState as hi}from"react";import{useRef as Ft}from"react";function Kt(e){let n=Ft(e);n.current=e;let t=Object.keys(e??{}).sort().join("\0"),i=Ft({key:"",overrides:void 0});if(i.current.key!==t){let r={};for(let o of Object.keys(e??{})){let a=(p,l,v)=>{let P=n.current?.[o];return P?P(p,l,v):[]};r[o]=a}i.current={key:t,overrides:e?r:void 0}}return{overrides:i.current.overrides,key:t}}import{useRef as Gt}from"react";function Wt(e){let n=Gt(e);n.current=e;let t=Gt(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 ui={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:n,onError:t,optionOverrides:i,maskCompletedText:r,apiConfig:o,additionalContext:a,language:p,productId:l,visitorId:v,columns:P=2,dropdownTrigger:C,optionsPosition:m,closeDropdownOnBlur:b,showNonTappableOptions:S,showOptionIcons:D,showOptionImages:L,showOptionCounts:F,showSkipButton:O,showProducts:I,productImageFallback:B="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=H(null),[Ce,ae]=hi(null),pe=H(e);pe.current=e;let ie=H(n);ie.current=n;let he=H(t);he.current=t;let Z=H(N);Z.current=N;let $=H(te);$.current=te;let s=H(z);s.current=z;let g=H(k);g.current=k;let f=H(ce);f.current=ce;let w=H(de);w.current=de;let y=H(v);y.current=v;let E=H(()=>{let d=y.current;return typeof d=="function"?d():d}).current,c=Wt(le),G=H(W);G.current=W;let q=H((d,_)=>{let T=G.current;return T?T(d,_):d}).current,j=W?q:void 0,ue=Kt(i);Oe(()=>{if(typeof document>"u")return;let d=new di(document.createElement("div"),{renderMode:"headless",apiConfig:o,additionalContext:a,language:p,productId:l,visitorId:E,optionOverrides:ue.overrides,maskCompletedText:r,columns:P,dropdownTrigger:C,optionsPosition:m,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)=>Z.current?.(...T),onParamsChange:(...T)=>$.current?.(...T),onFocus:()=>s.current?.(),onBlur:()=>g.current?.(),onProductSelect:T=>w.current?.(T),setCursor:T=>f.current?.(T),products:c.config,mapProducts:j});u.current=d,ae(d.getState());let _=d.subscribe(T=>ae(T));return()=>{_(),d.destroy(),u.current===d&&(u.current=null)}},[]),Oe(()=>{M!==void 0&&u.current?.setValue(M)},[M]),Oe(()=>{K!==void 0&&u.current?.setCompletedParams(K)},[K]);let me=JSON.stringify(o??null),ge;try{ge=JSON.stringify(a??null)}catch{ge="[unstringifiable]"}Oe(()=>{u.current?.update({apiConfig:o,additionalContext:a,language:p,productId:l,optionOverrides:ue.overrides,dropdownTrigger:C,optionsPosition:m,closeDropdownOnBlur:b,showNonTappableOptions:S,showProducts:I})},[me,ge,p,l,ue.key,C,m,b,S,I]);let fe=H(!1);Oe(()=>{if(!fe.current){fe.current=!0;return}u.current?.update({products:c.config})},[c.enabled]),Oe(()=>{u.current?.update({mapProducts:j})},[j]);let be=H(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,ve=_t(d=>{let _=d.target.value,tt=_.length>0&&!d.nativeEvent?.isComposing&&_[0]!==_[0].toUpperCase()?_[0].toUpperCase()+_.slice(1):_;u.current?.handleTextChange(tt)},[]),we=_t(d=>{u.current?.handleKeyDown(d.nativeEvent)},[]),oe=u.current,h=Ce??ui,Te=M!==void 0?M:h.text,Ae=K!==void 0?K:h.completedParams,X=h.actionableSuggestions,ze=X[0],Pe=oe?.listboxId??"",Ge=h.activeDropdownIndex>=0&&oe?`${Pe}-option-${h.activeDropdownIndex}`:void 0,xe=h.editingParam,Se=h.editingIdentified,Me=xe?{parameter:xe.suggestionParameter,text:xe.suggestionPlaceholder,required:!0,options:xe.options}:Se?{parameter:Se.parameter,text:pi(Se.parameter),required:!0,options:[]}:null,We=h.dropdownSuggestion??Me??ze,et=Me?[Me]:X,Ne=ci(h),_e=!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:_e,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:ve,onKeyDown:we,onFocus:x.handleFocus,onBlur:x.handleBlur,role:"combobox","aria-expanded":h.isDropdownOpen,"aria-activedescendant":Ge,"aria-autocomplete":"list","aria-controls":Pe},reset:x.reset,refreshProducts:x.refreshProducts,recordSubmit:x.recordSubmit,dropdownProps:{suggestions:We?[{...We,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:F??!0,skipDisabled:h.inSelectionAnimation,isLoading:_e,skeletonExiting:h.skeletonExiting,isInputEmpty:Te.trim().length===0,language:p,products:h.products,productImageFallback:B,onProductSelect:x.selectProduct,onProductFocusChange:x.setFocused,formatType:h.activeFormatType,dateView:h.dateView,selectedDateIso:Ne.selectedIso,selectedDateRange:Ne.selectedRange,dateRangeStart:Ne.rangeStart,onPreviousMonth:x.showPreviousMonth,onNextMonth:x.showNextMonth,optionsPosition:m??"below"}}}import{chipIdFromTap as mi,extractPlainText as Ut,getCursorOffset as qt,keepCaretOnChip as gi,plainTextLength as fi,renderEditableContent as bi,setCursorOffset as jt}from"@magicx-eng/ai-autocomplete-vanilla";import{useCallback as V,useEffect as Xe,useLayoutEffect as ht,useRef as De}from"react";var Je;function vi(){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:n,showChipIcons:t=!0,showChipImages:i=!0,newParamId:r,editingParam:o,editingIdentified:a,editingAnchor:p,caretOffset:l,placeholderText:v,isFocused:P,isDropdownOpen:C,listboxId:m,activeDescendantId:b,autoFocus:S,handleTextChange:D,handleKeyDown:L,handleCaretAfterInput:F,handleCaretMove:O,startEditingParam:I,replaceEditingRange:B,setFocused:z}=e,k=De(null),M=De(!1),K=De(""),N=De(""),te=De(null),le=De(0);te.current=l,Xe(()=>{if(!S)return;let s=k.current;if(!s)return;document.activeElement===s?z(!0):s.focus();let g=s.ownerDocument??document,f=g.getSelection(),w=f&&f.rangeCount>0&&s.contains(f.anchorNode);if(f&&!w){let y=g.createRange();y.selectNodeContents(s),y.collapse(!0),f.removeAllRanges(),f.addRange(y)}},[S,z]),Xe(()=>{let s=k.current;if(!s)return;let g=s.ownerDocument??document,f=()=>{let w=g.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,q=o?.id??a?.id??null;if(G&&G!==q){I(G);return}performance.now()-le.current<50||O(qt(s))};return g.addEventListener("selectionchange",f),()=>g.removeEventListener("selectionchange",f)},[o,a,I,O]),Xe(()=>{let s=k.current;if(!s)return;let g=f=>{let w=mi(s,f.target);w&&(I(w),gi(s,w))};return s.addEventListener("click",g),()=>s.removeEventListener("click",g)},[I]),ht(()=>{let s=k.current;s&&bi({input:s,segments:n,newParamId:r,editingParamId:o?.id??null,placeholderText:v??"",isFocused:P,showChipIcons:t,showChipImages:i})},[n,r,o,v,P,t,i]),ht(()=>{let s=K.current,g=r??"";if(K.current=g,!g||g===s)return;let f=k.current;if(!f)return;f.focus();let w=te.current??fi(f);jt(f,w)},[r]),ht(()=>{let s=N.current,g=o?.id??"";if(N.current=g,!g||g===s||p==null)return;let f=k.current;f&&jt(f,p)},[o,p]);let W=V(()=>{if(M.current)return;let s=k.current;if(!s)return;let g=Ut(s),w=g.length>0&&g[0]!==g[0].toUpperCase()?g[0].toUpperCase()+g.slice(1):g;D(w)},[D]),de=V(()=>{le.current=performance.now(),W();let s=k.current;s&&F(qt(s))},[W,F]);Xe(()=>{let s=k.current;if(!s)return;let g=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??"";B(E)&&f.preventDefault()}};return s.addEventListener("beforeinput",g),()=>s.removeEventListener("beforeinput",g)},[B]);let ke=V(()=>{M.current=!0},[]),ce=V(()=>{M.current=!1,W()},[W]),u=V(s=>{s.preventDefault();let g=k.current;if(!g)return;let f=(s.clipboardData.getData("text/plain")??"").replace(/\r?\n/g," ");if(!f)return;let w=g.ownerDocument??document,y=w.getSelection();if(!y||y.rangeCount===0)return;let E=y.getRangeAt(0);if(!g.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=V(s=>L(s),[L]),ae=V(()=>z(!0),[z]),pe=V(()=>z(!1),[z]),ie=V(()=>k.current?.focus(),[]),he=V(()=>k.current?.blur(),[]),Z=V(()=>{let s=k.current;return s?Ut(s):""},[]),$=vi()?"plaintext-only":"true";return{inputRef:k,editorProps:{ref:k,contentEditable:$,suppressContentEditableWarning:!0,tabIndex:0,role:"combobox","aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":m,"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:Z,focus:ie,blur:he}}import{jsx as Le,jsxs as mt}from"react/jsx-runtime";function Ii(e){return e!=="auto"?e:typeof window>"u"||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}var Ei=wi(function({onSubmit:n,onResult:t,onError:i,optionOverrides:r,maskCompletedText:o,className:a,apiConfig:p,additionalContext:l,language:v,productId:P,visitorId:C,columns:m,pillPlacement:b="dropdown",mode:S="auto",optionsPosition:D="below",animations:L=!0,dropdownTrigger:F,closeDropdownOnBlur:O,showNonTappableOptions:I,showOptionIcons:B=!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:Z,submitButton:$,resetOnSubmit:s=!0},g){let f=Ke(null),w=Ke(null),y=Ke(()=>{}),E=Ke(null),c=Ke(null);Yt(()=>{let A=f.current;if(A)return E.current?E.current.setMode(S):E.current=new Ci(A,S),()=>{E.current?.destroy(),E.current=null}},[S]);let G=ut(A=>{let J=c.current?.current;J&&(J.focus(),Pi(J,A))},[]),{completedParams:q,skippedParams:j,identifiedParams:ue,isReady:me,customFields:ge,suggestionPills:fe,setActivePill:be,skipActivePill:x,segments:ve,newParamId:we,clearNewParamId:oe,placeholderText:h,isFocused:Te,isDropdownOpen:Ae,isActivePillSelected:X,isLoading:ze,activeIndex:Pe,listboxId:Ge,handleTextChange:xe,handleKeyDown:Se,setFocused:Me,editingParam:We,editingIdentified:et,editingAnchor:Ne,caretOffset:_e,startEditingParam:d,handleCaretAfterInput:_,handleCaretMove:T,replaceEditingRange:tt,dropdownProps:Zt,reset:Ue,refreshProducts:gt,recordSubmit:ft}=pt({onSubmit:A=>y.current(A),onResult:t,onError:i,optionOverrides:r,maskCompletedText:o,apiConfig:p,additionalContext:l,language:v,productId:P,visitorId:C,columns:m,dropdownTrigger:F,optionsPosition:D,closeDropdownOnBlur:O,showNonTappableOptions:I,showOptionIcons:B,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:Z,source:"full-sdk",setCursor:G});Yt(()=>{if(!we)return;let A=window.setTimeout(()=>oe(),650);return()=>window.clearTimeout(A)},[we,oe]);let $t=Pe>=0?`${Ge}-option-${Pe}`:void 0,{inputRef:at,editorProps:Vt,focus:qe,blur:bt,getPlainText:vt}=Qt({segments:ve,newParamId:we,editingParam:We,editingIdentified:et,editingAnchor:Ne,caretOffset:_e,placeholderText:h,isFocused:Te,showChipIcons:z,showChipImages:k,isDropdownOpen:Ae,listboxId:Ge,activeDescendantId:$t,autoFocus:de,handleTextChange:xe,handleKeyDown:Se,handleCaretAfterInput:_,handleCaretMove:T,startEditingParam:d,replaceEditingRange:tt,setFocused:Me});c.current=at,yi(()=>{let A=w.current,J=at.current;if(!A||!J)return;let Be=()=>{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")};Be();let wt=new ResizeObserver(Be);return wt.observe(J),()=>wt.disconnect()},[ve,fe.length,ze,at]),xi(g,()=>({focus:qe,blur:bt,reset:Ue,refreshProducts:gt,setMode:A=>E.current?.setMode(A),skipActivePill:x}),[qe,bt,Ue,gt,x]);let je=!!ve.length||q.length>0,it=ut(A=>{if(!je)return;let J=vt(),Be=ki(J,q,j,{identifiedParams:ue,isReady:me,customFields:ge});A&&ft(Be),n(Be),s&&Ue()},[ft,s,je,q,j,ue,me,ge,n,Ue,vt]);y.current=()=>it(!1);let Xt=ut(A=>{A.target?.closest("[data-aia-pill]")||qe()},[qe]),Jt=b==="inline",ea=b==="dropdown";return mt("div",{ref:f,className:`magicx-aia ${Ie.container} ${a??""}`,"data-pill-placement":b,"data-options-position":D,"data-animations":L?"on":"off","data-mode":Ii(S),children:[Le(dt,{...Zt,showPills:ea,productsLayout:le,productImageFallback:W}),mt("div",{className:Ie.inputWrapper,"data-aia-input-wrapper":"",onClick:Xt,children:[mt("div",{className:Ie.editorArea,"data-aia-editor":"",children:[Le("div",{...Vt,className:Ie.input,"data-aia-input":""}),Jt&&(ze||fe.length>0)&&Le("span",{ref:w,className:Ie.pillListContainer,"data-aia-pill-list-container":"",children:Le(Ye,{pills:fe,activePillIndex:0,activeSelected:X,onSelectPill:be,loading:ze})})]}),$===null?null:$===void 0?Le(Ht,{disabled:!je,onClick:()=>it(!0),label:Si(v).submit}):Le("span",{"data-aia-submit":"","data-aia-submit-slot":"",className:Ie.submitSlot,onClick:A=>{je&&(A.stopPropagation(),it(!0))},children:$})]})]})});export{Ei as AIAutocomplete,dt as AIAutocompleteDropdown,Cn as DATE_RANGE_META_END,Pn as DATE_RANGE_META_START,Sn as DEFAULT_OPTION_COUNT_UNIT,Bn as PRODUCT_PATH_PREFIX,Qn as WEEKDAY_LABELS,xn as buildSubmitResult,yn as cellDay,kn as cellIso,In as dateCellMarks,En as formatDate,Tn as formatDateRange,An as formatOptionCount,Rn as isoDate,On as monthLabel,Dn as optionCountLabel,Ln as optionHasImage,zn as optionImageSources,Mn as optionImageSrc,Nn as optionLabel,Hn as parseDate,Fn as parseLooseDate,Kn as parseLooseDateRange,Gn as productFromMatchedItem,Wn as productImageSources,_n as productsFromCustomFields,Un as sanitizeOptionIconSvg,qn as selectedRangeFor,pt as useAIAutocomplete,jn as visibleDateRange,Yn as withSkippedParams};
|
|
2270
2270
|
//# sourceMappingURL=index.mjs.map
|