@magicx-eng/ai-autocomplete-react 0.30.0 → 0.30.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +10 -10
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +11 -11
- 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 dn,cellDay as cn,cellIso as pn,DATE_RANGE_META_END as hn,DATE_RANGE_META_START as un,DEFAULT_OPTION_COUNT_UNIT as mn,dateCellMarks as gn,formatDate as fn,formatDateRange as bn,formatOptionCount as vn,isoDate as wn,monthLabel as xn,optionCountLabel as yn,optionHasImage as kn,optionImageSrc as Cn,optionLabel as Pn,PRODUCT_PATH_PREFIX as Sn,parseDate as In,parseLooseDate as En,parseLooseDateRange as Tn,productFromMatchedItem as An,productsFromCustomFields as Rn,sanitizeOptionIconSvg as On,selectedRangeFor as Dn,visibleDateRange as Ln,WEEKDAY_LABELS as Mn,withSkippedParams as zn}from"@magicx-eng/ai-autocomplete-vanilla";import{forwardRef as ci,useCallback as st,useEffect as Gt,useImperativeHandle as pi,useLayoutEffect as hi,useRef as ze}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
|
|
@@ -1204,7 +1204,7 @@ import{buildSubmitResult as sn,cellDay as ln,cellIso as dn,DATE_RANGE_META_END a
|
|
|
1204
1204
|
opacity: 0.8;
|
|
1205
1205
|
background: rgba(var(--aia-streak-rgb, 255, 255, 255), 0.06);
|
|
1206
1206
|
}
|
|
1207
|
-
`,document.head.appendChild(e)}var O={datepicker:"aia-datepicker-6RrTs",header:"aia-header-z4LRk",month:"aia-month-urB2T",nav:"aia-nav-ap4AN",weekdays:"aia-weekdays-3EA3q",grid:"aia-grid-mQCgw",weekday:"aia-weekday-3lF4B",cell:"aia-cell-59k0y",number:"aia-number-aoT01",day:"aia-day-cB3u9",blank:"aia-blank-ivgRC",past:"aia-past-CEZsj",highlighted:"aia-highlighted-YIdtK",today:"aia-today-iI3ME",inRange:"aia-inRange-r9S2q",selected:"aia-selected-28KDn",pressed:"aia-pressed-bEyyN"};import{jsx as V,jsxs as mt}from"react/jsx-runtime";var ra=["sunday","monday","tuesday","wednesday","thursday","friday","saturday"];function gt({options:e,activeIndex:o,listboxId:t,view:n,selection:r,onSelect:i,onHighlight:a,onUnhighlight:l,onPreviousMonth:
|
|
1207
|
+
`,document.head.appendChild(e)}var O={datepicker:"aia-datepicker-6RrTs",header:"aia-header-z4LRk",month:"aia-month-urB2T",nav:"aia-nav-ap4AN",weekdays:"aia-weekdays-3EA3q",grid:"aia-grid-mQCgw",weekday:"aia-weekday-3lF4B",cell:"aia-cell-59k0y",number:"aia-number-aoT01",day:"aia-day-cB3u9",blank:"aia-blank-ivgRC",past:"aia-past-CEZsj",highlighted:"aia-highlighted-YIdtK",today:"aia-today-iI3ME",inRange:"aia-inRange-r9S2q",selected:"aia-selected-28KDn",pressed:"aia-pressed-bEyyN"};import{jsx as V,jsxs as mt}from"react/jsx-runtime";var ra=["sunday","monday","tuesday","wednesday","thursday","friday","saturday"];function gt({options:e,activeIndex:o,listboxId:t,view:n,selection:r,onSelect:i,onHighlight:a,onUnhighlight:l,onPreviousMonth:y,onNextMonth:v}){let w=ta(new Date),P=ia({pendingStart:r.rangeStart,highlightedIso:Ie(e[o]),selected:r.selectedRange});return mt("div",{className:O.datepicker,"data-aia-datepicker":"",children:[mt("div",{className:O.header,children:[V("button",{type:"button",tabIndex:-1,className:O.nav,"data-aia-date-prev":"","aria-label":"Previous month",onMouseDown:u=>u.preventDefault(),onClick:y,children:"\u2039"}),V("span",{className:O.month,"data-aia-date-month":"","aria-live":"polite",children:aa(n)}),V("button",{type:"button",tabIndex:-1,className:O.nav,"data-aia-date-next":"","aria-label":"Next month",onMouseDown:u=>u.preventDefault(),onClick:v,children:"\u203A"})]}),V("div",{className:O.weekdays,"aria-hidden":"true",children:oa.map((u,x)=>V("span",{className:O.weekday,children:u},ra[x]))}),V("div",{className:O.grid,"data-aia-date-grid":"",children:e.map((u,x)=>V(sa,{option:u,id:`${t}-option-${x}`,index:x,isHighlighted:x===o&&u.is_tappable,isToday:Ie(u)===w,isPast:Ie(u)!=null&&Ie(u)<w,marks:ea(Ie(u),{selectedIso:r.selectedIso,range:P}),onSelect:i,onHighlight:a,onUnhighlight:l},Ie(u)??`pad-${x}`))})]})}function sa({option:e,id:o,index:t,isHighlighted:n,isToday:r,isPast:i,marks:a,onSelect:l,onHighlight:y,onUnhighlight:v}){let[w,P]=na(!1),u=Jt(e);if(u==null)return V("div",{id:o,role:"option","data-aia-option":"","data-aia-date-cell":"","aria-hidden":"true","aria-selected":!1,tabIndex:-1,className:`${O.cell} ${O.blank}`});let x=()=>{P(!0),l(e),setTimeout(()=>P(!1),170)},T=[O.cell,O.day,i?O.past:"",n?O.highlighted:"",r?O.today:"",a.inRange?O.inRange:"",a.selected?O.selected:"",w?O.pressed:""].filter(Boolean).join(" ");return V("div",{id:o,role:"option","data-aia-option":"","data-aia-date-cell":"","aria-selected":n,"aria-label":e.text,tabIndex:0,className:T,onClick:x,onKeyDown:I=>{(I.key==="Enter"||I.key===" ")&&(I.preventDefault(),x())},onMouseEnter:()=>y(t),onMouseLeave:v?()=>v(t):void 0,children:V("span",{className:O.number,children:u})})}import{ATTRIBUTION_URL as la,buildAttributionUrl as da,getFooterHint as ca}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as pa,useState as ha}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 {
|
|
1208
1208
|
display: flex;
|
|
1209
1209
|
flex-wrap: wrap;
|
|
1210
1210
|
gap: var(--aia-cluster-gap, 0.5rem);
|
|
@@ -1244,7 +1244,7 @@ import{buildSubmitResult as sn,cellDay as ln,cellIso as dn,DATE_RANGE_META_END a
|
|
|
1244
1244
|
.aia-cluster[data-justify="around"] {
|
|
1245
1245
|
justify-content: space-around;
|
|
1246
1246
|
}
|
|
1247
|
-
`,document.head.appendChild(e)}import{jsx as ft}from"react/jsx-runtime";function De({gap:e,align:o="center",justify:t="start",noWrap:n=!1,inline:r=!1,className:i,children:a,...l}){let
|
|
1247
|
+
`,document.head.appendChild(e)}import{jsx as ft}from"react/jsx-runtime";function De({gap:e,align:o="center",justify:t="start",noWrap:n=!1,inline:r=!1,className:i,children:a,...l}){let y=e?{"--aia-cluster-gap":e}:void 0,v={className:i?`aia-cluster ${i}`:"aia-cluster","data-align":o,"data-justify":t,"data-nowrap":n||void 0,"data-inline":r||void 0,style:y,...l};return r?ft("span",{...v,children:a}):ft("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
|
|
1248
1248
|
dropdown's rounded edges. The top inset (--aia-footer-gap) adds breathing
|
|
1249
1249
|
room above the hint/branding row so the footer doesn't butt against the last
|
|
1250
1250
|
option row \u2014 additive to the dropdown's 8px section gap. */
|
|
@@ -1378,7 +1378,7 @@ import{buildSubmitResult as sn,cellDay as ln,cellIso as dn,DATE_RANGE_META_END a
|
|
|
1378
1378
|
justify-content: flex-end;
|
|
1379
1379
|
}
|
|
1380
1380
|
}
|
|
1381
|
-
`,document.head.appendChild(e)}var se={footer:"aia-footer-qQQ7x",hintGroup:"aia-hintGroup-ZzbPf",brandLink:"aia-brandLink-r4f3R",key:"aia-key-Bz1H-",hint:"aia-hint-GKEOH",brand:"aia-brand-Al-lR",badge:"aia-badge-Fk9vg",row:"aia-row-BgZ6Q"};import{jsx as Le,jsxs as
|
|
1381
|
+
`,document.head.appendChild(e)}var se={footer:"aia-footer-qQQ7x",hintGroup:"aia-hintGroup-ZzbPf",brandLink:"aia-brandLink-r4f3R",key:"aia-key-Bz1H-",hint:"aia-hint-GKEOH",brand:"aia-brand-Al-lR",badge:"aia-badge-Fk9vg",row:"aia-row-BgZ6Q"};import{jsx as Le,jsxs as Xe}from"react/jsx-runtime";function bt({isOptionHighlighted:e=!1,isInputEmpty:o=!1}){let{key:t,hint:n}=ca(e,o),[r,i]=ha(la);return pa(()=>{i(da())},[]),Le("footer",{className:se.footer,"data-aia-footer":"",children:Xe(De,{justify:"between",noWrap:!0,className:se.row,children:[Xe(De,{gap:"5px",className:se.hintGroup,children:[Le("kbd",{className:se.key,children:t}),Le("span",{className:se.hint,children:n})]}),Xe("a",{className:se.brandLink,href:r,target:"_blank",rel:"noopener noreferrer",children:[Le("span",{className:se.brand,children:"AI"}),Le("span",{className:se.badge,children:"Autocomplete"})]})]})})}if(typeof document<"u"&&!document.getElementById("ac-style-199d0432")){let e=document.createElement("style");e.id="ac-style-199d0432",e.textContent=`/* ParamPill (Figma "ParamPill") \u2014 unfilled suggestion pill: transparent fill,
|
|
1382
1382
|
no outline. ~28px via 6px padding + 14px text + the 1px border (border-box).
|
|
1383
1383
|
The border is kept as a 1px transparent line so the box stays the same size
|
|
1384
1384
|
as it was when the outline was dashed. */
|
|
@@ -1454,7 +1454,7 @@ import{buildSubmitResult as sn,cellDay as ln,cellIso as dn,DATE_RANGE_META_END a
|
|
|
1454
1454
|
opacity: 0;
|
|
1455
1455
|
}
|
|
1456
1456
|
}
|
|
1457
|
-
`,document.head.appendChild(e)}var fe={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 ua}from"react/jsx-runtime";var
|
|
1457
|
+
`,document.head.appendChild(e)}var fe={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 ua}from"react/jsx-runtime";var Je={selected:1,first:.7,next:.4,last:.2};function vt({label:e,state:o,rounded:t,loading:n,onClick:r}){let i=[fe.pill,t?fe.rounded:"",n?fe.skeleton:""].filter(Boolean).join(" ");return ua("button",{type:"button","data-aia-pill":"","data-aia-loading":n?"":void 0,tabIndex:-1,contentEditable:!1,suppressContentEditableWarning:!0,className:i,style:{opacity:Je[o]},onMouseDown:a=>a.preventDefault(),onClick:n?void 0:r,disabled:n,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 {
|
|
1458
1458
|
position: relative;
|
|
1459
1459
|
z-index: 1;
|
|
1460
1460
|
pointer-events: auto;
|
|
@@ -1464,7 +1464,7 @@ import{buildSubmitResult as sn,cellDay as ln,cellIso as dn,DATE_RANGE_META_END a
|
|
|
1464
1464
|
align-items: center;
|
|
1465
1465
|
vertical-align: middle;
|
|
1466
1466
|
}
|
|
1467
|
-
`,document.head.appendChild(e)}var
|
|
1467
|
+
`,document.head.appendChild(e)}var et={list:"aia-list-qvLqO"};import{jsx as Ge}from"react/jsx-runtime";var ma=[125,69];function wt(e){return e===0?"first":e===1?"next":"last"}function We({pills:e,activePillIndex:o,onSelectPill:t,activeSelected:n,rounded:r,loading:i}){return i&&e.length===0?Ge("span",{className:et.list,"data-aia-pill-list-loading":"",children:ma.map((a,l)=>Ge("span",{"data-aia-pill-skeleton":"",className:`${fe.pill} ${r?fe.rounded:""} ${fe.skeleton}`,style:{width:a,opacity:Je[wt(l)]}},`skel-${a}`))}):Ge("span",{className:et.list,"data-aia-pill-list-loading":i?"":void 0,children:e.map((a,l)=>{let y=!!n&&l===o;return Ge(vt,{label:a.text,state:y?"selected":wt(l),selected:y,rounded:r,loading:i,onClick:()=>t(l)},`${a.type}-${a.text}`)})})}import{attachProductRowWheel as ga,productInitial as fa}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as ba,useRef as va,useState as wa}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
|
|
1468
1468
|
(packages/vanilla/src/styles.css). Same tokens, same defaults, so a consumer
|
|
1469
1469
|
theming one package sees the same result in the other.
|
|
1470
1470
|
|
|
@@ -1692,7 +1692,7 @@ import{buildSubmitResult as sn,cellDay as ln,cellIso as dn,DATE_RANGE_META_END a
|
|
|
1692
1692
|
.aia-section-Hugfg[data-aia-products-layout="list"] .aia-body-ly032 {
|
|
1693
1693
|
flex: 1 1 auto;
|
|
1694
1694
|
}
|
|
1695
|
-
`,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"};import{jsx as be,jsxs as _e}from"react/jsx-runtime";function xt({products:e,listboxId:o,onSelect:t,onFocusChange:n,focusable:r=!0,layout:i="row",imageFallback:a="image"}){let l=e.length>0,
|
|
1695
|
+
`,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"};import{jsx as be,jsxs as _e}from"react/jsx-runtime";function xt({products:e,listboxId:o,onSelect:t,onFocusChange:n,focusable:r=!0,layout:i="row",imageFallback:a="image"}){let l=e.length>0,y=va(null);if(ba(()=>{let w=y.current;if(!(!l||!w))return ga(w)},[l]),!l)return null;let v=`${o}-products-label`;return _e("section",{className:Q.section,"data-aia-products":"","data-aia-products-layout":i,role:"group","aria-labelledby":v,children:[be("div",{className:Q.label,id:v,"data-aia-products-label":"",children:"Products"}),be("div",{ref:y,className:Q.row,"data-aia-products-row":"",children:e.map((w,P)=>be(xa,{product:w,id:`${o}-product-${P}`,onSelect:t,onFocusChange:n,focusable:r,imageFallback:a},w.id))})]})}function xa({product:e,id:o,onSelect:t,onFocusChange:n,focusable:r,imageFallback:i}){let a=l=>{l.metaKey||l.ctrlKey||l.shiftKey||l.altKey||l.button!==0||(l.preventDefault(),t(e))};return _e("a",{id:o,className:Q.card,"data-aia-product":"",role:"option","aria-selected":!1,href:e.url,tabIndex:r?0:-1,onClick:a,onKeyDown:l=>{l.key!=="Enter"&&l.key!==" "||(l.preventDefault(),t(e))},onFocus:()=>n?.(!0),onBlur:l=>{l.relatedTarget?.closest("[data-aia-dropdown]")||n?.(!1)},children:[be(ya,{src:e.imageUrl?.trim(),title:e.title,fallback:i},e.imageUrl?.trim()??""),_e("span",{className:Q.body,children:[e.vendor?be("span",{className:Q.vendor,children:e.vendor}):null,be("span",{className:Q.title,children:e.title}),e.price?be("span",{className:Q.price,children:e.price}):null]})]})}function ya({src:e,title:o,fallback:t}){let[n,r]=wa(!1),i=!!e&&!n,a=!i&&t==="initial";return _e("span",{className:Q.media,"aria-hidden":"true","data-aia-product-placeholder":!i&&!a?"":void 0,"data-aia-product-initial":a?"":void 0,children:[i?be("img",{className:Q.image,src:e,alt:"",loading:"lazy",decoding:"async",onError:()=>r(!0)}):null,a?fa(o):null]})}import{isOptionsGridMobileViewport as za,measureOptionsGrid as Na,needsOptionsGridMeasurement as Ba,OPTIONS_GRID_MOBILE_QUERY as Ha,optionEnterDelayMs as Fa,planOptionsGrid as Ct,sameOptionRows as Ka}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as Ga,useLayoutEffect as Wa,useRef as Pt,useState as It}from"react";import{optionsGridTemplateColumns as ka}from"@magicx-eng/ai-autocomplete-vanilla";import{useLayoutEffect as Ca,useRef as Pa}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 {
|
|
1696
1696
|
display: grid;
|
|
1697
1697
|
grid-template-columns: repeat(
|
|
1698
1698
|
auto-fit,
|
|
@@ -1728,7 +1728,7 @@ import{buildSubmitResult as sn,cellDay as ln,cellIso as dn,DATE_RANGE_META_END a
|
|
|
1728
1728
|
.aia-grid[data-scroll]::-webkit-scrollbar {
|
|
1729
1729
|
display: none;
|
|
1730
1730
|
}
|
|
1731
|
-
`,document.head.appendChild(e)}import{jsx as Sa}from"react/jsx-runtime";function yt({min:e="16rem",max:o,gap:t,scroll:n=!1,maxHeight:r,scrollResetKey:i,cols:a,template:l,innerRef:
|
|
1731
|
+
`,document.head.appendChild(e)}import{jsx as Sa}from"react/jsx-runtime";function yt({min:e="16rem",max:o,gap:t,scroll:n=!1,maxHeight:r,scrollResetKey:i,cols:a,template:l,innerRef:y,className:v,children:w,...P}){let u=Pa(null);Ca(()=>{if(i===void 0)return;let T=u.current;T&&(T.scrollTop=0)},[i]);let x={"--aia-grid-min":e};return o&&(x["--aia-grid-max"]=o),t&&(x["--aia-grid-gap"]=t),r&&(x["--aia-grid-max-height"]=r),a&&(x.gridTemplateColumns=ka(a)),l&&(x.gridTemplateColumns=l),Sa("div",{ref:T=>{u.current=T,y?.(T)},className:v?`aia-grid ${v}`:"aia-grid","data-scroll":n||void 0,style:x,...P,children:w})}import{formatOptionCount as Ia,OPTION_ENTER_DELAY_VAR as Ea,optionImageSrc as Ta,optionLabel as Aa,sanitizeOptionIconSvg as Ra}from"@magicx-eng/ai-autocomplete-vanilla";import{useEffect as Oa,useMemo as Da,useRef as La,useState as tt}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 {
|
|
1732
1732
|
position: relative;
|
|
1733
1733
|
/* Clip, not visible: the entrance rise below runs on the inner content,
|
|
1734
1734
|
and a transformed box extends its scroll container's scrollable area.
|
|
@@ -2125,7 +2125,7 @@ import{buildSubmitResult as sn,cellDay as ln,cellIso as dn,DATE_RANGE_META_END a
|
|
|
2125
2125
|
opacity: 0;
|
|
2126
2126
|
}
|
|
2127
2127
|
}
|
|
2128
|
-
`,document.head.appendChild(e)}var W={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 ke,jsxs as
|
|
2128
|
+
`,document.head.appendChild(e)}var W={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 ke,jsxs as Ma}from"react/jsx-runtime";function kt({option:e,isHighlighted:o,onSelect:t,onHighlight:n,onUnhighlight:r,id:i,loading:a,showIcon:l=!0,showImage:y=!0,showCount:v=!0,scrollHint:w,enterDelayMs:P=0}){let[u]=tt(P),[x,T]=tt(!1),I=y?Ta(e.image_url):null,[K,L]=tt(null),A=Da(()=>!I&&l&&e.icon_svg?Ra(e.icon_svg):null,[I,l,e.icon_svg]),S=v?Ia(e.item_count):null,M=La(void 0);Oa(()=>()=>clearTimeout(M.current),[]);let E=()=>{a||!e.is_tappable||x||(T(!0),t(e),clearTimeout(M.current),M.current=setTimeout(()=>T(!1),170))},C=[W.item,o&&!a?W.highlighted:"",e.is_tappable?W.tappable:W.nonTappable,x?W.pressed:"",w?W.scrollHint:""].filter(Boolean).join(" ");return ke("div",{id:i,role:"option","data-aia-option":"","data-aia-loading":a?"":void 0,"data-aia-icon":A&&e.icon?e.icon:void 0,"data-aia-image":I?"":void 0,"data-aia-item-count":S!==null?e.item_count:void 0,"aria-selected":o,className:C,style:{[Ea]:`${u}ms`},tabIndex:a||!e.is_tappable?-1:0,onClick:E,onKeyDown:H=>{!a&&e.is_tappable&&(H.key==="Enter"||H.key===" ")&&(H.preventDefault(),E())},onMouseEnter:!a&&e.is_tappable?n:void 0,onMouseLeave:r,children:Ma("span",{className:W.content,children:[I&&ke("span",{className:`${W.image} magicx-aia-option-image`,"aria-hidden":"true",children:ke("img",{src:I,alt:"",loading:"lazy",decoding:"async",referrerPolicy:"no-referrer",draggable:!1,hidden:K===I,onError:()=>L(I)})}),A&&ke("span",{className:`${W.icon} magicx-aia-option-icon`,"aria-hidden":"true",dangerouslySetInnerHTML:{__html:A}}),ke("span",{className:W.text,children:Aa(e)}),e.tag&&ke("span",{className:W.tag,children:e.tag}),S!==null&&ke("span",{className:`${W.count} magicx-aia-option-count`,children:S})]})})}import{jsx as St}from"react/jsx-runtime";function _a(){let[e,o]=It(za);return Ga(()=>{if(typeof window>"u"||!window.matchMedia)return;let t=window.matchMedia(Ha),n=()=>o(t.matches);return n(),t.addEventListener("change",n),()=>t.removeEventListener("change",n)},[]),e}function Et({options:e,activeIndex:o,onSelect:t,onHighlight:n,onUnhighlight:r,listboxId:i,loading:a,groupKey:l="",optionsPosition:y="below",showIcons:v=!0,showImages:w=!0,showCounts:P=!0}){let u=_a(),x=Pt(null),[T,I]=It(null),K=Pt(null);Wa(()=>{if(a&&Ka(K.current,e))return;K.current=a?null:e;let A=x.current,M=A&&!a&&Ba(e.length,u)?Na(A):null;I(M?Ct(e.length,u,M.rowWidths,M.gridWidth):null)},[e,u,a]);let L=T??Ct(e.length,u,null,null);return St(yt,{min:"250px",max:"1fr",gap:"0",scroll:!0,scrollResetKey:l,template:L.template,maxHeight:L.maxHeight,innerRef:A=>{x.current=A},"data-aia-group":l,children:e.map((A,S)=>St(kt,{option:A,isHighlighted:S===o,onSelect:t,onHighlight:()=>n(S),onUnhighlight:r?()=>r(S):void 0,id:`${i}-option-${S}`,loading:a,showIcon:v,showImage:w,showCount:P,scrollHint:!a&&L.scrollHintIndices.includes(S),enterDelayMs:a?0:Fa(S,L.cols,e.length,y)},`${l}\0${A.text}`))})}if(typeof document<"u"&&!document.getElementById("ac-style-8414cd5f")){let e=document.createElement("style");e.id="ac-style-8414cd5f",e.textContent=`.aia-stack {
|
|
2129
2129
|
display: flex;
|
|
2130
2130
|
flex-direction: column;
|
|
2131
2131
|
gap: var(--aia-stack-space, 0.5rem);
|
|
@@ -2140,7 +2140,7 @@ import{buildSubmitResult as sn,cellDay as ln,cellIso as dn,DATE_RANGE_META_END a
|
|
|
2140
2140
|
align-items: end;
|
|
2141
2141
|
}
|
|
2142
2142
|
/* data-align="stretch" is the flex default \u2014 no rule needed. */
|
|
2143
|
-
`,document.head.appendChild(e)}import{jsx as qa}from"react/jsx-runtime";function Tt({space:e,align:o="stretch",className:t,children:n,...r}){let i=e?{"--aia-stack-space":e}:void 0;return qa("div",{className:t?`aia-stack ${t}`:"aia-stack","data-align":o,style:i,...r,children:n})}import{jsx as U,jsxs as
|
|
2143
|
+
`,document.head.appendChild(e)}import{jsx as qa}from"react/jsx-runtime";function Tt({space:e,align:o="stretch",className:t,children:n,...r}){let i=e?{"--aia-stack-space":e}:void 0;return qa("div",{className:t?`aia-stack ${t}`:"aia-stack","data-align":o,style:i,...r,children:n})}import{jsx as U,jsxs as at}from"react/jsx-runtime";var $a=[159,119,164],Va=()=>{},At=()=>{};function Xa(e){let o=()=>typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-color-scheme: dark)").matches,[t,n]=Za(o);if(Ue(()=>{if(e!=="auto"||typeof window>"u"||typeof window.matchMedia!="function")return;let r=window.matchMedia("(prefers-color-scheme: dark)"),i=()=>n(r.matches);return r.addEventListener("change",i),()=>r.removeEventListener("change",i)},[e]),e!==void 0)return e==="auto"?t?"dark":"light":e}function Ja(e,o){let t=qe(null);Ue(()=>{let n=e.current,r=o.current;if(!n||!r)return;let i=n.querySelector(".aia-grid[data-scroll]");if(t.current&&t.current.grid!==i&&(t.current.controller.destroy(),t.current=null),i&&!t.current){t.current={grid:i,controller:Ua({dropdown:n,grid:i,button:r})};return}t.current?.controller.update()}),Ue(()=>()=>{t.current?.controller.destroy(),t.current=null},[])}function it({suggestions:e,activeIndex:o,onSelect:t,onHighlight:n,onUnhighlight:r,isOpen:i,id:a,className:l,pills:y,onPillClick:v,showPills:w=!0,onSkip:P,showSkipButton:u=!0,showOptionIcons:x=!0,showOptionImages:T=!0,showOptionCounts:I=!0,skipDisabled:K=!1,activeSelected:L=!1,isLoading:A=!1,skeletonExiting:S=!1,isInputEmpty:M=!1,products:E,onProductSelect:C,onProductFocusChange:H,productsLayout:X="row",productImageFallback:le="image",formatType:J="options",dateView:de=null,selectedDateIso:G=null,selectedDateRange:g=null,dateRangeStart:ve=null,onPreviousMonth:ce,onNextMonth:pe,optionsPosition:ee="below",mode:he}){let te=Xa(he),j=te!==void 0,_=qe(null),ae=qe(null);Ja(_,ae),Ue(()=>{if(_.current)return Qa(_.current)},[]);let ie=e[0]?.options??[],d=!!(y&&y.length>0&&v),m=!!(E&&E.length>0),h=i&&(ie.length>0||w&&d||A||m),f={suggestions:e,activeIndex:o,pills:y,showPills:w,showSkipButton:u,showOptionIcons:x,showOptionImages:T,showOptionCounts:I,skipDisabled:K,activeSelected:L,isLoading:A,skeletonExiting:S,isInputEmpty:M,products:E,formatType:J,dateView:de,selectedDateIso:G,selectedDateRange:g,dateRangeStart:ve},k=qe(f);h&&(k.current=f);let s=h?f:k.current,z=s.suggestions[0],N=z?.options??[],Z=s.activeIndex>=0&&!!N[s.activeIndex]?.is_tappable,b=!!(s.pills&&s.pills.length>0&&v),we=s.showPills&&b,Ae=s.showPills&&!b&&s.isLoading,oe=we||Ae,c=b&&s.showSkipButton&&!s.isInputEmpty&&!!P,ne=s.pills?.[0]?.text,xe=Ya(s.formatType)&&s.dateView!=null,ue=N.length>0&&!xe,Ce=N.length>0&&xe&&!s.isLoading,me=s.isLoading&&!ue&&!Ce,Pe=s.products??[];return at("div",{ref:_,id:a,role:"listbox","data-aia-dropdown":"","data-options-position":ee,"data-mode":te,"data-aia-loading":s.isLoading?"":void 0,"data-aia-skeleton-exiting":s.skeletonExiting?"":void 0,"data-aia-has-products":Pe.length>0?"":void 0,className:`${j?"magicx-aia ":""}${re.dropdown} ${h?re.visible:""} ${l??""}`,onMouseDown:B=>B.preventDefault(),children:[at(Tt,{space:"8px",children:[(oe||c)&&at(De,{noWrap:!0,className:re.pillBar,"data-aia-pillbar":"",children:[oe&&U("span",{className:re.pillScroll,"data-aia-pill-scroll":"",children:U(We,{pills:s.pills??[],activePillIndex:0,activeSelected:s.activeSelected,onSelectPill:v??(()=>{}),rounded:!0,loading:s.isLoading})}),c&&U("button",{type:"button",tabIndex:-1,className:re.skip,"data-aia-skip":"",disabled:s.isLoading||s.skipDisabled,"aria-label":ne?`Skip ${ne}`:"Skip",onClick:P,children:"skip"})]}),ue&&U(Et,{options:N,activeIndex:s.activeIndex,onSelect:t,onHighlight:n,onUnhighlight:r,listboxId:a,loading:s.isLoading,groupKey:z?`${z.type} ${z.text}`:"",optionsPosition:ee,showIcons:s.showOptionIcons,showImages:s.showOptionImages,showCounts:s.showOptionCounts}),Ce&&s.dateView&&U(gt,{options:N,activeIndex:s.activeIndex,listboxId:a,view:s.dateView,selection:{selectedIso:s.selectedDateIso??null,selectedRange:s.selectedDateRange??null,rangeStart:s.dateRangeStart??null},onSelect:t,onHighlight:n,onUnhighlight:r,onPreviousMonth:ce??At,onNextMonth:pe??At}),me&&U("div",{className:re.skeletonBars,"data-aia-skeleton-bars":"",children:$a.map(B=>U("span",{className:re.skeletonBar,style:{width:B}},`bar-${B}`))}),U(xt,{products:Pe,listboxId:a,onSelect:C??Va,onFocusChange:H,focusable:h,layout:X,imageFallback:le}),U(bt,{isOptionHighlighted:Z,isInputEmpty:s.isInputEmpty})]}),U("button",{ref:ae,type:"button",tabIndex:-1,className:re.scrollArrow,"data-aia-scroll-arrow":"","aria-label":ja,"aria-hidden":"true",children:U("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:U("path",{d:"M4 6.5 8 10.5l4-4"})})})]})}import{buildSubmitResult as ui,ModeController as mi,setCursorOffset as gi}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 {
|
|
2144
2144
|
flex-shrink: 0;
|
|
2145
2145
|
width: 32px;
|
|
2146
2146
|
height: 32px;
|
|
@@ -2193,5 +2193,5 @@ import{buildSubmitResult as sn,cellDay as ln,cellIso as dn,DATE_RANGE_META_END a
|
|
|
2193
2193
|
);
|
|
2194
2194
|
cursor: default;
|
|
2195
2195
|
}
|
|
2196
|
-
`,document.head.appendChild(e)}var Rt={submitButton:"aia-submitButton-otz7H"};import{jsx as it}from"react/jsx-runtime";function Ot({disabled:e,onClick:o}){return it("button",{type:"button","data-aia-submit":"",className:Rt.submitButton,disabled:e,onClick:t=>{t.stopPropagation(),o()},"aria-label":"Submit",children:it("svg",{width:"18",height:"18",viewBox:"0 0 18 18",fill:"none",role:"img","aria-label":"Submit",children:it("path",{d:"M9 14V4M9 4L4 9M9 4L14 9",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})}import{AIAutocomplete as ei,dateSelectionFor as ti,identifiedParamLabel as ai}from"@magicx-eng/ai-autocomplete-vanilla";import{useCallback as Nt,useEffect as ze,useRef as F,useState as ii}from"react";import{useRef as Dt}from"react";function Lt(e){let o=Dt(e);o.current=e;let t=Object.keys(e??{}).sort().join("\0"),n=Dt({key:"",overrides:void 0});if(n.current.key!==t){let r={};for(let i of Object.keys(e??{})){let a=(l,x,b)=>{let v=o.current?.[i];return v?v(l,x,b):[]};r[i]=a}n.current={key:t,overrides:e?r:void 0}}return{overrides:n.current.overrides,key:t}}import{useRef as zt}from"react";function Mt(e){let o=zt(e);o.current=e;let t=zt(null);t.current===null&&(t.current={fetch:(r,i)=>{let a=o.current;return a?a.fetch(r,i):Promise.reject(new Error("products config removed"))},transform:r=>o.current?.transform(r)??[],get limit(){return o.current?.limit}});let n=e!==void 0;return{config:n?t.current:void 0,enabled:n}}var oi={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 ot({onSubmit:e,onResult:o,onError:t,optionOverrides:n,maskCompletedText:r,apiConfig:i,additionalContext:a,visitorId:l,columns:x=2,dropdownTrigger:b,optionsPosition:v,closeDropdownOnBlur:P,showNonTappableOptions:h,showOptionIcons:w,showOptionImages:E,showOptionCounts:S,showSkipButton:K,showProducts:L,productImageFallback:T="image",onFocus:A,onBlur:z,value:I,completedParams:C,onChange:H,onParamsChange:X,products:le,onProductSelect:J,source:de,setCursor:G}){let m=F(null),[ve,ce]=ii(null),pe=F(e);pe.current=e;let ee=F(o);ee.current=o;let he=F(t);he.current=t;let te=F(H);te.current=H;let j=F(X);j.current=X;let _=F(A);_.current=A;let ae=F(z);ae.current=z;let ie=F(G);ie.current=G;let d=F(J);d.current=J;let g=F(l);g.current=l;let u=F(()=>{let p=g.current;return typeof p=="function"?p():p}).current,y=Mt(le),k=Lt(n);ze(()=>{if(typeof document>"u")return;let p=new ei(document.createElement("div"),{renderMode:"headless",apiConfig:i,additionalContext:a,visitorId:u,optionOverrides:k.overrides,maskCompletedText:r,columns:x,dropdownTrigger:b,optionsPosition:v,closeDropdownOnBlur:P,showNonTappableOptions:h,showProducts:L,source:de,value:I,completedParams:C,onSubmit:(...D)=>pe.current?.(...D),onResult:(...D)=>ee.current?.(...D),onError:(...D)=>he.current?.(...D),onChange:(...D)=>te.current?.(...D),onParamsChange:(...D)=>j.current?.(...D),onFocus:()=>_.current?.(),onBlur:()=>ae.current?.(),onProductSelect:D=>d.current?.(D),setCursor:D=>ie.current?.(D),products:y.config});m.current=p,ce(p.getState());let q=p.subscribe(D=>ce(D));return()=>{q(),p.destroy(),m.current===p&&(m.current=null)}},[]),ze(()=>{I!==void 0&&m.current?.setValue(I)},[I]),ze(()=>{C!==void 0&&m.current?.setCompletedParams(C)},[C]);let s=JSON.stringify(i??null),M;try{M=JSON.stringify(a??null)}catch{M="[unstringifiable]"}ze(()=>{m.current?.update({apiConfig:i,additionalContext:a,optionOverrides:k.overrides,dropdownTrigger:b,optionsPosition:v,closeDropdownOnBlur:P,showNonTappableOptions:h,showProducts:L})},[s,M,k.key,b,v,P,h,L]);let N=F(!1);ze(()=>{if(!N.current){N.current=!0;return}m.current?.update({products:y.config})},[y.enabled]);let Z=F(null);Z.current===null&&(Z.current={handleTextChange:p=>m.current?.handleTextChange(p),handleKeyDown:p=>{let q="nativeEvent"in p?p.nativeEvent:p;m.current?.handleKeyDown(q)},setFocused:p=>m.current?.setFocused(p),startEditingParam:p=>m.current?.startEditingParam(p),exitEditMode:()=>m.current?.exitEditMode(),handleCaretAfterInput:p=>m.current?.handleCaretAfterInput(p),handleCaretMove:p=>m.current?.handleCaretMove(p),replaceEditingRange:p=>m.current?.replaceEditingRange(p)??!1,setActivePill:p=>m.current?.setActivePill(p),skipActivePill:()=>m.current?.skipActivePill(),removeLastParam:()=>m.current?.removeLastParam(),clearNewParamId:()=>m.current?.clearNewParamId(),reset:()=>m.current?.reset(),recordSubmit:p=>m.current?.recordSubmit(p),selectOption:p=>m.current?.selectOption(p),selectProduct:p=>m.current?.selectProduct(p),setActiveDropdownIndex:p=>m.current?.setActiveDropdownIndex(p),clearHighlight:p=>m.current?.clearHighlight(p),showPreviousMonth:()=>m.current?.showPreviousMonth(),showNextMonth:()=>m.current?.showNextMonth(),handleFocus:()=>m.current?.setFocused(!0),handleBlur:()=>m.current?.setFocused(!1)});let f=Z.current,we=Nt(p=>{let q=p.target.value,je=q.length>0&&!p.nativeEvent?.isComposing&&q[0]!==q[0].toUpperCase()?q[0].toUpperCase()+q.slice(1):q;m.current?.handleTextChange(je)},[]),Ae=Nt(p=>{m.current?.handleKeyDown(p.nativeEvent)},[]),oe=m.current,c=ve??oi,ne=I!==void 0?I:c.text,xe=C!==void 0?C:c.completedParams,ue=c.actionableSuggestions,Ce=ue[0],me=oe?.listboxId??"",Pe=c.activeDropdownIndex>=0&&oe?`${me}-option-${c.activeDropdownIndex}`:void 0,B=c.editingParam,ge=c.editingIdentified,Se=B?{type:B.suggestionType,text:B.suggestionPlaceholder,required:!0,options:B.options}:ge?{type:ge.type,text:ai(ge.type),required:!0,options:[]}:null,Ne=c.dropdownSuggestion??Se??Ce,Ye=Se?[Se]:ue,Re=ti(c),Be=!oe||c.dropdownLoading;return{completedParams:xe,skippedParams:c.skippedParams,identifiedParams:c.identifiedParams,suggestionPills:ue,setActivePill:f.setActivePill,skipActivePill:f.skipActivePill,removeLastParam:f.removeLastParam,segments:c.segments,newParamId:c.newParamId,clearNewParamId:f.clearNewParamId,suggestions:c.suggestions,activeIndex:c.activeDropdownIndex,isReady:c.isReady,isLoading:Be,isFocused:c.isFocused,isDropdownOpen:c.isDropdownOpen,isActivePillSelected:c.isActivePillSelected,placeholderText:c.placeholderText,listboxId:me,error:c.error,products:c.products,customFields:c.customFields,selectProduct:f.selectProduct,handleTextChange:f.handleTextChange,handleKeyDown:f.handleKeyDown,setFocused:f.setFocused,editingParam:B,editingIdentified:ge,editingAnchor:c.editingAnchor,caretOffset:c.caretOffset,startEditingParam:f.startEditingParam,exitEditMode:f.exitEditMode,handleCaretAfterInput:f.handleCaretAfterInput,handleCaretMove:f.handleCaretMove,replaceEditingRange:f.replaceEditingRange,inputProps:{value:ne,placeholder:c.placeholderText||void 0,onChange:we,onKeyDown:Ae,onFocus:f.handleFocus,onBlur:f.handleBlur,role:"combobox","aria-expanded":c.isDropdownOpen,"aria-activedescendant":Pe,"aria-autocomplete":"list","aria-controls":me},reset:f.reset,recordSubmit:f.recordSubmit,dropdownProps:{suggestions:Ne?[{...Ne,options:c.dropdownOptions}]:[],activeIndex:c.activeDropdownIndex,onSelect:f.selectOption,onHighlight:f.setActiveDropdownIndex,onUnhighlight:f.clearHighlight,isOpen:c.isDropdownOpen,id:me,pills:Ye,activeSelected:c.isActivePillSelected,onPillClick:f.setActivePill,onSkip:f.skipActivePill,showSkipButton:(K??!0)&&!B&&!ge,showOptionIcons:w??!0,showOptionImages:E??!0,showOptionCounts:S??!0,skipDisabled:c.inSelectionAnimation,isLoading:Be,skeletonExiting:c.skeletonExiting,isInputEmpty:ne.trim().length===0,products:c.products,productImageFallback:T,onProductSelect:f.selectProduct,onProductFocusChange:f.setFocused,formatType:c.activeFormatType,dateView:c.dateView,selectedDateIso:Re.selectedIso,selectedDateRange:Re.selectedRange,dateRangeStart:Re.rangeStart,onPreviousMonth:f.showPreviousMonth,onNextMonth:f.showNextMonth,optionsPosition:v??"below"}}}import{extractPlainText as Bt,getCursorOffset as Ht,plainTextLength as ni,renderEditableContent as ri,setCursorOffset as Ft}from"@magicx-eng/ai-autocomplete-vanilla";import{useCallback as Y,useEffect as nt,useLayoutEffect as rt,useRef as Ee}from"react";var Qe;function si(){if(Qe!==void 0)return Qe;if(typeof document>"u")return!1;let e=document.createElement("div");return e.setAttribute("contenteditable","plaintext-only"),Qe=e.contentEditable==="plaintext-only",Qe}function Kt(e){let{segments:o,showChipIcons:t=!0,showChipImages:n=!0,newParamId:r,editingParam:i,editingIdentified:a,editingAnchor:l,caretOffset:x,placeholderText:b,isFocused:v,isDropdownOpen:P,listboxId:h,activeDescendantId:w,autoFocus:E,handleTextChange:S,handleKeyDown:K,handleCaretAfterInput:L,handleCaretMove:T,startEditingParam:A,replaceEditingRange:z,setFocused:I}=e,C=Ee(null),H=Ee(!1),X=Ee(""),le=Ee(""),J=Ee(null),de=Ee(0);J.current=x,nt(()=>{if(!E)return;let d=C.current;if(!d)return;document.activeElement===d?I(!0):d.focus();let g=d.ownerDocument??document,u=g.getSelection(),y=u&&u.rangeCount>0&&d.contains(u.anchorNode);if(u&&!y){let k=g.createRange();k.selectNodeContents(d),k.collapse(!0),u.removeAllRanges(),u.addRange(k)}},[E,I]),nt(()=>{let d=C.current;if(!d)return;let g=d.ownerDocument??document,u=()=>{let y=g.getSelection();if(!y||y.rangeCount===0||!y.anchorNode||!d.contains(y.anchorNode))return;let k=y.anchorNode,s=k.nodeType===Node.ELEMENT_NODE?k:k.parentElement,N=(y.isCollapsed?s?.closest("strong[data-param-id]"):null)?.dataset.paramId??null,Z=i?.id??a?.id??null;if(N&&N!==Z){A(N);return}performance.now()-de.current<50||T(Ht(d))};return g.addEventListener("selectionchange",u),()=>g.removeEventListener("selectionchange",u)},[i,a,A,T]),rt(()=>{let d=C.current;d&&ri({input:d,segments:o,newParamId:r,editingParamId:i?.id??null,placeholderText:b??"",isFocused:v,showChipIcons:t,showChipImages:n})},[o,r,i,b,v,t,n]),rt(()=>{let d=X.current,g=r??"";if(X.current=g,!g||g===d)return;let u=C.current;if(!u)return;u.focus();let y=J.current??ni(u);Ft(u,y)},[r]),rt(()=>{let d=le.current,g=i?.id??"";if(le.current=g,!g||g===d||l==null)return;let u=C.current;u&&Ft(u,l)},[i,l]);let G=Y(()=>{if(H.current)return;let d=C.current;if(!d)return;let g=Bt(d),y=g.length>0&&g[0]!==g[0].toUpperCase()?g[0].toUpperCase()+g.slice(1):g;S(y)},[S]),m=Y(()=>{de.current=performance.now(),G();let d=C.current;d&&L(Ht(d))},[G,L]);nt(()=>{let d=C.current;if(!d)return;let g=u=>{let y=u,k=y.inputType;if(k==="insertParagraph"||k==="insertLineBreak"||k==="insertFromDrop"){u.preventDefault();return}if(k.startsWith("insert")||k.startsWith("delete")){let s=k.startsWith("delete")?"":y.data??"";z(s)&&u.preventDefault()}};return d.addEventListener("beforeinput",g),()=>d.removeEventListener("beforeinput",g)},[z]);let ve=Y(()=>{H.current=!0},[]),ce=Y(()=>{H.current=!1,G()},[G]),pe=Y(d=>{d.preventDefault();let g=C.current;if(!g)return;let u=(d.clipboardData.getData("text/plain")??"").replace(/\r?\n/g," ");if(!u)return;let y=g.ownerDocument??document,k=y.getSelection();if(!k||k.rangeCount===0)return;let s=k.getRangeAt(0);if(!g.contains(s.startContainer))return;s.deleteContents();let M=y.createTextNode(u);s.insertNode(M),s.setStartAfter(M),s.collapse(!0),k.removeAllRanges(),k.addRange(s),G()},[G]),ee=Y(d=>K(d),[K]),he=Y(()=>I(!0),[I]),te=Y(()=>I(!1),[I]),j=Y(()=>C.current?.focus(),[]),_=Y(()=>C.current?.blur(),[]),ae=Y(()=>{let d=C.current;return d?Bt(d):""},[]),ie=si()?"plaintext-only":"true";return{inputRef:C,editorProps:{ref:C,contentEditable:ie,suppressContentEditableWarning:!0,tabIndex:0,role:"combobox","aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":h,"aria-expanded":P,"aria-activedescendant":w,spellCheck:!0,enterKeyHint:"send",onInput:m,onKeyDown:ee,onCompositionStart:ve,onCompositionEnd:ce,onPaste:pe,onFocus:he,onBlur:te},getPlainText:ae,focus:j,blur:_}}import{jsx as Te,jsxs as lt}from"react/jsx-runtime";function mi(e){return e!=="auto"?e:typeof window>"u"||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}var gi=li(function({onSubmit:o,onResult:t,onError:n,optionOverrides:r,maskCompletedText:i,className:a,apiConfig:l,additionalContext:x,visitorId:b,columns:v,pillPlacement:P="dropdown",mode:h="auto",optionsPosition:w="below",animations:E=!0,dropdownTrigger:S,closeDropdownOnBlur:K,showNonTappableOptions:L,showOptionIcons:T=!0,showChipIcons:A=!0,showChipImages:z=!0,showOptionImages:I=!0,showOptionCounts:C=!0,showSkipButton:H,showProducts:X,productsLayout:le,productImageFallback:J,autoFocus:de=!0,onFocus:G,onBlur:m,value:ve,completedParams:ce,onChange:pe,onParamsChange:ee,products:he,onProductSelect:te,submitButton:j,resetOnSubmit:_=!0},ae){let ie=Me(null),d=Me(null),g=Me(()=>{}),u=Me(null),y=Me(null);Gt(()=>{let R=ie.current;if(R)return u.current?u.current.setMode(h):u.current=new hi(R,h),()=>{u.current?.destroy(),u.current=null}},[h]);let k=st(R=>{let $=y.current?.current;$&&($.focus(),ui($,R))},[]),{completedParams:s,skippedParams:M,identifiedParams:N,isReady:Z,customFields:f,suggestionPills:we,setActivePill:Ae,skipActivePill:oe,segments:c,newParamId:ne,clearNewParamId:xe,placeholderText:ue,isFocused:Ce,isDropdownOpen:me,isActivePillSelected:Pe,isLoading:B,activeIndex:ge,listboxId:Se,handleTextChange:Ne,handleKeyDown:Ye,setFocused:Re,editingParam:Be,editingIdentified:p,editingAnchor:q,caretOffset:D,startEditingParam:je,handleCaretAfterInput:Wt,handleCaretMove:_t,replaceEditingRange:qt,dropdownProps:Ut,reset:He,recordSubmit:dt}=ot({onSubmit:R=>g.current(R),onResult:t,onError:n,optionOverrides:r,maskCompletedText:i,apiConfig:l,additionalContext:x,visitorId:b,columns:v,dropdownTrigger:S,optionsPosition:w,closeDropdownOnBlur:K,showNonTappableOptions:L,showOptionIcons:T,showOptionImages:I,showOptionCounts:C,showSkipButton:H,showProducts:X,onFocus:G,onBlur:m,value:ve,completedParams:ce,onChange:pe,onParamsChange:ee,products:he,onProductSelect:te,source:"full-sdk",setCursor:k});Gt(()=>{if(!ne)return;let R=window.setTimeout(()=>xe(),650);return()=>window.clearTimeout(R)},[ne,xe]);let Qt=ge>=0?`${Se}-option-${ge}`:void 0,{inputRef:Ze,editorProps:Yt,focus:Fe,blur:ct,getPlainText:pt}=Kt({segments:c,newParamId:ne,editingParam:Be,editingIdentified:p,editingAnchor:q,caretOffset:D,placeholderText:ue,isFocused:Ce,showChipIcons:A,showChipImages:z,isDropdownOpen:me,listboxId:Se,activeDescendantId:Qt,autoFocus:de,handleTextChange:Ne,handleKeyDown:Ye,handleCaretAfterInput:Wt,handleCaretMove:_t,startEditingParam:je,replaceEditingRange:qt,setFocused:Re});y.current=Ze,ci(()=>{let R=d.current,$=Ze.current;if(!R||!$)return;let Oe=()=>{let ut=R.firstElementChild;if(!ut)return;let Vt=ut.getBoundingClientRect(),Xt=$.getBoundingClientRect();Vt.top>=Xt.bottom-2?R.setAttribute("data-aia-pill-wrapped",""):R.removeAttribute("data-aia-pill-wrapped")};Oe();let ht=new ResizeObserver(Oe);return ht.observe($),()=>ht.disconnect()},[c,we.length,B,Ze]),di(ae,()=>({focus:Fe,blur:ct,reset:He,setMode:R=>u.current?.setMode(R),skipActivePill:oe}),[Fe,ct,He,oe]);let Ke=!!c.length||s.length>0,$e=st(R=>{if(!Ke)return;let $=pt(),Oe=pi($,s,M,{identifiedParams:N,isReady:Z,customFields:f});R&&dt(Oe),o(Oe),_&&He()},[dt,_,Ke,s,M,N,Z,f,o,He,pt]);g.current=()=>$e(!1);let jt=st(R=>{R.target?.closest("[data-aia-pill]")||Fe()},[Fe]),Zt=P==="inline",$t=P==="dropdown";return lt("div",{ref:ie,className:`magicx-aia ${ye.container} ${a??""}`,"data-pill-placement":P,"data-options-position":w,"data-animations":E?"on":"off","data-mode":mi(h),children:[Te(at,{...Ut,showPills:$t,productsLayout:le,productImageFallback:J}),lt("div",{className:ye.inputWrapper,"data-aia-input-wrapper":"",onClick:jt,children:[lt("div",{className:ye.editorArea,"data-aia-editor":"",children:[Te("div",{...Yt,className:ye.input,"data-aia-input":""}),Zt&&(B||we.length>0)&&Te("span",{ref:d,className:ye.pillListContainer,"data-aia-pill-list-container":"",children:Te(We,{pills:we,activePillIndex:0,activeSelected:Pe,onSelectPill:Ae,loading:B})})]}),j===null?null:j===void 0?Te(Ot,{disabled:!Ke,onClick:()=>$e(!0)}):Te("span",{"data-aia-submit":"","data-aia-submit-slot":"",className:ye.submitSlot,onClick:R=>{Ke&&(R.stopPropagation(),$e(!0))},children:j})]})]})});export{gi as AIAutocomplete,at as AIAutocompleteDropdown,cn as DATE_RANGE_META_END,pn as DATE_RANGE_META_START,hn as DEFAULT_OPTION_COUNT_UNIT,Cn as PRODUCT_PATH_PREFIX,Dn as WEEKDAY_LABELS,sn as buildSubmitResult,ln as cellDay,dn as cellIso,un as dateCellMarks,mn as formatDate,gn as formatDateRange,fn as formatOptionCount,bn as isoDate,vn as monthLabel,wn as optionCountLabel,xn as optionHasImage,yn as optionImageSrc,kn as optionLabel,Pn as parseDate,Sn as parseLooseDate,In as parseLooseDateRange,En as productFromMatchedItem,Tn as productsFromCustomFields,An as sanitizeOptionIconSvg,Rn as selectedRangeFor,ot as useAIAutocomplete,On as visibleDateRange,Ln as withSkippedParams};
|
|
2196
|
+
`,document.head.appendChild(e)}var Rt={submitButton:"aia-submitButton-otz7H"};import{jsx as ot}from"react/jsx-runtime";function Ot({disabled:e,onClick:o}){return ot("button",{type:"button","data-aia-submit":"",className:Rt.submitButton,disabled:e,onClick:t=>{t.stopPropagation(),o()},"aria-label":"Submit",children:ot("svg",{width:"18",height:"18",viewBox:"0 0 18 18",fill:"none",role:"img","aria-label":"Submit",children:ot("path",{d:"M9 14V4M9 4L4 9M9 4L14 9",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})}import{AIAutocomplete as ei,dateSelectionFor as ti,identifiedParamLabel as ai}from"@magicx-eng/ai-autocomplete-vanilla";import{useCallback as Nt,useEffect as Me,useRef as F,useState as ii}from"react";import{useRef as Dt}from"react";function Lt(e){let o=Dt(e);o.current=e;let t=Object.keys(e??{}).sort().join("\0"),n=Dt({key:"",overrides:void 0});if(n.current.key!==t){let r={};for(let i of Object.keys(e??{})){let a=(l,y,v)=>{let w=o.current?.[i];return w?w(l,y,v):[]};r[i]=a}n.current={key:t,overrides:e?r:void 0}}return{overrides:n.current.overrides,key:t}}import{useRef as Mt}from"react";function zt(e){let o=Mt(e);o.current=e;let t=Mt(null);t.current===null&&(t.current={fetch:(r,i)=>{let a=o.current;return a?a.fetch(r,i):Promise.reject(new Error("products config removed"))},transform:r=>o.current?.transform(r)??[],get limit(){return o.current?.limit}});let n=e!==void 0;return{config:n?t.current:void 0,enabled:n}}var oi={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 nt({onSubmit:e,onResult:o,onError:t,optionOverrides:n,maskCompletedText:r,apiConfig:i,additionalContext:a,visitorId:l,columns:y=2,dropdownTrigger:v,optionsPosition:w,closeDropdownOnBlur:P,showNonTappableOptions:u,showOptionIcons:x,showOptionImages:T,showOptionCounts:I,showSkipButton:K,showProducts:L,productImageFallback:A="image",onFocus:S,onBlur:M,value:E,completedParams:C,onChange:H,onParamsChange:X,products:le,onProductSelect:J,source:de,setCursor:G}){let g=F(null),[ve,ce]=ii(null),pe=F(e);pe.current=e;let ee=F(o);ee.current=o;let he=F(t);he.current=t;let te=F(H);te.current=H;let j=F(X);j.current=X;let _=F(S);_.current=S;let ae=F(M);ae.current=M;let ie=F(G);ie.current=G;let d=F(J);d.current=J;let m=F(l);m.current=l;let h=F(()=>{let p=m.current;return typeof p=="function"?p():p}).current,f=zt(le),k=Lt(n);Me(()=>{if(typeof document>"u")return;let p=new ei(document.createElement("div"),{renderMode:"headless",apiConfig:i,additionalContext:a,visitorId:h,optionOverrides:k.overrides,maskCompletedText:r,columns:y,dropdownTrigger:v,optionsPosition:w,closeDropdownOnBlur:P,showNonTappableOptions:u,showProducts:L,source:de,value:E,completedParams:C,onSubmit:(...D)=>pe.current?.(...D),onResult:(...D)=>ee.current?.(...D),onError:(...D)=>he.current?.(...D),onChange:(...D)=>te.current?.(...D),onParamsChange:(...D)=>j.current?.(...D),onFocus:()=>_.current?.(),onBlur:()=>ae.current?.(),onProductSelect:D=>d.current?.(D),setCursor:D=>ie.current?.(D),products:f.config});g.current=p,ce(p.getState());let q=p.subscribe(D=>ce(D));return()=>{q(),p.destroy(),g.current===p&&(g.current=null)}},[]),Me(()=>{E!==void 0&&g.current?.setValue(E)},[E]),Me(()=>{C!==void 0&&g.current?.setCompletedParams(C)},[C]);let s=JSON.stringify(i??null),z;try{z=JSON.stringify(a??null)}catch{z="[unstringifiable]"}Me(()=>{g.current?.update({apiConfig:i,additionalContext:a,optionOverrides:k.overrides,dropdownTrigger:v,optionsPosition:w,closeDropdownOnBlur:P,showNonTappableOptions:u,showProducts:L})},[s,z,k.key,v,w,P,u,L]);let N=F(!1);Me(()=>{if(!N.current){N.current=!0;return}g.current?.update({products:f.config})},[f.enabled]);let Z=F(null);Z.current===null&&(Z.current={handleTextChange:p=>g.current?.handleTextChange(p),handleKeyDown:p=>{let q="nativeEvent"in p?p.nativeEvent:p;g.current?.handleKeyDown(q)},setFocused:p=>g.current?.setFocused(p),startEditingParam:p=>g.current?.startEditingParam(p),exitEditMode:()=>g.current?.exitEditMode(),handleCaretAfterInput:p=>g.current?.handleCaretAfterInput(p),handleCaretMove:p=>g.current?.handleCaretMove(p),replaceEditingRange:p=>g.current?.replaceEditingRange(p)??!1,setActivePill:p=>g.current?.setActivePill(p),skipActivePill:()=>g.current?.skipActivePill(),removeLastParam:()=>g.current?.removeLastParam(),clearNewParamId:()=>g.current?.clearNewParamId(),reset:()=>g.current?.reset(),recordSubmit:p=>g.current?.recordSubmit(p),selectOption:p=>g.current?.selectOption(p),selectProduct:p=>g.current?.selectProduct(p),setActiveDropdownIndex:p=>g.current?.setActiveDropdownIndex(p),clearHighlight:p=>g.current?.clearHighlight(p),showPreviousMonth:()=>g.current?.showPreviousMonth(),showNextMonth:()=>g.current?.showNextMonth(),handleFocus:()=>g.current?.setFocused(!0),handleBlur:()=>g.current?.setFocused(!1)});let b=Z.current,we=Nt(p=>{let q=p.target.value,Ze=q.length>0&&!p.nativeEvent?.isComposing&&q[0]!==q[0].toUpperCase()?q[0].toUpperCase()+q.slice(1):q;g.current?.handleTextChange(Ze)},[]),Ae=Nt(p=>{g.current?.handleKeyDown(p.nativeEvent)},[]),oe=g.current,c=ve??oi,ne=E!==void 0?E:c.text,xe=C!==void 0?C:c.completedParams,ue=c.actionableSuggestions,Ce=ue[0],me=oe?.listboxId??"",Pe=c.activeDropdownIndex>=0&&oe?`${me}-option-${c.activeDropdownIndex}`:void 0,B=c.editingParam,ge=c.editingIdentified,Se=B?{type:B.suggestionType,text:B.suggestionPlaceholder,required:!0,options:B.options}:ge?{type:ge.type,text:ai(ge.type),required:!0,options:[]}:null,Ne=c.dropdownSuggestion??Se??Ce,je=Se?[Se]:ue,Re=ti(c),Be=!oe||c.dropdownLoading;return{completedParams:xe,skippedParams:c.skippedParams,identifiedParams:c.identifiedParams,suggestionPills:ue,setActivePill:b.setActivePill,skipActivePill:b.skipActivePill,removeLastParam:b.removeLastParam,segments:c.segments,newParamId:c.newParamId,clearNewParamId:b.clearNewParamId,suggestions:c.suggestions,activeIndex:c.activeDropdownIndex,isReady:c.isReady,isLoading:Be,isFocused:c.isFocused,isDropdownOpen:c.isDropdownOpen,isActivePillSelected:c.isActivePillSelected,placeholderText:c.placeholderText,listboxId:me,error:c.error,products:c.products,customFields:c.customFields,selectProduct:b.selectProduct,handleTextChange:b.handleTextChange,handleKeyDown:b.handleKeyDown,setFocused:b.setFocused,editingParam:B,editingIdentified:ge,editingAnchor:c.editingAnchor,caretOffset:c.caretOffset,startEditingParam:b.startEditingParam,exitEditMode:b.exitEditMode,handleCaretAfterInput:b.handleCaretAfterInput,handleCaretMove:b.handleCaretMove,replaceEditingRange:b.replaceEditingRange,inputProps:{value:ne,placeholder:c.placeholderText||void 0,onChange:we,onKeyDown:Ae,onFocus:b.handleFocus,onBlur:b.handleBlur,role:"combobox","aria-expanded":c.isDropdownOpen,"aria-activedescendant":Pe,"aria-autocomplete":"list","aria-controls":me},reset:b.reset,recordSubmit:b.recordSubmit,dropdownProps:{suggestions:Ne?[{...Ne,options:c.dropdownOptions}]:[],activeIndex:c.activeDropdownIndex,onSelect:b.selectOption,onHighlight:b.setActiveDropdownIndex,onUnhighlight:b.clearHighlight,isOpen:c.isDropdownOpen,id:me,pills:je,activeSelected:c.isActivePillSelected,onPillClick:b.setActivePill,onSkip:b.skipActivePill,showSkipButton:(K??!0)&&!B&&!ge,showOptionIcons:x??!0,showOptionImages:T??!0,showOptionCounts:I??!0,skipDisabled:c.inSelectionAnimation,isLoading:Be,skeletonExiting:c.skeletonExiting,isInputEmpty:ne.trim().length===0,products:c.products,productImageFallback:A,onProductSelect:b.selectProduct,onProductFocusChange:b.setFocused,formatType:c.activeFormatType,dateView:c.dateView,selectedDateIso:Re.selectedIso,selectedDateRange:Re.selectedRange,dateRangeStart:Re.rangeStart,onPreviousMonth:b.showPreviousMonth,onNextMonth:b.showNextMonth,optionsPosition:w??"below"}}}import{chipIdFromTap as ni,extractPlainText as Bt,getCursorOffset as Ht,keepCaretOnChip as ri,plainTextLength as si,renderEditableContent as li,setCursorOffset as Ft}from"@magicx-eng/ai-autocomplete-vanilla";import{useCallback as Y,useEffect as Qe,useLayoutEffect as rt,useRef as Ee}from"react";var Ye;function di(){if(Ye!==void 0)return Ye;if(typeof document>"u")return!1;let e=document.createElement("div");return e.setAttribute("contenteditable","plaintext-only"),Ye=e.contentEditable==="plaintext-only",Ye}function Kt(e){let{segments:o,showChipIcons:t=!0,showChipImages:n=!0,newParamId:r,editingParam:i,editingIdentified:a,editingAnchor:l,caretOffset:y,placeholderText:v,isFocused:w,isDropdownOpen:P,listboxId:u,activeDescendantId:x,autoFocus:T,handleTextChange:I,handleKeyDown:K,handleCaretAfterInput:L,handleCaretMove:A,startEditingParam:S,replaceEditingRange:M,setFocused:E}=e,C=Ee(null),H=Ee(!1),X=Ee(""),le=Ee(""),J=Ee(null),de=Ee(0);J.current=y,Qe(()=>{if(!T)return;let d=C.current;if(!d)return;document.activeElement===d?E(!0):d.focus();let m=d.ownerDocument??document,h=m.getSelection(),f=h&&h.rangeCount>0&&d.contains(h.anchorNode);if(h&&!f){let k=m.createRange();k.selectNodeContents(d),k.collapse(!0),h.removeAllRanges(),h.addRange(k)}},[T,E]),Qe(()=>{let d=C.current;if(!d)return;let m=d.ownerDocument??document,h=()=>{let f=m.getSelection();if(!f||f.rangeCount===0||!f.anchorNode||!d.contains(f.anchorNode))return;let k=f.anchorNode,s=k.nodeType===Node.ELEMENT_NODE?k:k.parentElement,N=(f.isCollapsed?s?.closest("strong[data-param-id]"):null)?.dataset.paramId??null,Z=i?.id??a?.id??null;if(N&&N!==Z){S(N);return}performance.now()-de.current<50||A(Ht(d))};return m.addEventListener("selectionchange",h),()=>m.removeEventListener("selectionchange",h)},[i,a,S,A]),Qe(()=>{let d=C.current;if(!d)return;let m=h=>{let f=ni(d,h.target);f&&(S(f),ri(d,f))};return d.addEventListener("click",m),()=>d.removeEventListener("click",m)},[S]),rt(()=>{let d=C.current;d&&li({input:d,segments:o,newParamId:r,editingParamId:i?.id??null,placeholderText:v??"",isFocused:w,showChipIcons:t,showChipImages:n})},[o,r,i,v,w,t,n]),rt(()=>{let d=X.current,m=r??"";if(X.current=m,!m||m===d)return;let h=C.current;if(!h)return;h.focus();let f=J.current??si(h);Ft(h,f)},[r]),rt(()=>{let d=le.current,m=i?.id??"";if(le.current=m,!m||m===d||l==null)return;let h=C.current;h&&Ft(h,l)},[i,l]);let G=Y(()=>{if(H.current)return;let d=C.current;if(!d)return;let m=Bt(d),f=m.length>0&&m[0]!==m[0].toUpperCase()?m[0].toUpperCase()+m.slice(1):m;I(f)},[I]),g=Y(()=>{de.current=performance.now(),G();let d=C.current;d&&L(Ht(d))},[G,L]);Qe(()=>{let d=C.current;if(!d)return;let m=h=>{let f=h,k=f.inputType;if(k==="insertParagraph"||k==="insertLineBreak"||k==="insertFromDrop"){h.preventDefault();return}if(k.startsWith("insert")||k.startsWith("delete")){let s=k.startsWith("delete")?"":f.data??"";M(s)&&h.preventDefault()}};return d.addEventListener("beforeinput",m),()=>d.removeEventListener("beforeinput",m)},[M]);let ve=Y(()=>{H.current=!0},[]),ce=Y(()=>{H.current=!1,G()},[G]),pe=Y(d=>{d.preventDefault();let m=C.current;if(!m)return;let h=(d.clipboardData.getData("text/plain")??"").replace(/\r?\n/g," ");if(!h)return;let f=m.ownerDocument??document,k=f.getSelection();if(!k||k.rangeCount===0)return;let s=k.getRangeAt(0);if(!m.contains(s.startContainer))return;s.deleteContents();let z=f.createTextNode(h);s.insertNode(z),s.setStartAfter(z),s.collapse(!0),k.removeAllRanges(),k.addRange(s),G()},[G]),ee=Y(d=>K(d),[K]),he=Y(()=>E(!0),[E]),te=Y(()=>E(!1),[E]),j=Y(()=>C.current?.focus(),[]),_=Y(()=>C.current?.blur(),[]),ae=Y(()=>{let d=C.current;return d?Bt(d):""},[]),ie=di()?"plaintext-only":"true";return{inputRef:C,editorProps:{ref:C,contentEditable:ie,suppressContentEditableWarning:!0,tabIndex:0,role:"combobox","aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":u,"aria-expanded":P,"aria-activedescendant":x,spellCheck:!0,enterKeyHint:"send",onInput:g,onKeyDown:ee,onCompositionStart:ve,onCompositionEnd:ce,onPaste:pe,onFocus:he,onBlur:te},getPlainText:ae,focus:j,blur:_}}import{jsx as Te,jsxs as lt}from"react/jsx-runtime";function fi(e){return e!=="auto"?e:typeof window>"u"||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}var bi=ci(function({onSubmit:o,onResult:t,onError:n,optionOverrides:r,maskCompletedText:i,className:a,apiConfig:l,additionalContext:y,visitorId:v,columns:w,pillPlacement:P="dropdown",mode:u="auto",optionsPosition:x="below",animations:T=!0,dropdownTrigger:I,closeDropdownOnBlur:K,showNonTappableOptions:L,showOptionIcons:A=!0,showChipIcons:S=!0,showChipImages:M=!0,showOptionImages:E=!0,showOptionCounts:C=!0,showSkipButton:H,showProducts:X,productsLayout:le,productImageFallback:J,autoFocus:de=!0,onFocus:G,onBlur:g,value:ve,completedParams:ce,onChange:pe,onParamsChange:ee,products:he,onProductSelect:te,submitButton:j,resetOnSubmit:_=!0},ae){let ie=ze(null),d=ze(null),m=ze(()=>{}),h=ze(null),f=ze(null);Gt(()=>{let R=ie.current;if(R)return h.current?h.current.setMode(u):h.current=new mi(R,u),()=>{h.current?.destroy(),h.current=null}},[u]);let k=st(R=>{let $=f.current?.current;$&&($.focus(),gi($,R))},[]),{completedParams:s,skippedParams:z,identifiedParams:N,isReady:Z,customFields:b,suggestionPills:we,setActivePill:Ae,skipActivePill:oe,segments:c,newParamId:ne,clearNewParamId:xe,placeholderText:ue,isFocused:Ce,isDropdownOpen:me,isActivePillSelected:Pe,isLoading:B,activeIndex:ge,listboxId:Se,handleTextChange:Ne,handleKeyDown:je,setFocused:Re,editingParam:Be,editingIdentified:p,editingAnchor:q,caretOffset:D,startEditingParam:Ze,handleCaretAfterInput:Wt,handleCaretMove:_t,replaceEditingRange:qt,dropdownProps:Ut,reset:He,recordSubmit:dt}=nt({onSubmit:R=>m.current(R),onResult:t,onError:n,optionOverrides:r,maskCompletedText:i,apiConfig:l,additionalContext:y,visitorId:v,columns:w,dropdownTrigger:I,optionsPosition:x,closeDropdownOnBlur:K,showNonTappableOptions:L,showOptionIcons:A,showOptionImages:E,showOptionCounts:C,showSkipButton:H,showProducts:X,onFocus:G,onBlur:g,value:ve,completedParams:ce,onChange:pe,onParamsChange:ee,products:he,onProductSelect:te,source:"full-sdk",setCursor:k});Gt(()=>{if(!ne)return;let R=window.setTimeout(()=>xe(),650);return()=>window.clearTimeout(R)},[ne,xe]);let Qt=ge>=0?`${Se}-option-${ge}`:void 0,{inputRef:$e,editorProps:Yt,focus:Fe,blur:ct,getPlainText:pt}=Kt({segments:c,newParamId:ne,editingParam:Be,editingIdentified:p,editingAnchor:q,caretOffset:D,placeholderText:ue,isFocused:Ce,showChipIcons:S,showChipImages:M,isDropdownOpen:me,listboxId:Se,activeDescendantId:Qt,autoFocus:de,handleTextChange:Ne,handleKeyDown:je,handleCaretAfterInput:Wt,handleCaretMove:_t,startEditingParam:Ze,replaceEditingRange:qt,setFocused:Re});f.current=$e,hi(()=>{let R=d.current,$=$e.current;if(!R||!$)return;let Oe=()=>{let ut=R.firstElementChild;if(!ut)return;let Vt=ut.getBoundingClientRect(),Xt=$.getBoundingClientRect();Vt.top>=Xt.bottom-2?R.setAttribute("data-aia-pill-wrapped",""):R.removeAttribute("data-aia-pill-wrapped")};Oe();let ht=new ResizeObserver(Oe);return ht.observe($),()=>ht.disconnect()},[c,we.length,B,$e]),pi(ae,()=>({focus:Fe,blur:ct,reset:He,setMode:R=>h.current?.setMode(R),skipActivePill:oe}),[Fe,ct,He,oe]);let Ke=!!c.length||s.length>0,Ve=st(R=>{if(!Ke)return;let $=pt(),Oe=ui($,s,z,{identifiedParams:N,isReady:Z,customFields:b});R&&dt(Oe),o(Oe),_&&He()},[dt,_,Ke,s,z,N,Z,b,o,He,pt]);m.current=()=>Ve(!1);let jt=st(R=>{R.target?.closest("[data-aia-pill]")||Fe()},[Fe]),Zt=P==="inline",$t=P==="dropdown";return lt("div",{ref:ie,className:`magicx-aia ${ye.container} ${a??""}`,"data-pill-placement":P,"data-options-position":x,"data-animations":T?"on":"off","data-mode":fi(u),children:[Te(it,{...Ut,showPills:$t,productsLayout:le,productImageFallback:J}),lt("div",{className:ye.inputWrapper,"data-aia-input-wrapper":"",onClick:jt,children:[lt("div",{className:ye.editorArea,"data-aia-editor":"",children:[Te("div",{...Yt,className:ye.input,"data-aia-input":""}),Zt&&(B||we.length>0)&&Te("span",{ref:d,className:ye.pillListContainer,"data-aia-pill-list-container":"",children:Te(We,{pills:we,activePillIndex:0,activeSelected:Pe,onSelectPill:Ae,loading:B})})]}),j===null?null:j===void 0?Te(Ot,{disabled:!Ke,onClick:()=>Ve(!0)}):Te("span",{"data-aia-submit":"","data-aia-submit-slot":"",className:ye.submitSlot,onClick:R=>{Ke&&(R.stopPropagation(),Ve(!0))},children:j})]})]})});export{bi as AIAutocomplete,it as AIAutocompleteDropdown,hn as DATE_RANGE_META_END,un as DATE_RANGE_META_START,mn as DEFAULT_OPTION_COUNT_UNIT,Sn as PRODUCT_PATH_PREFIX,Mn as WEEKDAY_LABELS,dn as buildSubmitResult,cn as cellDay,pn as cellIso,gn as dateCellMarks,fn as formatDate,bn as formatDateRange,vn as formatOptionCount,wn as isoDate,xn as monthLabel,yn as optionCountLabel,kn as optionHasImage,Cn as optionImageSrc,Pn as optionLabel,In as parseDate,En as parseLooseDate,Tn as parseLooseDateRange,An as productFromMatchedItem,Rn as productsFromCustomFields,On as sanitizeOptionIconSvg,Dn as selectedRangeFor,nt as useAIAutocomplete,Ln as visibleDateRange,zn as withSkippedParams};
|
|
2197
2197
|
//# sourceMappingURL=index.mjs.map
|