@pickaxeproject/react 6.12.1 → 6.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/Pickaxe/Chat/History/Message.js +1 -1
- package/dist/cjs/components/Pickaxe/Chat/Input.js +1 -1
- package/dist/cjs/components/Pickaxe/Form/Questions/Input.js +1 -1
- package/dist/cjs/components/Pickaxe/common/PickaxeMessageActions.js +1 -1
- package/dist/cjs/components/Pickaxe/common/PickaxeUpgradeCard.js +1 -1
- package/dist/cjs/hooks/pickaxe/useSpeechToText.js +1 -0
- package/dist/cjs/hooks/pickaxe/useTextToSpeech.js +1 -0
- package/dist/cjs/src/components/Pickaxe/Provider.d.ts +1 -0
- package/dist/cjs/src/components/Pickaxe/common/PickaxeMessageActions.d.ts +2 -1
- package/dist/cjs/src/hooks/pickaxe/{useSpeech.d.ts → useSpeechToText.d.ts} +1 -1
- package/dist/cjs/src/hooks/pickaxe/useTextToSpeech.d.ts +6 -0
- package/dist/esm/components/Pickaxe/Chat/History/Message.js +1 -1
- package/dist/esm/components/Pickaxe/Chat/Input.js +1 -1
- package/dist/esm/components/Pickaxe/Form/Questions/Input.js +1 -1
- package/dist/esm/components/Pickaxe/common/PickaxeMessageActions.js +1 -1
- package/dist/esm/components/Pickaxe/common/PickaxeUpgradeCard.js +1 -1
- package/dist/esm/hooks/pickaxe/{useSpeech.js → useSpeechToText.js} +1 -1
- package/dist/esm/hooks/pickaxe/useTextToSpeech.js +1 -0
- package/dist/esm/src/components/Pickaxe/Provider.d.ts +1 -0
- package/dist/esm/src/components/Pickaxe/common/PickaxeMessageActions.d.ts +2 -1
- package/dist/esm/src/hooks/pickaxe/{useSpeech.d.ts → useSpeechToText.d.ts} +1 -1
- package/dist/esm/src/hooks/pickaxe/useTextToSpeech.d.ts +6 -0
- package/package.json +1 -1
- package/dist/cjs/hooks/pickaxe/useSpeech.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("react"),t=require("../../../../hooks/pickaxe/usePickaxeContext.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("react"),t=require("../../../../hooks/pickaxe/usePickaxeContext.js"),a=require("../../../../hooks/studio/useStyleFontSize.js"),i=require("../../../../hooks/pickaxe/useResponseContext.js"),r=require("../../Addons/Artifact/hooks/useArtifact.js"),o=require("../../common/PickaxeMarkdown/index.js"),l=require("../../common/PickaxeIcon.js"),n=require("./Document.js"),c=require("../../common/PickaxeMessageActions.js"),d=require("../../common/PickaxeMessageParts/index.js"),u=require("../../../../common/cn.js"),x=require("../../../../common/isoMap.js"),m=require("franc-min"),p=require("../../common/ComposioConnectView.js"),f=require("../../common/SmitheryConnectView.js"),j=require("../../../../hooks/pickaxe/useTextToSpeech.js");function h(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var g=h(require("remove-markdown"));exports.default=({index:h,message:b,smitheryData:v,resubmitPrompt:k,isLastMessage:y=!1})=>{var w,O;const{pickaxeId:q,pickaxe:N,styles:C,colors:I,misc:P,responsiveBy:A,disableHtml:R,disableJs:S,disableCss:M,isNewChat:T,isRtl:L}=t.usePickaxeContext(),{isGenerating:F}=i.useResponseContext(),{onLoadArtifact:H}=r.useArtifact(),J=a.useStyleFontSize(),V=null!==(w=null==N?void 0:N.chaticon)&&void 0!==w?w:`https://cdn.mail.studio/chaticons/${q}.png`,z=y&&F,B=null==N?void 0:N.enablereadout,{isLoading:D,isSpeaking:_,speak:E,stop:G}=j.useTextToSpeech(B&&"assistant"===b.role),U=()=>{if(D||_)return void G();const e=b.parts.filter((e=>"text"===e.type)).map((e=>e.content)).join(" ");if(!e)return;const s=g.default(e,{stripListLeaders:!0,listUnicodeChar:"",gfm:!0,useImgAltText:!1}),t=m.franc(s),a=x.convertToIso1(t);E(s,a)},$=!b.parts.some((e=>["text","reasoning","data-action-tool-caption"].includes(e.type)));return"assistant"===b.role?e.jsx("div",Object.assign({className:u.default("flex w-full",L?"justify-end":"justify-start")},{children:e.jsx("div",Object.assign({className:u.default("flex flex-col w-full",0===h&&T&&"viewport"===A&&"min-[767px]:max-w-[80%]",0===h&&T&&"container"===A&&"@[767px]/pickaxe-root:max-w-[80%]")},{children:e.jsxs("div",Object.assign({className:u.default("flex gap-x-3",L&&"flex-row-reverse")},{children:[P.isChatImage&&"NONE"!==V&&e.jsx(l.default,{src:V,alt:"Assistant",width:24,height:24,className:"my-3 h-6 w-6",textColor:I.text}),e.jsxs("div",Object.assign({className:u.default("flex flex-col flex-grow",L?"items-end":"items-start")},{children:[e.jsxs("div",Object.assign({className:u.default(J.b2,"chat-message pt-3 w-full",L?"text-right":"text-left")},{children:[e.jsx(o.PickaxeMarkdown,Object.assign({theme:C.theme,colors:I},L&&{rtl:!0},R&&{disableHtml:!0},S&&{disableJs:!0},M&&{disableCss:!0},{disableReasoning:null!==(O=null==N?void 0:N.enablereasoningdisplay)&&void 0!==O&&O,onArtifactClick:H},{children:e.jsx(d.default,{parts:b.parts})})),y&&v&&k&&("composio"===v.provider?e.jsx("div",Object.assign({className:"mt-4 px-1"},{children:e.jsx(p.default,{serverId:v.serverId,toolkitSlug:v.toolkitSlug||"",name:v.name,resubmitPrompt:()=>k()})})):e.jsx("div",Object.assign({className:"mt-4 px-1"},{children:e.jsx(f.default,{serverId:v.serverId,smitheryId:v.smitheryId||"",name:v.name||v.smitheryId,resubmitPrompt:()=>k()})})))]})),e.jsx("div",Object.assign({className:u.default("flex flex-col gap-6 my-4",$&&"mt-2")},{children:z?e.jsx("div",Object.assign({className:"flex items-center gap-x-2 rounded"},{children:Array.from({length:3}).map(((s,t)=>e.jsx("div",{className:u.default("h-1.5 w-1.5 animate-dot rounded-full",1===t&&"animate-dot-down"),style:{backgroundColor:I.secondaryText}},t)))})):e.jsx(c.default,Object.assign({content:b.parts.filter((e=>e.isVisible&&"text"===e.type)).map((e=>e.content)).join("\n"),index:h},"intromessage"===b.area&&{isHideFeedback:!0},{onReadOut:U,isReadOut:B||!1,isReadOutLoading:D,isReading:_}))}))]}))]}))}))})):"user"===b.role?e.jsx("div",Object.assign({className:u.default("flex w-full",L?"justify-start":"justify-end")},{children:e.jsx("div",Object.assign({className:u.default("flex gap-x-3 max-w-[80%]",L?"pr-9":"pl-9","viewport"===A?L?"min-[767px]:pr-0":"min-[767px]:pl-0":L?"@[767px]/pickaxe-root:pr-0":"@[767px]/pickaxe-root:pl-0")},{children:e.jsxs("div",Object.assign({className:u.default(J.b2,"overflow-x-auto overflow-y-hidden px-4 py-3 scrollbar-thin scrollbar-track-white scrollbar-thumb-[#4A4A4B] flex flex-col gap-y-3",L?"text-right":"text-left"),style:{backgroundColor:I.secondary+"80",color:I.secondaryText,borderRadius:C.cornerRadius}},{children:[b.documentIds&&b.documentIds.length>0&&e.jsx("div",Object.assign({className:u.default("flex flex-col gap-y-2",L?"items-start":"items-end")},{children:b.documentIds.map((t=>e.jsx(s.Fragment,{children:e.jsx(n.default,{documentId:t})},t)))})),e.jsx(o.PickaxeMarkdown,Object.assign({theme:C.theme,colors:I},L&&{rtl:!0},R&&{disableHtml:!0},S&&{disableJs:!0},M&&{disableCss:!0},{children:e.jsx(d.default,{parts:b.parts})}))]}))}))})):e.jsx("div",{})};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../_virtual/_tslib.js"),t=require("react/jsx-runtime"),s=require("react"),n=require("../../../hooks/pickaxe/usePickaxeContext.js"),i=require("../../../hooks/pickaxe/useResponseContext.js"),r=require("../../../hooks/studio/useStyleInput.js"),o=require("../../../hooks/studio/useStyleFontSize.js"),a=require("../../../hooks/pickaxe/useConversation.js"),l=require("../../../hooks/pickaxe/useDimensionContext.js"),d=require("../Addons/Auth/hooks/useAuthContext.js"),c=require("../Addons/Document/hooks/useDocument.js"),u=require("../Addons/Scroll/hooks/useScroll.js"),p=require("../Addons/Artifact/hooks/useArtifactContext.js"),m=require("../../../hooks/core/useHover.js"),f=require("../../../hooks/core/useMediaQuery.js"),g=require("../../../common/documents.js"),v=require("eventsource-parser"),h=require("../../Icons/attach-vertical.svg.js"),b=require("../../Icons/arrow-right.svg.js"),I=require("../../Icons/microphone.svg.js"),y=require("../../Icons/stop.svg.js"),x=require("../Addons/Document/List.js"),j=require("../../Core/Textarea.js"),S=require("../../Core/ErrorAlert.js"),O=require("../../../common/error.js"),w=require("../../../common/chatMessages.js"),N=require("../../../common/api/pickaxe.js"),_=require("../../../common/validation.js"),k=require("../../../common/cn.js"),E=require("../../../common/utils.js"),U=require("../../../common/pickaxeConfig.js"),C=require("../../../common/deploymentWebhooks.js"),T=require("../../../hooks/studio/useStudio.js"),A=require("../../../hooks/pickaxe/useSpeech.js"),D=require("../common/PickaxeCommon.js");const P=e=>"string"==typeof e&&e.trim().length>0,L=e=>e.map((e=>Object.assign({},e))),M=e=>e instanceof Error&&("AbortError"===e.name||"BodyStreamBuffer was aborted"===e.message),R=(e,t)=>{if(e&&"object"==typeof e)return e[t]},q=(e,t)=>{const s=R(e,t);return P(s)?s:null},F=e=>{const t=Number(e);return Number.isFinite(t)?t:void 0},V=({studioUser:e,deploymentId:t,portalId:s})=>{var n,i;const r=Array.isArray(R(e,"uses"))?R(e,"uses"):[],o=(({deploymentId:e,portalId:t})=>P(e)?{type:"deployment",id:e}:P(t)?{type:"portal",id:t}:null)({deploymentId:t,portalId:s});if(!o)return{scope:o,record:null};const a=null!==(i=null!==(n=r.find((e=>e.id===o.id&&e.type===o.type)))&&void 0!==n?n:r.find((e=>e.id===o.id)))&&void 0!==i?i:null;return{scope:o,record:a}},B=s.forwardRef((({resubmitPrompt:R,onFocus:B,onBlur:$,onInputHeightChange:X,initSmitheryAuthData:H},K)=>{var W,Y,z,G,J,Q,Z,ee,te,se,ne,ie;const{origin:re,pickaxeId:oe,sessionId:ae,sender:le,senderType:de,portalId:ce,deploymentId:ue,deploymentType:pe,pickaxe:me,styles:fe,colors:ge,translations:ve,locale:he,forceMobile:be,isNewChat:Ie,isRtl:ye,isShowFeedbackMessage:xe,accessGroup:je,setIsNewChat:Se,setIsShowIceBreaker:Oe,setValidationStatus:we,setValidationUpgradeGroups:Ne,setValidationUpgradeUrl:_e,setAccessGroup:ke,onGenerateComplete:Ee}=n.usePickaxeContext(),{token:Ue,isLoggedOut:Ce,isSent:Te,isPricingAuth:Ae}=d.useAuthContext(),{messages:De,isGenerating:Pe,setMessages:Le,setStatus:Me,setLimitData:Re,setError:qe}=i.useResponseContext(),{documents:Fe,isUploading:Ve,documentError:Be,onFileUpload:$e,setDocuments:Xe,setDocumentError:He}=c.useDocument(),{studio:Ke}=T.useStudio(),[We]=f.useMediaQuery("(max-width: 480px)"),{scrollStartSession:Ye,scrollEndSession:ze,scrollToBottom:Ge}=u.useScroll({auto:!0,smooth:!(be||We)}),{artifacts:Je,currentPopupType:Qe,setArtifacts:Ze,setCurrentArtifact:et}=p.useArtifactContext(),{height:tt}=l.useDimensionContext(),st=a.useConversation(),[nt,it]=s.useState(""),[rt,ot]=s.useState(!1),[at,lt]=s.useState(!1),[dt,ct]=s.useState(null),[ut,pt]=s.useState(null),[mt,ft]=s.useState(!1),[gt,vt]=s.useState(!1),[ht,bt]=s.useState(0),It=s.useRef(null),yt=s.useRef(""),xt=s.useRef(null),jt=s.useRef(null),St=s.useRef(null),Ot=s.useRef([]),wt=s.useRef(null),Nt=s.useRef(null),_t=s.useRef(null),kt=s.useRef(null),Et=s.useRef(new Set),Ut=s.useRef(null),Ct=Math.max(.4*tt,100),{speechTranscript:Tt,isSpeechListening:At,isSpeechProcessing:Dt,isSpeechSupported:Pt,onStartListening:Lt,onStopListening:Mt}=A.useSpeech(),Rt=m.useHover(),{isHover:qt}=Rt,Ft=e.__rest(Rt,["isHover"]),Vt=m.useHover(),{isHover:Bt}=Vt,$t=e.__rest(Vt,["isHover"]),Xt=m.useHover(),{isHover:Ht}=Xt,Kt=e.__rest(Xt,["isHover"]),Wt=o.useStyleFontSize(),Yt=r.useStyleInput(),zt="undefined"!=typeof window?window.location.hostname:"",Gt="undefined"!=typeof window?window.location.href:"",Jt="undefined"!=typeof window&&window.self!==window.top,Qt=zt.includes("pickaxe.co")&&!Gt.includes("https://studio.pickaxe.co/_embed")&&!Jt,Zt=null!==(Y=null===(W=null==me?void 0:me.documentuploadtype)||void 0===W?void 0:W.startsWith("enduserupload"))&&void 0!==Y&&Y,es=Pt&&(null==me?void 0:me.enablevoicetotext),ts=P(ue),ss="chat-input"===pe&&Ie&&!Te,ns="chat-input"===pe&&Ae&&Ce&&Te,is=s.useCallback((e=>{const t=_.getValidationFailure(e);return!!t&&(qe(""),Re(null),we(t.status),ke(t.accessGroup),Ne(t.upgradeGroups),_e(t.upgradeUrl),!0)}),[qe,Re,we,Ne,_e,ke]),rs=null!==(z=null==me?void 0:me.placeholdertext)&&void 0!==z?z:ye?"بماذا تريد أن تتحدث؟":(null==ve?void 0:ve["what-do-you-want-to-talk-about"])||"What do you want to talk about?",os=rt||at,as=s.useCallback((()=>e.__awaiter(void 0,void 0,void 0,(function*(){ft(!1);try{const e=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API2_URL}/user`,Object.assign(Object.assign({method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(Object.assign({studioId:null==me?void 0:me.studioid},Ue?{studioSessionToken:Ue}:le?{sender:le}:{sender:E.initializeEmbedUserId()}))},(!process.env.NODE_ENV||"development"===process.env.NODE_ENV)&&Object.assign({},process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN&&{headers:{"Content-Type":"application/json","x-pickaxe-session-token":process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN}})),Qt&&{credentials:"include"})),t=yield e.json();(null==t?void 0:t.studioUser)&&(ct(t.studioUser),pt(t.url))}catch(e){console.error("Failed to fetch studio user:",e)}finally{ft(!0)}}))),[Qt,null==me?void 0:me.studioid,le,Ue]);s.useEffect((()=>{as()}),[as]);const ls=Number(null!==(G=null==je?void 0:je.limit)&&void 0!==G?G:0),ds="string"==typeof(null==je?void 0:je.limitInterval)?je.limitInterval:null,cs=!!(null==Ke?void 0:Ke.data.usage)&&Ke.data.usage.isCredits,us=s.useMemo((()=>{var e,t,s,n,i;return null!==(i=null!==(n=null!==(s=null!==(t=null!==(e=null!=ce?ce:q(dt,"portalId"))&&void 0!==e?e:q(dt,"portalid"))&&void 0!==t?t:q(je,"portalId"))&&void 0!==s?s:q(je,"portalid"))&&void 0!==n?n:q(me,"portalId"))&&void 0!==i?i:q(me,"portalid")}),[je,ce,me,dt]),ps=s.useMemo((()=>V({studioUser:dt,deploymentId:ue,portalId:us})),[ue,us,dt]);s.useEffect((()=>{ts&&Ie&&ae&&Et.current.add(ae)}),[Ie,ae,ts]);const ms=s.useCallback((()=>{var e,t,s;return{studioId:null==me?void 0:me.studioid,userEmail:q(dt,"email"),userId:null!==(e=q(dt,"userId"))&&void 0!==e?e:q(dt,"userid"),sessionId:ae,deploymentId:ue,deploymentType:pe,portalId:us,accessGroupId:null!==(t=null==je?void 0:je.accessGroupId)&&void 0!==t?t:null,pickaxeId:oe,sender:le,senderType:de,origin:re,metadata:null!==(s=U.getPickaxeConfigMetadata(ue))&&void 0!==s?s:null}}),[null==je?void 0:je.accessGroupId,ue,pe,re,null==me?void 0:me.studioid,oe,us,le,de,ae,dt]),fs=s.useCallback((()=>!!(ts&&mt&&ae)&&(!!Et.current.has(ae)&&(C.fireDeploymentSessionInitializedWebhook(ms()),Et.current.delete(ae),!0))),[ms,mt,ae,ts]);s.useEffect((()=>{if(!mt||!ae)return;fs();const e=Ut.current;(null==e?void 0:e.sessionId)===ae&&(C.fireDeploymentFirstMessageSubmittedWebhook(Object.assign(Object.assign(Object.assign({},e),ms()),{message:e.message,documentIds:e.documentIds,uploadedModelImages:e.uploadedModelImages,hasUploadedDocuments:e.hasUploadedDocuments,isHidden:e.isHidden})),Ut.current=null)}),[fs,ms,mt,ae]);const gs={currentUses:F(null==dt?void 0:dt.currentUses),extraUses:F(null==dt?void 0:dt.extraUses)},vs=ps.scope?{currentUses:null!==(Q=F(null===(J=ps.record)||void 0===J?void 0:J.currentUses))&&void 0!==Q?Q:0,extraUses:null!==(ee=F(null===(Z=ps.record)||void 0===Z?void 0:Z.extraUses))&&void 0!==ee?ee:0}:{currentUses:0,extraUses:0},hs=q(dt,"type"),bs="guest"===hs||!hs&&Ce?vs:gs;s.useEffect((()=>{let t=!0;return e.__awaiter(void 0,void 0,void 0,(function*(){var e;if(cs&&(null===(e=null==Ke?void 0:Ke.data)||void 0===e?void 0:e.workspaceId))try{const e=yield N.pickaxeApi2.get(`/cost_per_run?workspaceId=${Ke.data.workspaceId}`,{withCredentials:!1});t&&bt(1e4*(Number(e.data.costPerRun)||0))}catch(e){console.error("Failed to fetch average cost per run:",e),t&&bt(0)}else t&&bt(0)})),()=>{t=!1}}),[cs,null===(te=null==Ke?void 0:Ke.data)||void 0===te?void 0:te.workspaceId]);const Is=(({currentUses:e,extraUses:t,limit:s,limitInterval:n})=>{const i=Number(null!=e?e:0),r=Number(null!=t?t:0);return s===D.STUDIO_INFINITY_VALUE||r===D.STUDIO_INFINITY_VALUE?D.STUDIO_INFINITY_VALUE:"one_time"===n?Math.max(0,r-i):Math.max(0,s-i)+r})({currentUses:bs.currentUses,extraUses:bs.extraUses,limit:ls,limitInterval:ds}),ys=Is===D.STUDIO_INFINITY_VALUE?D.STUDIO_INFINITY_VALUE:Math.max(0,Math.ceil(Is)),xs=(({extraUses:e,limit:t,limitInterval:s})=>{const n=Number(null!=e?e:0);return t===D.STUDIO_INFINITY_VALUE||n===D.STUDIO_INFINITY_VALUE?D.STUDIO_INFINITY_VALUE:"one_time"===s?Math.max(0,n):Math.max(0,t)+Math.max(0,n)})({extraUses:bs.extraUses,limit:ls,limitInterval:ds}),js=xs===D.STUDIO_INFINITY_VALUE?D.STUDIO_INFINITY_VALUE:Math.ceil(.05*xs),Ss=cs?Math.ceil(5*ht):5,Os=js===D.STUDIO_INFINITY_VALUE?D.STUDIO_INFINITY_VALUE:Math.max(js,Ss),ws=s.useMemo((()=>!!dt&&(!gt&&(ys!==D.STUDIO_INFINITY_VALUE&&(!(ys<=0)&&ys<=Os)))),[gt,Os,ys,dt]),Ns=Boolean(null==je?void 0:je.hideUpgradeOptions),_s=!Ns&&(null===(se=null==je?void 0:je.upgrade)||void 0===se?void 0:se.isLinkToCustomURL)&&"string"==typeof je.upgrade.limitLink&&je.upgrade.limitLink.trim().length>0?je.upgrade.limitLink.trim():null,ks=_s&&"string"==typeof(null===(ne=null==je?void 0:je.upgrade)||void 0===ne?void 0:ne.limitCTA)&&je.upgrade.limitCTA.trim().length>0?je.upgrade.limitCTA:(null==ve?void 0:ve["pricing.upgrade"])||(null==ve?void 0:ve.upgrade)||"Upgrade",Es=s.useMemo((()=>{var e,t,s;return!!Ie&&(!!me&&(!st.isLoading&&(!((null!==(t=null===(e=st.data)||void 0===e?void 0:e.messages.length)&&void 0!==t?t:0)>1)&&(!!(null===(s=me.icebreakers)||void 0===s?void 0:s.length)&&(!xe&&!ss)))))}),[me,Ie,xe,ss,st.data,st.isLoading]),Us=s.useMemo((()=>{if(Pe||Ve)return!1;const e=Zt&&Fe.length>0&&Fe.every((e=>"finished"===e.status));return!(!nt.trim()&&!e)&&Fe.every((e=>"finished"===e.status||e.isInsertedAsRaw))}),[Zt,Pe,Ve,nt,Fe]);s.useImperativeHandle(K,(()=>({onSubmit:Cs}))),s.useEffect((()=>{Oe(Es)}),[Es]),s.useEffect((()=>{var e;if(R){const t=Array.from(De),s=null===(e=t[t.length-2].parts.find((e=>"text"===e.type)))||void 0===e?void 0:e.content;Cs(s,!0)}}),[R]),s.useEffect((()=>{if(!_t.current||!X)return;const e=new ResizeObserver((e=>{for(const t of e)X(t.contentRect.height)}));return e.observe(_t.current),()=>{e.disconnect()}}),[X]),s.useEffect((()=>{if(!At)return;const e=yt.current?`${yt.current} `:"";it(`${e}${Tt}`)}),[Tt,At]),s.useEffect((()=>{if(!wt.current)return;(()=>{if(!wt.current)return;let e=wt.current.scrollHeight>52;nt.includes("\n")||Fe.length?e=!0:nt.trim()||(e=!1),ot(e)})()}),[nt,Fe]),s.useEffect((()=>{const e=wt.current,t=Nt.current;if(!e||!t||rt||nt.includes("\n"))return void lt(!1);const s=window.getComputedStyle(e),n=`${s.fontStyle} ${s.fontVariant} ${s.fontWeight} ${s.fontSize} / ${s.lineHeight} ${s.fontFamily}`,i=document.createElement("span");Object.assign(i.style,{font:n,letterSpacing:s.letterSpacing,position:"absolute",visibility:"hidden",whiteSpace:"nowrap",top:"0",left:"0"}),i.textContent=nt||rs,document.body.appendChild(i);const r=i.offsetWidth;i.remove();const o=parseFloat(s.paddingLeft)||0,a=parseFloat(s.paddingRight)||0,l=e.clientWidth-o-a-t.offsetWidth;lt(r>l)}),[nt,rt,rs]);const Cs=(t,s=!1)=>e.__awaiter(void 0,void 0,void 0,(function*(){var e,n,i,r,o,a;let l=null;try{if(Pe||Ve)return;const d=Fe.filter((e=>"finished"===e.status&&!e.isInsertedAsRaw)),c=d.map((e=>e.documentId)).filter(Boolean),u=d.filter((e=>"image"===e.type)).map((e=>{const t=e.name.split(".").pop()||"";return{documentId:e.documentId,extension:t}})),p=null!=t?t:nt,m=null!==(n=null===(e=null==me?void 0:me.documentuploadtype)||void 0===e?void 0:e.startsWith("enduserupload"))&&void 0!==n&&n&&c.length>0;if(!p&&!m)return;qe(""),He(""),Re(null),it(""),Se(!1),Me("fetching"),Ye(),Ge();const f=null!==(r=null===(i=st.data)||void 0===i?void 0:i.messages)&&void 0!==r?r:[],g=w.getUnpersistedMemoryMessages(De,f),h=s?g.slice(0,g.length-1):g,b=(e=>e.reduce(((e,t)=>Math.max(e,t.id)),0)+1)(h),I=b+(s?0:1),y={id:I,role:"assistant",parts:[],documentIds:[]},x=[...h,...s?[]:[{id:b,role:"user",parts:[{type:"text",content:p,isVisible:!0}],documentIds:m?c:[]}],y];Le(x),Ge(),m&&Xe([]);const j=U.getPickaxeConfigMetadata(ue),S="undefined"!=typeof crypto&&"randomUUID"in crypto?crypto.randomUUID():`submission-${Date.now()}-${Math.random().toString(36).slice(2)}`;l=S,jt.current=S,St.current=null,Ot.current=[];const O=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API2_URL}/response/submit`,Object.assign({method:"POST",body:JSON.stringify(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({origin:re,pickaxeId:oe,sessionId:ae,submissionId:S,senderType:de,value:p},m&&{documentIds:c}),le&&{sender:le}),Ue&&{studioSessionToken:Ue}),!Ue&&!le&&{sender:E.initializeEmbedUserId()}),us&&{portalId:us}),ue&&{deploymentId:ue}),j&&{metadata:j}),m&&u.length>0?{uploadedModelImages:u}:{})),headers:Object.assign(Object.assign({},(!process.env.NODE_ENV||"development"===process.env.NODE_ENV)&&Object.assign({},process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN&&{"x-pickaxe-session-token":process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN})),{"x-request-sent-at":(new Date).toISOString()})},Qt&&{credentials:"include"})),N=yield O.json();if(!N.success){if(N.limitData){const e=new Error(N.error||N.message||(null==ve?void 0:ve["failed-to-start-generation"])||"Failed to start generation");throw e.limitData=N.limitData,e}if(is(N))return;throw new Error(N.error||N.message||(null==ve?void 0:ve["failed-to-start-generation"])||"Failed to start generation")}const _=null!==(o=N.submissionId)&&void 0!==o?o:S;l=_,jt.current=_;const k=()=>St.current===_;if(k())return;ts&&Ie&&ae&&Et.current.add(ae);const T=Object.assign(Object.assign({},ms()),{message:p,documentIds:m?c:[],uploadedModelImages:m?u:[],hasUploadedDocuments:m,isHidden:s,metadata:null!=j?j:null});mt?(fs(),C.fireDeploymentFirstMessageSubmittedWebhook(T)):Ut.current=T,Me("streaming"),kt.current=new AbortController;const A=[];let D=[...null!=Je?Je:[]],P=0,R=!1,q="";for(;!R;)try{const e=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API2_URL}/response/stream/${_}?index=${P}`,{signal:null===(a=kt.current)||void 0===a?void 0:a.signal,headers:{"Cache-Control":"no-cache",Connection:"keep-alive"}});if(!e.body)throw new Error("No response body");const t=e.body.getReader();xt.current=t;const s=new TextDecoder,n=v.createParser({onEvent:e=>{var t,s;if(k())R=!0;else if(e.event&&"ping"!==e.event&&P++,"stop"!==e.event){if("error"===e.event){const t=JSON.parse(e.data);if(t.limitData)return Re(t.limitData),qe(""),void(R=!0);const s=t.error||t.message||(null==ve?void 0:ve["something-went-wrong"])||"Something went wrong.";return is(t)||qe(s),void(R=!0)}if("delta"===e.event){const n=JSON.parse(e.data);if("data-error"===n.type&&H){const e=n.data.error;if("string"==typeof e){const t=/['"]type['"]\s*:\s*['"]unauthorized_smithery['"]/.test(e),s=/['"]type['"]\s*:\s*['"]unauthorized_composio['"]/.test(e);if(t){const t=e.match(/['"]qualifiedName['"]\s*:\s*['"]([^'"]+)['"]/),s=e.match(/['"]serverId['"]\s*:\s*['"]([^'"]+)['"]/),n=e.match(/['"]name['"]\s*:\s*['"]([^'"]+)['"]/);if(t&&t[1]&&s&&s[1]&&n&&n[1])throw R=!0,H({provider:"smithery",smitheryId:t[1],serverId:s[1],name:n[1]}),new Error("STOP_STREAM")}else if(s){const t=e.match(/['"]toolkitSlug['"]\s*:\s*['"]([^'"]+)['"]/),s=e.match(/['"]serverId['"]\s*:\s*['"]([^'"]+)['"]/),n=e.match(/['"]name['"]\s*:\s*['"]([^'"]+)['"]/);if(t&&t[1]&&s&&s[1]&&n&&n[1])throw R=!0,H({provider:"composio",toolkitSlug:t[1],serverId:s[1],name:n[1]}),new Error("STOP_STREAM")}}else if("object"==typeof e&&null!==e){const t=e;if("unauthorized_smithery"===t.type&&t.qualifiedName&&t.serverId&&t.name)throw R=!0,H({provider:"smithery",smitheryId:t.qualifiedName,serverId:t.serverId,name:t.name}),new Error("STOP_STREAM");if("unauthorized_composio"===t.type&&t.toolkitSlug&&t.serverId&&t.name)throw R=!0,H({provider:"composio",toolkitSlug:t.toolkitSlug,serverId:t.serverId,name:t.name}),new Error("STOP_STREAM")}}else if("text-start"===n.type)q="",A.push({type:"text",content:"",isVisible:null===(t=n.isVisible)||void 0===t||t});else if("text-delta"===n.type)q+=n.delta,A[A.length-1].content=q;else if("text-end"===n.type)q="";else if("reasoning-start"===n.type)q="",A.push({type:"reasoning",content:"",isVisible:null===(s=n.isVisible)||void 0===s||s});else if("reasoning-delta"===n.type)q+=n.delta,A[A.length-1].content=q;else if("reasoning-end"===n.type)q="";else if(n.type.startsWith("data-")){const e=n;A.push({type:e.type,content:JSON.stringify(e.data),isVisible:!0})}Ot.current=L(A);const i=L(A);Le((e=>{const t=e.findIndex((e=>e.id===I)),s=Object.assign(Object.assign({},y),{parts:i});return-1===t?[...e,s]:e.map(((e,n)=>n===t?s:e))}))}else if("artifact_created"===e.event){const t=JSON.parse(e.data);D=D.filter((e=>!(e.id===t.id&&e.version===t.version))),D.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),Ze([...D]),Qe.startsWith("inline")||et({id:t.id,version:t.version})}else if("artifact_updated"===e.event){const t=JSON.parse(e.data);D=D.filter((e=>!(e.id===t.id&&e.version===t.version))),D.push(Object.assign(Object.assign({},t),{content:"",status:"updating"})),Ze(D),Qe.startsWith("inline")||et({id:t.id,version:t.version})}else if("artifact_rewrite"===e.event){const t=JSON.parse(e.data);D=D.filter((e=>!(e.id===t.id&&e.version===t.version))),D.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),Ze(D),Qe.startsWith("inline")||et({id:t.id,version:t.version})}else if("artifact_content"===e.event){const t=JSON.parse(e.data),s=t.token.replace(/\u200B/g,"");D=D.map((e=>e.id===t.id&&e.version===t.version?Object.assign(Object.assign({},e),{content:e.content+s,status:"streaming"}):e)),Ze(D)}else if("artifact_finished"===e.event){const t=JSON.parse(e.data);Ze(D.map((e=>e.id===t.id?Object.assign(Object.assign({},e),{status:"finished"}):e)))}else if("error"===e.event){const t=JSON.parse(e.data);if(t.limitData)return Re(t.limitData),qe(""),void(R=!0);const s=t.error||t.message||(null==ve?void 0:ve["something-went-wrong-try-again"])||"Something went wrong, please try again.";if(is(t))return void(R=!0);qe(s)}else"stop"===e.event&&(R=!0)}else R=!0}});for(;;){if(k()){R=!0,t.cancel().catch((()=>{}));break}const{value:e,done:i}=yield t.read();if(k()){R=!0,t.cancel().catch((()=>{}));break}if(i)break;n.feed(s.decode(e))}R||k()||(yield new Promise((e=>setTimeout(e,1e3))))}catch(e){if("STOP_STREAM"===e.message||M(e)||k())return void(R=!0);console.warn("Stream connection lost, retrying...",e),yield new Promise((e=>setTimeout(e,1e3)))}null==Ee||Ee(ae)}catch(e){if(M(e))return;if(e.limitData)Re(e.limitData),qe("");else{let t=O.default(e)||"";t&&!t.includes("Unexpected token 'A',")||(t=(null==ve?void 0:ve["high-traffic-try-again-later"])||"Oops! We're experiencing high traffic at the moment. Please try again later."),is(t)||qe(t)}}finally{const e=!l||jt.current===l;Ge(),e&&(Me("idle"),ze(),xt.current=null),l&&e&&(jt.current=null,Ot.current=[]),yield as()}}));return ns?null:t.jsx("div",Object.assign({className:k.default("flex w-full flex-shrink-0 flex-col items-center",!ss&&"px-4 pb-8"),dir:ye?"rtl":"ltr"},{children:t.jsxs("div",Object.assign({className:"flex w-full max-w-[800px] flex-col"},{children:[t.jsxs("div",Object.assign({ref:_t,className:k.default("relative flex flex-col w-full justify-end gap-y-3 py-[3px]","block"===fe.formFieldStyle&&"shadow"),style:Object.assign(Object.assign({},Yt),{maxHeight:`${Ct}px`,overflowY:"auto"})},{children:[ws&&t.jsxs("div",Object.assign({className:"sticky top-0 z-10 flex w-full items-center justify-between border-b px-4 py-2.5 shadow-sm backdrop-blur-md",style:{backgroundColor:Yt.backgroundColor?`${Yt.backgroundColor}E6`:void 0,borderColor:ge.text+"20",color:ge.text,borderTopRightRadius:fe.cornerRadius+"px",borderTopLeftRadius:fe.cornerRadius+"px"}},{children:[t.jsx("div",Object.assign({className:"flex items-center gap-2 text-sm font-medium"},{children:t.jsxs("span",{children:[ys.toLocaleString()," ",cs?(null==ve?void 0:ve.credits)||"Credits":(null==ve?void 0:ve.uses)||"Uses"," ",(null==ve?void 0:ve.remaining)||"remaining"]})})),t.jsxs("div",Object.assign({className:"flex items-center gap-3"},{children:[!Ns&&t.jsx("button",Object.assign({className:"rounded-md px-3 py-1.5 text-xs font-semibold transition-opacity hover:opacity-90",style:{backgroundColor:ge.accent,color:ge.accentText},onClick:e=>{if(e.preventDefault(),e.stopPropagation(),_s)return void window.open(_s,"_blank","noopener,noreferrer");const t=E.buildUpgradeUrl({baseUrl:ut,accessGroupId:null==je?void 0:je.accessGroupId,redirectUrl:document.URL});t&&(E.isInIframe()?window.open(t):location.href=t)}},{children:ks})),t.jsx("button",Object.assign({className:"flex h-6 w-6 items-center justify-center rounded-full opacity-60 transition-opacity hover:opacity-100",onClick:()=>vt(!0)},{children:t.jsx("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:2,stroke:"currentColor",className:"h-4 w-4"},{children:t.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M6 18L18 6M6 6l12 12"})}))}))]}))]})),!Pe&&Fe.length>0&&t.jsx(x.default,{className:"p-4 pb-0",isDisabled:Pe}),t.jsxs("div",Object.assign({className:"relative flex w-full flex-col"},{children:[At&&t.jsxs("div",Object.assign({className:"absolute left-4 top-1/2 flex -translate-y-1/2 select-none items-center gap-x-2"},{children:[t.jsx("span",{className:"h-2 w-2 animate-pulse rounded-full bg-c-secondary",style:{backgroundColor:null!==(ie=ge.accent)&&void 0!==ie?ie:"#ff0000"}}),t.jsx("span",Object.assign({className:"text-sm text-c-secondary font-semilight",style:{color:ge.text+"90"}},{children:(null==ve?void 0:ve.listening)||"Listening..."}))]})),t.jsx(j.default,Object.assign({ref:wt,className:k.default(Wt.i1,"py-3.5 max-h-60 px-4 w-full border-transparent bg-transparent",!nt.trim()&&!nt.includes("\n")&&"overflow-hidden text-ellipsis whitespace-nowrap placeholder:whitespace-normal placeholder:overflow-visible",ye?"text-right":"text-left",os&&"mb-12",At&&"text-transparent"),value:nt,placeholder:rs,onChange:e=>{it(e)},onKeyDown:e=>{be||We||"Enter"===e.key&&(e.shiftKey||(e.preventDefault(),Ve||Pe||Cs()))},onPaste:t=>e.__awaiter(void 0,void 0,void 0,(function*(){const e=Array.from(t.clipboardData.files||[]);if(e.length>0){if(!Zt)return;t.preventDefault(),Se(!1),yield $e(e)}}))},B&&{onFocus:B},$&&{onBlur:$},{dir:ye?"rtl":"ltr"})),t.jsx("div",Object.assign({ref:Nt,className:k.default("flex items-center gap-2 absolute right-0 z-2 transition-all duration-200 ease-in-out",os?"bottom-0 mb-2.5":"top-1/2 -translate-y-1/2"),style:Object.assign(Object.assign({},!os&&Yt.backgroundColor&&{backgroundColor:Yt.backgroundColor}),{borderTopRightRadius:fe.cornerRadius+"px",borderBottomRightRadius:fe.cornerRadius+"px"})},{children:Pe?t.jsx("button",Object.assign({className:"flex h-8 w-8 items-center mr-2 justify-center rounded-full outline-none transition-colors duration-200 ease-in-out",onClick:()=>{const t=jt.current;t&&(St.current=t,(t=>{e.__awaiter(void 0,void 0,void 0,(function*(){if(!(t=null!=t?t:jt.current))return;const e=L(Ot.current);try{yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API2_URL}/response/cancel/${t}`,Object.assign({method:"POST",headers:Object.assign(Object.assign({"Content-Type":"application/json"},(!process.env.NODE_ENV||"development"===process.env.NODE_ENV)&&Object.assign({},process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN&&{"x-pickaxe-session-token":process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN})),{"x-request-sent-at":(new Date).toISOString()}),body:JSON.stringify({outputMessageParts:e})},Qt&&{credentials:"include"}))}catch(e){console.warn("Failed to cancel submission",e)}}))})(t)),kt.current&&(kt.current.abort(),kt.current=null),xt.current&&(xt.current.cancel().catch((()=>{})),xt.current=null),Me("idle")},style:{backgroundColor:ge.accent,color:ge.accentText}},{children:t.jsx(y.default,{className:"h-4 w-4 shrink-0"})})):At?t.jsx("button",Object.assign({className:"flex h-8 w-8 items-center mr-2 justify-center rounded-full outline-none transition-colors duration-200 ease-in-out",onClick:Mt,style:{backgroundColor:ge.accent,color:ge.accentText}},{children:t.jsx(y.default,{className:"h-4 w-4 shrink-0"})})):t.jsxs(t.Fragment,{children:[Zt&&t.jsxs("button",Object.assign({className:"flex h-8 w-8 items-center justify-center rounded-full outline-none transition-colors duration-200 ease-in-out disabled:cursor-default",style:{backgroundColor:Bt?ge.accent+"10":void 0,color:Bt?ge.accent:ge.accent+"80"},disabled:Ve||Pe,onClick:()=>{var e;return null===(e=It.current)||void 0===e?void 0:e.click()}},$t,{children:[t.jsx("input",{id:"file-upload",ref:It,type:"file",accept:[...g.allowedFileMimeTypes,...g.allowedImageMimeTypes,...g.additionalAllowedFileExtensions].join(", "),multiple:!0,hidden:!0,className:"hidden",onChange:t=>e.__awaiter(void 0,void 0,void 0,(function*(){Se(!1),yield $e(Array.from(t.target.files||[])),t.target.value=""}))}),t.jsx(h.default,{className:"h-6 w-6 shrink-0"})]})),es&&t.jsx("button",Object.assign({className:"disabled:cursor-default flex h-8 w-8 items-center justify-center rounded-full outline-none transition-colors duration-200 ease-in-out",style:{backgroundColor:At?ge.accent:Ht?ge.accent+"10":void 0,color:At?ge.accentText:Ht?ge.accent:ge.accent+"80"},disabled:Ve||Pe||Dt,onClick:()=>{At?Mt():(yt.current=nt,Lt(he||"en-US"))}},Kt,{children:t.jsx(I.default,{className:"h-5 w-5 shrink-0"})})),t.jsx("button",Object.assign({className:"flex h-8 w-8 items-center mr-2 justify-center rounded-full outline-none transition-colors duration-200 ease-in-out disabled:cursor-default",style:{backgroundColor:qt||Us?ge.accent:ge.accent+"10",color:qt||Us?ge.accentText:ge.accent+"80"},disabled:!Us,onClick:()=>Cs()},Ft,{children:t.jsx(b.default,{className:k.default("h-6 w-6 shrink-0",ye&&"scale-x-[-1] transform")})}))]})}))]}))]})),Be&&t.jsx(S.default,{error:Be,className:"mt-3"})]}))}))}));B.displayName="Input",exports.default=B;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../_virtual/_tslib.js"),t=require("react/jsx-runtime"),s=require("react"),n=require("../../../hooks/pickaxe/usePickaxeContext.js"),i=require("../../../hooks/pickaxe/useResponseContext.js"),o=require("../../../hooks/studio/useStyleInput.js"),r=require("../../../hooks/studio/useStyleFontSize.js"),a=require("../../../hooks/pickaxe/useConversation.js"),l=require("../../../hooks/pickaxe/useDimensionContext.js"),d=require("../Addons/Auth/hooks/useAuthContext.js"),c=require("../Addons/Document/hooks/useDocument.js"),u=require("../Addons/Scroll/hooks/useScroll.js"),p=require("../Addons/Artifact/hooks/useArtifactContext.js"),m=require("../../../hooks/core/useHover.js"),f=require("../../../hooks/core/useMediaQuery.js"),g=require("../../../common/documents.js"),v=require("eventsource-parser"),h=require("../../Icons/attach-vertical.svg.js"),b=require("../../Icons/arrow-right.svg.js"),I=require("../../Icons/microphone.svg.js"),y=require("../../Icons/stop.svg.js"),x=require("../Addons/Document/List.js"),j=require("../../Core/Textarea.js"),S=require("../../Core/ErrorAlert.js"),O=require("../../../common/error.js"),w=require("../../../common/chatMessages.js"),N=require("../../../common/api/pickaxe.js"),_=require("../../../common/validation.js"),k=require("../../../common/cn.js"),E=require("../../../common/utils.js"),T=require("../../../common/pickaxeConfig.js"),U=require("../../../common/deploymentWebhooks.js"),C=require("../../../hooks/studio/useStudio.js"),A=require("../../../hooks/pickaxe/useSpeechToText.js"),D=require("../common/PickaxeCommon.js");const P=e=>"string"==typeof e&&e.trim().length>0,L=e=>e.map((e=>Object.assign({},e))),M=e=>e instanceof Error&&("AbortError"===e.name||"BodyStreamBuffer was aborted"===e.message),R=(e,t)=>{if(e&&"object"==typeof e)return e[t]},q=(e,t)=>{const s=R(e,t);return P(s)?s:null},F=e=>{const t=Number(e);return Number.isFinite(t)?t:void 0},V=({studioUser:e,deploymentId:t,portalId:s})=>{var n,i;const o=Array.isArray(R(e,"uses"))?R(e,"uses"):[],r=(({deploymentId:e,portalId:t})=>P(e)?{type:"deployment",id:e}:P(t)?{type:"portal",id:t}:null)({deploymentId:t,portalId:s});if(!r)return{scope:r,record:null};const a=null!==(i=null!==(n=o.find((e=>e.id===r.id&&e.type===r.type)))&&void 0!==n?n:o.find((e=>e.id===r.id)))&&void 0!==i?i:null;return{scope:r,record:a}},B=s.forwardRef((({resubmitPrompt:R,onFocus:B,onBlur:$,onInputHeightChange:X,initSmitheryAuthData:H},K)=>{var W,Y,z,G,J,Q,Z,ee,te,se,ne,ie;const{origin:oe,pickaxeId:re,sessionId:ae,sender:le,senderType:de,portalId:ce,deploymentId:ue,deploymentType:pe,pickaxe:me,styles:fe,colors:ge,translations:ve,locale:he,forceMobile:be,isNewChat:Ie,isRtl:ye,isShowFeedbackMessage:xe,accessGroup:je,setIsNewChat:Se,setIsShowIceBreaker:Oe,setValidationStatus:we,setValidationUpgradeGroups:Ne,setValidationUpgradeUrl:_e,setAccessGroup:ke,onGenerateComplete:Ee}=n.usePickaxeContext(),{token:Te,isLoggedOut:Ue,isSent:Ce,isPricingAuth:Ae}=d.useAuthContext(),{messages:De,isGenerating:Pe,setMessages:Le,setStatus:Me,setLimitData:Re,setError:qe}=i.useResponseContext(),{documents:Fe,isUploading:Ve,documentError:Be,onFileUpload:$e,setDocuments:Xe,setDocumentError:He}=c.useDocument(),{studio:Ke}=C.useStudio(),[We]=f.useMediaQuery("(max-width: 480px)"),{scrollStartSession:Ye,scrollEndSession:ze,scrollToBottom:Ge}=u.useScroll({auto:!0,smooth:!(be||We)}),{artifacts:Je,currentPopupType:Qe,setArtifacts:Ze,setCurrentArtifact:et}=p.useArtifactContext(),{height:tt}=l.useDimensionContext(),st=a.useConversation(),[nt,it]=s.useState(""),[ot,rt]=s.useState(!1),[at,lt]=s.useState(!1),[dt,ct]=s.useState(null),[ut,pt]=s.useState(null),[mt,ft]=s.useState(!1),[gt,vt]=s.useState(!1),[ht,bt]=s.useState(0),It=s.useRef(null),yt=s.useRef(""),xt=s.useRef(null),jt=s.useRef(null),St=s.useRef(null),Ot=s.useRef([]),wt=s.useRef(null),Nt=s.useRef(null),_t=s.useRef(null),kt=s.useRef(null),Et=s.useRef(new Set),Tt=s.useRef(null),Ut=Math.max(.4*tt,100),{speechTranscript:Ct,isSpeechListening:At,isSpeechProcessing:Dt,isSpeechSupported:Pt,onStartListening:Lt,onStopListening:Mt}=A.useSpeechToText(),Rt=m.useHover(),{isHover:qt}=Rt,Ft=e.__rest(Rt,["isHover"]),Vt=m.useHover(),{isHover:Bt}=Vt,$t=e.__rest(Vt,["isHover"]),Xt=m.useHover(),{isHover:Ht}=Xt,Kt=e.__rest(Xt,["isHover"]),Wt=r.useStyleFontSize(),Yt=o.useStyleInput(),zt="undefined"!=typeof window?window.location.hostname:"",Gt="undefined"!=typeof window?window.location.href:"",Jt="undefined"!=typeof window&&window.self!==window.top,Qt=zt.includes("pickaxe.co")&&!Gt.includes("https://studio.pickaxe.co/_embed")&&!Jt,Zt=null!==(Y=null===(W=null==me?void 0:me.documentuploadtype)||void 0===W?void 0:W.startsWith("enduserupload"))&&void 0!==Y&&Y,es=Pt&&(null==me?void 0:me.enablevoicetotext),ts=P(ue),ss="chat-input"===pe&&Ie&&!Ce,ns="chat-input"===pe&&Ae&&Ue&&Ce,is=s.useCallback((e=>{const t=_.getValidationFailure(e);return!!t&&(qe(""),Re(null),we(t.status),ke(t.accessGroup),Ne(t.upgradeGroups),_e(t.upgradeUrl),!0)}),[qe,Re,we,Ne,_e,ke]),os=null!==(z=null==me?void 0:me.placeholdertext)&&void 0!==z?z:ye?"بماذا تريد أن تتحدث؟":(null==ve?void 0:ve["what-do-you-want-to-talk-about"])||"What do you want to talk about?",rs=ot||at,as=s.useCallback((()=>e.__awaiter(void 0,void 0,void 0,(function*(){ft(!1);try{const e=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API2_URL}/user`,Object.assign(Object.assign({method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(Object.assign({studioId:null==me?void 0:me.studioid},Te?{studioSessionToken:Te}:le?{sender:le}:{sender:E.initializeEmbedUserId()}))},(!process.env.NODE_ENV||"development"===process.env.NODE_ENV)&&Object.assign({},process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN&&{headers:{"Content-Type":"application/json","x-pickaxe-session-token":process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN}})),Qt&&{credentials:"include"})),t=yield e.json();(null==t?void 0:t.studioUser)&&(ct(t.studioUser),pt(t.url))}catch(e){console.error("Failed to fetch studio user:",e)}finally{ft(!0)}}))),[Qt,null==me?void 0:me.studioid,le,Te]);s.useEffect((()=>{as()}),[as]);const ls=Number(null!==(G=null==je?void 0:je.limit)&&void 0!==G?G:0),ds="string"==typeof(null==je?void 0:je.limitInterval)?je.limitInterval:null,cs=!!(null==Ke?void 0:Ke.data.usage)&&Ke.data.usage.isCredits,us=s.useMemo((()=>{var e,t,s,n,i;return null!==(i=null!==(n=null!==(s=null!==(t=null!==(e=null!=ce?ce:q(dt,"portalId"))&&void 0!==e?e:q(dt,"portalid"))&&void 0!==t?t:q(je,"portalId"))&&void 0!==s?s:q(je,"portalid"))&&void 0!==n?n:q(me,"portalId"))&&void 0!==i?i:q(me,"portalid")}),[je,ce,me,dt]),ps=s.useMemo((()=>V({studioUser:dt,deploymentId:ue,portalId:us})),[ue,us,dt]);s.useEffect((()=>{ts&&Ie&&ae&&Et.current.add(ae)}),[Ie,ae,ts]);const ms=s.useCallback((()=>{var e,t,s;return{studioId:null==me?void 0:me.studioid,userEmail:q(dt,"email"),userId:null!==(e=q(dt,"userId"))&&void 0!==e?e:q(dt,"userid"),sessionId:ae,deploymentId:ue,deploymentType:pe,portalId:us,accessGroupId:null!==(t=null==je?void 0:je.accessGroupId)&&void 0!==t?t:null,pickaxeId:re,sender:le,senderType:de,origin:oe,metadata:null!==(s=T.getPickaxeConfigMetadata(ue))&&void 0!==s?s:null}}),[null==je?void 0:je.accessGroupId,ue,pe,oe,null==me?void 0:me.studioid,re,us,le,de,ae,dt]),fs=s.useCallback((()=>!!(ts&&mt&&ae)&&(!!Et.current.has(ae)&&(U.fireDeploymentSessionInitializedWebhook(ms()),Et.current.delete(ae),!0))),[ms,mt,ae,ts]);s.useEffect((()=>{if(!mt||!ae)return;fs();const e=Tt.current;(null==e?void 0:e.sessionId)===ae&&(U.fireDeploymentFirstMessageSubmittedWebhook(Object.assign(Object.assign(Object.assign({},e),ms()),{message:e.message,documentIds:e.documentIds,uploadedModelImages:e.uploadedModelImages,hasUploadedDocuments:e.hasUploadedDocuments,isHidden:e.isHidden})),Tt.current=null)}),[fs,ms,mt,ae]);const gs={currentUses:F(null==dt?void 0:dt.currentUses),extraUses:F(null==dt?void 0:dt.extraUses)},vs=ps.scope?{currentUses:null!==(Q=F(null===(J=ps.record)||void 0===J?void 0:J.currentUses))&&void 0!==Q?Q:0,extraUses:null!==(ee=F(null===(Z=ps.record)||void 0===Z?void 0:Z.extraUses))&&void 0!==ee?ee:0}:{currentUses:0,extraUses:0},hs=q(dt,"type"),bs="guest"===hs||!hs&&Ue?vs:gs;s.useEffect((()=>{let t=!0;return e.__awaiter(void 0,void 0,void 0,(function*(){var e;if(cs&&(null===(e=null==Ke?void 0:Ke.data)||void 0===e?void 0:e.workspaceId))try{const e=yield N.pickaxeApi2.get(`/cost_per_run?workspaceId=${Ke.data.workspaceId}`,{withCredentials:!1});t&&bt(1e4*(Number(e.data.costPerRun)||0))}catch(e){console.error("Failed to fetch average cost per run:",e),t&&bt(0)}else t&&bt(0)})),()=>{t=!1}}),[cs,null===(te=null==Ke?void 0:Ke.data)||void 0===te?void 0:te.workspaceId]);const Is=(({currentUses:e,extraUses:t,limit:s,limitInterval:n})=>{const i=Number(null!=e?e:0),o=Number(null!=t?t:0);return s===D.STUDIO_INFINITY_VALUE||o===D.STUDIO_INFINITY_VALUE?D.STUDIO_INFINITY_VALUE:"one_time"===n?Math.max(0,o-i):Math.max(0,s-i)+o})({currentUses:bs.currentUses,extraUses:bs.extraUses,limit:ls,limitInterval:ds}),ys=Is===D.STUDIO_INFINITY_VALUE?D.STUDIO_INFINITY_VALUE:Math.max(0,Math.ceil(Is)),xs=(({extraUses:e,limit:t,limitInterval:s})=>{const n=Number(null!=e?e:0);return t===D.STUDIO_INFINITY_VALUE||n===D.STUDIO_INFINITY_VALUE?D.STUDIO_INFINITY_VALUE:"one_time"===s?Math.max(0,n):Math.max(0,t)+Math.max(0,n)})({extraUses:bs.extraUses,limit:ls,limitInterval:ds}),js=xs===D.STUDIO_INFINITY_VALUE?D.STUDIO_INFINITY_VALUE:Math.ceil(.05*xs),Ss=cs?Math.ceil(5*ht):5,Os=js===D.STUDIO_INFINITY_VALUE?D.STUDIO_INFINITY_VALUE:Math.max(js,Ss),ws=s.useMemo((()=>!!dt&&(!gt&&(ys!==D.STUDIO_INFINITY_VALUE&&(!(ys<=0)&&ys<=Os)))),[gt,Os,ys,dt]),Ns=Boolean(null==je?void 0:je.hideUpgradeOptions),_s=!Ns&&(null===(se=null==je?void 0:je.upgrade)||void 0===se?void 0:se.isLinkToCustomURL)&&"string"==typeof je.upgrade.limitLink&&je.upgrade.limitLink.trim().length>0?je.upgrade.limitLink.trim():null,ks=_s&&"string"==typeof(null===(ne=null==je?void 0:je.upgrade)||void 0===ne?void 0:ne.limitCTA)&&je.upgrade.limitCTA.trim().length>0?je.upgrade.limitCTA:(null==ve?void 0:ve["pricing.upgrade"])||(null==ve?void 0:ve.upgrade)||"Upgrade",Es=s.useMemo((()=>{var e,t,s;return!!Ie&&(!!me&&(!st.isLoading&&(!((null!==(t=null===(e=st.data)||void 0===e?void 0:e.messages.length)&&void 0!==t?t:0)>1)&&(!!(null===(s=me.icebreakers)||void 0===s?void 0:s.length)&&(!xe&&!ss)))))}),[me,Ie,xe,ss,st.data,st.isLoading]),Ts=s.useMemo((()=>{if(Pe||Ve)return!1;const e=Zt&&Fe.length>0&&Fe.every((e=>"finished"===e.status));return!(!nt.trim()&&!e)&&Fe.every((e=>"finished"===e.status||e.isInsertedAsRaw))}),[Zt,Pe,Ve,nt,Fe]);s.useImperativeHandle(K,(()=>({onSubmit:Us}))),s.useEffect((()=>{Oe(Es)}),[Es]),s.useEffect((()=>{var e;if(R){const t=Array.from(De),s=null===(e=t[t.length-2].parts.find((e=>"text"===e.type)))||void 0===e?void 0:e.content;Us(s,!0)}}),[R]),s.useEffect((()=>{if(!_t.current||!X)return;const e=new ResizeObserver((e=>{for(const t of e)X(t.contentRect.height)}));return e.observe(_t.current),()=>{e.disconnect()}}),[X]),s.useEffect((()=>{if(!At)return;const e=yt.current?`${yt.current} `:"";it(`${e}${Ct}`)}),[Ct,At]),s.useEffect((()=>{if(!wt.current)return;(()=>{if(!wt.current)return;let e=wt.current.scrollHeight>52;nt.includes("\n")||Fe.length?e=!0:nt.trim()||(e=!1),rt(e)})()}),[nt,Fe]),s.useEffect((()=>{const e=wt.current,t=Nt.current;if(!e||!t||ot||nt.includes("\n"))return void lt(!1);const s=window.getComputedStyle(e),n=`${s.fontStyle} ${s.fontVariant} ${s.fontWeight} ${s.fontSize} / ${s.lineHeight} ${s.fontFamily}`,i=document.createElement("span");Object.assign(i.style,{font:n,letterSpacing:s.letterSpacing,position:"absolute",visibility:"hidden",whiteSpace:"nowrap",top:"0",left:"0"}),i.textContent=nt||os,document.body.appendChild(i);const o=i.offsetWidth;i.remove();const r=parseFloat(s.paddingLeft)||0,a=parseFloat(s.paddingRight)||0,l=e.clientWidth-r-a-t.offsetWidth;lt(o>l)}),[nt,ot,os]);const Us=(t,s=!1)=>e.__awaiter(void 0,void 0,void 0,(function*(){var e,n,i,o,r,a;let l=null;try{if(Pe||Ve)return;const d=Fe.filter((e=>"finished"===e.status&&!e.isInsertedAsRaw)),c=d.map((e=>e.documentId)).filter(Boolean),u=d.filter((e=>"image"===e.type)).map((e=>{const t=e.name.split(".").pop()||"";return{documentId:e.documentId,extension:t}})),p=null!=t?t:nt,m=null!==(n=null===(e=null==me?void 0:me.documentuploadtype)||void 0===e?void 0:e.startsWith("enduserupload"))&&void 0!==n&&n&&c.length>0;if(!p&&!m)return;qe(""),He(""),Re(null),it(""),Se(!1),Me("fetching"),Ye(),Ge();const f=null!==(o=null===(i=st.data)||void 0===i?void 0:i.messages)&&void 0!==o?o:[],g=w.getUnpersistedMemoryMessages(De,f),h=s?g.slice(0,g.length-1):g,b=(e=>e.reduce(((e,t)=>Math.max(e,t.id)),0)+1)(h),I=b+(s?0:1),y={id:I,role:"assistant",parts:[],documentIds:[]},x=[...h,...s?[]:[{id:b,role:"user",parts:[{type:"text",content:p,isVisible:!0}],documentIds:m?c:[]}],y];Le(x),Ge(),m&&Xe([]);const j=T.getPickaxeConfigMetadata(ue),S="undefined"!=typeof crypto&&"randomUUID"in crypto?crypto.randomUUID():`submission-${Date.now()}-${Math.random().toString(36).slice(2)}`;l=S,jt.current=S,St.current=null,Ot.current=[];const O=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API2_URL}/response/submit`,Object.assign({method:"POST",body:JSON.stringify(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({origin:oe,pickaxeId:re,sessionId:ae,submissionId:S,senderType:de,value:p},m&&{documentIds:c}),le&&{sender:le}),Te&&{studioSessionToken:Te}),!Te&&!le&&{sender:E.initializeEmbedUserId()}),us&&{portalId:us}),ue&&{deploymentId:ue}),j&&{metadata:j}),m&&u.length>0?{uploadedModelImages:u}:{})),headers:Object.assign(Object.assign({},(!process.env.NODE_ENV||"development"===process.env.NODE_ENV)&&Object.assign({},process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN&&{"x-pickaxe-session-token":process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN})),{"x-request-sent-at":(new Date).toISOString()})},Qt&&{credentials:"include"})),N=yield O.json();if(!N.success){if(N.limitData){const e=new Error(N.error||N.message||(null==ve?void 0:ve["failed-to-start-generation"])||"Failed to start generation");throw e.limitData=N.limitData,e}if(is(N))return;throw new Error(N.error||N.message||(null==ve?void 0:ve["failed-to-start-generation"])||"Failed to start generation")}const _=null!==(r=N.submissionId)&&void 0!==r?r:S;l=_,jt.current=_;const k=()=>St.current===_;if(k())return;ts&&Ie&&ae&&Et.current.add(ae);const C=Object.assign(Object.assign({},ms()),{message:p,documentIds:m?c:[],uploadedModelImages:m?u:[],hasUploadedDocuments:m,isHidden:s,metadata:null!=j?j:null});mt?(fs(),U.fireDeploymentFirstMessageSubmittedWebhook(C)):Tt.current=C,Me("streaming"),kt.current=new AbortController;const A=[];let D=[...null!=Je?Je:[]],P=0,R=!1,q="";for(;!R;)try{const e=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API2_URL}/response/stream/${_}?index=${P}`,{signal:null===(a=kt.current)||void 0===a?void 0:a.signal,headers:{"Cache-Control":"no-cache",Connection:"keep-alive"}});if(!e.body)throw new Error("No response body");const t=e.body.getReader();xt.current=t;const s=new TextDecoder,n=v.createParser({onEvent:e=>{var t,s;if(k())R=!0;else if(e.event&&"ping"!==e.event&&P++,"stop"!==e.event){if("error"===e.event){const t=JSON.parse(e.data);if(t.limitData)return Re(t.limitData),qe(""),void(R=!0);const s=t.error||t.message||(null==ve?void 0:ve["something-went-wrong"])||"Something went wrong.";return is(t)||qe(s),void(R=!0)}if("delta"===e.event){const n=JSON.parse(e.data);if("data-error"===n.type&&H){const e=n.data.error;if("string"==typeof e){const t=/['"]type['"]\s*:\s*['"]unauthorized_smithery['"]/.test(e),s=/['"]type['"]\s*:\s*['"]unauthorized_composio['"]/.test(e);if(t){const t=e.match(/['"]qualifiedName['"]\s*:\s*['"]([^'"]+)['"]/),s=e.match(/['"]serverId['"]\s*:\s*['"]([^'"]+)['"]/),n=e.match(/['"]name['"]\s*:\s*['"]([^'"]+)['"]/);if(t&&t[1]&&s&&s[1]&&n&&n[1])throw R=!0,H({provider:"smithery",smitheryId:t[1],serverId:s[1],name:n[1]}),new Error("STOP_STREAM")}else if(s){const t=e.match(/['"]toolkitSlug['"]\s*:\s*['"]([^'"]+)['"]/),s=e.match(/['"]serverId['"]\s*:\s*['"]([^'"]+)['"]/),n=e.match(/['"]name['"]\s*:\s*['"]([^'"]+)['"]/);if(t&&t[1]&&s&&s[1]&&n&&n[1])throw R=!0,H({provider:"composio",toolkitSlug:t[1],serverId:s[1],name:n[1]}),new Error("STOP_STREAM")}}else if("object"==typeof e&&null!==e){const t=e;if("unauthorized_smithery"===t.type&&t.qualifiedName&&t.serverId&&t.name)throw R=!0,H({provider:"smithery",smitheryId:t.qualifiedName,serverId:t.serverId,name:t.name}),new Error("STOP_STREAM");if("unauthorized_composio"===t.type&&t.toolkitSlug&&t.serverId&&t.name)throw R=!0,H({provider:"composio",toolkitSlug:t.toolkitSlug,serverId:t.serverId,name:t.name}),new Error("STOP_STREAM")}}else if("text-start"===n.type)q="",A.push({type:"text",content:"",isVisible:null===(t=n.isVisible)||void 0===t||t});else if("text-delta"===n.type)q+=n.delta,A[A.length-1].content=q;else if("text-end"===n.type)q="";else if("reasoning-start"===n.type)q="",A.push({type:"reasoning",content:"",isVisible:null===(s=n.isVisible)||void 0===s||s});else if("reasoning-delta"===n.type)q+=n.delta,A[A.length-1].content=q;else if("reasoning-end"===n.type)q="";else if(n.type.startsWith("data-")){const e=n;A.push({type:e.type,content:JSON.stringify(e.data),isVisible:!0})}Ot.current=L(A);const i=L(A);Le((e=>{const t=e.findIndex((e=>e.id===I)),s=Object.assign(Object.assign({},y),{parts:i});return-1===t?[...e,s]:e.map(((e,n)=>n===t?s:e))}))}else if("artifact_created"===e.event){const t=JSON.parse(e.data);D=D.filter((e=>!(e.id===t.id&&e.version===t.version))),D.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),Ze([...D]),Qe.startsWith("inline")||et({id:t.id,version:t.version})}else if("artifact_updated"===e.event){const t=JSON.parse(e.data);D=D.filter((e=>!(e.id===t.id&&e.version===t.version))),D.push(Object.assign(Object.assign({},t),{content:"",status:"updating"})),Ze(D),Qe.startsWith("inline")||et({id:t.id,version:t.version})}else if("artifact_rewrite"===e.event){const t=JSON.parse(e.data);D=D.filter((e=>!(e.id===t.id&&e.version===t.version))),D.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),Ze(D),Qe.startsWith("inline")||et({id:t.id,version:t.version})}else if("artifact_content"===e.event){const t=JSON.parse(e.data),s=t.token.replace(/\u200B/g,"");D=D.map((e=>e.id===t.id&&e.version===t.version?Object.assign(Object.assign({},e),{content:e.content+s,status:"streaming"}):e)),Ze(D)}else if("artifact_finished"===e.event){const t=JSON.parse(e.data);Ze(D.map((e=>e.id===t.id?Object.assign(Object.assign({},e),{status:"finished"}):e)))}else if("error"===e.event){const t=JSON.parse(e.data);if(t.limitData)return Re(t.limitData),qe(""),void(R=!0);const s=t.error||t.message||(null==ve?void 0:ve["something-went-wrong-try-again"])||"Something went wrong, please try again.";if(is(t))return void(R=!0);qe(s)}else"stop"===e.event&&(R=!0)}else R=!0}});for(;;){if(k()){R=!0,t.cancel().catch((()=>{}));break}const{value:e,done:i}=yield t.read();if(k()){R=!0,t.cancel().catch((()=>{}));break}if(i)break;n.feed(s.decode(e))}R||k()||(yield new Promise((e=>setTimeout(e,1e3))))}catch(e){if("STOP_STREAM"===e.message||M(e)||k())return void(R=!0);console.warn("Stream connection lost, retrying...",e),yield new Promise((e=>setTimeout(e,1e3)))}null==Ee||Ee(ae)}catch(e){if(M(e))return;if(e.limitData)Re(e.limitData),qe("");else{let t=O.default(e)||"";t&&!t.includes("Unexpected token 'A',")||(t=(null==ve?void 0:ve["high-traffic-try-again-later"])||"Oops! We're experiencing high traffic at the moment. Please try again later."),is(t)||qe(t)}}finally{const e=!l||jt.current===l;Ge(),e&&(Me("idle"),ze(),xt.current=null),l&&e&&(jt.current=null,Ot.current=[]),yield as()}}));return ns?null:t.jsx("div",Object.assign({className:k.default("flex w-full flex-shrink-0 flex-col items-center",!ss&&"px-4 pb-8"),dir:ye?"rtl":"ltr"},{children:t.jsxs("div",Object.assign({className:"flex w-full max-w-[800px] flex-col"},{children:[t.jsxs("div",Object.assign({ref:_t,className:k.default("relative flex flex-col w-full justify-end gap-y-3 py-[3px]","block"===fe.formFieldStyle&&"shadow"),style:Object.assign(Object.assign({},Yt),{maxHeight:`${Ut}px`,overflowY:"auto"})},{children:[ws&&t.jsxs("div",Object.assign({className:"sticky top-0 z-10 flex w-full items-center justify-between border-b px-4 py-2.5 shadow-sm backdrop-blur-md",style:{backgroundColor:Yt.backgroundColor?`${Yt.backgroundColor}E6`:void 0,borderColor:ge.text+"20",color:ge.text,borderTopRightRadius:fe.cornerRadius+"px",borderTopLeftRadius:fe.cornerRadius+"px"}},{children:[t.jsx("div",Object.assign({className:"flex items-center gap-2 text-sm font-medium"},{children:t.jsxs("span",{children:[ys.toLocaleString()," ",cs?(null==ve?void 0:ve.credits)||"Credits":(null==ve?void 0:ve.uses)||"Uses"," ",(null==ve?void 0:ve.remaining)||"remaining"]})})),t.jsxs("div",Object.assign({className:"flex items-center gap-3"},{children:[!Ns&&t.jsx("button",Object.assign({className:"rounded-md px-3 py-1.5 text-xs font-semibold transition-opacity hover:opacity-90",style:{backgroundColor:ge.accent,color:ge.accentText},onClick:e=>{if(e.preventDefault(),e.stopPropagation(),_s)return void window.open(_s,"_blank","noopener,noreferrer");const t=E.buildUpgradeUrl({baseUrl:ut,accessGroupId:null==je?void 0:je.accessGroupId,redirectUrl:document.URL});t&&(E.isInIframe()?window.open(t):location.href=t)}},{children:ks})),t.jsx("button",Object.assign({className:"flex h-6 w-6 items-center justify-center rounded-full opacity-60 transition-opacity hover:opacity-100",onClick:()=>vt(!0)},{children:t.jsx("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:2,stroke:"currentColor",className:"h-4 w-4"},{children:t.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M6 18L18 6M6 6l12 12"})}))}))]}))]})),!Pe&&Fe.length>0&&t.jsx(x.default,{className:"p-4 pb-0",isDisabled:Pe}),t.jsxs("div",Object.assign({className:"relative flex w-full flex-col"},{children:[At&&t.jsxs("div",Object.assign({className:"absolute left-4 top-1/2 flex -translate-y-1/2 select-none items-center gap-x-2"},{children:[t.jsx("span",{className:"h-2 w-2 animate-pulse rounded-full bg-c-secondary",style:{backgroundColor:null!==(ie=ge.accent)&&void 0!==ie?ie:"#ff0000"}}),t.jsx("span",Object.assign({className:"text-sm text-c-secondary font-semilight",style:{color:ge.text+"90"}},{children:(null==ve?void 0:ve.listening)||"Listening..."}))]})),t.jsx(j.default,Object.assign({ref:wt,className:k.default(Wt.i1,"py-3.5 max-h-60 px-4 w-full border-transparent bg-transparent",!nt.trim()&&!nt.includes("\n")&&"overflow-hidden text-ellipsis whitespace-nowrap placeholder:whitespace-normal placeholder:overflow-visible",ye?"text-right":"text-left",rs&&"mb-12",At&&"text-transparent"),value:nt,placeholder:os,onChange:e=>{it(e)},onKeyDown:e=>{be||We||"Enter"===e.key&&(e.shiftKey||(e.preventDefault(),Ve||Pe||Us()))},onPaste:t=>e.__awaiter(void 0,void 0,void 0,(function*(){const e=Array.from(t.clipboardData.files||[]);if(e.length>0){if(!Zt)return;t.preventDefault(),Se(!1),yield $e(e)}}))},B&&{onFocus:B},$&&{onBlur:$},{dir:ye?"rtl":"ltr"})),t.jsx("div",Object.assign({ref:Nt,className:k.default("flex items-center gap-2 absolute right-0 z-2 transition-all duration-200 ease-in-out",rs?"bottom-0 mb-2.5":"top-1/2 -translate-y-1/2"),style:Object.assign(Object.assign({},!rs&&Yt.backgroundColor&&{backgroundColor:Yt.backgroundColor}),{borderTopRightRadius:fe.cornerRadius+"px",borderBottomRightRadius:fe.cornerRadius+"px"})},{children:Pe?t.jsx("button",Object.assign({className:"flex h-8 w-8 items-center mr-2 justify-center rounded-full outline-none transition-colors duration-200 ease-in-out",onClick:()=>{const t=jt.current;t&&(St.current=t,(t=>{e.__awaiter(void 0,void 0,void 0,(function*(){if(!(t=null!=t?t:jt.current))return;const e=L(Ot.current);try{yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API2_URL}/response/cancel/${t}`,Object.assign({method:"POST",headers:Object.assign(Object.assign({"Content-Type":"application/json"},(!process.env.NODE_ENV||"development"===process.env.NODE_ENV)&&Object.assign({},process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN&&{"x-pickaxe-session-token":process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN})),{"x-request-sent-at":(new Date).toISOString()}),body:JSON.stringify({outputMessageParts:e})},Qt&&{credentials:"include"}))}catch(e){console.warn("Failed to cancel submission",e)}}))})(t)),kt.current&&(kt.current.abort(),kt.current=null),xt.current&&(xt.current.cancel().catch((()=>{})),xt.current=null),Me("idle")},style:{backgroundColor:ge.accent,color:ge.accentText}},{children:t.jsx(y.default,{className:"h-4 w-4 shrink-0"})})):At?t.jsx("button",Object.assign({className:"flex h-8 w-8 items-center mr-2 justify-center rounded-full outline-none transition-colors duration-200 ease-in-out",onClick:Mt,style:{backgroundColor:ge.accent,color:ge.accentText}},{children:t.jsx(y.default,{className:"h-4 w-4 shrink-0"})})):t.jsxs(t.Fragment,{children:[Zt&&t.jsxs("button",Object.assign({className:"flex h-8 w-8 items-center justify-center rounded-full outline-none transition-colors duration-200 ease-in-out disabled:cursor-default",style:{backgroundColor:Bt?ge.accent+"10":void 0,color:Bt?ge.accent:ge.accent+"80"},disabled:Ve||Pe,onClick:()=>{var e;return null===(e=It.current)||void 0===e?void 0:e.click()}},$t,{children:[t.jsx("input",{id:"file-upload",ref:It,type:"file",accept:[...g.allowedFileMimeTypes,...g.allowedImageMimeTypes,...g.additionalAllowedFileExtensions].join(", "),multiple:!0,hidden:!0,className:"hidden",onChange:t=>e.__awaiter(void 0,void 0,void 0,(function*(){Se(!1),yield $e(Array.from(t.target.files||[])),t.target.value=""}))}),t.jsx(h.default,{className:"h-6 w-6 shrink-0"})]})),es&&t.jsx("button",Object.assign({className:"disabled:cursor-default flex h-8 w-8 items-center justify-center rounded-full outline-none transition-colors duration-200 ease-in-out",style:{backgroundColor:At?ge.accent:Ht?ge.accent+"10":void 0,color:At?ge.accentText:Ht?ge.accent:ge.accent+"80"},disabled:Ve||Pe||Dt,onClick:()=>{At?Mt():(yt.current=nt,Lt(he||"en-US"))}},Kt,{children:t.jsx(I.default,{className:"h-5 w-5 shrink-0"})})),t.jsx("button",Object.assign({className:"flex h-8 w-8 items-center mr-2 justify-center rounded-full outline-none transition-colors duration-200 ease-in-out disabled:cursor-default",style:{backgroundColor:qt||Ts?ge.accent:ge.accent+"10",color:qt||Ts?ge.accentText:ge.accent+"80"},disabled:!Ts,onClick:()=>Us()},Ft,{children:t.jsx(b.default,{className:k.default("h-6 w-6 shrink-0",ye&&"scale-x-[-1] transform")})}))]})}))]}))]})),Be&&t.jsx(S.default,{error:Be,className:"mt-3"})]}))}))}));B.displayName="Input",exports.default=B;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../_virtual/_tslib.js"),s=require("react/jsx-runtime"),t=require("react"),n=require("../../../../hooks/pickaxe/usePickaxeContext.js"),i=require("../../../../hooks/pickaxe/useResponseContext.js"),o=require("../../../../hooks/studio/useStyleInput.js"),a=require("../../../../hooks/studio/useStyleFontSize.js"),r=require("../../../../hooks/core/useHover.js"),l=require("../../../../hooks/pickaxe/
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../_virtual/_tslib.js"),s=require("react/jsx-runtime"),t=require("react"),n=require("../../../../hooks/pickaxe/usePickaxeContext.js"),i=require("../../../../hooks/pickaxe/useResponseContext.js"),o=require("../../../../hooks/studio/useStyleInput.js"),a=require("../../../../hooks/studio/useStyleFontSize.js"),r=require("../../../../hooks/core/useHover.js"),l=require("../../../../hooks/pickaxe/useSpeechToText.js"),c=require("../../../Core/Textarea.js"),u=require("../../../Icons/microphone.svg.js"),d=require("../../../Icons/stop.svg.js"),p=require("../../../../common/cn.js");exports.default=({field:x,update:h,activeVoiceId:g,setActiveVoiceId:j,onLongPaste:b})=>{var f;const{styles:m,colors:v,isRtl:y,pickaxe:k,locale:O,translations:S}=n.usePickaxeContext(),{setError:N}=i.useResponseContext(),[q,w]=t.useState(!1),C=a.useStyleFontSize(),L=o.useStyleInput(),{speechTranscript:_,isSpeechListening:I,isSpeechProcessing:T,isSpeechSupported:P,onStartListening:R,onStopListening:z}=l.useSpeechToText(),F=t.useRef(""),H=r.useHover(),{isHover:$}=H,D=e.__rest(H,["isHover"]),E=P&&(null==k?void 0:k.enablevoicetotext),V=I&&g===x.id,A=e=>{N("");const s=e.length;h(Object.assign(Object.assign({},x),{input:e,length:s}))};return t.useEffect((()=>{if(!I||g!==x.id)return;const e=F.current?`${F.current} `:"";A(`${e}${_}`)}),[_,I,g,x.id]),s.jsxs("div",Object.assign({className:"group relative flex flex-col gap-y-1",dir:y?"rtl":"ltr"},{children:[s.jsxs("div",Object.assign({className:"flex flex-col gap-y-2"},{children:[s.jsxs("div",Object.assign({className:"flex items-center gap-1"},{children:[s.jsx("p",Object.assign({className:p.default(C.b3,"font-semibold opacity-70")},{children:x.main})),x.isRequired&&s.jsx("span",Object.assign({className:"select-none font-semibold",style:{color:v.accent}},{children:"*"}))]})),s.jsxs("div",Object.assign({className:"relative w-full"},{children:[V&&s.jsxs("div",Object.assign({className:p.default("absolute top-3.5 z-10 flex select-none items-center gap-x-2 pointer-events-none",y?"right-4":"left-4")},{children:[s.jsx("span",{className:"h-2 w-2 animate-pulse rounded-full",style:{backgroundColor:null!==(f=v.accent)&&void 0!==f?f:"#ff0000"}}),s.jsx("span",Object.assign({className:"text-sm font-semilight",style:{color:v.text+"90"}},{children:(null==S?void 0:S.listening)||"Listening..."}))]})),s.jsx(c.default,{className:p.default(C.i1,"rounded-sm border border-transparent py-3 duration-300 ease-in-out transition-all placeholder:font-semilight w-full",y?E?"pl-10 pr-4":"px-4":E?"pl-4 pr-10":"px-4",x.maxLength<10&&"max-w-[400px]","block"===m.formFieldStyle&&"shadow hover:shadow-none",V&&"caret-transparent"),style:Object.assign(Object.assign({},L),V&&{color:"transparent"}),placeholder:V?"":x.placeholder,rows:1,value:x.input,tabIndex:x.order,onChange:A,onFocus:()=>w(!0),onBlur:()=>w(!1),onPaste:e=>{e.clipboardData.getData("text").length<1e3||null==b||b()}}),E&&s.jsx("div",Object.assign({className:p.default("absolute top-2 z-20",y?"left-2":"right-2")},{children:s.jsx("button",Object.assign({className:"flex h-8 w-8 items-center justify-center rounded-full outline-none transition-colors duration-200 ease-in-out",style:{backgroundColor:V?v.accent:$?v.accent+"10":void 0,color:V?v.accentText:$?v.accent:v.accent+"80"},disabled:T,onClick:()=>e.__awaiter(void 0,void 0,void 0,(function*(){I?(yield z(),j(x.id)):(j(x.id),F.current=x.input||"",yield R(O||"en-US"),w(!0))}))},D,{type:"button"},{children:V?s.jsx(d.default,{className:"h-4 w-4 shrink-0"}):s.jsx(u.default,{className:"h-5 w-5 shrink-0"})}))}))]}))]})),s.jsx("div",Object.assign({className:"pointer-events-none absolute bottom-0 right-0 p-1 px-2"},{children:s.jsxs("p",Object.assign({className:p.default(C.b4,"font-semibold opacity-20 opacity-0 group-hover:opacity-100 group-hover:duration-200",x.length>x.maxLength&&"text-c-red opacity-100",q&&"opacity-100")},{children:[x.length,"/",x.maxLength]}))}))]}))};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("../../../hooks/studio/useStyleFontSize.js"),i=require("../../../hooks/pickaxe/usePickaxeContext.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("../../../hooks/studio/useStyleFontSize.js"),i=require("../../../hooks/pickaxe/usePickaxeContext.js"),a=require("../../../hooks/pickaxe/useFeedback.js"),t=require("framer-motion"),l=require("../../Icons/message-square-notes.svg.js"),n=require("../../Icons/thumbs-down.svg.js"),c=require("../../Icons/speaker.svg.js"),o=require("../../Icons/stop.svg.js"),r=require("../../Icons/spinner-lines.svg.js"),u=require("../../Icons/thumbs-up.svg.js"),d=require("./PickaxeSimpleButton.js"),p=require("./PickaxeCopyButton.js"),x=require("./PickaxeFeedbackThumbsDownReasons.js"),b=require("../../../common/cn.js");exports.default=({content:m,sessionId:h,index:j=0,messagesCount:f,isHideFeedback:g,isReadOut:v,isReadOutLoading:k,isReading:y,onOpenChat:O,onReadOut:w})=>{var N,q,T,C;const{colors:I,translations:S,pickaxe:D,setIsShowFeedbackMessage:F}=i.usePickaxeContext(),P=s.useStyleFontSize(),{toggleThumb:R,submitThumbsDown:z,submitThumbsUp:U,isThumbsUpSelected:B,isThumbsDownSelected:A,showThumbsDownOptions:H,showThumbsUpOptions:M,showSuccess:W}=a.useFeedback({content:m,index:j,sessionId:h,successDuration:2e3,promptRate:1,onThumbsDownReasonOpen:()=>F(!0),onThumbsDownReasonClose:()=>F(!1)}),_="function"==typeof O&&((null==D?void 0:D.chatflag)||!!(null==D?void 0:D.enablechatresponses))&&void 0!==h&&void 0!==f,L=Boolean(((null==D?void 0:D.chatflag)||(null==D?void 0:D.enablechatresponses))&&!O||!(null==D?void 0:D.chatflag)&&!(null==D?void 0:D.enablechatresponses))&&!g;return e.jsxs("div",Object.assign({className:"flex w-full flex-col gap-4"},{children:[e.jsxs("div",Object.assign({className:"flex h-4 items-center gap-3"},{children:[_&&e.jsxs(d.default,Object.assign({color:I.accent,onClick:O},{children:[e.jsx(l.default,{className:"h-4 w-4 shrink-0"}),e.jsx("p",Object.assign({className:b.default(P.b3,"font-semibold")},{children:f}))]})),e.jsx(p.default,{color:I.accent,text:m}),L&&e.jsxs(e.Fragment,{children:[e.jsx(d.default,Object.assign({color:I.accent,onClick:()=>R("like"),className:"transition-all active:rotate-12 active:scale-90"},{children:e.jsx(u.default,{className:"size-4",style:{fill:I.text,fillOpacity:B?.3:0}})})),e.jsx(d.default,Object.assign({color:I.accent,onClick:()=>R("dislike"),className:"transition-all active:-rotate-12 active:scale-90"},{children:e.jsx(n.default,{className:"size-4",style:{fill:I.text,fillOpacity:A?.3:0}})})),v&&w&&e.jsx(d.default,Object.assign({color:I.accent,onClick:()=>w(),className:"transition-all active:-rotate-12 active:scale-90"},{children:k?e.jsx(r.default,{className:"size-4 animate-spin"}):y?e.jsx(o.default,{className:"size-4 rounded-full border p-[1.5px]",style:{borderColor:I.accent}}):e.jsx(c.default,{className:"size-4"})})),e.jsx(t.AnimatePresence,{children:W&&e.jsx(t.motion.div,Object.assign({initial:{opacity:0,x:-8,filter:"blur(4px)"},animate:{opacity:1,x:0,filter:"blur(0px)"},exit:{opacity:0,x:8,filter:"blur(4px)"},transition:{type:"spring",bounce:0,duration:.6}},{children:e.jsx("p",Object.assign({className:b.default(P.b4,I.secondary,"opacity-75")},{children:null!==(N=null==S?void 0:S["feedback-thanks"])&&void 0!==N?N:"Thanks for the feedback!"}))}))})]})]})),e.jsx(t.AnimatePresence,{children:(H||M)&&e.jsxs(t.motion.div,Object.assign({initial:{opacity:0,y:-4,filter:"blur(4px)"},animate:{opacity:1,y:0,filter:"blur(0px)"},exit:{opacity:0,y:-2,filter:"blur(4px)"},transition:{type:"spring",bounce:0,duration:.25},className:"flex flex-col gap-4"},{children:[e.jsxs("div",Object.assign({className:"space-y-0.5"},{children:[e.jsx("p",Object.assign({className:b.default(P.b3,I.text)},{children:M?null!==(q=null==S?void 0:S["feedback-like-title"])&&void 0!==q?q:"What went right?":null!==(T=null==S?void 0:S["feedback-dislike-title"])&&void 0!==T?T:"What went wrong?"})),e.jsx("p",Object.assign({className:b.default(P.b3,I.secondary,"opacity-75")},{children:null!==(C=null==S?void 0:S["feedback-dislike-message"])&&void 0!==C?C:"Help us improve our answers"}))]})),e.jsx(t.motion.div,Object.assign({initial:{opacity:0,y:-8,filter:"blur(4px)"},animate:{opacity:1,y:0,filter:"blur(0px)"},transition:{type:"spring",bounce:0,duration:.5,delay:.175},className:"flex flex-wrap items-center gap-2"},{children:e.jsx(x.default,{isUp:M,submitThumbsDown:z,submitThumbsUp:U})}))]}))})]}))};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../_virtual/_tslib.js"),s=require("react/jsx-runtime"),i=require("react"),t=require("framer-motion"),r=require("../../../hooks/pickaxe/usePickaxeContext.js"),o=require("../../../hooks/pickaxe/useResponseContext.js"),l=require("../../../hooks/studio/useStyleFontSize.js"),a=require("../../../common/utils.js"),n=require("../../Icons/circle-exclamation.svg.js"),c=require("../../Core/SpringTransition.js"),d=require("../../Core/HtmlRenderer.js"),u=require("./PickaxeButton.js"),p=require("../../../common/cn.js"),x=require("../../../common/api/pickaxe.js"),m=require("../Addons/Auth/hooks/useAuthContext.js"),v=require("./AccessGroupCardPreview.js"),f=require("./HorizontalScrollCue.js"),b=require("../../../hooks/studio/useStudio.js"),g=require("./PickaxeCurrency.js");const j=({price:e,uses:i,isCredits:t,isSelected:r,costPerRun:o,onClick:l,colors:a,currencySymbol:n})=>{const c=`${n}${e}`,d={backgroundColor:a.secondary,color:a.secondaryText,borderColor:r?a.secondaryText:"rgba(0,0,0,0.1)"},u=t&&o?Math.ceil(i/o):0;return t?s.jsxs("button",Object.assign({onClick:l,className:p.default("flex min-w-[200px] shrink-0 cursor-pointer flex-col rounded-[16px] px-6 py-5 text-left transition-all duration-200",r?"border-2 shadow-sm":"border opacity-80 hover:opacity-100"),style:d},{children:[s.jsxs("div",Object.assign({className:"mb-4 flex items-center gap-2"},{children:[s.jsx("span",Object.assign({className:"text-[24px] font-semibold tracking-tight"},{children:c})),s.jsxs("span",Object.assign({className:"text-[14px] font-light opacity-80"},{children:["/",i.toLocaleString()," credits"]}))]})),s.jsx("div",{className:"mb-4 h-[1px] w-full",style:{backgroundColor:a.secondaryText,opacity:.15}}),s.jsxs("span",Object.assign({className:"text-[14px] italic opacity-70"},{children:["~ ",void 0!==u&&u>0?u.toLocaleString():"..."," ","runs"]}))]})):s.jsxs("button",Object.assign({onClick:l,className:p.default("flex shrink-0 cursor-pointer items-center justify-center gap-2 rounded-[16px] px-5 py-3 transition-all duration-200",r?"border-2 shadow-sm":"border opacity-80 hover:opacity-100"),style:d},{children:[s.jsx("span",Object.assign({className:"text-[24px] font-semibold tracking-tight"},{children:c})),s.jsxs("span",Object.assign({className:"text-[14px] font-light opacity-80"},{children:["/",i.toLocaleString()," uses"]}))]}))},y=(e,s)=>{var i,t;const r=Number(s?null!==(i=e.credits)&&void 0!==i?i:e.uses:null!==(t=e.uses)&&void 0!==t?t:e.credits);return Number.isFinite(r)?r:0},h=e=>{const s=Number(e.price);return Number.isFinite(s)?s:0};exports.default=({className:k,iconClassName:C,htmlClassName:w})=>{var N,O,S,_;const{colors:
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../_virtual/_tslib.js"),s=require("react/jsx-runtime"),i=require("react"),t=require("framer-motion"),r=require("../../../hooks/pickaxe/usePickaxeContext.js"),o=require("../../../hooks/pickaxe/useResponseContext.js"),l=require("../../../hooks/studio/useStyleFontSize.js"),a=require("../../../common/utils.js"),n=require("../../Icons/circle-exclamation.svg.js"),c=require("../../Core/SpringTransition.js"),d=require("../../Core/HtmlRenderer.js"),u=require("./PickaxeButton.js"),p=require("../../../common/cn.js"),x=require("../../../common/api/pickaxe.js"),m=require("../Addons/Auth/hooks/useAuthContext.js"),v=require("./AccessGroupCardPreview.js"),f=require("./HorizontalScrollCue.js"),b=require("../../../hooks/studio/useStudio.js"),g=require("./PickaxeCurrency.js");const j=({price:e,uses:i,isCredits:t,isSelected:r,costPerRun:o,onClick:l,colors:a,currencySymbol:n})=>{const c=`${n}${e}`,d={backgroundColor:a.secondary,color:a.secondaryText,borderColor:r?a.secondaryText:"rgba(0,0,0,0.1)"},u=t&&o?Math.ceil(i/o):0;return t?s.jsxs("button",Object.assign({onClick:l,className:p.default("flex min-w-[200px] shrink-0 cursor-pointer flex-col rounded-[16px] px-6 py-5 text-left transition-all duration-200",r?"border-2 shadow-sm":"border opacity-80 hover:opacity-100"),style:d},{children:[s.jsxs("div",Object.assign({className:"mb-4 flex items-center gap-2"},{children:[s.jsx("span",Object.assign({className:"text-[24px] font-semibold tracking-tight"},{children:c})),s.jsxs("span",Object.assign({className:"text-[14px] font-light opacity-80"},{children:["/",i.toLocaleString()," credits"]}))]})),s.jsx("div",{className:"mb-4 h-[1px] w-full",style:{backgroundColor:a.secondaryText,opacity:.15}}),s.jsxs("span",Object.assign({className:"text-[14px] italic opacity-70"},{children:["~ ",void 0!==u&&u>0?u.toLocaleString():"..."," ","runs"]}))]})):s.jsxs("button",Object.assign({onClick:l,className:p.default("flex shrink-0 cursor-pointer items-center justify-center gap-2 rounded-[16px] px-5 py-3 transition-all duration-200",r?"border-2 shadow-sm":"border opacity-80 hover:opacity-100"),style:d},{children:[s.jsx("span",Object.assign({className:"text-[24px] font-semibold tracking-tight"},{children:c})),s.jsxs("span",Object.assign({className:"text-[14px] font-light opacity-80"},{children:["/",i.toLocaleString()," uses"]}))]}))},y=(e,s)=>{var i,t;const r=Number(s?null!==(i=e.credits)&&void 0!==i?i:e.uses:null!==(t=e.uses)&&void 0!==t?t:e.credits);return Number.isFinite(r)?r:0},h=e=>{const s=Number(e.price);return Number.isFinite(s)?s:0};exports.default=({className:k,iconClassName:C,htmlClassName:w})=>{var N,O,S,_,q;const{colors:A,pickaxe:U,accessGroup:I,sender:P,translations:L,setValidationStatus:R,setClientSecret:G,setStripeAccountId:B}=r.usePickaxeContext(),{token:T,setRedirectUrl:F}=m.useAuthContext(),{limitData:M}=o.useResponseContext(),{studio:z}=b.useStudio(),E=l.useStyleFontSize(),[$,H]=i.useState(0),[D,V]=i.useState(null),J=Boolean(null==M?void 0:M.hideUpgradeOptions),K=null==z?void 0:z.data,Q=null==K?void 0:K.usage,W=Boolean(null==Q?void 0:Q.isCredits),X=null!==(O=null===(N=g.currencyOptions.find((e=>e.id===(null==K?void 0:K.currency))))||void 0===N?void 0:N.symbol)&&void 0!==O?O:g.currencyOptions[0].symbol,Y=J||"string"!=typeof(null==M?void 0:M.customLink)?"":M.customLink.trim(),Z=i.useMemo((()=>{if(J)return[];if(Y)return[];const e=W?null==Q?void 0:Q.availableCredits:null==Q?void 0:Q.availableUses;if(Array.isArray(e)&&e.length>0)return e;const s=null==M?void 0:M.buyUses;return Array.isArray(s)?s:[]}),[Y,W,null==M?void 0:M.buyUses,J,null==Q?void 0:Q.availableCredits,null==Q?void 0:Q.availableUses]);i.useEffect((()=>{H(0)}),[Z]);const ee=!0===(null===(S=null==I?void 0:I.upgrade)||void 0===S?void 0:S.isBuyMoreUses)&&Z.length>0,se=ee?Z[$]:void 0,ie=se?y(se,W):0,te=se?h(se):0;i.useEffect((()=>{let s=!0;return e.__awaiter(void 0,void 0,void 0,(function*(){if(Y)V(null);else if(null==K?void 0:K.workspaceId)try{const e=yield x.pickaxeApi2.get(`/cost_per_run?workspaceId=${K.workspaceId}`,{withCredentials:!1});if(s){const s=1e4*e.data.costPerRun||0;V(s)}}catch(e){console.error("Failed to fetch cost per run:",e),s&&V(0)}else V(0)})),()=>{s=!1}}),[Y,null==K?void 0:K.workspaceId,V]);const re=Y,oe=(null===(_=null==M?void 0:M.limitCTA)||void 0===_?void 0:_.trim())||(null==L?void 0:L["pricing.upgrade"])||(null==L?void 0:L.upgrade)||"Upgrade",le=!J&&!Y&&Array.isArray(null==M?void 0:M.upgradeGroups)&&(null==M?void 0:M.upgradeGroups)&&(null==M?void 0:M.upgradeGroups.length)>0;return M?s.jsx(t.AnimatePresence,{children:s.jsxs(c.default,Object.assign({className:p.default("flex flex-col gap-5 w-full",k)},{children:[s.jsxs("div",Object.assign({className:"flex flex-col sm:flex-row gap-4 items-start sm:items-center justify-between rounded-lg p-3 bg-opacity-5",style:{backgroundColor:A.secondary}},{children:[s.jsxs("div",Object.assign({className:"flex gap-3 items-start"},{children:[s.jsx(n.default,{className:p.default("h-5 w-5 shrink-0 mt-0.5",C),style:{color:A.accent}}),s.jsx(d.default,{className:p.default(E.b2,"font-semibold leading-relaxed text-sm",w),style:{color:A.text},html:M.limitMessage||""})]})),re&&s.jsx(u.default,Object.assign({variant:"primary",className:"whitespace-nowrap min-h-[32px] w-full sm:w-auto text-sm",onClick:()=>e.__awaiter(void 0,void 0,void 0,(function*(){window.open(re,"_blank","noopener,noreferrer")}))},{children:oe}))]})),le&&s.jsxs("div",Object.assign({className:"flex flex-col gap-2"},{children:[s.jsx("h3",Object.assign({className:"text-xs font-bold opacity-70 uppercase px-1",style:{color:A.text}},{children:(null==L?void 0:L["available-plans"])||"Available Plans"})),s.jsx(f.default,Object.assign({contentClassName:"gap-3 pb-4 pt-1",edgeColor:A.primary},{children:null===(q=M.upgradeGroups)||void 0===q?void 0:q.map(((e,i)=>s.jsx(v.default,{data:e},e.accessGroupId||i)))}))]})),ee&&se&&s.jsxs("div",Object.assign({className:"flex flex-col gap-3"},{children:[s.jsxs("h3",Object.assign({className:"text-xs font-bold opacity-70 uppercase px-1",style:{color:A.text}},{children:[(null==L?void 0:L.buy)||"Buy"," ",W?(null==L?void 0:L.credits)||"Credits":(null==L?void 0:L.uses)||"Uses"]})),s.jsx("div",Object.assign({className:"flex flex-row gap-3 overflow-x-auto pb-2 pt-1 snap-x scrollbar-thin"},{children:Z.map(((e,i)=>s.jsx(j,{price:h(e),uses:y(e,W),isCredits:W,costPerRun:D||void 0,isSelected:i===$,onClick:()=>H(i),colors:A,currencySymbol:X},i)))})),s.jsxs(u.default,Object.assign({variant:"primary",className:"w-full py-3 text-sm font-bold shadow-md",onClick:()=>e.__awaiter(void 0,void 0,void 0,(function*(){if(T){var s,i;s=ie,i=te,e.__awaiter(void 0,void 0,void 0,(function*(){try{const e=yield x.pickaxeApi2.post("/billing/extra_usage_payment_link",{data:{sender:P||void 0,studioSessionToken:T,studioId:null==U?void 0:U.studioid,cost:i,isEmbed:a.isInIframe(),extraUses:s,successUrl:document.URL}}),{success:t,url:r,clientSecret:o,stripeAccountId:l,error:n}=e.data;t?a.isInIframe()?o&&l?(B(l),G(o),R("stripe_checkout")):r&&window.open(r,"_blank"):r&&(window.location.href=r):alert(n)}catch(e){alert(e)}}))}else{const e=M.limitLink||re;if(a.isInIframe())F(e||null),R("login_required");else{const s=a.buildUpgradeUrl({baseUrl:e,redirectUrl:document.URL});s&&(window.location.href=s)}}}))},{children:[(null==L?void 0:L.buy)||"Buy"," ",ie.toLocaleString()," ",W?(null==L?void 0:L.credits)||"Credits":(null==L?void 0:L.uses)||"Uses"," ","for ",X,te]}))]}))]}))}):null};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../_virtual/_tslib.js");require("../../node_modules/.pnpm/regenerator-runtime@0.14.1/node_modules/regenerator-runtime/runtime.js");var t=require("react-speech-recognition"),r=require("react"),i=require("../../common/api/pickaxe.js");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function o(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var i=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,i.get?i:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var s=n(t);exports.useSpeechToText=()=>{const{transcript:n,listening:a,resetTranscript:c}=t.useSpeechRecognition(),[u,l]=r.useState(!1),[p,d]=r.useState(!1);return{speechTranscript:n,isSpeechSupported:!0,isSpeechProcessing:u,isSpeechListening:a,onStartListening:t=>e.__awaiter(void 0,void 0,void 0,(function*(){try{l(!0),yield navigator.mediaDevices.getUserMedia({audio:!0});const e=(yield i.pickaxeApi2.post("/speech")).data;if(!p){const{createSpeechServicesPonyfill:t}=yield Promise.resolve().then((function(){return o(require("web-speech-cognitive-services"))})),{SpeechRecognition:r}=t({credentials:{region:"eastus",authorizationToken:e.token}});s.default.applyPolyfill(r),d(!0)}c();const r={ar:"ar-SA",ca:"ca-ES",cs:"cs-CZ",da:"da-DK",de:"de-DE",en:"en-US",es:"es-ES",fi:"fi-FI",fr:"fr-FR",hi:"hi-IN",it:"it-IT",iw:"he-IL",ja:"ja-JP",ko:"ko-KR",nb:"nb-NO",nl:"nl-NL",pl:"pl-PL",pt:"pt-PT","pt-BR":"pt-BR",ro:"ro-RO",ru:"ru-RU",sv:"sv-SE",th:"th-TH",tr:"tr-TR",vi:"vi-VN",zh:"zh-CN",zu:"zu-ZA"};yield s.default.startListening({continuous:!0,interimResults:!0,language:r[t]||"en-US"})}catch(e){console.error(e)}finally{l(!1)}})),onStopListening:()=>e.__awaiter(void 0,void 0,void 0,(function*(){try{l(!0),yield s.default.abortListening()}catch(e){console.error(e)}finally{l(!1)}}))}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../_virtual/_tslib.js"),n=require("../../common/api/pickaxe.js"),t=require("react");function r(e){if(e&&e.__esModule)return e;var n=Object.create(null);return e&&Object.keys(e).forEach((function(t){if("default"!==t){var r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:function(){return e[t]}})}})),n.default=e,Object.freeze(n)}const s={ar:"ar-SA",ca:"ca-ES",cs:"cs-CZ",da:"da-DK",de:"de-DE",en:"en-US",es:"es-ES",fi:"fi-FI",fr:"fr-FR",he:"he-IL",hi:"hi-IN",it:"it-IT",ja:"ja-JP",ko:"ko-KR",nb:"nb-NO",nl:"nl-NL",pl:"pl-PL",pt:"pt-PT",ro:"ro-RO",ru:"ru-RU",sv:"sv-SE",th:"th-TH",tr:"tr-TR",vi:"vi-VN",zh:"zh-CN",zu:"zu-ZA"};let o=null;const i=new Map,c=e=>e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'"),l=({text:t,language:l,browserVoices:u=[],onLoading:a,onPlay:p,onEnd:d})=>{var h;null==o||o.cancel(),null===(h=window.speechSynthesis)||void 0===h||h.cancel();let f=null,w=null,v=!1,g=!1,S=!1;const y=()=>{g||(g=!0,null==f||f.close(),f=null,o===k&&(o=null),d())},m=()=>{v||g||p()},k={cancel:()=>{var e;v||g||(v=!0,null==w||w.close(),w=null,null==f||f.pause(),null==f||f.close(),f=null,null===(e=window.speechSynthesis)||void 0===e||e.cancel(),y())}};o=k,a();return e.__awaiter(void 0,void 0,void 0,(function*(){var e;try{const[{data:o},u]=yield Promise.all([n.pickaxeApi2.post("/speech"),Promise.resolve().then((function(){return r(require("microsoft-cognitiveservices-speech-sdk"))}))]);if(!o.success||!o.token)throw new Error(o.error||"Azure Speech token was not returned");if(v||g)return;const a=(e=>{if(!e)return"en-US";const n=e.toLowerCase();return"pt-br"===n?"pt-BR":s[n.split("-")[0]]||e})(l),p=u.SpeechConfig.fromAuthorizationToken(o.token,"eastus");p.speechSynthesisLanguage=a,p.speechSynthesisOutputFormat=u.SpeechSynthesisOutputFormat.Audio24Khz48KBitRateMonoMp3;const d=new u.SpeakerAudioDestination;d.onAudioStart=()=>{const e=d.internalAudio;e?e.addEventListener("playing",m,{once:!0}):m()},d.onAudioEnd=y,f=d;const h=u.AudioConfig.fromSpeakerOutput(d),S=new u.SpeechSynthesizer(p,h);w=S;let k=i.get(a);if(!k){const n=yield S.getVoicesAsync(a);if(v||g)return;if(k=null===(e=n.voices.find((e=>e.locale===a)))||void 0===e?void 0:e.shortName,!k)throw new Error(`No Azure voice is available for ${a}`);i.set(a,k)}const b=k,A=yield new Promise(((e,n)=>{const r=`<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="${a}"><voice name="${c(b)}"><break time="500ms"/>${c(t)}</voice></speak>`;S.speakSsmlAsync(r,e,n)}));if(S.close(),w=null,v||g)return;if(A.reason!==u.ResultReason.SynthesizingAudioCompleted)throw new Error(A.errorDetails||"Azure speech synthesis failed")}catch(e){if(null==w||w.close(),w=null,null==f||f.close(),f=null,v||g)return;console.warn("Azure text-to-speech failed; using browser speech",e),(()=>{if(v||g||S)return;if(S=!0,!("speechSynthesis"in window)||!("SpeechSynthesisUtterance"in window))return void y();const e=new SpeechSynthesisUtterance(t),n=l||"en",r=u.find((e=>e.lang.startsWith(n)&&e.name.includes("Google")))||u.find((e=>e.lang.startsWith(n)));r?(e.voice=r,e.lang=r.lang):e.lang=n,e.onstart=m,e.onend=y,e.onerror=y,window.speechSynthesis.speak(e)})()}})),k};exports.useTextToSpeech=(e=!0)=>{const[n,r]=t.useState(!1),[s,o]=t.useState(!1),[i,c]=t.useState([]),u=t.useRef(null),a=t.useRef(!0);t.useEffect((()=>(a.current=!0,()=>{var e;a.current=!1,null===(e=u.current)||void 0===e||e.cancel(),u.current=null})),[]),t.useEffect((()=>{if(!e||!("speechSynthesis"in window))return;const n=()=>{const e=window.speechSynthesis.getVoices();e.length>0&&c(e)};return n(),window.speechSynthesis.addEventListener("voiceschanged",n),()=>{window.speechSynthesis.removeEventListener("voiceschanged",n)}}),[e]);const p=t.useCallback((()=>{var e;null===(e=u.current)||void 0===e||e.cancel(),u.current=null}),[]);return{isLoading:n,isSpeaking:s,speak:t.useCallback(((e,n)=>{if(!e)return;const t=l({text:e,language:n,browserVoices:i,onLoading:()=>{a.current&&(r(!0),o(!1))},onPlay:()=>{a.current&&(r(!1),o(!0))},onEnd:()=>{u.current===t&&(u.current=null),a.current&&(r(!1),o(!1))}});u.current=t}),[i]),stop:p}};
|
|
@@ -5,9 +5,10 @@ interface PickaxeMessageActionsProps {
|
|
|
5
5
|
messagesCount?: number;
|
|
6
6
|
isHideFeedback?: boolean;
|
|
7
7
|
isReadOut: boolean;
|
|
8
|
+
isReadOutLoading?: boolean;
|
|
8
9
|
isReading?: boolean;
|
|
9
10
|
onOpenChat?: () => void;
|
|
10
11
|
onReadOut?: () => void;
|
|
11
12
|
}
|
|
12
|
-
declare const PickaxeMessageActions: ({ content, sessionId, index, messagesCount, isHideFeedback, isReadOut, isReading, onOpenChat, onReadOut, }: PickaxeMessageActionsProps) => import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
declare const PickaxeMessageActions: ({ content, sessionId, index, messagesCount, isHideFeedback, isReadOut, isReadOutLoading, isReading, onOpenChat, onReadOut, }: PickaxeMessageActionsProps) => import("react/jsx-runtime").JSX.Element;
|
|
13
14
|
export default PickaxeMessageActions;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as s}from"react/jsx-runtime";import{
|
|
1
|
+
import{jsx as e,jsxs as s}from"react/jsx-runtime";import{Fragment as t}from"react";import{usePickaxeContext as i}from"../../../../hooks/pickaxe/usePickaxeContext.js";import{useStyleFontSize as o}from"../../../../hooks/studio/useStyleFontSize.js";import{useResponseContext as a}from"../../../../hooks/pickaxe/useResponseContext.js";import{useArtifact as r}from"../../Addons/Artifact/hooks/useArtifact.js";import{PickaxeMarkdown as n}from"../../common/PickaxeMarkdown/index.js";import l from"../../common/PickaxeIcon.js";import m from"./Document.js";import c from"../../common/PickaxeMessageActions.js";import d from"../../common/PickaxeMessageParts/index.js";import p from"../../../../common/cn.js";import{convertToIso1 as x}from"../../../../common/isoMap.js";import{franc as f}from"franc-min";import h from"../../common/ComposioConnectView.js";import u from"../../common/SmitheryConnectView.js";import{useTextToSpeech as g}from"../../../../hooks/pickaxe/useTextToSpeech.js";import b from"remove-markdown";const j=({index:j,message:v,smitheryData:k,resubmitPrompt:y,isLastMessage:w=!1})=>{var O,N;const{pickaxeId:C,pickaxe:I,styles:A,colors:P,misc:R,responsiveBy:S,disableHtml:L,disableJs:M,disableCss:T,isNewChat:H,isRtl:J}=i(),{isGenerating:V}=a(),{onLoadArtifact:B}=r(),D=o(),F=null!==(O=null==I?void 0:I.chaticon)&&void 0!==O?O:`https://cdn.mail.studio/chaticons/${C}.png`,z=w&&V,E=null==I?void 0:I.enablereadout,{isLoading:G,isSpeaking:U,speak:$,stop:q}=g(E&&"assistant"===v.role),K=()=>{if(G||U)return void q();const e=v.parts.filter((e=>"text"===e.type)).map((e=>e.content)).join(" ");if(!e)return;const s=b(e,{stripListLeaders:!0,listUnicodeChar:"",gfm:!0,useImgAltText:!1}),t=f(s),i=x(t);$(s,i)},Q=!v.parts.some((e=>["text","reasoning","data-action-tool-caption"].includes(e.type)));return"assistant"===v.role?e("div",Object.assign({className:p("flex w-full",J?"justify-end":"justify-start")},{children:e("div",Object.assign({className:p("flex flex-col w-full",0===j&&H&&"viewport"===S&&"min-[767px]:max-w-[80%]",0===j&&H&&"container"===S&&"@[767px]/pickaxe-root:max-w-[80%]")},{children:s("div",Object.assign({className:p("flex gap-x-3",J&&"flex-row-reverse")},{children:[R.isChatImage&&"NONE"!==F&&e(l,{src:F,alt:"Assistant",width:24,height:24,className:"my-3 h-6 w-6",textColor:P.text}),s("div",Object.assign({className:p("flex flex-col flex-grow",J?"items-end":"items-start")},{children:[s("div",Object.assign({className:p(D.b2,"chat-message pt-3 w-full",J?"text-right":"text-left")},{children:[e(n,Object.assign({theme:A.theme,colors:P},J&&{rtl:!0},L&&{disableHtml:!0},M&&{disableJs:!0},T&&{disableCss:!0},{disableReasoning:null!==(N=null==I?void 0:I.enablereasoningdisplay)&&void 0!==N&&N,onArtifactClick:B},{children:e(d,{parts:v.parts})})),w&&k&&y&&("composio"===k.provider?e("div",Object.assign({className:"mt-4 px-1"},{children:e(h,{serverId:k.serverId,toolkitSlug:k.toolkitSlug||"",name:k.name,resubmitPrompt:()=>y()})})):e("div",Object.assign({className:"mt-4 px-1"},{children:e(u,{serverId:k.serverId,smitheryId:k.smitheryId||"",name:k.name||k.smitheryId,resubmitPrompt:()=>y()})})))]})),e("div",Object.assign({className:p("flex flex-col gap-6 my-4",Q&&"mt-2")},{children:z?e("div",Object.assign({className:"flex items-center gap-x-2 rounded"},{children:Array.from({length:3}).map(((s,t)=>e("div",{className:p("h-1.5 w-1.5 animate-dot rounded-full",1===t&&"animate-dot-down"),style:{backgroundColor:P.secondaryText}},t)))})):e(c,Object.assign({content:v.parts.filter((e=>e.isVisible&&"text"===e.type)).map((e=>e.content)).join("\n"),index:j},"intromessage"===v.area&&{isHideFeedback:!0},{onReadOut:K,isReadOut:E||!1,isReadOutLoading:G,isReading:U}))}))]}))]}))}))})):"user"===v.role?e("div",Object.assign({className:p("flex w-full",J?"justify-start":"justify-end")},{children:e("div",Object.assign({className:p("flex gap-x-3 max-w-[80%]",J?"pr-9":"pl-9","viewport"===S?J?"min-[767px]:pr-0":"min-[767px]:pl-0":J?"@[767px]/pickaxe-root:pr-0":"@[767px]/pickaxe-root:pl-0")},{children:s("div",Object.assign({className:p(D.b2,"overflow-x-auto overflow-y-hidden px-4 py-3 scrollbar-thin scrollbar-track-white scrollbar-thumb-[#4A4A4B] flex flex-col gap-y-3",J?"text-right":"text-left"),style:{backgroundColor:P.secondary+"80",color:P.secondaryText,borderRadius:A.cornerRadius}},{children:[v.documentIds&&v.documentIds.length>0&&e("div",Object.assign({className:p("flex flex-col gap-y-2",J?"items-start":"items-end")},{children:v.documentIds.map((s=>e(t,{children:e(m,{documentId:s})},s)))})),e(n,Object.assign({theme:A.theme,colors:P},J&&{rtl:!0},L&&{disableHtml:!0},M&&{disableJs:!0},T&&{disableCss:!0},{children:e(d,{parts:v.parts})}))]}))}))})):e("div",{})};export{j as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__rest as e,__awaiter as t}from"../../../_virtual/_tslib.js";import{jsx as n,jsxs as o,Fragment as s}from"react/jsx-runtime";import{forwardRef as i,useState as r,useRef as a,useCallback as l,useEffect as d,useMemo as c,useImperativeHandle as u}from"react";import{usePickaxeContext as m}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as p}from"../../../hooks/pickaxe/useResponseContext.js";import{useStyleInput as f}from"../../../hooks/studio/useStyleInput.js";import{useStyleFontSize as g}from"../../../hooks/studio/useStyleFontSize.js";import{useConversation as v}from"../../../hooks/pickaxe/useConversation.js";import{useDimensionContext as h}from"../../../hooks/pickaxe/useDimensionContext.js";import{useAuthContext as b}from"../Addons/Auth/hooks/useAuthContext.js";import{useDocument as y}from"../Addons/Document/hooks/useDocument.js";import{useScroll as x}from"../Addons/Scroll/hooks/useScroll.js";import{useArtifactContext as I}from"../Addons/Artifact/hooks/useArtifactContext.js";import{useHover as j}from"../../../hooks/core/useHover.js";import{useMediaQuery as w}from"../../../hooks/core/useMediaQuery.js";import{allowedFileMimeTypes as O,allowedImageMimeTypes as k,additionalAllowedFileExtensions as S}from"../../../common/documents.js";import{createParser as N}from"eventsource-parser";import C from"../../Icons/attach-vertical.svg.js";import E from"../../Icons/arrow-right.svg.js";import _ from"../../Icons/microphone.svg.js";import U from"../../Icons/stop.svg.js";import T from"../Addons/Document/List.js";import A from"../../Core/Textarea.js";import P from"../../Core/ErrorAlert.js";import D from"../../../common/error.js";import{getUnpersistedMemoryMessages as L}from"../../../common/chatMessages.js";import{pickaxeApi2 as R}from"../../../common/api/pickaxe.js";import{getValidationFailure as M}from"../../../common/validation.js";import B from"../../../common/cn.js";import{buildUpgradeUrl as $,isInIframe as X,initializeEmbedUserId as K}from"../../../common/utils.js";import{getPickaxeConfigMetadata as V}from"../../../common/pickaxeConfig.js";import{fireDeploymentSessionInitializedWebhook as F,fireDeploymentFirstMessageSubmittedWebhook as H}from"../../../common/deploymentWebhooks.js";import{useStudio as W}from"../../../hooks/studio/useStudio.js";import{useSpeech as G}from"../../../hooks/pickaxe/useSpeech.js";import{STUDIO_INFINITY_VALUE as J}from"../common/PickaxeCommon.js";const z=e=>"string"==typeof e&&e.trim().length>0,q=e=>e.map((e=>Object.assign({},e))),Q=e=>e instanceof Error&&("AbortError"===e.name||"BodyStreamBuffer was aborted"===e.message),Y=(e,t)=>{if(e&&"object"==typeof e)return e[t]},Z=(e,t)=>{const n=Y(e,t);return z(n)?n:null},ee=e=>{const t=Number(e);return Number.isFinite(t)?t:void 0},te=({studioUser:e,deploymentId:t,portalId:n})=>{var o,s;const i=Array.isArray(Y(e,"uses"))?Y(e,"uses"):[],r=(({deploymentId:e,portalId:t})=>z(e)?{type:"deployment",id:e}:z(t)?{type:"portal",id:t}:null)({deploymentId:t,portalId:n});if(!r)return{scope:r,record:null};const a=null!==(s=null!==(o=i.find((e=>e.id===r.id&&e.type===r.type)))&&void 0!==o?o:i.find((e=>e.id===r.id)))&&void 0!==s?s:null;return{scope:r,record:a}},ne=i((({resubmitPrompt:i,onFocus:Y,onBlur:ne,onInputHeightChange:oe,initSmitheryAuthData:se},ie)=>{var re,ae,le,de,ce,ue,me,pe,fe,ge,ve,he;const{origin:be,pickaxeId:ye,sessionId:xe,sender:Ie,senderType:je,portalId:we,deploymentId:Oe,deploymentType:ke,pickaxe:Se,styles:Ne,colors:Ce,translations:Ee,locale:_e,forceMobile:Ue,isNewChat:Te,isRtl:Ae,isShowFeedbackMessage:Pe,accessGroup:De,setIsNewChat:Le,setIsShowIceBreaker:Re,setValidationStatus:Me,setValidationUpgradeGroups:Be,setValidationUpgradeUrl:$e,setAccessGroup:Xe,onGenerateComplete:Ke}=m(),{token:Ve,isLoggedOut:Fe,isSent:He,isPricingAuth:We}=b(),{messages:Ge,isGenerating:Je,setMessages:ze,setStatus:qe,setLimitData:Qe,setError:Ye}=p(),{documents:Ze,isUploading:et,documentError:tt,onFileUpload:nt,setDocuments:ot,setDocumentError:st}=y(),{studio:it}=W(),[rt]=w("(max-width: 480px)"),{scrollStartSession:at,scrollEndSession:lt,scrollToBottom:dt}=x({auto:!0,smooth:!(Ue||rt)}),{artifacts:ct,currentPopupType:ut,setArtifacts:mt,setCurrentArtifact:pt}=I(),{height:ft}=h(),gt=v(),[vt,ht]=r(""),[bt,yt]=r(!1),[xt,It]=r(!1),[jt,wt]=r(null),[Ot,kt]=r(null),[St,Nt]=r(!1),[Ct,Et]=r(!1),[_t,Ut]=r(0),Tt=a(null),At=a(""),Pt=a(null),Dt=a(null),Lt=a(null),Rt=a([]),Mt=a(null),Bt=a(null),$t=a(null),Xt=a(null),Kt=a(new Set),Vt=a(null),Ft=Math.max(.4*ft,100),{speechTranscript:Ht,isSpeechListening:Wt,isSpeechProcessing:Gt,isSpeechSupported:Jt,onStartListening:zt,onStopListening:qt}=G(),Qt=j(),{isHover:Yt}=Qt,Zt=e(Qt,["isHover"]),en=j(),{isHover:tn}=en,nn=e(en,["isHover"]),on=j(),{isHover:sn}=on,rn=e(on,["isHover"]),an=g(),ln=f(),dn="undefined"!=typeof window?window.location.hostname:"",cn="undefined"!=typeof window?window.location.href:"",un="undefined"!=typeof window&&window.self!==window.top,mn=dn.includes("pickaxe.co")&&!cn.includes("https://studio.pickaxe.co/_embed")&&!un,pn=null!==(ae=null===(re=null==Se?void 0:Se.documentuploadtype)||void 0===re?void 0:re.startsWith("enduserupload"))&&void 0!==ae&&ae,fn=Jt&&(null==Se?void 0:Se.enablevoicetotext),gn=z(Oe),vn="chat-input"===ke&&Te&&!He,hn="chat-input"===ke&&We&&Fe&&He,bn=l((e=>{const t=M(e);return!!t&&(Ye(""),Qe(null),Me(t.status),Xe(t.accessGroup),Be(t.upgradeGroups),$e(t.upgradeUrl),!0)}),[Ye,Qe,Me,Be,$e,Xe]),yn=null!==(le=null==Se?void 0:Se.placeholdertext)&&void 0!==le?le:Ae?"بماذا تريد أن تتحدث؟":(null==Ee?void 0:Ee["what-do-you-want-to-talk-about"])||"What do you want to talk about?",xn=bt||xt,In=l((()=>t(void 0,void 0,void 0,(function*(){Nt(!1);try{const e=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API2_URL}/user`,Object.assign(Object.assign({method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(Object.assign({studioId:null==Se?void 0:Se.studioid},Ve?{studioSessionToken:Ve}:Ie?{sender:Ie}:{sender:K()}))},(!process.env.NODE_ENV||"development"===process.env.NODE_ENV)&&Object.assign({},process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN&&{headers:{"Content-Type":"application/json","x-pickaxe-session-token":process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN}})),mn&&{credentials:"include"})),t=yield e.json();(null==t?void 0:t.studioUser)&&(wt(t.studioUser),kt(t.url))}catch(e){console.error("Failed to fetch studio user:",e)}finally{Nt(!0)}}))),[mn,null==Se?void 0:Se.studioid,Ie,Ve]);d((()=>{In()}),[In]);const jn=Number(null!==(de=null==De?void 0:De.limit)&&void 0!==de?de:0),wn="string"==typeof(null==De?void 0:De.limitInterval)?De.limitInterval:null,On=!!(null==it?void 0:it.data.usage)&&it.data.usage.isCredits,kn=c((()=>{var e,t,n,o,s;return null!==(s=null!==(o=null!==(n=null!==(t=null!==(e=null!=we?we:Z(jt,"portalId"))&&void 0!==e?e:Z(jt,"portalid"))&&void 0!==t?t:Z(De,"portalId"))&&void 0!==n?n:Z(De,"portalid"))&&void 0!==o?o:Z(Se,"portalId"))&&void 0!==s?s:Z(Se,"portalid")}),[De,we,Se,jt]),Sn=c((()=>te({studioUser:jt,deploymentId:Oe,portalId:kn})),[Oe,kn,jt]);d((()=>{gn&&Te&&xe&&Kt.current.add(xe)}),[Te,xe,gn]);const Nn=l((()=>{var e,t,n;return{studioId:null==Se?void 0:Se.studioid,userEmail:Z(jt,"email"),userId:null!==(e=Z(jt,"userId"))&&void 0!==e?e:Z(jt,"userid"),sessionId:xe,deploymentId:Oe,deploymentType:ke,portalId:kn,accessGroupId:null!==(t=null==De?void 0:De.accessGroupId)&&void 0!==t?t:null,pickaxeId:ye,sender:Ie,senderType:je,origin:be,metadata:null!==(n=V(Oe))&&void 0!==n?n:null}}),[null==De?void 0:De.accessGroupId,Oe,ke,be,null==Se?void 0:Se.studioid,ye,kn,Ie,je,xe,jt]),Cn=l((()=>!!(gn&&St&&xe)&&(!!Kt.current.has(xe)&&(F(Nn()),Kt.current.delete(xe),!0))),[Nn,St,xe,gn]);d((()=>{if(!St||!xe)return;Cn();const e=Vt.current;(null==e?void 0:e.sessionId)===xe&&(H(Object.assign(Object.assign(Object.assign({},e),Nn()),{message:e.message,documentIds:e.documentIds,uploadedModelImages:e.uploadedModelImages,hasUploadedDocuments:e.hasUploadedDocuments,isHidden:e.isHidden})),Vt.current=null)}),[Cn,Nn,St,xe]);const En={currentUses:ee(null==jt?void 0:jt.currentUses),extraUses:ee(null==jt?void 0:jt.extraUses)},_n=Sn.scope?{currentUses:null!==(ue=ee(null===(ce=Sn.record)||void 0===ce?void 0:ce.currentUses))&&void 0!==ue?ue:0,extraUses:null!==(pe=ee(null===(me=Sn.record)||void 0===me?void 0:me.extraUses))&&void 0!==pe?pe:0}:{currentUses:0,extraUses:0},Un=Z(jt,"type"),Tn="guest"===Un||!Un&&Fe?_n:En;d((()=>{let e=!0;return t(void 0,void 0,void 0,(function*(){var t;if(On&&(null===(t=null==it?void 0:it.data)||void 0===t?void 0:t.workspaceId))try{const t=yield R.get(`/cost_per_run?workspaceId=${it.data.workspaceId}`,{withCredentials:!1});e&&Ut(1e4*(Number(t.data.costPerRun)||0))}catch(t){console.error("Failed to fetch average cost per run:",t),e&&Ut(0)}else e&&Ut(0)})),()=>{e=!1}}),[On,null===(fe=null==it?void 0:it.data)||void 0===fe?void 0:fe.workspaceId]);const An=(({currentUses:e,extraUses:t,limit:n,limitInterval:o})=>{const s=Number(null!=e?e:0),i=Number(null!=t?t:0);return n===J||i===J?J:"one_time"===o?Math.max(0,i-s):Math.max(0,n-s)+i})({currentUses:Tn.currentUses,extraUses:Tn.extraUses,limit:jn,limitInterval:wn}),Pn=An===J?J:Math.max(0,Math.ceil(An)),Dn=(({extraUses:e,limit:t,limitInterval:n})=>{const o=Number(null!=e?e:0);return t===J||o===J?J:"one_time"===n?Math.max(0,o):Math.max(0,t)+Math.max(0,o)})({extraUses:Tn.extraUses,limit:jn,limitInterval:wn}),Ln=Dn===J?J:Math.ceil(.05*Dn),Rn=On?Math.ceil(5*_t):5,Mn=Ln===J?J:Math.max(Ln,Rn),Bn=c((()=>!!jt&&(!Ct&&(Pn!==J&&(!(Pn<=0)&&Pn<=Mn)))),[Ct,Mn,Pn,jt]),$n=Boolean(null==De?void 0:De.hideUpgradeOptions),Xn=!$n&&(null===(ge=null==De?void 0:De.upgrade)||void 0===ge?void 0:ge.isLinkToCustomURL)&&"string"==typeof De.upgrade.limitLink&&De.upgrade.limitLink.trim().length>0?De.upgrade.limitLink.trim():null,Kn=Xn&&"string"==typeof(null===(ve=null==De?void 0:De.upgrade)||void 0===ve?void 0:ve.limitCTA)&&De.upgrade.limitCTA.trim().length>0?De.upgrade.limitCTA:(null==Ee?void 0:Ee["pricing.upgrade"])||(null==Ee?void 0:Ee.upgrade)||"Upgrade",Vn=c((()=>{var e,t,n;return!!Te&&(!!Se&&(!gt.isLoading&&(!((null!==(t=null===(e=gt.data)||void 0===e?void 0:e.messages.length)&&void 0!==t?t:0)>1)&&(!!(null===(n=Se.icebreakers)||void 0===n?void 0:n.length)&&(!Pe&&!vn)))))}),[Se,Te,Pe,vn,gt.data,gt.isLoading]),Fn=c((()=>{if(Je||et)return!1;const e=pn&&Ze.length>0&&Ze.every((e=>"finished"===e.status));return!(!vt.trim()&&!e)&&Ze.every((e=>"finished"===e.status||e.isInsertedAsRaw))}),[pn,Je,et,vt,Ze]);u(ie,(()=>({onSubmit:Hn}))),d((()=>{Re(Vn)}),[Vn]),d((()=>{var e;if(i){const t=Array.from(Ge),n=null===(e=t[t.length-2].parts.find((e=>"text"===e.type)))||void 0===e?void 0:e.content;Hn(n,!0)}}),[i]),d((()=>{if(!$t.current||!oe)return;const e=new ResizeObserver((e=>{for(const t of e)oe(t.contentRect.height)}));return e.observe($t.current),()=>{e.disconnect()}}),[oe]),d((()=>{if(!Wt)return;const e=At.current?`${At.current} `:"";ht(`${e}${Ht}`)}),[Ht,Wt]),d((()=>{if(!Mt.current)return;(()=>{if(!Mt.current)return;let e=Mt.current.scrollHeight>52;vt.includes("\n")||Ze.length?e=!0:vt.trim()||(e=!1),yt(e)})()}),[vt,Ze]),d((()=>{const e=Mt.current,t=Bt.current;if(!e||!t||bt||vt.includes("\n"))return void It(!1);const n=window.getComputedStyle(e),o=`${n.fontStyle} ${n.fontVariant} ${n.fontWeight} ${n.fontSize} / ${n.lineHeight} ${n.fontFamily}`,s=document.createElement("span");Object.assign(s.style,{font:o,letterSpacing:n.letterSpacing,position:"absolute",visibility:"hidden",whiteSpace:"nowrap",top:"0",left:"0"}),s.textContent=vt||yn,document.body.appendChild(s);const i=s.offsetWidth;s.remove();const r=parseFloat(n.paddingLeft)||0,a=parseFloat(n.paddingRight)||0,l=e.clientWidth-r-a-t.offsetWidth;It(i>l)}),[vt,bt,yn]);const Hn=(e,n=!1)=>t(void 0,void 0,void 0,(function*(){var t,o,s,i,r,a;let l=null;try{if(Je||et)return;const d=Ze.filter((e=>"finished"===e.status&&!e.isInsertedAsRaw)),c=d.map((e=>e.documentId)).filter(Boolean),u=d.filter((e=>"image"===e.type)).map((e=>{const t=e.name.split(".").pop()||"";return{documentId:e.documentId,extension:t}})),m=null!=e?e:vt,p=null!==(o=null===(t=null==Se?void 0:Se.documentuploadtype)||void 0===t?void 0:t.startsWith("enduserupload"))&&void 0!==o&&o&&c.length>0;if(!m&&!p)return;Ye(""),st(""),Qe(null),ht(""),Le(!1),qe("fetching"),at(),dt();const f=null!==(i=null===(s=gt.data)||void 0===s?void 0:s.messages)&&void 0!==i?i:[],g=L(Ge,f),v=n?g.slice(0,g.length-1):g,h=(e=>e.reduce(((e,t)=>Math.max(e,t.id)),0)+1)(v),b=h+(n?0:1),y={id:b,role:"assistant",parts:[],documentIds:[]},x=[...v,...n?[]:[{id:h,role:"user",parts:[{type:"text",content:m,isVisible:!0}],documentIds:p?c:[]}],y];ze(x),dt(),p&&ot([]);const I=V(Oe),j="undefined"!=typeof crypto&&"randomUUID"in crypto?crypto.randomUUID():`submission-${Date.now()}-${Math.random().toString(36).slice(2)}`;l=j,Dt.current=j,Lt.current=null,Rt.current=[];const w=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API2_URL}/response/submit`,Object.assign({method:"POST",body:JSON.stringify(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({origin:be,pickaxeId:ye,sessionId:xe,submissionId:j,senderType:je,value:m},p&&{documentIds:c}),Ie&&{sender:Ie}),Ve&&{studioSessionToken:Ve}),!Ve&&!Ie&&{sender:K()}),kn&&{portalId:kn}),Oe&&{deploymentId:Oe}),I&&{metadata:I}),p&&u.length>0?{uploadedModelImages:u}:{})),headers:Object.assign(Object.assign({},(!process.env.NODE_ENV||"development"===process.env.NODE_ENV)&&Object.assign({},process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN&&{"x-pickaxe-session-token":process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN})),{"x-request-sent-at":(new Date).toISOString()})},mn&&{credentials:"include"})),O=yield w.json();if(!O.success){if(O.limitData){const e=new Error(O.error||O.message||(null==Ee?void 0:Ee["failed-to-start-generation"])||"Failed to start generation");throw e.limitData=O.limitData,e}if(bn(O))return;throw new Error(O.error||O.message||(null==Ee?void 0:Ee["failed-to-start-generation"])||"Failed to start generation")}const k=null!==(r=O.submissionId)&&void 0!==r?r:j;l=k,Dt.current=k;const S=()=>Lt.current===k;if(S())return;gn&&Te&&xe&&Kt.current.add(xe);const C=Object.assign(Object.assign({},Nn()),{message:m,documentIds:p?c:[],uploadedModelImages:p?u:[],hasUploadedDocuments:p,isHidden:n,metadata:null!=I?I:null});St?(Cn(),H(C)):Vt.current=C,qe("streaming"),Xt.current=new AbortController;const E=[];let _=[...null!=ct?ct:[]],U=0,T=!1,A="";for(;!T;)try{const e=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API2_URL}/response/stream/${k}?index=${U}`,{signal:null===(a=Xt.current)||void 0===a?void 0:a.signal,headers:{"Cache-Control":"no-cache",Connection:"keep-alive"}});if(!e.body)throw new Error("No response body");const t=e.body.getReader();Pt.current=t;const n=new TextDecoder,o=N({onEvent:e=>{var t,n;if(S())T=!0;else if(e.event&&"ping"!==e.event&&U++,"stop"!==e.event){if("error"===e.event){const t=JSON.parse(e.data);if(t.limitData)return Qe(t.limitData),Ye(""),void(T=!0);const n=t.error||t.message||(null==Ee?void 0:Ee["something-went-wrong"])||"Something went wrong.";return bn(t)||Ye(n),void(T=!0)}if("delta"===e.event){const o=JSON.parse(e.data);if("data-error"===o.type&&se){const e=o.data.error;if("string"==typeof e){const t=/['"]type['"]\s*:\s*['"]unauthorized_smithery['"]/.test(e),n=/['"]type['"]\s*:\s*['"]unauthorized_composio['"]/.test(e);if(t){const t=e.match(/['"]qualifiedName['"]\s*:\s*['"]([^'"]+)['"]/),n=e.match(/['"]serverId['"]\s*:\s*['"]([^'"]+)['"]/),o=e.match(/['"]name['"]\s*:\s*['"]([^'"]+)['"]/);if(t&&t[1]&&n&&n[1]&&o&&o[1])throw T=!0,se({provider:"smithery",smitheryId:t[1],serverId:n[1],name:o[1]}),new Error("STOP_STREAM")}else if(n){const t=e.match(/['"]toolkitSlug['"]\s*:\s*['"]([^'"]+)['"]/),n=e.match(/['"]serverId['"]\s*:\s*['"]([^'"]+)['"]/),o=e.match(/['"]name['"]\s*:\s*['"]([^'"]+)['"]/);if(t&&t[1]&&n&&n[1]&&o&&o[1])throw T=!0,se({provider:"composio",toolkitSlug:t[1],serverId:n[1],name:o[1]}),new Error("STOP_STREAM")}}else if("object"==typeof e&&null!==e){const t=e;if("unauthorized_smithery"===t.type&&t.qualifiedName&&t.serverId&&t.name)throw T=!0,se({provider:"smithery",smitheryId:t.qualifiedName,serverId:t.serverId,name:t.name}),new Error("STOP_STREAM");if("unauthorized_composio"===t.type&&t.toolkitSlug&&t.serverId&&t.name)throw T=!0,se({provider:"composio",toolkitSlug:t.toolkitSlug,serverId:t.serverId,name:t.name}),new Error("STOP_STREAM")}}else if("text-start"===o.type)A="",E.push({type:"text",content:"",isVisible:null===(t=o.isVisible)||void 0===t||t});else if("text-delta"===o.type)A+=o.delta,E[E.length-1].content=A;else if("text-end"===o.type)A="";else if("reasoning-start"===o.type)A="",E.push({type:"reasoning",content:"",isVisible:null===(n=o.isVisible)||void 0===n||n});else if("reasoning-delta"===o.type)A+=o.delta,E[E.length-1].content=A;else if("reasoning-end"===o.type)A="";else if(o.type.startsWith("data-")){const e=o;E.push({type:e.type,content:JSON.stringify(e.data),isVisible:!0})}Rt.current=q(E);const s=q(E);ze((e=>{const t=e.findIndex((e=>e.id===b)),n=Object.assign(Object.assign({},y),{parts:s});return-1===t?[...e,n]:e.map(((e,o)=>o===t?n:e))}))}else if("artifact_created"===e.event){const t=JSON.parse(e.data);_=_.filter((e=>!(e.id===t.id&&e.version===t.version))),_.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),mt([..._]),ut.startsWith("inline")||pt({id:t.id,version:t.version})}else if("artifact_updated"===e.event){const t=JSON.parse(e.data);_=_.filter((e=>!(e.id===t.id&&e.version===t.version))),_.push(Object.assign(Object.assign({},t),{content:"",status:"updating"})),mt(_),ut.startsWith("inline")||pt({id:t.id,version:t.version})}else if("artifact_rewrite"===e.event){const t=JSON.parse(e.data);_=_.filter((e=>!(e.id===t.id&&e.version===t.version))),_.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),mt(_),ut.startsWith("inline")||pt({id:t.id,version:t.version})}else if("artifact_content"===e.event){const t=JSON.parse(e.data),n=t.token.replace(/\u200B/g,"");_=_.map((e=>e.id===t.id&&e.version===t.version?Object.assign(Object.assign({},e),{content:e.content+n,status:"streaming"}):e)),mt(_)}else if("artifact_finished"===e.event){const t=JSON.parse(e.data);mt(_.map((e=>e.id===t.id?Object.assign(Object.assign({},e),{status:"finished"}):e)))}else if("error"===e.event){const t=JSON.parse(e.data);if(t.limitData)return Qe(t.limitData),Ye(""),void(T=!0);const n=t.error||t.message||(null==Ee?void 0:Ee["something-went-wrong-try-again"])||"Something went wrong, please try again.";if(bn(t))return void(T=!0);Ye(n)}else"stop"===e.event&&(T=!0)}else T=!0}});for(;;){if(S()){T=!0,t.cancel().catch((()=>{}));break}const{value:e,done:s}=yield t.read();if(S()){T=!0,t.cancel().catch((()=>{}));break}if(s)break;o.feed(n.decode(e))}T||S()||(yield new Promise((e=>setTimeout(e,1e3))))}catch(e){if("STOP_STREAM"===e.message||Q(e)||S())return void(T=!0);console.warn("Stream connection lost, retrying...",e),yield new Promise((e=>setTimeout(e,1e3)))}null==Ke||Ke(xe)}catch(e){if(Q(e))return;if(e.limitData)Qe(e.limitData),Ye("");else{let t=D(e)||"";t&&!t.includes("Unexpected token 'A',")||(t=(null==Ee?void 0:Ee["high-traffic-try-again-later"])||"Oops! We're experiencing high traffic at the moment. Please try again later."),bn(t)||Ye(t)}}finally{const e=!l||Dt.current===l;dt(),e&&(qe("idle"),lt(),Pt.current=null),l&&e&&(Dt.current=null,Rt.current=[]),yield In()}}));return hn?null:n("div",Object.assign({className:B("flex w-full flex-shrink-0 flex-col items-center",!vn&&"px-4 pb-8"),dir:Ae?"rtl":"ltr"},{children:o("div",Object.assign({className:"flex w-full max-w-[800px] flex-col"},{children:[o("div",Object.assign({ref:$t,className:B("relative flex flex-col w-full justify-end gap-y-3 py-[3px]","block"===Ne.formFieldStyle&&"shadow"),style:Object.assign(Object.assign({},ln),{maxHeight:`${Ft}px`,overflowY:"auto"})},{children:[Bn&&o("div",Object.assign({className:"sticky top-0 z-10 flex w-full items-center justify-between border-b px-4 py-2.5 shadow-sm backdrop-blur-md",style:{backgroundColor:ln.backgroundColor?`${ln.backgroundColor}E6`:void 0,borderColor:Ce.text+"20",color:Ce.text,borderTopRightRadius:Ne.cornerRadius+"px",borderTopLeftRadius:Ne.cornerRadius+"px"}},{children:[n("div",Object.assign({className:"flex items-center gap-2 text-sm font-medium"},{children:o("span",{children:[Pn.toLocaleString()," ",On?(null==Ee?void 0:Ee.credits)||"Credits":(null==Ee?void 0:Ee.uses)||"Uses"," ",(null==Ee?void 0:Ee.remaining)||"remaining"]})})),o("div",Object.assign({className:"flex items-center gap-3"},{children:[!$n&&n("button",Object.assign({className:"rounded-md px-3 py-1.5 text-xs font-semibold transition-opacity hover:opacity-90",style:{backgroundColor:Ce.accent,color:Ce.accentText},onClick:e=>{if(e.preventDefault(),e.stopPropagation(),Xn)return void window.open(Xn,"_blank","noopener,noreferrer");const t=$({baseUrl:Ot,accessGroupId:null==De?void 0:De.accessGroupId,redirectUrl:document.URL});t&&(X()?window.open(t):location.href=t)}},{children:Kn})),n("button",Object.assign({className:"flex h-6 w-6 items-center justify-center rounded-full opacity-60 transition-opacity hover:opacity-100",onClick:()=>Et(!0)},{children:n("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:2,stroke:"currentColor",className:"h-4 w-4"},{children:n("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M6 18L18 6M6 6l12 12"})}))}))]}))]})),!Je&&Ze.length>0&&n(T,{className:"p-4 pb-0",isDisabled:Je}),o("div",Object.assign({className:"relative flex w-full flex-col"},{children:[Wt&&o("div",Object.assign({className:"absolute left-4 top-1/2 flex -translate-y-1/2 select-none items-center gap-x-2"},{children:[n("span",{className:"h-2 w-2 animate-pulse rounded-full bg-c-secondary",style:{backgroundColor:null!==(he=Ce.accent)&&void 0!==he?he:"#ff0000"}}),n("span",Object.assign({className:"text-sm text-c-secondary font-semilight",style:{color:Ce.text+"90"}},{children:(null==Ee?void 0:Ee.listening)||"Listening..."}))]})),n(A,Object.assign({ref:Mt,className:B(an.i1,"py-3.5 max-h-60 px-4 w-full border-transparent bg-transparent",!vt.trim()&&!vt.includes("\n")&&"overflow-hidden text-ellipsis whitespace-nowrap placeholder:whitespace-normal placeholder:overflow-visible",Ae?"text-right":"text-left",xn&&"mb-12",Wt&&"text-transparent"),value:vt,placeholder:yn,onChange:e=>{ht(e)},onKeyDown:e=>{Ue||rt||"Enter"===e.key&&(e.shiftKey||(e.preventDefault(),et||Je||Hn()))},onPaste:e=>t(void 0,void 0,void 0,(function*(){const t=Array.from(e.clipboardData.files||[]);if(t.length>0){if(!pn)return;e.preventDefault(),Le(!1),yield nt(t)}}))},Y&&{onFocus:Y},ne&&{onBlur:ne},{dir:Ae?"rtl":"ltr"})),n("div",Object.assign({ref:Bt,className:B("flex items-center gap-2 absolute right-0 z-2 transition-all duration-200 ease-in-out",xn?"bottom-0 mb-2.5":"top-1/2 -translate-y-1/2"),style:Object.assign(Object.assign({},!xn&&ln.backgroundColor&&{backgroundColor:ln.backgroundColor}),{borderTopRightRadius:Ne.cornerRadius+"px",borderBottomRightRadius:Ne.cornerRadius+"px"})},{children:Je?n("button",Object.assign({className:"flex h-8 w-8 items-center mr-2 justify-center rounded-full outline-none transition-colors duration-200 ease-in-out",onClick:()=>{const e=Dt.current;e&&(Lt.current=e,(e=>{t(void 0,void 0,void 0,(function*(){if(!(e=null!=e?e:Dt.current))return;const t=q(Rt.current);try{yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API2_URL}/response/cancel/${e}`,Object.assign({method:"POST",headers:Object.assign(Object.assign({"Content-Type":"application/json"},(!process.env.NODE_ENV||"development"===process.env.NODE_ENV)&&Object.assign({},process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN&&{"x-pickaxe-session-token":process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN})),{"x-request-sent-at":(new Date).toISOString()}),body:JSON.stringify({outputMessageParts:t})},mn&&{credentials:"include"}))}catch(e){console.warn("Failed to cancel submission",e)}}))})(e)),Xt.current&&(Xt.current.abort(),Xt.current=null),Pt.current&&(Pt.current.cancel().catch((()=>{})),Pt.current=null),qe("idle")},style:{backgroundColor:Ce.accent,color:Ce.accentText}},{children:n(U,{className:"h-4 w-4 shrink-0"})})):Wt?n("button",Object.assign({className:"flex h-8 w-8 items-center mr-2 justify-center rounded-full outline-none transition-colors duration-200 ease-in-out",onClick:qt,style:{backgroundColor:Ce.accent,color:Ce.accentText}},{children:n(U,{className:"h-4 w-4 shrink-0"})})):o(s,{children:[pn&&o("button",Object.assign({className:"flex h-8 w-8 items-center justify-center rounded-full outline-none transition-colors duration-200 ease-in-out disabled:cursor-default",style:{backgroundColor:tn?Ce.accent+"10":void 0,color:tn?Ce.accent:Ce.accent+"80"},disabled:et||Je,onClick:()=>{var e;return null===(e=Tt.current)||void 0===e?void 0:e.click()}},nn,{children:[n("input",{id:"file-upload",ref:Tt,type:"file",accept:[...O,...k,...S].join(", "),multiple:!0,hidden:!0,className:"hidden",onChange:e=>t(void 0,void 0,void 0,(function*(){Le(!1),yield nt(Array.from(e.target.files||[])),e.target.value=""}))}),n(C,{className:"h-6 w-6 shrink-0"})]})),fn&&n("button",Object.assign({className:"disabled:cursor-default flex h-8 w-8 items-center justify-center rounded-full outline-none transition-colors duration-200 ease-in-out",style:{backgroundColor:Wt?Ce.accent:sn?Ce.accent+"10":void 0,color:Wt?Ce.accentText:sn?Ce.accent:Ce.accent+"80"},disabled:et||Je||Gt,onClick:()=>{Wt?qt():(At.current=vt,zt(_e||"en-US"))}},rn,{children:n(_,{className:"h-5 w-5 shrink-0"})})),n("button",Object.assign({className:"flex h-8 w-8 items-center mr-2 justify-center rounded-full outline-none transition-colors duration-200 ease-in-out disabled:cursor-default",style:{backgroundColor:Yt||Fn?Ce.accent:Ce.accent+"10",color:Yt||Fn?Ce.accentText:Ce.accent+"80"},disabled:!Fn,onClick:()=>Hn()},Zt,{children:n(E,{className:B("h-6 w-6 shrink-0",Ae&&"scale-x-[-1] transform")})}))]})}))]}))]})),tt&&n(P,{error:tt,className:"mt-3"})]}))}))}));ne.displayName="Input";export{ne as default};
|
|
1
|
+
import{__rest as e,__awaiter as t}from"../../../_virtual/_tslib.js";import{jsx as n,jsxs as o,Fragment as s}from"react/jsx-runtime";import{forwardRef as i,useState as r,useRef as a,useCallback as l,useEffect as d,useMemo as c,useImperativeHandle as u}from"react";import{usePickaxeContext as m}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as p}from"../../../hooks/pickaxe/useResponseContext.js";import{useStyleInput as f}from"../../../hooks/studio/useStyleInput.js";import{useStyleFontSize as g}from"../../../hooks/studio/useStyleFontSize.js";import{useConversation as v}from"../../../hooks/pickaxe/useConversation.js";import{useDimensionContext as h}from"../../../hooks/pickaxe/useDimensionContext.js";import{useAuthContext as b}from"../Addons/Auth/hooks/useAuthContext.js";import{useDocument as y}from"../Addons/Document/hooks/useDocument.js";import{useScroll as x}from"../Addons/Scroll/hooks/useScroll.js";import{useArtifactContext as I}from"../Addons/Artifact/hooks/useArtifactContext.js";import{useHover as j}from"../../../hooks/core/useHover.js";import{useMediaQuery as w}from"../../../hooks/core/useMediaQuery.js";import{allowedFileMimeTypes as O,allowedImageMimeTypes as k,additionalAllowedFileExtensions as S}from"../../../common/documents.js";import{createParser as N}from"eventsource-parser";import C from"../../Icons/attach-vertical.svg.js";import E from"../../Icons/arrow-right.svg.js";import _ from"../../Icons/microphone.svg.js";import T from"../../Icons/stop.svg.js";import U from"../Addons/Document/List.js";import A from"../../Core/Textarea.js";import P from"../../Core/ErrorAlert.js";import D from"../../../common/error.js";import{getUnpersistedMemoryMessages as L}from"../../../common/chatMessages.js";import{pickaxeApi2 as R}from"../../../common/api/pickaxe.js";import{getValidationFailure as M}from"../../../common/validation.js";import B from"../../../common/cn.js";import{buildUpgradeUrl as $,isInIframe as X,initializeEmbedUserId as K}from"../../../common/utils.js";import{getPickaxeConfigMetadata as V}from"../../../common/pickaxeConfig.js";import{fireDeploymentSessionInitializedWebhook as F,fireDeploymentFirstMessageSubmittedWebhook as H}from"../../../common/deploymentWebhooks.js";import{useStudio as W}from"../../../hooks/studio/useStudio.js";import{useSpeechToText as G}from"../../../hooks/pickaxe/useSpeechToText.js";import{STUDIO_INFINITY_VALUE as J}from"../common/PickaxeCommon.js";const z=e=>"string"==typeof e&&e.trim().length>0,q=e=>e.map((e=>Object.assign({},e))),Q=e=>e instanceof Error&&("AbortError"===e.name||"BodyStreamBuffer was aborted"===e.message),Y=(e,t)=>{if(e&&"object"==typeof e)return e[t]},Z=(e,t)=>{const n=Y(e,t);return z(n)?n:null},ee=e=>{const t=Number(e);return Number.isFinite(t)?t:void 0},te=({studioUser:e,deploymentId:t,portalId:n})=>{var o,s;const i=Array.isArray(Y(e,"uses"))?Y(e,"uses"):[],r=(({deploymentId:e,portalId:t})=>z(e)?{type:"deployment",id:e}:z(t)?{type:"portal",id:t}:null)({deploymentId:t,portalId:n});if(!r)return{scope:r,record:null};const a=null!==(s=null!==(o=i.find((e=>e.id===r.id&&e.type===r.type)))&&void 0!==o?o:i.find((e=>e.id===r.id)))&&void 0!==s?s:null;return{scope:r,record:a}},ne=i((({resubmitPrompt:i,onFocus:Y,onBlur:ne,onInputHeightChange:oe,initSmitheryAuthData:se},ie)=>{var re,ae,le,de,ce,ue,me,pe,fe,ge,ve,he;const{origin:be,pickaxeId:ye,sessionId:xe,sender:Ie,senderType:je,portalId:we,deploymentId:Oe,deploymentType:ke,pickaxe:Se,styles:Ne,colors:Ce,translations:Ee,locale:_e,forceMobile:Te,isNewChat:Ue,isRtl:Ae,isShowFeedbackMessage:Pe,accessGroup:De,setIsNewChat:Le,setIsShowIceBreaker:Re,setValidationStatus:Me,setValidationUpgradeGroups:Be,setValidationUpgradeUrl:$e,setAccessGroup:Xe,onGenerateComplete:Ke}=m(),{token:Ve,isLoggedOut:Fe,isSent:He,isPricingAuth:We}=b(),{messages:Ge,isGenerating:Je,setMessages:ze,setStatus:qe,setLimitData:Qe,setError:Ye}=p(),{documents:Ze,isUploading:et,documentError:tt,onFileUpload:nt,setDocuments:ot,setDocumentError:st}=y(),{studio:it}=W(),[rt]=w("(max-width: 480px)"),{scrollStartSession:at,scrollEndSession:lt,scrollToBottom:dt}=x({auto:!0,smooth:!(Te||rt)}),{artifacts:ct,currentPopupType:ut,setArtifacts:mt,setCurrentArtifact:pt}=I(),{height:ft}=h(),gt=v(),[vt,ht]=r(""),[bt,yt]=r(!1),[xt,It]=r(!1),[jt,wt]=r(null),[Ot,kt]=r(null),[St,Nt]=r(!1),[Ct,Et]=r(!1),[_t,Tt]=r(0),Ut=a(null),At=a(""),Pt=a(null),Dt=a(null),Lt=a(null),Rt=a([]),Mt=a(null),Bt=a(null),$t=a(null),Xt=a(null),Kt=a(new Set),Vt=a(null),Ft=Math.max(.4*ft,100),{speechTranscript:Ht,isSpeechListening:Wt,isSpeechProcessing:Gt,isSpeechSupported:Jt,onStartListening:zt,onStopListening:qt}=G(),Qt=j(),{isHover:Yt}=Qt,Zt=e(Qt,["isHover"]),en=j(),{isHover:tn}=en,nn=e(en,["isHover"]),on=j(),{isHover:sn}=on,rn=e(on,["isHover"]),an=g(),ln=f(),dn="undefined"!=typeof window?window.location.hostname:"",cn="undefined"!=typeof window?window.location.href:"",un="undefined"!=typeof window&&window.self!==window.top,mn=dn.includes("pickaxe.co")&&!cn.includes("https://studio.pickaxe.co/_embed")&&!un,pn=null!==(ae=null===(re=null==Se?void 0:Se.documentuploadtype)||void 0===re?void 0:re.startsWith("enduserupload"))&&void 0!==ae&&ae,fn=Jt&&(null==Se?void 0:Se.enablevoicetotext),gn=z(Oe),vn="chat-input"===ke&&Ue&&!He,hn="chat-input"===ke&&We&&Fe&&He,bn=l((e=>{const t=M(e);return!!t&&(Ye(""),Qe(null),Me(t.status),Xe(t.accessGroup),Be(t.upgradeGroups),$e(t.upgradeUrl),!0)}),[Ye,Qe,Me,Be,$e,Xe]),yn=null!==(le=null==Se?void 0:Se.placeholdertext)&&void 0!==le?le:Ae?"بماذا تريد أن تتحدث؟":(null==Ee?void 0:Ee["what-do-you-want-to-talk-about"])||"What do you want to talk about?",xn=bt||xt,In=l((()=>t(void 0,void 0,void 0,(function*(){Nt(!1);try{const e=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API2_URL}/user`,Object.assign(Object.assign({method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(Object.assign({studioId:null==Se?void 0:Se.studioid},Ve?{studioSessionToken:Ve}:Ie?{sender:Ie}:{sender:K()}))},(!process.env.NODE_ENV||"development"===process.env.NODE_ENV)&&Object.assign({},process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN&&{headers:{"Content-Type":"application/json","x-pickaxe-session-token":process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN}})),mn&&{credentials:"include"})),t=yield e.json();(null==t?void 0:t.studioUser)&&(wt(t.studioUser),kt(t.url))}catch(e){console.error("Failed to fetch studio user:",e)}finally{Nt(!0)}}))),[mn,null==Se?void 0:Se.studioid,Ie,Ve]);d((()=>{In()}),[In]);const jn=Number(null!==(de=null==De?void 0:De.limit)&&void 0!==de?de:0),wn="string"==typeof(null==De?void 0:De.limitInterval)?De.limitInterval:null,On=!!(null==it?void 0:it.data.usage)&&it.data.usage.isCredits,kn=c((()=>{var e,t,n,o,s;return null!==(s=null!==(o=null!==(n=null!==(t=null!==(e=null!=we?we:Z(jt,"portalId"))&&void 0!==e?e:Z(jt,"portalid"))&&void 0!==t?t:Z(De,"portalId"))&&void 0!==n?n:Z(De,"portalid"))&&void 0!==o?o:Z(Se,"portalId"))&&void 0!==s?s:Z(Se,"portalid")}),[De,we,Se,jt]),Sn=c((()=>te({studioUser:jt,deploymentId:Oe,portalId:kn})),[Oe,kn,jt]);d((()=>{gn&&Ue&&xe&&Kt.current.add(xe)}),[Ue,xe,gn]);const Nn=l((()=>{var e,t,n;return{studioId:null==Se?void 0:Se.studioid,userEmail:Z(jt,"email"),userId:null!==(e=Z(jt,"userId"))&&void 0!==e?e:Z(jt,"userid"),sessionId:xe,deploymentId:Oe,deploymentType:ke,portalId:kn,accessGroupId:null!==(t=null==De?void 0:De.accessGroupId)&&void 0!==t?t:null,pickaxeId:ye,sender:Ie,senderType:je,origin:be,metadata:null!==(n=V(Oe))&&void 0!==n?n:null}}),[null==De?void 0:De.accessGroupId,Oe,ke,be,null==Se?void 0:Se.studioid,ye,kn,Ie,je,xe,jt]),Cn=l((()=>!!(gn&&St&&xe)&&(!!Kt.current.has(xe)&&(F(Nn()),Kt.current.delete(xe),!0))),[Nn,St,xe,gn]);d((()=>{if(!St||!xe)return;Cn();const e=Vt.current;(null==e?void 0:e.sessionId)===xe&&(H(Object.assign(Object.assign(Object.assign({},e),Nn()),{message:e.message,documentIds:e.documentIds,uploadedModelImages:e.uploadedModelImages,hasUploadedDocuments:e.hasUploadedDocuments,isHidden:e.isHidden})),Vt.current=null)}),[Cn,Nn,St,xe]);const En={currentUses:ee(null==jt?void 0:jt.currentUses),extraUses:ee(null==jt?void 0:jt.extraUses)},_n=Sn.scope?{currentUses:null!==(ue=ee(null===(ce=Sn.record)||void 0===ce?void 0:ce.currentUses))&&void 0!==ue?ue:0,extraUses:null!==(pe=ee(null===(me=Sn.record)||void 0===me?void 0:me.extraUses))&&void 0!==pe?pe:0}:{currentUses:0,extraUses:0},Tn=Z(jt,"type"),Un="guest"===Tn||!Tn&&Fe?_n:En;d((()=>{let e=!0;return t(void 0,void 0,void 0,(function*(){var t;if(On&&(null===(t=null==it?void 0:it.data)||void 0===t?void 0:t.workspaceId))try{const t=yield R.get(`/cost_per_run?workspaceId=${it.data.workspaceId}`,{withCredentials:!1});e&&Tt(1e4*(Number(t.data.costPerRun)||0))}catch(t){console.error("Failed to fetch average cost per run:",t),e&&Tt(0)}else e&&Tt(0)})),()=>{e=!1}}),[On,null===(fe=null==it?void 0:it.data)||void 0===fe?void 0:fe.workspaceId]);const An=(({currentUses:e,extraUses:t,limit:n,limitInterval:o})=>{const s=Number(null!=e?e:0),i=Number(null!=t?t:0);return n===J||i===J?J:"one_time"===o?Math.max(0,i-s):Math.max(0,n-s)+i})({currentUses:Un.currentUses,extraUses:Un.extraUses,limit:jn,limitInterval:wn}),Pn=An===J?J:Math.max(0,Math.ceil(An)),Dn=(({extraUses:e,limit:t,limitInterval:n})=>{const o=Number(null!=e?e:0);return t===J||o===J?J:"one_time"===n?Math.max(0,o):Math.max(0,t)+Math.max(0,o)})({extraUses:Un.extraUses,limit:jn,limitInterval:wn}),Ln=Dn===J?J:Math.ceil(.05*Dn),Rn=On?Math.ceil(5*_t):5,Mn=Ln===J?J:Math.max(Ln,Rn),Bn=c((()=>!!jt&&(!Ct&&(Pn!==J&&(!(Pn<=0)&&Pn<=Mn)))),[Ct,Mn,Pn,jt]),$n=Boolean(null==De?void 0:De.hideUpgradeOptions),Xn=!$n&&(null===(ge=null==De?void 0:De.upgrade)||void 0===ge?void 0:ge.isLinkToCustomURL)&&"string"==typeof De.upgrade.limitLink&&De.upgrade.limitLink.trim().length>0?De.upgrade.limitLink.trim():null,Kn=Xn&&"string"==typeof(null===(ve=null==De?void 0:De.upgrade)||void 0===ve?void 0:ve.limitCTA)&&De.upgrade.limitCTA.trim().length>0?De.upgrade.limitCTA:(null==Ee?void 0:Ee["pricing.upgrade"])||(null==Ee?void 0:Ee.upgrade)||"Upgrade",Vn=c((()=>{var e,t,n;return!!Ue&&(!!Se&&(!gt.isLoading&&(!((null!==(t=null===(e=gt.data)||void 0===e?void 0:e.messages.length)&&void 0!==t?t:0)>1)&&(!!(null===(n=Se.icebreakers)||void 0===n?void 0:n.length)&&(!Pe&&!vn)))))}),[Se,Ue,Pe,vn,gt.data,gt.isLoading]),Fn=c((()=>{if(Je||et)return!1;const e=pn&&Ze.length>0&&Ze.every((e=>"finished"===e.status));return!(!vt.trim()&&!e)&&Ze.every((e=>"finished"===e.status||e.isInsertedAsRaw))}),[pn,Je,et,vt,Ze]);u(ie,(()=>({onSubmit:Hn}))),d((()=>{Re(Vn)}),[Vn]),d((()=>{var e;if(i){const t=Array.from(Ge),n=null===(e=t[t.length-2].parts.find((e=>"text"===e.type)))||void 0===e?void 0:e.content;Hn(n,!0)}}),[i]),d((()=>{if(!$t.current||!oe)return;const e=new ResizeObserver((e=>{for(const t of e)oe(t.contentRect.height)}));return e.observe($t.current),()=>{e.disconnect()}}),[oe]),d((()=>{if(!Wt)return;const e=At.current?`${At.current} `:"";ht(`${e}${Ht}`)}),[Ht,Wt]),d((()=>{if(!Mt.current)return;(()=>{if(!Mt.current)return;let e=Mt.current.scrollHeight>52;vt.includes("\n")||Ze.length?e=!0:vt.trim()||(e=!1),yt(e)})()}),[vt,Ze]),d((()=>{const e=Mt.current,t=Bt.current;if(!e||!t||bt||vt.includes("\n"))return void It(!1);const n=window.getComputedStyle(e),o=`${n.fontStyle} ${n.fontVariant} ${n.fontWeight} ${n.fontSize} / ${n.lineHeight} ${n.fontFamily}`,s=document.createElement("span");Object.assign(s.style,{font:o,letterSpacing:n.letterSpacing,position:"absolute",visibility:"hidden",whiteSpace:"nowrap",top:"0",left:"0"}),s.textContent=vt||yn,document.body.appendChild(s);const i=s.offsetWidth;s.remove();const r=parseFloat(n.paddingLeft)||0,a=parseFloat(n.paddingRight)||0,l=e.clientWidth-r-a-t.offsetWidth;It(i>l)}),[vt,bt,yn]);const Hn=(e,n=!1)=>t(void 0,void 0,void 0,(function*(){var t,o,s,i,r,a;let l=null;try{if(Je||et)return;const d=Ze.filter((e=>"finished"===e.status&&!e.isInsertedAsRaw)),c=d.map((e=>e.documentId)).filter(Boolean),u=d.filter((e=>"image"===e.type)).map((e=>{const t=e.name.split(".").pop()||"";return{documentId:e.documentId,extension:t}})),m=null!=e?e:vt,p=null!==(o=null===(t=null==Se?void 0:Se.documentuploadtype)||void 0===t?void 0:t.startsWith("enduserupload"))&&void 0!==o&&o&&c.length>0;if(!m&&!p)return;Ye(""),st(""),Qe(null),ht(""),Le(!1),qe("fetching"),at(),dt();const f=null!==(i=null===(s=gt.data)||void 0===s?void 0:s.messages)&&void 0!==i?i:[],g=L(Ge,f),v=n?g.slice(0,g.length-1):g,h=(e=>e.reduce(((e,t)=>Math.max(e,t.id)),0)+1)(v),b=h+(n?0:1),y={id:b,role:"assistant",parts:[],documentIds:[]},x=[...v,...n?[]:[{id:h,role:"user",parts:[{type:"text",content:m,isVisible:!0}],documentIds:p?c:[]}],y];ze(x),dt(),p&&ot([]);const I=V(Oe),j="undefined"!=typeof crypto&&"randomUUID"in crypto?crypto.randomUUID():`submission-${Date.now()}-${Math.random().toString(36).slice(2)}`;l=j,Dt.current=j,Lt.current=null,Rt.current=[];const w=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API2_URL}/response/submit`,Object.assign({method:"POST",body:JSON.stringify(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({origin:be,pickaxeId:ye,sessionId:xe,submissionId:j,senderType:je,value:m},p&&{documentIds:c}),Ie&&{sender:Ie}),Ve&&{studioSessionToken:Ve}),!Ve&&!Ie&&{sender:K()}),kn&&{portalId:kn}),Oe&&{deploymentId:Oe}),I&&{metadata:I}),p&&u.length>0?{uploadedModelImages:u}:{})),headers:Object.assign(Object.assign({},(!process.env.NODE_ENV||"development"===process.env.NODE_ENV)&&Object.assign({},process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN&&{"x-pickaxe-session-token":process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN})),{"x-request-sent-at":(new Date).toISOString()})},mn&&{credentials:"include"})),O=yield w.json();if(!O.success){if(O.limitData){const e=new Error(O.error||O.message||(null==Ee?void 0:Ee["failed-to-start-generation"])||"Failed to start generation");throw e.limitData=O.limitData,e}if(bn(O))return;throw new Error(O.error||O.message||(null==Ee?void 0:Ee["failed-to-start-generation"])||"Failed to start generation")}const k=null!==(r=O.submissionId)&&void 0!==r?r:j;l=k,Dt.current=k;const S=()=>Lt.current===k;if(S())return;gn&&Ue&&xe&&Kt.current.add(xe);const C=Object.assign(Object.assign({},Nn()),{message:m,documentIds:p?c:[],uploadedModelImages:p?u:[],hasUploadedDocuments:p,isHidden:n,metadata:null!=I?I:null});St?(Cn(),H(C)):Vt.current=C,qe("streaming"),Xt.current=new AbortController;const E=[];let _=[...null!=ct?ct:[]],T=0,U=!1,A="";for(;!U;)try{const e=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API2_URL}/response/stream/${k}?index=${T}`,{signal:null===(a=Xt.current)||void 0===a?void 0:a.signal,headers:{"Cache-Control":"no-cache",Connection:"keep-alive"}});if(!e.body)throw new Error("No response body");const t=e.body.getReader();Pt.current=t;const n=new TextDecoder,o=N({onEvent:e=>{var t,n;if(S())U=!0;else if(e.event&&"ping"!==e.event&&T++,"stop"!==e.event){if("error"===e.event){const t=JSON.parse(e.data);if(t.limitData)return Qe(t.limitData),Ye(""),void(U=!0);const n=t.error||t.message||(null==Ee?void 0:Ee["something-went-wrong"])||"Something went wrong.";return bn(t)||Ye(n),void(U=!0)}if("delta"===e.event){const o=JSON.parse(e.data);if("data-error"===o.type&&se){const e=o.data.error;if("string"==typeof e){const t=/['"]type['"]\s*:\s*['"]unauthorized_smithery['"]/.test(e),n=/['"]type['"]\s*:\s*['"]unauthorized_composio['"]/.test(e);if(t){const t=e.match(/['"]qualifiedName['"]\s*:\s*['"]([^'"]+)['"]/),n=e.match(/['"]serverId['"]\s*:\s*['"]([^'"]+)['"]/),o=e.match(/['"]name['"]\s*:\s*['"]([^'"]+)['"]/);if(t&&t[1]&&n&&n[1]&&o&&o[1])throw U=!0,se({provider:"smithery",smitheryId:t[1],serverId:n[1],name:o[1]}),new Error("STOP_STREAM")}else if(n){const t=e.match(/['"]toolkitSlug['"]\s*:\s*['"]([^'"]+)['"]/),n=e.match(/['"]serverId['"]\s*:\s*['"]([^'"]+)['"]/),o=e.match(/['"]name['"]\s*:\s*['"]([^'"]+)['"]/);if(t&&t[1]&&n&&n[1]&&o&&o[1])throw U=!0,se({provider:"composio",toolkitSlug:t[1],serverId:n[1],name:o[1]}),new Error("STOP_STREAM")}}else if("object"==typeof e&&null!==e){const t=e;if("unauthorized_smithery"===t.type&&t.qualifiedName&&t.serverId&&t.name)throw U=!0,se({provider:"smithery",smitheryId:t.qualifiedName,serverId:t.serverId,name:t.name}),new Error("STOP_STREAM");if("unauthorized_composio"===t.type&&t.toolkitSlug&&t.serverId&&t.name)throw U=!0,se({provider:"composio",toolkitSlug:t.toolkitSlug,serverId:t.serverId,name:t.name}),new Error("STOP_STREAM")}}else if("text-start"===o.type)A="",E.push({type:"text",content:"",isVisible:null===(t=o.isVisible)||void 0===t||t});else if("text-delta"===o.type)A+=o.delta,E[E.length-1].content=A;else if("text-end"===o.type)A="";else if("reasoning-start"===o.type)A="",E.push({type:"reasoning",content:"",isVisible:null===(n=o.isVisible)||void 0===n||n});else if("reasoning-delta"===o.type)A+=o.delta,E[E.length-1].content=A;else if("reasoning-end"===o.type)A="";else if(o.type.startsWith("data-")){const e=o;E.push({type:e.type,content:JSON.stringify(e.data),isVisible:!0})}Rt.current=q(E);const s=q(E);ze((e=>{const t=e.findIndex((e=>e.id===b)),n=Object.assign(Object.assign({},y),{parts:s});return-1===t?[...e,n]:e.map(((e,o)=>o===t?n:e))}))}else if("artifact_created"===e.event){const t=JSON.parse(e.data);_=_.filter((e=>!(e.id===t.id&&e.version===t.version))),_.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),mt([..._]),ut.startsWith("inline")||pt({id:t.id,version:t.version})}else if("artifact_updated"===e.event){const t=JSON.parse(e.data);_=_.filter((e=>!(e.id===t.id&&e.version===t.version))),_.push(Object.assign(Object.assign({},t),{content:"",status:"updating"})),mt(_),ut.startsWith("inline")||pt({id:t.id,version:t.version})}else if("artifact_rewrite"===e.event){const t=JSON.parse(e.data);_=_.filter((e=>!(e.id===t.id&&e.version===t.version))),_.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),mt(_),ut.startsWith("inline")||pt({id:t.id,version:t.version})}else if("artifact_content"===e.event){const t=JSON.parse(e.data),n=t.token.replace(/\u200B/g,"");_=_.map((e=>e.id===t.id&&e.version===t.version?Object.assign(Object.assign({},e),{content:e.content+n,status:"streaming"}):e)),mt(_)}else if("artifact_finished"===e.event){const t=JSON.parse(e.data);mt(_.map((e=>e.id===t.id?Object.assign(Object.assign({},e),{status:"finished"}):e)))}else if("error"===e.event){const t=JSON.parse(e.data);if(t.limitData)return Qe(t.limitData),Ye(""),void(U=!0);const n=t.error||t.message||(null==Ee?void 0:Ee["something-went-wrong-try-again"])||"Something went wrong, please try again.";if(bn(t))return void(U=!0);Ye(n)}else"stop"===e.event&&(U=!0)}else U=!0}});for(;;){if(S()){U=!0,t.cancel().catch((()=>{}));break}const{value:e,done:s}=yield t.read();if(S()){U=!0,t.cancel().catch((()=>{}));break}if(s)break;o.feed(n.decode(e))}U||S()||(yield new Promise((e=>setTimeout(e,1e3))))}catch(e){if("STOP_STREAM"===e.message||Q(e)||S())return void(U=!0);console.warn("Stream connection lost, retrying...",e),yield new Promise((e=>setTimeout(e,1e3)))}null==Ke||Ke(xe)}catch(e){if(Q(e))return;if(e.limitData)Qe(e.limitData),Ye("");else{let t=D(e)||"";t&&!t.includes("Unexpected token 'A',")||(t=(null==Ee?void 0:Ee["high-traffic-try-again-later"])||"Oops! We're experiencing high traffic at the moment. Please try again later."),bn(t)||Ye(t)}}finally{const e=!l||Dt.current===l;dt(),e&&(qe("idle"),lt(),Pt.current=null),l&&e&&(Dt.current=null,Rt.current=[]),yield In()}}));return hn?null:n("div",Object.assign({className:B("flex w-full flex-shrink-0 flex-col items-center",!vn&&"px-4 pb-8"),dir:Ae?"rtl":"ltr"},{children:o("div",Object.assign({className:"flex w-full max-w-[800px] flex-col"},{children:[o("div",Object.assign({ref:$t,className:B("relative flex flex-col w-full justify-end gap-y-3 py-[3px]","block"===Ne.formFieldStyle&&"shadow"),style:Object.assign(Object.assign({},ln),{maxHeight:`${Ft}px`,overflowY:"auto"})},{children:[Bn&&o("div",Object.assign({className:"sticky top-0 z-10 flex w-full items-center justify-between border-b px-4 py-2.5 shadow-sm backdrop-blur-md",style:{backgroundColor:ln.backgroundColor?`${ln.backgroundColor}E6`:void 0,borderColor:Ce.text+"20",color:Ce.text,borderTopRightRadius:Ne.cornerRadius+"px",borderTopLeftRadius:Ne.cornerRadius+"px"}},{children:[n("div",Object.assign({className:"flex items-center gap-2 text-sm font-medium"},{children:o("span",{children:[Pn.toLocaleString()," ",On?(null==Ee?void 0:Ee.credits)||"Credits":(null==Ee?void 0:Ee.uses)||"Uses"," ",(null==Ee?void 0:Ee.remaining)||"remaining"]})})),o("div",Object.assign({className:"flex items-center gap-3"},{children:[!$n&&n("button",Object.assign({className:"rounded-md px-3 py-1.5 text-xs font-semibold transition-opacity hover:opacity-90",style:{backgroundColor:Ce.accent,color:Ce.accentText},onClick:e=>{if(e.preventDefault(),e.stopPropagation(),Xn)return void window.open(Xn,"_blank","noopener,noreferrer");const t=$({baseUrl:Ot,accessGroupId:null==De?void 0:De.accessGroupId,redirectUrl:document.URL});t&&(X()?window.open(t):location.href=t)}},{children:Kn})),n("button",Object.assign({className:"flex h-6 w-6 items-center justify-center rounded-full opacity-60 transition-opacity hover:opacity-100",onClick:()=>Et(!0)},{children:n("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:2,stroke:"currentColor",className:"h-4 w-4"},{children:n("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M6 18L18 6M6 6l12 12"})}))}))]}))]})),!Je&&Ze.length>0&&n(U,{className:"p-4 pb-0",isDisabled:Je}),o("div",Object.assign({className:"relative flex w-full flex-col"},{children:[Wt&&o("div",Object.assign({className:"absolute left-4 top-1/2 flex -translate-y-1/2 select-none items-center gap-x-2"},{children:[n("span",{className:"h-2 w-2 animate-pulse rounded-full bg-c-secondary",style:{backgroundColor:null!==(he=Ce.accent)&&void 0!==he?he:"#ff0000"}}),n("span",Object.assign({className:"text-sm text-c-secondary font-semilight",style:{color:Ce.text+"90"}},{children:(null==Ee?void 0:Ee.listening)||"Listening..."}))]})),n(A,Object.assign({ref:Mt,className:B(an.i1,"py-3.5 max-h-60 px-4 w-full border-transparent bg-transparent",!vt.trim()&&!vt.includes("\n")&&"overflow-hidden text-ellipsis whitespace-nowrap placeholder:whitespace-normal placeholder:overflow-visible",Ae?"text-right":"text-left",xn&&"mb-12",Wt&&"text-transparent"),value:vt,placeholder:yn,onChange:e=>{ht(e)},onKeyDown:e=>{Te||rt||"Enter"===e.key&&(e.shiftKey||(e.preventDefault(),et||Je||Hn()))},onPaste:e=>t(void 0,void 0,void 0,(function*(){const t=Array.from(e.clipboardData.files||[]);if(t.length>0){if(!pn)return;e.preventDefault(),Le(!1),yield nt(t)}}))},Y&&{onFocus:Y},ne&&{onBlur:ne},{dir:Ae?"rtl":"ltr"})),n("div",Object.assign({ref:Bt,className:B("flex items-center gap-2 absolute right-0 z-2 transition-all duration-200 ease-in-out",xn?"bottom-0 mb-2.5":"top-1/2 -translate-y-1/2"),style:Object.assign(Object.assign({},!xn&&ln.backgroundColor&&{backgroundColor:ln.backgroundColor}),{borderTopRightRadius:Ne.cornerRadius+"px",borderBottomRightRadius:Ne.cornerRadius+"px"})},{children:Je?n("button",Object.assign({className:"flex h-8 w-8 items-center mr-2 justify-center rounded-full outline-none transition-colors duration-200 ease-in-out",onClick:()=>{const e=Dt.current;e&&(Lt.current=e,(e=>{t(void 0,void 0,void 0,(function*(){if(!(e=null!=e?e:Dt.current))return;const t=q(Rt.current);try{yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API2_URL}/response/cancel/${e}`,Object.assign({method:"POST",headers:Object.assign(Object.assign({"Content-Type":"application/json"},(!process.env.NODE_ENV||"development"===process.env.NODE_ENV)&&Object.assign({},process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN&&{"x-pickaxe-session-token":process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN})),{"x-request-sent-at":(new Date).toISOString()}),body:JSON.stringify({outputMessageParts:t})},mn&&{credentials:"include"}))}catch(e){console.warn("Failed to cancel submission",e)}}))})(e)),Xt.current&&(Xt.current.abort(),Xt.current=null),Pt.current&&(Pt.current.cancel().catch((()=>{})),Pt.current=null),qe("idle")},style:{backgroundColor:Ce.accent,color:Ce.accentText}},{children:n(T,{className:"h-4 w-4 shrink-0"})})):Wt?n("button",Object.assign({className:"flex h-8 w-8 items-center mr-2 justify-center rounded-full outline-none transition-colors duration-200 ease-in-out",onClick:qt,style:{backgroundColor:Ce.accent,color:Ce.accentText}},{children:n(T,{className:"h-4 w-4 shrink-0"})})):o(s,{children:[pn&&o("button",Object.assign({className:"flex h-8 w-8 items-center justify-center rounded-full outline-none transition-colors duration-200 ease-in-out disabled:cursor-default",style:{backgroundColor:tn?Ce.accent+"10":void 0,color:tn?Ce.accent:Ce.accent+"80"},disabled:et||Je,onClick:()=>{var e;return null===(e=Ut.current)||void 0===e?void 0:e.click()}},nn,{children:[n("input",{id:"file-upload",ref:Ut,type:"file",accept:[...O,...k,...S].join(", "),multiple:!0,hidden:!0,className:"hidden",onChange:e=>t(void 0,void 0,void 0,(function*(){Le(!1),yield nt(Array.from(e.target.files||[])),e.target.value=""}))}),n(C,{className:"h-6 w-6 shrink-0"})]})),fn&&n("button",Object.assign({className:"disabled:cursor-default flex h-8 w-8 items-center justify-center rounded-full outline-none transition-colors duration-200 ease-in-out",style:{backgroundColor:Wt?Ce.accent:sn?Ce.accent+"10":void 0,color:Wt?Ce.accentText:sn?Ce.accent:Ce.accent+"80"},disabled:et||Je||Gt,onClick:()=>{Wt?qt():(At.current=vt,zt(_e||"en-US"))}},rn,{children:n(_,{className:"h-5 w-5 shrink-0"})})),n("button",Object.assign({className:"flex h-8 w-8 items-center mr-2 justify-center rounded-full outline-none transition-colors duration-200 ease-in-out disabled:cursor-default",style:{backgroundColor:Yt||Fn?Ce.accent:Ce.accent+"10",color:Yt||Fn?Ce.accentText:Ce.accent+"80"},disabled:!Fn,onClick:()=>Hn()},Zt,{children:n(E,{className:B("h-6 w-6 shrink-0",Ae&&"scale-x-[-1] transform")})}))]})}))]}))]})),tt&&n(P,{error:tt,className:"mt-3"})]}))}))}));ne.displayName="Input";export{ne as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__rest as e,__awaiter as t}from"../../../../_virtual/_tslib.js";import{jsxs as
|
|
1
|
+
import{__rest as e,__awaiter as t}from"../../../../_virtual/_tslib.js";import{jsxs as o,jsx as s}from"react/jsx-runtime";import{useState as n,useRef as i,useEffect as a}from"react";import{usePickaxeContext as r}from"../../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as c}from"../../../../hooks/pickaxe/useResponseContext.js";import{useStyleInput as l}from"../../../../hooks/studio/useStyleInput.js";import{useStyleFontSize as p}from"../../../../hooks/studio/useStyleFontSize.js";import{useHover as d}from"../../../../hooks/core/useHover.js";import{useSpeechToText as m}from"../../../../hooks/pickaxe/useSpeechToText.js";import u from"../../../Core/Textarea.js";import h from"../../../Icons/microphone.svg.js";import g from"../../../Icons/stop.svg.js";import f from"../../../../common/cn.js";const b=({field:b,update:x,activeVoiceId:v,setActiveVoiceId:j,onLongPaste:y})=>{var k;const{styles:N,colors:O,isRtl:S,pickaxe:w,locale:L,translations:C}=r(),{setError:I}=c(),[T,P]=n(!1),z=p(),F=l(),{speechTranscript:H,isSpeechListening:R,isSpeechProcessing:$,isSpeechSupported:D,onStartListening:V,onStopListening:_}=m(),q=i(""),A=d(),{isHover:B}=A,E=e(A,["isHover"]),U=D&&(null==w?void 0:w.enablevoicetotext),G=R&&v===b.id,J=e=>{I("");const t=e.length;x(Object.assign(Object.assign({},b),{input:e,length:t}))};return a((()=>{if(!R||v!==b.id)return;const e=q.current?`${q.current} `:"";J(`${e}${H}`)}),[H,R,v,b.id]),o("div",Object.assign({className:"group relative flex flex-col gap-y-1",dir:S?"rtl":"ltr"},{children:[o("div",Object.assign({className:"flex flex-col gap-y-2"},{children:[o("div",Object.assign({className:"flex items-center gap-1"},{children:[s("p",Object.assign({className:f(z.b3,"font-semibold opacity-70")},{children:b.main})),b.isRequired&&s("span",Object.assign({className:"select-none font-semibold",style:{color:O.accent}},{children:"*"}))]})),o("div",Object.assign({className:"relative w-full"},{children:[G&&o("div",Object.assign({className:f("absolute top-3.5 z-10 flex select-none items-center gap-x-2 pointer-events-none",S?"right-4":"left-4")},{children:[s("span",{className:"h-2 w-2 animate-pulse rounded-full",style:{backgroundColor:null!==(k=O.accent)&&void 0!==k?k:"#ff0000"}}),s("span",Object.assign({className:"text-sm font-semilight",style:{color:O.text+"90"}},{children:(null==C?void 0:C.listening)||"Listening..."}))]})),s(u,{className:f(z.i1,"rounded-sm border border-transparent py-3 duration-300 ease-in-out transition-all placeholder:font-semilight w-full",S?U?"pl-10 pr-4":"px-4":U?"pl-4 pr-10":"px-4",b.maxLength<10&&"max-w-[400px]","block"===N.formFieldStyle&&"shadow hover:shadow-none",G&&"caret-transparent"),style:Object.assign(Object.assign({},F),G&&{color:"transparent"}),placeholder:G?"":b.placeholder,rows:1,value:b.input,tabIndex:b.order,onChange:J,onFocus:()=>P(!0),onBlur:()=>P(!1),onPaste:e=>{e.clipboardData.getData("text").length<1e3||null==y||y()}}),U&&s("div",Object.assign({className:f("absolute top-2 z-20",S?"left-2":"right-2")},{children:s("button",Object.assign({className:"flex h-8 w-8 items-center justify-center rounded-full outline-none transition-colors duration-200 ease-in-out",style:{backgroundColor:G?O.accent:B?O.accent+"10":void 0,color:G?O.accentText:B?O.accent:O.accent+"80"},disabled:$,onClick:()=>t(void 0,void 0,void 0,(function*(){R?(yield _(),j(b.id)):(j(b.id),q.current=b.input||"",yield V(L||"en-US"),P(!0))}))},E,{type:"button"},{children:G?s(g,{className:"h-4 w-4 shrink-0"}):s(h,{className:"h-5 w-5 shrink-0"})}))}))]}))]})),s("div",Object.assign({className:"pointer-events-none absolute bottom-0 right-0 p-1 px-2"},{children:o("p",Object.assign({className:f(z.b4,"font-semibold opacity-20 opacity-0 group-hover:opacity-100 group-hover:duration-200",b.length>b.maxLength&&"text-c-red opacity-100",T&&"opacity-100")},{children:[b.length,"/",b.maxLength]}))}))]}))};export{b as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as e,jsx as s,Fragment as i}from"react/jsx-runtime";import{useStyleFontSize as t}from"../../../hooks/studio/useStyleFontSize.js";import{usePickaxeContext as a}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useFeedback as o}from"../../../hooks/pickaxe/useFeedback.js";import{AnimatePresence as n,motion as l}from"framer-motion";import c from"../../Icons/message-square-notes.svg.js";import r from"../../Icons/thumbs-down.svg.js";import m from"../../Icons/speaker.svg.js";import p from"../../Icons/stop.svg.js";import d from"../../Icons/thumbs-up.svg.js";import
|
|
1
|
+
import{jsxs as e,jsx as s,Fragment as i}from"react/jsx-runtime";import{useStyleFontSize as t}from"../../../hooks/studio/useStyleFontSize.js";import{usePickaxeContext as a}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useFeedback as o}from"../../../hooks/pickaxe/useFeedback.js";import{AnimatePresence as n,motion as l}from"framer-motion";import c from"../../Icons/message-square-notes.svg.js";import r from"../../Icons/thumbs-down.svg.js";import m from"../../Icons/speaker.svg.js";import p from"../../Icons/stop.svg.js";import d from"../../Icons/spinner-lines.svg.js";import u from"../../Icons/thumbs-up.svg.js";import b from"./PickaxeSimpleButton.js";import h from"./PickaxeCopyButton.js";import f from"./PickaxeFeedbackThumbsDownReasons.js";import g from"../../../common/cn.js";const x=({content:x,sessionId:v,index:k=0,messagesCount:y,isHideFeedback:j,isReadOut:O,isReadOutLoading:w,isReading:N,onOpenChat:T,onReadOut:C})=>{var I,D,R,S;const{colors:z,translations:F,pickaxe:U,setIsShowFeedbackMessage:P}=a(),B=t(),{toggleThumb:H,submitThumbsDown:W,submitThumbsUp:q,isThumbsUpSelected:L,isThumbsDownSelected:M,showThumbsDownOptions:A,showThumbsUpOptions:E,showSuccess:G}=o({content:x,index:k,sessionId:v,successDuration:2e3,promptRate:1,onThumbsDownReasonOpen:()=>P(!0),onThumbsDownReasonClose:()=>P(!1)}),J="function"==typeof T&&((null==U?void 0:U.chatflag)||!!(null==U?void 0:U.enablechatresponses))&&void 0!==v&&void 0!==y,K=Boolean(((null==U?void 0:U.chatflag)||(null==U?void 0:U.enablechatresponses))&&!T||!(null==U?void 0:U.chatflag)&&!(null==U?void 0:U.enablechatresponses))&&!j;return e("div",Object.assign({className:"flex w-full flex-col gap-4"},{children:[e("div",Object.assign({className:"flex h-4 items-center gap-3"},{children:[J&&e(b,Object.assign({color:z.accent,onClick:T},{children:[s(c,{className:"h-4 w-4 shrink-0"}),s("p",Object.assign({className:g(B.b3,"font-semibold")},{children:y}))]})),s(h,{color:z.accent,text:x}),K&&e(i,{children:[s(b,Object.assign({color:z.accent,onClick:()=>H("like"),className:"transition-all active:rotate-12 active:scale-90"},{children:s(u,{className:"size-4",style:{fill:z.text,fillOpacity:L?.3:0}})})),s(b,Object.assign({color:z.accent,onClick:()=>H("dislike"),className:"transition-all active:-rotate-12 active:scale-90"},{children:s(r,{className:"size-4",style:{fill:z.text,fillOpacity:M?.3:0}})})),O&&C&&s(b,Object.assign({color:z.accent,onClick:()=>C(),className:"transition-all active:-rotate-12 active:scale-90"},{children:w?s(d,{className:"size-4 animate-spin"}):N?s(p,{className:"size-4 rounded-full border p-[1.5px]",style:{borderColor:z.accent}}):s(m,{className:"size-4"})})),s(n,{children:G&&s(l.div,Object.assign({initial:{opacity:0,x:-8,filter:"blur(4px)"},animate:{opacity:1,x:0,filter:"blur(0px)"},exit:{opacity:0,x:8,filter:"blur(4px)"},transition:{type:"spring",bounce:0,duration:.6}},{children:s("p",Object.assign({className:g(B.b4,z.secondary,"opacity-75")},{children:null!==(I=null==F?void 0:F["feedback-thanks"])&&void 0!==I?I:"Thanks for the feedback!"}))}))})]})]})),s(n,{children:(A||E)&&e(l.div,Object.assign({initial:{opacity:0,y:-4,filter:"blur(4px)"},animate:{opacity:1,y:0,filter:"blur(0px)"},exit:{opacity:0,y:-2,filter:"blur(4px)"},transition:{type:"spring",bounce:0,duration:.25},className:"flex flex-col gap-4"},{children:[e("div",Object.assign({className:"space-y-0.5"},{children:[s("p",Object.assign({className:g(B.b3,z.text)},{children:E?null!==(D=null==F?void 0:F["feedback-like-title"])&&void 0!==D?D:"What went right?":null!==(R=null==F?void 0:F["feedback-dislike-title"])&&void 0!==R?R:"What went wrong?"})),s("p",Object.assign({className:g(B.b3,z.secondary,"opacity-75")},{children:null!==(S=null==F?void 0:F["feedback-dislike-message"])&&void 0!==S?S:"Help us improve our answers"}))]})),s(l.div,Object.assign({initial:{opacity:0,y:-8,filter:"blur(4px)"},animate:{opacity:1,y:0,filter:"blur(0px)"},transition:{type:"spring",bounce:0,duration:.5,delay:.175},className:"flex flex-wrap items-center gap-2"},{children:s(f,{isUp:E,submitThumbsDown:W,submitThumbsUp:q})}))]}))})]}))};export{x as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__awaiter as e}from"../../../_virtual/_tslib.js";import{jsx as o,jsxs as s}from"react/jsx-runtime";import{useState as i,useMemo as t,useEffect as r}from"react";import{AnimatePresence as l}from"framer-motion";import{usePickaxeContext as n}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as a}from"../../../hooks/pickaxe/useResponseContext.js";import{useStyleFontSize as c}from"../../../hooks/studio/useStyleFontSize.js";import{isInIframe as d,buildUpgradeUrl as u}from"../../../common/utils.js";import
|
|
1
|
+
import{__awaiter as e}from"../../../_virtual/_tslib.js";import{jsx as o,jsxs as s}from"react/jsx-runtime";import{useState as i,useMemo as t,useEffect as r}from"react";import{AnimatePresence as l}from"framer-motion";import{usePickaxeContext as n}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as a}from"../../../hooks/pickaxe/useResponseContext.js";import{useStyleFontSize as c}from"../../../hooks/studio/useStyleFontSize.js";import{isInIframe as d,buildUpgradeUrl as u}from"../../../common/utils.js";import p from"../../Icons/circle-exclamation.svg.js";import m from"../../Core/SpringTransition.js";import v from"../../Core/HtmlRenderer.js";import f from"./PickaxeButton.js";import g from"../../../common/cn.js";import{pickaxeApi2 as b}from"../../../common/api/pickaxe.js";import{useAuthContext as x}from"../Addons/Auth/hooks/useAuthContext.js";import h from"./AccessGroupCardPreview.js";import y from"./HorizontalScrollCue.js";import{useStudio as k}from"../../../hooks/studio/useStudio.js";import{currencyOptions as j}from"./PickaxeCurrency.js";const C=({price:e,uses:i,isCredits:t,isSelected:r,costPerRun:l,onClick:n,colors:a,currencySymbol:c})=>{const d=`${c}${e}`,u={backgroundColor:a.secondary,color:a.secondaryText,borderColor:r?a.secondaryText:"rgba(0,0,0,0.1)"},p=t&&l?Math.ceil(i/l):0;return s("button",t?Object.assign({onClick:n,className:g("flex min-w-[200px] shrink-0 cursor-pointer flex-col rounded-[16px] px-6 py-5 text-left transition-all duration-200",r?"border-2 shadow-sm":"border opacity-80 hover:opacity-100"),style:u},{children:[s("div",Object.assign({className:"mb-4 flex items-center gap-2"},{children:[o("span",Object.assign({className:"text-[24px] font-semibold tracking-tight"},{children:d})),s("span",Object.assign({className:"text-[14px] font-light opacity-80"},{children:["/",i.toLocaleString()," credits"]}))]})),o("div",{className:"mb-4 h-[1px] w-full",style:{backgroundColor:a.secondaryText,opacity:.15}}),s("span",Object.assign({className:"text-[14px] italic opacity-70"},{children:["~ ",void 0!==p&&p>0?p.toLocaleString():"..."," ","runs"]}))]}):Object.assign({onClick:n,className:g("flex shrink-0 cursor-pointer items-center justify-center gap-2 rounded-[16px] px-5 py-3 transition-all duration-200",r?"border-2 shadow-sm":"border opacity-80 hover:opacity-100"),style:u},{children:[o("span",Object.assign({className:"text-[24px] font-semibold tracking-tight"},{children:d})),s("span",Object.assign({className:"text-[14px] font-light opacity-80"},{children:["/",i.toLocaleString()," uses"]}))]}))},w=(e,o)=>{var s,i;const t=Number(o?null!==(s=e.credits)&&void 0!==s?s:e.uses:null!==(i=e.uses)&&void 0!==i?i:e.credits);return Number.isFinite(t)?t:0},N=e=>{const o=Number(e.price);return Number.isFinite(o)?o:0},O=({className:O,iconClassName:S,htmlClassName:U})=>{var A,_,I,L,P;const{colors:R,pickaxe:G,accessGroup:B,sender:T,translations:F,setValidationStatus:M,setClientSecret:$,setStripeAccountId:z}=n(),{token:H,setRedirectUrl:q}=x(),{limitData:D}=a(),{studio:E}=k(),V=c(),[J,K]=i(0),[Q,W]=i(null),X=Boolean(null==D?void 0:D.hideUpgradeOptions),Y=null==E?void 0:E.data,Z=null==Y?void 0:Y.usage,ee=Boolean(null==Z?void 0:Z.isCredits),oe=null!==(_=null===(A=j.find((e=>e.id===(null==Y?void 0:Y.currency))))||void 0===A?void 0:A.symbol)&&void 0!==_?_:j[0].symbol,se=X||"string"!=typeof(null==D?void 0:D.customLink)?"":D.customLink.trim(),ie=t((()=>{if(X)return[];if(se)return[];const e=ee?null==Z?void 0:Z.availableCredits:null==Z?void 0:Z.availableUses;if(Array.isArray(e)&&e.length>0)return e;const o=null==D?void 0:D.buyUses;return Array.isArray(o)?o:[]}),[se,ee,null==D?void 0:D.buyUses,X,null==Z?void 0:Z.availableCredits,null==Z?void 0:Z.availableUses]);r((()=>{K(0)}),[ie]);const te=!0===(null===(I=null==B?void 0:B.upgrade)||void 0===I?void 0:I.isBuyMoreUses)&&ie.length>0,re=te?ie[J]:void 0,le=re?w(re,ee):0,ne=re?N(re):0;r((()=>{let o=!0;return e(void 0,void 0,void 0,(function*(){if(se)W(null);else if(null==Y?void 0:Y.workspaceId)try{const e=yield b.get(`/cost_per_run?workspaceId=${Y.workspaceId}`,{withCredentials:!1});if(o){const o=1e4*e.data.costPerRun||0;W(o)}}catch(e){console.error("Failed to fetch cost per run:",e),o&&W(0)}else W(0)})),()=>{o=!1}}),[se,null==Y?void 0:Y.workspaceId,W]);const ae=se,ce=(null===(L=null==D?void 0:D.limitCTA)||void 0===L?void 0:L.trim())||(null==F?void 0:F["pricing.upgrade"])||(null==F?void 0:F.upgrade)||"Upgrade",de=!X&&!se&&Array.isArray(null==D?void 0:D.upgradeGroups)&&(null==D?void 0:D.upgradeGroups)&&(null==D?void 0:D.upgradeGroups.length)>0;return D?o(l,{children:s(m,Object.assign({className:g("flex flex-col gap-5 w-full",O)},{children:[s("div",Object.assign({className:"flex flex-col sm:flex-row gap-4 items-start sm:items-center justify-between rounded-lg p-3 bg-opacity-5",style:{backgroundColor:R.secondary}},{children:[s("div",Object.assign({className:"flex gap-3 items-start"},{children:[o(p,{className:g("h-5 w-5 shrink-0 mt-0.5",S),style:{color:R.accent}}),o(v,{className:g(V.b2,"font-semibold leading-relaxed text-sm",U),style:{color:R.text},html:D.limitMessage||""})]})),ae&&o(f,Object.assign({variant:"primary",className:"whitespace-nowrap min-h-[32px] w-full sm:w-auto text-sm",onClick:()=>e(void 0,void 0,void 0,(function*(){window.open(ae,"_blank","noopener,noreferrer")}))},{children:ce}))]})),de&&s("div",Object.assign({className:"flex flex-col gap-2"},{children:[o("h3",Object.assign({className:"text-xs font-bold opacity-70 uppercase px-1",style:{color:R.text}},{children:(null==F?void 0:F["available-plans"])||"Available Plans"})),o(y,Object.assign({contentClassName:"gap-3 pb-4 pt-1",edgeColor:R.primary},{children:null===(P=D.upgradeGroups)||void 0===P?void 0:P.map(((e,s)=>o(h,{data:e},e.accessGroupId||s)))}))]})),te&&re&&s("div",Object.assign({className:"flex flex-col gap-3"},{children:[s("h3",Object.assign({className:"text-xs font-bold opacity-70 uppercase px-1",style:{color:R.text}},{children:[(null==F?void 0:F.buy)||"Buy"," ",ee?(null==F?void 0:F.credits)||"Credits":(null==F?void 0:F.uses)||"Uses"]})),o("div",Object.assign({className:"flex flex-row gap-3 overflow-x-auto pb-2 pt-1 snap-x scrollbar-thin"},{children:ie.map(((e,s)=>o(C,{price:N(e),uses:w(e,ee),isCredits:ee,costPerRun:Q||void 0,isSelected:s===J,onClick:()=>K(s),colors:R,currencySymbol:oe},s)))})),s(f,Object.assign({variant:"primary",className:"w-full py-3 text-sm font-bold shadow-md",onClick:()=>e(void 0,void 0,void 0,(function*(){if(H){var o,s;o=le,s=ne,e(void 0,void 0,void 0,(function*(){try{const e=yield b.post("/billing/extra_usage_payment_link",{data:{sender:T||void 0,studioSessionToken:H,studioId:null==G?void 0:G.studioid,cost:s,isEmbed:d(),extraUses:o,successUrl:document.URL}}),{success:i,url:t,clientSecret:r,stripeAccountId:l,error:n}=e.data;i?d()?r&&l?(z(l),$(r),M("stripe_checkout")):t&&window.open(t,"_blank"):t&&(window.location.href=t):alert(n)}catch(e){alert(e)}}))}else{const e=D.limitLink||ae;if(d())q(e||null),M("login_required");else{const o=u({baseUrl:e,redirectUrl:document.URL});o&&(window.location.href=o)}}}))},{children:[(null==F?void 0:F.buy)||"Buy"," ",le.toLocaleString()," ",ee?(null==F?void 0:F.credits)||"Credits":(null==F?void 0:F.uses)||"Uses"," ","for ",oe,ne]}))]}))]}))}):null};export{O as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__awaiter as e}from"../../_virtual/_tslib.js";import"../../node_modules/.pnpm/regenerator-runtime@0.14.1/node_modules/regenerator-runtime/runtime.js";import i,{useSpeechRecognition as t}from"react-speech-recognition";import{useState as o}from"react";import{pickaxeApi2 as r}from"../../common/api/pickaxe.js";const n=()=>{const{transcript:n,listening:s,resetTranscript:c}=t(),[a,p]=o(!1),[l,d]=o(!1);return{speechTranscript:n,isSpeechSupported:!0,isSpeechProcessing:a,isSpeechListening:s,onStartListening:t=>e(void 0,void 0,void 0,(function*(){try{p(!0),yield navigator.mediaDevices.getUserMedia({audio:!0});const e=(yield r.post("/speech")).data;if(!l){const{createSpeechServicesPonyfill:t}=yield import("web-speech-cognitive-services"),{SpeechRecognition:o}=t({credentials:{region:"eastus",authorizationToken:e.token}});i.applyPolyfill(o),d(!0)}c();const o={ar:"ar-SA",ca:"ca-ES",cs:"cs-CZ",da:"da-DK",de:"de-DE",en:"en-US",es:"es-ES",fi:"fi-FI",fr:"fr-FR",hi:"hi-IN",it:"it-IT",iw:"he-IL",ja:"ja-JP",ko:"ko-KR",nb:"nb-NO",nl:"nl-NL",pl:"pl-PL",pt:"pt-PT","pt-BR":"pt-BR",ro:"ro-RO",ru:"ru-RU",sv:"sv-SE",th:"th-TH",tr:"tr-TR",vi:"vi-VN",zh:"zh-CN",zu:"zu-ZA"};yield i.startListening({continuous:!0,interimResults:!0,language:o[t]||"en-US"})}catch(e){console.error(e)}finally{p(!1)}})),onStopListening:()=>e(void 0,void 0,void 0,(function*(){try{p(!0),yield i.abortListening()}catch(e){console.error(e)}finally{p(!1)}}))}};export{n as
|
|
1
|
+
import{__awaiter as e}from"../../_virtual/_tslib.js";import"../../node_modules/.pnpm/regenerator-runtime@0.14.1/node_modules/regenerator-runtime/runtime.js";import i,{useSpeechRecognition as t}from"react-speech-recognition";import{useState as o}from"react";import{pickaxeApi2 as r}from"../../common/api/pickaxe.js";const n=()=>{const{transcript:n,listening:s,resetTranscript:c}=t(),[a,p]=o(!1),[l,d]=o(!1);return{speechTranscript:n,isSpeechSupported:!0,isSpeechProcessing:a,isSpeechListening:s,onStartListening:t=>e(void 0,void 0,void 0,(function*(){try{p(!0),yield navigator.mediaDevices.getUserMedia({audio:!0});const e=(yield r.post("/speech")).data;if(!l){const{createSpeechServicesPonyfill:t}=yield import("web-speech-cognitive-services"),{SpeechRecognition:o}=t({credentials:{region:"eastus",authorizationToken:e.token}});i.applyPolyfill(o),d(!0)}c();const o={ar:"ar-SA",ca:"ca-ES",cs:"cs-CZ",da:"da-DK",de:"de-DE",en:"en-US",es:"es-ES",fi:"fi-FI",fr:"fr-FR",hi:"hi-IN",it:"it-IT",iw:"he-IL",ja:"ja-JP",ko:"ko-KR",nb:"nb-NO",nl:"nl-NL",pl:"pl-PL",pt:"pt-PT","pt-BR":"pt-BR",ro:"ro-RO",ru:"ru-RU",sv:"sv-SE",th:"th-TH",tr:"tr-TR",vi:"vi-VN",zh:"zh-CN",zu:"zu-ZA"};yield i.startListening({continuous:!0,interimResults:!0,language:o[t]||"en-US"})}catch(e){console.error(e)}finally{p(!1)}})),onStopListening:()=>e(void 0,void 0,void 0,(function*(){try{p(!0),yield i.abortListening()}catch(e){console.error(e)}finally{p(!1)}}))}};export{n as useSpeechToText};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{__awaiter as e}from"../../_virtual/_tslib.js";import{pickaxeApi2 as n}from"../../common/api/pickaxe.js";import{useState as t,useRef as r,useEffect as o,useCallback as s}from"react";const i={ar:"ar-SA",ca:"ca-ES",cs:"cs-CZ",da:"da-DK",de:"de-DE",en:"en-US",es:"es-ES",fi:"fi-FI",fr:"fr-FR",he:"he-IL",hi:"hi-IN",it:"it-IT",ja:"ja-JP",ko:"ko-KR",nb:"nb-NO",nl:"nl-NL",pl:"pl-PL",pt:"pt-PT",ro:"ro-RO",ru:"ru-RU",sv:"sv-SE",th:"th-TH",tr:"tr-TR",vi:"vi-VN",zh:"zh-CN",zu:"zu-ZA"};let l=null;const c=new Map,a=e=>e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'"),u=({text:t,language:r,browserVoices:o=[],onLoading:s,onPlay:u,onEnd:p})=>{var h;null==l||l.cancel(),null===(h=window.speechSynthesis)||void 0===h||h.cancel();let d=null,w=null,g=!1,v=!1,f=!1;const S=()=>{v||(v=!0,null==d||d.close(),d=null,l===y&&(l=null),p())},m=()=>{g||v||u()},y={cancel:()=>{var e;g||v||(g=!0,null==w||w.close(),w=null,null==d||d.pause(),null==d||d.close(),d=null,null===(e=window.speechSynthesis)||void 0===e||e.cancel(),S())}};l=y,s();return e(void 0,void 0,void 0,(function*(){var e;try{const[{data:o},s]=yield Promise.all([n.post("/speech"),import("microsoft-cognitiveservices-speech-sdk")]);if(!o.success||!o.token)throw new Error(o.error||"Azure Speech token was not returned");if(g||v)return;const l=(e=>{if(!e)return"en-US";const n=e.toLowerCase();return"pt-br"===n?"pt-BR":i[n.split("-")[0]]||e})(r),u=s.SpeechConfig.fromAuthorizationToken(o.token,"eastus");u.speechSynthesisLanguage=l,u.speechSynthesisOutputFormat=s.SpeechSynthesisOutputFormat.Audio24Khz48KBitRateMonoMp3;const p=new s.SpeakerAudioDestination;p.onAudioStart=()=>{const e=p.internalAudio;e?e.addEventListener("playing",m,{once:!0}):m()},p.onAudioEnd=S,d=p;const h=s.AudioConfig.fromSpeakerOutput(p),f=new s.SpeechSynthesizer(u,h);w=f;let y=c.get(l);if(!y){const n=yield f.getVoicesAsync(l);if(g||v)return;if(y=null===(e=n.voices.find((e=>e.locale===l)))||void 0===e?void 0:e.shortName,!y)throw new Error(`No Azure voice is available for ${l}`);c.set(l,y)}const k=y,A=yield new Promise(((e,n)=>{const r=`<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="${l}"><voice name="${a(k)}"><break time="500ms"/>${a(t)}</voice></speak>`;f.speakSsmlAsync(r,e,n)}));if(f.close(),w=null,g||v)return;if(A.reason!==s.ResultReason.SynthesizingAudioCompleted)throw new Error(A.errorDetails||"Azure speech synthesis failed")}catch(e){if(null==w||w.close(),w=null,null==d||d.close(),d=null,g||v)return;console.warn("Azure text-to-speech failed; using browser speech",e),(()=>{if(g||v||f)return;if(f=!0,!("speechSynthesis"in window)||!("SpeechSynthesisUtterance"in window))return void S();const e=new SpeechSynthesisUtterance(t),n=r||"en",s=o.find((e=>e.lang.startsWith(n)&&e.name.includes("Google")))||o.find((e=>e.lang.startsWith(n)));s?(e.voice=s,e.lang=s.lang):e.lang=n,e.onstart=m,e.onend=S,e.onerror=S,window.speechSynthesis.speak(e)})()}})),y},p=(e=!0)=>{const[n,i]=t(!1),[l,c]=t(!1),[a,p]=t([]),h=r(null),d=r(!0);o((()=>(d.current=!0,()=>{var e;d.current=!1,null===(e=h.current)||void 0===e||e.cancel(),h.current=null})),[]),o((()=>{if(!e||!("speechSynthesis"in window))return;const n=()=>{const e=window.speechSynthesis.getVoices();e.length>0&&p(e)};return n(),window.speechSynthesis.addEventListener("voiceschanged",n),()=>{window.speechSynthesis.removeEventListener("voiceschanged",n)}}),[e]);const w=s((()=>{var e;null===(e=h.current)||void 0===e||e.cancel(),h.current=null}),[]);return{isLoading:n,isSpeaking:l,speak:s(((e,n)=>{if(!e)return;const t=u({text:e,language:n,browserVoices:a,onLoading:()=>{d.current&&(i(!0),c(!1))},onPlay:()=>{d.current&&(i(!1),c(!0))},onEnd:()=>{h.current===t&&(h.current=null),d.current&&(i(!1),c(!1))}});h.current=t}),[a]),stop:w}};export{p as useTextToSpeech};
|
|
@@ -5,9 +5,10 @@ interface PickaxeMessageActionsProps {
|
|
|
5
5
|
messagesCount?: number;
|
|
6
6
|
isHideFeedback?: boolean;
|
|
7
7
|
isReadOut: boolean;
|
|
8
|
+
isReadOutLoading?: boolean;
|
|
8
9
|
isReading?: boolean;
|
|
9
10
|
onOpenChat?: () => void;
|
|
10
11
|
onReadOut?: () => void;
|
|
11
12
|
}
|
|
12
|
-
declare const PickaxeMessageActions: ({ content, sessionId, index, messagesCount, isHideFeedback, isReadOut, isReading, onOpenChat, onReadOut, }: PickaxeMessageActionsProps) => import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
declare const PickaxeMessageActions: ({ content, sessionId, index, messagesCount, isHideFeedback, isReadOut, isReadOutLoading, isReading, onOpenChat, onReadOut, }: PickaxeMessageActionsProps) => import("react/jsx-runtime").JSX.Element;
|
|
13
14
|
export default PickaxeMessageActions;
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../_virtual/_tslib.js");require("../../node_modules/.pnpm/regenerator-runtime@0.14.1/node_modules/regenerator-runtime/runtime.js");var t=require("react-speech-recognition"),r=require("react"),i=require("../../common/api/pickaxe.js");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function o(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var i=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,i.get?i:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var s=n(t);exports.useSpeech=()=>{const{transcript:n,listening:a,resetTranscript:c}=t.useSpeechRecognition(),[u,l]=r.useState(!1),[p,d]=r.useState(!1);return{speechTranscript:n,isSpeechSupported:!0,isSpeechProcessing:u,isSpeechListening:a,onStartListening:t=>e.__awaiter(void 0,void 0,void 0,(function*(){try{l(!0),yield navigator.mediaDevices.getUserMedia({audio:!0});const e=(yield i.pickaxeApi2.post("/speech")).data;if(!p){const{createSpeechServicesPonyfill:t}=yield Promise.resolve().then((function(){return o(require("web-speech-cognitive-services"))})),{SpeechRecognition:r}=t({credentials:{region:"eastus",authorizationToken:e.token}});s.default.applyPolyfill(r),d(!0)}c();const r={ar:"ar-SA",ca:"ca-ES",cs:"cs-CZ",da:"da-DK",de:"de-DE",en:"en-US",es:"es-ES",fi:"fi-FI",fr:"fr-FR",hi:"hi-IN",it:"it-IT",iw:"he-IL",ja:"ja-JP",ko:"ko-KR",nb:"nb-NO",nl:"nl-NL",pl:"pl-PL",pt:"pt-PT","pt-BR":"pt-BR",ro:"ro-RO",ru:"ru-RU",sv:"sv-SE",th:"th-TH",tr:"tr-TR",vi:"vi-VN",zh:"zh-CN",zu:"zu-ZA"};yield s.default.startListening({continuous:!0,interimResults:!0,language:r[t]||"en-US"})}catch(e){console.error(e)}finally{l(!1)}})),onStopListening:()=>e.__awaiter(void 0,void 0,void 0,(function*(){try{l(!0),yield s.default.abortListening()}catch(e){console.error(e)}finally{l(!1)}}))}};
|