@pickaxeproject/react 0.0.48 → 0.0.50

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.
Files changed (45) hide show
  1. package/dist/cjs/components/Pickaxe/Addons/Scroll/Provider.js +1 -1
  2. package/dist/cjs/components/Pickaxe/Addons/Scroll/ScrollLockView.js +1 -1
  3. package/dist/cjs/components/Pickaxe/Addons/Scroll/hooks/useScroll.js +1 -1
  4. package/dist/cjs/components/Pickaxe/Chat/Input.js +1 -1
  5. package/dist/cjs/components/Pickaxe/Chat/index.js +1 -1
  6. package/dist/cjs/components/Pickaxe/Form/History/Response.js +1 -1
  7. package/dist/cjs/components/Pickaxe/Form/Questions/Submit.js +1 -1
  8. package/dist/cjs/components/Pickaxe/Provider.js +1 -1
  9. package/dist/cjs/components/Pickaxe/common/PickaxeMarkdown/Custom/Img/ImgModal.js +1 -1
  10. package/dist/cjs/components/Pickaxe/common/PickaxeMarkdown/Custom/Img/index.js +1 -1
  11. package/dist/cjs/components/Pickaxe/common/PickaxeMarkdown/Custom/common/LinkPreview.js +1 -1
  12. package/dist/cjs/components/Pickaxe/common/PickaxeMarkdown/Renderer.js +1 -1
  13. package/dist/cjs/hooks/pickaxe/useSubmit.js +1 -1
  14. package/dist/cjs/src/components/Pickaxe/Addons/Scroll/Provider.d.ts +5 -5
  15. package/dist/cjs/src/components/Pickaxe/Addons/Scroll/hooks/useScroll.d.ts +3 -8
  16. package/dist/cjs/src/components/Pickaxe/Addons/Scroll/hooks/useScrollContext.d.ts +3 -4
  17. package/dist/cjs/src/components/Pickaxe/Provider.d.ts +3 -1
  18. package/dist/cjs/src/components/Pickaxe/common/PickaxeMarkdown/Custom/Img/ImgModal.d.ts +2 -3
  19. package/dist/cjs/src/hooks/pickaxe/usePickaxeContext.d.ts +1 -0
  20. package/dist/cjs/src/hooks/pickaxe/useSubmit.d.ts +1 -0
  21. package/dist/cjs/src/hooks/pickaxe/useSubmitResult.d.ts +1 -0
  22. package/dist/esm/components/Pickaxe/Addons/Scroll/Provider.js +1 -1
  23. package/dist/esm/components/Pickaxe/Addons/Scroll/ScrollLockView.js +1 -1
  24. package/dist/esm/components/Pickaxe/Addons/Scroll/hooks/useScroll.js +1 -1
  25. package/dist/esm/components/Pickaxe/Chat/Input.js +1 -1
  26. package/dist/esm/components/Pickaxe/Chat/index.js +1 -1
  27. package/dist/esm/components/Pickaxe/Form/History/Response.js +1 -1
  28. package/dist/esm/components/Pickaxe/Form/Questions/Submit.js +1 -1
  29. package/dist/esm/components/Pickaxe/Provider.js +1 -1
  30. package/dist/esm/components/Pickaxe/common/PickaxeMarkdown/Custom/Img/ImgModal.js +1 -1
  31. package/dist/esm/components/Pickaxe/common/PickaxeMarkdown/Custom/Img/index.js +1 -1
  32. package/dist/esm/components/Pickaxe/common/PickaxeMarkdown/Custom/common/LinkPreview.js +1 -1
  33. package/dist/esm/components/Pickaxe/common/PickaxeMarkdown/Renderer.js +1 -1
  34. package/dist/esm/hooks/pickaxe/useSubmit.js +1 -1
  35. package/dist/esm/src/components/Pickaxe/Addons/Scroll/Provider.d.ts +5 -5
  36. package/dist/esm/src/components/Pickaxe/Addons/Scroll/hooks/useScroll.d.ts +3 -8
  37. package/dist/esm/src/components/Pickaxe/Addons/Scroll/hooks/useScrollContext.d.ts +3 -4
  38. package/dist/esm/src/components/Pickaxe/Provider.d.ts +3 -1
  39. package/dist/esm/src/components/Pickaxe/common/PickaxeMarkdown/Custom/Img/ImgModal.d.ts +2 -3
  40. package/dist/esm/src/hooks/pickaxe/usePickaxeContext.d.ts +1 -0
  41. package/dist/esm/src/hooks/pickaxe/useSubmit.d.ts +1 -0
  42. package/dist/esm/src/hooks/pickaxe/useSubmitResult.d.ts +1 -0
  43. package/package.json +13 -12
  44. package/dist/cjs/components/Core/Modal/CloseButton.js +0 -1
  45. package/dist/esm/components/Core/Modal/CloseButton.js +0 -1
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react");const t=r.createContext({});exports.ScrollContext=t,exports.default=({children:s})=>{const[c,l]=r.useState(!1),[o,n]=r.useState(!0),[i,a]=r.useState(!0),u=r.useRef(),d=r.useRef();return e.jsx(t.Provider,Object.assign({value:{scrollContainerRef:u,scrollTargetRef:d,isScrolling:c,isScrollIncreasing:o,isLocked:i,setIsScrolling:l,setIsScrollIncreasing:n,setIsLocked:a}},{children:s}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react");const s=r.createContext({});exports.ScrollContext=s,exports.default=({children:t})=>{const[l,c]=r.useState(!1),[o,n]=r.useState(!0),i=r.useRef(),a=r.useRef(),u=r.useRef(!1);return e.jsx(s.Provider,Object.assign({value:{scrollContainerRef:i,scrollTargetRef:a,hasScrolledRef:u,isScrolling:l,isScrollIncreasing:o,setIsScrolling:c,setIsScrollIncreasing:n}},{children:t}))};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react-intersection-observer"),s=require("./hooks/useScrollContext.js");exports.default=({className:t})=>{const{setIsLocked:o}=s.useScrollContext(),{ref:c}=r.useInView({onChange(e){e&&o(!0)}});return e.jsx("div",Object.assign({ref:c,id:"scroll-lock-view"},t&&{className:t}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react-intersection-observer"),s=require("./hooks/useScrollContext.js");exports.default=({className:t})=>{const{hasScrolledRef:o}=s.useScrollContext(),{ref:c}=r.useInView({onChange(e){e&&(o.current=!1)}});return e.jsx("div",Object.assign({ref:c,className:"scroll-lock-view"},t&&{className:t}))};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("./useScrollContext.js");exports.useScroll=({behavior:t="smooth"}={behavior:"smooth"})=>{const{scrollContainerRef:n,scrollTargetRef:l,isScrolling:o,isScrollIncreasing:s,isLocked:c,setIsScrolling:u,setIsScrollIncreasing:i,setIsLocked:d}=r.useScrollContext(),[a,v]=e.useState(0),f=e.useRef(!1),h=e.useMemo((()=>n&&n.current?n.current:"undefined"==typeof window?null:window),[n]);e.useEffect((()=>{if(!h)return;const e=e=>{o&&c&&("mousedown"===e.type||"wheel"===e.type||"DOMMouseScroll"===e.type||"mousewheel"===e.type)&&d(!1)};return null==h||h.addEventListener("scroll",e),null==h||h.addEventListener("mousedown",e),null==h||h.addEventListener("wheel",e),null==h||h.addEventListener("DOMMouseScroll",e),null==h||h.addEventListener("mousewheel",e),()=>{null==h||h.removeEventListener("scroll",e),null==h||h.removeEventListener("mousedown",e),null==h||h.removeEventListener("wheel",e),null==h||h.removeEventListener("DOMMouseScroll",e),null==h||h.removeEventListener("mousewheel",e)}}),[o,c,h]),e.useEffect((()=>{f.current=!c}),[c]),e.useEffect((()=>{const e=setInterval((()=>{if(n.current&&o){const e=n.current.scrollHeight;if(e===a)return;i(e>a),v(e)}}),100);return()=>clearInterval(e)}),[a,o]);const w=e=>{if(f.current)return;const r=l.current;if(!n.current){if("undefined"==typeof window)return;const n=null!=e?e:r?r.clientHeight:document.body.scrollHeight;return void window.scrollTo({top:n,behavior:t})}const o=null!=e?e:r?r.clientHeight:n.current.scrollHeight;n.current.scrollTo({top:o,behavior:t})};return{scrollContainerRef:n,scrollTargetRef:l,isScrollIncreasing:s,scrollToContainer:()=>{w(0)},scrollToBottom:()=>{w()},scrollStart:()=>{u(!0),d(!f.current)},scrollEnd:()=>{u(!1)}}};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("./useScrollContext.js");exports.useScroll=({auto:o})=>{const{scrollContainerRef:l,scrollTargetRef:t,hasScrolledRef:s,isScrollIncreasing:c,setIsScrolling:n,setIsScrollIncreasing:u}=r.useScrollContext(),[i,a]=e.useState(0);e.useEffect((()=>{const e=setInterval((()=>{if(l.current){const e=l.current.scrollHeight;if(e===i)return;const r=e>i;u(r),a(e),r&&o&&f()}}),100);return()=>clearInterval(e)}),[l,i]);const f=()=>{try{if(n(!0),!l.current)return void("development"===process.env.NODE_ENV&&console.log("[useScroll] scrollContainerRef not detected"));if(s.current)return;const e=l.current.scrollHeight;l.current.scrollTo({top:e,behavior:"smooth"}),"development"===process.env.NODE_ENV&&console.log("[useScroll] scrolled scrollContainerRef")}finally{n(!1)}};return{isScrollIncreasing:c,scrollToBottom:f,scrollToTarget:()=>{try{n(!0);const e=l.current||window;if(!t.current)return void("development"===process.env.NODE_ENV&&console.log("[useScroll] scrollTargetRef not detected"));const r=e.scrollHeight;e.scrollTo({top:r,behavior:"smooth"}),"development"===process.env.NODE_ENV&&console.log("[useScroll] scrolled scrollTargetRef")}finally{n(!1)}}}};
@@ -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"),i=require("../../../hooks/pickaxe/useResponseContext.js"),n=require("../../../hooks/studio/useStyleInput.js"),a=require("../../../hooks/studio/useStyleFontSize.js"),l=require("../../../hooks/pickaxe/useConversation.js"),d=require("../../../hooks/pickaxe/useSubmit.js"),u=require("../../../hooks/pickaxe/useSubmitResult.js"),c=require("../Addons/Document/hooks/useDocument.js"),m=require("../Addons/Scroll/hooks/useScroll.js"),p=require("../../../common/documents.js"),h=require("../../../common/api/streamer.js"),x=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"),f=require("../../Icons/attach.svg.js"),g=require("../../Icons/send.svg.js"),j=require("../common/PickaxeBranding.js"),v=require("../Addons/IceBreaker/index.js"),b=require("../../../common/error.js"),y=require("../../../common/cn.js");exports.default=()=>{var k;const{formId:I,chatId:w,userId:q,studioUserId:S,pickaxe:D,colors:O,misc:N,responsiveBy:C,isNewChat:_,forceMobile:A,setIsNewChat:E,setIsShowIceBreaker:M,onGenerateComplete:R}=r.usePickaxeContext(),{messages:U,status:z,limits:B,setMessages:F,setStatus:P,setLimitData:T,setError:L}=i.useResponseContext(),{documents:W,isUploading:K,isImageUploadAllowed:Q,upsertDocuments:G,onFileUpload:H,onEditDocumentByDocId:V}=c.useDocument(),{isScrollIncreasing:J,scrollToBottom:X,scrollStart:Y,scrollEnd:Z}=m.useScroll(),$=l.useConversation(),ee=d.useSubmit(),se=u.useSubmitResult(),[te,oe]=t.useState(""),re=t.useRef(null),[ie]=o.useMediaQuery("(max-width: 767px)"),ne=n.useStyleInput(),ae=a.useStyleFontSize({type:"body"}),le=t.useMemo((()=>{var e,s,t;return!!_&&(!!D&&(!$.isLoading&&(!((null!==(s=null===(e=$.data)||void 0===e?void 0:e.messages.length)&&void 0!==s?s:0)>1)&&!!(null===(t=D.icebreakers)||void 0===t?void 0:t.length))))}),[D,_,$.data,$.isLoading]);t.useEffect((()=>{M(le)}),[le]);const de=s=>e.__awaiter(void 0,void 0,void 0,(function*(){try{if(K)return;T(null),L(""),E(!1);const e=null!=s?s:te;if(!e||"fetching"===z||"streaming"===z)return;const t=new Date;oe("");const o="enduserupload"===(null==D?void 0:D.documentuploadtype),r=W.filter((e=>"finished"===e.status&&!e.isInsertedAsRaw)),i=r.length?r[r.length-1].documentId:"";P("fetching");const n=[...U,{id:U.length+1,role:"user",content:e}];F(n),Y(),X();const{success:a,data:l,usedDocumentIds:d,newDocumentId:u,newDocumentName:c,isInsertedFile:m,error:p}=yield ee.mutateAsync(Object.assign(Object.assign({formId:I,responseId:w,value:e},o&&i&&{documentId:i}),S&&{studioUserId:S}));if(!a)throw new Error(null!=p?p:"An error occurred, please try again.");m&&i&&V({documentId:i,isInsertedAsRaw:!0}),u&&c&&G([{type:"website",id:c,name:c,status:"finished",documentId:u}]),X();const x=(yield h.streamer({formId:I,responseId:w,data:l})).body;if(!x)throw new Error("Streaming error");const f=x.getReader(),g=new TextDecoder,j=n.length;let v="",b=!0;for(P("streaming");b;){const{value:e,done:s}=yield f.read();b=!s;if(v+=g.decode(e),"development"===process.env.NODE_ENV&&console.log("[streamingResult]",v),v)F([...n.slice(0,j),{id:U.length+1,role:"assistant",content:v}]),J&&X();else if(!b&&!v)throw new Error("Server error")}const y=new Date;v&&(X(),P("idle"),yield se.mutateAsync(Object.assign(Object.assign(Object.assign(Object.assign({formId:I,responseId:w,documentIds:d},q&&{userId:q}),S&&{studioUserId:S}),S&&(null==D?void 0:D.studioid)&&{studioId:D.studioid}),{messages:[{role:"user",message:e,sentAt:t},{role:"assistant",message:v,sentAt:y}]})),null==R||R(w))}catch(e){let s=b.default(e)||"";s&&!s.includes("Unexpected token 'A',")||(s="Oops! We're experiencing high traffic at the moment. Please try again later.");const t=Object.entries(B).find((([e])=>s.includes(e)));t?T(t[1]):L(s),X()}finally{P("idle"),Z()}}));return s.jsxs("div",Object.assign({className:y.default("fixed flex w-full flex-col bottom-0 left-0","viewport"===C?"min-[767px]:relative min-[767px]:bottom-auto min-[767px]:left-auto":"absolute @[767px]/pickaxe-root:relative @[767px]/pickaxe-root:bottom-auto @[767px]/pickaxe-root:left-auto")},{children:[!N.isWhiteLabel&&s.jsx("div",Object.assign({className:"flex justify-end pr-3"},{children:s.jsx(j.default,{animateHover:!0})})),le&&s.jsx(v.default,{data:(null==D?void 0:D.icebreakers)||[],style:{backgroundColor:O.secondary,color:O.secondaryText},isMobile:A||ie,onSend:de}),s.jsxs("div",Object.assign({style:ne,className:"flex min-h-[56px] items-end gap-x-2 px-4 py-3 pb-[15px] shadow"},{children:["enduserupload"===(null==D?void 0:D.documentuploadtype)&&s.jsxs("div",Object.assign({className:"tooltip"},{children:[s.jsx("input",{id:"file-upload",ref:re,type:"file",accept:[...p.allowedFileMimeTypes,...Q?p.allowedImageMimeTypes:[]].join(", "),multiple:!0,hidden:!0,className:"hidden",onChange:s=>e.__awaiter(void 0,void 0,void 0,(function*(){yield H(Array.from(s.target.files||[])),s.target.value=""}))}),s.jsx("button",Object.assign({className:"flex items-center disabled:cursor-wait disabled:opacity-50",disabled:K,onClick:()=>{var e;return null===(e=re.current)||void 0===e?void 0:e.click()}},{children:s.jsx(f.default,{className:"h-6 w-6 shrink-0 stroke-2",style:{color:O.accent}})}))]})),s.jsx(x.default,{className:y.default(ae("max-h-60 w-full resize-none border-transparent bg-transparent outline-none ring-0 scrollbar scrollbar-thin placeholder:font-semilight"),!te.length&&"max-h-6 overflow-hidden text-ellipsis whitespace-nowrap"),value:te,placeholder:null!==(k=null==D?void 0:D.placeholdertext)&&void 0!==k?k:"What do you want to talk about?",onChange:e=>oe(e.target.value),onKeyDown:e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),de())}}),s.jsx("button",Object.assign({className:"outline-none disabled:cursor-default disabled:opacity-50",disabled:"idle"!==z||K,onClick:()=>de()},{children:s.jsx(g.default,{className:"h-6 w-6 shrink-0 stroke-2",style:{color:O.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"),i=require("../../../hooks/pickaxe/useResponseContext.js"),n=require("../../../hooks/studio/useStyleInput.js"),a=require("../../../hooks/studio/useStyleFontSize.js"),l=require("../../../hooks/pickaxe/useConversation.js"),d=require("../../../hooks/pickaxe/useSubmit.js"),u=require("../../../hooks/pickaxe/useSubmitResult.js"),c=require("../Addons/Document/hooks/useDocument.js"),m=require("../Addons/Scroll/hooks/useScroll.js"),p=require("../../../common/documents.js"),h=require("../../../common/api/streamer.js"),x=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"),f=require("../../Icons/attach.svg.js"),g=require("../../Icons/send.svg.js"),j=require("../common/PickaxeBranding.js"),b=require("../Addons/IceBreaker/index.js"),y=require("../../../common/error.js"),v=require("../../../common/cn.js");exports.default=()=>{var I;const{formId:k,chatId:w,userId:q,studioUserId:S,deploymentId:O,pickaxe:D,colors:C,misc:A,responsiveBy:N,isNewChat:_,forceMobile:M,setIsNewChat:R,setIsShowIceBreaker:U,onGenerateComplete:E}=r.usePickaxeContext(),{messages:z,status:B,limits:F,isGenerating:P,setMessages:T,setStatus:L,setLimitData:G,setError:W,setIsGenerating:K}=i.useResponseContext(),{documents:Q,isUploading:H,isImageUploadAllowed:J,upsertDocuments:V,onFileUpload:X,onEditDocumentByDocId:Y}=c.useDocument(),{scrollToBottom:Z}=m.useScroll({auto:!0}),$=l.useConversation(),ee=d.useSubmit(),se=u.useSubmitResult(),[te,oe]=t.useState(""),re=t.useRef(null),[ie]=o.useMediaQuery("(max-width: 767px)"),ne=n.useStyleInput(),ae=a.useStyleFontSize({type:"body"}),le=t.useMemo((()=>{var e,s,t;return!!_&&(!!D&&(!$.isLoading&&(!((null!==(s=null===(e=$.data)||void 0===e?void 0:e.messages.length)&&void 0!==s?s:0)>1)&&!!(null===(t=D.icebreakers)||void 0===t?void 0:t.length))))}),[D,_,$.data,$.isLoading]);t.useEffect((()=>{U(le)}),[le]);const de=s=>e.__awaiter(void 0,void 0,void 0,(function*(){try{if(P||H||"idle"!==B)return;const e=null!=s?s:te;if(!e)return;oe(""),W(""),G(null),K(!0),R(!1);const t=new Date,o="enduserupload"===(null==D?void 0:D.documentuploadtype),r=Q.filter((e=>"finished"===e.status&&!e.isInsertedAsRaw)),i=r.length?r[r.length-1].documentId:"";L("fetching"),Z();const n=[...z,{id:z.length+1,role:"user",content:e}];T(n),Z();const{success:a,data:l,usedDocumentIds:d,newDocumentId:u,newDocumentName:c,rawUserInput:m,isInsertedFile:p,error:x}=yield ee.mutateAsync(Object.assign(Object.assign(Object.assign({formId:k,responseId:w,value:e},o&&i&&{documentId:i}),S&&{studioUserId:S}),O&&{deploymentId:O}));if(!a)throw new Error(null!=x?x:"An error occurred, please try again.");Z(),p&&i&&Y({documentId:i,isInsertedAsRaw:!0}),u&&c&&V([{type:"website",id:c,name:c,status:"finished",documentId:u}]),Z();const f=(yield h.streamer({formId:k,responseId:w,data:l})).body;if(!f)throw new Error("Streaming error");const g=f.getReader(),j=new TextDecoder,b=n.length;let y="",v=!0;for(L("streaming");v;){const{value:e,done:s}=yield g.read();v=!s;if(y+=j.decode(e),y)T([...n.slice(0,b),{id:z.length+1,role:"assistant",content:y}]);else if(!v&&!y)throw new Error("Server error")}const I=new Date;y&&(Z(),L("idle"),yield se.mutateAsync(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({formId:k,responseId:w,documentIds:d},q&&{userId:q}),S&&{studioUserId:S}),S&&(null==D?void 0:D.studioid)&&{studioId:D.studioid}),O&&{deploymentId:O}),{messages:[{role:"user",message:m,sentAt:t},{role:"assistant",message:y,sentAt:I}]})),null==E||E(w))}catch(e){let s=y.default(e)||"";s&&!s.includes("Unexpected token 'A',")||(s="Oops! We're experiencing high traffic at the moment. Please try again later.");const t=Object.entries(F).find((([e])=>s.includes(e)));t?G(t[1]):W(s),Z()}finally{L("idle"),K(!1)}}));return s.jsxs("div",Object.assign({className:v.default("fixed flex w-full flex-col bottom-0 left-0","viewport"===N?"min-[767px]:relative min-[767px]:bottom-auto min-[767px]:left-auto":"absolute @[767px]/pickaxe-root:relative @[767px]/pickaxe-root:bottom-auto @[767px]/pickaxe-root:left-auto")},{children:[!A.isWhiteLabel&&s.jsx("div",Object.assign({className:"flex justify-end pr-3"},{children:s.jsx(j.default,{animateHover:!0})})),le&&s.jsx(b.default,{data:(null==D?void 0:D.icebreakers)||[],style:{backgroundColor:C.secondary,color:C.secondaryText},isMobile:M||ie,onSend:de}),s.jsxs("div",Object.assign({style:ne,className:"flex min-h-[56px] items-end gap-x-2 px-4 py-3 pb-[15px] shadow"},{children:["enduserupload"===(null==D?void 0:D.documentuploadtype)&&s.jsxs("div",Object.assign({className:"tooltip"},{children:[s.jsx("input",{id:"file-upload",ref:re,type:"file",accept:[...p.allowedFileMimeTypes,...J?p.allowedImageMimeTypes:[]].join(", "),multiple:!0,hidden:!0,className:"hidden",onChange:s=>e.__awaiter(void 0,void 0,void 0,(function*(){yield X(Array.from(s.target.files||[])),s.target.value=""}))}),s.jsx("button",Object.assign({className:"flex items-center disabled:cursor-wait disabled:opacity-50",disabled:H,onClick:()=>{var e;return null===(e=re.current)||void 0===e?void 0:e.click()}},{children:s.jsx(f.default,{className:"h-6 w-6 shrink-0 stroke-2",style:{color:C.accent}})}))]})),s.jsx(x.default,{className:v.default(ae("max-h-60 w-full resize-none border-transparent bg-transparent outline-none ring-0 scrollbar scrollbar-thin placeholder:font-semilight"),!te.length&&"max-h-6 overflow-hidden text-ellipsis whitespace-nowrap"),value:te,placeholder:null!==(I=null==D?void 0:D.placeholdertext)&&void 0!==I?I:"What do you want to talk about?",onChange:e=>oe(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.shiftKey||(e.preventDefault(),P||H||"idle"!==B||de()))}}),s.jsx("button",Object.assign({className:"outline-none disabled:cursor-default disabled:opacity-50",disabled:P||H||"idle"!==B,onClick:()=>de()},{children:s.jsx(g.default,{className:"h-6 w-6 shrink-0 stroke-2",style:{color:C.accent}})}))]}))]}))};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("../../../hooks/pickaxe/usePickaxeContext.js"),s=require("../Addons/Scroll/hooks/useScroll.js"),l=require("../../Core/ScrollArea.js"),t=require("../Addons/Document/List.js"),i=require("./History/index.js"),o=require("./Input.js"),a=require("../../../common/cn.js");exports.default=()=>{const{pickaxe:c,isShowIceBreaker:x,responsiveBy:u}=r.usePickaxeContext(),{scrollContainerRef:n}=s.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:a.default("flex w-full flex-grow flex-col pb-[4.5rem]","viewport"===u?"min-[767px]:pb-24":"@[767px]/pickaxe-root:pb-24",x&&"pb-40",x&&("viewport"===u?"min-[767px]:pb-44":"@[767px]/pickaxe-root:pb-44"))},{children:e.jsx(l.default,Object.assign({ref:n,hideScrollbar:!0},{children:e.jsx(i.default,{})}))})),e.jsx("div",Object.assign({className:a.default("absolute bottom-0 flex w-full justify-center","viewport"===u?"min-[767px]:mt-4 min-[767px]:mb-6":"@[767px]/pickaxe-root:mt-4 @[767px]/pickaxe-root:mb-6")},{children:e.jsx(o.default,{})}))]}))}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("../../../hooks/pickaxe/usePickaxeContext.js"),s=require("../Addons/Scroll/hooks/useScrollContext.js"),l=require("../../Core/ScrollArea.js"),t=require("../Addons/Document/List.js"),o=require("./History/index.js"),i=require("./Input.js"),a=require("../../../common/cn.js");exports.default=()=>{const{pickaxe:x,isShowIceBreaker:c,responsiveBy:n}=r.usePickaxeContext(),{scrollContainerRef:u}=s.useScrollContext();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==x?void 0:x.documentuploadtype)&&e.jsx(t.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]","viewport"===n?"min-[767px]:pb-24":"@[767px]/pickaxe-root:pb-24",c&&"pb-40",c&&("viewport"===n?"min-[767px]:pb-44":"@[767px]/pickaxe-root:pb-44"))},{children:e.jsx(l.default,Object.assign({ref:u,hideScrollbar:!0},{children:e.jsx(o.default,{})}))})),e.jsx("div",Object.assign({className:a.default("absolute bottom-0 flex w-full justify-center","viewport"===n?"min-[767px]:mt-4 min-[767px]:mb-6":"@[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"),s=require("react"),t=require("../../../../hooks/pickaxe/usePickaxeContext.js"),a=require("../../../../hooks/pickaxe/useResponseContext.js"),r=require("date-fns"),n=require("../../common/PickaxeMarkdown/index.js"),o=require("../../common/PickaxeMarkdown/Renderer.js"),i=require("../../../Icons/message-square-notes.svg.js"),l=require("../../../Icons/visitor.svg.js"),c=require("../../common/PickaxeIcon.js"),d=require("../../common/PickaxeSimpleButton.js"),x=require("../../Addons/Scroll/ScrollLockView.js"),m=require("../../common/PickaxeCopyButton.js");exports.default=()=>{var h;const{pickaxe:u,styles:p,colors:j,misc:f,setChatId:g,setIsNewChat:b}=t.usePickaxeContext(),{response:k}=a.useResponseContext(),v=s.useMemo((()=>k?r.format(k.createdAt,"hh:mm a MMM dd, yy"):r.format(new Date,"hh:mm a MMM dd, yy")),[k]),y=s.useMemo((()=>{var e;if(!k)return"";return(null!==(e=k.questions)&&void 0!==e?e:[]).map((e=>`<div style="display: flex; flex-direction: column; margin-bottom: 1em;">\n <p style="font-weight: 500;">${e.question}</p>\n <p>${e.answer||"n/a"}</p>\n</div>`)).join("")}),[k]);return k?e.jsxs("div",Object.assign({className:"flex flex-col shadow-black transition duration-300 hover:shadow"},{children:[e.jsxs("div",Object.assign({className:"flex gap-x-3 overflow-hidden px-4 py-5",style:{backgroundColor:j.primary,color:j.text}},{children:[e.jsx("div",Object.assign({className:"shrink-0 pt-1"},{children:e.jsx(l.default,{className:"h-6 w-6"})})),e.jsxs("div",Object.assign({className:"flex flex-col gap-y-1 overflow-x-auto pb-[6px] scrollbar-track-gray-100 scrollbar-thumb-[#4A4A4B] lg:max-w-[520px] lg:scrollbar-thin"},{children:[e.jsx("input",{id:`${k.responseId}-input`,type:"checkbox",className:"peer hidden",defaultChecked:y.length<280}),e.jsx("div",{className:"danger-html hidden flex-col opacity-50 peer-checked:flex",dangerouslySetInnerHTML:{__html:y}}),e.jsx("label",Object.assign({htmlFor:`${k.responseId}-input`,className:"mt-1 flex shrink-0 whitespace-nowrap text-sm font-semibold text-[#228DD7] peer-checked:hidden hover:cursor-pointer",style:{color:j.accent}},{children:"See input"})),e.jsx("label",Object.assign({htmlFor:`${k.responseId}-input`,className:"hidden shrink-0 whitespace-nowrap text-sm font-semibold text-[#228DD7] peer-checked:flex hover:cursor-pointer",style:{color:j.accent}},{children:"Hide input"}))]}))]})),e.jsxs("div",Object.assign({className:"flex gap-x-3 px-4 py-5",style:{backgroundColor:j.secondary,color:j.secondaryText}},{children:[f.isChatImage&&e.jsx(c.default,{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 pt-1",textColor:j.secondaryText}),e.jsxs("div",Object.assign({className:"flex w-full flex-col gap-y-2 overflow-hidden"},{children:[e.jsx(n.PickaxeMarkdown,Object.assign({theme:p.theme,accentColor:j.accent,linkPreviews:!0,actions:!0},{children:e.jsx(o.PickaxeMarkdownRenderer,{className:"overflow-x-auto pb-2 font-semilight opacity-90 scrollbar scrollbar-thin",value:k.questionResponse})})),e.jsxs("div",Object.assign({className:"flex flex-wrap items-center justify-between gap-x-3 gap-y-1"},{children:[e.jsxs("div",Object.assign({className:"flex items-center gap-3"},{children:[(null==u?void 0:u.enablechatresponses)&&e.jsxs(d.default,Object.assign({color:j.accent,onClick:()=>{return e=k.responseId,b(!1),void g(e);var e}},{children:[e.jsx(i.default,{className:"h-4 w-4 shrink-0"}),e.jsx("p",Object.assign({className:"text-sm font-semibold"},{children:k.messages.length+1}))]})),e.jsx(m.default,{color:j.accent,text:null!==(h=k.questionResponse)&&void 0!==h?h:""})]})),e.jsx("div",Object.assign({className:"flex shrink-0 grow justify-end"},{children:e.jsx("p",Object.assign({className:"text-sm font-semibold uppercase opacity-30"},{children:v}))}))]}))]}))]})),e.jsx(x.default,{})]})):null};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("react"),t=require("../../../../hooks/pickaxe/usePickaxeContext.js"),r=require("../../../../hooks/pickaxe/useResponseContext.js"),o=require("../../Addons/Scroll/hooks/useScrollContext.js"),a=require("date-fns"),n=require("../../common/PickaxeMarkdown/index.js"),l=require("../../common/PickaxeMarkdown/Renderer.js"),c=require("../../../Icons/message-square-notes.svg.js"),i=require("../../../Icons/visitor.svg.js"),d=require("../../common/PickaxeIcon.js"),x=require("../../common/PickaxeSimpleButton.js"),u=require("../../common/PickaxeCopyButton.js"),h=require("../../Addons/Scroll/ScrollLockView.js");exports.default=()=>{var m;const{pickaxe:p,styles:j,colors:f,misc:g,setChatId:b,setIsNewChat:k}=t.usePickaxeContext(),{response:v}=r.useResponseContext(),{scrollTargetRef:y,scrollContainerRef:w}=o.useScrollContext(),N=s.useMemo((()=>v?a.format(v.createdAt,"hh:mm a MMM dd, yy"):a.format(new Date,"hh:mm a MMM dd, yy")),[v]),q=s.useMemo((()=>{var e;if(!v)return"";return(null!==(e=v.questions)&&void 0!==e?e:[]).map((e=>`<div style="display: flex; flex-direction: column; margin-bottom: 1em;">\n <p style="font-weight: 500;">${e.question}</p>\n <p>${e.answer||"n/a"}</p>\n</div>`)).join("")}),[v]);return v?e.jsxs("div",Object.assign({ref:y,className:"flex flex-col shadow-black transition duration-300 hover:shadow"},{children:[e.jsxs("div",Object.assign({className:"flex gap-x-3 overflow-hidden px-4 py-5",style:{backgroundColor:f.primary,color:f.text}},{children:[e.jsx("div",Object.assign({className:"shrink-0 pt-1"},{children:e.jsx(i.default,{className:"h-6 w-6"})})),e.jsxs("div",Object.assign({className:"flex flex-col gap-y-1 overflow-x-auto pb-[6px] scrollbar scrollbar-thin"},{children:[e.jsx("input",{id:`${v.responseId}-input`,type:"checkbox",className:"peer hidden",defaultChecked:q.length<280}),e.jsx("div",{className:"danger-html hidden flex-col opacity-50 peer-checked:flex",dangerouslySetInnerHTML:{__html:q}}),e.jsx("label",Object.assign({htmlFor:`${v.responseId}-input`,className:"mt-1 flex shrink-0 whitespace-nowrap text-sm font-semibold text-[#228DD7] peer-checked:hidden hover:cursor-pointer",style:{color:f.accent}},{children:"See input"})),e.jsx("label",Object.assign({htmlFor:`${v.responseId}-input`,className:"hidden shrink-0 whitespace-nowrap text-sm font-semibold text-[#228DD7] peer-checked:flex hover:cursor-pointer",style:{color:f.accent}},{children:"Hide input"}))]}))]})),e.jsxs("div",Object.assign({className:"flex gap-x-3 px-4 py-5",style:{backgroundColor:f.secondary,color:f.secondaryText}},{children:[g.isChatImage&&e.jsx(d.default,{src:null==p?void 0:p.chaticon,alt:`${null==p?void 0:p.formtitle}'s Chat Icon`,width:24,height:24,className:"h-6 w-6 pt-1",textColor:f.secondaryText}),e.jsxs("div",Object.assign({ref:w,className:"flex w-full flex-col gap-y-2 overflow-hidden"},{children:[e.jsx(n.PickaxeMarkdown,Object.assign({theme:j.theme,accentColor:f.accent,linkPreviews:!0,actions:!0},{children:e.jsx(l.PickaxeMarkdownRenderer,{className:"overflow-x-auto pb-2 font-semilight opacity-90 scrollbar scrollbar-thin",value:v.questionResponse})})),e.jsxs("div",Object.assign({className:"flex flex-wrap items-center justify-between gap-x-3 gap-y-1"},{children:[e.jsxs("div",Object.assign({className:"flex items-center gap-3"},{children:[(null==p?void 0:p.enablechatresponses)&&e.jsxs(x.default,Object.assign({color:f.accent,onClick:()=>{return e=v.responseId,k(!1),void b(e);var e}},{children:[e.jsx(c.default,{className:"h-4 w-4 shrink-0"}),e.jsx("p",Object.assign({className:"text-sm font-semibold"},{children:v.messages.length+1}))]})),e.jsx(u.default,{color:f.accent,text:null!==(m=v.questionResponse)&&void 0!==m?m:""})]})),e.jsx("div",Object.assign({className:"flex shrink-0 grow justify-end"},{children:e.jsx("p",Object.assign({className:"text-sm font-semibold uppercase opacity-30"},{children:N}))}))]}))]}))]})),e.jsx(h.default,{className:"w-full"})]})):null};
@@ -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/pickaxe/usePickaxeContext.js"),i=require("../../../../hooks/pickaxe/useResponseContext.js"),r=require("../../../../hooks/pickaxe/useSubmit.js"),n=require("../../../../hooks/pickaxe/useSubmitResult.js"),l=require("../../Addons/Document/hooks/useDocument.js"),u=require("../../Addons/Scroll/hooks/useScroll.js"),a=require("../../../../common/api/streamer.js"),d=require("../../../../common/utils.js"),c=require("@nem035/gpt-3-encoder"),m=require("../../common/PickaxeBranding.js"),p=require("../../common/PickaxeButton.js"),f=require("../../../../common/error.js"),x=require("../../../../common/cn.js");exports.default=({questions:g})=>{const{formId:h,userId:j,studioUserId:w,pickaxe:b,misc:q,responsiveBy:v,isShowHistory:k,setIsShowHistory:y,onGenerateComplete:I}=o.usePickaxeContext(),{status:O,limits:S,setResponse:E,setStatus:P,setLimitData:R,setError:C}=i.useResponseContext(),{documents:D,websiteLink:U,isUploading:A,onWebsiteUpload:N,setDocumentError:_}=l.useDocument(),{isScrollIncreasing:L,scrollToContainer:T,scrollToBottom:B,scrollStart:W,scrollEnd:H}=u.useScroll(),M=r.useSubmit(),F=n.useSubmitResult(),[G,K]=t.useState(!1);return s.jsxs("div",Object.assign({className:x.default("mt-4 flex flex-wrap flex-col justify-between gap-2","viewport"===v?"min-[767px]:flex-row":"@[767px]/pickaxe-root:flex-row")},{children:[s.jsxs("div",Object.assign({className:"flex items-center flex-grow flex-wrap gap-2"},{children:[s.jsx(p.default,Object.assign({className:x.default("w-full","viewport"===v?"min-[767px]:max-w-[176px]":"@[767px]/pickaxe-root:max-w-[176px]"),isDisabled:A||G||"fetching"===O||"streaming"===O,onClick:()=>e.__awaiter(void 0,void 0,void 0,(function*(){var e;try{if(A||G||"fetching"===O||"streaming"===O)return;R(null),_("");const s="enduserupload"===(null==b?void 0:b.documentuploadtype),t=g.some((e=>"userinput:documentupload"===e.id&&e.isRequired)),o=D.filter((e=>"finished"===e.status)),i=d.extractUrlsFromText(U),r=D.map((e=>e.name)),n=i.filter((e=>!r.includes(e)));if(n.length){const e=n[n.length-1],s=yield N(e);s&&(o.push(s),K(!0),yield new Promise((e=>setTimeout(e,5e3))),K(!1))}else if(t&&s&&!o.length)return void _("Please paste a valid website/video link or drag a file to add to the knowledge base.");C("");const l=["Multiple Choice","Checkbox"];for(const e of g){if(c.encode(e.input).length>e.maxLength&&!l.includes(e.type))throw new Error("One or more of your responses is too long!");if(e.isRequired&&!e.input.trim()&&"userinput:documentupload"!==e.id)throw new Error("You must fill out all required fields.")}const u=o.length?o[o.length-1]:null;let m={};g.forEach((e=>m=Object.assign(Object.assign({},m),{[e.id]:"Knowledge Upload"===e.type||e.id.includes("documentupload")?(null==u?void 0:u.name)||"":e.input}))),P("fetching");const{success:p,responseId:f,data:x,usedDocumentIds:q,rawUserInput:v,error:k}=yield M.mutateAsync(Object.assign(Object.assign({formId:h,valueObj:m},s&&u&&{documentId:null!==(e=u.documentId)&&void 0!==e?e:""}),w&&{studioUserId:w}));if(!p)throw new Error(null!=k?k:"An error occurred, please try again.");W();const y=(yield a.streamer({formId:h,responseId:f,data:x})).body;if(!y)throw new Error("Streaming error");const S=y.getReader(),T=new TextDecoder;let H="",V=!0;E(null);const Y=g.map((e=>({id:e.id,question:e.main,answer:e.input})));for(;V;){const{value:e,done:s}=yield S.read();V=!s;if(H+=T.decode(e),"development"===process.env.NODE_ENV&&console.log("[streamingResult]",H),H)P("streaming"),E({formId:h,responseId:f,documentIds:q,messages:[],questions:Y,questionPrompt:v,questionResponse:H,createdAt:new Date}),L&&B();else if(!V&&!H)throw new Error("Server error")}H&&(B(),P("idle"),yield F.mutateAsync(Object.assign(Object.assign(Object.assign(Object.assign({formId:h,responseId:f,documentIds:q},j&&{userId:j}),w&&{studioUserId:w}),w&&(null==b?void 0:b.studioid)&&{studioId:b.studioid}),{questions:Y,questionPrompt:v,questionResponse:H})),null==I||I(f))}catch(e){let s=f.default(e)||"";s&&!s.includes("Unexpected token 'A',")||(s="Oops! We're experiencing high traffic at the moment. Please try again later.");const t=Object.entries(S).find((([e])=>s.includes(e)));t?R(t[1]):C(s),K(!1),T()}finally{P("idle"),H()}}))},{children:G?"Processing...":A?"Uploading...":"fetching"===O||"streaming"===O?"Loading...":"Submit"})),!k&&s.jsx(p.default,Object.assign({variant:"transparent-text",className:x.default("w-full","viewport"===v?"min-[767px]:max-w-[176px]":"@[767px]/pickaxe-root:max-w-[176px]"),onClick:()=>y(!0)},{children:"See history"}))]})),!q.isWhiteLabel&&s.jsx("div",Object.assign({className:"flex justify-end pr-3"},{children:s.jsx(m.default,{})}))]}))};
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/pickaxe/usePickaxeContext.js"),i=require("../../../../hooks/pickaxe/useResponseContext.js"),r=require("../../../../hooks/pickaxe/useSubmit.js"),n=require("../../../../hooks/pickaxe/useSubmitResult.js"),u=require("../../Addons/Document/hooks/useDocument.js"),a=require("../../Addons/Scroll/hooks/useScroll.js"),d=require("../../../../common/api/streamer.js"),l=require("../../../../common/utils.js"),c=require("@nem035/gpt-3-encoder"),m=require("../../common/PickaxeBranding.js"),p=require("../../common/PickaxeButton.js"),x=require("../../../../common/error.js"),f=require("../../../../common/cn.js");exports.default=({questions:g})=>{const{formId:j,userId:h,studioUserId:w,deploymentId:b,pickaxe:q,misc:y,responsiveBy:I,isShowHistory:k,setIsShowHistory:v,onGenerateComplete:O}=o.usePickaxeContext(),{status:S,limits:P,isGenerating:R,setResponse:U,setStatus:C,setLimitData:D,setError:E,setIsGenerating:A}=i.useResponseContext(),{documents:T,websiteLink:_,isUploading:L,onWebsiteUpload:N,setDocumentError:B}=u.useDocument(),{scrollToTarget:G,scrollToBottom:W}=a.useScroll({auto:!0}),H=r.useSubmit(),M=n.useSubmitResult(),[F,K]=t.useState(!1);return s.jsxs("div",Object.assign({className:f.default("mt-4 flex flex-wrap flex-col justify-between gap-2","viewport"===I?"min-[767px]:flex-row":"@[767px]/pickaxe-root:flex-row")},{children:[s.jsxs("div",Object.assign({className:"flex items-center flex-grow flex-wrap gap-2"},{children:[s.jsx(p.default,Object.assign({className:f.default("w-full","viewport"===I?"min-[767px]:max-w-[176px]":"@[767px]/pickaxe-root:max-w-[176px]"),isDisabled:R||L||F||"idle"!==S,onClick:()=>e.__awaiter(void 0,void 0,void 0,(function*(){var e;try{if(R||L||F||"idle"!==S)return;D(null),B(""),A(!0);const s="enduserupload"===(null==q?void 0:q.documentuploadtype),t=g.some((e=>"userinput:documentupload"===e.id&&e.isRequired)),o=T.filter((e=>"finished"===e.status)),i=l.extractUrlsFromText(_),r=T.map((e=>e.name)),n=i.filter((e=>!r.includes(e)));if(n.length){const e=n[n.length-1];K(!0);const s=yield N(e);s&&(o.push(s),yield new Promise((e=>setTimeout(e,5e3)))),K(!1)}else if(t&&s&&!o.length)return void B("Please paste a valid website/video link or drag a file to add to the knowledge base.");E("");const u=["Multiple Choice","Checkbox"];for(const e of g){if(c.encode(e.input).length>e.maxLength&&!u.includes(e.type))throw new Error("One or more of your responses is too long!");if(e.isRequired&&!e.input.trim()&&"userinput:documentupload"!==e.id)throw new Error("You must fill out all required fields.")}const a=o.length?o[o.length-1]:null;let m={};g.forEach((e=>m=Object.assign(Object.assign({},m),{[e.id]:"Knowledge Upload"===e.type||e.id.includes("documentupload")?(null==a?void 0:a.name)||"":e.input}))),C("fetching");const{success:p,responseId:x,data:f,usedDocumentIds:y,rawUserInput:I,error:k}=yield H.mutateAsync(Object.assign(Object.assign(Object.assign({formId:j,valueObj:m},s&&a&&{documentId:null!==(e=a.documentId)&&void 0!==e?e:""}),w&&{studioUserId:w}),b&&{deploymentId:b}));if(!p)throw new Error(null!=k?k:"An error occurred, please try again.");const v=(yield d.streamer({formId:j,responseId:x,data:f})).body;if(!v)throw new Error("Streaming error");const P=v.getReader(),G=new TextDecoder;let Y="",z=!0,J=!1;U(null);const Q=g.map((e=>({id:e.id,question:e.main,answer:e.input})));for(;z;){const{value:e,done:s}=yield P.read();z=!s;const t=G.decode(e);if(Y&&!J&&(W(),J=!0),Y+=t,Y)C("streaming"),U({formId:j,responseId:x,documentIds:y,messages:[],questions:Q,questionPrompt:I,questionResponse:Y,createdAt:new Date});else if(!z&&!Y)throw new Error("Server error")}Y&&(W(),C("idle"),yield M.mutateAsync(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({formId:j,responseId:x,documentIds:y},h&&{userId:h}),w&&{studioUserId:w}),w&&(null==q?void 0:q.studioid)&&{studioId:q.studioid}),b&&{deploymentId:b}),{questions:Q,questionPrompt:I,questionResponse:Y})),null==O||O(x))}catch(e){let s=x.default(e)||"";s&&!s.includes("Unexpected token 'A',")||(s="Oops! We're experiencing high traffic at the moment. Please try again later.");const t=Object.entries(P).find((([e])=>s.includes(e)));t?D(t[1]):E(s),G(),W()}finally{C("idle"),A(!1),K(!1)}}))},{children:F?"Processing...":L?"Uploading...":"fetching"===S||"streaming"===S?"Loading...":"Submit"})),!k&&s.jsx(p.default,Object.assign({variant:"transparent-text",className:f.default("w-full","viewport"===I?"min-[767px]:max-w-[176px]":"@[767px]/pickaxe-root:max-w-[176px]"),onClick:()=>v(!0)},{children:"See history"}))]})),!y.isWhiteLabel&&s.jsx("div",Object.assign({className:"flex justify-end pr-3"},{children:s.jsx(m.default,{})}))]}))};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),s=require("./Addons/Document/Provider.js"),r=require("./ResponseProvider.js");const o=t.createContext({});exports.PickaxeContext=o,exports.PickaxeProvider=({children:i,userId:a="",studioUserId:n="",styles:c,colors:d,limits:l={},misc:u={isWhiteLabel:!0,isProfileImage:!0,isChatImage:!0,isTitle:!0,isDescription:!0},responsiveBy:F="viewport",loadFont:h=!0,forceMobile:x=!1,onGenerateComplete:m})=>{const[I,f]=t.useState(""),[S,p]=t.useState(""),[j,y]=t.useState(null),[b,v]=t.useState(!1),[P,g]=t.useState(!0),[C,k]=t.useState(!0),[w,O]=t.useState(!1);return t.useEffect((()=>{v(!1)}),[null==c?void 0:c.font]),e.jsx(o.Provider,Object.assign({value:Object.assign({formId:I,chatId:S,userId:a,studioUserId:n,pickaxe:j,styles:Object.assign({theme:"light",font:"Real Head Pro",fontSize:"md",formFieldStyle:"box",btnStyle:"filled",outlineThickness:1,cornerRadius:4},c),colors:Object.assign({primary:"#F6F8FA",text:"#000000",secondary:"#FFFFFF",secondaryText:"#000000",accent:"#228DD7",accentText:"#FFFFFF",error:"#EF4444"},d),misc:u,responsiveBy:F,isFontLoaded:b,isNewChat:P,isShowIceBreaker:C,isShowHistory:w,loadFont:h,forceMobile:x,setIsFontLoaded:v,setFormId:f,setChatId:p,setPickaxe:y,setIsNewChat:g,setIsShowIceBreaker:k,setIsShowHistory:O},m&&{onGenerateComplete:m})},{children:e.jsx(r.default,Object.assign({limits:l},{children:e.jsx(s.default,{children:i})}))}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),s=require("./Addons/Document/Provider.js"),r=require("./ResponseProvider.js");const o=t.createContext({});exports.PickaxeContext=o,exports.PickaxeProvider=({children:i,userId:a="",studioUserId:n="",deploymentId:d="",styles:c,colors:l,limits:u={},misc:F={isWhiteLabel:!0,isProfileImage:!0,isChatImage:!0,isTitle:!0,isDescription:!0},responsiveBy:m="viewport",loadFont:I=!0,forceMobile:h=!1,onGenerateComplete:x})=>{const[p,f]=t.useState(""),[y,S]=t.useState(""),[j,b]=t.useState(null),[v,P]=t.useState(!1),[g,C]=t.useState(!0),[k,w]=t.useState(!0),[O,q]=t.useState(!1);return t.useEffect((()=>{P(!1)}),[null==c?void 0:c.font]),e.jsx(o.Provider,Object.assign({value:Object.assign({formId:p,chatId:y,userId:a,studioUserId:n,deploymentId:d,pickaxe:j,styles:Object.assign({theme:"light",font:"Real Head Pro",fontSize:"md",formFieldStyle:"box",btnStyle:"filled",outlineThickness:1,cornerRadius:4},c),colors:Object.assign({primary:"#F6F8FA",text:"#000000",secondary:"#FFFFFF",secondaryText:"#000000",accent:"#228DD7",accentText:"#FFFFFF",error:"#EF4444"},l),misc:F,responsiveBy:m,isFontLoaded:v,isNewChat:g,isShowIceBreaker:k,isShowHistory:O,loadFont:I,forceMobile:h,setIsFontLoaded:P,setFormId:f,setChatId:S,setPickaxe:b,setIsNewChat:C,setIsShowIceBreaker:w,setIsShowHistory:q},x&&{onGenerateComplete:x})},{children:e.jsx(r.default,Object.assign({limits:u},{children:e.jsx(s.default,{children:i})}))}))};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("../../../../../../hooks/pickaxe/usePickaxeContext.js"),r=require("../../../../../Core/Modal/index.js"),o=require("../../../../../Core/Modal/Body.js"),t=require("../../../../../Core/Modal/CloseButton.js");exports.default=({children:l,isOpen:a,onChangeIsOpen:i})=>{const{colors:n}=s.usePickaxeContext();return e.jsx(r.default,Object.assign({isOpen:a,onChange:i},{children:e.jsxs(o.default,Object.assign({className:"border-0 w-full h-full",style:{backgroundColor:n.primary,color:n.text,borderColor:n.text+"4D"},avoidOverflow:!0},{children:[e.jsx("div",Object.assign({className:"flex items-start justify-end gap-4"},{children:e.jsx(t.default,{})})),e.jsx("div",Object.assign({className:"mt-4 flex flex-col flex-grow"},{children:l}))]}))}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),t=require("../../../../../Core/Modal/index.js"),a=require("../../../../../Core/Modal/Body.js");exports.default=({src:n,isOpen:i,onChangeIsOpen:o})=>{const[s,d]=r.useState({width:500,height:500});return r.useEffect((()=>{if(!n)return;const e=new Image;e.src=n,e.onload=()=>{d({width:Math.min(e.naturalWidth,750),height:Math.min(e.naturalHeight,600)})}}),[n]),e.jsx(t.default,Object.assign({isOpen:i,onChange:o},{children:e.jsx(a.default,{className:"border-0 p-4",style:{backgroundColor:"#000",backgroundImage:`url("${n}")`,backgroundSize:"contain",backgroundPosition:"center",backgroundRepeat:"no-repeat",width:s.width,height:s.height},avoidOverflow:!0})}))};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../../../_virtual/_tslib.js"),o=require("react/jsx-runtime"),r=require("react"),s=require("../../hooks/usePickaxeMarkdownContext.js"),t=require("../../../../../../hooks/core/useHover.js"),i=require("framer-motion"),n=require("../../../../../../common/utils.js"),a=require("../../../../../Icons/download.svg.js"),l=require("../../../PickaxeCopyButton.js"),d=require("./ImgModal.js");exports.default=({node:c,src:u,alt:x})=>{const{accentColor:p}=s.usePickaxeMarkdownContext(),[b,g]=r.useState(!1),[h,j]=r.useState(!1),m=t.useHover(),{isHover:k}=m,v=e.__rest(m,["isHover"]),w={hidden:{opacity:0,y:-10,pointerEvents:"none"},visible:{opacity:1,y:0,pointerEvents:"auto"}},y=()=>o.jsxs("div",Object.assign({style:{position:"relative"}},{children:[o.jsxs(i.motion.div,Object.assign({initial:"hidden",animate:k?"visible":"hidden",variants:w,style:{position:"absolute",display:"flex",gap:"0.4rem",top:"10px",right:"10px",color:"#FFF"}},{children:[o.jsx(i.motion.button,Object.assign({style:{outline:"none",padding:"0.5rem 0.65rem",borderRadius:"4px",boxShadow:"0px 4px 6px rgba(0, 0, 0, 0.1)",transition:"background-color 0.2s ease",backgroundColor:p+"07"},whileHover:{backgroundColor:p},whileTap:{scale:.95},onClick:e=>{e.stopPropagation(),window.open(u,"_blank")}},{children:o.jsx(a.default,{width:24,height:24,style:{color:n.getContrastColor(p),flexShrink:0}})})),o.jsx(i.motion.button,Object.assign({style:{outline:"none",padding:"0.5rem 0.65rem",borderRadius:"4px",boxShadow:"0px 4px 6px rgba(0, 0, 0, 0.1)",transition:"background-color 0.2s ease",backgroundColor:p+"07"},whileHover:{backgroundColor:p},whileTap:{scale:.95},onClick:e=>e.stopPropagation()},{children:o.jsx(l.default,{color:n.getContrastColor(p),iconClassName:"w-6 h-6",text:u||""})}))]})),o.jsx("img",{src:u,alt:x,style:{borderRadius:"8px",width:"100%",transition:"box-shadow 0.3s ease",boxShadow:k?"inset 0px 4px 10px rgba(0, 0, 0, 0.5)":"none"},onError:()=>g(!0),onClick:()=>j(!0)})]}));return o.jsxs("div",Object.assign({style:{marginTop:"2rem",marginBottom:"2rem",display:"flex",width:"100%",justifyContent:"center",overflow:"hidden",borderRadius:"8px",transition:"transform 0.3s ease, box-shadow 0.3s ease",transform:k?"translateY(-5px)":"translateY(0)"}},v,{children:[b?o.jsx("p",Object.assign({style:{userSelect:"none",opacity:.5,fontStyle:"italic"}},{children:"[Image link is broken]"})):o.jsx(y,{}),h&&o.jsx(d.default,Object.assign({isOpen:h,onChangeIsOpen:j},{children:o.jsx(y,{})}))]}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../../../_virtual/_tslib.js"),o=require("react/jsx-runtime"),t=require("react"),r=require("../../hooks/usePickaxeMarkdownContext.js"),s=require("../../../../../../hooks/core/useHover.js"),i=require("framer-motion"),n=require("../../../../../../common/utils.js"),a=require("../../../../../Icons/download.svg.js"),l=require("../../../PickaxeCopyButton.js"),d=require("./ImgModal.js");exports.default=({node:c,src:p,alt:u})=>{const{accentColor:x}=r.usePickaxeMarkdownContext(),[b,h]=t.useState(!1),[g,j]=t.useState(!1),m=s.useHover(),{isHover:y}=m,v=e.__rest(m,["isHover"]);return o.jsxs("div",Object.assign({style:{marginTop:"2rem",marginBottom:"2rem",display:"flex",width:"100%",justifyContent:"center",overflow:"hidden",borderRadius:"8px",transition:"transform 0.3s ease, box-shadow 0.3s ease",transform:y?"translateY(-5px)":"translateY(0)"}},v,{children:[g&&o.jsx(d.default,{src:p,isOpen:g,onChangeIsOpen:j}),b?o.jsx("p",Object.assign({style:{userSelect:"none",opacity:.5,fontStyle:"italic"}},{children:"[Image link is broken]"})):o.jsxs("div",Object.assign({style:{position:"relative"}},{children:[o.jsxs(i.motion.div,Object.assign({initial:"hidden",animate:y?"visible":"hidden",variants:{hidden:{opacity:0,y:-10,pointerEvents:"none"},visible:{opacity:1,y:0,pointerEvents:"auto"}},style:{position:"absolute",display:"flex",gap:"0.4rem",top:"10px",right:"10px",color:"#FFF"}},{children:[o.jsx(i.motion.button,Object.assign({style:{outline:"none",padding:"0.5rem 0.65rem",borderRadius:"4px",boxShadow:"0px 4px 6px rgba(0, 0, 0, 0.1)",transition:"background-color 0.2s ease",backgroundColor:x,opacity:.6},whileTap:{scale:.95},whileHover:{opacity:1},onClick:e=>{e.stopPropagation(),window.open(p,"_blank")}},{children:o.jsx(a.default,{width:24,height:24,style:{color:n.getContrastColor(x),flexShrink:0}})})),o.jsx(i.motion.button,Object.assign({style:{outline:"none",padding:"0.5rem 0.65rem",borderRadius:"4px",boxShadow:"0px 4px 6px rgba(0, 0, 0, 0.1)",transition:"background-color 0.2s ease",backgroundColor:x,opacity:.6},whileTap:{scale:.95},whileHover:{opacity:1},onClick:e=>e.stopPropagation()},{children:o.jsx(l.default,{color:n.getContrastColor(x),iconClassName:"w-6 h-6",text:p||""})}))]})),o.jsx("img",{src:p,alt:u,style:{borderRadius:"8px",width:"100%",transition:"box-shadow 0.3s ease",boxShadow:y?"inset 0px 4px 10px rgba(0, 0, 0, 0.5)":"none"},onError:()=>h(!0),onClick:()=>j(!0)})]}))]}))};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),i=require("../../../../../../hooks/pickaxe/usePickaxeContext.js"),t=require("framer-motion");exports.default=({data:r})=>{const{colors:o}=i.usePickaxeContext();return e.jsxs(t.motion.a,Object.assign({initial:{opacity:0,x:10},animate:{opacity:1,x:0},exit:{opacity:0,x:10},transition:{duration:.3},whileHover:{scale:1.02},whileTap:{scale:.98},style:{display:"flex",flexDirection:"column",backgroundColor:o.primary,color:o.text,borderRadius:"15px 15px 15px 10px",overflow:"hidden",minHeight:r.image?"145px":"auto",maxWidth:"220px",width:"100%"},href:r.href,target:"_blank",rel:"noopener noreferrer"},{children:[!!r.image&&e.jsx("div",{style:{backgroundImage:`url("${r.image}")`,backgroundSize:"cover",backgroundPosition:"center",flex:1}}),e.jsxs("div",Object.assign({style:{display:"flex",flexDirection:"column",gap:"0.2rem",fontSize:"14px",padding:"0.25rem 1rem"}},{children:[e.jsx("p",Object.assign({style:{fontWeight:600,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}},{children:r.title})),e.jsx("p",Object.assign({style:{fontWeight:350,opacity:.6,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}},{children:r.description||"No description found"}))]}))]}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),i=require("../../../../../../hooks/pickaxe/usePickaxeContext.js"),t=require("framer-motion");exports.default=({data:o})=>{var r,n;const{colors:a}=i.usePickaxeContext();return e.jsxs(t.motion.a,Object.assign({initial:{opacity:0,x:10},animate:{opacity:1,x:0},exit:{opacity:0,x:10},transition:{duration:.3},whileHover:{scale:1.02},whileTap:{scale:.98},style:{display:"flex",flexDirection:"column",backgroundColor:null!==(r=null==a?void 0:a.primary)&&void 0!==r?r:"#FFF",color:null!==(n=null==a?void 0:a.text)&&void 0!==n?n:"#000",borderRadius:"15px 15px 15px 10px",overflow:"hidden",minHeight:o.image?"145px":"auto",maxWidth:"220px",width:"100%"},href:o.href,target:"_blank",rel:"noopener noreferrer"},{children:[!!o.image&&e.jsx("div",{style:{backgroundImage:`url("${o.image}")`,backgroundSize:"cover",backgroundPosition:"center",flex:1}}),e.jsxs("div",Object.assign({style:{display:"flex",flexDirection:"column",gap:"0.2rem",fontSize:"14px",padding:"0.25rem 1rem"}},{children:[e.jsx("p",Object.assign({style:{fontWeight:600,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}},{children:o.title})),e.jsx("p",Object.assign({style:{fontWeight:350,opacity:.6,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}},{children:o.description||"No description found"}))]}))]}))};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),i=require("react"),t=require("./hooks/usePickaxeMarkdownContext.js"),r=require("react-markdown"),s=require("remark-gfm"),n=require("remark-math"),l=require("rehype-katex"),d=require("./Custom/A/index.js"),a=require("./Custom/P/index.js"),o=require("./Custom/Img/index.js"),c=require("./Custom/Iframe/index.js"),h=require("./Custom/Code/index.js"),u=require("./Custom/common/LinkPreview.js");function m(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var j=m(r),x=m(s),g=m(n),f=m(l);exports.PickaxeMarkdownRenderer=({className:r,style:s,value:n,recursion:l=!1})=>{const{theme:m,websiteMetadatas:p}=t.usePickaxeMarkdownContext(),b=i.useRef(null),y={h1:({node:i,children:t})=>e.jsx("h1",Object.assign({style:{fontSize:"2.25rem",lineHeight:"2.5rem"}},{children:t})),h2:({node:i,children:t})=>e.jsx("h2",Object.assign({style:{fontSize:"1.875rem",lineHeight:"2.25rem"}},{children:t})),h3:({node:i,children:t})=>e.jsx("h3",Object.assign({style:{fontSize:"1.5rem",lineHeight:"2rem"}},{children:t})),h4:({node:i,children:t})=>e.jsx("h4",Object.assign({className:"mt-2 text-xl",style:{fontSize:"1.25rem",lineHeight:"1.75rem"}},{children:t})),h5:({node:i,children:t})=>e.jsx("h5",Object.assign({style:{fontSize:"1.125rem",lineHeight:"1.75rem"}},{children:t})),p:a.default,a:d.default,ol:({node:i,children:t})=>e.jsx("ol",Object.assign({style:{listStyleType:"decimal",listStylePosition:"inside",paddingLeft:"1.5rem"}},{children:t})),ul:({node:i,children:t})=>e.jsx("ul",Object.assign({style:{listStyleType:"disc",listStylePosition:"inside",paddingLeft:"1.5rem"}},{children:t})),li:({node:i,children:t})=>e.jsx("li",{children:t}),table:({children:i})=>e.jsx("div",Object.assign({className:"overflow-auto"},{children:e.jsx("table",Object.assign({style:{tableLayout:"fixed",fontSize:"0.875rem",lineHeight:"1.24rem"}},{children:i}))})),th:({node:i,children:t})=>e.jsx("th",Object.assign({style:{padding:"0.75em 1em",fontWeight:600,textAlign:"left"}},{children:t})),tr:({node:i,children:t})=>e.jsx("tr",Object.assign({style:{border:"dark"===m?"1px solid #30363D":"1px solid #D0D7DE"}},{children:t})),td:({node:i,children:t})=>e.jsx("td",Object.assign({style:{padding:"0.75em 1em"}},{children:t})),code:h.default,blockquote:({node:i,children:t})=>e.jsx("blockquote",Object.assign({style:{lineHeight:"15px",borderLeft:"dark"===m?"4px solid #30363D":"4px solid #D0D7DE",color:"dark"===m?"#8B8B8B":"#656D76",paddingLeft:"1rem",marginBottom:"1rem"}},{children:t})),img:o.default,iframe:c.default};return e.jsxs("div",Object.assign({className:"pxe-markdown",ref:b,style:Object.assign({position:"relative",whiteSpace:"pre-wrap"},s)},{children:[e.jsx(j.default,Object.assign({},r&&{className:r},{components:y,remarkPlugins:[x.default,g.default],rehypePlugins:[f.default]},{children:(null!=n?n:"").replace(/\u200B/g,"")})),!l&&p.length>0&&e.jsx("div",Object.assign({style:{display:"flex",flexDirection:"column",gap:"2rem"}},{children:p.map(((i,t)=>e.jsx(u.default,{data:i},t)))}))]}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),i=require("react"),t=require("./hooks/usePickaxeMarkdownContext.js"),r=require("react-markdown"),s=require("remark-gfm"),n=require("remark-math"),l=require("rehype-katex"),d=require("./Custom/A/index.js"),a=require("./Custom/P/index.js"),o=require("./Custom/Img/index.js"),c=require("./Custom/Iframe/index.js"),h=require("./Custom/Code/index.js"),u=require("./Custom/common/LinkPreview.js");function m(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var j=m(r),x=m(s),g=m(n),f=m(l);exports.PickaxeMarkdownRenderer=({className:r,style:s,value:n,recursion:l=!1})=>{const{theme:m,websiteMetadatas:p}=t.usePickaxeMarkdownContext(),b=i.useRef(null),y=i.useMemo((()=>{if(!n)return"";let e=n;return e=n.replace(/<!--[\s\S]*?-->/g,""),e=n.replace(/\u200B/g,""),e}),[n]),k={h1:({node:i,children:t})=>e.jsx("h1",Object.assign({style:{fontSize:"2.25rem",lineHeight:"2.5rem"}},{children:t})),h2:({node:i,children:t})=>e.jsx("h2",Object.assign({style:{fontSize:"1.875rem",lineHeight:"2.25rem"}},{children:t})),h3:({node:i,children:t})=>e.jsx("h3",Object.assign({style:{fontSize:"1.5rem",lineHeight:"2rem"}},{children:t})),h4:({node:i,children:t})=>e.jsx("h4",Object.assign({className:"mt-2 text-xl",style:{fontSize:"1.25rem",lineHeight:"1.75rem"}},{children:t})),h5:({node:i,children:t})=>e.jsx("h5",Object.assign({style:{fontSize:"1.125rem",lineHeight:"1.75rem"}},{children:t})),p:a.default,a:d.default,ol:({node:i,children:t})=>e.jsx("ol",Object.assign({style:{listStyleType:"decimal",listStylePosition:"inside",paddingLeft:"1.5rem"}},{children:t})),ul:({node:i,children:t})=>e.jsx("ul",Object.assign({style:{listStyleType:"disc",listStylePosition:"inside",paddingLeft:"1.5rem"}},{children:t})),li:({node:i,children:t})=>e.jsx("li",{children:t}),table:({children:i})=>e.jsx("div",Object.assign({className:"overflow-auto"},{children:e.jsx("table",Object.assign({style:{tableLayout:"fixed",fontSize:"0.875rem",lineHeight:"1.24rem"}},{children:i}))})),th:({node:i,children:t})=>e.jsx("th",Object.assign({style:{padding:"0.75em 1em",fontWeight:600,textAlign:"left"}},{children:t})),tr:({node:i,children:t})=>e.jsx("tr",Object.assign({style:{border:"dark"===m?"1px solid #30363D":"1px solid #D0D7DE"}},{children:t})),td:({node:i,children:t})=>e.jsx("td",Object.assign({style:{padding:"0.75em 1em"}},{children:t})),code:h.default,blockquote:({node:i,children:t})=>e.jsx("blockquote",Object.assign({style:{lineHeight:"15px",borderLeft:"dark"===m?"4px solid #30363D":"4px solid #D0D7DE",color:"dark"===m?"#8B8B8B":"#656D76",paddingLeft:"1rem",marginBottom:"1rem"}},{children:t})),img:o.default,iframe:c.default};return e.jsxs("div",Object.assign({className:"pxe-markdown",ref:b,style:Object.assign({position:"relative",whiteSpace:"pre-wrap"},s)},{children:[e.jsx(j.default,Object.assign({},r&&{className:r},{components:k,remarkPlugins:[x.default,g.default],rehypePlugins:[f.default]},{children:y})),!l&&p.length>0&&e.jsx("div",Object.assign({style:{display:"flex",flexDirection:"column",gap:"2rem"}},{children:p.map(((i,t)=>e.jsx(u.default,{data:i},t)))}))]}))};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../_virtual/_tslib.js"),t=require("@tanstack/react-query"),s=require("../../common/api/index.js");exports.useSubmit=()=>t.useMutation({mutationFn:t=>(({formId:t,responseId:i,documentId:r,studioUserId:a,pickaxe:o,value:u,valueObj:n})=>e.__awaiter(void 0,void 0,void 0,(function*(){const e=yield s.default.post("/pickaxe/submit",Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({origin:"pickaxe",formId:t},i&&{responseId:i}),r&&{documentId:r}),a&&{studioUserId:a}),o&&{pickaxe:o}),u&&{value:u}),n&&{valueObj:n})),d=e.data;if(200!==e.status)throw new Error("[_getHistory] Failed to fetch history "+d);return d})))(t)});
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../_virtual/_tslib.js"),t=require("@tanstack/react-query"),s=require("../../common/api/index.js");exports.useSubmit=()=>t.useMutation({mutationFn:t=>(({formId:t,responseId:i,documentId:a,studioUserId:r,deploymentId:o,pickaxe:d,value:n,valueObj:u})=>e.__awaiter(void 0,void 0,void 0,(function*(){const e=yield s.default.post("/pickaxe/submit",Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({origin:"pickaxe",formId:t},i&&{responseId:i}),a&&{documentId:a}),r&&{studioUserId:r}),o&&{deploymentId:o}),d&&{pickaxe:d}),n&&{value:n}),u&&{valueObj:u})),c=e.data;if(200!==e.status)throw new Error("[_getHistory] Failed to fetch history "+c);return c})))(t)});
@@ -1,14 +1,14 @@
1
- import { Dispatch, MutableRefObject, ReactNode, RefObject, SetStateAction } from "react";
1
+ import type { SetState } from "../../../../types/common";
2
+ import { MutableRefObject, ReactNode, RefObject } from "react";
2
3
  export type AnyScrollRef = RefObject<HTMLDivElement> | MutableRefObject<HTMLDivElement>;
3
4
  type ScrollContextType = {
4
5
  scrollContainerRef: MutableRefObject<HTMLDivElement>;
5
6
  scrollTargetRef: MutableRefObject<HTMLDivElement>;
6
- isLocked: boolean;
7
+ hasScrolledRef: MutableRefObject<boolean>;
7
8
  isScrolling: boolean;
8
9
  isScrollIncreasing: boolean;
9
- setIsScrolling: Dispatch<SetStateAction<boolean>>;
10
- setIsScrollIncreasing: Dispatch<SetStateAction<boolean>>;
11
- setIsLocked: Dispatch<SetStateAction<boolean>>;
10
+ setIsScrolling: SetState<boolean>;
11
+ setIsScrollIncreasing: SetState<boolean>;
12
12
  };
13
13
  interface ScrollProviderProps {
14
14
  children: ReactNode;
@@ -1,14 +1,9 @@
1
- /// <reference types="react" />
2
1
  interface UseScrollProps {
3
- behavior?: ScrollBehavior;
2
+ auto?: boolean;
4
3
  }
5
- export declare const useScroll: ({ behavior }?: UseScrollProps) => {
6
- scrollContainerRef: import("react").MutableRefObject<HTMLDivElement>;
7
- scrollTargetRef: import("react").MutableRefObject<HTMLDivElement>;
4
+ export declare const useScroll: ({ auto }: UseScrollProps) => {
8
5
  isScrollIncreasing: boolean;
9
- scrollToContainer: () => void;
10
6
  scrollToBottom: () => void;
11
- scrollStart: () => void;
12
- scrollEnd: () => void;
7
+ scrollToTarget: () => void;
13
8
  };
14
9
  export {};
@@ -2,10 +2,9 @@
2
2
  export declare const useScrollContext: () => {
3
3
  scrollContainerRef: import("react").MutableRefObject<HTMLDivElement>;
4
4
  scrollTargetRef: import("react").MutableRefObject<HTMLDivElement>;
5
- isLocked: boolean;
5
+ hasScrolledRef: import("react").MutableRefObject<boolean>;
6
6
  isScrolling: boolean;
7
7
  isScrollIncreasing: boolean;
8
- setIsScrolling: import("react").Dispatch<import("react").SetStateAction<boolean>>;
9
- setIsScrollIncreasing: import("react").Dispatch<import("react").SetStateAction<boolean>>;
10
- setIsLocked: import("react").Dispatch<import("react").SetStateAction<boolean>>;
8
+ setIsScrolling: import("../../../../../types/common").SetState<boolean>;
9
+ setIsScrollIncreasing: import("../../../../../types/common").SetState<boolean>;
11
10
  };
@@ -34,6 +34,7 @@ type PickaxeContextType = {
34
34
  chatId: string;
35
35
  userId: string;
36
36
  studioUserId: string;
37
+ deploymentId: string;
37
38
  pickaxe: Pickaxe | null;
38
39
  styles: PickaxeProviderStyles;
39
40
  colors: PickaxeProviderColors;
@@ -58,6 +59,7 @@ export interface IPickaxeProviderProps {
58
59
  children: ReactNode;
59
60
  userId?: string;
60
61
  studioUserId?: string;
62
+ deploymentId?: string;
61
63
  styles?: Partial<PickaxeProviderStyles>;
62
64
  colors?: Partial<PickaxeProviderColors>;
63
65
  limits?: Record<string, PickaxeLimitData>;
@@ -68,5 +70,5 @@ export interface IPickaxeProviderProps {
68
70
  onGenerateComplete?: (responseId: string) => void;
69
71
  }
70
72
  export declare const PickaxeContext: import("react").Context<PickaxeContextType>;
71
- export declare const PickaxeProvider: ({ children, userId, studioUserId, styles, colors, limits, misc, responsiveBy, loadFont, forceMobile, onGenerateComplete, }: IPickaxeProviderProps) => import("react/jsx-runtime").JSX.Element;
73
+ export declare const PickaxeProvider: ({ children, userId, studioUserId, deploymentId, styles, colors, limits, misc, responsiveBy, loadFont, forceMobile, onGenerateComplete, }: IPickaxeProviderProps) => import("react/jsx-runtime").JSX.Element;
72
74
  export {};
@@ -1,8 +1,7 @@
1
- import type { ReactNode } from "react";
2
1
  interface ImgModalProps {
3
- children?: ReactNode;
2
+ src?: string;
4
3
  isOpen: boolean;
5
4
  onChangeIsOpen: (isOpen: boolean) => void;
6
5
  }
7
- declare const ImgModal: ({ children, isOpen, onChangeIsOpen }: ImgModalProps) => import("react/jsx-runtime").JSX.Element;
6
+ declare const ImgModal: ({ src, isOpen, onChangeIsOpen }: ImgModalProps) => import("react/jsx-runtime").JSX.Element;
8
7
  export default ImgModal;
@@ -3,6 +3,7 @@ export declare const usePickaxeContext: () => {
3
3
  chatId: string;
4
4
  userId: string;
5
5
  studioUserId: string;
6
+ deploymentId: string;
6
7
  pickaxe: import("../../types/pickaxe").Pickaxe | null;
7
8
  styles: import("../../components/Pickaxe/Provider").PickaxeProviderStyles;
8
9
  colors: import("../../components/Pickaxe/Provider").PickaxeProviderColors;
@@ -4,6 +4,7 @@ type MutationParams = {
4
4
  responseId?: string;
5
5
  documentId?: string;
6
6
  studioUserId?: string;
7
+ deploymentId?: string;
7
8
  pickaxe?: Partial<Pickaxe>;
8
9
  value?: string;
9
10
  valueObj?: Record<string, string>;
@@ -6,6 +6,7 @@ type MutationParams = {
6
6
  userId?: string;
7
7
  studioId?: string;
8
8
  studioUserId?: string;
9
+ deploymentId?: string;
9
10
  messages?: {
10
11
  role: ChatRole;
11
12
  message: string;
@@ -1 +1 @@
1
- import{jsx as r}from"react/jsx-runtime";import{useState as e,useRef as s,createContext as c}from"react";const o=c({}),l=({children:c})=>{const[l,t]=e(!1),[i,n]=e(!0),[a,d]=e(!0),g=s(),f=s();return r(o.Provider,Object.assign({value:{scrollContainerRef:g,scrollTargetRef:f,isScrolling:l,isScrollIncreasing:i,isLocked:a,setIsScrolling:t,setIsScrollIncreasing:n,setIsLocked:d}},{children:c}))};export{o as ScrollContext,l as default};
1
+ import{jsx as r}from"react/jsx-runtime";import{useState as e,useRef as l,createContext as s}from"react";const c=s({}),o=({children:s})=>{const[o,n]=e(!1),[t,i]=e(!0),a=l(),f=l(),g=l(!1);return r(c.Provider,Object.assign({value:{scrollContainerRef:a,scrollTargetRef:f,hasScrolledRef:g,isScrolling:o,isScrollIncreasing:t,setIsScrolling:n,setIsScrollIncreasing:i}},{children:s}))};export{c as ScrollContext,o as default};
@@ -1 +1 @@
1
- import{jsx as e}from"react/jsx-runtime";import{useInView as o}from"react-intersection-observer";import{useScrollContext as r}from"./hooks/useScrollContext.js";const s=({className:s})=>{const{setIsLocked:t}=r(),{ref:c}=o({onChange(e){e&&t(!0)}});return e("div",Object.assign({ref:c,id:"scroll-lock-view"},s&&{className:s}))};export{s as default};
1
+ import{jsx as e}from"react/jsx-runtime";import{useInView as r}from"react-intersection-observer";import{useScrollContext as o}from"./hooks/useScrollContext.js";const s=({className:s})=>{const{hasScrolledRef:t}=o(),{ref:c}=r({onChange(e){e&&(t.current=!1)}});return e("div",Object.assign({ref:c,className:"scroll-lock-view"},s&&{className:s}))};export{s as default};
@@ -1 +1 @@
1
- import{useState as e,useRef as r,useMemo as n,useEffect as t}from"react";import{useScrollContext as o}from"./useScrollContext.js";const l=({behavior:l="smooth"}={behavior:"smooth"})=>{const{scrollContainerRef:s,scrollTargetRef:c,isScrolling:i,isScrollIncreasing:u,isLocked:d,setIsScrolling:a,setIsScrollIncreasing:v,setIsLocked:m}=o(),[h,w]=e(0),f=r(!1),g=n((()=>s&&s.current?s.current:"undefined"==typeof window?null:window),[s]);t((()=>{if(!g)return;const e=e=>{i&&d&&("mousedown"===e.type||"wheel"===e.type||"DOMMouseScroll"===e.type||"mousewheel"===e.type)&&m(!1)};return null==g||g.addEventListener("scroll",e),null==g||g.addEventListener("mousedown",e),null==g||g.addEventListener("wheel",e),null==g||g.addEventListener("DOMMouseScroll",e),null==g||g.addEventListener("mousewheel",e),()=>{null==g||g.removeEventListener("scroll",e),null==g||g.removeEventListener("mousedown",e),null==g||g.removeEventListener("wheel",e),null==g||g.removeEventListener("DOMMouseScroll",e),null==g||g.removeEventListener("mousewheel",e)}}),[i,d,g]),t((()=>{f.current=!d}),[d]),t((()=>{const e=setInterval((()=>{if(s.current&&i){const e=s.current.scrollHeight;if(e===h)return;v(e>h),w(e)}}),100);return()=>clearInterval(e)}),[h,i]);const L=e=>{if(f.current)return;const r=c.current;if(!s.current){if("undefined"==typeof window)return;const n=null!=e?e:r?r.clientHeight:document.body.scrollHeight;return void window.scrollTo({top:n,behavior:l})}const n=null!=e?e:r?r.clientHeight:s.current.scrollHeight;s.current.scrollTo({top:n,behavior:l})};return{scrollContainerRef:s,scrollTargetRef:c,isScrollIncreasing:u,scrollToContainer:()=>{L(0)},scrollToBottom:()=>{L()},scrollStart:()=>{a(!0),m(!f.current)},scrollEnd:()=>{a(!1)}}};export{l as useScroll};
1
+ import{useState as e,useEffect as o}from"react";import{useScrollContext as r}from"./useScrollContext.js";const l=({auto:l})=>{const{scrollContainerRef:t,scrollTargetRef:c,hasScrolledRef:n,isScrollIncreasing:s,setIsScrolling:i,setIsScrollIncreasing:a}=r(),[u,f]=e(0);o((()=>{const e=setInterval((()=>{if(t.current){const e=t.current.scrollHeight;if(e===u)return;const o=e>u;a(o),f(e),o&&l&&g()}}),100);return()=>clearInterval(e)}),[t,u]);const g=()=>{try{if(i(!0),!t.current)return void("development"===process.env.NODE_ENV&&console.log("[useScroll] scrollContainerRef not detected"));if(n.current)return;const e=t.current.scrollHeight;t.current.scrollTo({top:e,behavior:"smooth"}),"development"===process.env.NODE_ENV&&console.log("[useScroll] scrolled scrollContainerRef")}finally{i(!1)}};return{isScrollIncreasing:s,scrollToBottom:g,scrollToTarget:()=>{try{i(!0);const e=t.current||window;if(!c.current)return void("development"===process.env.NODE_ENV&&console.log("[useScroll] scrollTargetRef not detected"));const o=e.scrollHeight;e.scrollTo({top:o,behavior:"smooth"}),"development"===process.env.NODE_ENV&&console.log("[useScroll] scrolled scrollTargetRef")}finally{i(!1)}}}};export{l as useScroll};
@@ -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,useMemo as i,useEffect as n}from"react";import{useMediaQuery as a}from"../../../hooks/core/useMediaQuery.js";import{usePickaxeContext as l}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as d}from"../../../hooks/pickaxe/useResponseContext.js";import{useStyleInput as c}from"../../../hooks/studio/useStyleInput.js";import{useStyleFontSize as m}from"../../../hooks/studio/useStyleFontSize.js";import{useConversation as u}from"../../../hooks/pickaxe/useConversation.js";import{useSubmit as p}from"../../../hooks/pickaxe/useSubmit.js";import{useSubmitResult as f}from"../../../hooks/pickaxe/useSubmitResult.js";import{useDocument as h}from"../Addons/Document/hooks/useDocument.js";import{useScroll as g}from"../Addons/Scroll/hooks/useScroll.js";import{allowedFileMimeTypes as v,allowedImageMimeTypes as x}from"../../../common/documents.js";import{streamer as b}from"../../../common/api/streamer.js";import y 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 j from"../../Icons/attach.svg.js";import k from"../../Icons/send.svg.js";import I from"../common/PickaxeBranding.js";import w from"../Addons/IceBreaker/index.js";import D from"../../../common/error.js";import N from"../../../common/cn.js";const O=()=>{var O;const{formId:S,chatId:A,userId:C,studioUserId:E,pickaxe:_,colors:U,misc:B,responsiveBy:R,isNewChat:z,forceMobile:L,setIsNewChat:M,setIsShowIceBreaker:F,onGenerateComplete:P}=l(),{messages:T,status:W,limits:K,setMessages:G,setStatus:H,setLimitData:Q,setError:V}=d(),{documents:q,isUploading:J,isImageUploadAllowed:X,upsertDocuments:Y,onFileUpload:Z,onEditDocumentByDocId:$}=h(),{isScrollIncreasing:ee,scrollToBottom:oe,scrollStart:te,scrollEnd:se}=g(),re=u(),ie=p(),ne=f(),[ae,le]=s(""),de=r(null),[ce]=a("(max-width: 767px)"),me=c(),ue=m({type:"body"}),pe=i((()=>{var e,o,t;return!!z&&(!!_&&(!re.isLoading&&(!((null!==(o=null===(e=re.data)||void 0===e?void 0:e.messages.length)&&void 0!==o?o:0)>1)&&!!(null===(t=_.icebreakers)||void 0===t?void 0:t.length))))}),[_,z,re.data,re.isLoading]);n((()=>{F(pe)}),[pe]);const fe=o=>e(void 0,void 0,void 0,(function*(){try{if(J)return;Q(null),V(""),M(!1);const e=null!=o?o:ae;if(!e||"fetching"===W||"streaming"===W)return;const t=new Date;le("");const s="enduserupload"===(null==_?void 0:_.documentuploadtype),r=q.filter((e=>"finished"===e.status&&!e.isInsertedAsRaw)),i=r.length?r[r.length-1].documentId:"";H("fetching");const n=[...T,{id:T.length+1,role:"user",content:e}];G(n),te(),oe();const{success:a,data:l,usedDocumentIds:d,newDocumentId:c,newDocumentName:m,isInsertedFile:u,error:p}=yield ie.mutateAsync(Object.assign(Object.assign({formId:S,responseId:A,value:e},s&&i&&{documentId:i}),E&&{studioUserId:E}));if(!a)throw new Error(null!=p?p:"An error occurred, please try again.");u&&i&&$({documentId:i,isInsertedAsRaw:!0}),c&&m&&Y([{type:"website",id:m,name:m,status:"finished",documentId:c}]),oe();const f=(yield b({formId:S,responseId:A,data:l})).body;if(!f)throw new Error("Streaming error");const h=f.getReader(),g=new TextDecoder,v=n.length;let x="",y=!0;for(H("streaming");y;){const{value:e,done:o}=yield h.read();y=!o;if(x+=g.decode(e),"development"===process.env.NODE_ENV&&console.log("[streamingResult]",x),x)G([...n.slice(0,v),{id:T.length+1,role:"assistant",content:x}]),ee&&oe();else if(!y&&!x)throw new Error("Server error")}const j=new Date;x&&(oe(),H("idle"),yield ne.mutateAsync(Object.assign(Object.assign(Object.assign(Object.assign({formId:S,responseId:A,documentIds:d},C&&{userId:C}),E&&{studioUserId:E}),E&&(null==_?void 0:_.studioid)&&{studioId:_.studioid}),{messages:[{role:"user",message:e,sentAt:t},{role:"assistant",message:x,sentAt:j}]})),null==P||P(A))}catch(e){let o=D(e)||"";o&&!o.includes("Unexpected token 'A',")||(o="Oops! We're experiencing high traffic at the moment. Please try again later.");const t=Object.entries(K).find((([e])=>o.includes(e)));t?Q(t[1]):V(o),oe()}finally{H("idle"),se()}}));return o("div",Object.assign({className:N("fixed flex w-full flex-col bottom-0 left-0","viewport"===R?"min-[767px]:relative min-[767px]:bottom-auto min-[767px]:left-auto":"absolute @[767px]/pickaxe-root:relative @[767px]/pickaxe-root:bottom-auto @[767px]/pickaxe-root:left-auto")},{children:[!B.isWhiteLabel&&t("div",Object.assign({className:"flex justify-end pr-3"},{children:t(I,{animateHover:!0})})),pe&&t(w,{data:(null==_?void 0:_.icebreakers)||[],style:{backgroundColor:U.secondary,color:U.secondaryText},isMobile:L||ce,onSend:fe}),o("div",Object.assign({style:me,className:"flex min-h-[56px] items-end gap-x-2 px-4 py-3 pb-[15px] shadow"},{children:["enduserupload"===(null==_?void 0:_.documentuploadtype)&&o("div",Object.assign({className:"tooltip"},{children:[t("input",{id:"file-upload",ref:de,type:"file",accept:[...v,...X?x:[]].join(", "),multiple:!0,hidden:!0,className:"hidden",onChange:o=>e(void 0,void 0,void 0,(function*(){yield Z(Array.from(o.target.files||[])),o.target.value=""}))}),t("button",Object.assign({className:"flex items-center disabled:cursor-wait disabled:opacity-50",disabled:J,onClick:()=>{var e;return null===(e=de.current)||void 0===e?void 0:e.click()}},{children:t(j,{className:"h-6 w-6 shrink-0 stroke-2",style:{color:U.accent}})}))]})),t(y,{className:N(ue("max-h-60 w-full resize-none border-transparent bg-transparent outline-none ring-0 scrollbar scrollbar-thin placeholder:font-semilight"),!ae.length&&"max-h-6 overflow-hidden text-ellipsis whitespace-nowrap"),value:ae,placeholder:null!==(O=null==_?void 0:_.placeholdertext)&&void 0!==O?O:"What do you want to talk about?",onChange:e=>le(e.target.value),onKeyDown:e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),fe())}}),t("button",Object.assign({className:"outline-none disabled:cursor-default disabled:opacity-50",disabled:"idle"!==W||J,onClick:()=>fe()},{children:t(k,{className:"h-6 w-6 shrink-0 stroke-2",style:{color:U.accent}})}))]}))]}))};export{O as default};
1
+ import{__awaiter as e}from"../../../_virtual/_tslib.js";import{jsxs as t,jsx as o}from"react/jsx-runtime";import{useState as s,useRef as r,useMemo as i,useEffect as n}from"react";import{useMediaQuery as a}from"../../../hooks/core/useMediaQuery.js";import{usePickaxeContext as l}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as d}from"../../../hooks/pickaxe/useResponseContext.js";import{useStyleInput as c}from"../../../hooks/studio/useStyleInput.js";import{useStyleFontSize as m}from"../../../hooks/studio/useStyleFontSize.js";import{useConversation as u}from"../../../hooks/pickaxe/useConversation.js";import{useSubmit as p}from"../../../hooks/pickaxe/useSubmit.js";import{useSubmitResult as f}from"../../../hooks/pickaxe/useSubmitResult.js";import{useDocument as h}from"../Addons/Document/hooks/useDocument.js";import{useScroll as g}from"../Addons/Scroll/hooks/useScroll.js";import{allowedFileMimeTypes as b,allowedImageMimeTypes as x}from"../../../common/documents.js";import{streamer as v}from"../../../common/api/streamer.js";import y 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 j from"../../Icons/attach.svg.js";import I from"../../Icons/send.svg.js";import k from"../common/PickaxeBranding.js";import w from"../Addons/IceBreaker/index.js";import O from"../../../common/error.js";import D from"../../../common/cn.js";const A=()=>{var A;const{formId:N,chatId:S,userId:C,studioUserId:U,deploymentId:_,pickaxe:B,colors:E,misc:z,responsiveBy:R,isNewChat:L,forceMobile:M,setIsNewChat:F,setIsShowIceBreaker:G,onGenerateComplete:P}=l(),{messages:T,status:W,limits:K,isGenerating:H,setMessages:Q,setStatus:q,setLimitData:J,setError:V,setIsGenerating:X}=d(),{documents:Y,isUploading:Z,isImageUploadAllowed:$,upsertDocuments:ee,onFileUpload:te,onEditDocumentByDocId:oe}=h(),{scrollToBottom:se}=g({auto:!0}),re=u(),ie=p(),ne=f(),[ae,le]=s(""),de=r(null),[ce]=a("(max-width: 767px)"),me=c(),ue=m({type:"body"}),pe=i((()=>{var e,t,o;return!!L&&(!!B&&(!re.isLoading&&(!((null!==(t=null===(e=re.data)||void 0===e?void 0:e.messages.length)&&void 0!==t?t:0)>1)&&!!(null===(o=B.icebreakers)||void 0===o?void 0:o.length))))}),[B,L,re.data,re.isLoading]);n((()=>{G(pe)}),[pe]);const fe=t=>e(void 0,void 0,void 0,(function*(){try{if(H||Z||"idle"!==W)return;const e=null!=t?t:ae;if(!e)return;le(""),V(""),J(null),X(!0),F(!1);const o=new Date,s="enduserupload"===(null==B?void 0:B.documentuploadtype),r=Y.filter((e=>"finished"===e.status&&!e.isInsertedAsRaw)),i=r.length?r[r.length-1].documentId:"";q("fetching"),se();const n=[...T,{id:T.length+1,role:"user",content:e}];Q(n),se();const{success:a,data:l,usedDocumentIds:d,newDocumentId:c,newDocumentName:m,rawUserInput:u,isInsertedFile:p,error:f}=yield ie.mutateAsync(Object.assign(Object.assign(Object.assign({formId:N,responseId:S,value:e},s&&i&&{documentId:i}),U&&{studioUserId:U}),_&&{deploymentId:_}));if(!a)throw new Error(null!=f?f:"An error occurred, please try again.");se(),p&&i&&oe({documentId:i,isInsertedAsRaw:!0}),c&&m&&ee([{type:"website",id:m,name:m,status:"finished",documentId:c}]),se();const h=(yield v({formId:N,responseId:S,data:l})).body;if(!h)throw new Error("Streaming error");const g=h.getReader(),b=new TextDecoder,x=n.length;let y="",j=!0;for(q("streaming");j;){const{value:e,done:t}=yield g.read();j=!t;if(y+=b.decode(e),y)Q([...n.slice(0,x),{id:T.length+1,role:"assistant",content:y}]);else if(!j&&!y)throw new Error("Server error")}const I=new Date;y&&(se(),q("idle"),yield ne.mutateAsync(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({formId:N,responseId:S,documentIds:d},C&&{userId:C}),U&&{studioUserId:U}),U&&(null==B?void 0:B.studioid)&&{studioId:B.studioid}),_&&{deploymentId:_}),{messages:[{role:"user",message:u,sentAt:o},{role:"assistant",message:y,sentAt:I}]})),null==P||P(S))}catch(e){let t=O(e)||"";t&&!t.includes("Unexpected token 'A',")||(t="Oops! We're experiencing high traffic at the moment. Please try again later.");const o=Object.entries(K).find((([e])=>t.includes(e)));o?J(o[1]):V(t),se()}finally{q("idle"),X(!1)}}));return t("div",Object.assign({className:D("fixed flex w-full flex-col bottom-0 left-0","viewport"===R?"min-[767px]:relative min-[767px]:bottom-auto min-[767px]:left-auto":"absolute @[767px]/pickaxe-root:relative @[767px]/pickaxe-root:bottom-auto @[767px]/pickaxe-root:left-auto")},{children:[!z.isWhiteLabel&&o("div",Object.assign({className:"flex justify-end pr-3"},{children:o(k,{animateHover:!0})})),pe&&o(w,{data:(null==B?void 0:B.icebreakers)||[],style:{backgroundColor:E.secondary,color:E.secondaryText},isMobile:M||ce,onSend:fe}),t("div",Object.assign({style:me,className:"flex min-h-[56px] items-end gap-x-2 px-4 py-3 pb-[15px] shadow"},{children:["enduserupload"===(null==B?void 0:B.documentuploadtype)&&t("div",Object.assign({className:"tooltip"},{children:[o("input",{id:"file-upload",ref:de,type:"file",accept:[...b,...$?x:[]].join(", "),multiple:!0,hidden:!0,className:"hidden",onChange:t=>e(void 0,void 0,void 0,(function*(){yield te(Array.from(t.target.files||[])),t.target.value=""}))}),o("button",Object.assign({className:"flex items-center disabled:cursor-wait disabled:opacity-50",disabled:Z,onClick:()=>{var e;return null===(e=de.current)||void 0===e?void 0:e.click()}},{children:o(j,{className:"h-6 w-6 shrink-0 stroke-2",style:{color:E.accent}})}))]})),o(y,{className:D(ue("max-h-60 w-full resize-none border-transparent bg-transparent outline-none ring-0 scrollbar scrollbar-thin placeholder:font-semilight"),!ae.length&&"max-h-6 overflow-hidden text-ellipsis whitespace-nowrap"),value:ae,placeholder:null!==(A=null==B?void 0:B.placeholdertext)&&void 0!==A?A:"What do you want to talk about?",onChange:e=>le(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.shiftKey||(e.preventDefault(),H||Z||"idle"!==W||fe()))}}),o("button",Object.assign({className:"outline-none disabled:cursor-default disabled:opacity-50",disabled:H||Z||"idle"!==W,onClick:()=>fe()},{children:o(I,{className:"h-6 w-6 shrink-0 stroke-2",style:{color:E.accent}})}))]}))]}))};export{A as default};
@@ -1 +1 @@
1
- import{jsx as e,jsxs as o}from"react/jsx-runtime";import{usePickaxeContext as r}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useScroll as i}from"../Addons/Scroll/hooks/useScroll.js";import t from"../../Core/ScrollArea.js";import l from"../Addons/Document/List.js";import s from"./History/index.js";import c from"./Input.js";import m from"../../../common/cn.js";const p=()=>{const{pickaxe:p,isShowIceBreaker:a,responsiveBy:n}=r(),{scrollContainerRef:x}=i();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==p?void 0:p.documentuploadtype)&&e(l,{className:"absolute z-10 mt-4"}),e("div",Object.assign({className:m("flex w-full flex-grow flex-col pb-[4.5rem]","viewport"===n?"min-[767px]:pb-24":"@[767px]/pickaxe-root:pb-24",a&&"pb-40",a&&("viewport"===n?"min-[767px]:pb-44":"@[767px]/pickaxe-root:pb-44"))},{children:e(t,Object.assign({ref:x,hideScrollbar:!0},{children:e(s,{})}))})),e("div",Object.assign({className:m("absolute bottom-0 flex w-full justify-center","viewport"===n?"min-[767px]:mt-4 min-[767px]:mb-6":"@[767px]/pickaxe-root:mt-4 @[767px]/pickaxe-root:mb-6")},{children:e(c,{})}))]}))}))};export{p as default};
1
+ import{jsx as e,jsxs as o}from"react/jsx-runtime";import{usePickaxeContext as r}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useScrollContext as t}from"../Addons/Scroll/hooks/useScrollContext.js";import i from"../../Core/ScrollArea.js";import l from"../Addons/Document/List.js";import s from"./History/index.js";import c from"./Input.js";import m from"../../../common/cn.js";const p=()=>{const{pickaxe:p,isShowIceBreaker:a,responsiveBy:n}=r(),{scrollContainerRef:x}=t();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==p?void 0:p.documentuploadtype)&&e(l,{className:"absolute z-10 mt-4"}),e("div",Object.assign({className:m("flex w-full flex-grow flex-col pb-[4.5rem]","viewport"===n?"min-[767px]:pb-24":"@[767px]/pickaxe-root:pb-24",a&&"pb-40",a&&("viewport"===n?"min-[767px]:pb-44":"@[767px]/pickaxe-root:pb-44"))},{children:e(i,Object.assign({ref:x,hideScrollbar:!0},{children:e(s,{})}))})),e("div",Object.assign({className:m("absolute bottom-0 flex w-full justify-center","viewport"===n?"min-[767px]:mt-4 min-[767px]:mb-6":"@[767px]/pickaxe-root:mt-4 @[767px]/pickaxe-root:mb-6")},{children:e(c,{})}))]}))}))};export{p as default};
@@ -1 +1 @@
1
- import{jsxs as e,jsx as s}from"react/jsx-runtime";import{useMemo as o}from"react";import{usePickaxeContext as t}from"../../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as n}from"../../../../hooks/pickaxe/useResponseContext.js";import{format as r}from"date-fns";import{PickaxeMarkdown as a}from"../../common/PickaxeMarkdown/index.js";import{PickaxeMarkdownRenderer as i}from"../../common/PickaxeMarkdown/Renderer.js";import c from"../../../Icons/message-square-notes.svg.js";import l from"../../../Icons/visitor.svg.js";import m from"../../common/PickaxeIcon.js";import d from"../../common/PickaxeSimpleButton.js";import p from"../../Addons/Scroll/ScrollLockView.js";import h from"../../common/PickaxeCopyButton.js";const x=()=>{var x;const{pickaxe:f,styles:u,colors:g,misc:b,setChatId:v,setIsNewChat:k}=t(),{response:j}=n(),y=o((()=>r(j?j.createdAt:new Date,"hh:mm a MMM dd, yy")),[j]),w=o((()=>{var e;if(!j)return"";return(null!==(e=j.questions)&&void 0!==e?e:[]).map((e=>`<div style="display: flex; flex-direction: column; margin-bottom: 1em;">\n <p style="font-weight: 500;">${e.question}</p>\n <p>${e.answer||"n/a"}</p>\n</div>`)).join("")}),[j]);return j?e("div",Object.assign({className:"flex flex-col shadow-black transition duration-300 hover:shadow"},{children:[e("div",Object.assign({className:"flex gap-x-3 overflow-hidden px-4 py-5",style:{backgroundColor:g.primary,color:g.text}},{children:[s("div",Object.assign({className:"shrink-0 pt-1"},{children:s(l,{className:"h-6 w-6"})})),e("div",Object.assign({className:"flex flex-col gap-y-1 overflow-x-auto pb-[6px] scrollbar-track-gray-100 scrollbar-thumb-[#4A4A4B] lg:max-w-[520px] lg:scrollbar-thin"},{children:[s("input",{id:`${j.responseId}-input`,type:"checkbox",className:"peer hidden",defaultChecked:w.length<280}),s("div",{className:"danger-html hidden flex-col opacity-50 peer-checked:flex",dangerouslySetInnerHTML:{__html:w}}),s("label",Object.assign({htmlFor:`${j.responseId}-input`,className:"mt-1 flex shrink-0 whitespace-nowrap text-sm font-semibold text-[#228DD7] peer-checked:hidden hover:cursor-pointer",style:{color:g.accent}},{children:"See input"})),s("label",Object.assign({htmlFor:`${j.responseId}-input`,className:"hidden shrink-0 whitespace-nowrap text-sm font-semibold text-[#228DD7] peer-checked:flex hover:cursor-pointer",style:{color:g.accent}},{children:"Hide input"}))]}))]})),e("div",Object.assign({className:"flex gap-x-3 px-4 py-5",style:{backgroundColor:g.secondary,color:g.secondaryText}},{children:[b.isChatImage&&s(m,{src:null==f?void 0:f.chaticon,alt:`${null==f?void 0:f.formtitle}'s Chat Icon`,width:24,height:24,className:"h-6 w-6 pt-1",textColor:g.secondaryText}),e("div",Object.assign({className:"flex w-full flex-col gap-y-2 overflow-hidden"},{children:[s(a,Object.assign({theme:u.theme,accentColor:g.accent,linkPreviews:!0,actions:!0},{children:s(i,{className:"overflow-x-auto pb-2 font-semilight opacity-90 scrollbar scrollbar-thin",value:j.questionResponse})})),e("div",Object.assign({className:"flex flex-wrap items-center justify-between gap-x-3 gap-y-1"},{children:[e("div",Object.assign({className:"flex items-center gap-3"},{children:[(null==f?void 0:f.enablechatresponses)&&e(d,Object.assign({color:g.accent,onClick:()=>{return e=j.responseId,k(!1),void v(e);var e}},{children:[s(c,{className:"h-4 w-4 shrink-0"}),s("p",Object.assign({className:"text-sm font-semibold"},{children:j.messages.length+1}))]})),s(h,{color:g.accent,text:null!==(x=j.questionResponse)&&void 0!==x?x:""})]})),s("div",Object.assign({className:"flex shrink-0 grow justify-end"},{children:s("p",Object.assign({className:"text-sm font-semibold uppercase opacity-30"},{children:y}))}))]}))]}))]})),s(p,{})]})):null};export{x as default};
1
+ import{jsxs as e,jsx as s}from"react/jsx-runtime";import{useMemo as o}from"react";import{usePickaxeContext as t}from"../../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as r}from"../../../../hooks/pickaxe/useResponseContext.js";import{useScrollContext as n}from"../../Addons/Scroll/hooks/useScrollContext.js";import{format as l}from"date-fns";import{PickaxeMarkdown as a}from"../../common/PickaxeMarkdown/index.js";import{PickaxeMarkdownRenderer as c}from"../../common/PickaxeMarkdown/Renderer.js";import i from"../../../Icons/message-square-notes.svg.js";import m from"../../../Icons/visitor.svg.js";import d from"../../common/PickaxeIcon.js";import p from"../../common/PickaxeSimpleButton.js";import h from"../../common/PickaxeCopyButton.js";import f from"../../Addons/Scroll/ScrollLockView.js";const x=()=>{var x;const{pickaxe:u,styles:g,colors:b,misc:v,setChatId:j,setIsNewChat:k}=t(),{response:w}=r(),{scrollTargetRef:y,scrollContainerRef:N}=n(),C=o((()=>l(w?w.createdAt:new Date,"hh:mm a MMM dd, yy")),[w]),O=o((()=>{var e;if(!w)return"";return(null!==(e=w.questions)&&void 0!==e?e:[]).map((e=>`<div style="display: flex; flex-direction: column; margin-bottom: 1em;">\n <p style="font-weight: 500;">${e.question}</p>\n <p>${e.answer||"n/a"}</p>\n</div>`)).join("")}),[w]);return w?e("div",Object.assign({ref:y,className:"flex flex-col shadow-black transition duration-300 hover:shadow"},{children:[e("div",Object.assign({className:"flex gap-x-3 overflow-hidden px-4 py-5",style:{backgroundColor:b.primary,color:b.text}},{children:[s("div",Object.assign({className:"shrink-0 pt-1"},{children:s(m,{className:"h-6 w-6"})})),e("div",Object.assign({className:"flex flex-col gap-y-1 overflow-x-auto pb-[6px] scrollbar scrollbar-thin"},{children:[s("input",{id:`${w.responseId}-input`,type:"checkbox",className:"peer hidden",defaultChecked:O.length<280}),s("div",{className:"danger-html hidden flex-col opacity-50 peer-checked:flex",dangerouslySetInnerHTML:{__html:O}}),s("label",Object.assign({htmlFor:`${w.responseId}-input`,className:"mt-1 flex shrink-0 whitespace-nowrap text-sm font-semibold text-[#228DD7] peer-checked:hidden hover:cursor-pointer",style:{color:b.accent}},{children:"See input"})),s("label",Object.assign({htmlFor:`${w.responseId}-input`,className:"hidden shrink-0 whitespace-nowrap text-sm font-semibold text-[#228DD7] peer-checked:flex hover:cursor-pointer",style:{color:b.accent}},{children:"Hide input"}))]}))]})),e("div",Object.assign({className:"flex gap-x-3 px-4 py-5",style:{backgroundColor:b.secondary,color:b.secondaryText}},{children:[v.isChatImage&&s(d,{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 pt-1",textColor:b.secondaryText}),e("div",Object.assign({ref:N,className:"flex w-full flex-col gap-y-2 overflow-hidden"},{children:[s(a,Object.assign({theme:g.theme,accentColor:b.accent,linkPreviews:!0,actions:!0},{children:s(c,{className:"overflow-x-auto pb-2 font-semilight opacity-90 scrollbar scrollbar-thin",value:w.questionResponse})})),e("div",Object.assign({className:"flex flex-wrap items-center justify-between gap-x-3 gap-y-1"},{children:[e("div",Object.assign({className:"flex items-center gap-3"},{children:[(null==u?void 0:u.enablechatresponses)&&e(p,Object.assign({color:b.accent,onClick:()=>{return e=w.responseId,k(!1),void j(e);var e}},{children:[s(i,{className:"h-4 w-4 shrink-0"}),s("p",Object.assign({className:"text-sm font-semibold"},{children:w.messages.length+1}))]})),s(h,{color:b.accent,text:null!==(x=w.questionResponse)&&void 0!==x?x:""})]})),s("div",Object.assign({className:"flex shrink-0 grow justify-end"},{children:s("p",Object.assign({className:"text-sm font-semibold uppercase opacity-30"},{children:C}))}))]}))]}))]})),s(f,{className:"w-full"})]})):null};export{x 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}from"react";import{usePickaxeContext as i}from"../../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as r}from"../../../../hooks/pickaxe/useResponseContext.js";import{useSubmit as n}from"../../../../hooks/pickaxe/useSubmit.js";import{useSubmitResult as l}from"../../../../hooks/pickaxe/useSubmitResult.js";import{useDocument as a}from"../../Addons/Document/hooks/useDocument.js";import{useScroll as d}from"../../Addons/Scroll/hooks/useScroll.js";import{streamer as c}from"../../../../common/api/streamer.js";import{extractUrlsFromText as m}from"../../../../common/utils.js";import{encode as u}from"@nem035/gpt-3-encoder";import p from"../../common/PickaxeBranding.js";import f from"../../common/PickaxeButton.js";import g from"../../../../common/error.js";import x from"../../../../common/cn.js";const h=({questions:h})=>{const{formId:w,userId:j,studioUserId:b,pickaxe:v,misc:k,responsiveBy:y,isShowHistory:I,setIsShowHistory:O,onGenerateComplete:S}=i(),{status:q,limits:E,setResponse:D,setStatus:P,setLimitData:R,setError:U}=r(),{documents:C,websiteLink:A,isUploading:N,onWebsiteUpload:L,setDocumentError:B}=a(),{isScrollIncreasing:T,scrollToContainer:W,scrollToBottom:_,scrollStart:H,scrollEnd:G}=d(),K=n(),M=l(),[V,Y]=s(!1);return o("div",Object.assign({className:x("mt-4 flex flex-wrap flex-col justify-between gap-2","viewport"===y?"min-[767px]:flex-row":"@[767px]/pickaxe-root:flex-row")},{children:[o("div",Object.assign({className:"flex items-center flex-grow flex-wrap gap-2"},{children:[t(f,Object.assign({className:x("w-full","viewport"===y?"min-[767px]:max-w-[176px]":"@[767px]/pickaxe-root:max-w-[176px]"),isDisabled:N||V||"fetching"===q||"streaming"===q,onClick:()=>e(void 0,void 0,void 0,(function*(){var e;try{if(N||V||"fetching"===q||"streaming"===q)return;R(null),B("");const o="enduserupload"===(null==v?void 0:v.documentuploadtype),t=h.some((e=>"userinput:documentupload"===e.id&&e.isRequired)),s=C.filter((e=>"finished"===e.status)),i=m(A),r=C.map((e=>e.name)),n=i.filter((e=>!r.includes(e)));if(n.length){const e=n[n.length-1],o=yield L(e);o&&(s.push(o),Y(!0),yield new Promise((e=>setTimeout(e,5e3))),Y(!1))}else if(t&&o&&!s.length)return void B("Please paste a valid website/video link or drag a file to add to the knowledge base.");U("");const l=["Multiple Choice","Checkbox"];for(const e of h){if(u(e.input).length>e.maxLength&&!l.includes(e.type))throw new Error("One or more of your responses is too long!");if(e.isRequired&&!e.input.trim()&&"userinput:documentupload"!==e.id)throw new Error("You must fill out all required fields.")}const a=s.length?s[s.length-1]:null;let d={};h.forEach((e=>d=Object.assign(Object.assign({},d),{[e.id]:"Knowledge Upload"===e.type||e.id.includes("documentupload")?(null==a?void 0:a.name)||"":e.input}))),P("fetching");const{success:p,responseId:f,data:g,usedDocumentIds:x,rawUserInput:k,error:y}=yield K.mutateAsync(Object.assign(Object.assign({formId:w,valueObj:d},o&&a&&{documentId:null!==(e=a.documentId)&&void 0!==e?e:""}),b&&{studioUserId:b}));if(!p)throw new Error(null!=y?y:"An error occurred, please try again.");H();const I=(yield c({formId:w,responseId:f,data:g})).body;if(!I)throw new Error("Streaming error");const O=I.getReader(),E=new TextDecoder;let W="",G=!0;D(null);const z=h.map((e=>({id:e.id,question:e.main,answer:e.input})));for(;G;){const{value:e,done:o}=yield O.read();G=!o;if(W+=E.decode(e),"development"===process.env.NODE_ENV&&console.log("[streamingResult]",W),W)P("streaming"),D({formId:w,responseId:f,documentIds:x,messages:[],questions:z,questionPrompt:k,questionResponse:W,createdAt:new Date}),T&&_();else if(!G&&!W)throw new Error("Server error")}W&&(_(),P("idle"),yield M.mutateAsync(Object.assign(Object.assign(Object.assign(Object.assign({formId:w,responseId:f,documentIds:x},j&&{userId:j}),b&&{studioUserId:b}),b&&(null==v?void 0:v.studioid)&&{studioId:v.studioid}),{questions:z,questionPrompt:k,questionResponse:W})),null==S||S(f))}catch(e){let o=g(e)||"";o&&!o.includes("Unexpected token 'A',")||(o="Oops! We're experiencing high traffic at the moment. Please try again later.");const t=Object.entries(E).find((([e])=>o.includes(e)));t?R(t[1]):U(o),Y(!1),W()}finally{P("idle"),G()}}))},{children:V?"Processing...":N?"Uploading...":"fetching"===q||"streaming"===q?"Loading...":"Submit"})),!I&&t(f,Object.assign({variant:"transparent-text",className:x("w-full","viewport"===y?"min-[767px]:max-w-[176px]":"@[767px]/pickaxe-root:max-w-[176px]"),onClick:()=>O(!0)},{children:"See history"}))]})),!k.isWhiteLabel&&t("div",Object.assign({className:"flex justify-end pr-3"},{children:t(p,{})}))]}))};export{h 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}from"react";import{usePickaxeContext as i}from"../../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as r}from"../../../../hooks/pickaxe/useResponseContext.js";import{useSubmit as n}from"../../../../hooks/pickaxe/useSubmit.js";import{useSubmitResult as d}from"../../../../hooks/pickaxe/useSubmitResult.js";import{useDocument as a}from"../../Addons/Document/hooks/useDocument.js";import{useScroll as l}from"../../Addons/Scroll/hooks/useScroll.js";import{streamer as m}from"../../../../common/api/streamer.js";import{extractUrlsFromText as c}from"../../../../common/utils.js";import{encode as u}from"@nem035/gpt-3-encoder";import p from"../../common/PickaxeBranding.js";import f from"../../common/PickaxeButton.js";import g from"../../../../common/error.js";import x from"../../../../common/cn.js";const h=({questions:h})=>{const{formId:w,userId:j,studioUserId:b,deploymentId:y,pickaxe:I,misc:k,responsiveBy:v,isShowHistory:O,setIsShowHistory:q,onGenerateComplete:S}=i(),{status:P,limits:U,isGenerating:D,setResponse:E,setStatus:R,setLimitData:A,setError:C,setIsGenerating:L}=r(),{documents:N,websiteLink:T,isUploading:B,onWebsiteUpload:G,setDocumentError:W}=a(),{scrollToTarget:H,scrollToBottom:_}=l({auto:!0}),K=n(),M=d(),[Y,z]=s(!1);return o("div",Object.assign({className:x("mt-4 flex flex-wrap flex-col justify-between gap-2","viewport"===v?"min-[767px]:flex-row":"@[767px]/pickaxe-root:flex-row")},{children:[o("div",Object.assign({className:"flex items-center flex-grow flex-wrap gap-2"},{children:[t(f,Object.assign({className:x("w-full","viewport"===v?"min-[767px]:max-w-[176px]":"@[767px]/pickaxe-root:max-w-[176px]"),isDisabled:D||B||Y||"idle"!==P,onClick:()=>e(void 0,void 0,void 0,(function*(){var e;try{if(D||B||Y||"idle"!==P)return;A(null),W(""),L(!0);const o="enduserupload"===(null==I?void 0:I.documentuploadtype),t=h.some((e=>"userinput:documentupload"===e.id&&e.isRequired)),s=N.filter((e=>"finished"===e.status)),i=c(T),r=N.map((e=>e.name)),n=i.filter((e=>!r.includes(e)));if(n.length){const e=n[n.length-1];z(!0);const o=yield G(e);o&&(s.push(o),yield new Promise((e=>setTimeout(e,5e3)))),z(!1)}else if(t&&o&&!s.length)return void W("Please paste a valid website/video link or drag a file to add to the knowledge base.");C("");const d=["Multiple Choice","Checkbox"];for(const e of h){if(u(e.input).length>e.maxLength&&!d.includes(e.type))throw new Error("One or more of your responses is too long!");if(e.isRequired&&!e.input.trim()&&"userinput:documentupload"!==e.id)throw new Error("You must fill out all required fields.")}const a=s.length?s[s.length-1]:null;let l={};h.forEach((e=>l=Object.assign(Object.assign({},l),{[e.id]:"Knowledge Upload"===e.type||e.id.includes("documentupload")?(null==a?void 0:a.name)||"":e.input}))),R("fetching");const{success:p,responseId:f,data:g,usedDocumentIds:x,rawUserInput:k,error:v}=yield K.mutateAsync(Object.assign(Object.assign(Object.assign({formId:w,valueObj:l},o&&a&&{documentId:null!==(e=a.documentId)&&void 0!==e?e:""}),b&&{studioUserId:b}),y&&{deploymentId:y}));if(!p)throw new Error(null!=v?v:"An error occurred, please try again.");const O=(yield m({formId:w,responseId:f,data:g})).body;if(!O)throw new Error("Streaming error");const q=O.getReader(),U=new TextDecoder;let H="",F=!0,J=!1;E(null);const Q=h.map((e=>({id:e.id,question:e.main,answer:e.input})));for(;F;){const{value:e,done:o}=yield q.read();F=!o;const t=U.decode(e);if(H&&!J&&(_(),J=!0),H+=t,H)R("streaming"),E({formId:w,responseId:f,documentIds:x,messages:[],questions:Q,questionPrompt:k,questionResponse:H,createdAt:new Date});else if(!F&&!H)throw new Error("Server error")}H&&(_(),R("idle"),yield M.mutateAsync(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({formId:w,responseId:f,documentIds:x},j&&{userId:j}),b&&{studioUserId:b}),b&&(null==I?void 0:I.studioid)&&{studioId:I.studioid}),y&&{deploymentId:y}),{questions:Q,questionPrompt:k,questionResponse:H})),null==S||S(f))}catch(e){let o=g(e)||"";o&&!o.includes("Unexpected token 'A',")||(o="Oops! We're experiencing high traffic at the moment. Please try again later.");const t=Object.entries(U).find((([e])=>o.includes(e)));t?A(t[1]):C(o),H(),_()}finally{R("idle"),L(!1),z(!1)}}))},{children:Y?"Processing...":B?"Uploading...":"fetching"===P||"streaming"===P?"Loading...":"Submit"})),!O&&t(f,Object.assign({variant:"transparent-text",className:x("w-full","viewport"===v?"min-[767px]:max-w-[176px]":"@[767px]/pickaxe-root:max-w-[176px]"),onClick:()=>q(!0)},{children:"See history"}))]})),!k.isWhiteLabel&&t("div",Object.assign({className:"flex justify-end pr-3"},{children:t(p,{})}))]}))};export{h as default};
@@ -1 +1 @@
1
- import{jsx as e}from"react/jsx-runtime";import{createContext as s,useState as o,useEffect as t}from"react";import r from"./Addons/Document/Provider.js";import i from"./ResponseProvider.js";const n=s({}),a=({children:s,userId:a="",studioUserId:c="",styles:d,colors:l,limits:m={},misc:F={isWhiteLabel:!0,isProfileImage:!0,isChatImage:!0,isTitle:!0,isDescription:!0},responsiveBy:h="viewport",loadFont:I=!0,forceMobile:p=!1,onGenerateComplete:f})=>{const[u,y]=o(""),[b,g]=o(""),[j,v]=o(null),[x,w]=o(!1),[S,C]=o(!0),[P,k]=o(!0),[O,B]=o(!1);return t((()=>{w(!1)}),[null==d?void 0:d.font]),e(n.Provider,Object.assign({value:Object.assign({formId:u,chatId:b,userId:a,studioUserId:c,pickaxe:j,styles:Object.assign({theme:"light",font:"Real Head Pro",fontSize:"md",formFieldStyle:"box",btnStyle:"filled",outlineThickness:1,cornerRadius:4},d),colors:Object.assign({primary:"#F6F8FA",text:"#000000",secondary:"#FFFFFF",secondaryText:"#000000",accent:"#228DD7",accentText:"#FFFFFF",error:"#EF4444"},l),misc:F,responsiveBy:h,isFontLoaded:x,isNewChat:S,isShowIceBreaker:P,isShowHistory:O,loadFont:I,forceMobile:p,setIsFontLoaded:w,setFormId:y,setChatId:g,setPickaxe:v,setIsNewChat:C,setIsShowIceBreaker:k,setIsShowHistory:B},f&&{onGenerateComplete:f})},{children:e(i,Object.assign({limits:m},{children:e(r,{children:s})}))}))};export{n as PickaxeContext,a as PickaxeProvider};
1
+ import{jsx as e}from"react/jsx-runtime";import{createContext as o,useState as s,useEffect as t}from"react";import r from"./Addons/Document/Provider.js";import i from"./ResponseProvider.js";const n=o({}),d=({children:o,userId:d="",studioUserId:a="",deploymentId:c="",styles:l,colors:m,limits:F={},misc:I={isWhiteLabel:!0,isProfileImage:!0,isChatImage:!0,isTitle:!0,isDescription:!0},responsiveBy:h="viewport",loadFont:p=!0,forceMobile:f=!1,onGenerateComplete:y})=>{const[u,b]=s(""),[g,j]=s(""),[v,x]=s(null),[w,S]=s(!1),[C,P]=s(!0),[k,O]=s(!0),[B,D]=s(!1);return t((()=>{S(!1)}),[null==l?void 0:l.font]),e(n.Provider,Object.assign({value:Object.assign({formId:u,chatId:g,userId:d,studioUserId:a,deploymentId:c,pickaxe:v,styles:Object.assign({theme:"light",font:"Real Head Pro",fontSize:"md",formFieldStyle:"box",btnStyle:"filled",outlineThickness:1,cornerRadius:4},l),colors:Object.assign({primary:"#F6F8FA",text:"#000000",secondary:"#FFFFFF",secondaryText:"#000000",accent:"#228DD7",accentText:"#FFFFFF",error:"#EF4444"},m),misc:I,responsiveBy:h,isFontLoaded:w,isNewChat:C,isShowIceBreaker:k,isShowHistory:B,loadFont:p,forceMobile:f,setIsFontLoaded:S,setFormId:b,setChatId:j,setPickaxe:x,setIsNewChat:P,setIsShowIceBreaker:O,setIsShowHistory:D},y&&{onGenerateComplete:y})},{children:e(i,Object.assign({limits:F},{children:e(r,{children:o})}))}))};export{n as PickaxeContext,d as PickaxeProvider};
@@ -1 +1 @@
1
- import{jsx as e,jsxs as o}from"react/jsx-runtime";import{usePickaxeContext as r}from"../../../../../../hooks/pickaxe/usePickaxeContext.js";import s from"../../../../../Core/Modal/index.js";import t from"../../../../../Core/Modal/Body.js";import l from"../../../../../Core/Modal/CloseButton.js";const i=({children:i,isOpen:a,onChangeIsOpen:n})=>{const{colors:c}=r();return e(s,Object.assign({isOpen:a,onChange:n},{children:o(t,Object.assign({className:"border-0 w-full h-full",style:{backgroundColor:c.primary,color:c.text,borderColor:c.text+"4D"},avoidOverflow:!0},{children:[e("div",Object.assign({className:"flex items-start justify-end gap-4"},{children:e(l,{})})),e("div",Object.assign({className:"mt-4 flex flex-col flex-grow"},{children:i}))]}))}))};export{i as default};
1
+ import{jsx as e}from"react/jsx-runtime";import{useState as o,useEffect as r}from"react";import t from"../../../../../Core/Modal/index.js";import n from"../../../../../Core/Modal/Body.js";const a=({src:a,isOpen:i,onChangeIsOpen:d})=>{const[h,s]=o({width:500,height:500});return r((()=>{if(!a)return;const e=new Image;e.src=a,e.onload=()=>{s({width:Math.min(e.naturalWidth,750),height:Math.min(e.naturalHeight,600)})}}),[a]),e(t,Object.assign({isOpen:i,onChange:d},{children:e(n,{className:"border-0 p-4",style:{backgroundColor:"#000",backgroundImage:`url("${a}")`,backgroundSize:"contain",backgroundPosition:"center",backgroundRepeat:"no-repeat",width:h.width,height:h.height},avoidOverflow:!0})}))};export{a as default};
@@ -1 +1 @@
1
- import{__rest as o}from"../../../../../../_virtual/_tslib.js";import{jsxs as e,jsx as r}from"react/jsx-runtime";import{useState as i}from"react";import{usePickaxeMarkdownContext as t}from"../../hooks/usePickaxeMarkdownContext.js";import{useHover as n}from"../../../../../../hooks/core/useHover.js";import{motion as s}from"framer-motion";import{getContrastColor as a}from"../../../../../../common/utils.js";import l from"../../../../../Icons/download.svg.js";import d from"../../../PickaxeCopyButton.js";import p from"./ImgModal.js";const c=({node:c,src:m,alt:b})=>{const{accentColor:h}=t(),[g,x]=i(!1),[u,f]=i(!1),k=n(),{isHover:w}=k,y=o(k,["isHover"]),v={hidden:{opacity:0,y:-10,pointerEvents:"none"},visible:{opacity:1,y:0,pointerEvents:"auto"}},j=()=>e("div",Object.assign({style:{position:"relative"}},{children:[e(s.div,Object.assign({initial:"hidden",animate:w?"visible":"hidden",variants:v,style:{position:"absolute",display:"flex",gap:"0.4rem",top:"10px",right:"10px",color:"#FFF"}},{children:[r(s.button,Object.assign({style:{outline:"none",padding:"0.5rem 0.65rem",borderRadius:"4px",boxShadow:"0px 4px 6px rgba(0, 0, 0, 0.1)",transition:"background-color 0.2s ease",backgroundColor:h+"07"},whileHover:{backgroundColor:h},whileTap:{scale:.95},onClick:o=>{o.stopPropagation(),window.open(m,"_blank")}},{children:r(l,{width:24,height:24,style:{color:a(h),flexShrink:0}})})),r(s.button,Object.assign({style:{outline:"none",padding:"0.5rem 0.65rem",borderRadius:"4px",boxShadow:"0px 4px 6px rgba(0, 0, 0, 0.1)",transition:"background-color 0.2s ease",backgroundColor:h+"07"},whileHover:{backgroundColor:h},whileTap:{scale:.95},onClick:o=>o.stopPropagation()},{children:r(d,{color:a(h),iconClassName:"w-6 h-6",text:m||""})}))]})),r("img",{src:m,alt:b,style:{borderRadius:"8px",width:"100%",transition:"box-shadow 0.3s ease",boxShadow:w?"inset 0px 4px 10px rgba(0, 0, 0, 0.5)":"none"},onError:()=>x(!0),onClick:()=>f(!0)})]}));return e("div",Object.assign({style:{marginTop:"2rem",marginBottom:"2rem",display:"flex",width:"100%",justifyContent:"center",overflow:"hidden",borderRadius:"8px",transition:"transform 0.3s ease, box-shadow 0.3s ease",transform:w?"translateY(-5px)":"translateY(0)"}},y,{children:[g?r("p",Object.assign({style:{userSelect:"none",opacity:.5,fontStyle:"italic"}},{children:"[Image link is broken]"})):r(j,{}),u&&r(p,Object.assign({isOpen:u,onChangeIsOpen:f},{children:r(j,{})}))]}))};export{c as default};
1
+ import{__rest as o}from"../../../../../../_virtual/_tslib.js";import{jsxs as e,jsx as i}from"react/jsx-runtime";import{useState as t}from"react";import{usePickaxeMarkdownContext as r}from"../../hooks/usePickaxeMarkdownContext.js";import{useHover as n}from"../../../../../../hooks/core/useHover.js";import{motion as s}from"framer-motion";import{getContrastColor as a}from"../../../../../../common/utils.js";import l from"../../../../../Icons/download.svg.js";import p from"../../../PickaxeCopyButton.js";import c from"./ImgModal.js";const d=({node:d,src:m,alt:b})=>{const{accentColor:h}=r(),[x,g]=t(!1),[u,y]=t(!1),f=n(),{isHover:w}=f,v=o(f,["isHover"]);return e("div",Object.assign({style:{marginTop:"2rem",marginBottom:"2rem",display:"flex",width:"100%",justifyContent:"center",overflow:"hidden",borderRadius:"8px",transition:"transform 0.3s ease, box-shadow 0.3s ease",transform:w?"translateY(-5px)":"translateY(0)"}},v,{children:[u&&i(c,{src:m,isOpen:u,onChangeIsOpen:y}),x?i("p",Object.assign({style:{userSelect:"none",opacity:.5,fontStyle:"italic"}},{children:"[Image link is broken]"})):e("div",Object.assign({style:{position:"relative"}},{children:[e(s.div,Object.assign({initial:"hidden",animate:w?"visible":"hidden",variants:{hidden:{opacity:0,y:-10,pointerEvents:"none"},visible:{opacity:1,y:0,pointerEvents:"auto"}},style:{position:"absolute",display:"flex",gap:"0.4rem",top:"10px",right:"10px",color:"#FFF"}},{children:[i(s.button,Object.assign({style:{outline:"none",padding:"0.5rem 0.65rem",borderRadius:"4px",boxShadow:"0px 4px 6px rgba(0, 0, 0, 0.1)",transition:"background-color 0.2s ease",backgroundColor:h,opacity:.6},whileTap:{scale:.95},whileHover:{opacity:1},onClick:o=>{o.stopPropagation(),window.open(m,"_blank")}},{children:i(l,{width:24,height:24,style:{color:a(h),flexShrink:0}})})),i(s.button,Object.assign({style:{outline:"none",padding:"0.5rem 0.65rem",borderRadius:"4px",boxShadow:"0px 4px 6px rgba(0, 0, 0, 0.1)",transition:"background-color 0.2s ease",backgroundColor:h,opacity:.6},whileTap:{scale:.95},whileHover:{opacity:1},onClick:o=>o.stopPropagation()},{children:i(p,{color:a(h),iconClassName:"w-6 h-6",text:m||""})}))]})),i("img",{src:m,alt:b,style:{borderRadius:"8px",width:"100%",transition:"box-shadow 0.3s ease",boxShadow:w?"inset 0px 4px 10px rgba(0, 0, 0, 0.5)":"none"},onError:()=>g(!0),onClick:()=>y(!0)})]}))]}))};export{d as default};
@@ -1 +1 @@
1
- import{jsxs as e,jsx as i}from"react/jsx-runtime";import{usePickaxeContext as o}from"../../../../../../hooks/pickaxe/usePickaxeContext.js";import{motion as t}from"framer-motion";const r=({data:r})=>{const{colors:a}=o();return e(t.a,Object.assign({initial:{opacity:0,x:10},animate:{opacity:1,x:0},exit:{opacity:0,x:10},transition:{duration:.3},whileHover:{scale:1.02},whileTap:{scale:.98},style:{display:"flex",flexDirection:"column",backgroundColor:a.primary,color:a.text,borderRadius:"15px 15px 15px 10px",overflow:"hidden",minHeight:r.image?"145px":"auto",maxWidth:"220px",width:"100%"},href:r.href,target:"_blank",rel:"noopener noreferrer"},{children:[!!r.image&&i("div",{style:{backgroundImage:`url("${r.image}")`,backgroundSize:"cover",backgroundPosition:"center",flex:1}}),e("div",Object.assign({style:{display:"flex",flexDirection:"column",gap:"0.2rem",fontSize:"14px",padding:"0.25rem 1rem"}},{children:[i("p",Object.assign({style:{fontWeight:600,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}},{children:r.title})),i("p",Object.assign({style:{fontWeight:350,opacity:.6,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}},{children:r.description||"No description found"}))]}))]}))};export{r as default};
1
+ import{jsxs as e,jsx as i}from"react/jsx-runtime";import{usePickaxeContext as o}from"../../../../../../hooks/pickaxe/usePickaxeContext.js";import{motion as t}from"framer-motion";const r=({data:r})=>{var n,a;const{colors:l}=o();return e(t.a,Object.assign({initial:{opacity:0,x:10},animate:{opacity:1,x:0},exit:{opacity:0,x:10},transition:{duration:.3},whileHover:{scale:1.02},whileTap:{scale:.98},style:{display:"flex",flexDirection:"column",backgroundColor:null!==(n=null==l?void 0:l.primary)&&void 0!==n?n:"#FFF",color:null!==(a=null==l?void 0:l.text)&&void 0!==a?a:"#000",borderRadius:"15px 15px 15px 10px",overflow:"hidden",minHeight:r.image?"145px":"auto",maxWidth:"220px",width:"100%"},href:r.href,target:"_blank",rel:"noopener noreferrer"},{children:[!!r.image&&i("div",{style:{backgroundImage:`url("${r.image}")`,backgroundSize:"cover",backgroundPosition:"center",flex:1}}),e("div",Object.assign({style:{display:"flex",flexDirection:"column",gap:"0.2rem",fontSize:"14px",padding:"0.25rem 1rem"}},{children:[i("p",Object.assign({style:{fontWeight:600,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}},{children:r.title})),i("p",Object.assign({style:{fontWeight:350,opacity:.6,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}},{children:r.description||"No description found"}))]}))]}))};export{r as default};
@@ -1 +1 @@
1
- import{jsxs as e,jsx as i}from"react/jsx-runtime";import{useRef as t}from"react";import{usePickaxeMarkdownContext as r}from"./hooks/usePickaxeMarkdownContext.js";import n from"react-markdown";import l from"remark-gfm";import s from"remark-math";import o from"rehype-katex";import d from"./Custom/A/index.js";import m from"./Custom/P/index.js";import c from"./Custom/Img/index.js";import a from"./Custom/Iframe/index.js";import h from"./Custom/Code/index.js";import g from"./Custom/common/LinkPreview.js";const p=({className:p,style:f,value:b,recursion:j=!1})=>{const{theme:y,websiteMetadatas:u}=r(),x=t(null),O={h1:({node:e,children:t})=>i("h1",Object.assign({style:{fontSize:"2.25rem",lineHeight:"2.5rem"}},{children:t})),h2:({node:e,children:t})=>i("h2",Object.assign({style:{fontSize:"1.875rem",lineHeight:"2.25rem"}},{children:t})),h3:({node:e,children:t})=>i("h3",Object.assign({style:{fontSize:"1.5rem",lineHeight:"2rem"}},{children:t})),h4:({node:e,children:t})=>i("h4",Object.assign({className:"mt-2 text-xl",style:{fontSize:"1.25rem",lineHeight:"1.75rem"}},{children:t})),h5:({node:e,children:t})=>i("h5",Object.assign({style:{fontSize:"1.125rem",lineHeight:"1.75rem"}},{children:t})),p:m,a:d,ol:({node:e,children:t})=>i("ol",Object.assign({style:{listStyleType:"decimal",listStylePosition:"inside",paddingLeft:"1.5rem"}},{children:t})),ul:({node:e,children:t})=>i("ul",Object.assign({style:{listStyleType:"disc",listStylePosition:"inside",paddingLeft:"1.5rem"}},{children:t})),li:({node:e,children:t})=>i("li",{children:t}),table:({children:e})=>i("div",Object.assign({className:"overflow-auto"},{children:i("table",Object.assign({style:{tableLayout:"fixed",fontSize:"0.875rem",lineHeight:"1.24rem"}},{children:e}))})),th:({node:e,children:t})=>i("th",Object.assign({style:{padding:"0.75em 1em",fontWeight:600,textAlign:"left"}},{children:t})),tr:({node:e,children:t})=>i("tr",Object.assign({style:{border:"dark"===y?"1px solid #30363D":"1px solid #D0D7DE"}},{children:t})),td:({node:e,children:t})=>i("td",Object.assign({style:{padding:"0.75em 1em"}},{children:t})),code:h,blockquote:({node:e,children:t})=>i("blockquote",Object.assign({style:{lineHeight:"15px",borderLeft:"dark"===y?"4px solid #30363D":"4px solid #D0D7DE",color:"dark"===y?"#8B8B8B":"#656D76",paddingLeft:"1rem",marginBottom:"1rem"}},{children:t})),img:c,iframe:a};return e("div",Object.assign({className:"pxe-markdown",ref:x,style:Object.assign({position:"relative",whiteSpace:"pre-wrap"},f)},{children:[i(n,Object.assign({},p&&{className:p},{components:O,remarkPlugins:[l,s],rehypePlugins:[o]},{children:(null!=b?b:"").replace(/\u200B/g,"")})),!j&&u.length>0&&i("div",Object.assign({style:{display:"flex",flexDirection:"column",gap:"2rem"}},{children:u.map(((e,t)=>i(g,{data:e},t)))}))]}))};export{p as PickaxeMarkdownRenderer};
1
+ import{jsxs as e,jsx as i}from"react/jsx-runtime";import{useRef as t,useMemo as r}from"react";import{usePickaxeMarkdownContext as n}from"./hooks/usePickaxeMarkdownContext.js";import l from"react-markdown";import s from"remark-gfm";import o from"remark-math";import d from"rehype-katex";import m from"./Custom/A/index.js";import c from"./Custom/P/index.js";import a from"./Custom/Img/index.js";import h from"./Custom/Iframe/index.js";import g from"./Custom/Code/index.js";import p from"./Custom/common/LinkPreview.js";const f=({className:f,style:b,value:j,recursion:y=!1})=>{const{theme:u,websiteMetadatas:x}=n(),O=t(null),k=r((()=>{if(!j)return"";let e=j;return e=j.replace(/<!--[\s\S]*?-->/g,""),e=j.replace(/\u200B/g,""),e}),[j]),S={h1:({node:e,children:t})=>i("h1",Object.assign({style:{fontSize:"2.25rem",lineHeight:"2.5rem"}},{children:t})),h2:({node:e,children:t})=>i("h2",Object.assign({style:{fontSize:"1.875rem",lineHeight:"2.25rem"}},{children:t})),h3:({node:e,children:t})=>i("h3",Object.assign({style:{fontSize:"1.5rem",lineHeight:"2rem"}},{children:t})),h4:({node:e,children:t})=>i("h4",Object.assign({className:"mt-2 text-xl",style:{fontSize:"1.25rem",lineHeight:"1.75rem"}},{children:t})),h5:({node:e,children:t})=>i("h5",Object.assign({style:{fontSize:"1.125rem",lineHeight:"1.75rem"}},{children:t})),p:c,a:m,ol:({node:e,children:t})=>i("ol",Object.assign({style:{listStyleType:"decimal",listStylePosition:"inside",paddingLeft:"1.5rem"}},{children:t})),ul:({node:e,children:t})=>i("ul",Object.assign({style:{listStyleType:"disc",listStylePosition:"inside",paddingLeft:"1.5rem"}},{children:t})),li:({node:e,children:t})=>i("li",{children:t}),table:({children:e})=>i("div",Object.assign({className:"overflow-auto"},{children:i("table",Object.assign({style:{tableLayout:"fixed",fontSize:"0.875rem",lineHeight:"1.24rem"}},{children:e}))})),th:({node:e,children:t})=>i("th",Object.assign({style:{padding:"0.75em 1em",fontWeight:600,textAlign:"left"}},{children:t})),tr:({node:e,children:t})=>i("tr",Object.assign({style:{border:"dark"===u?"1px solid #30363D":"1px solid #D0D7DE"}},{children:t})),td:({node:e,children:t})=>i("td",Object.assign({style:{padding:"0.75em 1em"}},{children:t})),code:g,blockquote:({node:e,children:t})=>i("blockquote",Object.assign({style:{lineHeight:"15px",borderLeft:"dark"===u?"4px solid #30363D":"4px solid #D0D7DE",color:"dark"===u?"#8B8B8B":"#656D76",paddingLeft:"1rem",marginBottom:"1rem"}},{children:t})),img:a,iframe:h};return e("div",Object.assign({className:"pxe-markdown",ref:O,style:Object.assign({position:"relative",whiteSpace:"pre-wrap"},b)},{children:[i(l,Object.assign({},f&&{className:f},{components:S,remarkPlugins:[s,o],rehypePlugins:[d]},{children:k})),!y&&x.length>0&&i("div",Object.assign({style:{display:"flex",flexDirection:"column",gap:"2rem"}},{children:x.map(((e,t)=>i(p,{data:e},t)))}))]}))};export{f as PickaxeMarkdownRenderer};
@@ -1 +1 @@
1
- import{__awaiter as t}from"../../_virtual/_tslib.js";import{useMutation as e}from"@tanstack/react-query";import i from"../../common/api/index.js";const s=()=>e({mutationFn:e=>(({formId:e,responseId:s,documentId:o,studioUserId:r,pickaxe:a,value:n,valueObj:c})=>t(void 0,void 0,void 0,(function*(){const t=yield i.post("/pickaxe/submit",Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({origin:"pickaxe",formId:e},s&&{responseId:s}),o&&{documentId:o}),r&&{studioUserId:r}),a&&{pickaxe:a}),n&&{value:n}),c&&{valueObj:c})),d=t.data;if(200!==t.status)throw new Error("[_getHistory] Failed to fetch history "+d);return d})))(e)});export{s as useSubmit};
1
+ import{__awaiter as t}from"../../_virtual/_tslib.js";import{useMutation as e}from"@tanstack/react-query";import s from"../../common/api/index.js";const i=()=>e({mutationFn:e=>(({formId:e,responseId:i,documentId:o,studioUserId:a,deploymentId:n,pickaxe:r,value:d,valueObj:c})=>t(void 0,void 0,void 0,(function*(){const t=yield s.post("/pickaxe/submit",Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({origin:"pickaxe",formId:e},i&&{responseId:i}),o&&{documentId:o}),a&&{studioUserId:a}),n&&{deploymentId:n}),r&&{pickaxe:r}),d&&{value:d}),c&&{valueObj:c})),m=t.data;if(200!==t.status)throw new Error("[_getHistory] Failed to fetch history "+m);return m})))(e)});export{i as useSubmit};
@@ -1,14 +1,14 @@
1
- import { Dispatch, MutableRefObject, ReactNode, RefObject, SetStateAction } from "react";
1
+ import type { SetState } from "../../../../types/common";
2
+ import { MutableRefObject, ReactNode, RefObject } from "react";
2
3
  export type AnyScrollRef = RefObject<HTMLDivElement> | MutableRefObject<HTMLDivElement>;
