@pickaxeproject/react 0.0.17 → 0.0.19

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.
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../_virtual/_tslib.js"),r=require("react/jsx-runtime"),t=require("react"),s=require("react-dom"),i=require("./index.js"),o=require("../../../hooks/core/useOutsideAlerter.js"),a=require("../../../common/utils.js"),c=require("framer-motion"),l=require("../../../common/cn.js");const n=t.forwardRef(((n,u)=>{var{children:d,className:m,avoidOverflow:f=!1}=n,b=e.__rest(n,["children","className","avoidOverflow"]);const p=document.createElement("div"),x=t.useRef(),h=t.useRef(p),{closeOnOutsideClick:y,setIsOpen:v}=t.useContext(i.ModalContext);return o.useOutsideAlerter({ref:x,callback:()=>{y&&v(!1)}}),t.useEffect((()=>{const e=document.querySelector("main");if(!e)return;const r=e.getAttribute("class");if(!r)return;const t=h.current;return t.setAttribute("id",a.randomStr(5)+"-modal"),t.setAttribute("class","fixed inset-0 z-50 flex items-center justify-center backdrop-blur-sm bg-black/20 "+r),document.body.appendChild(t),()=>{document.body.removeChild(t)}}),[]),h.current?s.createPortal(r.jsx(c.motion.div,Object.assign({initial:{y:300,opacity:0},animate:{y:0,opacity:1},exit:{y:300,opacity:0},transition:{type:"spring",stiffness:260,damping:20},className:l.default(f&&"max-h-[100vh] overflow-auto scrollbar scrollbar-thumb-black/50 scrollbar-thumb-rounded-full scrollbar-w-[4px] scrollbar-h-[4px]",m,"p-0")},{children:r.jsx("div",Object.assign({ref:e=>{e&&(x.current=e,"function"==typeof u?u(e):u&&(u.current=e))}},b,{className:l.default("animate-fade-in flex flex-col rounded border border-black/30 bg-white shadow-md",m)},{children:d}))})),h.current):r.jsx(r.Fragment,{children:null})}));n.displayName="ModalBody",exports.default=n;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../_virtual/_tslib.js"),r=require("react/jsx-runtime"),t=require("react"),s=require("react-dom"),a=require("./index.js"),i=require("../../../hooks/core/useOutsideAlerter.js"),o=require("../../../common/utils.js"),n=require("framer-motion"),c=require("../../../common/cn.js");const l=t.forwardRef(((l,u)=>{var{children:d,className:m,avoidOverflow:f=!1}=l,b=e.__rest(l,["children","className","avoidOverflow"]);const p=document.createElement("div"),x=t.useRef(),y=t.useRef(p),{closeOnOutsideClick:h,setIsOpen:v}=t.useContext(a.ModalContext);return i.useOutsideAlerter({ref:x,callback:()=>{h&&v(!1)}}),t.useEffect((()=>{const e=document.querySelector("main");if(!e)return;const r=e.getAttribute("class");if(!r)return;const t=y.current;return t.setAttribute("id",o.randomStr(5)+"-modal"),t.setAttribute("class","fixed inset-0 z-50 flex items-center justify-center backdrop-blur-sm bg-black/20 "+r),document.body.appendChild(t),()=>{document.body.removeChild(t)}}),[]),y.current?s.createPortal(r.jsx(n.motion.div,Object.assign({initial:{y:300,opacity:0},animate:{y:0,opacity:1},exit:{y:300,opacity:0},transition:{type:"spring",stiffness:260,damping:20},className:c.default(f&&"max-h-[100vh] overflow-auto scrollbar scrollbar-thumb-black/50 scrollbar-thumb-rounded-full scrollbar-w-[4px] scrollbar-h-[4px]",m,"p-0")},{children:r.jsx("div",Object.assign({ref:e=>{e&&(x.current=e,"function"==typeof u?u(e):u&&(u.current=e))}},b,{className:c.default("animate-fade-in flex flex-col rounded border border-transparent shadow-md",m)},{children:d}))})),y.current):r.jsx(r.Fragment,{children:null})}));l.displayName="ModalBody",exports.default=l;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("../../../../hooks/pickaxe/usePickaxeContext.js"),a=require("../../common/PickaxeIcon.js"),t=require("../../common/PickaxeMarkdown.js"),l=require("../../common/PickaxeCopyButton.js");exports.default=({message:c})=>{var o;const{formId:r,pickaxe:x,colors:i}=s.usePickaxeContext(),n=null!==(o=null==x?void 0:x.chaticon)&&void 0!==o?o:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/chaticons/${r}.png`;return"assistant"===c.role?e.jsx("div",Object.assign({className:"flex max-w-[80%] flex-col max-[767px]:max-w-full"},{children:e.jsxs("div",Object.assign({className:"flex gap-x-3"},{children:["NONE"!==n&&e.jsx(a.default,{src:n,alt:"Assistant",width:24,height:24,className:"my-3 h-6 w-6",textColor:i.text}),e.jsxs("div",Object.assign({className:"flex flex-col"},{children:[e.jsx("div",Object.assign({className:"chat-message overflow-x-auto overflow-y-hidden rounded px-4 py-3 scrollbar-thin scrollbar-track-white scrollbar-thumb-[#4A4A4B]",style:{backgroundColor:i.secondary+"80",color:i.secondaryText}},{children:e.jsx(t.default,{className:"relative max-[767px]:text-sm",html:c.content})})),e.jsx("div",Object.assign({className:"mb-2 ml-2 mt-4 flex gap-3"},{children:e.jsx(l.default,{color:i.accent,text:c.content})}))]}))]}))})):"user"===c.role?e.jsx("div",Object.assign({className:"flex max-w-[80%] gap-x-3 justify-self-end max-[767px]:max-w-full max-[767px]:pl-9"},{children:e.jsx("div",Object.assign({className:"overflow-x-auto overflow-y-hidden rounded px-4 py-3 scrollbar-thin scrollbar-track-white scrollbar-thumb-[#4A4A4B]"},{children:e.jsx(t.default,{className:"relative max-[767px]:text-sm",html:c.content})}))})):e.jsx("div",{})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("../../../../hooks/pickaxe/usePickaxeContext.js"),a=require("../../common/PickaxeIcon.js"),t=require("../../common/PickaxeMarkdown.js"),o=require("../../common/PickaxeCopyButton.js");exports.default=({message:c})=>{var l;const{formId:r,pickaxe:i,colors:x}=s.usePickaxeContext(),n=null!==(l=null==i?void 0:i.chaticon)&&void 0!==l?l:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/chaticons/${r}.png`;return"assistant"===c.role?e.jsx("div",Object.assign({className:"flex flex-col @[767px]/pickaxe-root:max-w-[80%]"},{children:e.jsxs("div",Object.assign({className:"flex gap-x-3"},{children:["NONE"!==n&&e.jsx(a.default,{src:n,alt:"Assistant",width:24,height:24,className:"my-3 h-6 w-6",textColor:x.text}),e.jsxs("div",Object.assign({className:"flex flex-col"},{children:[e.jsx("div",Object.assign({className:"chat-message overflow-x-auto overflow-y-hidden rounded px-4 py-3 scrollbar-thin scrollbar-track-white scrollbar-thumb-[#4A4A4B]",style:{backgroundColor:x.secondary+"80",color:x.secondaryText}},{children:e.jsx(t.default,{className:"relative text-sm @[767px]/pickaxe-root:text-base",html:c.content})})),e.jsx("div",Object.assign({className:"mb-2 ml-2 mt-4 flex gap-3"},{children:e.jsx(o.default,{color:x.accent,text:c.content})}))]}))]}))})):"user"===c.role?e.jsx("div",Object.assign({className:"flex gap-x-3 justify-self-end @[767px]/pickaxe-root:max-w-[80%] pl-9 @[767px]/pickaxe-root:pl-0"},{children:e.jsx("div",Object.assign({className:"overflow-x-auto overflow-y-hidden rounded px-4 py-3 scrollbar-thin scrollbar-track-white scrollbar-thumb-[#4A4A4B]"},{children:e.jsx(t.default,{className:"relative text-sm @[767px]/pickaxe-root:text-base",html:c.content})}))})):e.jsx("div",{})};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("react"),a=require("../../../../hooks/pickaxe/usePickaxeContext.js"),t=require("../../../../hooks/pickaxe/useResponseContext.js"),l=require("../../../../hooks/pickaxe/useConversation.js"),i=require("../../../Icons/circle-info.svg.js"),o=require("../../common/PickaxeIcon.js"),c=require("../../../Core/HtmlRenderer.js"),n=require("../../Addons/Scroll/ScrollLockView.js"),r=require("../../InfoModal.js"),d=require("./Message.js"),x=require("../../../../common/cn.js");exports.default=()=>{var u;const{pickaxe:m,colors:j,isNewChat:f}=a.usePickaxeContext(),{messages:p,status:g,error:h}=t.useResponseContext(),v=l.useConversation(),[b,w]=s.useState(!1),N=s.useMemo((()=>!!v.data&&!(v.data.messages.length<=1)),[v.data]),y=s.useMemo((()=>v.isSuccess&&f&&!N),[v.isSuccess,f,N]);return e.jsxs("div",Object.assign({className:"relative flex flex-grow flex-col justify-end"},{children:[b&&e.jsx(r.default,{isOpen:b,onChangeIsOpen:w}),e.jsxs("div",Object.assign({className:x.default("absolute left-1/2 top-5 flex w-full max-w-[400px] -translate-x-1/2 -translate-y-1/3 transform flex-col items-center px-4 opacity-0 duration-300",y&&"top-1/3 opacity-100")},{children:[e.jsx(o.default,{src:null==m?void 0:m.coverphoto,alt:`${null==m?void 0:m.formtitle}'s Profile Picture`,width:90,height:90,className:"h-[90px] w-[90px] rounded-full"}),e.jsxs("div",Object.assign({className:"flex flex-col items-center"},{children:[e.jsxs("h2",Object.assign({className:"mt-6 text-center text-lg font-semibold opacity-70 max-[767px]:text-base"},{children:[`${null==m?void 0:m.formtitle.slice(0,130)}${(null!==(u=null==m?void 0:m.formtitle)&&void 0!==u?u:"").length>130?"...":""}`,e.jsx("button",Object.assign({className:"ml-2 inline-block outline-none hover:opacity-70 hover:duration-300 active:opacity-100",onClick:()=>w(!0)},{children:e.jsx(i.default,{className:"h-5 w-5 shrink-0",style:{color:j.accent}})}))]})),e.jsx("p",Object.assign({className:"mt-2 line-clamp-3 whitespace-pre-line max-w-[600px] text-center font-semilight opacity-70"},{children:null==m?void 0:m.formdescription}))]}))]})),e.jsx("div",Object.assign({className:"flex w-full justify-center"},{children:v.isLoading?e.jsxs("div",Object.assign({className:"grid w-full max-w-[800px] grid-cols-1 gap-y-6 px-6 pt-10"},{children:[e.jsx("div",{className:"h-10 w-[70%] animate-pulse justify-self-end rounded bg-[#E5E7EB] dark:bg-[#1E1E1F]"}),e.jsx("div",{className:"h-[150px] w-[70%] animate-pulse rounded bg-[#E5E7EB] dark:bg-[#1E1E1F]"}),e.jsx("div",{className:"h-10 w-[50%] animate-pulse justify-self-end rounded bg-[#E5E7EB] dark:bg-[#1E1E1F]"})]})):v.isError?e.jsx("div",Object.assign({className:"flex w-full max-w-[800px] justify-center pt-10"},{children:e.jsxs("p",Object.assign({className:"text-center text-xl font-semibold"},{children:["Something went wrong. Please try again, or"," ",e.jsx("a",Object.assign({href:"mailto:info@pickaxeproject.com?subject=Help"},{children:"contact us"}))," ","for help."]}))})):e.jsxs("div",Object.assign({className:"relative grid w-full max-w-[800px] grid-cols-1 gap-y-6 px-4 pt-10 max-[767px]:pt-6"},{children:[v.data.messages.map(((s,a)=>e.jsx(d.default,{message:s},a))),p.map(((s,a)=>e.jsx(d.default,{message:s},a))),"fetching"===g?e.jsxs("div",Object.assign({className:"flex max-w-[80%] items-center gap-x-3"},{children:["NONE"!==(null==m?void 0:m.chaticon)&&e.jsx(o.default,{src:null==m?void 0:m.chaticon,alt:`${null==m?void 0:m.formtitle}'s Chat Icon`,width:24,height:24,className:"h-6 w-6"}),e.jsxs("div",Object.assign({className:"flex items-center gap-x-2 rounded px-4 py-4",style:{backgroundColor:j.secondary+"80",color:j.secondaryText}},{children:[e.jsx("div",{className:"h-1.5 w-1.5 animate-dot rounded-full",style:{backgroundColor:j.secondaryText}}),e.jsx("div",{className:"h-1.5 w-1.5 animate-dot-down rounded-full",style:{backgroundColor:j.secondaryText}}),e.jsx("div",{className:"h-1.5 w-1.5 animate-dot rounded-full",style:{backgroundColor:j.secondaryText}})]}))]})):h?e.jsxs("div",Object.assign({className:"flex max-w-[80%] gap-x-3"},{children:[e.jsx(i.default,{className:"mt-2 h-6 w-6 shrink-0 text-red-500"}),e.jsx(c.default,{className:"x-4 py-2 font-semibold text-red-500",html:h})]})):null,e.jsx(n.default,{className:"absolute bottom-0 left-0 w-full"})]}))}))]}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("react"),a=require("../../../../hooks/pickaxe/usePickaxeContext.js"),t=require("../../../../hooks/pickaxe/useResponseContext.js"),l=require("../../../../hooks/pickaxe/useConversation.js"),i=require("../../../Icons/circle-info.svg.js"),o=require("../../common/PickaxeIcon.js"),r=require("../../../Core/HtmlRenderer.js"),c=require("../../Addons/Scroll/ScrollLockView.js"),n=require("../../common/PickaxeInfoModal.js"),d=require("./Message.js"),x=require("../../../../common/cn.js");exports.default=()=>{var u;const{pickaxe:m,styles:j,colors:p,isNewChat:f}=a.usePickaxeContext(),{messages:g,status:h,error:b}=t.useResponseContext(),v=l.useConversation(),[k,w]=s.useState(!1),y=s.useMemo((()=>!!v.data&&!(v.data.messages.length<=1)),[v.data]),E=s.useMemo((()=>v.isSuccess&&f&&!y),[v.isSuccess,f,y]);return e.jsxs("div",Object.assign({className:"relative flex flex-grow flex-col justify-end"},{children:[k&&e.jsx(n.default,{isOpen:k,onChangeIsOpen:w}),e.jsxs("div",Object.assign({className:x.default("absolute left-1/2 top-5 flex w-full max-w-[400px] -translate-x-1/2 -translate-y-1/3 transform flex-col items-center px-4 opacity-0 duration-300",E&&"top-1/3 opacity-100")},{children:[e.jsx(o.default,{src:null==m?void 0:m.coverphoto,alt:`${null==m?void 0:m.formtitle}'s Profile Picture`,width:90,height:90,className:"h-[90px] w-[90px] rounded-full"}),e.jsxs("div",Object.assign({className:"flex flex-col items-center"},{children:[e.jsxs("h2",Object.assign({className:"mt-6 text-center font-semibold opacity-70 @[767px]/pickaxe-root:text-lg"},{children:[`${null==m?void 0:m.formtitle.slice(0,130)}${(null!==(u=null==m?void 0:m.formtitle)&&void 0!==u?u:"").length>130?"...":""}`,e.jsx("button",Object.assign({className:"ml-2 inline-block outline-none hover:opacity-70 hover:duration-300 active:opacity-100",onClick:()=>w(!0)},{children:e.jsx(i.default,{className:"h-5 w-5 shrink-0",style:{color:p.accent}})}))]})),e.jsx("p",Object.assign({className:"mt-2 line-clamp-3 whitespace-pre-line max-w-[600px] text-center font-semilight opacity-70"},{children:null==m?void 0:m.formdescription}))]}))]})),e.jsx("div",Object.assign({className:"flex w-full justify-center"},{children:v.isLoading?e.jsxs("div",Object.assign({className:"grid w-full max-w-[800px] grid-cols-1 gap-y-6 px-6 pt-10"},{children:[e.jsx("div",{className:"h-10 w-[70%] animate-pulse justify-self-end rounded bg-[#E5E7EB] dark:bg-[#1E1E1F]",style:{backgroundColor:"dark"===j.theme?"#1E1E1F":"#E5E7EB"}}),e.jsx("div",{className:"h-[150px] w-[70%] animate-pulse rounded bg-[#E5E7EB] dark:bg-[#1E1E1F]",style:{backgroundColor:"dark"===j.theme?"#1E1E1F":"#E5E7EB"}}),e.jsx("div",{className:"h-10 w-[50%] animate-pulse justify-self-end rounded bg-[#E5E7EB] dark:bg-[#1E1E1F]",style:{backgroundColor:"dark"===j.theme?"#1E1E1F":"#E5E7EB"}})]})):v.isError?e.jsx("div",Object.assign({className:"flex w-full max-w-[800px] justify-center pt-10"},{children:e.jsxs("p",Object.assign({className:"text-center text-xl font-semibold"},{children:["Something went wrong. Please try again, or"," ",e.jsx("a",Object.assign({href:"mailto:info@pickaxeproject.com?subject=Help"},{children:"contact us"}))," ","for help."]}))})):e.jsxs("div",Object.assign({className:"relative grid w-full max-w-[800px] grid-cols-1 gap-y-6 px-4 pt-6 @[767px]/pickaxe-root:pt-10"},{children:[v.data.messages.map(((s,a)=>e.jsx(d.default,{message:s},a))),g.map(((s,a)=>e.jsx(d.default,{message:s},a))),"fetching"===h?e.jsxs("div",Object.assign({className:"flex max-w-[80%] items-center gap-x-3"},{children:["NONE"!==(null==m?void 0:m.chaticon)&&e.jsx(o.default,{src:null==m?void 0:m.chaticon,alt:`${null==m?void 0:m.formtitle}'s Chat Icon`,width:24,height:24,className:"h-6 w-6"}),e.jsxs("div",Object.assign({className:"flex items-center gap-x-2 rounded px-4 py-4",style:{backgroundColor:p.secondary+"80",color:p.secondaryText}},{children:[e.jsx("div",{className:"h-1.5 w-1.5 animate-dot rounded-full",style:{backgroundColor:p.secondaryText}}),e.jsx("div",{className:"h-1.5 w-1.5 animate-dot-down rounded-full",style:{backgroundColor:p.secondaryText}}),e.jsx("div",{className:"h-1.5 w-1.5 animate-dot rounded-full",style:{backgroundColor:p.secondaryText}})]}))]})):b?e.jsxs("div",Object.assign({className:"flex max-w-[80%] gap-x-3"},{children:[e.jsx(i.default,{className:"mt-2 h-6 w-6 shrink-0 text-red-500"}),e.jsx(r.default,{className:"x-4 py-2 font-semibold text-red-500",html:b})]})):null,e.jsx(c.default,{className:"absolute bottom-0 left-0 w-full"})]}))}))]}))};
@@ -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"),o=require("../../../hooks/core/useMediaQuery.js"),r=require("../../../hooks/pickaxe/usePickaxeContext.js"),a=require("../../../hooks/pickaxe/useResponseContext.js"),n=require("../../../hooks/studio/useStyleInput.js"),i=require("../../../hooks/pickaxe/useConversation.js"),l=require("../../../hooks/pickaxe/useSubmit.js"),d=require("../../../hooks/pickaxe/useSubmitResult.js"),u=require("../Addons/Document/hooks/useDocument.js"),c=require("../Addons/Scroll/hooks/useScroll.js"),m=require("../../../common/documents.js"),p=require("../../../common/api/streamer.js"),h=require("../../../node_modules/.pnpm/react-textarea-autosize@8.5.7_@types_react@18.3.18_react@18.3.1/node_modules/react-textarea-autosize/dist/react-textarea-autosize.esm.js"),x=require("../../Icons/attach.svg.js"),f=require("../../Icons/send.svg.js"),g=require("../Addons/IceBreaker/index.js"),y=require("../../../common/error.js"),j=require("../../../common/cn.js");exports.default=()=>{var v,b,w,k;const{formId:I,chatId:q,pickaxe:S,colors:D,isNewChat:A,setIsNewChat:C}=r.usePickaxeContext(),{messages:_,status:N,setMessages:R,setStatus:E,setError:O}=a.useResponseContext(),{documents:M,isUploading:U,isImageUploadAllowed:T,upsertDocuments:z,onFileUpload:B,onEditDocumentByDocId:F}=u.useDocument(),{isScrollIncreasing:P,scrollToBottom:K,scrollStart:L,scrollEnd:Q}=c.useScroll(),W=i.useConversation(),H=l.useSubmit(),Y=d.useSubmitResult(),[G,J]=t.useState(""),V=t.useRef(null),[X]=o.useMediaQuery("(max-width: 767px)"),Z=n.useStyleInput(),$=s=>e.__awaiter(void 0,void 0,void 0,(function*(){try{if(U)return;O(""),C(!1);const e=null!=s?s:G;if(!e||"fetching"===N||"streaming"===N)return;const t=new Date;J("");const o="enduserupload"===(null==S?void 0:S.documentuploadtype),r=M.filter((e=>"finished"===e.status&&!e.isInsertedAsRaw)),a=r.length?r[r.length-1].documentId:"";E("fetching");const n=[..._,{id:_.length+1,role:"user",content:e}];R(n);const{success:i,data:l,usedDocumentIds:d,newDocumentId:u,newDocumentName:c,isInsertedFile:m,error:h}=yield H.mutateAsync(Object.assign({formId:I,responseId:q,value:e},o&&a&&{documentId:a}));if(!i)throw new Error(null!=h?h:"An error occurred, please try again.");m&&a&&F({documentId:a,isInsertedAsRaw:!0}),u&&c&&z([{type:"website",id:c,name:c,status:"finished",documentId:u}]),L(),K();const x=(yield p.streamer({formId:I,responseId:q,data:l})).body;if(!x)throw new Error("Streaming error");const f=x.getReader(),g=new TextDecoder,y=n.length;let j="",v=!0;for(E("streaming");v;){const{value:e,done:s}=yield f.read();v=!s;if(j+=g.decode(e),j)R([...n.slice(0,y),{id:_.length+1,role:"assistant",content:j}]),P&&K();else if(!v&&!j)throw new Error("Server error")}const b=new Date;j&&(K(),E("idle"),yield Y.mutateAsync({formId:I,responseId:q,documentIds:d,studioUserId:"USER68RFBSHU4YS2I4L",messages:[{role:"user",message:e,sentAt:t},{role:"assistant",message:j,sentAt:b}]}))}catch(e){let s=y.default(e);s.includes("Unexpected token 'A',")&&(s="Oops! We're experiencing high traffic at the moment. Please try again later."),O(s),K()}finally{E("idle"),Q()}}));return s.jsxs("div",Object.assign({className:"relative flex w-full flex-col max-[767px]:fixed max-[767px]:bottom-0 max-[767px]:left-0"},{children:[A&&S&&!W.isLoading&&(null!==(b=null===(v=W.data)||void 0===v?void 0:v.messages.length)&&void 0!==b?b:0)<=1&&S.icebreakers&&S.icebreakers.length>0&&s.jsx(g.default,{data:null!==(w=S.icebreakers)&&void 0!==w?w:[],style:{backgroundColor:D.secondary,color:D.secondaryText},isMobile:X,onSend:$}),s.jsxs("div",Object.assign({style:Z,className:"flex min-h-[56px] items-end gap-x-2 bg-white px-4 py-3 pb-[15px] shadow"},{children:["enduserupload"===(null==S?void 0:S.documentuploadtype)&&s.jsxs("div",Object.assign({className:"tooltip"},{children:[s.jsx("input",{id:"file-upload",ref:V,type:"file",accept:[...m.allowedFileMimeTypes,...T?m.allowedImageMimeTypes:[]].join(", "),multiple:!0,hidden:!0,className:"hidden",onChange:s=>e.__awaiter(void 0,void 0,void 0,(function*(){yield B(Array.from(s.target.files||[])),s.target.value=""}))}),s.jsx("button",Object.assign({className:"flex items-center disabled:cursor-wait disabled:opacity-50",disabled:U,onClick:()=>{var e;return null===(e=V.current)||void 0===e?void 0:e.click()}},{children:s.jsx(x.default,{className:"h-6 w-6 shrink-0 stroke-2",style:{color:D.accent}})}))]})),s.jsx(h.default,{className:j.default("max-h-60 w-full resize-none border-black bg-transparent outline-none ring-0 scrollbar scrollbar-thin placeholder:font-semilight",!G.length&&"max-h-6 overflow-hidden text-ellipsis whitespace-nowrap"),value:G,placeholder:null!==(k=null==S?void 0:S.placeholdertext)&&void 0!==k?k:"What do you want to talk about?",onChange:e=>J(e.target.value),onKeyDown:e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),$())}}),s.jsx("button",Object.assign({className:"outline-none disabled:cursor-default disabled:opacity-50",disabled:"idle"!==N||U,onClick:()=>$()},{children:s.jsx(f.default,{className:"h-6 w-6 shrink-0 stroke-2",style:{color:D.accent}})}))]}))]}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../_virtual/_tslib.js"),s=require("react/jsx-runtime"),t=require("react"),o=require("../../../hooks/core/useMediaQuery.js"),r=require("../../../hooks/pickaxe/usePickaxeContext.js"),n=require("../../../hooks/pickaxe/useResponseContext.js"),a=require("../../../hooks/studio/useStyleInput.js"),i=require("../../../hooks/pickaxe/useConversation.js"),l=require("../../../hooks/pickaxe/useSubmit.js"),d=require("../../../hooks/pickaxe/useSubmitResult.js"),u=require("../Addons/Document/hooks/useDocument.js"),c=require("../Addons/Scroll/hooks/useScroll.js"),m=require("../../../common/documents.js"),p=require("../../../common/api/streamer.js"),h=require("../../../node_modules/.pnpm/react-textarea-autosize@8.5.7_@types_react@18.3.18_react@18.3.1/node_modules/react-textarea-autosize/dist/react-textarea-autosize.esm.js"),x=require("../../Icons/attach.svg.js"),f=require("../../Icons/send.svg.js"),g=require("../Addons/IceBreaker/index.js"),y=require("../../../common/error.js"),j=require("../../../common/cn.js");exports.default=()=>{var v,b,k,w;const{formId:I,chatId:q,pickaxe:S,colors:D,isNewChat:A,setIsNewChat:C}=r.usePickaxeContext(),{messages:_,status:N,setMessages:R,setStatus:E,setError:O}=n.useResponseContext(),{documents:M,isUploading:U,isImageUploadAllowed:T,upsertDocuments:z,onFileUpload:B,onEditDocumentByDocId:F}=u.useDocument(),{isScrollIncreasing:P,scrollToBottom:K,scrollStart:L,scrollEnd:Q}=c.useScroll(),W=i.useConversation(),H=l.useSubmit(),Y=d.useSubmitResult(),[G,J]=t.useState(""),V=t.useRef(null),[X]=o.useMediaQuery("(max-width: 767px)"),Z=a.useStyleInput(),$=s=>e.__awaiter(void 0,void 0,void 0,(function*(){try{if(U)return;O(""),C(!1);const e=null!=s?s:G;if(!e||"fetching"===N||"streaming"===N)return;const t=new Date;J("");const o="enduserupload"===(null==S?void 0:S.documentuploadtype),r=M.filter((e=>"finished"===e.status&&!e.isInsertedAsRaw)),n=r.length?r[r.length-1].documentId:"";E("fetching");const a=[..._,{id:_.length+1,role:"user",content:e}];R(a);const{success:i,data:l,usedDocumentIds:d,newDocumentId:u,newDocumentName:c,isInsertedFile:m,error:h}=yield H.mutateAsync(Object.assign({formId:I,responseId:q,value:e},o&&n&&{documentId:n}));if(!i)throw new Error(null!=h?h:"An error occurred, please try again.");m&&n&&F({documentId:n,isInsertedAsRaw:!0}),u&&c&&z([{type:"website",id:c,name:c,status:"finished",documentId:u}]),L(),K();const x=(yield p.streamer({formId:I,responseId:q,data:l})).body;if(!x)throw new Error("Streaming error");const f=x.getReader(),g=new TextDecoder,y=a.length;let j="",v=!0;for(E("streaming");v;){const{value:e,done:s}=yield f.read();v=!s;if(j+=g.decode(e),j)R([...a.slice(0,y),{id:_.length+1,role:"assistant",content:j}]),P&&K();else if(!v&&!j)throw new Error("Server error")}const b=new Date;j&&(K(),E("idle"),yield Y.mutateAsync({formId:I,responseId:q,documentIds:d,studioUserId:"USER68RFBSHU4YS2I4L",messages:[{role:"user",message:e,sentAt:t},{role:"assistant",message:j,sentAt:b}]}))}catch(e){let s=y.default(e);s.includes("Unexpected token 'A',")&&(s="Oops! We're experiencing high traffic at the moment. Please try again later."),O(s),K()}finally{E("idle"),Q()}}));return s.jsxs("div",Object.assign({className:"fixed flex w-full flex-col @[767px]/pickaxe-root:relative bottom-0 left-0"},{children:[A&&S&&!W.isLoading&&(null!==(b=null===(v=W.data)||void 0===v?void 0:v.messages.length)&&void 0!==b?b:0)<=1&&S.icebreakers&&S.icebreakers.length>0&&s.jsx(g.default,{data:null!==(k=S.icebreakers)&&void 0!==k?k:[],style:{backgroundColor:D.secondary,color:D.secondaryText},isMobile:X,onSend:$}),s.jsxs("div",Object.assign({style:Z,className:"flex min-h-[56px] items-end gap-x-2 px-4 py-3 pb-[15px] shadow"},{children:["enduserupload"===(null==S?void 0:S.documentuploadtype)&&s.jsxs("div",Object.assign({className:"tooltip"},{children:[s.jsx("input",{id:"file-upload",ref:V,type:"file",accept:[...m.allowedFileMimeTypes,...T?m.allowedImageMimeTypes:[]].join(", "),multiple:!0,hidden:!0,className:"hidden",onChange:s=>e.__awaiter(void 0,void 0,void 0,(function*(){yield B(Array.from(s.target.files||[])),s.target.value=""}))}),s.jsx("button",Object.assign({className:"flex items-center disabled:cursor-wait disabled:opacity-50",disabled:U,onClick:()=>{var e;return null===(e=V.current)||void 0===e?void 0:e.click()}},{children:s.jsx(x.default,{className:"h-6 w-6 shrink-0 stroke-2",style:{color:D.accent}})}))]})),s.jsx(h.default,{className:j.default("max-h-60 w-full resize-none border-transparent bg-transparent outline-none ring-0 scrollbar scrollbar-thin placeholder:font-semilight",!G.length&&"max-h-6 overflow-hidden text-ellipsis whitespace-nowrap"),value:G,placeholder:null!==(w=null==S?void 0:S.placeholdertext)&&void 0!==w?w:"What do you want to talk about?",onChange:e=>J(e.target.value),onKeyDown:e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),$())}}),s.jsx("button",Object.assign({className:"outline-none disabled:cursor-default disabled:opacity-50",disabled:"idle"!==N||U,onClick:()=>$()},{children:s.jsx(f.default,{className:"h-6 w-6 shrink-0 stroke-2",style:{color:D.accent}})}))]}))]}))};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("../../../hooks/pickaxe/usePickaxeContext.js"),l=require("../Addons/Scroll/hooks/useScroll.js"),r=require("../../Core/ScrollArea.js"),t=require("../Addons/Document/List.js"),a=require("./History/index.js"),i=require("./Input.js"),o=require("../../../common/cn.js");exports.default=()=>{const{pickaxe:c,isShowIceBreaker:u}=s.usePickaxeContext(),{scrollContainerRef:x}=l.useScroll();return e.jsx("div",Object.assign({className:"relative flex flex-grow flex-col items-center"},{children:e.jsxs("div",Object.assign({className:"relative flex w-full max-w-[800px] flex-grow flex-col"},{children:["enduserupload"===(null==c?void 0:c.documentuploadtype)&&e.jsx(t.default,{className:"absolute z-10 mt-4"}),e.jsx("div",Object.assign({className:o.default("flex w-full flex-grow flex-col pb-24 max-[767px]:pb-[4.5rem]",u&&"pb-44 max-[767px]:pb-40")},{children:e.jsx(r.default,Object.assign({ref:x,hideScrollbar:!0},{children:e.jsx(a.default,{})}))})),e.jsx("div",Object.assign({className:"absolute bottom-0 mb-6 mt-4 flex w-full justify-center max-[767px]:m-0"},{children:e.jsx(i.default,{})}))]}))}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("../../../hooks/pickaxe/usePickaxeContext.js"),r=require("../Addons/Scroll/hooks/useScroll.js"),l=require("../../Core/ScrollArea.js"),o=require("../Addons/Document/List.js"),t=require("./History/index.js"),i=require("./Input.js"),a=require("../../../common/cn.js");exports.default=()=>{const{pickaxe:c,isShowIceBreaker:x}=s.usePickaxeContext(),{scrollContainerRef:u}=r.useScroll();return e.jsx("div",Object.assign({className:"relative flex flex-grow flex-col items-center"},{children:e.jsxs("div",Object.assign({className:"relative flex w-full max-w-[800px] flex-grow flex-col"},{children:["enduserupload"===(null==c?void 0:c.documentuploadtype)&&e.jsx(o.default,{className:"absolute z-10 mt-4"}),e.jsx("div",Object.assign({className:a.default("flex w-full flex-grow flex-col pb-[4.5rem] @[767px]/pickaxe-root:pb-24",x&&"pb-40 @[767px]/pickaxe-root:pb-44")},{children:e.jsx(l.default,Object.assign({ref:u,hideScrollbar:!0},{children:e.jsx(t.default,{})}))})),e.jsx("div",Object.assign({className:"absolute bottom-0 flex w-full justify-center @[767px]/pickaxe-root:mt-4 @[767px]/pickaxe-root:mb-6"},{children:e.jsx(i.default,{})}))]}))}))};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),i=require("../../../hooks/pickaxe/usePickaxeContext.js"),s=require("../../Icons/circle-info.svg.js"),l=require("../common/PickaxeIcon.js"),o=require("../InfoModal.js");exports.default=()=>{var c;const{pickaxe:n,colors:r}=i.usePickaxeContext(),[a,u]=t.useState(!1);return e.jsxs("div",Object.assign({className:"flex flex-col items-center"},{children:[a&&e.jsx(o.default,{isOpen:a,onChangeIsOpen:u}),e.jsx(l.default,{src:null==n?void 0:n.coverphoto,alt:`${null==n?void 0:n.formtitle}'s Profile Picture`,width:90,height:90,className:"h-[90px] w-[90px] rounded-full"}),e.jsxs("h2",Object.assign({className:"mt-6 text-center text-[18px] font-semibold opacity-70 max-[767px]:text-base"},{children:[`${null==n?void 0:n.formtitle.slice(0,130)}${(null!==(c=null==n?void 0:n.formtitle)&&void 0!==c?c:"").length>130?"...":""}`,e.jsx("button",Object.assign({className:"ml-2 inline-block outline-none hover:opacity-70 hover:duration-300 active:opacity-100",onClick:()=>u(!0)},{children:e.jsx(s.default,{className:"h-5 w-5 shrink-0",style:{color:r.accent}})}))]})),e.jsx("p",Object.assign({className:"mt-2 max-w-[600px] line-clamp-3 whitespace-pre-line text-center font-semilight opacity-70"},{children:null==n?void 0:n.formdescription}))]}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),i=require("../../../hooks/pickaxe/usePickaxeContext.js"),s=require("../../Icons/circle-info.svg.js"),o=require("../common/PickaxeIcon.js"),l=require("../common/PickaxeInfoModal.js");exports.default=()=>{var c;const{pickaxe:n,colors:r}=i.usePickaxeContext(),[a,u]=t.useState(!1);return e.jsxs("div",Object.assign({className:"flex flex-col items-center"},{children:[a&&e.jsx(l.default,{isOpen:a,onChangeIsOpen:u}),e.jsx(o.default,{src:null==n?void 0:n.coverphoto,alt:`${null==n?void 0:n.formtitle}'s Profile Picture`,width:90,height:90,className:"h-[90px] w-[90px] rounded-full"}),e.jsxs("h2",Object.assign({className:"mt-6 text-center @[767px]/pickaxe-root:text-[18px] font-semibold opacity-70"},{children:[`${null==n?void 0:n.formtitle.slice(0,130)}${(null!==(c=null==n?void 0:n.formtitle)&&void 0!==c?c:"").length>130?"...":""}`,e.jsx("button",Object.assign({className:"ml-2 inline-block outline-none hover:opacity-70 hover:duration-300 active:opacity-100",onClick:()=>u(!0)},{children:e.jsx(s.default,{className:"h-5 w-5 shrink-0",style:{color:r.accent}})}))]})),e.jsx("p",Object.assign({className:"mt-2 max-w-[600px] line-clamp-3 whitespace-pre-line text-center font-semilight opacity-70"},{children:null==n?void 0:n.formdescription}))]}))};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("../../../hooks/pickaxe/usePickaxeContext.js"),l=require("./Head.js"),t=require("./History/index.js"),x=require("./NewChat.js"),a=require("./Questions/index.js");exports.default=()=>{const{pickaxe:i}=s.usePickaxeContext();return e.jsx("div",Object.assign({className:"flex w-full flex-col items-center pt-12 px-4 pb-40 max-[899px]:pb-10"},{children:e.jsxs("div",Object.assign({className:"flex w-full max-w-[700px] flex-col"},{children:[e.jsx(l.default,{}),e.jsxs("div",Object.assign({className:"flex flex-col gap-y-8 lg:mt-4"},{children:[(null==i?void 0:i.chatflag)?e.jsx(x.default,{}):e.jsx(a.default,{}),e.jsx(t.default,{})]}))]}))}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("../../../hooks/pickaxe/usePickaxeContext.js"),t=require("./Head.js"),x=require("./History/index.js"),i=require("./NewChat.js"),a=require("./Questions/index.js");exports.default=()=>{const{pickaxe:l}=s.usePickaxeContext();return e.jsx("div",Object.assign({className:"flex w-full flex-col items-center pt-12 px-4 pb-10 @[767px]/pickaxe-root:pb-40"},{children:e.jsxs("div",Object.assign({className:"flex w-full max-w-[700px] flex-col"},{children:[e.jsx(t.default,{}),e.jsxs("div",Object.assign({className:"flex flex-col gap-y-8 @[767px]/pickaxe-root:mt-4"},{children:[(null==l?void 0:l.chatflag)?e.jsx(i.default,{}):e.jsx(a.default,{}),e.jsx(x.default,{})]}))]}))}))};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("../../../hooks/pickaxe/usePickaxeContext.js"),t=require("../../Icons/x.svg.js"),i=require("../../Core/Modal/index.js"),l=require("../../Core/Modal/Body.js"),o=require("./PickaxeIcon.js");exports.default=({isOpen:r,onChangeIsOpen:a})=>{const{pickaxe:c,colors:n}=s.usePickaxeContext();return e.jsx(i.default,Object.assign({isOpen:r,onChange:a},{children:e.jsxs(l.default,Object.assign({className:"relative flex w-full flex-col px-8 py-[26px] @[767px]/pickaxe-root:max-w-[480px]",style:{backgroundColor:n.primary,borderColor:n.text+"4D"},avoidOverflow:!0},{children:[e.jsx("div",Object.assign({className:"flex items-start justify-end gap-4"},{children:e.jsx("button",Object.assign({className:"outline-none hover:opacity-70 hover:duration-300 active:opacity-100",onClick:()=>a(!1)},{children:e.jsx(t.default,{className:"h-6 w-6 shrink-0"})}))})),e.jsx("div",Object.assign({className:"mt-8 flex flex-col items-center"},{children:e.jsxs("div",Object.assign({className:"flex w-full max-w-[360px] flex-col items-center text-center"},{children:[e.jsx(o.default,{src:null==c?void 0:c.coverphoto,alt:`${null==c?void 0:c.formtitle}'s Profile Picture`,width:90,height:90,className:"h-[90px] w-[90px] rounded-full"}),e.jsx("h2",Object.assign({className:"mt-6 text-center font-semibold opacity-70 @[767px]/pickaxe-root:text-[18px]"},{children:null==c?void 0:c.formtitle})),e.jsx("p",Object.assign({className:"mt-4 font-semilight opacity-70"},{children:null==c?void 0:c.formdescription}))]}))}))]}))}))};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),o=require("../pickaxe/usePickaxeContext.js");exports.useStyleInput=()=>{const{styles:r,colors:t}=o.usePickaxeContext();return e.useMemo((()=>Object.assign(Object.assign(Object.assign({borderWidth:`${r.outlineThickness}px`,borderRadius:`${r.cornerRadius}px`,background:"transparent"},"minimal"===r.formFieldStyle&&{borderBottomColor:t.secondary,color:t.text}),"box"===r.formFieldStyle&&{borderColor:t.secondary+"AA",color:t.text}),"block"===r.formFieldStyle&&{backgroundColor:t.secondary,color:t.secondaryText})),[r,t])};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("../pickaxe/usePickaxeContext.js");exports.useStyleInput=()=>{const{styles:o,colors:t}=r.usePickaxeContext();return e.useMemo((()=>Object.assign(Object.assign(Object.assign({borderWidth:`${o.outlineThickness}px`,borderRadius:`${o.cornerRadius}px`,backgroundColor:"transparent"},"minimal"===o.formFieldStyle&&{borderTopColor:"transparent",borderRightColor:"transparent",borderLeftColor:"transparent",borderBottomColor:t.secondary,color:t.text}),"box"===o.formFieldStyle&&{borderColor:t.secondary+"AA",color:t.text}),"block"===o.formFieldStyle&&{borderColor:t.secondary,backgroundColor:t.secondary,color:t.secondaryText})),[o,t])};
@@ -0,0 +1,6 @@
1
+ interface PickaxeInfoModalProps {
2
+ isOpen: boolean;
3
+ onChangeIsOpen: (isOpen: boolean) => void;
4
+ }
5
+ declare const PickaxeInfoModal: ({ isOpen, onChangeIsOpen, }: PickaxeInfoModalProps) => import("react/jsx-runtime").JSX.Element;
6
+ export default PickaxeInfoModal;
@@ -1 +1 @@
1
- import{__rest as r}from"../../../_virtual/_tslib.js";import{jsx as e,Fragment as t}from"react/jsx-runtime";import{forwardRef as o,useRef as i,useContext as c,useEffect as s}from"react";import{createPortal as a}from"react-dom";import{ModalContext as l}from"./index.js";import{useOutsideAlerter as n}from"../../../hooks/core/useOutsideAlerter.js";import{randomStr as m}from"../../../common/utils.js";import{motion as d}from"framer-motion";import u from"../../../common/cn.js";const f=o(((o,f)=>{var{children:b,className:p,avoidOverflow:h=!1}=o,y=r(o,["children","className","avoidOverflow"]);const v=document.createElement("div"),x=i(),j=i(v),{closeOnOutsideClick:O,setIsOpen:g}=c(l);return n({ref:x,callback:()=>{O&&g(!1)}}),s((()=>{const r=document.querySelector("main");if(!r)return;const e=r.getAttribute("class");if(!e)return;const t=j.current;return t.setAttribute("id",m(5)+"-modal"),t.setAttribute("class","fixed inset-0 z-50 flex items-center justify-center backdrop-blur-sm bg-black/20 "+e),document.body.appendChild(t),()=>{document.body.removeChild(t)}}),[]),j.current?a(e(d.div,Object.assign({initial:{y:300,opacity:0},animate:{y:0,opacity:1},exit:{y:300,opacity:0},transition:{type:"spring",stiffness:260,damping:20},className:u(h&&"max-h-[100vh] overflow-auto scrollbar scrollbar-thumb-black/50 scrollbar-thumb-rounded-full scrollbar-w-[4px] scrollbar-h-[4px]",p,"p-0")},{children:e("div",Object.assign({ref:r=>{r&&(x.current=r,"function"==typeof f?f(r):f&&(f.current=r))}},y,{className:u("animate-fade-in flex flex-col rounded border border-black/30 bg-white shadow-md",p)},{children:b}))})),j.current):e(t,{children:null})}));f.displayName="ModalBody";export{f as default};
1
+ import{__rest as r}from"../../../_virtual/_tslib.js";import{jsx as e,Fragment as t}from"react/jsx-runtime";import{forwardRef as o,useRef as i,useContext as s,useEffect as a}from"react";import{createPortal as c}from"react-dom";import{ModalContext as n}from"./index.js";import{useOutsideAlerter as l}from"../../../hooks/core/useOutsideAlerter.js";import{randomStr as m}from"../../../common/utils.js";import{motion as d}from"framer-motion";import u from"../../../common/cn.js";const f=o(((o,f)=>{var{children:p,className:b,avoidOverflow:h=!1}=o,y=r(o,["children","className","avoidOverflow"]);const v=document.createElement("div"),x=i(),j=i(v),{closeOnOutsideClick:O,setIsOpen:g}=s(n);return l({ref:x,callback:()=>{O&&g(!1)}}),a((()=>{const r=document.querySelector("main");if(!r)return;const e=r.getAttribute("class");if(!e)return;const t=j.current;return t.setAttribute("id",m(5)+"-modal"),t.setAttribute("class","fixed inset-0 z-50 flex items-center justify-center backdrop-blur-sm bg-black/20 "+e),document.body.appendChild(t),()=>{document.body.removeChild(t)}}),[]),j.current?c(e(d.div,Object.assign({initial:{y:300,opacity:0},animate:{y:0,opacity:1},exit:{y:300,opacity:0},transition:{type:"spring",stiffness:260,damping:20},className:u(h&&"max-h-[100vh] overflow-auto scrollbar scrollbar-thumb-black/50 scrollbar-thumb-rounded-full scrollbar-w-[4px] scrollbar-h-[4px]",b,"p-0")},{children:e("div",Object.assign({ref:r=>{r&&(x.current=r,"function"==typeof f?f(r):f&&(f.current=r))}},y,{className:u("animate-fade-in flex flex-col rounded border border-transparent shadow-md",b)},{children:p}))})),j.current):e(t,{children:null})}));f.displayName="ModalBody";export{f as default};
@@ -1 +1 @@
1
- import{jsx as e,jsxs as a}from"react/jsx-runtime";import{usePickaxeContext as s}from"../../../../hooks/pickaxe/usePickaxeContext.js";import o from"../../common/PickaxeIcon.js";import t from"../../common/PickaxeMarkdown.js";import l from"../../common/PickaxeCopyButton.js";const c=({message:c})=>{var r;const{formId:i,pickaxe:m,colors:n}=s(),x=null!==(r=null==m?void 0:m.chaticon)&&void 0!==r?r:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/chaticons/${i}.png`;return"assistant"===c.role?e("div",Object.assign({className:"flex max-w-[80%] flex-col max-[767px]:max-w-full"},{children:a("div",Object.assign({className:"flex gap-x-3"},{children:["NONE"!==x&&e(o,{src:x,alt:"Assistant",width:24,height:24,className:"my-3 h-6 w-6",textColor:n.text}),a("div",Object.assign({className:"flex flex-col"},{children:[e("div",Object.assign({className:"chat-message overflow-x-auto overflow-y-hidden rounded px-4 py-3 scrollbar-thin scrollbar-track-white scrollbar-thumb-[#4A4A4B]",style:{backgroundColor:n.secondary+"80",color:n.secondaryText}},{children:e(t,{className:"relative max-[767px]:text-sm",html:c.content})})),e("div",Object.assign({className:"mb-2 ml-2 mt-4 flex gap-3"},{children:e(l,{color:n.accent,text:c.content})}))]}))]}))})):"user"===c.role?e("div",Object.assign({className:"flex max-w-[80%] gap-x-3 justify-self-end max-[767px]:max-w-full max-[767px]:pl-9"},{children:e("div",Object.assign({className:"overflow-x-auto overflow-y-hidden rounded px-4 py-3 scrollbar-thin scrollbar-track-white scrollbar-thumb-[#4A4A4B]"},{children:e(t,{className:"relative max-[767px]:text-sm",html:c.content})}))})):e("div",{})};export{c as default};
1
+ import{jsx as e,jsxs as o}from"react/jsx-runtime";import{usePickaxeContext as s}from"../../../../hooks/pickaxe/usePickaxeContext.js";import t from"../../common/PickaxeIcon.js";import a from"../../common/PickaxeMarkdown.js";import c from"../../common/PickaxeCopyButton.js";const r=({message:r})=>{var l;const{formId:i,pickaxe:n,colors:m}=s(),x=null!==(l=null==n?void 0:n.chaticon)&&void 0!==l?l:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/chaticons/${i}.png`;return"assistant"===r.role?e("div",Object.assign({className:"flex flex-col @[767px]/pickaxe-root:max-w-[80%]"},{children:o("div",Object.assign({className:"flex gap-x-3"},{children:["NONE"!==x&&e(t,{src:x,alt:"Assistant",width:24,height:24,className:"my-3 h-6 w-6",textColor:m.text}),o("div",Object.assign({className:"flex flex-col"},{children:[e("div",Object.assign({className:"chat-message overflow-x-auto overflow-y-hidden rounded px-4 py-3 scrollbar-thin scrollbar-track-white scrollbar-thumb-[#4A4A4B]",style:{backgroundColor:m.secondary+"80",color:m.secondaryText}},{children:e(a,{className:"relative text-sm @[767px]/pickaxe-root:text-base",html:r.content})})),e("div",Object.assign({className:"mb-2 ml-2 mt-4 flex gap-3"},{children:e(c,{color:m.accent,text:r.content})}))]}))]}))})):"user"===r.role?e("div",Object.assign({className:"flex gap-x-3 justify-self-end @[767px]/pickaxe-root:max-w-[80%] pl-9 @[767px]/pickaxe-root:pl-0"},{children:e("div",Object.assign({className:"overflow-x-auto overflow-y-hidden rounded px-4 py-3 scrollbar-thin scrollbar-track-white scrollbar-thumb-[#4A4A4B]"},{children:e(a,{className:"relative text-sm @[767px]/pickaxe-root:text-base",html:r.content})}))})):e("div",{})};export{r as default};
@@ -1 +1 @@
1
- import{jsxs as e,jsx as s}from"react/jsx-runtime";import{useState as t,useMemo as a}from"react";import{usePickaxeContext as l}from"../../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as o}from"../../../../hooks/pickaxe/useResponseContext.js";import{useConversation as i}from"../../../../hooks/pickaxe/useConversation.js";import c from"../../../Icons/circle-info.svg.js";import n from"../../common/PickaxeIcon.js";import r from"../../../Core/HtmlRenderer.js";import m from"../../Addons/Scroll/ScrollLockView.js";import d from"../../InfoModal.js";import p from"./Message.js";import x from"../../../../common/cn.js";const f=()=>{var f;const{pickaxe:u,colors:g,isNewChat:h}=l(),{messages:b,status:v,error:j}=o(),w=i(),[N,y]=t(!1),k=a((()=>!!w.data&&!(w.data.messages.length<=1)),[w.data]),O=a((()=>w.isSuccess&&h&&!k),[w.isSuccess,h,k]);return e("div",Object.assign({className:"relative flex flex-grow flex-col justify-end"},{children:[N&&s(d,{isOpen:N,onChangeIsOpen:y}),e("div",Object.assign({className:x("absolute left-1/2 top-5 flex w-full max-w-[400px] -translate-x-1/2 -translate-y-1/3 transform flex-col items-center px-4 opacity-0 duration-300",O&&"top-1/3 opacity-100")},{children:[s(n,{src:null==u?void 0:u.coverphoto,alt:`${null==u?void 0:u.formtitle}'s Profile Picture`,width:90,height:90,className:"h-[90px] w-[90px] rounded-full"}),e("div",Object.assign({className:"flex flex-col items-center"},{children:[e("h2",Object.assign({className:"mt-6 text-center text-lg font-semibold opacity-70 max-[767px]:text-base"},{children:[`${null==u?void 0:u.formtitle.slice(0,130)}${(null!==(f=null==u?void 0:u.formtitle)&&void 0!==f?f:"").length>130?"...":""}`,s("button",Object.assign({className:"ml-2 inline-block outline-none hover:opacity-70 hover:duration-300 active:opacity-100",onClick:()=>y(!0)},{children:s(c,{className:"h-5 w-5 shrink-0",style:{color:g.accent}})}))]})),s("p",Object.assign({className:"mt-2 line-clamp-3 whitespace-pre-line max-w-[600px] text-center font-semilight opacity-70"},{children:null==u?void 0:u.formdescription}))]}))]})),s("div",Object.assign({className:"flex w-full justify-center"},{children:w.isLoading?e("div",Object.assign({className:"grid w-full max-w-[800px] grid-cols-1 gap-y-6 px-6 pt-10"},{children:[s("div",{className:"h-10 w-[70%] animate-pulse justify-self-end rounded bg-[#E5E7EB] dark:bg-[#1E1E1F]"}),s("div",{className:"h-[150px] w-[70%] animate-pulse rounded bg-[#E5E7EB] dark:bg-[#1E1E1F]"}),s("div",{className:"h-10 w-[50%] animate-pulse justify-self-end rounded bg-[#E5E7EB] dark:bg-[#1E1E1F]"})]})):w.isError?s("div",Object.assign({className:"flex w-full max-w-[800px] justify-center pt-10"},{children:e("p",Object.assign({className:"text-center text-xl font-semibold"},{children:["Something went wrong. Please try again, or"," ",s("a",Object.assign({href:"mailto:info@pickaxeproject.com?subject=Help"},{children:"contact us"}))," ","for help."]}))})):e("div",Object.assign({className:"relative grid w-full max-w-[800px] grid-cols-1 gap-y-6 px-4 pt-10 max-[767px]:pt-6"},{children:[w.data.messages.map(((e,t)=>s(p,{message:e},t))),b.map(((e,t)=>s(p,{message:e},t))),"fetching"===v?e("div",Object.assign({className:"flex max-w-[80%] items-center gap-x-3"},{children:["NONE"!==(null==u?void 0:u.chaticon)&&s(n,{src:null==u?void 0:u.chaticon,alt:`${null==u?void 0:u.formtitle}'s Chat Icon`,width:24,height:24,className:"h-6 w-6"}),e("div",Object.assign({className:"flex items-center gap-x-2 rounded px-4 py-4",style:{backgroundColor:g.secondary+"80",color:g.secondaryText}},{children:[s("div",{className:"h-1.5 w-1.5 animate-dot rounded-full",style:{backgroundColor:g.secondaryText}}),s("div",{className:"h-1.5 w-1.5 animate-dot-down rounded-full",style:{backgroundColor:g.secondaryText}}),s("div",{className:"h-1.5 w-1.5 animate-dot rounded-full",style:{backgroundColor:g.secondaryText}})]}))]})):j?e("div",Object.assign({className:"flex max-w-[80%] gap-x-3"},{children:[s(c,{className:"mt-2 h-6 w-6 shrink-0 text-red-500"}),s(r,{className:"x-4 py-2 font-semibold text-red-500",html:j})]})):null,s(m,{className:"absolute bottom-0 left-0 w-full"})]}))}))]}))};export{f as default};
1
+ import{jsxs as e,jsx as s}from"react/jsx-runtime";import{useState as t,useMemo as a}from"react";import{usePickaxeContext as o}from"../../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as l}from"../../../../hooks/pickaxe/useResponseContext.js";import{useConversation as i}from"../../../../hooks/pickaxe/useConversation.js";import c from"../../../Icons/circle-info.svg.js";import r from"../../common/PickaxeIcon.js";import n from"../../../Core/HtmlRenderer.js";import d from"../../Addons/Scroll/ScrollLockView.js";import m from"../../common/PickaxeInfoModal.js";import p from"./Message.js";import x from"../../../../common/cn.js";const f=()=>{var f;const{pickaxe:u,styles:g,colors:h,isNewChat:b}=o(),{messages:v,status:j,error:w}=l(),E=i(),[k,y]=t(!1),N=a((()=>!!E.data&&!(E.data.messages.length<=1)),[E.data]),O=a((()=>E.isSuccess&&b&&!N),[E.isSuccess,b,N]);return e("div",Object.assign({className:"relative flex flex-grow flex-col justify-end"},{children:[k&&s(m,{isOpen:k,onChangeIsOpen:y}),e("div",Object.assign({className:x("absolute left-1/2 top-5 flex w-full max-w-[400px] -translate-x-1/2 -translate-y-1/3 transform flex-col items-center px-4 opacity-0 duration-300",O&&"top-1/3 opacity-100")},{children:[s(r,{src:null==u?void 0:u.coverphoto,alt:`${null==u?void 0:u.formtitle}'s Profile Picture`,width:90,height:90,className:"h-[90px] w-[90px] rounded-full"}),e("div",Object.assign({className:"flex flex-col items-center"},{children:[e("h2",Object.assign({className:"mt-6 text-center font-semibold opacity-70 @[767px]/pickaxe-root:text-lg"},{children:[`${null==u?void 0:u.formtitle.slice(0,130)}${(null!==(f=null==u?void 0:u.formtitle)&&void 0!==f?f:"").length>130?"...":""}`,s("button",Object.assign({className:"ml-2 inline-block outline-none hover:opacity-70 hover:duration-300 active:opacity-100",onClick:()=>y(!0)},{children:s(c,{className:"h-5 w-5 shrink-0",style:{color:h.accent}})}))]})),s("p",Object.assign({className:"mt-2 line-clamp-3 whitespace-pre-line max-w-[600px] text-center font-semilight opacity-70"},{children:null==u?void 0:u.formdescription}))]}))]})),s("div",Object.assign({className:"flex w-full justify-center"},{children:E.isLoading?e("div",Object.assign({className:"grid w-full max-w-[800px] grid-cols-1 gap-y-6 px-6 pt-10"},{children:[s("div",{className:"h-10 w-[70%] animate-pulse justify-self-end rounded bg-[#E5E7EB] dark:bg-[#1E1E1F]",style:{backgroundColor:"dark"===g.theme?"#1E1E1F":"#E5E7EB"}}),s("div",{className:"h-[150px] w-[70%] animate-pulse rounded bg-[#E5E7EB] dark:bg-[#1E1E1F]",style:{backgroundColor:"dark"===g.theme?"#1E1E1F":"#E5E7EB"}}),s("div",{className:"h-10 w-[50%] animate-pulse justify-self-end rounded bg-[#E5E7EB] dark:bg-[#1E1E1F]",style:{backgroundColor:"dark"===g.theme?"#1E1E1F":"#E5E7EB"}})]})):E.isError?s("div",Object.assign({className:"flex w-full max-w-[800px] justify-center pt-10"},{children:e("p",Object.assign({className:"text-center text-xl font-semibold"},{children:["Something went wrong. Please try again, or"," ",s("a",Object.assign({href:"mailto:info@pickaxeproject.com?subject=Help"},{children:"contact us"}))," ","for help."]}))})):e("div",Object.assign({className:"relative grid w-full max-w-[800px] grid-cols-1 gap-y-6 px-4 pt-6 @[767px]/pickaxe-root:pt-10"},{children:[E.data.messages.map(((e,t)=>s(p,{message:e},t))),v.map(((e,t)=>s(p,{message:e},t))),"fetching"===j?e("div",Object.assign({className:"flex max-w-[80%] items-center gap-x-3"},{children:["NONE"!==(null==u?void 0:u.chaticon)&&s(r,{src:null==u?void 0:u.chaticon,alt:`${null==u?void 0:u.formtitle}'s Chat Icon`,width:24,height:24,className:"h-6 w-6"}),e("div",Object.assign({className:"flex items-center gap-x-2 rounded px-4 py-4",style:{backgroundColor:h.secondary+"80",color:h.secondaryText}},{children:[s("div",{className:"h-1.5 w-1.5 animate-dot rounded-full",style:{backgroundColor:h.secondaryText}}),s("div",{className:"h-1.5 w-1.5 animate-dot-down rounded-full",style:{backgroundColor:h.secondaryText}}),s("div",{className:"h-1.5 w-1.5 animate-dot rounded-full",style:{backgroundColor:h.secondaryText}})]}))]})):w?e("div",Object.assign({className:"flex max-w-[80%] gap-x-3"},{children:[s(c,{className:"mt-2 h-6 w-6 shrink-0 text-red-500"}),s(n,{className:"x-4 py-2 font-semibold text-red-500",html:w})]})):null,s(d,{className:"absolute bottom-0 left-0 w-full"})]}))}))]}))};export{f as default};
@@ -1 +1 @@
1
- import{__awaiter as e}from"../../../_virtual/_tslib.js";import{jsxs as o,jsx as t}from"react/jsx-runtime";import{useState as s,useRef as r}from"react";import{useMediaQuery as n}from"../../../hooks/core/useMediaQuery.js";import{usePickaxeContext as i}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as a}from"../../../hooks/pickaxe/useResponseContext.js";import{useStyleInput as l}from"../../../hooks/studio/useStyleInput.js";import{useConversation as d}from"../../../hooks/pickaxe/useConversation.js";import{useSubmit as c}from"../../../hooks/pickaxe/useSubmit.js";import{useSubmitResult as m}from"../../../hooks/pickaxe/useSubmitResult.js";import{useDocument as u}from"../Addons/Document/hooks/useDocument.js";import{useScroll as p}from"../Addons/Scroll/hooks/useScroll.js";import{allowedFileMimeTypes as f,allowedImageMimeTypes as h}from"../../../common/documents.js";import{streamer as g}from"../../../common/api/streamer.js";import x from"../../../node_modules/.pnpm/react-textarea-autosize@8.5.7_@types_react@18.3.18_react@18.3.1/node_modules/react-textarea-autosize/dist/react-textarea-autosize.esm.js";import v from"../../Icons/attach.svg.js";import y from"../../Icons/send.svg.js";import b from"../Addons/IceBreaker/index.js";import k from"../../../common/error.js";import w from"../../../common/cn.js";const I=()=>{var I,j,S,A;const{formId:D,chatId:N,pickaxe:C,colors:E,isNewChat:O,setIsNewChat:R}=i(),{messages:U,status:_,setMessages:z,setStatus:B,setError:F}=a(),{documents:M,isUploading:T,isImageUploadAllowed:K,upsertDocuments:L,onFileUpload:P,onEditDocumentByDocId:W}=u(),{isScrollIncreasing:H,scrollToBottom:Q,scrollStart:Y,scrollEnd:q}=p(),G=d(),J=c(),V=m(),[X,Z]=s(""),$=r(null),[ee]=n("(max-width: 767px)"),oe=l(),te=o=>e(void 0,void 0,void 0,(function*(){try{if(T)return;F(""),R(!1);const e=null!=o?o:X;if(!e||"fetching"===_||"streaming"===_)return;const t=new Date;Z("");const s="enduserupload"===(null==C?void 0:C.documentuploadtype),r=M.filter((e=>"finished"===e.status&&!e.isInsertedAsRaw)),n=r.length?r[r.length-1].documentId:"";B("fetching");const i=[...U,{id:U.length+1,role:"user",content:e}];z(i);const{success:a,data:l,usedDocumentIds:d,newDocumentId:c,newDocumentName:m,isInsertedFile:u,error:p}=yield J.mutateAsync(Object.assign({formId:D,responseId:N,value:e},s&&n&&{documentId:n}));if(!a)throw new Error(null!=p?p:"An error occurred, please try again.");u&&n&&W({documentId:n,isInsertedAsRaw:!0}),c&&m&&L([{type:"website",id:m,name:m,status:"finished",documentId:c}]),Y(),Q();const f=(yield g({formId:D,responseId:N,data:l})).body;if(!f)throw new Error("Streaming error");const h=f.getReader(),x=new TextDecoder,v=i.length;let y="",b=!0;for(B("streaming");b;){const{value:e,done:o}=yield h.read();b=!o;if(y+=x.decode(e),y)z([...i.slice(0,v),{id:U.length+1,role:"assistant",content:y}]),H&&Q();else if(!b&&!y)throw new Error("Server error")}const k=new Date;y&&(Q(),B("idle"),yield V.mutateAsync({formId:D,responseId:N,documentIds:d,studioUserId:"USER68RFBSHU4YS2I4L",messages:[{role:"user",message:e,sentAt:t},{role:"assistant",message:y,sentAt:k}]}))}catch(e){let o=k(e);o.includes("Unexpected token 'A',")&&(o="Oops! We're experiencing high traffic at the moment. Please try again later."),F(o),Q()}finally{B("idle"),q()}}));return o("div",Object.assign({className:"relative flex w-full flex-col max-[767px]:fixed max-[767px]:bottom-0 max-[767px]:left-0"},{children:[O&&C&&!G.isLoading&&(null!==(j=null===(I=G.data)||void 0===I?void 0:I.messages.length)&&void 0!==j?j:0)<=1&&C.icebreakers&&C.icebreakers.length>0&&t(b,{data:null!==(S=C.icebreakers)&&void 0!==S?S:[],style:{backgroundColor:E.secondary,color:E.secondaryText},isMobile:ee,onSend:te}),o("div",Object.assign({style:oe,className:"flex min-h-[56px] items-end gap-x-2 bg-white px-4 py-3 pb-[15px] shadow"},{children:["enduserupload"===(null==C?void 0:C.documentuploadtype)&&o("div",Object.assign({className:"tooltip"},{children:[t("input",{id:"file-upload",ref:$,type:"file",accept:[...f,...K?h:[]].join(", "),multiple:!0,hidden:!0,className:"hidden",onChange:o=>e(void 0,void 0,void 0,(function*(){yield P(Array.from(o.target.files||[])),o.target.value=""}))}),t("button",Object.assign({className:"flex items-center disabled:cursor-wait disabled:opacity-50",disabled:T,onClick:()=>{var e;return null===(e=$.current)||void 0===e?void 0:e.click()}},{children:t(v,{className:"h-6 w-6 shrink-0 stroke-2",style:{color:E.accent}})}))]})),t(x,{className:w("max-h-60 w-full resize-none border-black bg-transparent outline-none ring-0 scrollbar scrollbar-thin placeholder:font-semilight",!X.length&&"max-h-6 overflow-hidden text-ellipsis whitespace-nowrap"),value:X,placeholder:null!==(A=null==C?void 0:C.placeholdertext)&&void 0!==A?A:"What do you want to talk about?",onChange:e=>Z(e.target.value),onKeyDown:e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),te())}}),t("button",Object.assign({className:"outline-none disabled:cursor-default disabled:opacity-50",disabled:"idle"!==_||T,onClick:()=>te()},{children:t(y,{className:"h-6 w-6 shrink-0 stroke-2",style:{color:E.accent}})}))]}))]}))};export{I as default};
1
+ import{__awaiter as e}from"../../../_virtual/_tslib.js";import{jsxs as o,jsx as t}from"react/jsx-runtime";import{useState as s,useRef as r}from"react";import{useMediaQuery as n}from"../../../hooks/core/useMediaQuery.js";import{usePickaxeContext as i}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as a}from"../../../hooks/pickaxe/useResponseContext.js";import{useStyleInput as l}from"../../../hooks/studio/useStyleInput.js";import{useConversation as d}from"../../../hooks/pickaxe/useConversation.js";import{useSubmit as c}from"../../../hooks/pickaxe/useSubmit.js";import{useSubmitResult as m}from"../../../hooks/pickaxe/useSubmitResult.js";import{useDocument as u}from"../Addons/Document/hooks/useDocument.js";import{useScroll as p}from"../Addons/Scroll/hooks/useScroll.js";import{allowedFileMimeTypes as f,allowedImageMimeTypes as h}from"../../../common/documents.js";import{streamer as g}from"../../../common/api/streamer.js";import x from"../../../node_modules/.pnpm/react-textarea-autosize@8.5.7_@types_react@18.3.18_react@18.3.1/node_modules/react-textarea-autosize/dist/react-textarea-autosize.esm.js";import v from"../../Icons/attach.svg.js";import y from"../../Icons/send.svg.js";import k from"../Addons/IceBreaker/index.js";import b from"../../../common/error.js";import w from"../../../common/cn.js";const I=()=>{var I,j,S,A;const{formId:D,chatId:N,pickaxe:C,colors:E,isNewChat:O,setIsNewChat:R}=i(),{messages:U,status:_,setMessages:z,setStatus:B,setError:F}=a(),{documents:M,isUploading:T,isImageUploadAllowed:K,upsertDocuments:L,onFileUpload:P,onEditDocumentByDocId:W}=u(),{isScrollIncreasing:H,scrollToBottom:Q,scrollStart:Y,scrollEnd:q}=p(),G=d(),J=c(),V=m(),[X,Z]=s(""),$=r(null),[ee]=n("(max-width: 767px)"),oe=l(),te=o=>e(void 0,void 0,void 0,(function*(){try{if(T)return;F(""),R(!1);const e=null!=o?o:X;if(!e||"fetching"===_||"streaming"===_)return;const t=new Date;Z("");const s="enduserupload"===(null==C?void 0:C.documentuploadtype),r=M.filter((e=>"finished"===e.status&&!e.isInsertedAsRaw)),n=r.length?r[r.length-1].documentId:"";B("fetching");const i=[...U,{id:U.length+1,role:"user",content:e}];z(i);const{success:a,data:l,usedDocumentIds:d,newDocumentId:c,newDocumentName:m,isInsertedFile:u,error:p}=yield J.mutateAsync(Object.assign({formId:D,responseId:N,value:e},s&&n&&{documentId:n}));if(!a)throw new Error(null!=p?p:"An error occurred, please try again.");u&&n&&W({documentId:n,isInsertedAsRaw:!0}),c&&m&&L([{type:"website",id:m,name:m,status:"finished",documentId:c}]),Y(),Q();const f=(yield g({formId:D,responseId:N,data:l})).body;if(!f)throw new Error("Streaming error");const h=f.getReader(),x=new TextDecoder,v=i.length;let y="",k=!0;for(B("streaming");k;){const{value:e,done:o}=yield h.read();k=!o;if(y+=x.decode(e),y)z([...i.slice(0,v),{id:U.length+1,role:"assistant",content:y}]),H&&Q();else if(!k&&!y)throw new Error("Server error")}const b=new Date;y&&(Q(),B("idle"),yield V.mutateAsync({formId:D,responseId:N,documentIds:d,studioUserId:"USER68RFBSHU4YS2I4L",messages:[{role:"user",message:e,sentAt:t},{role:"assistant",message:y,sentAt:b}]}))}catch(e){let o=b(e);o.includes("Unexpected token 'A',")&&(o="Oops! We're experiencing high traffic at the moment. Please try again later."),F(o),Q()}finally{B("idle"),q()}}));return o("div",Object.assign({className:"fixed flex w-full flex-col @[767px]/pickaxe-root:relative bottom-0 left-0"},{children:[O&&C&&!G.isLoading&&(null!==(j=null===(I=G.data)||void 0===I?void 0:I.messages.length)&&void 0!==j?j:0)<=1&&C.icebreakers&&C.icebreakers.length>0&&t(k,{data:null!==(S=C.icebreakers)&&void 0!==S?S:[],style:{backgroundColor:E.secondary,color:E.secondaryText},isMobile:ee,onSend:te}),o("div",Object.assign({style:oe,className:"flex min-h-[56px] items-end gap-x-2 px-4 py-3 pb-[15px] shadow"},{children:["enduserupload"===(null==C?void 0:C.documentuploadtype)&&o("div",Object.assign({className:"tooltip"},{children:[t("input",{id:"file-upload",ref:$,type:"file",accept:[...f,...K?h:[]].join(", "),multiple:!0,hidden:!0,className:"hidden",onChange:o=>e(void 0,void 0,void 0,(function*(){yield P(Array.from(o.target.files||[])),o.target.value=""}))}),t("button",Object.assign({className:"flex items-center disabled:cursor-wait disabled:opacity-50",disabled:T,onClick:()=>{var e;return null===(e=$.current)||void 0===e?void 0:e.click()}},{children:t(v,{className:"h-6 w-6 shrink-0 stroke-2",style:{color:E.accent}})}))]})),t(x,{className:w("max-h-60 w-full resize-none border-transparent bg-transparent outline-none ring-0 scrollbar scrollbar-thin placeholder:font-semilight",!X.length&&"max-h-6 overflow-hidden text-ellipsis whitespace-nowrap"),value:X,placeholder:null!==(A=null==C?void 0:C.placeholdertext)&&void 0!==A?A:"What do you want to talk about?",onChange:e=>Z(e.target.value),onKeyDown:e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),te())}}),t("button",Object.assign({className:"outline-none disabled:cursor-default disabled:opacity-50",disabled:"idle"!==_||T,onClick:()=>te()},{children:t(y,{className:"h-6 w-6 shrink-0 stroke-2",style:{color:E.accent}})}))]}))]}))};export{I as default};
@@ -1 +1 @@
1
- import{jsx as e,jsxs as o}from"react/jsx-runtime";import{usePickaxeContext as l}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useScroll as r}from"../Addons/Scroll/hooks/useScroll.js";import s from"../../Core/ScrollArea.js";import t from"../Addons/Document/List.js";import i from"./History/index.js";import m from"./Input.js";import c from"../../../common/cn.js";const a=()=>{const{pickaxe:a,isShowIceBreaker:n}=l(),{scrollContainerRef:f}=r();return e("div",Object.assign({className:"relative flex flex-grow flex-col items-center"},{children:o("div",Object.assign({className:"relative flex w-full max-w-[800px] flex-grow flex-col"},{children:["enduserupload"===(null==a?void 0:a.documentuploadtype)&&e(t,{className:"absolute z-10 mt-4"}),e("div",Object.assign({className:c("flex w-full flex-grow flex-col pb-24 max-[767px]:pb-[4.5rem]",n&&"pb-44 max-[767px]:pb-40")},{children:e(s,Object.assign({ref:f,hideScrollbar:!0},{children:e(i,{})}))})),e("div",Object.assign({className:"absolute bottom-0 mb-6 mt-4 flex w-full justify-center max-[767px]:m-0"},{children:e(m,{})}))]}))}))};export{a as default};
1
+ import{jsx as e,jsxs as o}from"react/jsx-runtime";import{usePickaxeContext as r}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useScroll as l}from"../Addons/Scroll/hooks/useScroll.js";import s from"../../Core/ScrollArea.js";import t from"../Addons/Document/List.js";import i from"./History/index.js";import c from"./Input.js";import a from"../../../common/cn.js";const m=()=>{const{pickaxe:m,isShowIceBreaker:n}=r(),{scrollContainerRef:p}=l();return e("div",Object.assign({className:"relative flex flex-grow flex-col items-center"},{children:o("div",Object.assign({className:"relative flex w-full max-w-[800px] flex-grow flex-col"},{children:["enduserupload"===(null==m?void 0:m.documentuploadtype)&&e(t,{className:"absolute z-10 mt-4"}),e("div",Object.assign({className:a("flex w-full flex-grow flex-col pb-[4.5rem] @[767px]/pickaxe-root:pb-24",n&&"pb-40 @[767px]/pickaxe-root:pb-44")},{children:e(s,Object.assign({ref:p,hideScrollbar:!0},{children:e(i,{})}))})),e("div",Object.assign({className:"absolute bottom-0 flex w-full justify-center @[767px]/pickaxe-root:mt-4 @[767px]/pickaxe-root:mb-6"},{children:e(c,{})}))]}))}))};export{m as default};
@@ -1 +1 @@
1
- import{jsxs as e,jsx as o}from"react/jsx-runtime";import{useState as t}from"react";import{usePickaxeContext as i}from"../../../hooks/pickaxe/usePickaxeContext.js";import l from"../../Icons/circle-info.svg.js";import c from"../common/PickaxeIcon.js";import n from"../InfoModal.js";const s=()=>{var s;const{pickaxe:r,colors:a}=i(),[m,p]=t(!1);return e("div",Object.assign({className:"flex flex-col items-center"},{children:[m&&o(n,{isOpen:m,onChangeIsOpen:p}),o(c,{src:null==r?void 0:r.coverphoto,alt:`${null==r?void 0:r.formtitle}'s Profile Picture`,width:90,height:90,className:"h-[90px] w-[90px] rounded-full"}),e("h2",Object.assign({className:"mt-6 text-center text-[18px] font-semibold opacity-70 max-[767px]:text-base"},{children:[`${null==r?void 0:r.formtitle.slice(0,130)}${(null!==(s=null==r?void 0:r.formtitle)&&void 0!==s?s:"").length>130?"...":""}`,o("button",Object.assign({className:"ml-2 inline-block outline-none hover:opacity-70 hover:duration-300 active:opacity-100",onClick:()=>p(!0)},{children:o(l,{className:"h-5 w-5 shrink-0",style:{color:a.accent}})}))]})),o("p",Object.assign({className:"mt-2 max-w-[600px] line-clamp-3 whitespace-pre-line text-center font-semilight opacity-70"},{children:null==r?void 0:r.formdescription}))]}))};export{s as default};
1
+ import{jsxs as e,jsx as o}from"react/jsx-runtime";import{useState as t}from"react";import{usePickaxeContext as i}from"../../../hooks/pickaxe/usePickaxeContext.js";import c from"../../Icons/circle-info.svg.js";import l from"../common/PickaxeIcon.js";import n from"../common/PickaxeInfoModal.js";const r=()=>{var r;const{pickaxe:s,colors:a}=i(),[m,p]=t(!1);return e("div",Object.assign({className:"flex flex-col items-center"},{children:[m&&o(n,{isOpen:m,onChangeIsOpen:p}),o(l,{src:null==s?void 0:s.coverphoto,alt:`${null==s?void 0:s.formtitle}'s Profile Picture`,width:90,height:90,className:"h-[90px] w-[90px] rounded-full"}),e("h2",Object.assign({className:"mt-6 text-center @[767px]/pickaxe-root:text-[18px] font-semibold opacity-70"},{children:[`${null==s?void 0:s.formtitle.slice(0,130)}${(null!==(r=null==s?void 0:s.formtitle)&&void 0!==r?r:"").length>130?"...":""}`,o("button",Object.assign({className:"ml-2 inline-block outline-none hover:opacity-70 hover:duration-300 active:opacity-100",onClick:()=>p(!0)},{children:o(c,{className:"h-5 w-5 shrink-0",style:{color:a.accent}})}))]})),o("p",Object.assign({className:"mt-2 max-w-[600px] line-clamp-3 whitespace-pre-line text-center font-semilight opacity-70"},{children:null==s?void 0:s.formdescription}))]}))};export{r as default};
@@ -1 +1 @@
1
- import{jsx as e,jsxs as s}from"react/jsx-runtime";import{usePickaxeContext as t}from"../../../hooks/pickaxe/usePickaxeContext.js";import i from"./Head.js";import l from"./History/index.js";import o from"./NewChat.js";import a from"./Questions/index.js";const r=()=>{const{pickaxe:r}=t();return e("div",Object.assign({className:"flex w-full flex-col items-center pt-12 px-4 pb-40 max-[899px]:pb-10"},{children:s("div",Object.assign({className:"flex w-full max-w-[700px] flex-col"},{children:[e(i,{}),s("div",Object.assign({className:"flex flex-col gap-y-8 lg:mt-4"},{children:[(null==r?void 0:r.chatflag)?e(o,{}):e(a,{}),e(l,{})]}))]}))}))};export{r as default};
1
+ import{jsx as e,jsxs as o}from"react/jsx-runtime";import{usePickaxeContext as t}from"../../../hooks/pickaxe/usePickaxeContext.js";import i from"./Head.js";import s from"./History/index.js";import r from"./NewChat.js";import a from"./Questions/index.js";const l=()=>{const{pickaxe:l}=t();return e("div",Object.assign({className:"flex w-full flex-col items-center pt-12 px-4 pb-10 @[767px]/pickaxe-root:pb-40"},{children:o("div",Object.assign({className:"flex w-full max-w-[700px] flex-col"},{children:[e(i,{}),o("div",Object.assign({className:"flex flex-col gap-y-8 @[767px]/pickaxe-root:mt-4"},{children:[(null==l?void 0:l.chatflag)?e(r,{}):e(a,{}),e(s,{})]}))]}))}))};export{l as default};
@@ -0,0 +1 @@
1
+ import{jsx as e,jsxs as o}from"react/jsx-runtime";import{usePickaxeContext as t}from"../../../hooks/pickaxe/usePickaxeContext.js";import i from"../../Icons/x.svg.js";import s from"../../Core/Modal/index.js";import l from"../../Core/Modal/Body.js";import r from"./PickaxeIcon.js";const c=({isOpen:c,onChangeIsOpen:a})=>{const{pickaxe:n,colors:m}=t();return e(s,Object.assign({isOpen:c,onChange:a},{children:o(l,Object.assign({className:"relative flex w-full flex-col px-8 py-[26px] @[767px]/pickaxe-root:max-w-[480px]",style:{backgroundColor:m.primary,borderColor:m.text+"4D"},avoidOverflow:!0},{children:[e("div",Object.assign({className:"flex items-start justify-end gap-4"},{children:e("button",Object.assign({className:"outline-none hover:opacity-70 hover:duration-300 active:opacity-100",onClick:()=>a(!1)},{children:e(i,{className:"h-6 w-6 shrink-0"})}))})),e("div",Object.assign({className:"mt-8 flex flex-col items-center"},{children:o("div",Object.assign({className:"flex w-full max-w-[360px] flex-col items-center text-center"},{children:[e(r,{src:null==n?void 0:n.coverphoto,alt:`${null==n?void 0:n.formtitle}'s Profile Picture`,width:90,height:90,className:"h-[90px] w-[90px] rounded-full"}),e("h2",Object.assign({className:"mt-6 text-center font-semibold opacity-70 @[767px]/pickaxe-root:text-[18px]"},{children:null==n?void 0:n.formtitle})),e("p",Object.assign({className:"mt-4 font-semilight opacity-70"},{children:null==n?void 0:n.formdescription}))]}))}))]}))}))};export{c as default};
@@ -1 +1 @@
1
- import{useMemo as o}from"react";import{usePickaxeContext as r}from"../pickaxe/usePickaxeContext.js";const e=()=>{const{styles:e,colors:t}=r();return o((()=>Object.assign(Object.assign(Object.assign({borderWidth:`${e.outlineThickness}px`,borderRadius:`${e.cornerRadius}px`,background:"transparent"},"minimal"===e.formFieldStyle&&{borderBottomColor:t.secondary,color:t.text}),"box"===e.formFieldStyle&&{borderColor:t.secondary+"AA",color:t.text}),"block"===e.formFieldStyle&&{backgroundColor:t.secondary,color:t.secondaryText})),[e,t])};export{e as useStyleInput};
1
+ import{useMemo as o}from"react";import{usePickaxeContext as r}from"../pickaxe/usePickaxeContext.js";const e=()=>{const{styles:e,colors:t}=r();return o((()=>Object.assign(Object.assign(Object.assign({borderWidth:`${e.outlineThickness}px`,borderRadius:`${e.cornerRadius}px`,backgroundColor:"transparent"},"minimal"===e.formFieldStyle&&{borderTopColor:"transparent",borderRightColor:"transparent",borderLeftColor:"transparent",borderBottomColor:t.secondary,color:t.text}),"box"===e.formFieldStyle&&{borderColor:t.secondary+"AA",color:t.text}),"block"===e.formFieldStyle&&{borderColor:t.secondary,backgroundColor:t.secondary,color:t.secondaryText})),[e,t])};export{e as useStyleInput};
@@ -0,0 +1,6 @@
1
+ interface PickaxeInfoModalProps {
2
+ isOpen: boolean;
3
+ onChangeIsOpen: (isOpen: boolean) => void;
4
+ }
5
+ declare const PickaxeInfoModal: ({ isOpen, onChangeIsOpen, }: PickaxeInfoModalProps) => import("react/jsx-runtime").JSX.Element;
6
+ export default PickaxeInfoModal;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pickaxeproject/react",
3
- "version": "0.0.17",
3
+ "version": "0.0.19",
4
4
  "description": "Client utility library for Pickaxe",
