@pickaxeproject/react 3.15.1 → 3.17.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/common/documents.js +1 -1
- package/dist/cjs/components/Pickaxe/Addons/Document/hooks/useDocument.js +1 -1
- 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/common/PickaxeFeedbackThumbsDownReasons.js +1 -1
- package/dist/cjs/components/Pickaxe/common/PickaxeMessageActions.js +1 -1
- package/dist/cjs/hooks/pickaxe/useThumbSelection.js +1 -1
- package/dist/cjs/src/components/Pickaxe/common/PickaxeFeedbackThumbsDownReasons.d.ts +3 -1
- package/dist/cjs/src/hooks/pickaxe/useThumbSelection.d.ts +6 -1
- package/dist/cjs/src/types/pickaxe.d.ts +1 -1
- package/dist/esm/common/documents.js +1 -1
- package/dist/esm/components/Pickaxe/Addons/Document/hooks/useDocument.js +1 -1
- 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/common/PickaxeFeedbackThumbsDownReasons.js +1 -1
- package/dist/esm/components/Pickaxe/common/PickaxeMessageActions.js +1 -1
- package/dist/esm/hooks/pickaxe/useThumbSelection.js +1 -1
- package/dist/esm/src/components/Pickaxe/common/PickaxeFeedbackThumbsDownReasons.d.ts +3 -1
- package/dist/esm/src/hooks/pickaxe/useThumbSelection.d.ts +6 -1
- package/dist/esm/src/types/pickaxe.d.ts +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.additionalAllowedFileExtensions=[".md"],exports.allowedFileMimeTypes=["application/pdf","text/plain","application/vnd.openxmlformats-officedocument.wordprocessingml.document","text/csv","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/json","application/vnd.openxmlformats-officedocument.presentationml.presentation"],exports.allowedImageMimeTypes=["image/png","image/jpeg","image/webp","image/gif"];
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.additionalAllowedFileExtensions=[".md"],exports.allowedFileMimeTypes=["application/pdf","text/plain","application/vnd.openxmlformats-officedocument.wordprocessingml.document","text/csv","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/json","application/vnd.openxmlformats-officedocument.presentationml.presentation","text/markdown","application/xml","text/xml"],exports.allowedImageMimeTypes=["image/png","image/jpeg","image/webp","image/gif"];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../../_virtual/_tslib.js"),t=require("react"),s=require("../../../../../hooks/pickaxe/usePickaxeContext.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../../_virtual/_tslib.js"),t=require("react"),s=require("../../../../../hooks/pickaxe/usePickaxeContext.js"),o=require("../../Auth/hooks/useAuthContext.js"),i=require("../../../../../hooks/pickaxe/useSubmitDocument.js"),n=require("./useDocumentContext.js"),r=require("../../../../../common/documents.js"),a=require("uuid"),u=require("../../../../../common/error.js");const d=["gpt-4o","gpt-4o-mini","gpt-4.1","gpt-4.1-mini","gpt-4.1-nano","gpt-5","gpt-5-mini","gpt-5-nano","gpt-5-chat-latest","o1","o4-mini","o3","gemini-2.0-flash","gemini-2.0-flash-lite","gemini-2.5-pro-preview-05-06","gemini-2.5-flash-preview-05-20","claude-3-7-sonnet-20250219","claude-sonnet-4-20250514","claude-opus-4-20250514","claude-opus-4-1-20250805","grok-4-latest","grok-4-fast-non-reasoning-latest","grok-4-fast-reasoning-latest","sonar","sonar-pro","sonar-reasoning","sonar-reasoning-pro"];exports.useDocument=({onQuestionChange:l}={})=>{const{formId:c,chatId:p,sessionId:m,pickaxe:g,studioUserId:f}=s.usePickaxeContext(),{token:w}=o.useAuthContext(),h=n.useDocumentContext(),I=i.useSubmitDocument(),b=t.useMemo((()=>{var e;return d.includes(null!==(e=null==g?void 0:g.model)&&void 0!==e?e:"gpt-3.5-turbo")}),[g]),v=e=>{const t=[...r.allowedFileMimeTypes,...b?r.allowedImageMimeTypes:[]];if(e.some((e=>{var s;if(console.log(e.type),t.includes(e.type))return!1;if(""===e.type){const t=null===(s=e.name.split(".").pop())||void 0===s?void 0:s.toLowerCase();if(t&&r.additionalAllowedFileExtensions.includes(`.${t}`))return!1}return!0}))){const e=new Error(b?"You can only upload PDF, TXT, DOCX, CSV, XLSX, JSON, PPTX, MD, XML, PNG, JPEG, WEBP, or GIF files. Please try again.":"You can only upload PDF, TXT, DOCX, CSV, XLSX, JSON, PPTX, MD, or XML files. Please try again."),t=u.default(e);return h.setDocumentError(t),!0}return!1};return Object.assign(Object.assign({},h),{isImageUploadAllowed:b,onFileUpload:t=>e.__awaiter(void 0,void 0,void 0,(function*(){if(h.setDocumentError(""),!t.length)return null;if(v(t))return null;h.setIsUploading(!0),h.setIsShowList(!0);const s=t.map((e=>({file:e,id:a.v4()})));s.forEach((({file:e,id:t})=>{h.addDocument({type:"document",id:t,size:e.size,name:e.name,status:"uploading"})}));const o=s.map((({file:t,id:s})=>e.__awaiter(void 0,void 0,void 0,(function*(){try{const{success:e,documentId:o,error:i}=yield I.document(Object.assign(Object.assign(Object.assign({formId:c,responseId:p,file:t,sessionId:m},(null==g?void 0:g.workspaceid)&&{workspaceId:g.workspaceid}),f&&{studioUserId:f}),w&&{studioSessionToken:w}));if(!e)throw new Error(null!=i?i:"Document processing failed");null==l||l({input:t.name,documentId:o});const n=o.startsWith("IMAGE-");return h.editDocument({id:s,type:n?"image":"document",name:t.name,size:t.size,status:"finished",documentId:o}),{name:t.name,documentId:o}}catch(e){const o=u.default(e);return h.editDocument({id:s,name:t.name,size:t.size,status:"failed",error:o}),{error:o}}}))));yield Promise.allSettled(o),h.setIsUploading(!1)})),onWebsiteUpload:t=>e.__awaiter(void 0,void 0,void 0,(function*(){h.setDocumentError("");let e=t.trim();if(!e)return null;e.startsWith("http://")&&(e=e.replace("http://","https://")),e.startsWith("https://")||(e=`https://${e}`);try{if(!e.includes("."))throw new Error("Please paste a valid website URL or Youtube video link to add to the knowledge base.");h.setIsUploading(!0),h.setIsShowList(!0),h.setWebsiteLink(""),h.setDocuments([{type:"website",id:e,size:0,name:e,status:"uploading"}]);const t=yield I.website(Object.assign(Object.assign(Object.assign({formId:c,responseId:p,website:e},(null==g?void 0:g.workspaceid)&&{workspaceId:g.workspaceid}),f&&{studioUserId:f}),w&&{studioSessionToken:w})),{success:s,documentId:o}=t;if(!s)throw new Error("Website processing failed, please try again.");h.setDocuments([{type:"website",id:e,size:0,name:e,status:"finished",documentId:o}]);return{type:"website",id:e,name:e,size:0,status:"finished",documentId:o}}catch(t){const s=u.default(t);if(console.log("[onWebsiteUpload] Error",s),s.includes("Please paste a valid website URL"))return h.setDocumentError(s),null;h.editDocument({type:"website",id:e,size:0,name:e,status:"failed",error:s});return{type:"website",id:e,size:0,name:e,status:"failed",error:s}}finally{h.setIsUploading(!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"),a=require("../../../../hooks/studio/useStyleFontSize.js"),i=require("../../Addons/Artifact/hooks/useArtifact.js"),l=require("../../common/PickaxeMarkdown/index.js"),r=require("../../common/PickaxeMarkdown/Renderer.js"),c=require("../../common/PickaxeIcon.js"),o=require("./Document.js"),n=require("../../../../common/cn.js"),d=require("../../common/PickaxeMessageActions.js");exports.default=({index:x,message:u})=>{var m;const{formId:j,pickaxe:f,styles:p,colors:h,misc:b,responsiveBy:g,disableHtml:k,disableJs:w,disableCss:v,isNewChat:y,isRtl:N}=t.usePickaxeContext(),{onLoadArtifact:O}=i.useArtifact(),q=a.useStyleFontSize(),A=null!==(m=null==f?void 0:f.chaticon)&&void 0!==m?m:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/chaticons/${j}.png`;return"assistant"===u.role?e.jsx("div",Object.assign({className:n.default("flex w-full",N?"justify-end":"justify-start")},{children:e.jsx("div",Object.assign({className:n.default("flex flex-col w-full",0===x&&y&&"viewport"===g&&"min-[767px]:max-w-[80%]",0===x&&y&&"container"===g&&"@[767px]/pickaxe-root:max-w-[80%]")},{children:e.jsxs("div",Object.assign({className:n.default("flex gap-x-3",N&&"flex-row-reverse")},{children:[b.isChatImage&&"NONE"!==A&&e.jsx(c.default,{src:A,alt:"Assistant",width:24,height:24,className:"my-3 h-6 w-6",textColor:h.text}),e.jsxs("div",Object.assign({className:n.default("flex flex-col flex-grow",N?"items-end":"items-start")},{children:[e.jsx("div",Object.assign({className:n.default(q.b2,"chat-message pt-3 w-full",N?"text-right":"text-left")},{children:e.jsx(l.PickaxeMarkdown,Object.assign({theme:p.theme,colors:h,actions:!0},N&&{rtl:!0},k&&{disableHtml:!0},w&&{disableJs:!0},v&&{disableCss:!0},{onArtifactClick:O},{children:e.jsx(r.PickaxeMarkdownRenderer,{value:u.content})}))})),e.jsx("div",Object.assign({className:"pt-3"},{children:e.jsx(d.default,Object.assign({content:u.content,index:x},"intromessage"===u.area&&{isHideFeedback:!0}))}))]}))]}))}))})):"user"===u.role?e.jsx("div",Object.assign({className:n.default("flex w-full",N?"justify-start":"justify-end")},{children:e.jsx("div",Object.assign({className:n.default("flex gap-x-3 max-w-[80%]",N?"pr-9":"pl-9","viewport"===g?N?"min-[767px]:pr-0":"min-[767px]:pl-0":N?"@[767px]/pickaxe-root:pr-0":"@[767px]/pickaxe-root:pl-0")},{children:e.jsxs("div",Object.assign({className:n.default(q.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",N?"text-right":"text-left"),style:{backgroundColor:h.secondary+"80",color:h.secondaryText,borderRadius:p.cornerRadius}},{children:[u.documentIds&&u.documentIds.length>0&&e.jsx("div",Object.assign({className:n.default("flex flex-col gap-y-2",N?"items-start":"items-end")},{children:u.documentIds.map((t=>e.jsx(s.Fragment,{children:t.startsWith("IMAGE-")?e.jsx("div",Object.assign({className:"max-w-[300px]"},{children:e.jsx("img",{style:{borderRadius:p.cornerRadius},className:"object-cover w-full h-full",src:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/documentinterrogation/${t.split("-")[2]}/${t.split("-")[1]}.${null==t?void 0:t.split("-")[2]}`,alt:""})})):e.jsx(o.default,{documentId:t})},t)))})),e.jsx(l.PickaxeMarkdown,Object.assign({theme:p.theme,colors:h},N&&{rtl:!0},k&&{disableHtml:!0},w&&{disableJs:!0},v&&{disableCss:!0},{children:e.jsx(r.PickaxeMarkdownRenderer,{value:u.content})}))]}))}))})):e.jsx("div",{})};
|
|
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("../../Addons/Artifact/hooks/useArtifact.js"),l=require("../../common/PickaxeMarkdown/index.js"),r=require("../../common/PickaxeMarkdown/Renderer.js"),c=require("../../common/PickaxeIcon.js"),o=require("./Document.js"),n=require("../../../../common/cn.js"),d=require("../../common/PickaxeMessageActions.js");exports.default=({index:x,message:u})=>{var m;const{formId:j,pickaxe:f,styles:p,colors:h,misc:b,responsiveBy:g,disableHtml:k,disableJs:w,disableCss:v,isNewChat:y,isRtl:N}=t.usePickaxeContext(),{onLoadArtifact:O}=i.useArtifact(),q=a.useStyleFontSize(),A=null!==(m=null==f?void 0:f.chaticon)&&void 0!==m?m:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/chaticons/${j}.png`;return"assistant"===u.role?e.jsx("div",Object.assign({className:n.default("flex w-full",N?"justify-end":"justify-start")},{children:e.jsx("div",Object.assign({className:n.default("flex flex-col w-full",0===x&&y&&"viewport"===g&&"min-[767px]:max-w-[80%]",0===x&&y&&"container"===g&&"@[767px]/pickaxe-root:max-w-[80%]")},{children:e.jsxs("div",Object.assign({className:n.default("flex gap-x-3",N&&"flex-row-reverse")},{children:[b.isChatImage&&"NONE"!==A&&e.jsx(c.default,{src:A,alt:"Assistant",width:24,height:24,className:"my-3 h-6 w-6",textColor:h.text}),e.jsxs("div",Object.assign({className:n.default("flex flex-col flex-grow",N?"items-end":"items-start")},{children:[e.jsx("div",Object.assign({className:n.default(q.b2,"chat-message pt-3 w-full",N?"text-right":"text-left")},{children:e.jsx(l.PickaxeMarkdown,Object.assign({theme:p.theme,colors:h,actions:!0},N&&{rtl:!0},k&&{disableHtml:!0},w&&{disableJs:!0},v&&{disableCss:!0},{onArtifactClick:O},{children:e.jsx(r.PickaxeMarkdownRenderer,{value:u.content})}))})),e.jsx("div",Object.assign({className:"pt-3 w-3/4"},{children:e.jsx(d.default,Object.assign({content:u.content,index:x},"intromessage"===u.area&&{isHideFeedback:!0}))}))]}))]}))}))})):"user"===u.role?e.jsx("div",Object.assign({className:n.default("flex w-full",N?"justify-start":"justify-end")},{children:e.jsx("div",Object.assign({className:n.default("flex gap-x-3 max-w-[80%]",N?"pr-9":"pl-9","viewport"===g?N?"min-[767px]:pr-0":"min-[767px]:pl-0":N?"@[767px]/pickaxe-root:pr-0":"@[767px]/pickaxe-root:pl-0")},{children:e.jsxs("div",Object.assign({className:n.default(q.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",N?"text-right":"text-left"),style:{backgroundColor:h.secondary+"80",color:h.secondaryText,borderRadius:p.cornerRadius}},{children:[u.documentIds&&u.documentIds.length>0&&e.jsx("div",Object.assign({className:n.default("flex flex-col gap-y-2",N?"items-start":"items-end")},{children:u.documentIds.map((t=>e.jsx(s.Fragment,{children:t.startsWith("IMAGE-")?e.jsx("div",Object.assign({className:"max-w-[300px]"},{children:e.jsx("img",{style:{borderRadius:p.cornerRadius},className:"object-cover w-full h-full",src:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/documentinterrogation/${t.split("-")[2]}/${t.split("-")[1]}.${null==t?void 0:t.split("-")[2]}`,alt:""})})):e.jsx(o.default,{documentId:t})},t)))})),e.jsx(l.PickaxeMarkdown,Object.assign({theme:p.theme,colors:h},N&&{rtl:!0},k&&{disableHtml:!0},w&&{disableJs:!0},v&&{disableCss:!0},{children:e.jsx(r.PickaxeMarkdownRenderer,{value:u.content})}))]}))}))})):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("../Addons/Auth/hooks/useAuthContext.js"),c=require("../../../hooks/pickaxe/useSubmit.js"),u=require("../Addons/Document/hooks/useDocument.js"),d=require("../Addons/Scroll/hooks/useScroll.js"),f=require("../Addons/Artifact/hooks/useArtifactContext.js"),m=require("../../../hooks/pickaxe/useSpeechRecognition.js"),h=require("../../../hooks/core/useHover.js"),g=require("../../../common/documents.js"),v=require("eventsource-parser"),p=require("../../Icons/attach-vertical.svg.js"),j=require("../../Icons/arrow-right.svg.js"),x=require("../../Icons/microphone.svg.js"),b=require("../../Icons/stop.svg.js"),y=require("../Addons/Document/List.js"),k=require("../../Core/Textarea.js"),w=require("../../Core/ErrorAlert.js"),O=require("../../../common/error.js"),I=require("../../../common/cn.js");const S=({colors:e})=>{var s;return t.jsxs("div",Object.assign({className:"absolute left-4 top-1/2 flex -translate-y-1/2 items-center gap-x-2"},{children:[t.jsx("span",{className:"h-2 w-2 animate-pulse rounded-full",style:{backgroundColor:null!==(s=e.accent)&&void 0!==s?s:"#ff0000"}}),t.jsx("span",Object.assign({className:"text-sm",style:{color:e.text+"90"}},{children:"Listening..."}))]}))},N=s.forwardRef((({onFocus:N,onBlur:C,onInputHeightChange:q},A)=>{var _,E,H;const{formId:T,chatId:D,userId:L,studioUserId:R,embedUserId:F,deploymentId:M,deploymentType:W,pickaxe:U,styles:B,colors:J,isNewChat:P,isRtl:$,studioLang:G,isEmailLogin:z,isShowFeedbackMessage:K,setIsNewChat:Q,setIsShowIceBreaker:V,onGenerateComplete:X}=n.usePickaxeContext(),{token:Y,isLoggedOut:Z,isSent:ee}=l.useAuthContext(),{messages:te,status:se,limits:ne,isGenerating:ie,setMessages:re,setStatus:oe,setLimitData:ae,setError:le}=i.useResponseContext(),{documents:ce,isUploading:ue,isImageUploadAllowed:de,documentError:fe,onFileUpload:me,setDocuments:he,setDocumentError:ge}=u.useDocument(),{scrollStartSession:ve,scrollEndSession:pe,scrollToBottom:je}=d.useScroll({auto:!0}),{artifacts:xe,currentPopupType:be,setArtifacts:ye,setCurrentArtifact:ke}=f.useArtifactContext(),we=a.useConversation(),Oe=c.useSubmit(),[Ie,Se]=s.useState(""),Ne=s.useRef(null),{isSupported:Ce,isListening:qe,finalTranscript:Ae,interimTranscript:_e,startListening:Ee,stopListening:He}=m.useSpeechRecognition({lang:G||"en"}),Te=s.useRef(""),De=h.useHover(),{isHover:Le}=De,Re=e.__rest(De,["isHover"]),Fe=h.useHover(),{isHover:Me}=Fe,We=e.__rest(Fe,["isHover"]),Ue=h.useHover(),{isHover:Be}=Ue,Je=e.__rest(Ue,["isHover"]),Pe=h.useHover(),{isHover:$e}=Pe,Ge=e.__rest(Pe,["isHover"]),ze=o.useStyleFontSize(),Ke=r.useStyleInput(),Qe="chat-input"===W&&P&&!ee,Ve="chat-input"===W&&z&&Z&&ee,Xe=s.useMemo((()=>{var e,t,s;return!!P&&(!!U&&(!we.isLoading&&(!((null!==(t=null===(e=we.data)||void 0===e?void 0:e.messages.length)&&void 0!==t?t:0)>1)&&(!!(null===(s=U.icebreakers)||void 0===s?void 0:s.length)&&(!K&&!Qe)))))}),[U,P,K,Qe,we.data,we.isLoading]),Ye=s.useMemo((()=>{if(ie||ue)return!1;const e=ce.length>0&&ce.every((e=>{var t;return"finished"===e.status&&(null===(t=e.documentId)||void 0===t?void 0:t.startsWith("IMAGE-"))}));return!(!Ie.trim()&&!e)&&ce.every((e=>"finished"===e.status||e.isInsertedAsRaw))}),[ie,ue,Ie,ce]);s.useEffect((()=>{V(Xe)}),[Xe]),s.useEffect((()=>{if(!qe)return;const e=`${Te.current} ${Ae} ${_e}`.trim();Se(e)}),[Ae,_e,qe]),s.useEffect((()=>{!qe&&Te.current&&(Se(`${Te.current} ${Ae}`.trim()),Te.current="")}),[qe,Ae]);const Ze=t=>e.__awaiter(void 0,void 0,void 0,(function*(){var e,s;try{if("idle"!==se||ue||qe)return;const n=ce.filter((e=>"finished"===e.status&&!e.isInsertedAsRaw)).map((e=>e.documentId)).filter(Boolean),i=n.length>0&&n.every((e=>e.startsWith("IMAGE-"))),r=null!=t?t:Ie;if(!r&&!i)return;le(""),ge(""),ae(null),Se(""),Q(!1),oe("fetching"),ve(),je();const o=null!==(s=null===(e=null==U?void 0:U.documentuploadtype)||void 0===e?void 0:e.startsWith("enduserupload"))&&void 0!==s&&s&&n.length>0,a=[...Array.from(te),Object.assign({id:te.length+1,role:"user",content:r},o&&{documentIds:n})];re(a),je(),o&&he([]);const l=(yield Oe.mutateAsync(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({formId:T,responseId:D,value:r},o&&{documentIds:n}),L&&{userId:L}),R&&{studioUserId:R}),F&&{embedUserId:F}),Y&&{studioSessionToken:Y}),M&&{deploymentId:M}))).body;if(!l)throw new Error("Streaming error");const c=a.length,u=new TextDecoder,d=l.getReader();let f="",m=!0,h=!1,g=[...null!=xe?xe:[]];const p=v.createParser({onEvent:e=>{if("delta"===e.event){const t=JSON.parse(e.data).token.replace(/\u200B/g,"");f+=t,re([...a.slice(0,c),{id:te.length+1,role:"assistant",content:f}])}else if("artifact_created"===e.event){const t=JSON.parse(e.data);g=g.filter((e=>!(e.id===t.id&&e.version===t.version))),g.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),ye(g),be.startsWith("inline")||ke({id:t.id,version:t.version})}else if("artifact_updated"===e.event){const t=JSON.parse(e.data);g=g.filter((e=>!(e.id===t.id&&e.version===t.version))),g.push(Object.assign(Object.assign({},t),{content:"",status:"updating"})),ye(g),be.startsWith("inline")||ke({id:t.id,version:t.version})}else if("artifact_rewrite"===e.event){const t=JSON.parse(e.data);g=g.filter((e=>!(e.id===t.id&&e.version===t.version))),g.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),ye(g),be.startsWith("inline")||ke({id:t.id,version:t.version})}else if("artifact_content"===e.event){const t=JSON.parse(e.data),s=t.token.replace(/\u200B/g,"");g=g.map((e=>e.id===t.id&&e.version===t.version?Object.assign(Object.assign({},e),{content:e.content+s,status:"streaming"}):e)),ye(g)}else if("artifact_finished"===e.event){const t=JSON.parse(e.data);ye(g.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);le(t.error||"Something went wrong, please try again.")}else"stop"===e.event&&(m=!1)}});for(;m;){const{value:e,done:t}=yield d.read();if(t){m=!1;break}const s=u.decode(e);s&&(h||(oe("streaming"),h=!0),p.feed(s))}null==X||X(D)}catch(e){let t=O.default(e)||"";t&&!t.includes("Unexpected token 'A',")||(t="Oops! We're experiencing high traffic at the moment. Please try again later.");const s=Object.entries(ne).find((([e])=>t.includes(e)));s?ae(s[1]):le(t)}finally{je(),oe("idle"),pe()}}));return s.useImperativeHandle(A,(()=>({onSubmit:Ze}))),Ve?null:t.jsx("div",Object.assign({className:I.default("w-full flex flex-col items-center absolute bottom-0 left-0 z-1",!Qe&&"px-4 pb-4"),dir:$?"rtl":"ltr"},{children:t.jsxs("div",Object.assign({className:"relative flex flex-col max-w-[800px] w-full"},{children:[t.jsxs("div",Object.assign({className:I.default("flex flex-col gap-y-3 px-4 py-3","block"===B.formFieldStyle&&"shadow"),style:Ke},{children:[qe&&t.jsx(S,{colors:J}),"idle"===se&&ce.length>0&&t.jsx(y.default,{isDisabled:"idle"!==se}),t.jsxs("div",Object.assign({className:I.default("flex items-end gap-x-2",$&&"flex-row-reverse")},{children:[t.jsx(k.default,Object.assign({className:I.default(ze.i1,"max-h-60 min-h-[27px] w-full border-transparent bg-transparent",!Ie.length&&"max-h-6 overflow-hidden text-ellipsis whitespace-nowrap",$?"text-right":"text-left",qe&&"text-transparent"),value:Ie,placeholder:null!==(_=null==U?void 0:U.placeholdertext)&&void 0!==_?_:$?"بماذا تريد أن تتحدث؟":"What do you want to talk about?",onChange:e=>{if(Se(e),q){const t=(e.match(/\n/g)||[]).length+1;if(t>=11)return;q(24*(t-1))}},onKeyDown:e=>{"Enter"===e.key&&(e.shiftKey||(e.preventDefault(),ue||"idle"!==se||Ze()))}},N&&{onFocus:N},C&&{onBlur:C},{dir:$?"rtl":"ltr"})),t.jsx("div",Object.assign({className:"flex items-center gap-x-2"},{children:qe?t.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",onClick:He,style:{backgroundColor:$e?J.accent:J.accent+"10",color:$e?J.accentText:J.accent}},Ge,{children:t.jsx(b.default,{className:"h-4 w-4 shrink-0"})})):t.jsxs(t.Fragment,{children:[null!==(H=null===(E=null==U?void 0:U.documentuploadtype)||void 0===E?void 0:E.startsWith("enduserupload"))&&void 0!==H&&H&&t.jsxs("button",Object.assign({className:"outline-none disabled:cursor-default w-8 h-8 flex items-center justify-center rounded-full transition-colors duration-200 ease-in-out",style:{backgroundColor:Me?J.accent+"10":void 0,color:Me?J.accent:J.accent+"80"},disabled:ue||"idle"!==se,onClick:()=>{var e;return null===(e=Ne.current)||void 0===e?void 0:e.click()}},We,{children:[t.jsx("input",{id:"file-upload",ref:Ne,type:"file",accept:[...g.allowedFileMimeTypes,...de?g.allowedImageMimeTypes:[],...g.additionalAllowedFileExtensions].join(", "),multiple:!0,hidden:!0,className:"hidden",onChange:t=>e.__awaiter(void 0,void 0,void 0,(function*(){Q(!1),yield me(Array.from(t.target.files||[])),t.target.value=""}))}),t.jsx(p.default,{className:"h-6 w-6 shrink-0"})]})),Ce&&(null==U?void 0:U.enablevoicetotext)&&t.jsx("button",Object.assign({className:"flex h-8 w-8 items-center \n justify-center rounded-full\n outline-none transition-colors \n duration-200 ease-in-out\n disabled:cursor-default",style:{backgroundColor:qe?J.accent:Be?J.accent+"10":void 0,color:qe?J.accentText:Be?J.accent:J.accent+"80"},disabled:ue||"idle"!==se,onClick:()=>{qe?He():(Te.current=Ie,Ee())}},Je,{children:t.jsx(x.default,{className:"h-5 w-5 shrink-0"})})),t.jsx("button",Object.assign({className:"outline-none disabled:cursor-default w-8 h-8 flex items-center justify-center rounded-full duration-200 transition-colors ease-in-out",style:{backgroundColor:Le||Ye?J.accent:J.accent+"10",color:Le||Ye?J.accentText:J.accent+"80"},disabled:"idle"!==se||ue,onClick:()=>Ze()},Re,{children:t.jsx(j.default,{className:I.default("h-6 w-6 shrink-0",$&&"transform scale-x-[-1]")})}))]})}))]}))]})),fe&&t.jsx(w.default,{error:fe,className:"mt-3"})]}))}))}));N.displayName="Input",exports.default=N;
|
|
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("../Addons/Auth/hooks/useAuthContext.js"),c=require("../../../hooks/pickaxe/useSubmit.js"),u=require("../Addons/Document/hooks/useDocument.js"),d=require("../Addons/Scroll/hooks/useScroll.js"),f=require("../Addons/Artifact/hooks/useArtifactContext.js"),m=require("../../../hooks/pickaxe/useSpeechRecognition.js"),h=require("../../../hooks/core/useHover.js"),g=require("../../../hooks/core/useMediaQuery.js"),v=require("../../../common/documents.js"),p=require("eventsource-parser"),x=require("../../Icons/attach-vertical.svg.js"),j=require("../../Icons/arrow-right.svg.js"),b=require("../../Icons/microphone.svg.js"),y=require("../../Icons/stop.svg.js"),k=require("../Addons/Document/List.js"),w=require("../../Core/Textarea.js"),O=require("../../Core/ErrorAlert.js"),I=require("../../../common/error.js"),S=require("../../../common/cn.js");const N=({colors:e})=>{var s;return t.jsxs("div",Object.assign({className:"absolute left-4 top-1/2 flex -translate-y-1/2 items-center gap-x-2"},{children:[t.jsx("span",{className:"h-2 w-2 animate-pulse rounded-full",style:{backgroundColor:null!==(s=e.accent)&&void 0!==s?s:"#ff0000"}}),t.jsx("span",Object.assign({className:"text-sm",style:{color:e.text+"90"}},{children:"Listening..."}))]}))},C=s.forwardRef((({onFocus:C,onBlur:q,onInputHeightChange:A},_)=>{var E,H,T;const{formId:M,chatId:D,userId:L,studioUserId:R,embedUserId:F,deploymentId:W,deploymentType:U,pickaxe:B,styles:J,colors:P,studioLang:$,forceMobile:G,isNewChat:z,isRtl:K,isEmailLogin:Q,isShowFeedbackMessage:V,setIsNewChat:X,setIsShowIceBreaker:Y,onGenerateComplete:Z}=n.usePickaxeContext(),{token:ee,isLoggedOut:te,isSent:se}=l.useAuthContext(),{messages:ne,status:ie,limits:re,isGenerating:oe,setMessages:ae,setStatus:le,setLimitData:ce,setError:ue}=i.useResponseContext(),{documents:de,isUploading:fe,isImageUploadAllowed:me,documentError:he,onFileUpload:ge,setDocuments:ve,setDocumentError:pe}=u.useDocument(),{scrollStartSession:xe,scrollEndSession:je,scrollToBottom:be}=d.useScroll({auto:!0}),{artifacts:ye,currentPopupType:ke,setArtifacts:we,setCurrentArtifact:Oe}=f.useArtifactContext(),Ie=a.useConversation(),Se=c.useSubmit(),[Ne,Ce]=s.useState(""),qe=s.useRef(null),Ae=s.useRef(""),{isSupported:_e,isListening:Ee,finalTranscript:He,interimTranscript:Te,startListening:Me,stopListening:De}=m.useSpeechRecognition({lang:$||"en"}),[Le]=g.useMediaQuery("(max-width: 899px)"),Re=h.useHover(),{isHover:Fe}=Re,We=e.__rest(Re,["isHover"]),Ue=h.useHover(),{isHover:Be}=Ue,Je=e.__rest(Ue,["isHover"]),Pe=h.useHover(),{isHover:$e}=Pe,Ge=e.__rest(Pe,["isHover"]),ze=h.useHover(),{isHover:Ke}=ze,Qe=e.__rest(ze,["isHover"]),Ve=o.useStyleFontSize(),Xe=r.useStyleInput(),Ye="chat-input"===U&&z&&!se,Ze="chat-input"===U&&Q&&te&&se,et=s.useMemo((()=>{var e,t,s;return!!z&&(!!B&&(!Ie.isLoading&&(!((null!==(t=null===(e=Ie.data)||void 0===e?void 0:e.messages.length)&&void 0!==t?t:0)>1)&&(!!(null===(s=B.icebreakers)||void 0===s?void 0:s.length)&&(!V&&!Ye)))))}),[B,z,V,Ye,Ie.data,Ie.isLoading]),tt=s.useMemo((()=>{if(oe||fe)return!1;const e=de.length>0&&de.every((e=>{var t;return"finished"===e.status&&(null===(t=e.documentId)||void 0===t?void 0:t.startsWith("IMAGE-"))}));return!(!Ne.trim()&&!e)&&de.every((e=>"finished"===e.status||e.isInsertedAsRaw))}),[oe,fe,Ne,de]);s.useEffect((()=>{Y(et)}),[et]),s.useEffect((()=>{if(!Ee)return;const e=`${Ae.current} ${He} ${Te}`.trim();Ce(e)}),[He,Te,Ee]),s.useEffect((()=>{!Ee&&Ae.current&&(Ce(`${Ae.current} ${He}`.trim()),Ae.current="")}),[Ee,He]);const st=t=>e.__awaiter(void 0,void 0,void 0,(function*(){var e,s;try{if("idle"!==ie||fe||Ee)return;const n=de.filter((e=>"finished"===e.status&&!e.isInsertedAsRaw)).map((e=>e.documentId)).filter(Boolean),i=n.length>0&&n.every((e=>e.startsWith("IMAGE-"))),r=null!=t?t:Ne;if(!r&&!i)return;ue(""),pe(""),ce(null),Ce(""),X(!1),le("fetching"),xe(),be();const o=null!==(s=null===(e=null==B?void 0:B.documentuploadtype)||void 0===e?void 0:e.startsWith("enduserupload"))&&void 0!==s&&s&&n.length>0,a=[...Array.from(ne),Object.assign({id:ne.length+1,role:"user",content:r},o&&{documentIds:n})];ae(a),be(),o&&ve([]);const l=(yield Se.mutateAsync(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({formId:M,responseId:D,value:r},o&&{documentIds:n}),L&&{userId:L}),R&&{studioUserId:R}),F&&{embedUserId:F}),ee&&{studioSessionToken:ee}),W&&{deploymentId:W}))).body;if(!l)throw new Error("Streaming error");const c=a.length,u=new TextDecoder,d=l.getReader();let f="",m=!0,h=!1,g=[...null!=ye?ye:[]];const v=p.createParser({onEvent:e=>{if("delta"===e.event){const t=JSON.parse(e.data).token.replace(/\u200B/g,"");f+=t,ae([...a.slice(0,c),{id:ne.length+1,role:"assistant",content:f}])}else if("artifact_created"===e.event){const t=JSON.parse(e.data);g=g.filter((e=>!(e.id===t.id&&e.version===t.version))),g.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),we(g),ke.startsWith("inline")||Oe({id:t.id,version:t.version})}else if("artifact_updated"===e.event){const t=JSON.parse(e.data);g=g.filter((e=>!(e.id===t.id&&e.version===t.version))),g.push(Object.assign(Object.assign({},t),{content:"",status:"updating"})),we(g),ke.startsWith("inline")||Oe({id:t.id,version:t.version})}else if("artifact_rewrite"===e.event){const t=JSON.parse(e.data);g=g.filter((e=>!(e.id===t.id&&e.version===t.version))),g.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),we(g),ke.startsWith("inline")||Oe({id:t.id,version:t.version})}else if("artifact_content"===e.event){const t=JSON.parse(e.data),s=t.token.replace(/\u200B/g,"");g=g.map((e=>e.id===t.id&&e.version===t.version?Object.assign(Object.assign({},e),{content:e.content+s,status:"streaming"}):e)),we(g)}else if("artifact_finished"===e.event){const t=JSON.parse(e.data);we(g.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);ue(t.error||"Something went wrong, please try again.")}else"stop"===e.event&&(m=!1)}});for(;m;){const{value:e,done:t}=yield d.read();if(t){m=!1;break}const s=u.decode(e);s&&(h||(le("streaming"),h=!0),v.feed(s))}null==Z||Z(D)}catch(e){let t=I.default(e)||"";t&&!t.includes("Unexpected token 'A',")||(t="Oops! We're experiencing high traffic at the moment. Please try again later.");const s=Object.entries(re).find((([e])=>t.includes(e)));s?ce(s[1]):ue(t)}finally{be(),le("idle"),je()}}));return s.useImperativeHandle(_,(()=>({onSubmit:st}))),Ze?null:t.jsx("div",Object.assign({className:S.default("w-full flex flex-col items-center absolute bottom-0 left-0 z-1",!Ye&&"px-4 pb-4"),dir:K?"rtl":"ltr"},{children:t.jsxs("div",Object.assign({className:"relative flex flex-col max-w-[800px] w-full"},{children:[t.jsxs("div",Object.assign({className:S.default("flex flex-col gap-y-3 px-4 py-3","block"===J.formFieldStyle&&"shadow"),style:Xe},{children:[Ee&&t.jsx(N,{colors:P}),"idle"===ie&&de.length>0&&t.jsx(k.default,{isDisabled:"idle"!==ie}),t.jsxs("div",Object.assign({className:S.default("flex items-end gap-x-2",K&&"flex-row-reverse")},{children:[t.jsx(w.default,Object.assign({className:S.default(Ve.i1,"max-h-60 min-h-[27px] w-full border-transparent bg-transparent",!Ne.length&&"max-h-6 overflow-hidden text-ellipsis whitespace-nowrap",K?"text-right":"text-left",Ee&&"text-transparent"),value:Ne,placeholder:null!==(E=null==B?void 0:B.placeholdertext)&&void 0!==E?E:K?"بماذا تريد أن تتحدث؟":"What do you want to talk about?",onChange:e=>{if(Ce(e),A){const t=(e.match(/\n/g)||[]).length+1;if(t>=11)return;A(24*(t-1))}},onKeyDown:e=>{G||Le||"Enter"===e.key&&(e.shiftKey||(e.preventDefault(),fe||"idle"!==ie||st()))}},C&&{onFocus:C},q&&{onBlur:q},{dir:K?"rtl":"ltr"})),t.jsx("div",Object.assign({className:"flex items-center gap-x-2"},{children:Ee?t.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",onClick:De,style:{backgroundColor:Ke?P.accent:P.accent+"10",color:Ke?P.accentText:P.accent}},Qe,{children:t.jsx(y.default,{className:"h-4 w-4 shrink-0"})})):t.jsxs(t.Fragment,{children:[null!==(T=null===(H=null==B?void 0:B.documentuploadtype)||void 0===H?void 0:H.startsWith("enduserupload"))&&void 0!==T&&T&&t.jsxs("button",Object.assign({className:"outline-none disabled:cursor-default w-8 h-8 flex items-center justify-center rounded-full transition-colors duration-200 ease-in-out",style:{backgroundColor:Be?P.accent+"10":void 0,color:Be?P.accent:P.accent+"80"},disabled:fe||"idle"!==ie,onClick:()=>{var e;return null===(e=qe.current)||void 0===e?void 0:e.click()}},Je,{children:[t.jsx("input",{id:"file-upload",ref:qe,type:"file",accept:[...v.allowedFileMimeTypes,...me?v.allowedImageMimeTypes:[],...v.additionalAllowedFileExtensions].join(", "),multiple:!0,hidden:!0,className:"hidden",onChange:t=>e.__awaiter(void 0,void 0,void 0,(function*(){X(!1),yield ge(Array.from(t.target.files||[])),t.target.value=""}))}),t.jsx(x.default,{className:"h-6 w-6 shrink-0"})]})),_e&&(null==B?void 0:B.enablevoicetotext)&&t.jsx("button",Object.assign({className:"flex h-8 w-8 items-center \n justify-center rounded-full\n outline-none transition-colors \n duration-200 ease-in-out\n disabled:cursor-default",style:{backgroundColor:Ee?P.accent:$e?P.accent+"10":void 0,color:Ee?P.accentText:$e?P.accent:P.accent+"80"},disabled:fe||"idle"!==ie,onClick:()=>{Ee?De():(Ae.current=Ne,Me())}},Ge,{children:t.jsx(b.default,{className:"h-5 w-5 shrink-0"})})),t.jsx("button",Object.assign({className:"outline-none disabled:cursor-default w-8 h-8 flex items-center justify-center rounded-full duration-200 transition-colors ease-in-out",style:{backgroundColor:Fe||tt?P.accent:P.accent+"10",color:Fe||tt?P.accentText:P.accent+"80"},disabled:"idle"!==ie||fe,onClick:()=>st()},We,{children:t.jsx(j.default,{className:S.default("h-6 w-6 shrink-0",K&&"transform scale-x-[-1]")})}))]})}))]}))]})),he&&t.jsx(O.default,{error:he,className:"mt-3"})]}))}))}));C.displayName="Input",exports.default=C;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("../../../common/cn.js"),i=require("./PickaxeButton.js"),r=require("../../../hooks/studio/useStyleFontSize.js"),s=require("react"),a=require("framer-motion"),u=require("./PickaxeInput.js"),l=require("../../../hooks/pickaxe/usePickaxeContext.js");exports.default=({isUp:n,submitThumbsUp:o,submitThumbsDown:c})=>{var m,d;const p=r.useStyleFontSize(),{translations:x}=l.usePickaxeContext(),[b,f]=s.useState("");return e.jsx(e.Fragment,{children:e.jsx(a.AnimatePresence,{children:e.jsxs(a.motion.form,Object.assign({initial:{opacity:0,y:-4,filter:"blur(4px)"},animate:{opacity:1,y:0,filter:"blur(0px)"},exit:{opacity:0,y:-4,filter:"blur(4px)"},transition:{type:"spring",bounce:0,duration:.4},onSubmit:e=>((e,t)=>{e.preventDefault(),b.trim()&&(f(""),n?o(t):c(t))})(e,b),className:"flex w-9/12 items-center gap-2"},{children:[e.jsx(u.default,{value:b,onChange:e=>f(e.target.value),className:t.default(p.b3,"flex-1 py-1.5"),placeholder:null!==(m=null==x?void 0:x["feedback-dislike-input-placeholder"])&&void 0!==m?m:"Write here..."}),e.jsx(i.default,Object.assign({className:t.default(p.b3,"min-h-9 active:scale-[.96]"),isDisabled:!b.trim()},{children:null!==(d=null==x?void 0:x["feedback-submit"])&&void 0!==d?d:"Submit"}))]}))})})};
|
|
@@ -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"),t=require("../../../hooks/pickaxe/useSubmitFeedback.js"),a=require("../../../hooks/pickaxe/useThumbSelection.js"),n=require("framer-motion"),l=require("../../Icons/message-square-notes.svg.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"),t=require("../../../hooks/pickaxe/useSubmitFeedback.js"),a=require("../../../hooks/pickaxe/useThumbSelection.js"),n=require("framer-motion"),l=require("../../Icons/message-square-notes.svg.js"),o=require("../../Icons/thumbs-down.svg.js"),c=require("../../Icons/thumbs-up.svg.js"),r=require("./PickaxeSimpleButton.js"),u=require("./PickaxeCopyButton.js"),d=require("./PickaxeFeedbackThumbsDownReasons.js"),b=require("../../../common/cn.js");exports.default=({content:p,index:m=0,chatCount:x,responseId:h,isForm:j,isHideFeedback:f,onOpenChat:k})=>{var y,g,v,w;const{mutateAsync:O}=t.useSubmitFeedback(),{colors:T,translations:q,pickaxe:N,setIsShowFeedbackMessage:S}=i.usePickaxeContext(),C=s.useStyleFontSize(),{toggleThumb:D,submitThumbsDown:F,submitThumbsUp:P,isThumbsUpSelected:I,isThumbsDownSelected:U,showThumbsDownOptions:z,showThumbsUpOptions:R,showSuccess:A}=a.useThumbSelection({content:p,index:m,responseId:h,successDuration:2e3,thumbsDownPromptRate:.3,onThumbsDownReasonOpen:()=>S(!0),onThumbsDownReasonClose:()=>S(!1),submit:O}),B="function"==typeof k&&!!(null==N?void 0:N.enablechatresponses)&&void 0!==h&&void 0!==x,H=Boolean((null==N?void 0:N.enablechatresponses)&&!k||!(null==N?void 0:N.enablechatresponses)&&j)&&!f;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:[B&&e.jsxs(r.default,Object.assign({color:T.accent,onClick:k},{children:[e.jsx(l.default,{className:"h-4 w-4 shrink-0"}),e.jsx("p",Object.assign({className:b.default(C.b3,"font-semibold")},{children:x}))]})),e.jsx(u.default,{color:T.accent,text:p}),H&&e.jsxs(e.Fragment,{children:[e.jsx(r.default,Object.assign({color:T.accent,onClick:()=>D("like"),className:"transition-all active:rotate-12 active:scale-90"},{children:e.jsx(c.default,{className:"size-4",style:{fill:T.text,fillOpacity:I?.3:0}})})),e.jsx(r.default,Object.assign({color:T.accent,onClick:()=>D("dislike"),className:"transition-all active:-rotate-12 active:scale-90"},{children:e.jsx(o.default,{className:"size-4",style:{fill:T.text,fillOpacity:U?.3:0}})})),e.jsx(n.AnimatePresence,{children:A&&e.jsx(n.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(C.b4,T.secondary,"opacity-75")},{children:null!==(y=null==q?void 0:q["feedback-thanks"])&&void 0!==y?y:"Thanks for the feedback!"}))}))})]})]})),e.jsx(n.AnimatePresence,{children:(z||R)&&e.jsxs(n.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(C.b3,T.text)},{children:R?null!==(g=null==q?void 0:q["feedback-like-title"])&&void 0!==g?g:"What went right?":null!==(v=null==q?void 0:q["feedback-dislike-title"])&&void 0!==v?v:"What went wrong?"})),e.jsx("p",Object.assign({className:b.default(C.b3,T.secondary,"opacity-75")},{children:null!==(w=null==q?void 0:q["feedback-dislike-message"])&&void 0!==w?w:"Help us improve our answers"}))]})),e.jsx(n.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(d.default,{isUp:R,submitThumbsDown:F,submitThumbsUp:P})}))]}))})]}))};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),s=require("./useCreateFeedbackPayload.js");exports.useThumbSelection=({content:t,index:n,responseId:i,submit:o,onThumbsDownReasonOpen:u,onThumbsDownReasonClose:a,successDuration:
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),s=require("./useCreateFeedbackPayload.js");exports.useThumbSelection=({content:t,index:n,responseId:i,submit:o,onThumbsDownReasonOpen:u,onThumbsDownReasonClose:a,onThumbsUpReasonOpen:l,onThumbsUpReasonClose:c,successDuration:b=3e3,thumbsDownPromptRate:d=1,thumbsUpPromptRate:r=1})=>{const m=s.useCreateFeedbackPayload({content:t,index:n,responseId:i}),[k,p]=e.useState(null),[h,T]=e.useState(!1),[O,g]=e.useState(!1),[f,j]=e.useState(!1),w=()=>{j(!0),setTimeout((()=>j(!1)),b)},S=()=>{h&&(T(!1),null==a||a()),O&&(g(!1),null==c||c())};return{selectedThumb:k,showThumbsDownOptions:h,showThumbsUpOptions:O,toggleThumb:e=>{if("like"===e){const e="like"===k&&O,s=!e&&Math.random()<r;return S(),s?(p("like"),g(!0),void(null==l||l())):e?void p(null):(p("like"),o(Object.assign(Object.assign({},m),{feedbackType:"like",content:t})),void w())}if("dislike"===e){const e="dislike"===k&&h,s=!e&&Math.random()<d;if(S(),s)return p("dislike"),T(!0),void(null==u||u());if(e)return void p(null);p("dislike"),o(Object.assign(Object.assign({},m),{feedbackType:"dislike",content:t})),w()}},submitThumbsDown:e=>{o(Object.assign(Object.assign({},m),{feedbackType:"dislike",content:t,feedbackMessage:e})),S(),w()},submitThumbsUp:e=>{o(Object.assign(Object.assign({},m),{feedbackType:"like",content:t,feedbackMessage:e})),S(),w()},isThumbsUpSelected:"like"===k,isThumbsDownSelected:"dislike"===k,showSuccess:f}};
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
interface PickaxeFeedbackThumbsDownReasonsProps {
|
|
2
|
+
isUp: boolean;
|
|
2
3
|
submitThumbsDown: (feedbackMessage: string) => void;
|
|
4
|
+
submitThumbsUp: (feedbackMessage: string) => void;
|
|
3
5
|
}
|
|
4
|
-
declare const PickaxeFeedbackThumbsDownReasons: ({ submitThumbsDown, }: PickaxeFeedbackThumbsDownReasonsProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
declare const PickaxeFeedbackThumbsDownReasons: ({ isUp, submitThumbsUp, submitThumbsDown, }: PickaxeFeedbackThumbsDownReasonsProps) => import("react/jsx-runtime").JSX.Element;
|
|
5
7
|
export default PickaxeFeedbackThumbsDownReasons;
|
|
@@ -7,14 +7,19 @@ interface useThumbSelectionArgs {
|
|
|
7
7
|
submit: UseMutateAsyncFunction<void, unknown, Feedback, unknown>;
|
|
8
8
|
onThumbsDownReasonOpen?: () => void;
|
|
9
9
|
onThumbsDownReasonClose?: () => void;
|
|
10
|
+
onThumbsUpReasonOpen?: () => void;
|
|
11
|
+
onThumbsUpReasonClose?: () => void;
|
|
10
12
|
successDuration?: number;
|
|
11
13
|
thumbsDownPromptRate?: number;
|
|
14
|
+
thumbsUpPromptRate?: number;
|
|
12
15
|
}
|
|
13
|
-
export declare const useThumbSelection: ({ content, index, responseId, submit, onThumbsDownReasonOpen, onThumbsDownReasonClose, successDuration, thumbsDownPromptRate, }: useThumbSelectionArgs) => {
|
|
16
|
+
export declare const useThumbSelection: ({ content, index, responseId, submit, onThumbsDownReasonOpen, onThumbsDownReasonClose, onThumbsUpReasonOpen, onThumbsUpReasonClose, successDuration, thumbsDownPromptRate, thumbsUpPromptRate, }: useThumbSelectionArgs) => {
|
|
14
17
|
selectedThumb: "like" | "dislike" | null;
|
|
15
18
|
showThumbsDownOptions: boolean;
|
|
19
|
+
showThumbsUpOptions: boolean;
|
|
16
20
|
toggleThumb: (type: "like" | "dislike") => void;
|
|
17
21
|
submitThumbsDown: (feedbackMessage: string) => void;
|
|
22
|
+
submitThumbsUp: (feedbackMessage: string) => void;
|
|
18
23
|
isThumbsUpSelected: boolean;
|
|
19
24
|
isThumbsDownSelected: boolean;
|
|
20
25
|
showSuccess: boolean;
|
|
@@ -3,7 +3,7 @@ export type PickaxeImageOrText = "text" | "image";
|
|
|
3
3
|
export type PickaxePrivacySetting = "public" | "unlisted" | "private" | "deleted";
|
|
4
4
|
export type PickaxeCloneable = "true" | "false";
|
|
5
5
|
export type PickaxeDocumentUploadType = "ownerupload" | "enduserupload" | "enduserupload-user";
|
|
6
|
-
export type PickaxeModel = "gpt-3.5-turbo" | "gpt-4-1106-preview" | "mistral-small" | "gpt-5" | "gpt-5-mini" | "gpt-5-nano" | "gpt-4.1" | "gpt-4.1-mini" | "gpt-4.1-nano" | "gpt-4o-mini" | "gpt-4o" | "gpt-4" | "o3-mini" | "
|
|
6
|
+
export type PickaxeModel = "gpt-3.5-turbo" | "gpt-4-1106-preview" | "mistral-small" | "gpt-5" | "gpt-5-mini" | "gpt-5-nano" | "gpt-5-chat-latest" | "gpt-4.1" | "gpt-4.1-mini" | "gpt-4.1-nano" | "gpt-4o-mini" | "gpt-4o" | "gpt-4" | "o3-mini" | "o4-mini" | "o3" | "o1" | "gemini-1.5-flash" | "gemini-1.5-pro" | "gemini-2.0-flash-lite" | "gemini-2.0-flash" | "gemini-2.5-pro-preview-05-06" | "gemini-2.5-flash-preview-05-20" | "deepseek-chat" | "mistral-large-latest" | "claude-3-opus-20240229" | "claude-3-7-sonnet-20250219" | "claude-sonnet-4-20250514" | "claude-opus-4-20250514" | "claude-opus-4-1-20250805" | "grok-3-latest" | "grok-4-latest" | "grok-4-fast-non-reasoning-latest" | "grok-4-fast-reasoning-latest" | "llama-3-uncensored" | "sonar" | "sonar-pro" | "sonar-reasoning" | "sonar-reasoning-pro" | "sonar-deep-research";
|
|
7
7
|
export type Pickaxe = {
|
|
8
8
|
_id: string;
|
|
9
9
|
formid: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=["application/pdf","text/plain","application/vnd.openxmlformats-officedocument.wordprocessingml.document","text/csv","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/json","application/vnd.openxmlformats-officedocument.presentationml.presentation"],
|
|
1
|
+
const e=["application/pdf","text/plain","application/vnd.openxmlformats-officedocument.wordprocessingml.document","text/csv","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/json","application/vnd.openxmlformats-officedocument.presentationml.presentation","text/markdown","application/xml","text/xml"],t=["image/png","image/jpeg","image/webp","image/gif"],o=[".md"];export{o as additionalAllowedFileExtensions,e as allowedFileMimeTypes,t as allowedImageMimeTypes};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__awaiter as e}from"../../../../../_virtual/_tslib.js";import{useMemo as t}from"react";import{usePickaxeContext as
|
|
1
|
+
import{__awaiter as e}from"../../../../../_virtual/_tslib.js";import{useMemo as t}from"react";import{usePickaxeContext as o}from"../../../../../hooks/pickaxe/usePickaxeContext.js";import{useAuthContext as s}from"../../Auth/hooks/useAuthContext.js";import{useSubmitDocument as i}from"../../../../../hooks/pickaxe/useSubmitDocument.js";import{useDocumentContext as n}from"./useDocumentContext.js";import{additionalAllowedFileExtensions as r,allowedFileMimeTypes as a,allowedImageMimeTypes as d}from"../../../../../common/documents.js";import{v4 as u}from"uuid";import l from"../../../../../common/error.js";const c=["gpt-4o","gpt-4o-mini","gpt-4.1","gpt-4.1-mini","gpt-4.1-nano","gpt-5","gpt-5-mini","gpt-5-nano","gpt-5-chat-latest","o1","o4-mini","o3","gemini-2.0-flash","gemini-2.0-flash-lite","gemini-2.5-pro-preview-05-06","gemini-2.5-flash-preview-05-20","claude-3-7-sonnet-20250219","claude-sonnet-4-20250514","claude-opus-4-20250514","claude-opus-4-1-20250805","grok-4-latest","grok-4-fast-non-reasoning-latest","grok-4-fast-reasoning-latest","sonar","sonar-pro","sonar-reasoning","sonar-reasoning-pro"],m=({onQuestionChange:m}={})=>{const{formId:p,chatId:f,sessionId:g,pickaxe:h,studioUserId:w}=o(),{token:I}=s(),b=n(),v=i(),k=t((()=>{var e;return c.includes(null!==(e=null==h?void 0:h.model)&&void 0!==e?e:"gpt-3.5-turbo")}),[h]),y=e=>{const t=[...a,...k?d:[]];if(e.some((e=>{var o;if(console.log(e.type),t.includes(e.type))return!1;if(""===e.type){const t=null===(o=e.name.split(".").pop())||void 0===o?void 0:o.toLowerCase();if(t&&r.includes(`.${t}`))return!1}return!0}))){const e=new Error(k?"You can only upload PDF, TXT, DOCX, CSV, XLSX, JSON, PPTX, MD, XML, PNG, JPEG, WEBP, or GIF files. Please try again.":"You can only upload PDF, TXT, DOCX, CSV, XLSX, JSON, PPTX, MD, or XML files. Please try again."),t=l(e);return b.setDocumentError(t),!0}return!1};return Object.assign(Object.assign({},b),{isImageUploadAllowed:k,onFileUpload:t=>e(void 0,void 0,void 0,(function*(){if(b.setDocumentError(""),!t.length)return null;if(y(t))return null;b.setIsUploading(!0),b.setIsShowList(!0);const o=t.map((e=>({file:e,id:u()})));o.forEach((({file:e,id:t})=>{b.addDocument({type:"document",id:t,size:e.size,name:e.name,status:"uploading"})}));const s=o.map((({file:t,id:o})=>e(void 0,void 0,void 0,(function*(){try{const{success:e,documentId:s,error:i}=yield v.document(Object.assign(Object.assign(Object.assign({formId:p,responseId:f,file:t,sessionId:g},(null==h?void 0:h.workspaceid)&&{workspaceId:h.workspaceid}),w&&{studioUserId:w}),I&&{studioSessionToken:I}));if(!e)throw new Error(null!=i?i:"Document processing failed");null==m||m({input:t.name,documentId:s});const n=s.startsWith("IMAGE-");return b.editDocument({id:o,type:n?"image":"document",name:t.name,size:t.size,status:"finished",documentId:s}),{name:t.name,documentId:s}}catch(e){const s=l(e);return b.editDocument({id:o,name:t.name,size:t.size,status:"failed",error:s}),{error:s}}}))));yield Promise.allSettled(s),b.setIsUploading(!1)})),onWebsiteUpload:t=>e(void 0,void 0,void 0,(function*(){b.setDocumentError("");let e=t.trim();if(!e)return null;e.startsWith("http://")&&(e=e.replace("http://","https://")),e.startsWith("https://")||(e=`https://${e}`);try{if(!e.includes("."))throw new Error("Please paste a valid website URL or Youtube video link to add to the knowledge base.");b.setIsUploading(!0),b.setIsShowList(!0),b.setWebsiteLink(""),b.setDocuments([{type:"website",id:e,size:0,name:e,status:"uploading"}]);const t=yield v.website(Object.assign(Object.assign(Object.assign({formId:p,responseId:f,website:e},(null==h?void 0:h.workspaceid)&&{workspaceId:h.workspaceid}),w&&{studioUserId:w}),I&&{studioSessionToken:I})),{success:o,documentId:s}=t;if(!o)throw new Error("Website processing failed, please try again.");b.setDocuments([{type:"website",id:e,size:0,name:e,status:"finished",documentId:s}]);return{type:"website",id:e,name:e,size:0,status:"finished",documentId:s}}catch(t){const o=l(t);if(console.log("[onWebsiteUpload] Error",o),o.includes("Please paste a valid website URL"))return b.setDocumentError(o),null;b.editDocument({type:"website",id:e,size:0,name:e,status:"failed",error:o});return{type:"website",id:e,size:0,name:e,status:"failed",error:o}}finally{b.setIsUploading(!1)}}))})};export{m as useDocument};
|
|
@@ -1 +1 @@
|
|
|
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 a}from"../../../../hooks/studio/useStyleFontSize.js";import{useArtifact as o}from"../../Addons/Artifact/hooks/useArtifact.js";import{PickaxeMarkdown as l}from"../../common/PickaxeMarkdown/index.js";import{PickaxeMarkdownRenderer as r}from"../../common/PickaxeMarkdown/Renderer.js";import c from"../../common/PickaxeIcon.js";import n from"./Document.js";import m from"../../../../common/cn.js";import d from"../../common/PickaxeMessageActions.js";const x=({index:x,message:p})=>{var f;const{formId:h,pickaxe:u,styles:b,colors:g,misc:j,responsiveBy:
|
|
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 a}from"../../../../hooks/studio/useStyleFontSize.js";import{useArtifact as o}from"../../Addons/Artifact/hooks/useArtifact.js";import{PickaxeMarkdown as l}from"../../common/PickaxeMarkdown/index.js";import{PickaxeMarkdownRenderer as r}from"../../common/PickaxeMarkdown/Renderer.js";import c from"../../common/PickaxeIcon.js";import n from"./Document.js";import m from"../../../../common/cn.js";import d from"../../common/PickaxeMessageActions.js";const x=({index:x,message:p})=>{var f;const{formId:h,pickaxe:u,styles:b,colors:g,misc:j,responsiveBy:w,disableHtml:v,disableJs:k,disableCss:y,isNewChat:N,isRtl:O}=i(),{onLoadArtifact:A}=o(),C=a(),I=null!==(f=null==u?void 0:u.chaticon)&&void 0!==f?f:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/chaticons/${h}.png`;return"assistant"===p.role?e("div",Object.assign({className:m("flex w-full",O?"justify-end":"justify-start")},{children:e("div",Object.assign({className:m("flex flex-col w-full",0===x&&N&&"viewport"===w&&"min-[767px]:max-w-[80%]",0===x&&N&&"container"===w&&"@[767px]/pickaxe-root:max-w-[80%]")},{children:s("div",Object.assign({className:m("flex gap-x-3",O&&"flex-row-reverse")},{children:[j.isChatImage&&"NONE"!==I&&e(c,{src:I,alt:"Assistant",width:24,height:24,className:"my-3 h-6 w-6",textColor:g.text}),s("div",Object.assign({className:m("flex flex-col flex-grow",O?"items-end":"items-start")},{children:[e("div",Object.assign({className:m(C.b2,"chat-message pt-3 w-full",O?"text-right":"text-left")},{children:e(l,Object.assign({theme:b.theme,colors:g,actions:!0},O&&{rtl:!0},v&&{disableHtml:!0},k&&{disableJs:!0},y&&{disableCss:!0},{onArtifactClick:A},{children:e(r,{value:p.content})}))})),e("div",Object.assign({className:"pt-3 w-3/4"},{children:e(d,Object.assign({content:p.content,index:x},"intromessage"===p.area&&{isHideFeedback:!0}))}))]}))]}))}))})):"user"===p.role?e("div",Object.assign({className:m("flex w-full",O?"justify-start":"justify-end")},{children:e("div",Object.assign({className:m("flex gap-x-3 max-w-[80%]",O?"pr-9":"pl-9","viewport"===w?O?"min-[767px]:pr-0":"min-[767px]:pl-0":O?"@[767px]/pickaxe-root:pr-0":"@[767px]/pickaxe-root:pl-0")},{children:s("div",Object.assign({className:m(C.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",O?"text-right":"text-left"),style:{backgroundColor:g.secondary+"80",color:g.secondaryText,borderRadius:b.cornerRadius}},{children:[p.documentIds&&p.documentIds.length>0&&e("div",Object.assign({className:m("flex flex-col gap-y-2",O?"items-start":"items-end")},{children:p.documentIds.map((s=>e(t,{children:s.startsWith("IMAGE-")?e("div",Object.assign({className:"max-w-[300px]"},{children:e("img",{style:{borderRadius:b.cornerRadius},className:"object-cover w-full h-full",src:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/documentinterrogation/${s.split("-")[2]}/${s.split("-")[1]}.${null==s?void 0:s.split("-")[2]}`,alt:""})})):e(n,{documentId:s})},s)))})),e(l,Object.assign({theme:b.theme,colors:g},O&&{rtl:!0},v&&{disableHtml:!0},k&&{disableJs:!0},y&&{disableCss:!0},{children:e(r,{value:p.content})}))]}))}))})):e("div",{})};export{x as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__rest as e,__awaiter as t}from"../../../_virtual/_tslib.js";import{jsx as s,jsxs as n,Fragment as o}from"react/jsx-runtime";import{forwardRef as i,useState as r,useRef as a,useMemo as l,useEffect as c,useImperativeHandle as d}from"react";import{usePickaxeContext as u}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as m}from"../../../hooks/pickaxe/useResponseContext.js";import{useStyleInput as f}from"../../../hooks/studio/useStyleInput.js";import{useStyleFontSize as p}from"../../../hooks/studio/useStyleFontSize.js";import{useConversation as h}from"../../../hooks/pickaxe/useConversation.js";import{useAuthContext as g}from"../Addons/Auth/hooks/useAuthContext.js";import{useSubmit as v}from"../../../hooks/pickaxe/useSubmit.js";import{useDocument as b}from"../Addons/Document/hooks/useDocument.js";import{useScroll as j}from"../Addons/Scroll/hooks/useScroll.js";import{useArtifactContext as x}from"../Addons/Artifact/hooks/useArtifactContext.js";import{useSpeechRecognition as k}from"../../../hooks/pickaxe/useSpeechRecognition.js";import{useHover as y}from"../../../hooks/core/useHover.js";import{allowedFileMimeTypes as O,allowedImageMimeTypes as w,additionalAllowedFileExtensions as I}from"../../../common/documents.js";import{createParser as N}from"eventsource-parser";import S from"../../Icons/attach-vertical.svg.js";import C from"../../Icons/arrow-right.svg.js";import A from"../../Icons/microphone.svg.js";import E from"../../Icons/stop.svg.js";import L from"../Addons/Document/List.js";import T from"../../Core/Textarea.js";import D from"../../Core/ErrorAlert.js";import H from"../../../common/error.js";import W from"../../../common/cn.js";const U=({colors:e})=>{var t;return n("div",Object.assign({className:"absolute left-4 top-1/2 flex -translate-y-1/2 items-center gap-x-2"},{children:[s("span",{className:"h-2 w-2 animate-pulse rounded-full",style:{backgroundColor:null!==(t=e.accent)&&void 0!==t?t:"#ff0000"}}),s("span",Object.assign({className:"text-sm",style:{color:e.text+"90"}},{children:"Listening..."}))]}))},B=i((({onFocus:i,onBlur:B,onInputHeightChange:J},_)=>{var F,R,$;const{formId:G,chatId:M,userId:P,studioUserId:z,embedUserId:K,deploymentId:q,deploymentType:Q,pickaxe:V,styles:X,colors:Y,isNewChat:Z,isRtl:ee,studioLang:te,isEmailLogin:se,isShowFeedbackMessage:ne,setIsNewChat:oe,setIsShowIceBreaker:ie,onGenerateComplete:re}=u(),{token:ae,isLoggedOut:le,isSent:ce}=g(),{messages:de,status:ue,limits:me,isGenerating:fe,setMessages:pe,setStatus:he,setLimitData:ge,setError:ve}=m(),{documents:be,isUploading:je,isImageUploadAllowed:xe,documentError:ke,onFileUpload:ye,setDocuments:Oe,setDocumentError:we}=b(),{scrollStartSession:Ie,scrollEndSession:Ne,scrollToBottom:Se}=j({auto:!0}),{artifacts:Ce,currentPopupType:Ae,setArtifacts:Ee,setCurrentArtifact:Le}=x(),Te=h(),De=v(),[He,We]=r(""),Ue=a(null),{isSupported:Be,isListening:Je,finalTranscript:_e,interimTranscript:Fe,startListening:Re,stopListening:$e}=k({lang:te||"en"}),Ge=a(""),Me=y(),{isHover:Pe}=Me,ze=e(Me,["isHover"]),Ke=y(),{isHover:qe}=Ke,Qe=e(Ke,["isHover"]),Ve=y(),{isHover:Xe}=Ve,Ye=e(Ve,["isHover"]),Ze=y(),{isHover:et}=Ze,tt=e(Ze,["isHover"]),st=p(),nt=f(),ot="chat-input"===Q&&Z&&!ce,it="chat-input"===Q&&se&&le&&ce,rt=l((()=>{var e,t,s;return!!Z&&(!!V&&(!Te.isLoading&&(!((null!==(t=null===(e=Te.data)||void 0===e?void 0:e.messages.length)&&void 0!==t?t:0)>1)&&(!!(null===(s=V.icebreakers)||void 0===s?void 0:s.length)&&(!ne&&!ot)))))}),[V,Z,ne,ot,Te.data,Te.isLoading]),at=l((()=>{if(fe||je)return!1;const e=be.length>0&&be.every((e=>{var t;return"finished"===e.status&&(null===(t=e.documentId)||void 0===t?void 0:t.startsWith("IMAGE-"))}));return!(!He.trim()&&!e)&&be.every((e=>"finished"===e.status||e.isInsertedAsRaw))}),[fe,je,He,be]);c((()=>{ie(rt)}),[rt]),c((()=>{if(!Je)return;const e=`${Ge.current} ${_e} ${Fe}`.trim();We(e)}),[_e,Fe,Je]),c((()=>{!Je&&Ge.current&&(We(`${Ge.current} ${_e}`.trim()),Ge.current="")}),[Je,_e]);const lt=e=>t(void 0,void 0,void 0,(function*(){var t,s;try{if("idle"!==ue||je||Je)return;const n=be.filter((e=>"finished"===e.status&&!e.isInsertedAsRaw)).map((e=>e.documentId)).filter(Boolean),o=n.length>0&&n.every((e=>e.startsWith("IMAGE-"))),i=null!=e?e:He;if(!i&&!o)return;ve(""),we(""),ge(null),We(""),oe(!1),he("fetching"),Ie(),Se();const r=null!==(s=null===(t=null==V?void 0:V.documentuploadtype)||void 0===t?void 0:t.startsWith("enduserupload"))&&void 0!==s&&s&&n.length>0,a=[...Array.from(de),Object.assign({id:de.length+1,role:"user",content:i},r&&{documentIds:n})];pe(a),Se(),r&&Oe([]);const l=(yield De.mutateAsync(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({formId:G,responseId:M,value:i},r&&{documentIds:n}),P&&{userId:P}),z&&{studioUserId:z}),K&&{embedUserId:K}),ae&&{studioSessionToken:ae}),q&&{deploymentId:q}))).body;if(!l)throw new Error("Streaming error");const c=a.length,d=new TextDecoder,u=l.getReader();let m="",f=!0,p=!1,h=[...null!=Ce?Ce:[]];const g=N({onEvent:e=>{if("delta"===e.event){const t=JSON.parse(e.data).token.replace(/\u200B/g,"");m+=t,pe([...a.slice(0,c),{id:de.length+1,role:"assistant",content:m}])}else if("artifact_created"===e.event){const t=JSON.parse(e.data);h=h.filter((e=>!(e.id===t.id&&e.version===t.version))),h.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),Ee(h),Ae.startsWith("inline")||Le({id:t.id,version:t.version})}else if("artifact_updated"===e.event){const t=JSON.parse(e.data);h=h.filter((e=>!(e.id===t.id&&e.version===t.version))),h.push(Object.assign(Object.assign({},t),{content:"",status:"updating"})),Ee(h),Ae.startsWith("inline")||Le({id:t.id,version:t.version})}else if("artifact_rewrite"===e.event){const t=JSON.parse(e.data);h=h.filter((e=>!(e.id===t.id&&e.version===t.version))),h.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),Ee(h),Ae.startsWith("inline")||Le({id:t.id,version:t.version})}else if("artifact_content"===e.event){const t=JSON.parse(e.data),s=t.token.replace(/\u200B/g,"");h=h.map((e=>e.id===t.id&&e.version===t.version?Object.assign(Object.assign({},e),{content:e.content+s,status:"streaming"}):e)),Ee(h)}else if("artifact_finished"===e.event){const t=JSON.parse(e.data);Ee(h.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);ve(t.error||"Something went wrong, please try again.")}else"stop"===e.event&&(f=!1)}});for(;f;){const{value:e,done:t}=yield u.read();if(t){f=!1;break}const s=d.decode(e);s&&(p||(he("streaming"),p=!0),g.feed(s))}null==re||re(M)}catch(e){let t=H(e)||"";t&&!t.includes("Unexpected token 'A',")||(t="Oops! We're experiencing high traffic at the moment. Please try again later.");const s=Object.entries(me).find((([e])=>t.includes(e)));s?ge(s[1]):ve(t)}finally{Se(),he("idle"),Ne()}}));return d(_,(()=>({onSubmit:lt}))),it?null:s("div",Object.assign({className:W("w-full flex flex-col items-center absolute bottom-0 left-0 z-1",!ot&&"px-4 pb-4"),dir:ee?"rtl":"ltr"},{children:n("div",Object.assign({className:"relative flex flex-col max-w-[800px] w-full"},{children:[n("div",Object.assign({className:W("flex flex-col gap-y-3 px-4 py-3","block"===X.formFieldStyle&&"shadow"),style:nt},{children:[Je&&s(U,{colors:Y}),"idle"===ue&&be.length>0&&s(L,{isDisabled:"idle"!==ue}),n("div",Object.assign({className:W("flex items-end gap-x-2",ee&&"flex-row-reverse")},{children:[s(T,Object.assign({className:W(st.i1,"max-h-60 min-h-[27px] w-full border-transparent bg-transparent",!He.length&&"max-h-6 overflow-hidden text-ellipsis whitespace-nowrap",ee?"text-right":"text-left",Je&&"text-transparent"),value:He,placeholder:null!==(F=null==V?void 0:V.placeholdertext)&&void 0!==F?F:ee?"بماذا تريد أن تتحدث؟":"What do you want to talk about?",onChange:e=>{if(We(e),J){const t=(e.match(/\n/g)||[]).length+1;if(t>=11)return;J(24*(t-1))}},onKeyDown:e=>{"Enter"===e.key&&(e.shiftKey||(e.preventDefault(),je||"idle"!==ue||lt()))}},i&&{onFocus:i},B&&{onBlur:B},{dir:ee?"rtl":"ltr"})),s("div",Object.assign({className:"flex items-center gap-x-2"},{children:Je?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",onClick:$e,style:{backgroundColor:et?Y.accent:Y.accent+"10",color:et?Y.accentText:Y.accent}},tt,{children:s(E,{className:"h-4 w-4 shrink-0"})})):n(o,{children:[null!==($=null===(R=null==V?void 0:V.documentuploadtype)||void 0===R?void 0:R.startsWith("enduserupload"))&&void 0!==$&&$&&n("button",Object.assign({className:"outline-none disabled:cursor-default w-8 h-8 flex items-center justify-center rounded-full transition-colors duration-200 ease-in-out",style:{backgroundColor:qe?Y.accent+"10":void 0,color:qe?Y.accent:Y.accent+"80"},disabled:je||"idle"!==ue,onClick:()=>{var e;return null===(e=Ue.current)||void 0===e?void 0:e.click()}},Qe,{children:[s("input",{id:"file-upload",ref:Ue,type:"file",accept:[...O,...xe?w:[],...I].join(", "),multiple:!0,hidden:!0,className:"hidden",onChange:e=>t(void 0,void 0,void 0,(function*(){oe(!1),yield ye(Array.from(e.target.files||[])),e.target.value=""}))}),s(S,{className:"h-6 w-6 shrink-0"})]})),Be&&(null==V?void 0:V.enablevoicetotext)&&s("button",Object.assign({className:"flex h-8 w-8 items-center \n justify-center rounded-full\n outline-none transition-colors \n duration-200 ease-in-out\n disabled:cursor-default",style:{backgroundColor:Je?Y.accent:Xe?Y.accent+"10":void 0,color:Je?Y.accentText:Xe?Y.accent:Y.accent+"80"},disabled:je||"idle"!==ue,onClick:()=>{Je?$e():(Ge.current=He,Re())}},Ye,{children:s(A,{className:"h-5 w-5 shrink-0"})})),s("button",Object.assign({className:"outline-none disabled:cursor-default w-8 h-8 flex items-center justify-center rounded-full duration-200 transition-colors ease-in-out",style:{backgroundColor:Pe||at?Y.accent:Y.accent+"10",color:Pe||at?Y.accentText:Y.accent+"80"},disabled:"idle"!==ue||je,onClick:()=>lt()},ze,{children:s(C,{className:W("h-6 w-6 shrink-0",ee&&"transform scale-x-[-1]")})}))]})}))]}))]})),ke&&s(D,{error:ke,className:"mt-3"})]}))}))}));B.displayName="Input";export{B as default};
|
|
1
|
+
import{__rest as e,__awaiter as t}from"../../../_virtual/_tslib.js";import{jsx as s,jsxs as o,Fragment as n}from"react/jsx-runtime";import{forwardRef as i,useState as r,useRef as a,useMemo as l,useEffect as c,useImperativeHandle as d}from"react";import{usePickaxeContext as u}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as m}from"../../../hooks/pickaxe/useResponseContext.js";import{useStyleInput as f}from"../../../hooks/studio/useStyleInput.js";import{useStyleFontSize as p}from"../../../hooks/studio/useStyleFontSize.js";import{useConversation as h}from"../../../hooks/pickaxe/useConversation.js";import{useAuthContext as g}from"../Addons/Auth/hooks/useAuthContext.js";import{useSubmit as v}from"../../../hooks/pickaxe/useSubmit.js";import{useDocument as b}from"../Addons/Document/hooks/useDocument.js";import{useScroll as j}from"../Addons/Scroll/hooks/useScroll.js";import{useArtifactContext as x}from"../Addons/Artifact/hooks/useArtifactContext.js";import{useSpeechRecognition as k}from"../../../hooks/pickaxe/useSpeechRecognition.js";import{useHover as y}from"../../../hooks/core/useHover.js";import{useMediaQuery as O}from"../../../hooks/core/useMediaQuery.js";import{allowedFileMimeTypes as w,allowedImageMimeTypes as I,additionalAllowedFileExtensions as N}from"../../../common/documents.js";import{createParser as S}from"eventsource-parser";import C from"../../Icons/attach-vertical.svg.js";import A from"../../Icons/arrow-right.svg.js";import E from"../../Icons/microphone.svg.js";import L from"../../Icons/stop.svg.js";import T from"../Addons/Document/List.js";import D from"../../Core/Textarea.js";import H from"../../Core/ErrorAlert.js";import W from"../../../common/error.js";import U from"../../../common/cn.js";const B=({colors:e})=>{var t;return o("div",Object.assign({className:"absolute left-4 top-1/2 flex -translate-y-1/2 items-center gap-x-2"},{children:[s("span",{className:"h-2 w-2 animate-pulse rounded-full",style:{backgroundColor:null!==(t=e.accent)&&void 0!==t?t:"#ff0000"}}),s("span",Object.assign({className:"text-sm",style:{color:e.text+"90"}},{children:"Listening..."}))]}))},J=i((({onFocus:i,onBlur:J,onInputHeightChange:_},F)=>{var M,R,$;const{formId:G,chatId:P,userId:z,studioUserId:K,embedUserId:Q,deploymentId:q,deploymentType:V,pickaxe:X,styles:Y,colors:Z,studioLang:ee,forceMobile:te,isNewChat:se,isRtl:oe,isEmailLogin:ne,isShowFeedbackMessage:ie,setIsNewChat:re,setIsShowIceBreaker:ae,onGenerateComplete:le}=u(),{token:ce,isLoggedOut:de,isSent:ue}=g(),{messages:me,status:fe,limits:pe,isGenerating:he,setMessages:ge,setStatus:ve,setLimitData:be,setError:je}=m(),{documents:xe,isUploading:ke,isImageUploadAllowed:ye,documentError:Oe,onFileUpload:we,setDocuments:Ie,setDocumentError:Ne}=b(),{scrollStartSession:Se,scrollEndSession:Ce,scrollToBottom:Ae}=j({auto:!0}),{artifacts:Ee,currentPopupType:Le,setArtifacts:Te,setCurrentArtifact:De}=x(),He=h(),We=v(),[Ue,Be]=r(""),Je=a(null),_e=a(""),{isSupported:Fe,isListening:Me,finalTranscript:Re,interimTranscript:$e,startListening:Ge,stopListening:Pe}=k({lang:ee||"en"}),[ze]=O("(max-width: 899px)"),Ke=y(),{isHover:Qe}=Ke,qe=e(Ke,["isHover"]),Ve=y(),{isHover:Xe}=Ve,Ye=e(Ve,["isHover"]),Ze=y(),{isHover:et}=Ze,tt=e(Ze,["isHover"]),st=y(),{isHover:ot}=st,nt=e(st,["isHover"]),it=p(),rt=f(),at="chat-input"===V&&se&&!ue,lt="chat-input"===V&&ne&&de&&ue,ct=l((()=>{var e,t,s;return!!se&&(!!X&&(!He.isLoading&&(!((null!==(t=null===(e=He.data)||void 0===e?void 0:e.messages.length)&&void 0!==t?t:0)>1)&&(!!(null===(s=X.icebreakers)||void 0===s?void 0:s.length)&&(!ie&&!at)))))}),[X,se,ie,at,He.data,He.isLoading]),dt=l((()=>{if(he||ke)return!1;const e=xe.length>0&&xe.every((e=>{var t;return"finished"===e.status&&(null===(t=e.documentId)||void 0===t?void 0:t.startsWith("IMAGE-"))}));return!(!Ue.trim()&&!e)&&xe.every((e=>"finished"===e.status||e.isInsertedAsRaw))}),[he,ke,Ue,xe]);c((()=>{ae(ct)}),[ct]),c((()=>{if(!Me)return;const e=`${_e.current} ${Re} ${$e}`.trim();Be(e)}),[Re,$e,Me]),c((()=>{!Me&&_e.current&&(Be(`${_e.current} ${Re}`.trim()),_e.current="")}),[Me,Re]);const ut=e=>t(void 0,void 0,void 0,(function*(){var t,s;try{if("idle"!==fe||ke||Me)return;const o=xe.filter((e=>"finished"===e.status&&!e.isInsertedAsRaw)).map((e=>e.documentId)).filter(Boolean),n=o.length>0&&o.every((e=>e.startsWith("IMAGE-"))),i=null!=e?e:Ue;if(!i&&!n)return;je(""),Ne(""),be(null),Be(""),re(!1),ve("fetching"),Se(),Ae();const r=null!==(s=null===(t=null==X?void 0:X.documentuploadtype)||void 0===t?void 0:t.startsWith("enduserupload"))&&void 0!==s&&s&&o.length>0,a=[...Array.from(me),Object.assign({id:me.length+1,role:"user",content:i},r&&{documentIds:o})];ge(a),Ae(),r&&Ie([]);const l=(yield We.mutateAsync(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({formId:G,responseId:P,value:i},r&&{documentIds:o}),z&&{userId:z}),K&&{studioUserId:K}),Q&&{embedUserId:Q}),ce&&{studioSessionToken:ce}),q&&{deploymentId:q}))).body;if(!l)throw new Error("Streaming error");const c=a.length,d=new TextDecoder,u=l.getReader();let m="",f=!0,p=!1,h=[...null!=Ee?Ee:[]];const g=S({onEvent:e=>{if("delta"===e.event){const t=JSON.parse(e.data).token.replace(/\u200B/g,"");m+=t,ge([...a.slice(0,c),{id:me.length+1,role:"assistant",content:m}])}else if("artifact_created"===e.event){const t=JSON.parse(e.data);h=h.filter((e=>!(e.id===t.id&&e.version===t.version))),h.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),Te(h),Le.startsWith("inline")||De({id:t.id,version:t.version})}else if("artifact_updated"===e.event){const t=JSON.parse(e.data);h=h.filter((e=>!(e.id===t.id&&e.version===t.version))),h.push(Object.assign(Object.assign({},t),{content:"",status:"updating"})),Te(h),Le.startsWith("inline")||De({id:t.id,version:t.version})}else if("artifact_rewrite"===e.event){const t=JSON.parse(e.data);h=h.filter((e=>!(e.id===t.id&&e.version===t.version))),h.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),Te(h),Le.startsWith("inline")||De({id:t.id,version:t.version})}else if("artifact_content"===e.event){const t=JSON.parse(e.data),s=t.token.replace(/\u200B/g,"");h=h.map((e=>e.id===t.id&&e.version===t.version?Object.assign(Object.assign({},e),{content:e.content+s,status:"streaming"}):e)),Te(h)}else if("artifact_finished"===e.event){const t=JSON.parse(e.data);Te(h.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);je(t.error||"Something went wrong, please try again.")}else"stop"===e.event&&(f=!1)}});for(;f;){const{value:e,done:t}=yield u.read();if(t){f=!1;break}const s=d.decode(e);s&&(p||(ve("streaming"),p=!0),g.feed(s))}null==le||le(P)}catch(e){let t=W(e)||"";t&&!t.includes("Unexpected token 'A',")||(t="Oops! We're experiencing high traffic at the moment. Please try again later.");const s=Object.entries(pe).find((([e])=>t.includes(e)));s?be(s[1]):je(t)}finally{Ae(),ve("idle"),Ce()}}));return d(F,(()=>({onSubmit:ut}))),lt?null:s("div",Object.assign({className:U("w-full flex flex-col items-center absolute bottom-0 left-0 z-1",!at&&"px-4 pb-4"),dir:oe?"rtl":"ltr"},{children:o("div",Object.assign({className:"relative flex flex-col max-w-[800px] w-full"},{children:[o("div",Object.assign({className:U("flex flex-col gap-y-3 px-4 py-3","block"===Y.formFieldStyle&&"shadow"),style:rt},{children:[Me&&s(B,{colors:Z}),"idle"===fe&&xe.length>0&&s(T,{isDisabled:"idle"!==fe}),o("div",Object.assign({className:U("flex items-end gap-x-2",oe&&"flex-row-reverse")},{children:[s(D,Object.assign({className:U(it.i1,"max-h-60 min-h-[27px] w-full border-transparent bg-transparent",!Ue.length&&"max-h-6 overflow-hidden text-ellipsis whitespace-nowrap",oe?"text-right":"text-left",Me&&"text-transparent"),value:Ue,placeholder:null!==(M=null==X?void 0:X.placeholdertext)&&void 0!==M?M:oe?"بماذا تريد أن تتحدث؟":"What do you want to talk about?",onChange:e=>{if(Be(e),_){const t=(e.match(/\n/g)||[]).length+1;if(t>=11)return;_(24*(t-1))}},onKeyDown:e=>{te||ze||"Enter"===e.key&&(e.shiftKey||(e.preventDefault(),ke||"idle"!==fe||ut()))}},i&&{onFocus:i},J&&{onBlur:J},{dir:oe?"rtl":"ltr"})),s("div",Object.assign({className:"flex items-center gap-x-2"},{children:Me?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",onClick:Pe,style:{backgroundColor:ot?Z.accent:Z.accent+"10",color:ot?Z.accentText:Z.accent}},nt,{children:s(L,{className:"h-4 w-4 shrink-0"})})):o(n,{children:[null!==($=null===(R=null==X?void 0:X.documentuploadtype)||void 0===R?void 0:R.startsWith("enduserupload"))&&void 0!==$&&$&&o("button",Object.assign({className:"outline-none disabled:cursor-default w-8 h-8 flex items-center justify-center rounded-full transition-colors duration-200 ease-in-out",style:{backgroundColor:Xe?Z.accent+"10":void 0,color:Xe?Z.accent:Z.accent+"80"},disabled:ke||"idle"!==fe,onClick:()=>{var e;return null===(e=Je.current)||void 0===e?void 0:e.click()}},Ye,{children:[s("input",{id:"file-upload",ref:Je,type:"file",accept:[...w,...ye?I:[],...N].join(", "),multiple:!0,hidden:!0,className:"hidden",onChange:e=>t(void 0,void 0,void 0,(function*(){re(!1),yield we(Array.from(e.target.files||[])),e.target.value=""}))}),s(C,{className:"h-6 w-6 shrink-0"})]})),Fe&&(null==X?void 0:X.enablevoicetotext)&&s("button",Object.assign({className:"flex h-8 w-8 items-center \n justify-center rounded-full\n outline-none transition-colors \n duration-200 ease-in-out\n disabled:cursor-default",style:{backgroundColor:Me?Z.accent:et?Z.accent+"10":void 0,color:Me?Z.accentText:et?Z.accent:Z.accent+"80"},disabled:ke||"idle"!==fe,onClick:()=>{Me?Pe():(_e.current=Ue,Ge())}},tt,{children:s(E,{className:"h-5 w-5 shrink-0"})})),s("button",Object.assign({className:"outline-none disabled:cursor-default w-8 h-8 flex items-center justify-center rounded-full duration-200 transition-colors ease-in-out",style:{backgroundColor:Qe||dt?Z.accent:Z.accent+"10",color:Qe||dt?Z.accentText:Z.accent+"80"},disabled:"idle"!==fe||ke,onClick:()=>ut()},qe,{children:s(A,{className:U("h-6 w-6 shrink-0",oe&&"transform scale-x-[-1]")})}))]})}))]}))]})),Oe&&s(H,{error:Oe,className:"mt-3"})]}))}))}));J.displayName="Input";export{J as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{jsx as e,Fragment as i,jsxs as t}from"react/jsx-runtime";import r from"../../../common/cn.js";import o from"./PickaxeButton.js";import{useStyleFontSize as a}from"../../../hooks/studio/useStyleFontSize.js";import{useState as s}from"react";import{AnimatePresence as n,motion as l}from"framer-motion";import m from"./PickaxeInput.js";import{usePickaxeContext as c}from"../../../hooks/pickaxe/usePickaxeContext.js";const u=({isUp:u,submitThumbsUp:p,submitThumbsDown:f})=>{var b,d;const h=a(),{translations:x}=c(),[k,v]=s("");return e(i,{children:e(n,{children:t(l.form,Object.assign({initial:{opacity:0,y:-4,filter:"blur(4px)"},animate:{opacity:1,y:0,filter:"blur(0px)"},exit:{opacity:0,y:-4,filter:"blur(4px)"},transition:{type:"spring",bounce:0,duration:.4},onSubmit:e=>((e,i)=>{e.preventDefault(),k.trim()&&(v(""),u?p(i):f(i))})(e,k),className:"flex w-9/12 items-center gap-2"},{children:[e(m,{value:k,onChange:e=>v(e.target.value),className:r(h.b3,"flex-1 py-1.5"),placeholder:null!==(b=null==x?void 0:x["feedback-dislike-input-placeholder"])&&void 0!==b?b:"Write here..."}),e(o,Object.assign({className:r(h.b3,"min-h-9 active:scale-[.96]"),isDisabled:!k.trim()},{children:null!==(d=null==x?void 0:x["feedback-submit"])&&void 0!==d?d:"Submit"}))]}))})})};export{u 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 o}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useSubmitFeedback as a}from"../../../hooks/pickaxe/useSubmitFeedback.js";import{useThumbSelection as n}from"../../../hooks/pickaxe/useThumbSelection.js";import{AnimatePresence as
|
|
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 o}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useSubmitFeedback as a}from"../../../hooks/pickaxe/useSubmitFeedback.js";import{useThumbSelection as n}from"../../../hooks/pickaxe/useThumbSelection.js";import{AnimatePresence as l,motion as c}from"framer-motion";import r from"../../Icons/message-square-notes.svg.js";import m from"../../Icons/thumbs-down.svg.js";import p from"../../Icons/thumbs-up.svg.js";import u from"./PickaxeSimpleButton.js";import d from"./PickaxeCopyButton.js";import b from"./PickaxeFeedbackThumbsDownReasons.js";import h from"../../../common/cn.js";const f=({content:f,index:x=0,chatCount:k,responseId:g,isForm:y,isHideFeedback:v,onOpenChat:j})=>{var w,O,N,T;const{mutateAsync:D}=a(),{colors:S,translations:C,pickaxe:F,setIsShowFeedbackMessage:I}=o(),P=t(),{toggleThumb:U,submitThumbsDown:R,submitThumbsUp:z,isThumbsUpSelected:B,isThumbsDownSelected:H,showThumbsDownOptions:W,showThumbsUpOptions:q,showSuccess:A}=n({content:f,index:x,responseId:g,successDuration:2e3,thumbsDownPromptRate:.3,onThumbsDownReasonOpen:()=>I(!0),onThumbsDownReasonClose:()=>I(!1),submit:D}),M="function"==typeof j&&!!(null==F?void 0:F.enablechatresponses)&&void 0!==g&&void 0!==k,E=Boolean((null==F?void 0:F.enablechatresponses)&&!j||!(null==F?void 0:F.enablechatresponses)&&y)&&!v;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:[M&&e(u,Object.assign({color:S.accent,onClick:j},{children:[s(r,{className:"h-4 w-4 shrink-0"}),s("p",Object.assign({className:h(P.b3,"font-semibold")},{children:k}))]})),s(d,{color:S.accent,text:f}),E&&e(i,{children:[s(u,Object.assign({color:S.accent,onClick:()=>U("like"),className:"transition-all active:rotate-12 active:scale-90"},{children:s(p,{className:"size-4",style:{fill:S.text,fillOpacity:B?.3:0}})})),s(u,Object.assign({color:S.accent,onClick:()=>U("dislike"),className:"transition-all active:-rotate-12 active:scale-90"},{children:s(m,{className:"size-4",style:{fill:S.text,fillOpacity:H?.3:0}})})),s(l,{children:A&&s(c.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:h(P.b4,S.secondary,"opacity-75")},{children:null!==(w=null==C?void 0:C["feedback-thanks"])&&void 0!==w?w:"Thanks for the feedback!"}))}))})]})]})),s(l,{children:(W||q)&&e(c.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:h(P.b3,S.text)},{children:q?null!==(O=null==C?void 0:C["feedback-like-title"])&&void 0!==O?O:"What went right?":null!==(N=null==C?void 0:C["feedback-dislike-title"])&&void 0!==N?N:"What went wrong?"})),s("p",Object.assign({className:h(P.b3,S.secondary,"opacity-75")},{children:null!==(T=null==C?void 0:C["feedback-dislike-message"])&&void 0!==T?T:"Help us improve our answers"}))]})),s(c.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(b,{isUp:q,submitThumbsDown:R,submitThumbsUp:z})}))]}))})]}))};export{f as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useState as e}from"react";import{useCreateFeedbackPayload as s}from"./useCreateFeedbackPayload.js";const n=({content:n,index:t,responseId:
|
|
1
|
+
import{useState as e}from"react";import{useCreateFeedbackPayload as s}from"./useCreateFeedbackPayload.js";const n=({content:n,index:t,responseId:i,submit:o,onThumbsDownReasonOpen:l,onThumbsDownReasonClose:c,onThumbsUpReasonOpen:u,onThumbsUpReasonClose:a,successDuration:b=3e3,thumbsDownPromptRate:d=1,thumbsUpPromptRate:m=1})=>{const r=s({content:n,index:t,responseId:i}),[k,p]=e(null),[h,T]=e(!1),[f,g]=e(!1),[O,j]=e(!1),w=()=>{j(!0),setTimeout((()=>j(!1)),b)},D=()=>{h&&(T(!1),null==c||c()),f&&(g(!1),null==a||a())};return{selectedThumb:k,showThumbsDownOptions:h,showThumbsUpOptions:f,toggleThumb:e=>{if("like"===e){const e="like"===k&&f,s=!e&&Math.random()<m;return D(),s?(p("like"),g(!0),void(null==u||u())):e?void p(null):(p("like"),o(Object.assign(Object.assign({},r),{feedbackType:"like",content:n})),void w())}if("dislike"===e){const e="dislike"===k&&h,s=!e&&Math.random()<d;if(D(),s)return p("dislike"),T(!0),void(null==l||l());if(e)return void p(null);p("dislike"),o(Object.assign(Object.assign({},r),{feedbackType:"dislike",content:n})),w()}},submitThumbsDown:e=>{o(Object.assign(Object.assign({},r),{feedbackType:"dislike",content:n,feedbackMessage:e})),D(),w()},submitThumbsUp:e=>{o(Object.assign(Object.assign({},r),{feedbackType:"like",content:n,feedbackMessage:e})),D(),w()},isThumbsUpSelected:"like"===k,isThumbsDownSelected:"dislike"===k,showSuccess:O}};export{n as useThumbSelection};
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
interface PickaxeFeedbackThumbsDownReasonsProps {
|
|
2
|
+
isUp: boolean;
|
|
2
3
|
submitThumbsDown: (feedbackMessage: string) => void;
|
|
4
|
+
submitThumbsUp: (feedbackMessage: string) => void;
|
|
3
5
|
}
|
|
4
|
-
declare const PickaxeFeedbackThumbsDownReasons: ({ submitThumbsDown, }: PickaxeFeedbackThumbsDownReasonsProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
declare const PickaxeFeedbackThumbsDownReasons: ({ isUp, submitThumbsUp, submitThumbsDown, }: PickaxeFeedbackThumbsDownReasonsProps) => import("react/jsx-runtime").JSX.Element;
|
|
5
7
|
export default PickaxeFeedbackThumbsDownReasons;
|
|
@@ -7,14 +7,19 @@ interface useThumbSelectionArgs {
|
|
|
7
7
|
submit: UseMutateAsyncFunction<void, unknown, Feedback, unknown>;
|
|
8
8
|
onThumbsDownReasonOpen?: () => void;
|
|
9
9
|
onThumbsDownReasonClose?: () => void;
|
|
10
|
+
onThumbsUpReasonOpen?: () => void;
|
|
11
|
+
onThumbsUpReasonClose?: () => void;
|
|
10
12
|
successDuration?: number;
|
|
11
13
|
thumbsDownPromptRate?: number;
|
|
14
|
+
thumbsUpPromptRate?: number;
|
|
12
15
|
}
|
|
13
|
-
export declare const useThumbSelection: ({ content, index, responseId, submit, onThumbsDownReasonOpen, onThumbsDownReasonClose, successDuration, thumbsDownPromptRate, }: useThumbSelectionArgs) => {
|
|
16
|
+
export declare const useThumbSelection: ({ content, index, responseId, submit, onThumbsDownReasonOpen, onThumbsDownReasonClose, onThumbsUpReasonOpen, onThumbsUpReasonClose, successDuration, thumbsDownPromptRate, thumbsUpPromptRate, }: useThumbSelectionArgs) => {
|
|
14
17
|
selectedThumb: "like" | "dislike" | null;
|
|
15
18
|
showThumbsDownOptions: boolean;
|
|
19
|
+
showThumbsUpOptions: boolean;
|
|
16
20
|
toggleThumb: (type: "like" | "dislike") => void;
|
|
17
21
|
submitThumbsDown: (feedbackMessage: string) => void;
|
|
22
|
+
submitThumbsUp: (feedbackMessage: string) => void;
|
|
18
23
|
isThumbsUpSelected: boolean;
|
|
19
24
|
isThumbsDownSelected: boolean;
|
|
20
25
|
showSuccess: boolean;
|
|
@@ -3,7 +3,7 @@ export type PickaxeImageOrText = "text" | "image";
|
|
|
3
3
|
export type PickaxePrivacySetting = "public" | "unlisted" | "private" | "deleted";
|
|
4
4
|
export type PickaxeCloneable = "true" | "false";
|
|
5
5
|
export type PickaxeDocumentUploadType = "ownerupload" | "enduserupload" | "enduserupload-user";
|
|
6
|
-
export type PickaxeModel = "gpt-3.5-turbo" | "gpt-4-1106-preview" | "mistral-small" | "gpt-5" | "gpt-5-mini" | "gpt-5-nano" | "gpt-4.1" | "gpt-4.1-mini" | "gpt-4.1-nano" | "gpt-4o-mini" | "gpt-4o" | "gpt-4" | "o3-mini" | "
|
|
6
|
+
export type PickaxeModel = "gpt-3.5-turbo" | "gpt-4-1106-preview" | "mistral-small" | "gpt-5" | "gpt-5-mini" | "gpt-5-nano" | "gpt-5-chat-latest" | "gpt-4.1" | "gpt-4.1-mini" | "gpt-4.1-nano" | "gpt-4o-mini" | "gpt-4o" | "gpt-4" | "o3-mini" | "o4-mini" | "o3" | "o1" | "gemini-1.5-flash" | "gemini-1.5-pro" | "gemini-2.0-flash-lite" | "gemini-2.0-flash" | "gemini-2.5-pro-preview-05-06" | "gemini-2.5-flash-preview-05-20" | "deepseek-chat" | "mistral-large-latest" | "claude-3-opus-20240229" | "claude-3-7-sonnet-20250219" | "claude-sonnet-4-20250514" | "claude-opus-4-20250514" | "claude-opus-4-1-20250805" | "grok-3-latest" | "grok-4-latest" | "grok-4-fast-non-reasoning-latest" | "grok-4-fast-reasoning-latest" | "llama-3-uncensored" | "sonar" | "sonar-pro" | "sonar-reasoning" | "sonar-reasoning-pro" | "sonar-deep-research";
|
|
7
7
|
export type Pickaxe = {
|
|
8
8
|
_id: string;
|
|
9
9
|
formid: string;
|