3
4
  type ScrollContextType = {
4
5
  scrollContainerRef: MutableRefObject<HTMLDivElement>;
5
6
  scrollTargetRef: MutableRefObject<HTMLDivElement>;
6
- isLocked: boolean;
7
+ hasScrolledRef: MutableRefObject<boolean>;
7
8
  isScrolling: boolean;
8
9
  isScrollIncreasing: boolean;
9
- setIsScrolling: Dispatch<SetStateAction<boolean>>;
10
- setIsScrollIncreasing: Dispatch<SetStateAction<boolean>>;
11
- setIsLocked: Dispatch<SetStateAction<boolean>>;
10
+ setIsScrolling: SetState<boolean>;
11
+ setIsScrollIncreasing: SetState<boolean>;
12
12
  };
13
13
  interface ScrollProviderProps {
14
14
  children: ReactNode;
@@ -1,14 +1,9 @@
1
- /// <reference types="react" />
2
1
  interface UseScrollProps {
3
- behavior?: ScrollBehavior;
2
+ auto?: boolean;
4
3
  }
5
- export declare const useScroll: ({ behavior }?: UseScrollProps) => {
6
- scrollContainerRef: import("react").MutableRefObject<HTMLDivElement>;
7
- scrollTargetRef: import("react").MutableRefObject<HTMLDivElement>;
4
+ export declare const useScroll: ({ auto }: UseScrollProps) => {
8
5
  isScrollIncreasing: boolean;
9
- scrollToContainer: () => void;
10
6
  scrollToBottom: () => void;
11
- scrollStart: () => void;
12
- scrollEnd: () => void;
7
+ scrollToTarget: () => void;
13
8
  };
14
9
  export {};
@@ -2,10 +2,9 @@
2
2
  export declare const useScrollContext: () => {
3
3
  scrollContainerRef: import("react").MutableRefObject<HTMLDivElement>;
4
4
  scrollTargetRef: import("react").MutableRefObject<HTMLDivElement>;
5
- isLocked: boolean;
5
+ hasScrolledRef: import("react").MutableRefObject<boolean>;
6
6
  isScrolling: boolean;
7
7
  isScrollIncreasing: boolean;
8
- setIsScrolling: import("react").Dispatch<import("react").SetStateAction<boolean>>;
9
- setIsScrollIncreasing: import("react").Dispatch<import("react").SetStateAction<boolean>>;
10
- setIsLocked: import("react").Dispatch<import("react").SetStateAction<boolean>>;
8
+ setIsScrolling: import("../../../../../types/common").SetState<boolean>;
9
+ setIsScrollIncreasing: import("../../../../../types/common").SetState<boolean>;
11
10
  };
@@ -34,6 +34,7 @@ type PickaxeContextType = {
34
34
  chatId: string;
35
35
  userId: string;
36
36
  studioUserId: string;
37
+ deploymentId: string;
37
38
  pickaxe: Pickaxe | null;
38
39
  styles: PickaxeProviderStyles;
39
40
  colors: PickaxeProviderColors;
@@ -58,6 +59,7 @@ export interface IPickaxeProviderProps {
58
59
  children: ReactNode;
59
60
  userId?: string;
60
61
  studioUserId?: string;
62
+ deploymentId?: string;
61
63
  styles?: Partial<PickaxeProviderStyles>;
62
64
  colors?: Partial<PickaxeProviderColors>;
63
65
  limits?: Record<string, PickaxeLimitData>;
@@ -68,5 +70,5 @@ export interface IPickaxeProviderProps {
68
70
  onGenerateComplete?: (responseId: string) => void;
69
71
  }
70
72
  export declare const PickaxeContext: import("react").Context<PickaxeContextType>;
71
- export declare const PickaxeProvider: ({ children, userId, studioUserId, styles, colors, limits, misc, responsiveBy, loadFont, forceMobile, onGenerateComplete, }: IPickaxeProviderProps) => import("react/jsx-runtime").JSX.Element;
73
+ export declare const PickaxeProvider: ({ children, userId, studioUserId, deploymentId, styles, colors, limits, misc, responsiveBy, loadFont, forceMobile, onGenerateComplete, }: IPickaxeProviderProps) => import("react/jsx-runtime").JSX.Element;
72
74
  export {};
@@ -1,8 +1,7 @@
1
- import type { ReactNode } from "react";
2
1
  interface ImgModalProps {
3
- children?: ReactNode;
2
+ src?: string;
4
3
  isOpen: boolean;
5
4
  onChangeIsOpen: (isOpen: boolean) => void;
6
5
  }
7
- declare const ImgModal: ({ children, isOpen, onChangeIsOpen }: ImgModalProps) => import("react/jsx-runtime").JSX.Element;
6
+ declare const ImgModal: ({ src, isOpen, onChangeIsOpen }: ImgModalProps) => import("react/jsx-runtime").JSX.Element;
8
7
  export default ImgModal;
@@ -3,6 +3,7 @@ export declare const usePickaxeContext: () => {
3
3
  chatId: string;
4
4
  userId: string;
5
5
  studioUserId: string;
6
+ deploymentId: string;
6
7
  pickaxe: import("../../types/pickaxe").Pickaxe | null;
7
8
  styles: import("../../components/Pickaxe/Provider").PickaxeProviderStyles;
8
9
  colors: import("../../components/Pickaxe/Provider").PickaxeProviderColors;
@@ -4,6 +4,7 @@ type MutationParams = {
4
4
  responseId?: string;
5
5
  documentId?: string;
6
6
  studioUserId?: string;
7
+ deploymentId?: string;
7
8
  pickaxe?: Partial<Pickaxe>;
8
9
  value?: string;
9
10
  valueObj?: Record<string, string>;
@@ -6,6 +6,7 @@ type MutationParams = {
6
6
  userId?: string;
7
7
  studioId?: string;
8
8
  studioUserId?: string;
9
+ deploymentId?: string;
9
10
  messages?: {
10
11
  role: ChatRole;
11
12
  message: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pickaxeproject/react",
3
- "version": "0.0.48",
3
+ "version": "0.0.50",
4
4
  "description": "Client utility library for Pickaxe",
5
5
  "repository": {
6
6
  "type": "git",
@@ -52,16 +52,16 @@
52
52
  "@rollup/plugin-node-resolve": "^15.0.1",
53
53
  "@rollup/plugin-replace": "^6.0.2",
54
54
  "@rollup/plugin-terser": "^0.3.0",
55
- "@storybook/addon-a11y": "^8.4.7",
56
- "@storybook/addon-docs": "^8.4.7",
57
- "@storybook/addon-essentials": "8.4.7",
58
- "@storybook/addon-interactions": "8.4.7",
59
- "@storybook/addon-links": "^8.4.7",
60
- "@storybook/addon-themes": "^8.4.7",
61
- "@storybook/blocks": "8.4.7",
62
- "@storybook/react": "8.4.7",
63
- "@storybook/react-vite": "^8.4.7",
64
- "@storybook/test": "8.4.7",
55
+ "@storybook/addon-a11y": "^8.5.3",
56
+ "@storybook/addon-docs": "^8.5.3",
57
+ "@storybook/addon-essentials": "^8.5.3",
58
+ "@storybook/addon-interactions": "^8.5.3",
59
+ "@storybook/addon-links": "^8.5.3",
60
+ "@storybook/addon-themes": "^8.5.3",
61
+ "@storybook/blocks": "^8.5.3",
62
+ "@storybook/react": "^8.5.3",
63
+ "@storybook/react-vite": "^8.5.3",
64
+ "@storybook/test": "^8.5.3",
65
65
  "@svgr/rollup": "^8.1.0",
66
66
  "@tailwindcss/container-queries": "^0.1.1",
67
67
  "@tanstack/react-query": "^4.36.1",
@@ -113,7 +113,7 @@
113
113
  "rollup-plugin-peer-deps-external": "^2.2.4",
114
114
  "rollup-plugin-postcss": "^4.0.2",
115
115
  "rollup-plugin-typescript2": "^0.34.1",
116
- "storybook": "8.4.7",
116
+ "storybook": "^8.5.3",
117
117
  "tailwind-merge": "^2.6.0",
118
118
  "tailwind-scrollbar": "^3.1.0",
119
119
  "tailwindcss": "^3.4.17",
@@ -161,6 +161,7 @@
161
161
  "scripts": {
162
162
  "build": "cross-env NODE_ENV=production rollup -c",
163
163
  "lint": "eslint . --ext .ts,.tsx,.js,.jsx",
164
+ "format": "prettier --write .",
164
165
  "changeset": "changeset",
165
166
  "release": "changeset publish",
166
167
  "dev": "storybook dev -p 6006",
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("react"),t=require("./index.js"),r=require("../../Icons/x.svg.js"),n=require("../../../common/cn.js");exports.default=({className:o,iconClassName:a,icon:i,onClick:c})=>{const{setIsOpen:u}=s.useContext(t.ModalContext);return e.jsx("button",Object.assign({className:n.default("outline-none hover:opacity-70 hover:duration-300 active:opacity-100",o),onClick:()=>{u(!1),c&&c()}},{children:i||e.jsx(r.default,{className:n.default("h-6 w-6 shrink-0",a)})}))};
@@ -1 +0,0 @@
1
- import{jsx as o}from"react/jsx-runtime";import{useContext as s}from"react";import{ModalContext as t}from"./index.js";import n from"../../Icons/x.svg.js";import r from"../../../common/cn.js";const e=({className:e,iconClassName:c,icon:i,onClick:a})=>{const{setIsOpen:m}=s(t);return o("button",Object.assign({className:r("outline-none hover:opacity-70 hover:duration-300 active:opacity-100",e),onClick:()=>{m(!1),a&&a()}},{children:i||o(n,{className:r("h-6 w-6 shrink-0",c)})}))};export{e as default};