@magicx-eng/ai-autocomplete-react 0.5.0 → 0.5.2
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.d.mts +1 -3
- package/dist/index.d.ts +1 -3
- package/dist/index.js +14 -14
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +14 -14
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{forwardRef as zt,useCallback as
|
|
1
|
+
import{forwardRef as zt,useCallback as Te,useEffect as at,useImperativeHandle as Ft,useLayoutEffect as Ot,useRef as ce}from"react";if(typeof document<"u"&&!document.getElementById("ac-style-67791514")){let e=document.createElement("style");e.id="ac-style-67791514",e.textContent=`.AIAutocomplete-module_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
|
|
@@ -8,7 +8,7 @@ import{forwardRef as zt,useCallback as Le,useEffect as at,useImperativeHandle as
|
|
|
8
8
|
}
|
|
9
9
|
|
|
10
10
|
.AIAutocomplete-module_inputWrapper_FLq1b {
|
|
11
|
-
padding: 12px
|
|
11
|
+
padding: 12px 16px;
|
|
12
12
|
border: 1px solid var(--aia-border, #b0b0b0);
|
|
13
13
|
border-radius: 20px;
|
|
14
14
|
background: var(--aia-surface, #ffffff);
|
|
@@ -414,7 +414,7 @@ import{forwardRef as zt,useCallback as Le,useEffect as at,useImperativeHandle as
|
|
|
414
414
|
justify-content: space-around;
|
|
415
415
|
}
|
|
416
416
|
}
|
|
417
|
-
`,document.head.appendChild(e)}import{jsx as
|
|
417
|
+
`,document.head.appendChild(e)}import{jsx as He}from"react/jsx-runtime";function le({gap:e,align:d="center",justify:n="start",noWrap:p=!1,inline:i=!1,className:t,children:s,...l}){let f=e?{"--aia-cluster-gap":e}:void 0,x={className:t?`aia-cluster ${t}`:"aia-cluster","data-align":d,"data-justify":n,"data-nowrap":p||void 0,"data-inline":i||void 0,style:f,...l};return i?He("span",{...x,children:s}):He("div",{...x,children:s})}if(typeof document<"u"&&!document.getElementById("ac-style-56b0c577")){let e=document.createElement("style");e.id="ac-style-56b0c577",e.textContent=`/* The footer adds its own 8px horizontal inset (no vertical padding \u2014 the 8px
|
|
418
418
|
section gap above and its own 8px gap provide the vertical rhythm), so the
|
|
419
419
|
divider spans the full footer width yet still stays clear of the dropdown's
|
|
420
420
|
rounded edges. */
|
|
@@ -487,11 +487,11 @@ import{forwardRef as zt,useCallback as Le,useEffect as at,useImperativeHandle as
|
|
|
487
487
|
line-height: 18px;
|
|
488
488
|
color: var(--aia-footer-brand-color, #b0b0b0);
|
|
489
489
|
}
|
|
490
|
-
`,document.head.appendChild(e)}var
|
|
490
|
+
`,document.head.appendChild(e)}var U={footer:"DropdownFooter-module_footer_qQQ7x",divider:"DropdownFooter-module_divider_FlX4C",hintGroup:"DropdownFooter-module_hintGroup_ZzbPf",brandLink:"DropdownFooter-module_brandLink_r4f3R",key:"DropdownFooter-module_key_Bz1H-",hint:"DropdownFooter-module_hint_GKEOH",brand:"DropdownFooter-module_brand_Al-lR",badge:"DropdownFooter-module_badge_Fk9vg"};import{jsx as de,jsxs as be}from"react/jsx-runtime";function Ne({isOptionHighlighted:e=!1,isInputEmpty:d=!1}){let{key:n,hint:p}=ut(e,d);return be("footer",{className:U.footer,"data-aia-footer":"",children:[de("div",{className:U.divider}),be(le,{justify:"between",noWrap:!0,children:[be(le,{gap:"5px",className:U.hintGroup,children:[de("kbd",{className:U.key,children:n}),de("span",{className:U.hint,children:p})]}),be("a",{className:U.brandLink,href:"https://ai-autocomplete.com",target:"_blank",rel:"noopener noreferrer",children:[de("span",{className:U.brand,children:"AI"}),de("span",{className:U.badge,children:"Autocomplete"})]})]})]})}if(typeof document<"u"&&!document.getElementById("ac-style-04fef8d6")){let e=document.createElement("style");e.id="ac-style-04fef8d6",e.textContent=`.Pill-module_pill_3Rkw- {
|
|
491
491
|
display: inline-flex;
|
|
492
492
|
align-items: center;
|
|
493
493
|
justify-content: center;
|
|
494
|
-
padding: 7px
|
|
494
|
+
padding: 7px 10px;
|
|
495
495
|
border: none;
|
|
496
496
|
border-radius: 999px;
|
|
497
497
|
background: rgba(49, 50, 85, 0.25);
|
|
@@ -539,7 +539,7 @@ import{forwardRef as zt,useCallback as Le,useEffect as at,useImperativeHandle as
|
|
|
539
539
|
opacity: 0;
|
|
540
540
|
}
|
|
541
541
|
}
|
|
542
|
-
`,document.head.appendChild(e)}var
|
|
542
|
+
`,document.head.appendChild(e)}var Q={pill:"Pill-module_pill_3Rkw-",fadeIn:"Pill-module_fadeIn_Bbqtz",rounded:"Pill-module_rounded_6WMps",skeleton:"Pill-module_skeleton_-u9-j",skeletonPulse:"Pill-module_skeletonPulse_xHh-7"};import{jsx as mt}from"react/jsx-runtime";var Ae={selected:1,first:.7,next:.4,last:.2};function Ke({label:e,state:d,selected:n,rounded:p,loading:i,onClick:t}){let s=[Q.pill,p?Q.rounded:"",n&&!i?Q.active:"",i?Q.skeleton:""].filter(Boolean).join(" ");return mt("button",{type:"button","data-aia-pill":"","data-aia-loading":i?"":void 0,tabIndex:-1,contentEditable:!1,suppressContentEditableWarning:!0,className:s,style:{opacity:Ae[d]},onMouseDown:l=>l.preventDefault(),onClick:i?void 0:t,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=`.PillList-module_list_qvLqO {
|
|
543
543
|
position: relative;
|
|
544
544
|
z-index: 1;
|
|
545
545
|
pointer-events: auto;
|
|
@@ -549,7 +549,7 @@ import{forwardRef as zt,useCallback as Le,useEffect as at,useImperativeHandle as
|
|
|
549
549
|
align-items: center;
|
|
550
550
|
vertical-align: middle;
|
|
551
551
|
}
|
|
552
|
-
`,document.head.appendChild(e)}var Pe={list:"PillList-module_list_qvLqO"};import{jsx as xe}from"react/jsx-runtime";var gt=[125,69];function We(e){return e===0?"first":e===1?"next":"last"}function ve({pills:e,activePillIndex:d,onSelectPill:
|
|
552
|
+
`,document.head.appendChild(e)}var Pe={list:"PillList-module_list_qvLqO"};import{jsx as xe}from"react/jsx-runtime";var gt=[125,69];function We(e){return e===0?"first":e===1?"next":"last"}function ve({pills:e,activePillIndex:d,onSelectPill:n,activeSelected:p,rounded:i,loading:t}){return t&&e.length===0?xe("span",{className:Pe.list,"data-aia-pill-list-loading":"",children:gt.map((s,l)=>xe("span",{"data-aia-pill-skeleton":"",className:`${Q.pill} ${i?Q.rounded:""} ${Q.skeleton}`,style:{width:s,opacity:Ae[We(l)]}},`skel-${s}`))}):xe("span",{className:Pe.list,"data-aia-pill-list-loading":t?"":void 0,children:e.map((s,l)=>{let f=!!p&&l===d;return xe(Ke,{label:s.text,state:f?"selected":We(l),selected:f,rounded:i,loading:t,onClick:()=>n(l)},`${s.type}-${s.text}`)})})}import{useEffect as ft,useLayoutEffect as ht,useRef as bt,useState as xt}from"react";if(typeof document<"u"&&!document.getElementById("ac-style-948e58da")){let e=document.createElement("style");e.id="ac-style-948e58da",e.textContent=`@layer layout {
|
|
553
553
|
.aia-grid {
|
|
554
554
|
display: grid;
|
|
555
555
|
grid-template-columns: repeat(
|
|
@@ -566,7 +566,7 @@ import{forwardRef as zt,useCallback as Le,useEffect as at,useImperativeHandle as
|
|
|
566
566
|
align-content: start;
|
|
567
567
|
justify-content: start;
|
|
568
568
|
padding: var(--aia-grid-scroll-pad, 0);
|
|
569
|
-
max-height: var(--aia-grid-max-height,
|
|
569
|
+
max-height: var(--aia-grid-max-height, 120px);
|
|
570
570
|
overflow-y: auto;
|
|
571
571
|
scrollbar-width: thin;
|
|
572
572
|
scrollbar-color: var(--aia-scrollbar-thumb, rgba(0, 0, 0, 0.3)) transparent;
|
|
@@ -592,7 +592,7 @@ import{forwardRef as zt,useCallback as Le,useEffect as at,useImperativeHandle as
|
|
|
592
592
|
left: 0;
|
|
593
593
|
right: 0;
|
|
594
594
|
bottom: 0;
|
|
595
|
-
height:
|
|
595
|
+
height: 30%;
|
|
596
596
|
pointer-events: none;
|
|
597
597
|
opacity: 0;
|
|
598
598
|
transition: opacity 150ms ease-out;
|
|
@@ -603,7 +603,7 @@ import{forwardRef as zt,useCallback as Le,useEffect as at,useImperativeHandle as
|
|
|
603
603
|
opacity: 1;
|
|
604
604
|
}
|
|
605
605
|
}
|
|
606
|
-
`,document.head.appendChild(e)}import{jsx as Ge}from"react/jsx-runtime";function je({min:e="16rem",max:d,gap:
|
|
606
|
+
`,document.head.appendChild(e)}import{jsx as Ge}from"react/jsx-runtime";function je({min:e="16rem",max:d,gap:n,scroll:p=!1,maxHeight:i,fade:t=!1,className:s,children:l,...f}){let x=bt(null),[R,I]=xt(!1);ft(()=>{if(!t)return;let v=x.current;if(!v)return;let C=()=>{I(v.scrollHeight-v.scrollTop-v.clientHeight>1)};v.addEventListener("scroll",C,{passive:!0});let z=new ResizeObserver(C);return z.observe(v),()=>{v.removeEventListener("scroll",C),z.disconnect()}},[t]),ht(()=>{let v=x.current;!t||!v||I(v.scrollHeight-v.scrollTop-v.clientHeight>1)},[t,l]);let k={"--aia-grid-min":e};d&&(k["--aia-grid-max"]=d),n&&(k["--aia-grid-gap"]=n),i&&(k["--aia-grid-max-height"]=i);let S=Ge("div",{ref:x,className:!t&&s?`aia-grid ${s}`:"aia-grid","data-scroll":p||void 0,style:k,...t?{}:f,children:l});return t?Ge("div",{className:s?`aia-grid-fade ${s}`:"aia-grid-fade","data-fade":R?"":void 0,...f,children:S}):S}import{useEffect as vt,useRef as wt,useState as yt}from"react";if(typeof document<"u"&&!document.getElementById("ac-style-82820da7")){let e=document.createElement("style");e.id="ac-style-82820da7",e.textContent=`.SuggestionItem-module_item_d4vpD {
|
|
607
607
|
position: relative;
|
|
608
608
|
overflow: visible;
|
|
609
609
|
display: flex;
|
|
@@ -650,7 +650,7 @@ import{forwardRef as zt,useCallback as Le,useEffect as at,useImperativeHandle as
|
|
|
650
650
|
.SuggestionItem-module_highlighted_Hb0SU {
|
|
651
651
|
color: var(--aia-option-color-selected, var(--aia-color-text-default, #fff));
|
|
652
652
|
background: var(--aia-option-bg, transparent);
|
|
653
|
-
font-weight:
|
|
653
|
+
font-weight: 500;
|
|
654
654
|
}
|
|
655
655
|
|
|
656
656
|
.SuggestionItem-module_tag_e3Fwe {
|
|
@@ -953,7 +953,7 @@ import{forwardRef as zt,useCallback as Le,useEffect as at,useImperativeHandle as
|
|
|
953
953
|
filter: brightness(0.55);
|
|
954
954
|
}
|
|
955
955
|
}
|
|
956
|
-
`,document.head.appendChild(e)}var
|
|
956
|
+
`,document.head.appendChild(e)}var H={item:"SuggestionItem-module_item_d4vpD",fadeIn:"SuggestionItem-module_fadeIn_I8u35",content:"SuggestionItem-module_content_T-Qba",tappable:"SuggestionItem-module_tappable_70KcX",nonTappable:"SuggestionItem-module_nonTappable_xSZM-",highlighted:"SuggestionItem-module_highlighted_Hb0SU",tag:"SuggestionItem-module_tag_e3Fwe",pressed:"SuggestionItem-module_pressed_98o-r",glassFade:"SuggestionItem-module_glassFade_oyiSj",tapDown:"SuggestionItem-module_tapDown_G3WGz",streaks:"SuggestionItem-module_streaks_d9PEB",streaksVert:"SuggestionItem-module_streaksVert_ERlV1",streakHorizRight:"SuggestionItem-module_streakHorizRight_aboGz",streakHorizLeft:"SuggestionItem-module_streakHorizLeft_BreWJ",streakVertUp:"SuggestionItem-module_streakVertUp_to1GD",streakVertDown:"SuggestionItem-module_streakVertDown_OrcLh",skeletonPulse:"SuggestionItem-module_skeletonPulse_plvdD",text:"SuggestionItem-module_text_yqoh9"};import{jsx as we,jsxs as Ve}from"react/jsx-runtime";function qe({option:e,isHighlighted:d,onSelect:n,onHighlight:p,id:i,loading:t}){let[s,l]=yt(!1),f=wt(void 0);vt(()=>()=>clearTimeout(f.current),[]);let x=()=>{t||!e.is_tappable||s||(l(!0),n(e),clearTimeout(f.current),f.current=setTimeout(()=>l(!1),500))},R=[H.item,d&&!t?H.highlighted:"",e.is_tappable?H.tappable:H.nonTappable,s?H.pressed:""].filter(Boolean).join(" ");return Ve("div",{id:i,role:"option","data-aia-option":"","data-aia-loading":t?"":void 0,"aria-selected":d,className:R,tabIndex:t||!e.is_tappable?-1:0,onClick:x,onKeyDown:I=>{!t&&e.is_tappable&&(I.key==="Enter"||I.key===" ")&&(I.preventDefault(),x())},onMouseEnter:!t&&e.is_tappable?p:void 0,children:[we("div",{className:H.streaks}),we("div",{className:H.streaksVert}),Ve("span",{className:H.content,children:[we("span",{className:H.text,children:e.icon?`${e.icon} ${e.text}`:e.text}),e.tag&&we("span",{className:H.tag,children:e.tag})]})]})}import{jsx as $e}from"react/jsx-runtime";function Ue({options:e,activeIndex:d,onSelect:n,onHighlight:p,listboxId:i,loading:t}){return $e(je,{min:"250px",max:"250px",gap:"0",scroll:!0,fade:!0,children:e.map((s,l)=>$e(qe,{option:s,isHighlighted:l===d,onSelect:n,onHighlight:()=>p(l),id:`${i}-option-${l}`,loading:t},s.text))})}if(typeof document<"u"&&!document.getElementById("ac-style-8414cd5f")){let e=document.createElement("style");e.id="ac-style-8414cd5f",e.textContent=`@layer layout {
|
|
957
957
|
.aia-stack {
|
|
958
958
|
display: flex;
|
|
959
959
|
flex-direction: column;
|
|
@@ -970,7 +970,7 @@ import{forwardRef as zt,useCallback as Le,useEffect as at,useImperativeHandle as
|
|
|
970
970
|
}
|
|
971
971
|
/* data-align="stretch" is the flex default \u2014 no rule needed. */
|
|
972
972
|
}
|
|
973
|
-
`,document.head.appendChild(e)}import{jsx as _t}from"react/jsx-runtime";function Qe({space:e,align:d="stretch",className:
|
|
973
|
+
`,document.head.appendChild(e)}import{jsx as _t}from"react/jsx-runtime";function Qe({space:e,align:d="stretch",className:n,children:p,...i}){let t=e?{"--aia-stack-space":e}:void 0;return _t("div",{className:n?`aia-stack ${n}`:"aia-stack","data-align":d,style:t,...i,children:p})}import{jsx as oe,jsxs as Ct}from"react/jsx-runtime";var At=[159,119,164];function Pt(e){let d=()=>typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-color-scheme: dark)").matches,[n,p]=St(d);if(kt(()=>{if(e!=="auto"||typeof window>"u"||typeof window.matchMedia!="function")return;let i=window.matchMedia("(prefers-color-scheme: dark)"),t=()=>p(i.matches);return i.addEventListener("change",t),()=>i.removeEventListener("change",t)},[e]),e!==void 0)return e==="auto"?n?"dark":"light":e}function Ce({suggestions:e,activeIndex:d,onSelect:n,onHighlight:p,isOpen:i,id:t,className:s,pills:l,onPillClick:f,showPills:x=!0,activeSelected:R=!1,isLoading:I=!1,isInputEmpty:k=!1,optionsPosition:S="below",mode:v}){let C=Pt(v),z=C!==void 0,V=e[0]?.options??[],r=!!(l&&l.length>0&&f),w=i&&(V.length>0||x&&r||I),T={suggestions:e,activeIndex:d,pills:l,showPills:x,activeSelected:R,isLoading:I,isInputEmpty:k},W=It(T);w&&(W.current=T);let m=w?T:W.current,B=m.suggestions[0]?.options??[],E=m.activeIndex>=0&&!!B[m.activeIndex]?.is_tappable,G=!!(m.pills&&m.pills.length>0&&f),L=m.showPills&&G,J=m.showPills&&!G&&m.isLoading,q=L||J,F=B.length>0,O=m.isLoading&&!F;return oe("div",{id:t,role:"listbox","data-aia-dropdown":"","data-options-position":S,"data-mode":C,"data-aia-loading":m.isLoading?"":void 0,className:`${z?"magicx-aia ":""}${ne.dropdown} ${w?ne.visible:""} ${s??""}`,onMouseDown:g=>g.preventDefault(),children:Ct(Qe,{space:"8px",children:[q&&oe(le,{noWrap:!0,className:ne.pillBar,"data-aia-pillbar":"",children:oe(ve,{pills:m.pills??[],activePillIndex:0,activeSelected:m.activeSelected,onSelectPill:f??(()=>{}),rounded:!0,loading:m.isLoading})}),F&&oe(Ue,{options:B,activeIndex:m.activeIndex,onSelect:n,onHighlight:p,listboxId:t,loading:m.isLoading}),O&&oe("div",{className:ne.skeletonBars,"data-aia-skeleton-bars":"",children:At.map(g=>oe("span",{className:ne.skeletonBar,style:{width:g}},`bar-${g}`))}),oe(Ne,{isOptionHighlighted:E,isInputEmpty:m.isInputEmpty})]})})}import{buildQuery as Mt,ModeController as Ht,setCursorOffset as Nt}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=`.SubmitButton-module_submitButton_otz7H {
|
|
974
974
|
flex-shrink: 0;
|
|
975
975
|
width: 32px;
|
|
976
976
|
height: 32px;
|
|
@@ -994,5 +994,5 @@ import{forwardRef as zt,useCallback as Le,useEffect as at,useImperativeHandle as
|
|
|
994
994
|
opacity: 0.4;
|
|
995
995
|
cursor: default;
|
|
996
996
|
}
|
|
997
|
-
`,document.head.appendChild(e)}var Xe={submitButton:"SubmitButton-module_submitButton_otz7H"};import{jsx as Ee}from"react/jsx-runtime";function Je({disabled:e,onClick:d}){return Ee("button",{type:"button","data-aia-submit":"",className:Xe.submitButton,disabled:e,onClick:i=>{i.stopPropagation(),d()},"aria-label":"Submit",children:Ee("svg",{width:"18",height:"18",viewBox:"0 0 18 18",fill:"none",role:"img","aria-label":"Submit",children:Ee("path",{d:"M9 14V4M9 4L4 9M9 4L14 9",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})}import{AIAutocomplete as Et}from"@magicx-eng/ai-autocomplete-vanilla";import{useCallback as Ze,useEffect as ye,useRef as K,useState as Dt}from"react";var Rt={text:"",completedParams:[],suggestions:[],activeDropdownIndex:-1,newParamId:null,isLoading:!0,isReady:!1,error:null,segments:[],actionableSuggestions:[],filteredOptions:[],placeholderText:"",isDropdownOpen:!1,isActivePillSelected:!1,filterBase:0,filterInProgress:!1,pillTapped:!1,skipNextFetch:!1,lastRawQuery:"",isFocused:!1,editingParam:null,editingAnchor:null,editingTail:null,caretOffset:null,inSelectionAnimation:!1,hasTabbedToHighlight:!1};function De({onSubmit:e,onError:d,optionOverrides:i,maskCompletedText:p,apiConfig:o,columns:t=2,dropdownTrigger:s,optionsPosition:l,closeDropdownOnBlur:m,showNonTappableOptions:b,onFocus:R,onBlur:I,value:k,completedParams:S,onChange:v,onParamsChange:T,source:L,setCursor:V}){let r=K(null),[_,B]=Dt(null),O=K(e);O.current=e;let z=K(d);z.current=d;let g=K(v);g.current=v;let q=K(T);q.current=T;let A=K(R);A.current=R;let $=K(I);$.current=I;let E=K(V);E.current=V,ye(()=>{if(typeof document>"u")return;let n=new Et(document.createElement("div"),{renderMode:"headless",apiConfig:o,optionOverrides:i,maskCompletedText:p,columns:t,dropdownTrigger:s,optionsPosition:l,closeDropdownOnBlur:m,showNonTappableOptions:b,source:L,value:k,completedParams:S,onSubmit:(...P)=>O.current?.(...P),onError:(...P)=>z.current?.(...P),onChange:(...P)=>g.current?.(...P),onParamsChange:(...P)=>q.current?.(...P),onFocus:()=>A.current?.(),onBlur:()=>$.current?.(),setCursor:P=>E.current?.(P)});r.current=n,B(n.getState());let C=n.subscribe(P=>B(P));return()=>{C(),n.destroy(),r.current===n&&(r.current=null)}},[]),ye(()=>{k!==void 0&&r.current?.setValue(k)},[k]),ye(()=>{S!==void 0&&r.current?.setCompletedParams(S)},[S]);let Z=JSON.stringify(o??null),U=K(i),G=K(0);if(i!==U.current){let n=U.current,C=i,P=Object.keys(n??{}),ae=Object.keys(C??{});(P.length!==ae.length||ae.some(se=>!n?.[se]||C[se]!==n[se]))&&G.current++,U.current=i}ye(()=>{r.current?.update({apiConfig:o,optionOverrides:i,dropdownTrigger:s,optionsPosition:l,closeDropdownOnBlur:m,showNonTappableOptions:b})},[Z,G.current,s,l,m,b]);let F=K(null);F.current===null&&(F.current={handleTextChange:n=>r.current?.handleTextChange(n),handleKeyDown:n=>{let C="nativeEvent"in n?n.nativeEvent:n;r.current?.handleKeyDown(C)},setFocused:n=>r.current?.setFocused(n),startEditingParam:n=>r.current?.startEditingParam(n),exitEditMode:()=>r.current?.exitEditMode(),handleCaretAfterInput:n=>r.current?.handleCaretAfterInput(n),handleCaretMove:n=>r.current?.handleCaretMove(n),replaceEditingRange:n=>r.current?.replaceEditingRange(n)??!1,setActivePill:n=>r.current?.setActivePill(n),removeLastParam:()=>r.current?.removeLastParam(),clearNewParamId:()=>r.current?.clearNewParamId(),reset:()=>r.current?.reset(),selectOption:n=>r.current?.selectOption(n),setActiveDropdownIndex:n=>r.current?.setActiveDropdownIndex(n),handleFocus:()=>r.current?.setFocused(!0),handleBlur:()=>r.current?.setFocused(!1)});let x=F.current,H=Ze(n=>{let C=n.target.value,ae=C.length>0&&!n.nativeEvent?.isComposing&&C[0]!==C[0].toUpperCase()?C[0].toUpperCase()+C.slice(1):C;r.current?.handleTextChange(ae)},[]),ee=Ze(n=>{r.current?.handleKeyDown(n.nativeEvent)},[]),Y=r.current,c=_??Rt,a=k!==void 0?k:c.text,u=S!==void 0?S:c.completedParams,f=c.actionableSuggestions,y=f[0],h=Y?.listboxId??"",D=c.activeDropdownIndex>=0&&Y?`${h}-option-${c.activeDropdownIndex}`:void 0,M=c.editingParam,Q=M?{type:M.suggestionType,text:M.suggestionPlaceholder,required:!0,options:M.options}:null,pe=Q??y,ke=Q?[Q]:f,ue=!Y||c.isLoading&&!c.editingParam&&!c.inSelectionAnimation;return{completedParams:u,suggestionPills:f,setActivePill:x.setActivePill,removeLastParam:x.removeLastParam,segments:c.segments,newParamId:c.newParamId,clearNewParamId:x.clearNewParamId,suggestions:c.suggestions,activeIndex:c.activeDropdownIndex,isReady:c.isReady,isLoading:ue,isFocused:c.isFocused,isDropdownOpen:c.isDropdownOpen,isActivePillSelected:c.isActivePillSelected,placeholderText:c.placeholderText,listboxId:h,error:c.error,handleTextChange:x.handleTextChange,handleKeyDown:x.handleKeyDown,setFocused:x.setFocused,editingParam:M,editingAnchor:c.editingAnchor,caretOffset:c.caretOffset,startEditingParam:x.startEditingParam,exitEditMode:x.exitEditMode,handleCaretAfterInput:x.handleCaretAfterInput,handleCaretMove:x.handleCaretMove,replaceEditingRange:x.replaceEditingRange,inputProps:{value:a,placeholder:c.placeholderText||void 0,onChange:H,onKeyDown:ee,onFocus:x.handleFocus,onBlur:x.handleBlur,role:"combobox","aria-expanded":c.isDropdownOpen,"aria-activedescendant":D,"aria-autocomplete":"list","aria-controls":h},reset:x.reset,dropdownProps:{suggestions:pe?[{...pe,options:c.filteredOptions}]:[],activeIndex:c.activeDropdownIndex,onSelect:x.selectOption,onHighlight:x.setActiveDropdownIndex,isOpen:c.isDropdownOpen,id:h,pills:ke,activeSelected:c.isActivePillSelected,onPillClick:x.setActivePill,isLoading:ue,hasTabbedToHighlight:c.hasTabbedToHighlight,isInputEmpty:a.trim().length===0,optionsPosition:l??"below"}}}import{extractPlainText as Ye,getCursorOffset as et,plainTextLength as Tt,renderEditableContent as Lt,setCursorOffset as tt}from"@magicx-eng/ai-autocomplete-vanilla";import{useCallback as W,useEffect as Re,useLayoutEffect as Te,useRef as ie}from"react";var _e;function Bt(){if(_e!==void 0)return _e;if(typeof document>"u")return!1;let e=document.createElement("div");return e.setAttribute("contenteditable","plaintext-only"),_e=e.contentEditable==="plaintext-only",_e}function ot(e){let{segments:d,newParamId:i,editingParam:p,editingAnchor:o,caretOffset:t,placeholderText:s,isFocused:l,isDropdownOpen:m,listboxId:b,activeDescendantId:R,autoFocus:I,handleTextChange:k,handleKeyDown:S,handleCaretAfterInput:v,handleCaretMove:T,startEditingParam:L,replaceEditingRange:V,setFocused:r}=e,_=ie(null),B=ie(!1),O=ie(""),z=ie(""),g=ie(null),q=ie(0);g.current=t,Re(()=>{if(!I)return;let a=_.current;a&&(document.activeElement===a?r(!0):a.focus())},[I,r]),Re(()=>{let a=_.current;if(!a)return;let u=a.ownerDocument??document,f=()=>{let y=u.getSelection();if(!y||y.rangeCount===0||!y.anchorNode||!a.contains(y.anchorNode))return;let h=y.anchorNode,Q=(h.nodeType===Node.ELEMENT_NODE?h:h.parentElement)?.closest('strong[data-seg="completed"][data-param-id]')?.dataset.paramId??null;if(Q&&Q!==p?.id){L(Q);return}performance.now()-q.current<50||T(et(a))};return u.addEventListener("selectionchange",f),()=>u.removeEventListener("selectionchange",f)},[p,L,T]),Te(()=>{let a=_.current;a&&Lt({input:a,segments:d,newParamId:i,editingParamId:p?.id??null,placeholderText:s??"",isFocused:l})},[d,i,p,s,l]),Te(()=>{let a=O.current,u=i??"";if(O.current=u,!u||u===a)return;let f=_.current;if(!f)return;f.focus();let y=g.current??Tt(f);tt(f,y)},[i]),Te(()=>{let a=z.current,u=p?.id??"";if(z.current=u,!u||u===a||o==null)return;let f=_.current;f&&tt(f,o)},[p,o]);let A=W(()=>{if(B.current)return;let a=_.current;if(!a)return;let u=Ye(a),y=u.length>0&&u[0]!==u[0].toUpperCase()?u[0].toUpperCase()+u.slice(1):u;k(y)},[k]),$=W(()=>{q.current=performance.now(),A();let a=_.current;a&&v(et(a))},[A,v]);Re(()=>{let a=_.current;if(!a)return;let u=f=>{let y=f,h=y.inputType;if(h==="insertParagraph"||h==="insertLineBreak"||h==="insertFromDrop"){f.preventDefault();return}if(h.startsWith("insert")||h.startsWith("delete")){let D=h.startsWith("delete")?"":y.data??"";V(D)&&f.preventDefault()}};return a.addEventListener("beforeinput",u),()=>a.removeEventListener("beforeinput",u)},[V]);let E=W(()=>{B.current=!0},[]),Z=W(()=>{B.current=!1,A()},[A]),U=W(a=>{a.preventDefault();let u=_.current;if(!u)return;let f=(a.clipboardData.getData("text/plain")??"").replace(/\r?\n/g," ");if(!f)return;let y=u.ownerDocument??document,h=y.getSelection();if(!h||h.rangeCount===0)return;let D=h.getRangeAt(0);if(!u.contains(D.startContainer))return;D.deleteContents();let M=y.createTextNode(f);D.insertNode(M),D.setStartAfter(M),D.collapse(!0),h.removeAllRanges(),h.addRange(D),A()},[A]),G=W(a=>S(a),[S]),F=W(()=>r(!0),[r]),x=W(()=>r(!1),[r]),H=W(()=>_.current?.focus(),[]),ee=W(()=>_.current?.blur(),[]),Y=W(()=>{let a=_.current;return a?Ye(a):""},[]),c=Bt()?"plaintext-only":"true";return{inputRef:_,editorProps:{ref:_,contentEditable:c,suppressContentEditableWarning:!0,tabIndex:0,role:"combobox","aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":b,"aria-expanded":m,"aria-activedescendant":R,spellCheck:!0,enterKeyHint:"send",onInput:$,onKeyDown:G,onCompositionStart:E,onCompositionEnd:Z,onPaste:U,onFocus:F,onBlur:x},getPlainText:Y,focus:H,blur:ee}}import{jsx as re,jsxs as Be}from"react/jsx-runtime";function Kt(e){return e!=="auto"?e:typeof window>"u"||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}var Wt=zt(function({onSubmit:d,onError:i,optionOverrides:p,maskCompletedText:o,className:t,apiConfig:s,columns:l,pillPlacement:m="inline",mode:b="auto",optionsPosition:R="below",animations:I=!0,dropdownTrigger:k,closeDropdownOnBlur:S,showNonTappableOptions:v,autoFocus:T=!0,onFocus:L,onBlur:V,value:r,completedParams:_,onChange:B,onParamsChange:O,submitButton:z},g){let q=ce(null),A=ce(null),$=ce(()=>{}),E=ce(null),Z=ce(null);at(()=>{let w=q.current;if(w)return E.current?E.current.setMode(b):E.current=new Mt(w,b),()=>{E.current?.destroy(),E.current=null}},[b]);let U=Le(w=>{let j=Z.current?.current;j&&(j.focus(),Nt(j,w))},[]),{completedParams:G,suggestionPills:F,setActivePill:x,segments:H,newParamId:ee,clearNewParamId:Y,placeholderText:c,isFocused:a,isDropdownOpen:u,isActivePillSelected:f,isLoading:y,activeIndex:h,listboxId:D,handleTextChange:M,handleKeyDown:Q,setFocused:pe,editingParam:ke,editingAnchor:ue,caretOffset:n,startEditingParam:C,handleCaretAfterInput:P,handleCaretMove:ae,replaceEditingRange:se,dropdownProps:nt,reset:me}=De({onSubmit:w=>$.current(w),onError:i,optionOverrides:p,maskCompletedText:o,apiConfig:s,columns:l,dropdownTrigger:k,optionsPosition:R,closeDropdownOnBlur:S,showNonTappableOptions:v,onFocus:L,onBlur:V,value:r,completedParams:_,onChange:B,onParamsChange:O,source:"full-sdk",setCursor:U});at(()=>{if(!ee)return;let w=window.setTimeout(()=>Y(),650);return()=>window.clearTimeout(w)},[ee,Y]);let it=h>=0?`${D}-option-${h}`:void 0,{inputRef:Ie,editorProps:rt,focus:ge,blur:ze,getPlainText:Fe}=ot({segments:H,newParamId:ee,editingParam:ke,editingAnchor:ue,caretOffset:n,placeholderText:c,isFocused:a,isDropdownOpen:u,listboxId:D,activeDescendantId:it,autoFocus:T,handleTextChange:M,handleKeyDown:Q,handleCaretAfterInput:P,handleCaretMove:ae,startEditingParam:C,replaceEditingRange:se,setFocused:pe});Z.current=Ie,Ht(()=>{let w=A.current,j=Ie.current;if(!w||!j)return;let he=()=>{let Oe=w.firstElementChild;if(!Oe)return;let ct=Oe.getBoundingClientRect(),pt=j.getBoundingClientRect();ct.top>=pt.bottom-2?w.setAttribute("data-aia-pill-wrapped",""):w.removeAttribute("data-aia-pill-wrapped")};he();let He=new ResizeObserver(he);return He.observe(j),()=>He.disconnect()},[H,F.length,y,Ie]),Ft(g,()=>({focus:ge,blur:ze,reset:me,setMode:w=>E.current?.setMode(w)}),[ge,ze,me]);let fe=!!H.length||G.length>0,Se=Le(()=>{if(!fe)return;let w=Fe(),{rawQuery:j,completedParams:he}=Ot(w,G);d({query:w.trim(),raw_query:j,completed_params:he}),me()},[fe,G,d,me,Fe]);$.current=Se;let st=Le(w=>{w.target?.closest("[data-aia-pill]")||ge()},[ge]),lt=m==="inline",dt=m==="dropdown";return Be("div",{ref:q,className:`magicx-aia ${te.container} ${t??""}`,"data-pill-placement":m,"data-options-position":R,"data-animations":I?"on":"off","data-mode":Kt(b),children:[re(Ce,{...nt,showPills:dt}),Be("div",{className:te.inputWrapper,onClick:st,children:[Be("div",{className:te.editorArea,"data-aia-editor":"",children:[re("div",{...rt,className:te.input,"data-aia-input":""}),lt&&(y||F.length>0)&&re("span",{ref:A,className:te.pillListContainer,"data-aia-pill-list-container":"",children:re(ve,{pills:F,activePillIndex:0,activeSelected:f,onSelectPill:x,loading:y})})]}),z===null?null:z===void 0?re(Je,{disabled:!fe,onClick:Se}):re("span",{"data-aia-submit":"",className:te.submitSlot,onClick:w=>{fe&&(w.stopPropagation(),Se())},children:z})]})]})});export{Wt as AIAutocomplete,Ce as AIAutocompleteDropdown,De as useAIAutocomplete};
|
|
997
|
+
`,document.head.appendChild(e)}var Xe={submitButton:"SubmitButton-module_submitButton_otz7H"};import{jsx as Ee}from"react/jsx-runtime";function Je({disabled:e,onClick:d}){return Ee("button",{type:"button","data-aia-submit":"",className:Xe.submitButton,disabled:e,onClick:n=>{n.stopPropagation(),d()},"aria-label":"Submit",children:Ee("svg",{width:"18",height:"18",viewBox:"0 0 18 18",fill:"none",role:"img","aria-label":"Submit",children:Ee("path",{d:"M9 14V4M9 4L4 9M9 4L14 9",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})}import{AIAutocomplete as Et}from"@magicx-eng/ai-autocomplete-vanilla";import{useCallback as Ze,useEffect as ye,useRef as N,useState as Dt}from"react";var Rt={text:"",completedParams:[],suggestions:[],activeDropdownIndex:-1,newParamId:null,isLoading:!0,isReady:!1,error:null,segments:[],actionableSuggestions:[],filteredOptions:[],placeholderText:"",isDropdownOpen:!1,isActivePillSelected:!1,filterBase:0,filterInProgress:!1,pillTapped:!1,skipNextFetch:!1,lastRawQuery:"",isFocused:!1,editingParam:null,editingAnchor:null,editingTail:null,caretOffset:null,inSelectionAnimation:!1};function De({onSubmit:e,onError:d,optionOverrides:n,maskCompletedText:p,apiConfig:i,columns:t=2,dropdownTrigger:s,optionsPosition:l,closeDropdownOnBlur:f,showNonTappableOptions:x,onFocus:R,onBlur:I,value:k,completedParams:S,onChange:v,onParamsChange:C,source:z,setCursor:V}){let r=N(null),[w,T]=Dt(null),W=N(e);W.current=e;let m=N(d);m.current=d;let X=N(v);X.current=v;let B=N(C);B.current=C;let E=N(R);E.current=R;let G=N(I);G.current=I;let L=N(V);L.current=V,ye(()=>{if(typeof document>"u")return;let a=new Et(document.createElement("div"),{renderMode:"headless",apiConfig:i,optionOverrides:n,maskCompletedText:p,columns:t,dropdownTrigger:s,optionsPosition:l,closeDropdownOnBlur:f,showNonTappableOptions:x,source:z,value:k,completedParams:S,onSubmit:(...A)=>W.current?.(...A),onError:(...A)=>m.current?.(...A),onChange:(...A)=>X.current?.(...A),onParamsChange:(...A)=>B.current?.(...A),onFocus:()=>E.current?.(),onBlur:()=>G.current?.(),setCursor:A=>L.current?.(A)});r.current=a,T(a.getState());let P=a.subscribe(A=>T(A));return()=>{P(),a.destroy(),r.current===a&&(r.current=null)}},[]),ye(()=>{k!==void 0&&r.current?.setValue(k)},[k]),ye(()=>{S!==void 0&&r.current?.setCompletedParams(S)},[S]);let J=JSON.stringify(i??null),q=N(n),F=N(0);if(n!==q.current){let a=q.current,P=n,A=Object.keys(a??{}),ae=Object.keys(P??{});(A.length!==ae.length||ae.some(se=>!a?.[se]||P[se]!==a[se]))&&F.current++,q.current=n}ye(()=>{r.current?.update({apiConfig:i,optionOverrides:n,dropdownTrigger:s,optionsPosition:l,closeDropdownOnBlur:f,showNonTappableOptions:x})},[J,F.current,s,l,f,x]);let O=N(null);O.current===null&&(O.current={handleTextChange:a=>r.current?.handleTextChange(a),handleKeyDown:a=>{let P="nativeEvent"in a?a.nativeEvent:a;r.current?.handleKeyDown(P)},setFocused:a=>r.current?.setFocused(a),startEditingParam:a=>r.current?.startEditingParam(a),exitEditMode:()=>r.current?.exitEditMode(),handleCaretAfterInput:a=>r.current?.handleCaretAfterInput(a),handleCaretMove:a=>r.current?.handleCaretMove(a),replaceEditingRange:a=>r.current?.replaceEditingRange(a)??!1,setActivePill:a=>r.current?.setActivePill(a),removeLastParam:()=>r.current?.removeLastParam(),clearNewParamId:()=>r.current?.clearNewParamId(),reset:()=>r.current?.reset(),selectOption:a=>r.current?.selectOption(a),setActiveDropdownIndex:a=>r.current?.setActiveDropdownIndex(a),handleFocus:()=>r.current?.setFocused(!0),handleBlur:()=>r.current?.setFocused(!1)});let g=O.current,Y=Ze(a=>{let P=a.target.value,ae=P.length>0&&!a.nativeEvent?.isComposing&&P[0]!==P[0].toUpperCase()?P[0].toUpperCase()+P.slice(1):P;r.current?.handleTextChange(ae)},[]),ee=Ze(a=>{r.current?.handleKeyDown(a.nativeEvent)},[]),Z=r.current,c=w??Rt,o=k!==void 0?k:c.text,u=S!==void 0?S:c.completedParams,h=c.actionableSuggestions,_=h[0],b=Z?.listboxId??"",D=c.activeDropdownIndex>=0&&Z?`${b}-option-${c.activeDropdownIndex}`:void 0,M=c.editingParam,$=M?{type:M.suggestionType,text:M.suggestionPlaceholder,required:!0,options:M.options}:null,pe=$??_,ke=$?[$]:h,ue=!Z||c.isLoading&&!c.editingParam&&!c.inSelectionAnimation;return{completedParams:u,suggestionPills:h,setActivePill:g.setActivePill,removeLastParam:g.removeLastParam,segments:c.segments,newParamId:c.newParamId,clearNewParamId:g.clearNewParamId,suggestions:c.suggestions,activeIndex:c.activeDropdownIndex,isReady:c.isReady,isLoading:ue,isFocused:c.isFocused,isDropdownOpen:c.isDropdownOpen,isActivePillSelected:c.isActivePillSelected,placeholderText:c.placeholderText,listboxId:b,error:c.error,handleTextChange:g.handleTextChange,handleKeyDown:g.handleKeyDown,setFocused:g.setFocused,editingParam:M,editingAnchor:c.editingAnchor,caretOffset:c.caretOffset,startEditingParam:g.startEditingParam,exitEditMode:g.exitEditMode,handleCaretAfterInput:g.handleCaretAfterInput,handleCaretMove:g.handleCaretMove,replaceEditingRange:g.replaceEditingRange,inputProps:{value:o,placeholder:c.placeholderText||void 0,onChange:Y,onKeyDown:ee,onFocus:g.handleFocus,onBlur:g.handleBlur,role:"combobox","aria-expanded":c.isDropdownOpen,"aria-activedescendant":D,"aria-autocomplete":"list","aria-controls":b},reset:g.reset,dropdownProps:{suggestions:pe?[{...pe,options:c.filteredOptions}]:[],activeIndex:c.activeDropdownIndex,onSelect:g.selectOption,onHighlight:g.setActiveDropdownIndex,isOpen:c.isDropdownOpen,id:b,pills:ke,activeSelected:c.isActivePillSelected,onPillClick:g.setActivePill,isLoading:ue,isInputEmpty:o.trim().length===0,optionsPosition:l??"below"}}}import{extractPlainText as Ye,getCursorOffset as et,plainTextLength as Lt,renderEditableContent as Tt,setCursorOffset as tt}from"@magicx-eng/ai-autocomplete-vanilla";import{useCallback as K,useEffect as Re,useLayoutEffect as Le,useRef as ie}from"react";var _e;function Bt(){if(_e!==void 0)return _e;if(typeof document>"u")return!1;let e=document.createElement("div");return e.setAttribute("contenteditable","plaintext-only"),_e=e.contentEditable==="plaintext-only",_e}function ot(e){let{segments:d,newParamId:n,editingParam:p,editingAnchor:i,caretOffset:t,placeholderText:s,isFocused:l,isDropdownOpen:f,listboxId:x,activeDescendantId:R,autoFocus:I,handleTextChange:k,handleKeyDown:S,handleCaretAfterInput:v,handleCaretMove:C,startEditingParam:z,replaceEditingRange:V,setFocused:r}=e,w=ie(null),T=ie(!1),W=ie(""),m=ie(""),X=ie(null),B=ie(0);X.current=t,Re(()=>{if(!I)return;let o=w.current;o&&(document.activeElement===o?r(!0):o.focus())},[I,r]),Re(()=>{let o=w.current;if(!o)return;let u=o.ownerDocument??document,h=()=>{let _=u.getSelection();if(!_||_.rangeCount===0||!_.anchorNode||!o.contains(_.anchorNode))return;let b=_.anchorNode,$=(b.nodeType===Node.ELEMENT_NODE?b:b.parentElement)?.closest('strong[data-seg="completed"][data-param-id]')?.dataset.paramId??null;if($&&$!==p?.id){z($);return}performance.now()-B.current<50||C(et(o))};return u.addEventListener("selectionchange",h),()=>u.removeEventListener("selectionchange",h)},[p,z,C]),Le(()=>{let o=w.current;o&&Tt({input:o,segments:d,newParamId:n,editingParamId:p?.id??null,placeholderText:s??"",isFocused:l})},[d,n,p,s,l]),Le(()=>{let o=W.current,u=n??"";if(W.current=u,!u||u===o)return;let h=w.current;if(!h)return;h.focus();let _=X.current??Lt(h);tt(h,_)},[n]),Le(()=>{let o=m.current,u=p?.id??"";if(m.current=u,!u||u===o||i==null)return;let h=w.current;h&&tt(h,i)},[p,i]);let E=K(()=>{if(T.current)return;let o=w.current;if(!o)return;let u=Ye(o),_=u.length>0&&u[0]!==u[0].toUpperCase()?u[0].toUpperCase()+u.slice(1):u;k(_)},[k]),G=K(()=>{B.current=performance.now(),E();let o=w.current;o&&v(et(o))},[E,v]);Re(()=>{let o=w.current;if(!o)return;let u=h=>{let _=h,b=_.inputType;if(b==="insertParagraph"||b==="insertLineBreak"||b==="insertFromDrop"){h.preventDefault();return}if(b.startsWith("insert")||b.startsWith("delete")){let D=b.startsWith("delete")?"":_.data??"";V(D)&&h.preventDefault()}};return o.addEventListener("beforeinput",u),()=>o.removeEventListener("beforeinput",u)},[V]);let L=K(()=>{T.current=!0},[]),J=K(()=>{T.current=!1,E()},[E]),q=K(o=>{o.preventDefault();let u=w.current;if(!u)return;let h=(o.clipboardData.getData("text/plain")??"").replace(/\r?\n/g," ");if(!h)return;let _=u.ownerDocument??document,b=_.getSelection();if(!b||b.rangeCount===0)return;let D=b.getRangeAt(0);if(!u.contains(D.startContainer))return;D.deleteContents();let M=_.createTextNode(h);D.insertNode(M),D.setStartAfter(M),D.collapse(!0),b.removeAllRanges(),b.addRange(D),E()},[E]),F=K(o=>S(o),[S]),O=K(()=>r(!0),[r]),g=K(()=>r(!1),[r]),Y=K(()=>w.current?.focus(),[]),ee=K(()=>w.current?.blur(),[]),Z=K(()=>{let o=w.current;return o?Ye(o):""},[]),c=Bt()?"plaintext-only":"true";return{inputRef:w,editorProps:{ref:w,contentEditable:c,suppressContentEditableWarning:!0,tabIndex:0,role:"combobox","aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":x,"aria-expanded":f,"aria-activedescendant":R,spellCheck:!0,enterKeyHint:"send",onInput:G,onKeyDown:F,onCompositionStart:L,onCompositionEnd:J,onPaste:q,onFocus:O,onBlur:g},getPlainText:Z,focus:Y,blur:ee}}import{jsx as re,jsxs as Be}from"react/jsx-runtime";function Kt(e){return e!=="auto"?e:typeof window>"u"||window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}var Wt=zt(function({onSubmit:d,onError:n,optionOverrides:p,maskCompletedText:i,className:t,apiConfig:s,columns:l,pillPlacement:f="inline",mode:x="auto",optionsPosition:R="below",animations:I=!0,dropdownTrigger:k,closeDropdownOnBlur:S,showNonTappableOptions:v,autoFocus:C=!0,onFocus:z,onBlur:V,value:r,completedParams:w,onChange:T,onParamsChange:W,submitButton:m},X){let B=ce(null),E=ce(null),G=ce(()=>{}),L=ce(null),J=ce(null);at(()=>{let y=B.current;if(y)return L.current?L.current.setMode(x):L.current=new Ht(y,x),()=>{L.current?.destroy(),L.current=null}},[x]);let q=Te(y=>{let j=J.current?.current;j&&(j.focus(),Nt(j,y))},[]),{completedParams:F,suggestionPills:O,setActivePill:g,segments:Y,newParamId:ee,clearNewParamId:Z,placeholderText:c,isFocused:o,isDropdownOpen:u,isActivePillSelected:h,isLoading:_,activeIndex:b,listboxId:D,handleTextChange:M,handleKeyDown:$,setFocused:pe,editingParam:ke,editingAnchor:ue,caretOffset:a,startEditingParam:P,handleCaretAfterInput:A,handleCaretMove:ae,replaceEditingRange:se,dropdownProps:nt,reset:me}=De({onSubmit:y=>G.current(y),onError:n,optionOverrides:p,maskCompletedText:i,apiConfig:s,columns:l,dropdownTrigger:k,optionsPosition:R,closeDropdownOnBlur:S,showNonTappableOptions:v,onFocus:z,onBlur:V,value:r,completedParams:w,onChange:T,onParamsChange:W,source:"full-sdk",setCursor:q});at(()=>{if(!ee)return;let y=window.setTimeout(()=>Z(),650);return()=>window.clearTimeout(y)},[ee,Z]);let it=b>=0?`${D}-option-${b}`:void 0,{inputRef:Ie,editorProps:rt,focus:ge,blur:ze,getPlainText:Fe}=ot({segments:Y,newParamId:ee,editingParam:ke,editingAnchor:ue,caretOffset:a,placeholderText:c,isFocused:o,isDropdownOpen:u,listboxId:D,activeDescendantId:it,autoFocus:C,handleTextChange:M,handleKeyDown:$,handleCaretAfterInput:A,handleCaretMove:ae,startEditingParam:P,replaceEditingRange:se,setFocused:pe});J.current=Ie,Ot(()=>{let y=E.current,j=Ie.current;if(!y||!j)return;let he=()=>{let Me=y.firstElementChild;if(!Me)return;let ct=Me.getBoundingClientRect(),pt=j.getBoundingClientRect();ct.top>=pt.bottom-2?y.setAttribute("data-aia-pill-wrapped",""):y.removeAttribute("data-aia-pill-wrapped")};he();let Oe=new ResizeObserver(he);return Oe.observe(j),()=>Oe.disconnect()},[Y,O.length,_,Ie]),Ft(X,()=>({focus:ge,blur:ze,reset:me,setMode:y=>L.current?.setMode(y)}),[ge,ze,me]);let fe=!!Y.length||F.length>0,Se=Te(()=>{if(!fe)return;let y=Fe(),{rawQuery:j,completedParams:he}=Mt(y,F);d({query:y.trim(),raw_query:j,completed_params:he}),me()},[fe,F,d,me,Fe]);G.current=Se;let st=Te(y=>{y.target?.closest("[data-aia-pill]")||ge()},[ge]),lt=f==="inline",dt=f==="dropdown";return Be("div",{ref:B,className:`magicx-aia ${te.container} ${t??""}`,"data-pill-placement":f,"data-options-position":R,"data-animations":I?"on":"off","data-mode":Kt(x),children:[re(Ce,{...nt,showPills:dt}),Be("div",{className:te.inputWrapper,onClick:st,children:[Be("div",{className:te.editorArea,"data-aia-editor":"",children:[re("div",{...rt,className:te.input,"data-aia-input":""}),lt&&(_||O.length>0)&&re("span",{ref:E,className:te.pillListContainer,"data-aia-pill-list-container":"",children:re(ve,{pills:O,activePillIndex:0,activeSelected:h,onSelectPill:g,loading:_})})]}),m===null?null:m===void 0?re(Je,{disabled:!fe,onClick:Se}):re("span",{"data-aia-submit":"",className:te.submitSlot,onClick:y=>{fe&&(y.stopPropagation(),Se())},children:m})]})]})});export{Wt as AIAutocomplete,Ce as AIAutocompleteDropdown,De as useAIAutocomplete};
|
|
998
998
|
//# sourceMappingURL=index.mjs.map
|