5
5
  "repository": {
6
6
  "type": "git",
@@ -34,8 +34,7 @@
34
34
  "not op_mini all"
35
35
  ],
36
36
  "dependencies": {
37
- "@babel/runtime": "^7.20.7",
38
- "@storybook/react-vite": "^8.4.7"
37
+ "@babel/runtime": "^7.20.7"
39
38
  },
40
39
  "devDependencies": {
41
40
  "@babel/core": "^7.20.12",
@@ -61,6 +60,7 @@
61
60
  "@storybook/addon-themes": "^8.4.7",
62
61
  "@storybook/blocks": "8.4.7",
63
62
  "@storybook/react": "8.4.7",
63
+ "@storybook/react-vite": "^8.4.7",
64
64
  "@storybook/test": "8.4.7",
65
65
  "@svgr/rollup": "^8.1.0",
66
66
  "@tailwindcss/container-queries": "^0.1.1",
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("../../hooks/pickaxe/usePickaxeContext.js"),t=require("../Icons/x.svg.js"),i=require("../Core/Modal/index.js"),l=require("../Core/Modal/Body.js"),a=require("./common/PickaxeIcon.js");exports.default=({isOpen:c,onChangeIsOpen:n})=>{const{pickaxe:o}=s.usePickaxeContext();return e.jsx(i.default,Object.assign({isOpen:c,onChange:n},{children:e.jsxs(l.default,Object.assign({className:"relative flex w-full max-w-[480px] flex-col px-8 py-[26px] max-[767px]:max-w-full",avoidOverflow:!0},{children:[e.jsx("div",Object.assign({className:"flex items-start justify-end gap-4"},{children:e.jsx("button",Object.assign({className:"outline-none hover:opacity-70 hover:duration-300 active:opacity-100",onClick:()=>n(!1)},{children:e.jsx(t.default,{className:"h-6 w-6 shrink-0"})}))})),e.jsx("div",Object.assign({className:"mt-8 flex flex-col items-center"},{children:e.jsxs("div",Object.assign({className:"flex w-full max-w-[360px] flex-col items-center text-center"},{children:[e.jsx(a.default,{src:null==o?void 0:o.coverphoto,alt:`${null==o?void 0:o.formtitle}'s Profile Picture`,width:90,height:90,className:"h-[90px] w-[90px] rounded-full"}),e.jsx("h2",Object.assign({className:"mt-6 text-center text-[18px] font-semibold opacity-70 max-[767px]:text-base"},{children:null==o?void 0:o.formtitle})),e.jsx("p",Object.assign({className:"mt-4 font-semilight opacity-70"},{children:null==o?void 0:o.formdescription}))]}))}))]}))}))};
@@ -1,6 +0,0 @@
1
- interface InfoModalProps {
2
- isOpen: boolean;
3
- onChangeIsOpen: (isOpen: boolean) => void;
4
- }
5
- declare const InfoModal: ({ isOpen, onChangeIsOpen }: InfoModalProps) => import("react/jsx-runtime").JSX.Element;
6
- export default InfoModal;
@@ -1 +0,0 @@
1
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import{usePickaxeContext as i}from"../../hooks/pickaxe/usePickaxeContext.js";import s from"../Icons/x.svg.js";import o from"../Core/Modal/index.js";import l from"../Core/Modal/Body.js";import a from"./common/PickaxeIcon.js";const c=({isOpen:c,onChangeIsOpen:n})=>{const{pickaxe:r}=i();return e(o,Object.assign({isOpen:c,onChange:n},{children:t(l,Object.assign({className:"relative flex w-full max-w-[480px] flex-col px-8 py-[26px] max-[767px]:max-w-full",avoidOverflow:!0},{children:[e("div",Object.assign({className:"flex items-start justify-end gap-4"},{children:e("button",Object.assign({className:"outline-none hover:opacity-70 hover:duration-300 active:opacity-100",onClick:()=>n(!1)},{children:e(s,{className:"h-6 w-6 shrink-0"})}))})),e("div",Object.assign({className:"mt-8 flex flex-col items-center"},{children:t("div",Object.assign({className:"flex w-full max-w-[360px] flex-col items-center text-center"},{children:[e(a,{src:null==r?void 0:r.coverphoto,alt:`${null==r?void 0:r.formtitle}'s Profile Picture`,width:90,height:90,className:"h-[90px] w-[90px] rounded-full"}),e("h2",Object.assign({className:"mt-6 text-center text-[18px] font-semibold opacity-70 max-[767px]:text-base"},{children:null==r?void 0:r.formtitle})),e("p",Object.assign({className:"mt-4 font-semilight opacity-70"},{children:null==r?void 0:r.formdescription}))]}))}))]}))}))};export{c as default};
@@ -1,6 +0,0 @@
1
- interface InfoModalProps {
2
- isOpen: boolean;
3
- onChangeIsOpen: (isOpen: boolean) => void;
4
- }
5
- declare const InfoModal: ({ isOpen, onChangeIsOpen }: InfoModalProps) => import("react/jsx-runtime").JSX.Element;
6
- export default InfoModal;