@pickaxeproject/react 2.6.0 → 2.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/dist/cjs/components/EmbedPreview/ChatInput.js +1 -0
  2. package/dist/cjs/components/EmbedPreview/FAB.js +1 -0
  3. package/dist/cjs/components/EmbedPreview/Inline.js +1 -0
  4. package/dist/cjs/components/EmbedPreview/Popup.js +1 -0
  5. package/dist/cjs/components/Pickaxe/Addons/Document/Provider.js +1 -1
  6. package/dist/cjs/components/Pickaxe/Addons/Document/hooks/useDocument.js +1 -1
  7. package/dist/cjs/components/Pickaxe/Chat/History/Message.js +1 -1
  8. package/dist/cjs/components/Pickaxe/Chat/Input.js +1 -1
  9. package/dist/cjs/components/Pickaxe/Form/Questions/Document.js +1 -1
  10. package/dist/cjs/components/Pickaxe/Form/Questions/Submit.js +1 -1
  11. package/dist/cjs/components/Pickaxe/Provider.js +1 -1
  12. package/dist/cjs/components/Pickaxe/common/PickaxeButton.js +1 -1
  13. package/dist/cjs/components/Pickaxe/common/PickaxeHead.js +1 -1
  14. package/dist/cjs/components/Pickaxe/common/PickaxeUpgradeCard.js +1 -1
  15. package/dist/cjs/components/Pickaxe/index.js +1 -1
  16. package/dist/cjs/embed/index.js +1 -0
  17. package/dist/cjs/hooks/pickaxe/useSubmit.js +1 -1
  18. package/dist/cjs/hooks/pickaxe/useSubmitDocument.js +1 -1
  19. package/dist/cjs/index.js +1 -1
  20. package/dist/cjs/src/components/EmbedPreview/ChatInput.d.ts +1 -1
  21. package/dist/cjs/src/components/EmbedPreview/FAB.d.ts +1 -1
  22. package/dist/cjs/src/components/EmbedPreview/Inline.d.ts +1 -1
  23. package/dist/cjs/src/components/EmbedPreview/Popup.d.ts +1 -1
  24. package/dist/cjs/src/components/Pickaxe/Addons/Document/Provider.d.ts +2 -1
  25. package/dist/cjs/src/components/Pickaxe/Addons/Document/hooks/useDocument.d.ts +3 -3
  26. package/dist/cjs/src/components/Pickaxe/Addons/Document/hooks/useDocumentContext.d.ts +2 -1
  27. package/dist/cjs/src/components/Pickaxe/Provider.d.ts +2 -0
  28. package/dist/cjs/src/components/Pickaxe/common/PickaxeButton.d.ts +1 -1
  29. package/dist/cjs/src/embed.d.ts +5 -0
  30. package/dist/cjs/src/hooks/pickaxe/usePickaxeContext.d.ts +2 -0
  31. package/dist/cjs/src/hooks/pickaxe/useSubmit.d.ts +1 -1
  32. package/dist/cjs/src/hooks/pickaxe/useSubmitDocument.d.ts +2 -1
  33. package/dist/cjs/src/index.d.ts +4 -0
  34. package/dist/esm/components/EmbedPreview/ChatInput.js +1 -0
  35. package/dist/esm/components/EmbedPreview/FAB.js +1 -0
  36. package/dist/esm/components/EmbedPreview/Inline.js +1 -0
  37. package/dist/esm/components/EmbedPreview/Popup.js +1 -0
  38. package/dist/esm/components/Pickaxe/Addons/Document/Provider.js +1 -1
  39. package/dist/esm/components/Pickaxe/Addons/Document/hooks/useDocument.js +1 -1
  40. package/dist/esm/components/Pickaxe/Chat/History/Message.js +1 -1
  41. package/dist/esm/components/Pickaxe/Chat/Input.js +1 -1
  42. package/dist/esm/components/Pickaxe/Form/Questions/Document.js +1 -1
  43. package/dist/esm/components/Pickaxe/Form/Questions/Submit.js +1 -1
  44. package/dist/esm/components/Pickaxe/Provider.js +1 -1
  45. package/dist/esm/components/Pickaxe/common/PickaxeButton.js +1 -1
  46. package/dist/esm/components/Pickaxe/common/PickaxeHead.js +1 -1
  47. package/dist/esm/components/Pickaxe/common/PickaxeUpgradeCard.js +1 -1
  48. package/dist/esm/components/Pickaxe/index.js +1 -1
  49. package/dist/esm/embed/index.js +1 -0
  50. package/dist/esm/hooks/pickaxe/useSubmit.js +1 -1
  51. package/dist/esm/hooks/pickaxe/useSubmitDocument.js +1 -1
  52. package/dist/esm/index.js +1 -1
  53. package/dist/esm/src/components/EmbedPreview/ChatInput.d.ts +1 -1
  54. package/dist/esm/src/components/EmbedPreview/FAB.d.ts +1 -1
  55. package/dist/esm/src/components/EmbedPreview/Inline.d.ts +1 -1
  56. package/dist/esm/src/components/EmbedPreview/Popup.d.ts +1 -1
  57. package/dist/esm/src/components/Pickaxe/Addons/Document/Provider.d.ts +2 -1
  58. package/dist/esm/src/components/Pickaxe/Addons/Document/hooks/useDocument.d.ts +3 -3
  59. package/dist/esm/src/components/Pickaxe/Addons/Document/hooks/useDocumentContext.d.ts +2 -1
  60. package/dist/esm/src/components/Pickaxe/Provider.d.ts +2 -0
  61. package/dist/esm/src/components/Pickaxe/common/PickaxeButton.d.ts +1 -1
  62. package/dist/esm/src/embed.d.ts +5 -0
  63. package/dist/esm/src/hooks/pickaxe/usePickaxeContext.d.ts +2 -0
  64. package/dist/esm/src/hooks/pickaxe/useSubmit.d.ts +1 -1
  65. package/dist/esm/src/hooks/pickaxe/useSubmitDocument.d.ts +2 -1
  66. package/dist/esm/src/index.d.ts +4 -0
  67. package/package.json +8 -1
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../_virtual/_tslib.js"),i=require("react/jsx-runtime"),t=require("../../hooks/pickaxe/usePickaxeContext.js"),r=require("@tanstack/react-query"),s=require("../Pickaxe/index.js"),n=require("../Pickaxe/Provider.js"),a=require("../../common/cn.js");const l=new r.QueryClient({defaultOptions:{queries:{refetchOnWindowFocus:!1}}}),o=({children:e})=>{var r;const{styles:s,deploymentDimensions:n,isNewChat:l,isDropShadow:o}=t.usePickaxeContext();return i.jsx("div",Object.assign({className:a.default("relative top-0 flex w-full flex-col transition-all",o&&"shadow-embed",!l&&"overflow-y-auto overflow-x-hidden scrollbar scrollbar-thin"),style:Object.assign(Object.assign({borderRadius:null!==(r=null==s?void 0:s.cornerRadius)&&void 0!==r?r:0},"px"===(null==n?void 0:n.width.unit)?{width:n.width.value+n.width.unit}:"%"===(null==n?void 0:n.width.unit)?{width:"100%",maxWidth:n.maxWidth+"px"}:{}),l?{height:58}:"px"===(null==n?void 0:n.height.unit)?{height:n.height.value+"px"}:"auto"===(null==n?void 0:n.height.unit)?{minHeight:n.minHeight+"px",maxHeight:n.maxHeight+"px"}:{})},{children:e}))};exports.ChatInput=t=>{var{formId:a,className:u}=t,d=e.__rest(t,["formId","className"]);return i.jsx(r.QueryClientProvider,Object.assign({client:l},{children:i.jsx(n.PickaxeProvider,Object.assign({},d,{deploymentType:"chat-input",isEmbed:!0},{children:i.jsx(o,{children:i.jsx(s.Pickaxe,Object.assign({formId:a},u&&{className:u}))})}))}))},exports.ChatInputWrapper=o;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../_virtual/_tslib.js"),i=require("react/jsx-runtime"),t=require("react"),s=require("../../hooks/pickaxe/usePickaxeContext.js"),n=require("@tanstack/react-query"),a=require("../Pickaxe/index.js"),r=require("../Pickaxe/Provider.js"),o=require("framer-motion"),c=require("../Icons/pickaxe.svg.js"),l=require("../Icons/spark.svg.js"),d=require("../Icons/x.svg.js"),u=require("../../common/cn.js");const h=new n.QueryClient({defaultOptions:{queries:{refetchOnWindowFocus:!1}}}),m=({isOpen:n,setIsOpen:a})=>{const{colors:r,deploymentMisc:o}=s.usePickaxeContext(),[u,h]=t.useState({src:"",isLarge:!1}),[m,g]=t.useState(!0);return t.useEffect((()=>{e.__awaiter(void 0,void 0,void 0,(function*(){try{if(!(null==o?void 0:o.fabImage))return;g(!0);const e=new Image;e.src=o.fabImage,yield e.decode();const i=e.width>200;h({src:o.fabImage,isLarge:i})}catch(e){console.error("[pxe] error loading FAB image:",e),h({src:"",isLarge:!1})}finally{g(!1)}}))}),[null==o?void 0:o.fabImage]),m?null:i.jsx("button",Object.assign({className:"absolute z-50 flex h-[60px] w-[60px] cursor-pointer items-center justify-center overflow-hidden rounded-full bg-white dark:bg-black",style:{boxShadow:"0px 6px 6px rgba(0, 0, 0, 0.12)",background:r.primary,color:r.text,bottom:20,right:20},onClick:()=>a(!n)},{children:n?i.jsx(x,Object.assign({id:"close-btn"},{children:i.jsx(d.default,{className:"shrink-0 select-none",style:{width:28,height:28}})})):i.jsx(x,Object.assign({id:"open-btn"},{children:u.src===`https://${process.env.NEXT_PUBLIC_PICKAXE_DOMAIN}/builder/assets/images/pickaxe-chaticons/chaticon2.png`?i.jsx(l.default,{className:"h-6 w-6 shrink-0 select-none"}):u.src?i.jsx("img",{src:u.src,alt:"FAB Icon",width:u.isLarge?60:24,height:u.isLarge?60:24,className:"select-none"}):i.jsx(c.default,{className:"h-6 w-6 shrink-0 select-none"})}))}))},x=({id:e,children:t})=>i.jsx(o.motion.div,Object.assign({initial:{opacity:0,rotate:-10},animate:{opacity:1,rotate:0},exit:{opacity:0,rotate:10},transition:{duration:.3}},{children:t}),e);exports.FAB=s=>{var c,l,d,x,{formId:g,className:b}=s,p=e.__rest(s,["formId","className"]);const[v,f]=t.useState(!1),[j,w]=t.useState({}),y=()=>{const e=p.deploymentDimensions;if(!e)return;const i={value:e.width.value,unit:e.width.unit},t=e.maxWidth,s={value:e.height.value,unit:e.height.unit},n=e.minHeight,a=e.maxHeight,r=window.innerHeight-150,o=window.innerWidth-40;let c=0;c="px"===s.unit?s.value:a;let l=Math.min(c,r);l=Math.max(l,n,100),l=Math.min(l,r);let d=0;d="px"===i.unit?i.value:t;let u=Math.min(d,o,t);u=Math.max(u,150),u=Math.min(u,o);w({width:"%"===i.unit?i.value+"%":u+"px",minWidth:150,maxWidth:u,height:"auto"===s.unit?s.value:l+"px",minHeight:100,maxHeight:l})};return t.useEffect((()=>(y(),window.addEventListener("resize",y),()=>window.removeEventListener("resize",y))),[p.deploymentDimensions]),i.jsx(n.QueryClientProvider,Object.assign({client:h},{children:i.jsx(r.PickaxeProvider,Object.assign({},p,{deploymentType:"fab",isEmbed:!0},{children:i.jsxs(o.AnimatePresence,{children:[v&&i.jsx(o.motion.div,Object.assign({initial:{opacity:0,scale:.8},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.8},transition:{duration:.1},className:u.default("transition-h absolute z-50 flex flex-col overflow-hidden bg-transparent",p.isDropShadow&&"shadow-embed"),style:Object.assign({transformOrigin:"bottom right",borderRadius:null!==(l=null===(c=p.styles)||void 0===c?void 0:c.cornerRadius)&&void 0!==l?l:0,bottom:100,right:20},j)},{children:i.jsx("div",Object.assign({className:"flex flex-col overflow-auto h-full scrollbar scrollbar-thin dark:bg-black",style:{borderRadius:null!==(x=null===(d=p.styles)||void 0===d?void 0:d.cornerRadius)&&void 0!==x?x:0}},{children:i.jsx(a.Pickaxe,Object.assign({formId:g},b&&{className:b}))}))}),"fab-content"),i.jsx(m,{isOpen:v,setIsOpen:f})]})}))}))},exports.FABButton=m;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../_virtual/_tslib.js"),i=require("react/jsx-runtime"),n=require("@tanstack/react-query"),s=require("../Pickaxe/index.js"),t=require("../Pickaxe/Provider.js"),o=require("../../common/cn.js");const l=new n.QueryClient({defaultOptions:{queries:{refetchOnWindowFocus:!1}}});exports.Inline=r=>{var d,a,m,u,c,h,{formId:x,className:p}=r,v=e.__rest(r,["formId","className"]);return i.jsx(n.QueryClientProvider,Object.assign({client:l},{children:i.jsx(t.PickaxeProvider,Object.assign({},v,{deploymentType:"inline",isEmbed:!0},{children:i.jsx("div",Object.assign({className:o.default("relative top-0 flex w-full flex-col overflow-y-auto overflow-x-hidden transition-all scrollbar scrollbar-thin",v.isDropShadow&&"shadow-embed"),style:Object.assign(Object.assign({borderRadius:null!==(a=null===(d=v.styles)||void 0===d?void 0:d.cornerRadius)&&void 0!==a?a:0},"px"===(null===(m=v.deploymentDimensions)||void 0===m?void 0:m.width.unit)?{width:v.deploymentDimensions.width.value+v.deploymentDimensions.width.unit}:"%"===(null===(u=v.deploymentDimensions)||void 0===u?void 0:u.width.unit)?{width:"100%",maxWidth:v.deploymentDimensions.maxWidth+"px"}:{}),"px"===(null===(c=v.deploymentDimensions)||void 0===c?void 0:c.height.unit)?{height:v.deploymentDimensions.height.value+"px"}:"auto"===(null===(h=v.deploymentDimensions)||void 0===h?void 0:h.height.unit)?{minHeight:v.deploymentDimensions.minHeight+"px",maxHeight:v.deploymentDimensions.maxHeight+"px"}:{})},{children:i.jsx(s.Pickaxe,Object.assign({formId:x},p&&{className:p}))}))}))}))};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../_virtual/_tslib.js"),i=require("react/jsx-runtime"),o=require("react"),s=require("../../hooks/pickaxe/usePickaxeContext.js"),t=require("../../hooks/pickaxe/usePickaxe.js"),n=require("../../hooks/studio/useStyleFontSize.js"),l=require("@tanstack/react-query"),a=require("../Pickaxe/index.js"),r=require("../Pickaxe/Provider.js"),d=require("../Icons/x.svg.js"),u=require("../Core/Modal/index.js"),c=require("../Core/Modal/Body.js"),m=require("../../common/cn.js");const p=new l.QueryClient({defaultOptions:{queries:{refetchOnWindowFocus:!1}}}),x=({formId:e,setIsOpen:o})=>{var l;const{colors:a,styles:r,deploymentDimensions:d,deploymentMisc:u}=s.usePickaxeContext(),c=n.useStyleFontSize(),p=t.useInstantPickaxe(e);return p.isLoading?null:i.jsx("button",Object.assign({style:Object.assign(Object.assign(Object.assign({},"Real Head Pro"!==r.font&&{fontFamily:r.font}),{color:a.accentText,backgroundColor:a.accent,borderRadius:r.cornerRadius+"px",borderWidth:r.outlineThickness+"px",maxWidth:"%"===(null==d?void 0:d.width.unit)?(null==d?void 0:d.maxWidth)+"px":(null==d?void 0:d.width.value)+"px",minHeight:48}),"Real Head Pro"!==r.font&&{fontFamily:r.font}),className:m.default(c.b2,"flex w-max min-w-[130px] select-none items-center font-semibold justify-center gap-x-3 px-4 hover:duration-300 focus:outline focus:outline-black/30 active:opacity-90 disabled:cursor-not-allowed dark:focus:outline-white/30"),onClick:()=>o(!0)},{children:i.jsx("p",Object.assign({className:m.default(c.b2,"font-semibold"),style:Object.assign({color:a.accentText},"Real Head Pro"!==r.font&&{fontFamily:r.font})},{children:(null==u?void 0:u.popupText)||(null===(l=p.data)||void 0===l?void 0:l.formtitle)||"Open Tool"}))}))};exports.Popup=s=>{var t,n,h,v,j,y,b,f,g,{formId:O,className:k}=s,w=e.__rest(s,["formId","className"]);const[P,q]=o.useState(!1);return i.jsx(l.QueryClientProvider,Object.assign({client:p},{children:i.jsxs(r.PickaxeProvider,Object.assign({},w,{deploymentType:"popup",isEmbed:!0},{children:[i.jsx(x,{formId:O,setIsOpen:q}),i.jsx(u.default,Object.assign({isOpen:P,onChange:()=>q(!1)},{children:i.jsxs(c.default,Object.assign({className:m.default("relative bg-transparent overflow-hidden",w.isDropShadow&&"shadow-embed"),style:{borderRadius:(null!==(n=null===(t=w.styles)||void 0===t?void 0:t.cornerRadius)&&void 0!==n?n:0)+"px"}},{children:[i.jsx("div",Object.assign({className:"overflow-auto scrollbar scrollbar-thin",style:Object.assign(Object.assign({borderRadius:(null!==(v=null===(h=w.styles)||void 0===h?void 0:h.cornerRadius)&&void 0!==v?v:0)+"px"},"px"===(null===(j=w.deploymentDimensions)||void 0===j?void 0:j.width.unit)?{width:w.deploymentDimensions.width.value+w.deploymentDimensions.width.unit}:"%"===(null===(y=w.deploymentDimensions)||void 0===y?void 0:y.width.unit)?{width:Math.floor(w.deploymentDimensions.maxWidth*(w.deploymentDimensions.width.value/100))}:{}),"px"===(null===(b=w.deploymentDimensions)||void 0===b?void 0:b.height.unit)?{height:w.deploymentDimensions.height.value+"px"}:"auto"===(null===(f=w.deploymentDimensions)||void 0===f?void 0:f.height.unit)?{height:w.deploymentDimensions.minHeight+"px",maxHeight:w.deploymentDimensions.maxHeight+"px"}:{})},{children:i.jsx(a.Pickaxe,Object.assign({formId:O},k&&{className:k}))})),i.jsx("button",Object.assign({className:"absolute z-10 outline-none hover:opacity-70 hover:duration-300 active:opacity-100",onClick:()=>q(!1),style:{right:12,top:12,color:(null===(g=w.colors)||void 0===g?void 0:g.text)||"#000"}},{children:i.jsx(d.default,{className:"h-5 w-5 shrink-0"})}))]}))}))]}))}))},exports.PopupCTAButton=x;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react");const s=t.createContext({});exports.DocumentContext=s,exports.default=({children:n})=>{const[o,c]=t.useState([]),[i,r]=t.useState(""),[u,a]=t.useState(""),[d,m]=t.useState(!1),[l,b]=t.useState(!1);return e.jsx(s.Provider,Object.assign({value:{documents:o,documentCount:o.length,documentError:i,websiteLink:u,isUploading:d,isShowList:l,editDocument:e=>{const t=o.map((t=>t.id===e.id?Object.assign(Object.assign({},t),e):t));c(t)},editDocumentByDocId:e=>{const t=o.map((t=>t.documentId===e.documentId?Object.assign(Object.assign({},t),e):t));c(t)},setDocuments:c,setDocumentError:r,setWebsiteLink:a,setIsUploading:m,setIsShowList:b}},{children:n}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react");const s=t.createContext({});exports.DocumentContext=s,exports.default=({children:o})=>{const[r,n]=t.useState([]),[i,u]=t.useState(""),[c,a]=t.useState(""),[d,l]=t.useState(!1),[m,g]=t.useState(!1);return e.jsx(s.Provider,Object.assign({value:{documents:r,documentCount:r.length,documentError:i,websiteLink:c,isUploading:d,isShowList:m,editDocument:e=>{n((t=>t.map((t=>t.id===e.id?Object.assign(Object.assign({},t),e):t))))},setDocuments:n,addDocument:e=>{n((t=>[...t,e]))},removeDocument:e=>{console.log(e),n((t=>t.filter((t=>t.id!==e))))},setDocumentError:u,setWebsiteLink:a,setIsUploading:l,setIsShowList:g}},{children:o}))};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../../_virtual/_tslib.js"),t=require("react"),s=require("../../../../../hooks/pickaxe/usePickaxeContext.js"),o=require("../../../../../hooks/pickaxe/useSubmitDocument.js"),n=require("./useDocumentContext.js"),i=require("../../../../../common/documents.js"),r=require("../../../../../common/error.js");const a=["gpt-4o","gpt-4o-mini","gpt-4.1","gpt-4.1-mini","gpt-4.1-nano","o1"];exports.useDocument=({onQuestionChange:u}={})=>{const{formId:d,chatId:l,pickaxe:c}=s.usePickaxeContext(),m=n.useDocumentContext(),p=o.useSubmitDocument(),f=t.useMemo((()=>{var e;return a.includes(null!==(e=null==c?void 0:c.model)&&void 0!==e?e:"gpt-3.5-turbo")}),[c]);return Object.assign(Object.assign({},m),{isImageUploadAllowed:f,onFileUpload:t=>e.__awaiter(void 0,void 0,void 0,(function*(){if(m.setDocumentError(""),!t.length)return null;const e=t[0];try{const s=[...i.allowedFileMimeTypes,...f?i.allowedImageMimeTypes:[]],o=t.some((e=>!s.includes(e.type)));if(o){throw new Error(f?"You can only upload PDF, TXT, DOCX, CSV, XLSX, JSON, PPTX, PNG, JPEG, WEBP, or GIF files. Please try again.":"You can only upload PDF, TXT, DOCX, CSV, XLSX, JSON, or PPTX files. Please try again.")}m.setIsUploading(!0),m.setIsShowList(!0),m.setDocuments([{type:"document",id:e.name,size:e.size,name:e.name,status:"uploading"}]);const n=yield p.document({formId:d,responseId:l,file:e}),{success:r,documentId:a,error:c}=n;if(!r)throw new Error(null!=c?c:"Document processing failed, please try again.");null==u||u({input:e.name,documentId:a});const y=a.startsWith("IMAGE-")?"image":"document";m.setDocuments([{type:y,id:e.name,size:e.size,name:e.name,status:"finished",documentId:a}]);return{type:y,size:e.size,id:e.name,name:e.name,status:"finished",documentId:a}}catch(t){const s=r.default(t);if(console.log("[onFileUpload] Error",s),s.includes("You can only upload"))return m.setDocumentError(s),null;m.editDocument({type:"document",id:e.name,name:e.name,size:e.size,status:"failed",error:s});return{type:"document",size:e.size,id:e.name,name:e.name,status:"failed",error:s}}finally{m.setIsUploading(!1)}})),onWebsiteUpload:t=>e.__awaiter(void 0,void 0,void 0,(function*(){m.setDocumentError("");let e=t.trim();if(!e)return null;e.startsWith("http://")&&(e=e.replace("http://","https://")),e.startsWith("https://")||(e=`https://${e}`);try{if(!e.includes("."))throw new Error("Please paste a valid website URL or Youtube video link to add to the knowledge base.");m.setIsUploading(!0),m.setIsShowList(!0),m.setWebsiteLink(""),m.setDocuments([{type:"website",id:e,size:0,name:e,status:"uploading"}]);const t=yield p.website({formId:d,responseId:l,website:e}),{success:s,documentId:o}=t;if(!s)throw new Error("Website processing failed, please try again.");m.setDocuments([{type:"website",id:e,size:0,name:e,status:"finished",documentId:o}]);return{type:"website",id:e,name:e,size:0,status:"finished",documentId:o}}catch(t){const s=r.default(t);if(console.log("[onWebsiteUpload] Error",s),s.includes("Please paste a valid website URL"))return m.setDocumentError(s),null;m.editDocument({type:"website",id:e,size:0,name:e,status:"failed",error:s});return{type:"website",id:e,size:0,name:e,status:"failed",error:s}}finally{m.setIsUploading(!1)}})),onEditDocumentByDocId:m.editDocumentByDocId})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../../_virtual/_tslib.js"),t=require("react"),s=require("../../../../../hooks/pickaxe/usePickaxeContext.js"),i=require("../../../../../hooks/pickaxe/useSubmitDocument.js"),o=require("./useDocumentContext.js"),n=require("../../../../../common/documents.js"),r=require("../../../../../common/error.js"),u=require("uuid");const a=["gpt-4o","gpt-4o-mini","gpt-4.1","gpt-4.1-mini","gpt-4.1-nano","o1"];exports.useDocument=({onQuestionChange:d}={})=>{const{formId:l,chatId:c,sessionId:m,pickaxe:p}=s.usePickaxeContext(),f=o.useDocumentContext(),g=i.useSubmitDocument(),w=t.useMemo((()=>{var e;return a.includes(null!==(e=null==p?void 0:p.model)&&void 0!==e?e:"gpt-3.5-turbo")}),[p]),h=e=>{const t=[...n.allowedFileMimeTypes,...w?n.allowedImageMimeTypes:[]];if(e.some((e=>!t.includes(e.type)))){const e=new Error(w?"You can only upload PDF, TXT, DOCX, CSV, XLSX, JSON, PPTX, PNG, JPEG, WEBP, or GIF files. Please try again.":"You can only upload PDF, TXT, DOCX, CSV, XLSX, JSON, or PPTX files. Please try again."),t=r.default(e);return f.setDocumentError(t),!0}return!1};return Object.assign(Object.assign({},f),{isImageUploadAllowed:w,onFileUpload:t=>e.__awaiter(void 0,void 0,void 0,(function*(){if(f.setDocumentError(""),!t.length)return null;if(h(t))return null;f.setIsUploading(!0),f.setIsShowList(!0);const s=t.map((e=>({file:e,id:u.v4()})));s.forEach((({file:e,id:t})=>{f.addDocument({type:"document",id:t,size:e.size,name:e.name,status:"uploading"})}));const i=s.map((({file:t,id:s})=>e.__awaiter(void 0,void 0,void 0,(function*(){try{const{success:e,documentId:i,error:o}=yield g.document({formId:l,responseId:c,file:t,sessionId:m});if(!e)throw new Error(null!=o?o:"Document processing failed");null==d||d({input:t.name,documentId:i});const n=i.startsWith("IMAGE-");return f.editDocument({id:s,type:n?"image":"document",name:t.name,size:t.size,status:"finished",documentId:i}),{name:t.name,documentId:i}}catch(e){const i=r.default(e);return f.editDocument({id:s,name:t.name,size:t.size,status:"failed",error:i}),{error:i}}})))),o=yield Promise.allSettled(i),n=new Set;for(const e of o)"fulfilled"===e.status&&"error"in e.value&&n.add(e.value.error);n.size>0&&f.setDocumentError([...n].join(", ")),f.setIsUploading(!1)})),onWebsiteUpload:t=>e.__awaiter(void 0,void 0,void 0,(function*(){f.setDocumentError("");let e=t.trim();if(!e)return null;e.startsWith("http://")&&(e=e.replace("http://","https://")),e.startsWith("https://")||(e=`https://${e}`);try{if(!e.includes("."))throw new Error("Please paste a valid website URL or Youtube video link to add to the knowledge base.");f.setIsUploading(!0),f.setIsShowList(!0),f.setWebsiteLink(""),f.setDocuments([{type:"website",id:e,size:0,name:e,status:"uploading"}]);const t=yield g.website({formId:l,responseId:c,website:e}),{success:s,documentId:i}=t;if(!s)throw new Error("Website processing failed, please try again.");f.setDocuments([{type:"website",id:e,size:0,name:e,status:"finished",documentId:i}]);return{type:"website",id:e,name:e,size:0,status:"finished",documentId:i}}catch(t){const s=r.default(t);if(console.log("[onWebsiteUpload] Error",s),s.includes("Please paste a valid website URL"))return f.setDocumentError(s),null;f.editDocument({type:"website",id:e,size:0,name:e,status:"failed",error:s});return{type:"website",id:e,size:0,name:e,status:"failed",error:s}}finally{f.setIsUploading(!1)}}))})};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("react"),t=require("../../../../hooks/pickaxe/usePickaxeContext.js"),a=require("../../../../hooks/studio/useStyleFontSize.js"),i=require("../../common/PickaxeMarkdown/index.js"),l=require("../../common/PickaxeMarkdown/Renderer.js"),c=require("../../common/PickaxeIcon.js"),r=require("./Document.js"),n=require("../../common/PickaxeCopyButton.js"),o=require("../../../../common/cn.js");exports.default=({index:d,message:x,isIntroExpand:u})=>{var m,j;const{formId:p,pickaxe:h,styles:f,colors:b,misc:g,responsiveBy:v,disableHtml:k,disableJs:w,disableCss:y,isNewChat:N,isRtl:O}=t.usePickaxeContext(),C=a.useStyleFontSize(),P=null!==(m=null==h?void 0:h.chaticon)&&void 0!==m?m:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/chaticons/${p}.png`;return"assistant"===x.role?e.jsx("div",Object.assign({className:o.default("flex w-full",O?"justify-end":"justify-start")},{children:e.jsx("div",Object.assign({className:o.default("flex flex-col",0===d&&N&&"viewport"===v&&"min-[767px]:max-w-[80%]",0===d&&N&&"container"===v&&"@[767px]/pickaxe-root:max-w-[80%]")},{children:e.jsxs("div",Object.assign({className:o.default("flex gap-x-3",O&&"flex-row-reverse")},{children:[g.isChatImage&&"NONE"!==P&&e.jsx(c.default,{src:P,alt:"Assistant",width:24,height:24,className:"my-3 h-6 w-6",textColor:b.text}),e.jsxs("div",Object.assign({className:o.default("flex flex-col",O?"items-end":"items-start")},{children:[e.jsx("div",Object.assign({className:o.default(C.b2,"chat-message pt-3",O?"text-right":"text-left")},{children:e.jsx(i.PickaxeMarkdown,Object.assign({theme:f.theme,accentColor:b.accent,actions:!0},O&&{rtl:!0},k&&{disableHtml:!0},w&&{disableJs:!0},y&&{disableCss:!0},{children:e.jsx(l.PickaxeMarkdownRenderer,Object.assign({value:x.content},0===d&&N&&x.content.length>470&&3===(null!==(j=null==h?void 0:h.icebreakers)&&void 0!==j?j:[]).length&&!x.content.includes("https://utils.pickaxe.co/api/fn")&&{maxLines:u?void 0:12}))}))})),e.jsx("div",Object.assign({className:"mt-4 flex gap-3"},{children:e.jsx(n.default,{color:b.accent,text:x.content})}))]}))]}))}))})):"user"===x.role?e.jsx("div",Object.assign({className:o.default("flex w-full",O?"justify-start":"justify-end")},{children:e.jsx("div",Object.assign({className:o.default("flex gap-x-3 max-w-[80%]",O?"pr-9":"pl-9","viewport"===v?O?"min-[767px]:pr-0":"min-[767px]:pl-0":O?"@[767px]/pickaxe-root:pr-0":"@[767px]/pickaxe-root:pl-0")},{children:e.jsxs("div",Object.assign({className:o.default(C.b2,"overflow-x-auto overflow-y-hidden px-4 py-3 scrollbar-thin scrollbar-track-white scrollbar-thumb-[#4A4A4B] flex flex-col gap-y-3",O?"text-right":"text-left"),style:{backgroundColor:b.secondary+"80",color:b.secondaryText,borderRadius:f.cornerRadius}},{children:[x.documentIds&&x.documentIds.length>0&&e.jsx("div",Object.assign({className:o.default("flex flex-col",O?"items-start":"items-end")},{children:x.documentIds.map((t=>e.jsx(s.Fragment,{children:t.startsWith("IMAGE-")?e.jsx("div",Object.assign({className:"max-w-[300px]"},{children:e.jsx("img",{style:{borderRadius:f.cornerRadius},className:"object-cover w-full h-full",src:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/documentinterrogation/${t.split("-")[2]}/${t.split("-")[1]}.${null==t?void 0:t.split("-")[2]}`,alt:""})})):e.jsx(r.default,{documentId:t})},t)))})),e.jsx(i.PickaxeMarkdown,Object.assign({theme:f.theme,accentColor:b.accent},O&&{rtl:!0},k&&{disableHtml:!0},w&&{disableJs:!0},y&&{disableCss:!0},{children:e.jsx(l.PickaxeMarkdownRenderer,{value:x.content})}))]}))}))})):e.jsx("div",{})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("react"),t=require("../../../../hooks/pickaxe/usePickaxeContext.js"),a=require("../../../../hooks/studio/useStyleFontSize.js"),i=require("../../common/PickaxeMarkdown/index.js"),l=require("../../common/PickaxeMarkdown/Renderer.js"),c=require("../../common/PickaxeIcon.js"),r=require("./Document.js"),n=require("../../common/PickaxeCopyButton.js"),o=require("../../../../common/cn.js");exports.default=({index:d,message:x,isIntroExpand:u})=>{var m,j;const{formId:p,pickaxe:h,styles:f,colors:b,misc:g,responsiveBy:v,disableHtml:k,disableJs:w,disableCss:y,isNewChat:N,isRtl:O}=t.usePickaxeContext(),C=a.useStyleFontSize(),P=null!==(m=null==h?void 0:h.chaticon)&&void 0!==m?m:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/chaticons/${p}.png`;return"assistant"===x.role?e.jsx("div",Object.assign({className:o.default("flex w-full",O?"justify-end":"justify-start")},{children:e.jsx("div",Object.assign({className:o.default("flex flex-col",0===d&&N&&"viewport"===v&&"min-[767px]:max-w-[80%]",0===d&&N&&"container"===v&&"@[767px]/pickaxe-root:max-w-[80%]")},{children:e.jsxs("div",Object.assign({className:o.default("flex gap-x-3",O&&"flex-row-reverse")},{children:[g.isChatImage&&"NONE"!==P&&e.jsx(c.default,{src:P,alt:"Assistant",width:24,height:24,className:"my-3 h-6 w-6",textColor:b.text}),e.jsxs("div",Object.assign({className:o.default("flex flex-col",O?"items-end":"items-start")},{children:[e.jsx("div",Object.assign({className:o.default(C.b2,"chat-message pt-3",O?"text-right":"text-left")},{children:e.jsx(i.PickaxeMarkdown,Object.assign({theme:f.theme,accentColor:b.accent,actions:!0},O&&{rtl:!0},k&&{disableHtml:!0},w&&{disableJs:!0},y&&{disableCss:!0},{children:e.jsx(l.PickaxeMarkdownRenderer,Object.assign({value:x.content},0===d&&N&&x.content.length>470&&3===(null!==(j=null==h?void 0:h.icebreakers)&&void 0!==j?j:[]).length&&!x.content.includes("https://utils.pickaxe.co/api/fn")&&{maxLines:u?void 0:12}))}))})),e.jsx("div",Object.assign({className:"mt-4 flex gap-3"},{children:e.jsx(n.default,{color:b.accent,text:x.content})}))]}))]}))}))})):"user"===x.role?e.jsx("div",Object.assign({className:o.default("flex w-full",O?"justify-start":"justify-end")},{children:e.jsx("div",Object.assign({className:o.default("flex gap-x-3 max-w-[80%]",O?"pr-9":"pl-9","viewport"===v?O?"min-[767px]:pr-0":"min-[767px]:pl-0":O?"@[767px]/pickaxe-root:pr-0":"@[767px]/pickaxe-root:pl-0")},{children:e.jsxs("div",Object.assign({className:o.default(C.b2,"overflow-x-auto overflow-y-hidden px-4 py-3 scrollbar-thin scrollbar-track-white scrollbar-thumb-[#4A4A4B] flex flex-col gap-y-3",O?"text-right":"text-left"),style:{backgroundColor:b.secondary+"80",color:b.secondaryText,borderRadius:f.cornerRadius}},{children:[x.documentIds&&x.documentIds.length>0&&e.jsx("div",Object.assign({className:o.default("flex flex-col gap-y-2",O?"items-start":"items-end")},{children:x.documentIds.map((t=>e.jsx(s.Fragment,{children:t.startsWith("IMAGE-")?e.jsx("div",Object.assign({className:"max-w-[300px]"},{children:e.jsx("img",{style:{borderRadius:f.cornerRadius},className:"object-cover w-full h-full",src:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/documentinterrogation/${t.split("-")[2]}/${t.split("-")[1]}.${null==t?void 0:t.split("-")[2]}`,alt:""})})):e.jsx(r.default,{documentId:t})},t)))})),e.jsx(i.PickaxeMarkdown,Object.assign({theme:f.theme,accentColor:b.accent},O&&{rtl:!0},k&&{disableHtml:!0},w&&{disableJs:!0},y&&{disableCss:!0},{children:e.jsx(l.PickaxeMarkdownRenderer,{value:x.content})}))]}))}))})):e.jsx("div",{})};
@@ -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"),r=require("../../../hooks/pickaxe/usePickaxeContext.js"),o=require("../../../hooks/pickaxe/useResponseContext.js"),l=require("../../../hooks/studio/useStyleInput.js"),a=require("../../../hooks/studio/useStyleFontSize.js"),i=require("../../../hooks/pickaxe/useConversation.js"),n=require("../../../hooks/pickaxe/useSubmit.js"),d=require("../Addons/Document/hooks/useDocument.js"),c=require("../Addons/Scroll/hooks/useScroll.js"),u=require("../../../hooks/core/useHover.js"),m=require("../../../common/utils.js"),f=require("../../../common/documents.js"),x=require("eventsource-parser"),p=require("../../Icons/attach-vertical.svg.js"),h=require("../../Icons/spinner-lines.svg.js"),g=require("../../Icons/file.svg.js"),b=require("../../Icons/x.svg.js"),j=require("../../Icons/arrow-right.svg.js"),v=require("../Addons/IceBreaker/index.js"),y=require("../../Core/Textarea.js"),k=require("../../../common/error.js"),w=require("../../../common/cn.js");exports.default=({isFocused:I,onFocus:N,onBlur:O})=>{var C;const{formId:q,chatId:S,userId:R,studioUserId:T,embedUserId:_,deploymentId:A,deploymentType:F,pickaxe:B,styles:D,colors:U,responsiveBy:H,isNewChat:E,isRtl:z,setIsNewChat:M,setIsShowIceBreaker:P,onGenerateComplete:L}=r.usePickaxeContext(),{messages:$,status:G,limits:J,isGenerating:K,setMessages:W,setStatus:Q,setLimitData:V,setError:X}=o.useResponseContext(),{documents:Y,isUploading:Z,isImageUploadAllowed:ee,setDocuments:se,onFileUpload:te}=d.useDocument(),{scrollStartSession:re,scrollEndSession:oe,scrollToBottom:le}=c.useScroll({auto:!0}),ae=i.useConversation(),ie=n.useSubmit(),[ne,de]=t.useState(""),ce=t.useRef(null),ue=u.useHover(),{isHover:me}=ue,fe=e.__rest(ue,["isHover"]),xe=u.useHover(),{isHover:pe}=xe,he=e.__rest(xe,["isHover"]),ge=a.useStyleFontSize(),be=l.useStyleInput(),je=t.useMemo((()=>{var e,s,t;return!!E&&(!!B&&(!ae.isLoading&&(!((null!==(s=null===(e=ae.data)||void 0===e?void 0:e.messages.length)&&void 0!==s?s:0)>1)&&!!(null===(t=B.icebreakers)||void 0===t?void 0:t.length))))}),[B,E,ae.data,ae.isLoading]),ve=s=>e.__awaiter(void 0,void 0,void 0,(function*(){try{if("idle"!==G||Z)return;const e=null!=s?s:ne;if(!e)return;X(""),V(null),de(""),M(!1),Q("fetching"),re(),le();const t=Y.filter((e=>"finished"===e.status&&!e.isInsertedAsRaw)),r=t.length?t[t.length-1].documentId:"",o="enduserupload"===(null==B?void 0:B.documentuploadtype)&&r,l=[...Array.from($),Object.assign({id:$.length+1,role:"user",content:e},o&&{documentIds:[r]})];W(l),le(),o&&se([]);const a=(yield ie.mutateAsync(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({formId:q,responseId:S,value:e},o&&{documentId:r}),R&&{userId:R}),T&&{studioUserId:T}),_&&{embedUserId:_}),A&&{deploymentId:A}))).body;if(!a)throw new Error("Streaming error");const i=l.length,n=new TextDecoder,d=a.getReader();let c="",u=!0,m=!1;const f=x.createParser({onEvent:e=>{if("delta"===e.event){const s=JSON.parse(e.data).token.replace(/\u200B/g,"");c+=s,W([...l.slice(0,i),{id:$.length+1,role:"assistant",content:c}])}else if("error"===e.event){const s=JSON.parse(e.data);X(s.error||"Something went wrong, please try again.")}else"stop"===e.event&&(u=!1)}});for(;u;){const{value:e,done:s}=yield d.read();if(s){u=!1;break}const t=n.decode(e);t&&(m||(Q("streaming"),m=!0),f.feed(t))}null==L||L(S)}catch(e){let s=k.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(J).find((([e])=>s.includes(e)));t?V(t[1]):X(s)}finally{le(),Q("idle"),oe()}}));return t.useEffect((()=>{P(je)}),[je]),s.jsx("div",Object.assign({className:w.default("w-full flex flex-col items-center absolute bottom-0 left-0 z-1",!("chat-input"===F&&E)&&"px-4 pb-4"),dir:z?"rtl":"ltr"},{children:s.jsxs("div",Object.assign({className:"relative flex flex-col max-w-[800px] w-full"},{children:[!("chat-input"===F&&E)&&s.jsx("div",Object.assign({className:w.default("absolute bottom-full",z?"left-0":"right-0")},{children:s.jsx("div",Object.assign({className:w.default("flex flex-col gap-2 pb-4 px-2",z?"justify-start":"justify-end","viewport"===H?z?"min-[767px]:items-start":"min-[767px]:items-end":z?"@[767px]/pickaxe-root:items-start":"@[767px]/pickaxe-root:items-end")},{children:je&&!I&&s.jsx(v.default,{data:(null==B?void 0:B.icebreakers)||[],onSend:ve})}))})),s.jsxs("div",Object.assign({className:w.default("flex flex-col gap-y-2 px-4 py-3","block"===D.formFieldStyle&&"shadow"),style:be},{children:["idle"===G&&Y.length>0&&s.jsx("div",Object.assign({className:w.default("grid grid-cols-1","viewport"===H?"min-[765px]:grid-cols-2":"@[767px]/pickaxe-root:grid-cols-2")},{children:Y.map((e=>{var r,o,l;return s.jsx(t.Fragment,{children:"document"===e.type?s.jsxs("div",Object.assign({className:w.default("relative gap-x-[10px] flex items-center px-2 h-[56px] border",z&&"flex-row-reverse"),style:{borderRadius:be.borderRadius,borderColor:U.secondaryText+"50"}},{children:[s.jsx("div",Object.assign({className:"w-10 h-10 flex items-center justify-center shrink-0",style:{backgroundColor:U.accent,borderRadius:be.borderRadius}},{children:Z?s.jsx(h.default,{className:"w-5 h-5 animate-spin",style:{color:U.accentText}}):s.jsx(g.default,{className:"w-5 h-5",style:{color:U.accentText}})})),s.jsxs("div",Object.assign({className:w.default("flex flex-col justify-center truncate",z?"text-right items-end":"text-left items-start")},{children:[s.jsx("p",Object.assign({className:(w.default(ge.b3),"font-medium truncate")},{children:e.name})),s.jsx("p",Object.assign({className:w.default(ge.b4,"opacity-80 truncate")},{children:m.formatBytes(e.size)}))]})),s.jsx("button",Object.assign({type:"button",className:w.default("absolute w-5 h-5 rounded-full -top-2 flex items-center justify-center border outline-none disabled:cursor-default",z?"-left-2 right-auto":"-right-2 left-auto"),style:{backgroundColor:U.accent,borderColor:be.backgroundColor},disabled:Z||"idle"!==G,onClick:()=>se([])},{children:s.jsx(b.default,{className:"w-4 h-4",style:{color:U.accentText}})}))]})):"image"===e.type?s.jsxs("div",Object.assign({className:"relative h-[56px] w-[56px] bg-stone-100",style:{borderRadius:be.borderRadius}},{children:["finished"===e.status?s.jsx("img",{style:{borderRadius:be.borderRadius},className:"object-cover w-full h-full",src:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/documentinterrogation/${null===(r=e.documentId)||void 0===r?void 0:r.split("-")[2]}/${null===(o=e.documentId)||void 0===o?void 0:o.split("-")[1]}.${null===(l=e.documentId)||void 0===l?void 0:l.split("-")[2]}`,alt:""}):s.jsx("div",{className:"h-full w-full animate-pulse",style:{borderRadius:be.borderRadius,backgroundColor:U.secondary}}),s.jsx("button",Object.assign({type:"button",className:w.default("absolute w-5 h-5 rounded-full -top-2 flex items-center justify-center border outline-none disabled:cursor-default",z?"-left-2 right-auto":"-right-2 left-auto"),style:{backgroundColor:U.accent,borderColor:be.backgroundColor},disabled:Z||"idle"!==G,onClick:()=>se([])},{children:s.jsx(b.default,{className:"w-4 h-4",style:{color:U.accentText}})}))]})):null},e.id)}))})),s.jsxs("div",Object.assign({className:w.default("flex items-end gap-x-2",z&&"flex-row-reverse")},{children:[s.jsx(y.default,Object.assign({className:w.default(ge.i1,"max-h-60 min-h-[27px] w-full border-transparent bg-transparent",!ne.length&&"max-h-6 overflow-hidden text-ellipsis whitespace-nowrap",z?"text-right":"text-left"),value:ne,placeholder:z?"بماذا تريد أن تتحدث؟":null!==(C=null==B?void 0:B.placeholdertext)&&void 0!==C?C:"What do you want to talk about?",onChange:e=>de(e),onKeyDown:e=>{"Enter"===e.key&&(e.shiftKey||(e.preventDefault(),Z||"idle"!==G||ve()))}},N&&{onFocus:N},O&&{onBlur:O},{dir:z?"rtl":"ltr"})),s.jsxs("div",Object.assign({className:w.default("flex items-center gap-x-2")},{children:["enduserupload"===(null==B?void 0:B.documentuploadtype)&&s.jsxs("button",Object.assign({className:"outline-none disabled:cursor-default w-8 h-8 flex items-center justify-center rounded-full transition-colors duration-200 ease-in-out",style:{backgroundColor:pe?U.accent+"10":void 0},disabled:Z||"idle"!==G,onClick:()=>{var e;return null===(e=ce.current)||void 0===e?void 0:e.click()}},he,{children:[s.jsx("input",{id:"file-upload",ref:ce,type:"file",accept:[...f.allowedFileMimeTypes,...ee?f.allowedImageMimeTypes:[]].join(", "),multiple:!1,hidden:!0,className:"hidden",onChange:s=>e.__awaiter(void 0,void 0,void 0,(function*(){M(!1),yield te(Array.from(s.target.files||[])),s.target.value=""}))}),s.jsx(p.default,{className:"h-6 w-6 shrink-0 duration-200 transition-colors ease-in-out",style:{color:pe?U.accent:U.accent+"80"}})]})),s.jsx("button",Object.assign({className:"outline-none disabled:cursor-default w-8 h-8 flex items-center justify-center rounded-full duration-200 transition-colors ease-in-out",style:{backgroundColor:(me||ne.length||Y.length&&Y.every((e=>"finished"===e.status)))&&!K?U.accent:U.accent+"10"},disabled:Z||"idle"!==G,onClick:()=>ve()},fe,{children:s.jsx(j.default,{className:w.default("h-6 w-6 shrink-0 duration-200 transition-colors ease-in-out",z&&"transform scale-x-[-1]"),style:{color:(me||ne.length||Y.length&&Y.every((e=>"finished"===e.status)))&&!K?U.accentText:U.accent+"80"}})}))]}))]}))]}))]}))}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../_virtual/_tslib.js"),s=require("react/jsx-runtime"),t=require("react"),r=require("../../../hooks/pickaxe/usePickaxeContext.js"),o=require("../../../hooks/pickaxe/useResponseContext.js"),l=require("../../../hooks/studio/useStyleInput.js"),a=require("../../../hooks/studio/useStyleFontSize.js"),i=require("../../../hooks/pickaxe/useConversation.js"),n=require("../../../hooks/pickaxe/useSubmit.js"),d=require("../Addons/Document/hooks/useDocument.js"),c=require("../Addons/Scroll/hooks/useScroll.js"),u=require("../../../hooks/core/useHover.js"),m=require("../../../common/utils.js"),f=require("../../../common/documents.js"),x=require("eventsource-parser"),p=require("../../Icons/attach-vertical.svg.js"),h=require("../../Icons/spinner-lines.svg.js"),g=require("../../Icons/file.svg.js"),j=require("../../Icons/x.svg.js"),b=require("../../Icons/arrow-right.svg.js"),v=require("../Addons/IceBreaker/index.js"),y=require("../../Core/Textarea.js"),k=require("../../Core/ErrorAlert.js"),w=require("../../../common/error.js"),N=require("../../../common/cn.js");exports.default=({isFocused:I,onFocus:O,onBlur:C})=>{var q;const{formId:S,chatId:R,userId:T,studioUserId:_,embedUserId:A,deploymentId:D,deploymentType:B,pickaxe:E,styles:F,colors:U,responsiveBy:H,isNewChat:z,isRtl:M,setIsNewChat:P,setIsShowIceBreaker:L,onGenerateComplete:$}=r.usePickaxeContext(),{messages:G,status:J,limits:K,isGenerating:W,setMessages:Q,setStatus:V,setLimitData:X,setError:Y}=o.useResponseContext(),{documents:Z,isUploading:ee,isImageUploadAllowed:se,documentError:te,onFileUpload:re,setDocuments:oe,setDocumentError:le,removeDocument:ae}=d.useDocument(),{scrollStartSession:ie,scrollEndSession:ne,scrollToBottom:de}=c.useScroll({auto:!0}),ce=i.useConversation(),ue=n.useSubmit(),[me,fe]=t.useState(""),xe=t.useRef(null),pe=u.useHover(),{isHover:he}=pe,ge=e.__rest(pe,["isHover"]),je=u.useHover(),{isHover:be}=je,ve=e.__rest(je,["isHover"]),ye=a.useStyleFontSize(),ke=l.useStyleInput(),we=t.useMemo((()=>{var e,s,t;return!!z&&(!!E&&(!ce.isLoading&&(!((null!==(s=null===(e=ce.data)||void 0===e?void 0:e.messages.length)&&void 0!==s?s:0)>1)&&!!(null===(t=E.icebreakers)||void 0===t?void 0:t.length))))}),[E,z,ce.data,ce.isLoading]),Ne=s=>e.__awaiter(void 0,void 0,void 0,(function*(){try{if("idle"!==J||ee)return;const e=null!=s?s:me;if(!e)return;Y(""),le(""),X(null),fe(""),P(!1),V("fetching"),ie(),de();const t=Z.filter((e=>"finished"===e.status&&!e.isInsertedAsRaw)).map((e=>e.documentId)).filter(Boolean),r="enduserupload"===(null==E?void 0:E.documentuploadtype)&&t.length>0,o=[...Array.from(G),Object.assign({id:G.length+1,role:"user",content:e},r&&{documentIds:t})];Q(o),de(),r&&oe([]);const l=(yield ue.mutateAsync(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({formId:S,responseId:R,value:e},r&&{documentIds:t}),T&&{userId:T}),_&&{studioUserId:_}),A&&{embedUserId:A}),D&&{deploymentId:D}))).body;if(!l)throw new Error("Streaming error");const a=o.length,i=new TextDecoder,n=l.getReader();let d="",c=!0,u=!1;const m=x.createParser({onEvent:e=>{if("delta"===e.event){const s=JSON.parse(e.data).token.replace(/\u200B/g,"");d+=s,Q([...o.slice(0,a),{id:G.length+1,role:"assistant",content:d}])}else if("error"===e.event){const s=JSON.parse(e.data);Y(s.error||"Something went wrong, please try again.")}else"stop"===e.event&&(c=!1)}});for(;c;){const{value:e,done:s}=yield n.read();if(s){c=!1;break}const t=i.decode(e);t&&(u||(V("streaming"),u=!0),m.feed(t))}null==$||$(R)}catch(e){let s=w.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(K).find((([e])=>s.includes(e)));t?X(t[1]):Y(s)}finally{de(),V("idle"),ne()}}));return t.useEffect((()=>{L(we)}),[we]),s.jsx("div",Object.assign({className:N.default("w-full flex flex-col items-center absolute bottom-0 left-0 z-1",!("chat-input"===B&&z)&&"px-4 pb-4"),dir:M?"rtl":"ltr"},{children:s.jsxs("div",Object.assign({className:"relative flex flex-col max-w-[800px] w-full"},{children:[!("chat-input"===B&&z)&&s.jsx("div",Object.assign({className:N.default("absolute bottom-full",M?"left-0":"right-0")},{children:s.jsx("div",Object.assign({className:N.default("flex flex-col gap-2 pb-4 px-2",M?"justify-start":"justify-end","viewport"===H?M?"min-[767px]:items-start":"min-[767px]:items-end":M?"@[767px]/pickaxe-root:items-start":"@[767px]/pickaxe-root:items-end")},{children:we&&!I&&s.jsx(v.default,{data:(null==E?void 0:E.icebreakers)||[],onSend:Ne})}))})),s.jsxs("div",Object.assign({className:N.default("flex flex-col gap-y-2 px-4 py-3","block"===F.formFieldStyle&&"shadow"),style:ke},{children:["idle"===J&&Z.length>0&&s.jsx("div",Object.assign({className:N.default("grid grid-cols-1","viewport"===H?"min-[765px]:grid-cols-2":"@[767px]/pickaxe-root:grid-cols-2")},{children:s.jsx("div",Object.assign({className:"flex flex-row gap-x-2"},{children:Z.filter((e=>"failed"!==e.status)).map((e=>{var r,o,l;return s.jsx(t.Fragment,{children:"document"===e.type?s.jsxs("div",Object.assign({className:N.default("relative gap-x-[10px] flex items-center px-2 h-[56px] border",M&&"flex-row-reverse"),style:{borderRadius:ke.borderRadius,borderColor:U.secondaryText+"50"}},{children:[s.jsx("div",Object.assign({className:"w-10 h-10 flex items-center justify-center shrink-0",style:{backgroundColor:U.accent,borderRadius:ke.borderRadius}},{children:ee?s.jsx(h.default,{className:"w-5 h-5 animate-spin",style:{color:U.accentText}}):s.jsx(g.default,{className:"w-5 h-5",style:{color:U.accentText}})})),s.jsxs("div",Object.assign({className:N.default("flex flex-col justify-center truncate",M?"text-right items-end":"text-left items-start")},{children:[s.jsx("p",Object.assign({className:(N.default(ye.b3),"font-medium truncate")},{children:e.name})),s.jsx("p",Object.assign({className:N.default(ye.b4,"opacity-80 truncate")},{children:m.formatBytes(e.size)}))]})),s.jsx("button",Object.assign({type:"button",className:N.default("absolute w-5 h-5 rounded-full -top-2 flex items-center justify-center border outline-none disabled:cursor-default",M?"-left-2 right-auto":"-right-2 left-auto"),style:{backgroundColor:U.accent,borderColor:ke.backgroundColor},disabled:ee||"idle"!==J,onClick:()=>ae(e.id)},{children:s.jsx(j.default,{className:"w-4 h-4",style:{color:U.accentText}})}))]})):"image"===e.type?s.jsxs("div",Object.assign({className:"relative h-[56px] w-[56px] bg-stone-100",style:{borderRadius:ke.borderRadius}},{children:["finished"===e.status?s.jsx("img",{style:{borderRadius:ke.borderRadius},className:"object-cover w-full h-full",src:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/documentinterrogation/${null===(r=e.documentId)||void 0===r?void 0:r.split("-")[2]}/${null===(o=e.documentId)||void 0===o?void 0:o.split("-")[1]}.${null===(l=e.documentId)||void 0===l?void 0:l.split("-")[2]}`,alt:""}):s.jsx("div",{className:"h-full w-full animate-pulse",style:{borderRadius:ke.borderRadius,backgroundColor:U.secondary}}),s.jsx("button",Object.assign({type:"button",className:N.default("absolute w-5 h-5 rounded-full -top-2 flex items-center justify-center border outline-none disabled:cursor-default",M?"-left-2 right-auto":"-right-2 left-auto"),style:{backgroundColor:U.accent,borderColor:ke.backgroundColor},disabled:ee||"idle"!==J,onClick:()=>ae(e.id)},{children:s.jsx(j.default,{className:"w-4 h-4",style:{color:U.accentText}})}))]})):null},e.id)}))}))})),s.jsxs("div",Object.assign({className:N.default("flex items-end gap-x-2",M&&"flex-row-reverse")},{children:[s.jsx(y.default,Object.assign({className:N.default(ye.i1,"max-h-60 min-h-[27px] w-full border-transparent bg-transparent",!me.length&&"max-h-6 overflow-hidden text-ellipsis whitespace-nowrap",M?"text-right":"text-left"),value:me,placeholder:M?"بماذا تريد أن تتحدث؟":null!==(q=null==E?void 0:E.placeholdertext)&&void 0!==q?q:"What do you want to talk about?",onChange:e=>fe(e),onKeyDown:e=>{"Enter"===e.key&&(e.shiftKey||(e.preventDefault(),ee||"idle"!==J||Ne()))}},O&&{onFocus:O},C&&{onBlur:C},{dir:M?"rtl":"ltr"})),s.jsxs("div",Object.assign({className:N.default("flex items-center gap-x-2")},{children:["enduserupload"===(null==E?void 0:E.documentuploadtype)&&s.jsxs("button",Object.assign({className:"outline-none disabled:cursor-default w-8 h-8 flex items-center justify-center rounded-full transition-colors duration-200 ease-in-out",style:{backgroundColor:be?U.accent+"10":void 0},disabled:ee||"idle"!==J,onClick:()=>{var e;return null===(e=xe.current)||void 0===e?void 0:e.click()}},ve,{children:[s.jsx("input",{id:"file-upload",ref:xe,type:"file",accept:[...f.allowedFileMimeTypes,...se?f.allowedImageMimeTypes:[]].join(", "),multiple:!0,hidden:!0,className:"hidden",onChange:s=>e.__awaiter(void 0,void 0,void 0,(function*(){P(!1),yield re(Array.from(s.target.files||[])),s.target.value=""}))}),s.jsx(p.default,{className:"h-6 w-6 shrink-0 duration-200 transition-colors ease-in-out",style:{color:be?U.accent:U.accent+"80"}})]})),s.jsx("button",Object.assign({className:"outline-none disabled:cursor-default w-8 h-8 flex items-center justify-center rounded-full duration-200 transition-colors ease-in-out",style:{backgroundColor:(he||me.length||Z.length&&Z.every((e=>"finished"===e.status)))&&!W?U.accent:U.accent+"10"},disabled:ee||"idle"!==J,onClick:()=>Ne()},ge,{children:s.jsx(b.default,{className:N.default("h-6 w-6 shrink-0 duration-200 transition-colors ease-in-out",M&&"transform scale-x-[-1]"),style:{color:(he||me.length||Z.length&&Z.every((e=>"finished"===e.status)))&&!W?U.accentText:U.accent+"80"}})}))]}))]}))]})),te&&s.jsx(k.default,{error:te,className:"mt-3"})]}))}))};
@@ -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"),l=require("../../../../hooks/pickaxe/usePickaxeContext.js"),a=require("../../../../hooks/studio/useStyleInput.js"),r=require("../../../../hooks/studio/useStyleFontSize.js"),o=require("../../Addons/Document/hooks/useDocument.js"),i=require("../../../../hooks/core/useHover.js"),n=require("../../../../common/documents.js"),c=require("../../../../common/utils.js"),d=require("../../../Icons/attach-vertical.svg.js"),u=require("../../../Icons/check.svg.js"),b=require("../../../Icons/spinner-lines.svg.js"),m=require("../../../Icons/file.svg.js"),x=require("../../../Icons/x.svg.js"),j=require("../../../Icons/link.svg.js"),f=require("../../../Core/ErrorAlert.js"),p=require("../../../../common/cn.js");exports.default=({field:h,update:g})=>{var y;const v=r.useStyleFontSize(),{colors:w,styles:N,translations:k,responsiveBy:O}=l.usePickaxeContext(),C=i.useHover(),{isHover:q}=C,I=e.__rest(C,["isHover"]),{documents:R,documentError:T,websiteLink:_,isUploading:D,isImageUploadAllowed:F,setDocuments:S,setDocumentError:A,setWebsiteLink:U,onFileUpload:z,onWebsiteUpload:E}=o.useDocument({onQuestionChange:e=>{g(Object.assign(Object.assign({},h),e))}}),[H,P]=t.useState(!1),B=t.useRef(null),L=a.useStyleInput();return s.jsxs("div",Object.assign({className:"flex flex-col gap-y-4"},{children:[s.jsxs("div",Object.assign({className:"flex flex-col gap-y-2"},{children:[s.jsxs("div",Object.assign({className:"flex items-center gap-1"},{children:[s.jsx("p",Object.assign({className:p.default(v.b3,"font-semibold opacity-70")},{children:h.main})),h.isRequired&&s.jsx("span",Object.assign({className:"select-none font-semibold",style:{color:w.error}},{children:"*"}))]})),s.jsxs("div",Object.assign({className:"flex flex-col gap-y-2"},{children:[s.jsx("input",{ref:B,type:"file",accept:[...n.allowedFileMimeTypes,...F?n.allowedImageMimeTypes:[]].join(", "),id:h.id,hidden:!0,multiple:!1,className:"hidden",onChange:s=>e.__awaiter(void 0,void 0,void 0,(function*(){yield z(Array.from(s.target.files||[])),s.target.value=""})),disabled:D}),s.jsxs("div",Object.assign({className:p.default("flex items-center justify-between rounded-sm border border-transparent bg-white py-3 pl-4 pr-3 duration-300 ease-in-out transition-all",H&&"block"===N.formFieldStyle&&"shadow","block"===N.formFieldStyle&&"shadow hover:shadow-none"),style:L},{children:[s.jsx("input",{type:"text",value:_,className:p.default(v.i1,"w-full outline-none ring-0 bg-transparent placeholder:text-inherit placeholder:opacity-50"),placeholder:null!==(y=null==k?void 0:k["form-doc-placeholder"])&&void 0!==y?y:"Paste a website/video link or drag a file",onChange:e=>U(e.target.value),onDrop:s=>e.__awaiter(void 0,void 0,void 0,(function*(){s.preventDefault(),yield z(Array.from(s.dataTransfer.files||[]))})),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),E(_))},onFocus:()=>P(!0),onBlur:()=>P(!1)}),s.jsx("div",Object.assign({className:"flex items-center gap-3 pl-4"},{children:_.length>0?s.jsxs(s.Fragment,{children:[s.jsx("button",Object.assign({className:"outline-none disabled:cursor-wait disabled:opacity-80",disabled:D,onClick:()=>E(_)},{children:s.jsx(u.default,{className:"h-5 w-5 shrink-0",style:{color:w.accent}})})),s.jsx("button",Object.assign({className:"outline-none disabled:cursor-wait disabled:opacity-80",disabled:D,onClick:()=>{U(""),A("")}},{children:s.jsx(x.default,{className:"h-6 w-6 shrink-0",style:{color:w.accent}})}))]}):s.jsx("button",Object.assign({className:"outline-none disabled:cursor-default w-8 h-8 flex items-center justify-center rounded-full transition-colors duration-200 ease-in-out",disabled:D,onClick:()=>{var e;null===(e=B.current)||void 0===e||e.click()},style:{backgroundColor:q?w.accent+"10":void 0}},I,{children:s.jsx(d.default,{className:"h-6 w-6 shrink-0",style:{color:q?w.accent:w.accent+"80"}})}))}))]}))]}))]})),R.length>0&&s.jsx("div",Object.assign({className:p.default("flex gap-4","viewport"===O?"min-[765px]:flex-col":"@[767px]/pickaxe-root:flex-col")},{children:R.map((e=>{var l,a,r;return s.jsx(t.Fragment,{children:"document"===e.type?s.jsxs("div",Object.assign({className:"relative w-full max-w-[350px] gap-x-[10px] flex items-center px-2 h-[56px] border",style:L},{children:[s.jsx("div",Object.assign({className:"w-10 h-10 flex items-center justify-center shrink-0",style:{backgroundColor:w.accent,borderRadius:L.borderRadius}},{children:D?s.jsx(b.default,{className:"w-5 h-5 animate-spin",style:{color:w.accentText}}):s.jsx(m.default,{className:"w-5 h-5",style:{color:w.accentText}})})),s.jsxs("div",Object.assign({className:"flex flex-col justify-center truncate"},{children:[s.jsx("p",Object.assign({className:(p.default(v.b3),"font-medium truncate")},{children:e.name})),s.jsx("p",Object.assign({className:p.default(v.b4,"opacity-80 truncate")},{children:c.formatBytes(e.size)}))]})),s.jsx("button",Object.assign({type:"button",disabled:D,onClick:()=>S([]),className:"absolute w-5 h-5 rounded-full -right-2 -top-2 flex items-center justify-center border outline-none disabled:cursor-default",style:{backgroundColor:w.accent,borderColor:L.backgroundColor}},{children:s.jsx(x.default,{className:"w-4 h-4",style:{color:w.accentText}})}))]})):"image"===e.type?s.jsxs("div",Object.assign({className:"relative h-[56px] w-[56px] bg-stone-100",style:{borderRadius:L.borderRadius}},{children:["finished"===e.status?s.jsx("img",{style:{borderRadius:L.borderRadius},className:"object-cover w-full h-full",src:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/documentinterrogation/${null===(l=e.documentId)||void 0===l?void 0:l.split("-")[2]}/${null===(a=e.documentId)||void 0===a?void 0:a.split("-")[1]}.${null===(r=e.documentId)||void 0===r?void 0:r.split("-")[2]}`,alt:""}):s.jsx("div",{className:"h-full w-full animate-pulse",style:{borderRadius:L.borderRadius,backgroundColor:w.secondary}}),s.jsx("button",Object.assign({type:"button",disabled:D,onClick:()=>S([]),className:"absolute w-5 h-5 rounded-full -right-2 -top-2 flex items-center justify-center border outline-none disabled:cursor-default",style:{backgroundColor:w.accent,borderColor:L.backgroundColor}},{children:s.jsx(x.default,{className:"w-4 h-4",style:{color:w.accentText}})}))]})):"website"===e.type?s.jsxs("div",Object.assign({className:"relative w-full max-w-[350px] gap-x-[10px] flex items-center px-2 h-[56px] border",style:L},{children:[s.jsx("div",Object.assign({className:"w-10 h-10 flex items-center justify-center shrink-0",style:{backgroundColor:w.accent,borderRadius:L.borderRadius}},{children:D?s.jsx(b.default,{className:"w-5 h-5 animate-spin",style:{color:w.accentText}}):s.jsx(j.default,{className:"w-5 h-5",style:{color:w.accentText}})})),s.jsxs("div",Object.assign({className:"flex flex-col justify-center truncate"},{children:[s.jsx("p",Object.assign({className:(p.default(v.b3),"font-medium truncate")},{children:new URL(e.name).hostname})),s.jsx("p",Object.assign({className:p.default(v.b4,"opacity-80 truncate")},{children:(null==k?void 0:k.website)||"Website"}))]})),s.jsx("button",Object.assign({type:"button",disabled:D,onClick:()=>S([]),className:"absolute w-5 h-5 rounded-full -right-2 -top-2 flex items-center justify-center border outline-none disabled:cursor-default",style:{backgroundColor:w.accent,borderColor:L.backgroundColor}},{children:s.jsx(x.default,{className:"w-4 h-4",style:{color:w.accentText}})}))]})):null},e.id)}))})),T&&s.jsx(f.default,{error:T,className:"mt-3"})]}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../_virtual/_tslib.js"),s=require("react/jsx-runtime"),t=require("react"),l=require("../../../../hooks/pickaxe/usePickaxeContext.js"),a=require("../../../../hooks/studio/useStyleInput.js"),r=require("../../../../hooks/studio/useStyleFontSize.js"),i=require("../../Addons/Document/hooks/useDocument.js"),o=require("../../../../hooks/core/useHover.js"),n=require("../../../../common/documents.js"),c=require("../../../../common/utils.js"),d=require("../../../Icons/attach-vertical.svg.js"),u=require("../../../Icons/check.svg.js"),m=require("../../../Icons/spinner-lines.svg.js"),b=require("../../../Icons/file.svg.js"),x=require("../../../Icons/x.svg.js"),j=require("../../../Icons/link.svg.js"),f=require("../../../Core/ErrorAlert.js"),p=require("../../../../common/cn.js");exports.default=({field:h,update:g})=>{var y;const v=r.useStyleFontSize(),{colors:w,styles:N,translations:k,responsiveBy:O}=l.usePickaxeContext(),C=o.useHover(),{isHover:q}=C,I=e.__rest(C,["isHover"]),{documents:R,documentError:T,websiteLink:_,isUploading:D,isImageUploadAllowed:F,removeDocument:S,setDocumentError:A,setWebsiteLink:U,onFileUpload:z,onWebsiteUpload:E}=i.useDocument({onQuestionChange:e=>{g(Object.assign(Object.assign({},h),e))}}),[H,P]=t.useState(!1),B=t.useRef(null),L=a.useStyleInput();return s.jsxs("div",Object.assign({className:"flex flex-col gap-y-4"},{children:[s.jsxs("div",Object.assign({className:"flex flex-col gap-y-2"},{children:[s.jsxs("div",Object.assign({className:"flex items-center gap-1"},{children:[s.jsx("p",Object.assign({className:p.default(v.b3,"font-semibold opacity-70")},{children:h.main})),h.isRequired&&s.jsx("span",Object.assign({className:"select-none font-semibold",style:{color:w.error}},{children:"*"}))]})),s.jsxs("div",Object.assign({className:"flex flex-col gap-y-2"},{children:[s.jsx("input",{ref:B,type:"file",accept:[...n.allowedFileMimeTypes,...F?n.allowedImageMimeTypes:[]].join(", "),id:h.id,hidden:!0,multiple:!0,className:"hidden",onChange:s=>e.__awaiter(void 0,void 0,void 0,(function*(){yield z(Array.from(s.target.files||[])),s.target.value=""})),disabled:D}),s.jsxs("div",Object.assign({className:p.default("flex items-center justify-between rounded-sm border border-transparent bg-white py-3 pl-4 pr-3 duration-300 ease-in-out transition-all",H&&"block"===N.formFieldStyle&&"shadow","block"===N.formFieldStyle&&"shadow hover:shadow-none"),style:L},{children:[s.jsx("input",{type:"text",value:_,className:p.default(v.i1,"w-full outline-none ring-0 bg-transparent placeholder:text-inherit placeholder:opacity-50"),placeholder:null!==(y=null==k?void 0:k["form-doc-placeholder"])&&void 0!==y?y:"Paste a website/video link or drag a file",onChange:e=>U(e.target.value),onDrop:s=>e.__awaiter(void 0,void 0,void 0,(function*(){s.preventDefault(),yield z(Array.from(s.dataTransfer.files||[]))})),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),E(_))},onFocus:()=>P(!0),onBlur:()=>P(!1)}),s.jsx("div",Object.assign({className:"flex items-center gap-3 pl-4"},{children:_.length>0?s.jsxs(s.Fragment,{children:[s.jsx("button",Object.assign({className:"outline-none disabled:cursor-wait disabled:opacity-80",disabled:D,onClick:()=>E(_)},{children:s.jsx(u.default,{className:"h-5 w-5 shrink-0",style:{color:w.accent}})})),s.jsx("button",Object.assign({className:"outline-none disabled:cursor-wait disabled:opacity-80",disabled:D,onClick:()=>{U(""),A("")}},{children:s.jsx(x.default,{className:"h-6 w-6 shrink-0",style:{color:w.accent}})}))]}):s.jsx("button",Object.assign({className:"outline-none disabled:cursor-default w-8 h-8 flex items-center justify-center rounded-full transition-colors duration-200 ease-in-out",disabled:D,onClick:()=>{var e;null===(e=B.current)||void 0===e||e.click()},style:{backgroundColor:q?w.accent+"10":void 0}},I,{children:s.jsx(d.default,{className:"h-6 w-6 shrink-0",style:{color:q?w.accent:w.accent+"80"}})}))}))]}))]}))]})),R.length>0&&s.jsx("div",Object.assign({className:p.default("flex gap-4","viewport"===O?"min-[765px]:flex-col":"@[767px]/pickaxe-root:flex-col")},{children:s.jsx("div",Object.assign({className:"flex flex-row gap-x-2"},{children:R.filter((e=>"failed"!==e.status)).map((e=>{var l,a,r;return s.jsx(t.Fragment,{children:"document"===e.type?s.jsxs("div",Object.assign({className:"relative w-full max-w-[350px] gap-x-[10px] flex items-center px-2 h-[56px] border",style:L},{children:[s.jsx("div",Object.assign({className:"w-10 h-10 flex items-center justify-center shrink-0",style:{backgroundColor:w.accent,borderRadius:L.borderRadius}},{children:D?s.jsx(m.default,{className:"w-5 h-5 animate-spin",style:{color:w.accentText}}):s.jsx(b.default,{className:"w-5 h-5",style:{color:w.accentText}})})),s.jsxs("div",Object.assign({className:"flex flex-col justify-center truncate"},{children:[s.jsx("p",Object.assign({className:(p.default(v.b3),"font-medium truncate")},{children:e.name})),s.jsx("p",Object.assign({className:p.default(v.b4,"opacity-80 truncate")},{children:c.formatBytes(e.size)}))]})),s.jsx("button",Object.assign({type:"button",disabled:D,onClick:()=>S(e.id),className:"absolute w-5 h-5 rounded-full -right-2 -top-2 flex items-center justify-center border outline-none disabled:cursor-default",style:{backgroundColor:w.accent,borderColor:L.backgroundColor}},{children:s.jsx(x.default,{className:"w-4 h-4",style:{color:w.accentText}})}))]})):"image"===e.type?s.jsxs("div",Object.assign({className:"relative h-[56px] w-[56px] bg-stone-100",style:{borderRadius:L.borderRadius}},{children:["finished"===e.status?s.jsx("img",{style:{borderRadius:L.borderRadius},className:"object-cover w-full h-full",src:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/documentinterrogation/${null===(l=e.documentId)||void 0===l?void 0:l.split("-")[2]}/${null===(a=e.documentId)||void 0===a?void 0:a.split("-")[1]}.${null===(r=e.documentId)||void 0===r?void 0:r.split("-")[2]}`,alt:""}):s.jsx("div",{className:"h-full w-full animate-pulse",style:{borderRadius:L.borderRadius,backgroundColor:w.secondary}}),s.jsx("button",Object.assign({type:"button",disabled:D,onClick:()=>S(e.id),className:"absolute w-5 h-5 rounded-full -right-2 -top-2 flex items-center justify-center border outline-none disabled:cursor-default",style:{backgroundColor:w.accent,borderColor:L.backgroundColor}},{children:s.jsx(x.default,{className:"w-4 h-4",style:{color:w.accentText}})}))]})):"website"===e.type?s.jsxs("div",Object.assign({className:"relative w-full max-w-[350px] gap-x-[10px] flex items-center px-2 h-[56px] border",style:L},{children:[s.jsx("div",Object.assign({className:"w-10 h-10 flex items-center justify-center shrink-0",style:{backgroundColor:w.accent,borderRadius:L.borderRadius}},{children:D?s.jsx(m.default,{className:"w-5 h-5 animate-spin",style:{color:w.accentText}}):s.jsx(j.default,{className:"w-5 h-5",style:{color:w.accentText}})})),s.jsxs("div",Object.assign({className:"flex flex-col justify-center truncate"},{children:[s.jsx("p",Object.assign({className:(p.default(v.b3),"font-medium truncate")},{children:new URL(e.name).hostname})),s.jsx("p",Object.assign({className:p.default(v.b4,"opacity-80 truncate")},{children:(null==k?void 0:k.website)||"Website"}))]})),s.jsx("button",Object.assign({type:"button",disabled:D,onClick:()=>S(e.id),className:"absolute w-5 h-5 rounded-full -right-2 -top-2 flex items-center justify-center border outline-none disabled:cursor-default",style:{backgroundColor:w.accent,borderColor:L.backgroundColor}},{children:s.jsx(x.default,{className:"w-4 h-4",style:{color:w.accentText}})}))]})):null},e.id)}))}))})),T&&s.jsx(f.default,{error:T,className:"mt-3"})]}))};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../_virtual/_tslib.js"),s=require("react/jsx-runtime"),t=require("react"),n=require("../../../../hooks/pickaxe/usePickaxeContext.js"),o=require("../../../../hooks/pickaxe/useResponseContext.js"),i=require("../../../../hooks/pickaxe/useSubmit.js"),r=require("../../Addons/Document/hooks/useDocument.js"),l=require("../../Addons/Scroll/hooks/useScroll.js"),a=require("../../../../common/utils.js"),d=require("@nem035/gpt-3-encoder"),u=require("eventsource-parser"),c=require("../../common/PickaxeBranding.js"),m=require("../../common/PickaxeButton.js"),p=require("../../../../common/error.js"),g=require("../../../../common/cn.js");exports.default=({questions:f})=>{var x;const{formId:h,userId:b,studioUserId:j,embedUserId:v,deploymentId:w,pickaxe:k,misc:q,translations:I,responsiveBy:y,setChatId:O,setIsNewChat:S,onGenerateComplete:C}=n.usePickaxeContext(),{status:P,limits:U,isGenerating:D,setResponse:E,setMessages:R,setStatus:N,setLimitData:_,setError:A}=o.useResponseContext(),{documents:L,websiteLink:T,isUploading:B,onWebsiteUpload:M,setDocumentError:W}=r.useDocument(),{scrollStartSession:G,scrollEndSession:J,scrollToTarget:F}=l.useScroll({auto:!(null==k?void 0:k.enablechatresponses)}),K=i.useSubmit(),[X,Y]=t.useState(!1);return s.jsxs("div",Object.assign({className:g.default("mt-4 flex flex-wrap flex-col justify-between gap-2","viewport"===y?"min-[767px]:flex-row":"@[767px]/pickaxe-root:flex-row")},{children:[s.jsx("div",Object.assign({className:"flex items-center flex-grow flex-wrap gap-2"},{children:s.jsx(m.default,Object.assign({className:"px-5 min-h-[42px]",isDisabled:B||"idle"!==P||D||X,onClick:()=>e.__awaiter(void 0,void 0,void 0,(function*(){try{if("idle"!==P||B||X)return;A(""),_(null),W(""),E(null);const e=["Multiple Choice","Checkbox"];for(const s of f){if(d.encode(s.input).length>s.maxLength&&!e.includes(s.type))throw new Error("One or more of your responses is too long!");if(s.isRequired&&!s.input.trim()&&"userinput:documentupload"!==s.id)throw new Error("You must fill out all required fields.")}const s=L.filter((e=>"finished"===e.status)),t=L.map((e=>e.name)),n="enduserupload"===(null==k?void 0:k.documentuploadtype),o=f.some((e=>"userinput:documentupload"===e.id&&e.isRequired)),i=a.extractUrlsFromText(T).filter((e=>!t.includes(e)));if(i.length){const e=i[i.length-1];Y(!0);const t=yield M(e);t&&(s.push(t),yield new Promise((e=>setTimeout(e,5e3)))),Y(!1)}else if(o&&n&&!s.length)return void W("Please paste a valid website/video link or drag a file to add to the knowledge base.");const r=s.length?s[s.length-1]:null,l=n&&r&&"finished"===r.status;let c={};f.forEach((e=>c=Object.assign(Object.assign({},c),{[e.id]:"Knowledge Upload"===e.type||e.id.includes("documentupload")?(null==r?void 0:r.name)||"":e.input}))),N("fetching"),G(),F();const m=yield K.mutateAsync(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({formId:h,valueObj:c},l&&{documentId:r.documentId}),b&&{userId:b}),j&&{studioUserId:j}),v&&{embedUserId:v}),w&&{deploymentId:w})),p=m.body;if(!p)throw new Error("Streaming error");const g=m.headers.get("X-Pickaxe-Response-Id");if(!g)throw new Error("Response ID not found");const x=new TextDecoder,q=p.getReader();let I="",y=!0,U=!1;const D=u.createParser({onEvent:e=>{if("delta"===e.event){const s=JSON.parse(e.data).token.replace(/\u200B/g,"");I+=s,E({formId:h,responseId:g,documentIds:r&&r.documentId?[r.documentId]:[],questions:f.map((e=>({id:e.id,question:e.main,answer:e.input}))),questionResponse:I,messageCount:0,sentAt:new Date}),(null==k?void 0:k.enablechatresponses)&&R([{id:0,role:"assistant",content:I}])}else if("error"===e.event){const s=JSON.parse(e.data);A(s.error||"Something went wrong, please try again.")}else"stop"===e.event&&(y=!1)}});for(;y;){const{value:e,done:s}=yield q.read();if(s){y=!1;break}const t=x.decode(e);t&&(U||(N("streaming"),U=!0,(null==k?void 0:k.enablechatresponses)&&(O(g),S(!1))),D.feed(t))}null==C||C(g)}catch(e){let s=p.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(U).find((([e])=>s.includes(e)));t?_(t[1]):A(s),F()}finally{N("idle"),Y(!1),J()}}))},{children:X?(null==I?void 0:I.processing)||"Processing...":B?(null==I?void 0:I.uploading)||"Uploading...":"fetching"===P||"streaming"===P?(null==I?void 0:I.loading)||"Loading...":null!==(x=null==k?void 0:k.submittext)&&void 0!==x?x:"Submit"}))})),!q.isWhiteLabel&&s.jsx("div",Object.assign({className:"flex justify-end pr-3"},{children:s.jsx(c.default,{})}))]}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../_virtual/_tslib.js"),s=require("react/jsx-runtime"),t=require("react"),n=require("../../../../hooks/pickaxe/usePickaxeContext.js"),o=require("../../../../hooks/pickaxe/useResponseContext.js"),i=require("../../../../hooks/pickaxe/useSubmit.js"),r=require("../../Addons/Document/hooks/useDocument.js"),a=require("../../Addons/Scroll/hooks/useScroll.js"),l=require("../../../../common/utils.js"),d=require("@nem035/gpt-3-encoder"),u=require("eventsource-parser"),c=require("../../common/PickaxeBranding.js"),m=require("../../common/PickaxeButton.js"),p=require("../../../../common/error.js"),f=require("../../../../common/cn.js");exports.default=({questions:g})=>{var x;const{formId:h,userId:b,studioUserId:j,embedUserId:v,deploymentId:w,pickaxe:k,misc:q,translations:y,responsiveBy:I,setChatId:O,setIsNewChat:S,onGenerateComplete:C}=n.usePickaxeContext(),{status:P,limits:D,isGenerating:U,setResponse:E,setMessages:R,setStatus:N,setLimitData:_,setError:A}=o.useResponseContext(),{documents:B,websiteLink:L,isUploading:T,onWebsiteUpload:M,setDocuments:W,setDocumentError:G}=r.useDocument(),{scrollStartSession:J,scrollEndSession:F,scrollToTarget:K}=a.useScroll({auto:!(null==k?void 0:k.enablechatresponses)}),X=i.useSubmit(),[Y,z]=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.jsx("div",Object.assign({className:"flex items-center flex-grow flex-wrap gap-2"},{children:s.jsx(m.default,Object.assign({className:"px-5 min-h-[42px]",isDisabled:T||"idle"!==P||U||Y,onClick:()=>e.__awaiter(void 0,void 0,void 0,(function*(){try{if("idle"!==P||T||Y)return;A(""),G(""),_(null),E(null);const e=["Multiple Choice","Checkbox"];for(const s of g){if(d.encode(s.input).length>s.maxLength&&!e.includes(s.type))throw new Error("One or more of your responses is too long!");if(s.isRequired&&!s.input.trim()&&"userinput:documentupload"!==s.id)throw new Error("You must fill out all required fields.")}const s=B.filter((e=>"finished"===e.status)),t=B.map((e=>e.name)),n="enduserupload"===(null==k?void 0:k.documentuploadtype),o=g.some((e=>"userinput:documentupload"===e.id&&e.isRequired)),i=l.extractUrlsFromText(L).filter((e=>!t.includes(e)));if(i.length){const e=i[i.length-1];z(!0);const t=yield M(e);t&&(s.push(t),yield new Promise((e=>setTimeout(e,5e3)))),z(!1)}else if(o&&n&&!s.length)return void G("Please paste a valid website/video link or drag a file to add to the knowledge base.");const r=s.map((e=>e.documentId)).filter(Boolean),a=n&&r.length>0;let c={};g.forEach((e=>c=Object.assign(Object.assign({},c),{[e.id]:"Knowledge Upload"===e.type||e.id.includes("documentupload")?s.map((e=>e.name)).join(",")||"":e.input}))),N("fetching"),J(),K();const m=yield X.mutateAsync(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({formId:h,valueObj:c},a&&{documentIds:r}),b&&{userId:b}),j&&{studioUserId:j}),v&&{embedUserId:v}),w&&{deploymentId:w})),p=m.body;if(!p)throw new Error("Streaming error");const f=m.headers.get("X-Pickaxe-Response-Id");if(!f)throw new Error("Response ID not found");const x=new TextDecoder,q=p.getReader();let y="",I=!0,D=!1;const U=u.createParser({onEvent:e=>{if("delta"===e.event){const s=JSON.parse(e.data).token.replace(/\u200B/g,"");y+=s,E({formId:h,responseId:f,documentIds:r,questions:g.map((e=>({id:e.id,question:e.main,answer:e.input}))),questionResponse:y,messageCount:0,sentAt:new Date}),(null==k?void 0:k.enablechatresponses)&&R([{id:0,role:"assistant",content:y}])}else if("error"===e.event){const s=JSON.parse(e.data);A(s.error||"Something went wrong, please try again.")}else"stop"===e.event&&(I=!1)}});for(;I;){const{value:e,done:s}=yield q.read();if(s){I=!1;break}const t=x.decode(e);t&&(D||(N("streaming"),D=!0,a&&W([]),(null==k?void 0:k.enablechatresponses)&&(O(f),S(!1))),U.feed(t))}null==C||C(f)}catch(e){let s=p.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(D).find((([e])=>s.includes(e)));t?_(t[1]):A(s),K()}finally{N("idle"),z(!1),F()}}))},{children:Y?(null==y?void 0:y.processing)||"Processing...":T?(null==y?void 0:y.uploading)||"Uploading...":"fetching"===P||"streaming"===P?(null==y?void 0:y.loading)||"Loading...":null!==(x=null==k?void 0:k.submittext)&&void 0!==x?x:"Submit"}))})),!q.isWhiteLabel&&s.jsx("div",Object.assign({className:"flex justify-end pr-3"},{children:s.jsx(c.default,{})}))]}))};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../_virtual/_tslib.js"),t=require("react/jsx-runtime"),i=require("react"),s=require("./Addons/Document/Provider.js"),o=require("./ResponseProvider.js"),r=require("./DimensionProvider.js");function n(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var s=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,s.get?s:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}const d=i.createContext({});exports.PickaxeContext=d,exports.PickaxeProvider=({children:a,userId:l="",studioUserId:c="",deploymentId:u="",embedUserId:f="",deploymentType:p,deploymentDimensions:m,deploymentMisc:b,styles:y,colors:h,limits:v={},misc:x={isWhiteLabel:!0,isProfileImage:!0,isChatImage:!0,isTitle:!0,isDescription:!0,isHistory:!0},translations:F,responsiveBy:g="viewport",forceMobile:j=!1,disableHtml:I=!1,disableJs:P=!1,disableCss:w=!1,loadFont:S=!0,isRtl:O=!1,isEmbed:k=!1,isDropShadow:C=!1,onGenerateComplete:D})=>{const[_,q]=i.useState(""),[E,H]=i.useState(""),[M,R]=i.useState(null),[T,U]=i.useState(!1),[B,L]=i.useState(!0),[N,z]=i.useState(!0);return i.useEffect((()=>{U(!1)}),[null==y?void 0:y.font]),i.useEffect((()=>{e.__awaiter(void 0,void 0,void 0,(function*(){if("undefined"!=typeof window&&S&&!T&&(null==y?void 0:y.font)&&"Real Head Pro"!==y.font)try{(yield Promise.resolve().then((function(){return n(require("webfontloader"))}))).default.load({google:{families:[y.font]},active:()=>{U(!0)},inactive:()=>{console.error("[pxe] failed to load font {styles.font}"),U(!0)}})}catch(e){console.error("[pxe] failed to load font:",e),U(!0)}}))}),[S,T,null==y?void 0:y.font]),t.jsx(d.Provider,Object.assign({value:Object.assign({formId:_,chatId:E,userId:l,studioUserId:c,embedUserId:f,deploymentId:u,deploymentType:p,deploymentDimensions:m,deploymentMisc:b,pickaxe:M,styles:Object.assign({theme:"light",font:"Real Head Pro",fontSize:"md",formFieldStyle:"box",btnStyle:"filled",outlineThickness:1,cornerRadius:4},y),colors:Object.assign({primary:"#F6F8FA",text:"#000000",secondary:"#FFFFFF",secondaryText:"#000000",accent:"#228DD7",accentText:"#FFFFFF",error:"#EF4444"},h),misc:x,translations:Object.assign({"new-chat":"New chat","see-history":"See history","see-input":"See input","hide-input":"Hide input",processing:"Processing...",uploading:"Uploading...",loading:"Loading...","powered-by-pickaxe":"Powered by Pickaxe","form-doc-placeholder":"Paste a website/video link or drag a file",website:"Website"},F),responsiveBy:g,forceMobile:j,loadFont:S,disableHtml:I,disableJs:P,disableCss:w,isFontLoaded:T,isNewChat:B,isShowIceBreaker:N,isRtl:O,isEmbed:k,isDropShadow:C,setIsFontLoaded:U,setFormId:q,setChatId:H,setPickaxe:R,setIsNewChat:L,setIsShowIceBreaker:z},D&&{onGenerateComplete:D})},{children:t.jsx(o.default,Object.assign({limits:v},{children:t.jsx(r.default,{children:t.jsx(s.default,{children:a})})}))}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../_virtual/_tslib.js"),t=require("react/jsx-runtime"),s=require("react"),i=require("./Addons/Document/Provider.js"),o=require("./ResponseProvider.js"),r=require("./DimensionProvider.js");function n(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(s){if("default"!==s){var i=Object.getOwnPropertyDescriptor(e,s);Object.defineProperty(t,s,i.get?i:{enumerable:!0,get:function(){return e[s]}})}})),t.default=e,Object.freeze(t)}const d=s.createContext({});exports.PickaxeContext=d,exports.PickaxeProvider=({children:a,userId:l="",studioUserId:c="",deploymentId:u="",embedUserId:f="",deploymentType:p,deploymentDimensions:m,deploymentMisc:b,styles:y,colors:h,limits:v={},misc:x={isWhiteLabel:!0,isProfileImage:!0,isChatImage:!0,isTitle:!0,isDescription:!0,isHistory:!0},translations:F,responsiveBy:g="viewport",forceMobile:j=!1,disableHtml:I=!1,disableJs:P=!1,disableCss:w=!1,loadFont:S=!0,isRtl:O=!1,isEmbed:k=!1,isDropShadow:C=!1,onGenerateComplete:D})=>{const[_,q]=s.useState(""),[E,H]=s.useState(""),[M,R]=s.useState(""),[T,U]=s.useState(null),[B,L]=s.useState(!1),[N,z]=s.useState(!0),[A,G]=s.useState(!0);return s.useEffect((()=>{L(!1)}),[null==y?void 0:y.font]),s.useEffect((()=>{e.__awaiter(void 0,void 0,void 0,(function*(){if("undefined"!=typeof window&&S&&!B&&(null==y?void 0:y.font)&&"Real Head Pro"!==y.font)try{(yield Promise.resolve().then((function(){return n(require("webfontloader"))}))).default.load({google:{families:[y.font]},active:()=>{L(!0)},inactive:()=>{console.error("[pxe] failed to load font {styles.font}"),L(!0)}})}catch(e){console.error("[pxe] failed to load font:",e),L(!0)}}))}),[S,B,null==y?void 0:y.font]),t.jsx(d.Provider,Object.assign({value:Object.assign({formId:_,chatId:E,sessionId:M,userId:l,studioUserId:c,embedUserId:f,deploymentId:u,deploymentType:p,deploymentDimensions:m,deploymentMisc:b,pickaxe:T,styles:Object.assign({theme:"light",font:"Real Head Pro",fontSize:"md",formFieldStyle:"box",btnStyle:"filled",outlineThickness:1,cornerRadius:4},y),colors:Object.assign({primary:"#F6F8FA",text:"#000000",secondary:"#FFFFFF",secondaryText:"#000000",accent:"#228DD7",accentText:"#FFFFFF",error:"#EF4444"},h),misc:x,translations:Object.assign({"new-chat":"New chat","see-history":"See history","see-input":"See input","hide-input":"Hide input",processing:"Processing...",uploading:"Uploading...",loading:"Loading...","powered-by-pickaxe":"Powered by Pickaxe","form-doc-placeholder":"Paste a website/video link or drag a file",website:"Website"},F),responsiveBy:g,forceMobile:j,loadFont:S,disableHtml:I,disableJs:P,disableCss:w,isFontLoaded:B,isNewChat:N,isShowIceBreaker:A,isRtl:O,isEmbed:k,isDropShadow:C,setIsFontLoaded:L,setFormId:q,setChatId:H,setSessionId:R,setPickaxe:U,setIsNewChat:z,setIsShowIceBreaker:G},D&&{onGenerateComplete:D})},{children:t.jsx(o.default,Object.assign({limits:v},{children:t.jsx(r.default,{children:t.jsx(i.default,{children:a})})}))}))};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../_virtual/_tslib.js"),t=require("react/jsx-runtime"),s=require("../../../hooks/pickaxe/usePickaxeContext.js"),r=require("../../../hooks/studio/useStyleButton.js"),a=require("../../../hooks/studio/useStyleFontSize.js"),i=require("../../Core/Button.js"),o=require("../../../common/cn.js");exports.default=u=>{var{variant:n,className:l}=u,c=e.__rest(u,["variant","className"]);const{styles:y}=s.usePickaxeContext(),j=r.useStyleButton({variant:n}),v=a.useStyleFontSize();return t.jsx(i.default,Object.assign({variant:n,className:o.default(v.l2,"min-h-[48px]",l,("primary"===n||"secondary"===n)&&"hover:opacity-90","outlined"===y.btnStyle&&"hover:opacity-70"),style:j},c))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../_virtual/_tslib.js"),t=require("react/jsx-runtime"),s=require("../../../hooks/pickaxe/usePickaxeContext.js"),r=require("../../../hooks/studio/useStyleButton.js"),a=require("../../../hooks/studio/useStyleFontSize.js"),i=require("../../Core/Button.js"),o=require("../../../common/cn.js");exports.default=u=>{var{variant:n,className:l,style:c}=u,y=e.__rest(u,["variant","className","style"]);const{styles:j}=s.usePickaxeContext(),v=r.useStyleButton({variant:n}),x=a.useStyleFontSize();return t.jsx(i.default,Object.assign({variant:n,className:o.default(x.l2,"min-h-[48px]",l,("primary"===n||"secondary"===n)&&"hover:opacity-90","outlined"===j.btnStyle&&"hover:opacity-70"),style:Object.assign(Object.assign({},v),c)},y))};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("react"),i=require("../../../hooks/pickaxe/usePickaxeContext.js"),t=require("../../../hooks/studio/useStyleFontSize.js"),r=require("./PickaxeMarkdown/Renderer.js"),l=require("./PickaxeIcon.js"),a=require("./PickaxeInfoModal.js"),o=require("./PickaxeMarkdown/index.js"),c=require("../../../common/cn.js");exports.default=({className:n,iconClassName:d,maxDescriptionChars:u,onIconClick:x})=>{const{pickaxe:m,styles:p,colors:j,misc:k,disableHtml:f,disableJs:h,disableCss:b,isRtl:C}=i.usePickaxeContext(),[P,v]=s.useState(!1),g=t.useStyleFontSize(),q=s.useMemo((()=>({title:(null==m?void 0:m.formtitle)||"",description:(null==m?void 0:m.formdescription)||""})),[m]);return e.jsxs("div",Object.assign({className:c.default("flex flex-col items-center",n)},{children:[P&&e.jsx(a.default,{isOpen:P,onChangeIsOpen:v}),k.isProfileImage&&e.jsx(l.default,Object.assign({src:null==m?void 0:m.coverphoto,alt:`${null==m?void 0:m.formtitle}'s Profile Picture`,width:72,height:72,className:c.default("h-[72px] w-[72px] rounded-full",d,!!x&&"cursor-pointer")},x&&{onClick:x})),k.isTitle&&!!q.title&&e.jsx("h2",Object.assign({className:c.default(g.h2,"mt-6 text-center font-semilight opacity-90",!u&&"line-clamp-2")},{children:null==m?void 0:m.formtitle})),k.isDescription&&!!q.description&&e.jsx(o.PickaxeMarkdown,Object.assign({theme:p.theme,accentColor:j.accent},C&&{rtl:!0},f&&{disableHtml:!0},h&&{disableJs:!0},b&&{disableCss:!0},{children:e.jsx(r.PickaxeMarkdownRenderer,Object.assign({className:"mt-2 text-center",value:q.description},u&&{maxDescriptionChars:u},{onExpandClick:()=>v(!0)}))}))]}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("react"),i=require("../../../hooks/pickaxe/usePickaxeContext.js"),t=require("../../../hooks/studio/useStyleFontSize.js"),r=require("./PickaxeMarkdown/Renderer.js"),l=require("./PickaxeIcon.js"),a=require("./PickaxeInfoModal.js"),o=require("./PickaxeMarkdown/index.js"),c=require("../../../common/cn.js");exports.default=({className:n,iconClassName:d,maxDescriptionChars:u,onIconClick:x})=>{const{pickaxe:m,styles:j,colors:p,misc:k,disableHtml:f,disableJs:h,disableCss:b,isRtl:C}=i.usePickaxeContext(),[P,v]=s.useState(!1),g=t.useStyleFontSize(),q=s.useMemo((()=>({title:(null==m?void 0:m.formtitle)||"",description:(null==m?void 0:m.formdescription)||""})),[m]);return e.jsxs("div",Object.assign({className:c.default("flex flex-col items-center",n)},{children:[P&&e.jsx(a.default,{isOpen:P,onChangeIsOpen:v}),k.isProfileImage&&e.jsx(l.default,Object.assign({src:null==m?void 0:m.coverphoto,alt:`${null==m?void 0:m.formtitle}'s Profile Picture`,width:72,height:72,className:c.default("h-[72px] w-[72px] rounded-full",d,!!x&&"cursor-pointer")},x&&{onClick:x})),k.isTitle&&!!q.title&&e.jsx("h2",Object.assign({className:c.default(g.h2,"mt-6 text-center font-semilight opacity-90",!u&&"line-clamp-2")},{children:null==m?void 0:m.formtitle})),k.isDescription&&!!q.description&&e.jsx(o.PickaxeMarkdown,Object.assign({theme:j.theme,accentColor:p.accent},C&&{rtl:!0},f&&{disableHtml:!0},h&&{disableJs:!0},b&&{disableCss:!0},{children:e.jsx(r.PickaxeMarkdownRenderer,Object.assign({className:"mt-2 text-center",value:q.description},u&&{maxChars:u},{onExpandClick:()=>v(!0)}))}))]}))};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("framer-motion"),t=require("../../../hooks/pickaxe/usePickaxeContext.js"),r=require("../../../hooks/pickaxe/useResponseContext.js"),a=require("../../../hooks/studio/useStyleFontSize.js"),i=require("../../Icons/circle-exclamation.svg.js"),l=require("../../Core/SpringTransition.js"),n=require("../../Core/HtmlRenderer.js"),c=require("./PickaxeButton.js"),o=require("../../../common/cn.js");exports.default=({className:u,iconClassName:x,htmlClassName:m})=>{const{colors:j}=t.usePickaxeContext(),d=a.useStyleFontSize(),{limitData:f}=r.useResponseContext();return e.jsx(s.AnimatePresence,{children:!!f&&e.jsxs(l.default,Object.assign({className:o.default("flex gap-3",u)},{children:[e.jsx(i.default,{className:o.default("h-5 w-5 shrink-0",x),style:{color:j.accent}}),e.jsxs("div",Object.assign({className:"flex flex-col gap-4"},{children:[e.jsx(n.default,{className:o.default(d.b2,"font-semibold",m),style:{color:j.text},html:f.html}),!!f.cta&&e.jsx("a",Object.assign({href:f.ctaLink,target:"_parent",rel:"noreferrer"},{children:e.jsx(c.default,Object.assign({variant:"primary",className:"min-h-[38px]",style:{minHeight:"38px"}},{children:f.cta}))}))]}))]}))})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("framer-motion"),t=require("../../../hooks/pickaxe/usePickaxeContext.js"),r=require("../../../hooks/pickaxe/useResponseContext.js"),a=require("../../../hooks/studio/useStyleFontSize.js"),i=require("../../Icons/circle-exclamation.svg.js"),l=require("../../Core/SpringTransition.js"),n=require("../../Core/HtmlRenderer.js"),c=require("./PickaxeButton.js"),o=require("../../../common/cn.js");exports.default=({className:u,iconClassName:x,htmlClassName:m})=>{const{colors:j}=t.usePickaxeContext(),{limitData:d}=r.useResponseContext(),f=a.useStyleFontSize();return e.jsx(s.AnimatePresence,{children:!!d&&e.jsxs(l.default,Object.assign({className:o.default("flex gap-3",u)},{children:[e.jsx(i.default,{className:o.default("h-5 w-5 shrink-0",x),style:{color:j.accent}}),e.jsxs("div",Object.assign({className:"flex flex-col gap-4"},{children:[e.jsx(n.default,{className:o.default(f.b2,"font-semibold",m),style:{color:j.text},html:d.html}),!!d.cta&&e.jsx("a",Object.assign({href:d.ctaLink,target:"_parent",rel:"noreferrer"},{children:e.jsx(c.default,Object.assign({variant:"primary",className:"min-h-[38px]",style:{minHeight:"38px"}},{children:d.cta}))}))]}))]}))})};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("../../hooks/pickaxe/usePickaxe.js"),t=require("react"),a=require("../../hooks/pickaxe/usePickaxeContext.js"),l=require("../../hooks/pickaxe/useResponseContext.js"),r=require("../../common/utils.js"),i=require("./Addons/Scroll/Provider.js"),x=require("../Core/Skeleton.js"),o=require("./Chat/index.js"),c=require("./Form/index.js"),u=require("../../common/cn.js");exports.Pickaxe=({formId:n,className:d})=>{const{chatId:f,styles:p,colors:m,responsiveBy:j,deploymentType:h,isNewChat:k,setFormId:w,setChatId:g,setPickaxe:q}=a.usePickaxeContext(),{setMessages:v,setResponse:N,setError:b,setLimitData:y,setStatus:C}=l.useResponseContext(),[P,O]=t.useState(!1),I=s.usePickaxe();return t.useEffect((()=>{w(n)}),[n]),t.useEffect((()=>{if(!I.data)return;const e=I.data.chatflag;g(e?r.generateId(15):""),e?v([]):N(null),b(""),y(null),q(I.data),O(!0)}),[I.data]),t.useEffect((()=>{v([]),N(null),C("idle"),y(null),b("")}),[f]),I.data?e.jsx("div",Object.assign({className:u.default("relative @container/pickaxe-root flex flex-col flex-grow w-full",!h&&"h-full","popup"===h&&f&&"h-full","dark"===p.theme&&"dark",d),style:Object.assign({backgroundColor:"chat-input"===h&&k?"transparent":m.primary,color:m.text},p.font&&"Real Head Pro"!==p.font&&{fontFamily:p.font})},{children:I.isLoading||!P?e.jsx("div",Object.assign({className:u.default("flex items-center flex-col w-full pt-12 px-4 pb-10","viewport"===j?"min-[767px]:pb-40":"@[767px]/pickaxe-root:pb-40")},{children:e.jsxs("div",Object.assign({className:"flex w-full items-center max-w-[700px] flex-col"},{children:[e.jsx(x.default,{className:"w-[72px] h-[72px]"}),e.jsx(x.default,{className:"h-[20px] mt-6 w-full"}),e.jsx(x.default,{className:"h-[20px] mt-2 w-full"}),e.jsx(x.default,{className:"h-[20px] mt-2 w-full max-w-[400px]"}),e.jsx("div",Object.assign({className:"flex flex-col gap-y-8 w-full mt-6"},{children:e.jsx(x.default,{className:u.default("w-full min-h-[48px]","viewport"===j?"min-[767px]:max-w-[176px]":"@[767px]/pickaxe-root:max-w-[176px]")})}))]}))})):e.jsx(e.Fragment,{children:f?e.jsx(i.default,{children:e.jsx(o.default,{})}):e.jsx(i.default,{children:e.jsx(c.default,{})})})})):null};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("../../hooks/pickaxe/usePickaxe.js"),t=require("react"),a=require("../../hooks/pickaxe/usePickaxeContext.js"),l=require("../../hooks/pickaxe/useResponseContext.js"),r=require("./Addons/Document/hooks/useDocumentContext.js"),o=require("../../common/utils.js"),i=require("./Addons/Scroll/Provider.js"),n=require("../Core/Skeleton.js"),u=require("./Chat/index.js"),x=require("./Form/index.js"),c=require("../../common/cn.js");exports.Pickaxe=({formId:d,className:f})=>{const{chatId:p,styles:m,colors:j,responsiveBy:h,deploymentType:k,isNewChat:w,setFormId:g,setChatId:q,setSessionId:v,setPickaxe:C}=a.usePickaxeContext(),{setMessages:N,setResponse:b,setError:y,setLimitData:P,setStatus:I}=l.useResponseContext(),{setDocumentError:O}=r.useDocumentContext(),[D,E]=t.useState(!1),S=s.usePickaxe();return t.useEffect((()=>{g(d)}),[d]),t.useEffect((()=>{if(!S.data)return;const e=S.data.chatflag;q(e?o.generateId(15):""),v(o.generateId(15)),e?N([]):b(null),y(""),O(""),P(null),C(S.data),E(!0)}),[S.data]),t.useEffect((()=>{y(""),O(""),P(null),N([]),b(null),I("idle")}),[p]),S.data?e.jsx("div",Object.assign({className:c.default("relative @container/pickaxe-root flex flex-col flex-grow w-full",!k&&"h-full","popup"===k&&p&&"h-full","dark"===m.theme&&"dark",f),style:Object.assign({backgroundColor:"chat-input"===k&&w?"transparent":j.primary,color:j.text},m.font&&"Real Head Pro"!==m.font&&{fontFamily:m.font})},{children:S.isLoading||!D?e.jsx("div",Object.assign({className:c.default("flex items-center flex-col w-full pt-12 px-4 pb-10","viewport"===h?"min-[767px]:pb-40":"@[767px]/pickaxe-root:pb-40")},{children:e.jsxs("div",Object.assign({className:"flex w-full items-center max-w-[700px] flex-col"},{children:[e.jsx(n.default,{className:"w-[72px] h-[72px]"}),e.jsx(n.default,{className:"h-[20px] mt-6 w-full"}),e.jsx(n.default,{className:"h-[20px] mt-2 w-full"}),e.jsx(n.default,{className:"h-[20px] mt-2 w-full max-w-[400px]"}),e.jsx("div",Object.assign({className:"flex flex-col gap-y-8 w-full mt-6"},{children:e.jsx(n.default,{className:c.default("w-full min-h-[48px]","viewport"===h?"min-[767px]:max-w-[176px]":"@[767px]/pickaxe-root:max-w-[176px]")})}))]}))})):e.jsx(e.Fragment,{children:p?e.jsx(i.default,{children:e.jsx(u.default,{})}):e.jsx(i.default,{children:e.jsx(x.default,{})})})})):null};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../components/EmbedPreview/Inline.js"),t=require("../components/EmbedPreview/FAB.js"),p=require("../components/EmbedPreview/Popup.js"),r=require("../components/EmbedPreview/ChatInput.js");exports.Inline=e.Inline,exports.FAB=t.FAB,exports.FABButton=t.FABButton,exports.Popup=p.Popup,exports.PopupCTAButton=p.PopupCTAButton,exports.ChatInput=r.ChatInput,exports.ChatInputWrapper=r.ChatInputWrapper;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../_virtual/_tslib.js"),s=require("@tanstack/react-query");exports.useSubmit=()=>s.useMutation({mutationFn:s=>(({formId:s,responseId:t,documentId:n,studioUserId:o,deploymentId:i,embedUserId:r,pickaxe:d,value:a,valueObj:c,disabledDocumentIds:u,metadata:p})=>e.__awaiter(void 0,void 0,void 0,(function*(){const e="undefined"!=typeof window?window.location.hostname:"",l="undefined"!=typeof window?window.location.href:"",b=e.includes("pickaxe.co")&&!l.includes("https://studio.pickaxe.co/_embed"),O=yield fetch(`${process.env.NEXT_PUBLIC_API_URL}/pickaxe/sse`,Object.assign(Object.assign({method:"POST",body:JSON.stringify(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({formId:s},t&&{responseId:t}),n&&{documentId:n}),o&&{studioUserId:o}),i&&{deploymentId:i}),r&&{embedUserId:r}),d&&{pickaxe:d}),a&&{value:a}),c&&{valueObj:c}),u&&{disabledDocumentIds:u}),p&&{metadata:p}))},(!process.env.NODE_ENV||"development"===process.env.NODE_ENV)&&Object.assign({},process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN&&{headers:{"x-pickaxe-session-token":process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN}})),b&&{credentials:"include"}));if(200!==O.status){const e=yield O.json();throw new Error(e.error||"Unknown error, please contact support")}if("application/json"===O.headers.get("content-type")){const{success:e,error:s}=yield O.json();if(!e)throw new Error(s||"Unknown error, please contact support")}return O})))(s)});
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../_virtual/_tslib.js"),s=require("@tanstack/react-query");exports.useSubmit=()=>s.useMutation({mutationFn:s=>(({formId:s,responseId:t,documentIds:n,studioUserId:o,deploymentId:i,embedUserId:r,pickaxe:d,value:a,valueObj:c,disabledDocumentIds:u,metadata:p})=>e.__awaiter(void 0,void 0,void 0,(function*(){const e="undefined"!=typeof window?window.location.hostname:"",l="undefined"!=typeof window?window.location.href:"",b=e.includes("pickaxe.co")&&!l.includes("https://studio.pickaxe.co/_embed"),O=yield fetch(`${process.env.NEXT_PUBLIC_API_URL}/pickaxe/sse`,Object.assign(Object.assign({method:"POST",body:JSON.stringify(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({formId:s},t&&{responseId:t}),n&&{documentIds:n}),o&&{studioUserId:o}),i&&{deploymentId:i}),r&&{embedUserId:r}),d&&{pickaxe:d}),a&&{value:a}),c&&{valueObj:c}),u&&{disabledDocumentIds:u}),p&&{metadata:p}))},(!process.env.NODE_ENV||"development"===process.env.NODE_ENV)&&Object.assign({},process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN&&{headers:{"x-pickaxe-session-token":process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN}})),b&&{credentials:"include"}));if(200!==O.status){const e=yield O.json();throw new Error(e.error||"Unknown error, please contact support")}if("application/json"===O.headers.get("content-type")){const{success:e,error:s}=yield O.json();if(!e)throw new Error(s||"Unknown error, please contact support")}return O})))(s)});
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../_virtual/_tslib.js"),s=require("../../common/utils.js");exports.useSubmitDocument=()=>({document:({formId:s,workspaceId:o,responseId:t,file:n,isKnowledge:i,isBlocking:r})=>e.__awaiter(void 0,void 0,void 0,(function*(){var e,c;if(!process.env.NEXT_PUBLIC_MODAL_DOC_APP_URL)throw new Error("NEXT_PUBLIC_MODAL_DOC_APP_URL is not defined");const d=n.name.split(".").pop(),a=n.type,_=yield fetch(`${process.env.NEXT_PUBLIC_MODAL_DOC_APP_URL}/get_document_upload_url?formid=${s}&mimetype=${a}&extension=${d}`),l=yield _.json();if(!l.success)throw new Error(null!==(e=l.error)&&void 0!==e?e:"Failed to get presigned URL, try again or contact support.");const p=new FormData;Object.entries(Object.assign(Object.assign({},l.fields),{file:n})).forEach((([e,s])=>{p.append(e,s)}));const u=yield fetch(l.url,{method:"POST",body:p});if(!u.ok)throw new Error(u.statusText);const O=`${l.url}${l.fields.key}`;if("development"===process.env.NODE_ENV&&console.log("[S3URL]",O),a.startsWith("image"))return{success:!0,documentId:`IMAGE-${l.documentId}-${l.folder}`};const g=yield fetch(`${process.env.NEXT_PUBLIC_MODAL_DOC_APP_URL}/process_document`,{method:"POST",body:JSON.stringify(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({formId:s},o&&{workspaceId:o}),{documentId:l.documentId}),t&&{responseId:t}),{fileName:n.name,fileSize:n.size}),i&&{isKnowledge:i}),r&&{isBlocking:r})),headers:{"Content-Type":"application/json"}}),f=yield g.json();if(!f.success)throw new Error(null!==(c=f.error)&&void 0!==c?c:"Failed processing document, try again or contact support.");return f})),website:({formId:o,workspaceId:t,responseId:n,website:i,isKnowledge:r,isBlocking:c})=>e.__awaiter(void 0,void 0,void 0,(function*(){var e;if(!process.env.NEXT_PUBLIC_MODAL_DOC_APP_URL)throw new Error("NEXT_PUBLIC_MODAL_DOC_APP_URL is not defined");const d=s.generateId(20),a=yield fetch(`${process.env.NEXT_PUBLIC_MODAL_DOC_APP_URL}/process_document`,{method:"POST",body:JSON.stringify(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({formId:o},t&&{workspaceId:t}),{documentId:d}),n&&{responseId:n}),{website:i}),r&&{isKnowledge:r}),c&&{isBlocking:c})),headers:{"Content-Type":"application/json"}}),_=yield a.json();if(!_.success)throw new Error(null!==(e=_.error)&&void 0!==e?e:"Failed processing website, try again or contact support.");return _}))});
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../_virtual/_tslib.js"),s=require("../../common/utils.js");exports.useSubmitDocument=()=>({document:({formId:s,workspaceId:o,responseId:i,file:t,isKnowledge:n,isBlocking:r,sessionId:c})=>e.__awaiter(void 0,void 0,void 0,(function*(){var e,d;if(!process.env.NEXT_PUBLIC_MODAL_DOC_APP_URL)throw new Error("NEXT_PUBLIC_MODAL_DOC_APP_URL is not defined");const a=t.name.split(".").pop(),_=t.type,l={formid:s,mimetype:_,extension:a,responseid:i,workspaceid:o,sessionid:c},p=new URLSearchParams(Object.entries(l).filter((e=>void 0!==e[1]))),u=`${process.env.NEXT_PUBLIC_MODAL_DOC_APP_URL}/get_document_upload_url?${p.toString()}`,O=yield fetch(u),g=yield O.json();if(!g.success)throw new Error(null!==(e=g.error)&&void 0!==e?e:"Failed to get presigned URL, try again or contact support.");const f=new FormData;Object.entries(Object.assign(Object.assign({},g.fields),{file:t})).forEach((([e,s])=>{f.append(e,s)}));const m=yield fetch(g.url,{method:"POST",body:f});if(!m.ok)throw new Error(m.statusText);const w=`${g.url}${g.fields.key}`;if("development"===process.env.NODE_ENV&&console.log("[S3URL]",w),_.startsWith("image"))return{success:!0,documentId:`IMAGE-${g.documentId}-${g.folder}`};const I=yield fetch(`${process.env.NEXT_PUBLIC_MODAL_DOC_APP_URL}/process_document`,{method:"POST",body:JSON.stringify(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({formId:s},o&&{workspaceId:o}),{documentId:g.documentId}),i&&{responseId:i}),{fileName:t.name,fileSize:t.size}),n&&{isKnowledge:n}),r&&{isBlocking:r})),headers:{"Content-Type":"application/json"}}),b=yield I.json();if(!b.success)throw new Error(null!==(d=b.error)&&void 0!==d?d:"Failed processing document, try again or contact support.");return b})),website:({formId:o,workspaceId:i,responseId:t,website:n,isKnowledge:r,isBlocking:c})=>e.__awaiter(void 0,void 0,void 0,(function*(){var e;if(!process.env.NEXT_PUBLIC_MODAL_DOC_APP_URL)throw new Error("NEXT_PUBLIC_MODAL_DOC_APP_URL is not defined");const d=s.generateId(20),a=yield fetch(`${process.env.NEXT_PUBLIC_MODAL_DOC_APP_URL}/process_document`,{method:"POST",body:JSON.stringify(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({formId:o},i&&{workspaceId:i}),{documentId:d}),t&&{responseId:t}),{website:n}),r&&{isKnowledge:r}),c&&{isBlocking:c})),headers:{"Content-Type":"application/json"}}),_=yield a.json();if(!_.success)throw new Error(null!==(e=_.error)&&void 0!==e?e:"Failed processing website, try again or contact support.");return _}))});
package/dist/cjs/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./components/Pickaxe/index.js"),o=require("./components/Pickaxe/Provider.js"),s=require("./components/Pickaxe/ResponseProvider.js"),r=require("./components/Pickaxe/common/PickaxeMarkdown/index.js"),t=require("./components/Pickaxe/common/PickaxeMarkdown/Renderer.js"),i=require("./hooks/pickaxe/useConversation.js"),x=require("./hooks/pickaxe/useHistory.js"),n=require("./hooks/pickaxe/usePickaxe.js"),k=require("./hooks/pickaxe/usePickaxeContext.js"),u=require("./hooks/pickaxe/useResponseContext.js"),a=require("./hooks/pickaxe/useDimensionContext.js"),c=require("./hooks/pickaxe/useSubmit.js"),p=require("./hooks/pickaxe/useSubmitDocument.js");exports.Pickaxe=e.Pickaxe,exports.PickaxeContext=o.PickaxeContext,exports.PickaxeProvider=o.PickaxeProvider,exports.ResponseContext=s.ResponseContext,exports.PickaxeMarkdown=r.PickaxeMarkdown,exports.PickaxeMarkdownContext=r.PickaxeMarkdownContext,exports.PickaxeMarkdownRenderer=t.PickaxeMarkdownRenderer,exports.useConversation=i.useConversation,exports.useHistory=x.useHistory,exports.useInstantPickaxe=n.useInstantPickaxe,exports.usePickaxe=n.usePickaxe,exports.usePickaxeContext=k.usePickaxeContext,exports.useResponseContext=u.useResponseContext,exports.useDimensionContext=a.useDimensionContext,exports.useSubmit=c.useSubmit,exports.useSubmitDocument=p.useSubmitDocument;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./components/Pickaxe/index.js"),o=require("./components/Pickaxe/Provider.js"),s=require("./components/Pickaxe/ResponseProvider.js"),t=require("./components/Pickaxe/common/PickaxeMarkdown/index.js"),r=require("./components/Pickaxe/common/PickaxeMarkdown/Renderer.js"),n=require("./components/EmbedPreview/Inline.js"),i=require("./components/EmbedPreview/FAB.js"),x=require("./components/EmbedPreview/Popup.js"),u=require("./components/EmbedPreview/ChatInput.js"),p=require("./hooks/pickaxe/useConversation.js"),a=require("./hooks/pickaxe/useHistory.js"),c=require("./hooks/pickaxe/usePickaxe.js"),k=require("./hooks/pickaxe/usePickaxeContext.js"),P=require("./hooks/pickaxe/useResponseContext.js"),m=require("./hooks/pickaxe/useDimensionContext.js"),C=require("./hooks/pickaxe/useSubmit.js"),d=require("./hooks/pickaxe/useSubmitDocument.js");exports.Pickaxe=e.Pickaxe,exports.PickaxeContext=o.PickaxeContext,exports.PickaxeProvider=o.PickaxeProvider,exports.ResponseContext=s.ResponseContext,exports.PickaxeMarkdown=t.PickaxeMarkdown,exports.PickaxeMarkdownContext=t.PickaxeMarkdownContext,exports.PickaxeMarkdownRenderer=r.PickaxeMarkdownRenderer,exports.Inline=n.Inline,exports.FAB=i.FAB,exports.FABButton=i.FABButton,exports.Popup=x.Popup,exports.PopupCTAButton=x.PopupCTAButton,exports.ChatInput=u.ChatInput,exports.ChatInputWrapper=u.ChatInputWrapper,exports.useConversation=p.useConversation,exports.useHistory=a.useHistory,exports.useInstantPickaxe=c.useInstantPickaxe,exports.usePickaxe=c.usePickaxe,exports.usePickaxeContext=k.usePickaxeContext,exports.useResponseContext=P.useResponseContext,exports.useDimensionContext=m.useDimensionContext,exports.useSubmit=C.useSubmit,exports.useSubmitDocument=d.useSubmitDocument;
@@ -1,7 +1,7 @@
1
1
  import type { ReactNode } from "react";
2
2
  import { PickaxeProps } from "../Pickaxe";
3
3
  import { IPickaxeProviderProps } from "../Pickaxe/Provider";
4
- type ChatInputProps = PickaxeProps & Omit<IPickaxeProviderProps, "deploymentType">;
4
+ type ChatInputProps = PickaxeProps & Omit<IPickaxeProviderProps, "children" | "deploymentType" | "isEmbed">;
5
5
  export declare const ChatInput: ({ formId, className, ...props }: ChatInputProps) => import("react/jsx-runtime").JSX.Element;
6
6
  export declare const ChatInputWrapper: ({ children }: {
7
7
  children: ReactNode;
@@ -1,7 +1,7 @@
1
1
  import type { SetState } from "../../types/common";
2
2
  import { PickaxeProps } from "../Pickaxe";
3
3
  import { IPickaxeProviderProps } from "../Pickaxe/Provider";
4
- type FABProps = PickaxeProps & Omit<IPickaxeProviderProps, "deploymentType">;
4
+ type FABProps = PickaxeProps & Omit<IPickaxeProviderProps, "children" | "deploymentType" | "isEmbed">;
5
5
  export declare const FAB: ({ formId, className, ...props }: FABProps) => import("react/jsx-runtime").JSX.Element;
6
6
  export declare const FABButton: ({ isOpen, setIsOpen, }: {
7
7
  isOpen: boolean;
@@ -1,5 +1,5 @@
1
1
  import { PickaxeProps } from "../Pickaxe";
2
2
  import { IPickaxeProviderProps } from "../Pickaxe/Provider";
3
- type InlineProps = PickaxeProps & Omit<IPickaxeProviderProps, "deploymentType">;
3
+ type InlineProps = PickaxeProps & Omit<IPickaxeProviderProps, "children" | "deploymentType" | "isEmbed">;
4
4
  export declare const Inline: ({ formId, className, ...props }: InlineProps) => import("react/jsx-runtime").JSX.Element;
5
5
  export {};
@@ -1,7 +1,7 @@
1
1
  import type { SetState } from "../../types/common";
2
2
  import { PickaxeProps } from "../Pickaxe";
3
3
  import { IPickaxeProviderProps } from "../Pickaxe/Provider";
4
- type PopupProps = PickaxeProps & Omit<IPickaxeProviderProps, "deploymentType">;
4
+ type PopupProps = PickaxeProps & Omit<IPickaxeProviderProps, "children" | "deploymentType" | "isEmbed">;
5
5
  export declare const Popup: ({ formId, className, ...props }: PopupProps) => import("react/jsx-runtime").JSX.Element;
6
6
  export declare const PopupCTAButton: ({ formId, setIsOpen, }: {
7
7
  formId: string;
@@ -9,8 +9,9 @@ type DocumentContextType = {
9
9
  isUploading: boolean;
10
10
  isShowList: boolean;
11
11
  editDocument: (newDocument: Partial<MemoryStoredDocument>) => void;
12
- editDocumentByDocId: (newDocument: Partial<MemoryStoredDocument>) => void;
13
12
  setDocuments: SetState<MemoryStoredDocument[]>;
13
+ addDocument: (newDocument: MemoryStoredDocument) => void;
14
+ removeDocument: (documentId: string) => void;
14
15
  setDocumentError: SetState<string>;
15
16
  setWebsiteLink: SetState<string>;
16
17
  setIsUploading: SetState<boolean>;
@@ -5,9 +5,8 @@ interface UseDocumentProps {
5
5
  }
6
6
  export declare const useDocument: ({ onQuestionChange }?: UseDocumentProps) => {
7
7
  isImageUploadAllowed: boolean;
8
- onFileUpload: (files: File[]) => Promise<MemoryStoredDocument | null>;
8
+ onFileUpload: (files: File[]) => Promise<null | undefined>;
9
9
  onWebsiteUpload: (website: string) => Promise<MemoryStoredDocument | null>;
10
- onEditDocumentByDocId: (newDocument: Partial<MemoryStoredDocument>) => void;
11
10
  documents: MemoryStoredDocument[];
12
11
  documentCount: number;
13
12
  documentError: string;
@@ -15,8 +14,9 @@ export declare const useDocument: ({ onQuestionChange }?: UseDocumentProps) => {
15
14
  isUploading: boolean;
16
15
  isShowList: boolean;
17
16
  editDocument: (newDocument: Partial<MemoryStoredDocument>) => void;
18
- editDocumentByDocId: (newDocument: Partial<MemoryStoredDocument>) => void;
19
17
  setDocuments: import("../../../../../types/common").SetState<MemoryStoredDocument[]>;
18
+ addDocument: (newDocument: MemoryStoredDocument) => void;
19
+ removeDocument: (documentId: string) => void;
20
20
  setDocumentError: import("../../../../../types/common").SetState<string>;
21
21
  setWebsiteLink: import("../../../../../types/common").SetState<string>;
22
22
  setIsUploading: import("../../../../../types/common").SetState<boolean>;
@@ -6,8 +6,9 @@ export declare const useDocumentContext: () => {
6
6
  isUploading: boolean;
7
7
  isShowList: boolean;
8
8
  editDocument: (newDocument: Partial<import("../../../../../types/document").MemoryStoredDocument>) => void;
9
- editDocumentByDocId: (newDocument: Partial<import("../../../../../types/document").MemoryStoredDocument>) => void;
10
9
  setDocuments: import("../../../../../types/common").SetState<import("../../../../../types/document").MemoryStoredDocument[]>;
10
+ addDocument: (newDocument: import("../../../../../types/document").MemoryStoredDocument) => void;
11
+ removeDocument: (documentId: string) => void;
11
12
  setDocumentError: import("../../../../../types/common").SetState<string>;
12
13
  setWebsiteLink: import("../../../../../types/common").SetState<string>;
13
14
  setIsUploading: import("../../../../../types/common").SetState<boolean>;
@@ -54,6 +54,7 @@ export type PickaxeDeploymentMisc = {
54
54
  type PickaxeContextType = {
55
55
  formId: string;
56
56
  chatId: string;
57
+ sessionId: string;
57
58
  userId: string;
58
59
  studioUserId: string;
59
60
  embedUserId: string;
@@ -80,6 +81,7 @@ type PickaxeContextType = {
80
81
  isDropShadow: boolean;
81
82
  setFormId: SetState<string>;
82
83
  setChatId: SetState<string>;
84
+ setSessionId: SetState<string>;
83
85
  setPickaxe: SetState<LimitedPickaxe | null>;
84
86
  setIsFontLoaded: SetState<boolean>;
85
87
  setIsNewChat: SetState<boolean>;
@@ -1,3 +1,3 @@
1
1
  import { ButtonProps } from "../../Core/Button";
2
- declare const PickaxeButton: ({ variant, className, ...props }: Omit<ButtonProps, "ref">) => import("react/jsx-runtime").JSX.Element;
2
+ declare const PickaxeButton: ({ variant, className, style, ...props }: Omit<ButtonProps, "ref">) => import("react/jsx-runtime").JSX.Element;
3
3
  export default PickaxeButton;
@@ -0,0 +1,5 @@
1
+ import "./styles/prose.css";
2
+ export * from "./components/EmbedPreview/Inline";
3
+ export * from "./components/EmbedPreview/FAB";
4
+ export * from "./components/EmbedPreview/Popup";
5
+ export * from "./components/EmbedPreview/ChatInput";
@@ -1,6 +1,7 @@
1
1
  export declare const usePickaxeContext: () => {
2
2
  formId: string;
3
3
  chatId: string;
4
+ sessionId: string;
4
5
  userId: string;
5
6
  studioUserId: string;
6
7
  embedUserId: string;
@@ -27,6 +28,7 @@ export declare const usePickaxeContext: () => {
27
28
  isDropShadow: boolean;
28
29
  setFormId: import("../../types/common").SetState<string>;
29
30
  setChatId: import("../../types/common").SetState<string>;
31
+ setSessionId: import("../../types/common").SetState<string>;
30
32
  setPickaxe: import("../../types/common").SetState<import("../../types/pickaxe").LimitedPickaxe | null>;
31
33
  setIsFontLoaded: import("../../types/common").SetState<boolean>;
32
34
  setIsNewChat: import("../../types/common").SetState<boolean>;
@@ -2,7 +2,7 @@ import type { Pickaxe } from "../../types/pickaxe";
2
2
  type MutationParams = {
3
3
  formId: string;
4
4
  responseId?: string;
5
- documentId?: string;
5
+ documentIds?: string[];
6
6
  studioUserId?: string;
7
7
  embedUserId?: string;
8
8
  deploymentId?: string;
@@ -1,11 +1,12 @@
1
1
  export declare const useSubmitDocument: () => {
2
- document: ({ formId, workspaceId, responseId, file, isKnowledge, isBlocking, }: {
2
+ document: ({ formId, workspaceId, responseId, file, isKnowledge, isBlocking, sessionId, }: {
3
3
  formId: string;
4
4
  workspaceId?: string | undefined;
5
5
  responseId?: string | undefined;
6
6
  file: File;
7
7
  isKnowledge?: boolean | undefined;
8
8
  isBlocking?: boolean | undefined;
9
+ sessionId: string;
9
10
  }) => Promise<{
10
11
  success: boolean;
11
12
  documentId: string;
@@ -4,6 +4,10 @@ export * from "./components/Pickaxe/Provider";
4
4
  export * from "./components/Pickaxe/ResponseProvider";
5
5
  export * from "./components/Pickaxe/common/PickaxeMarkdown";
6
6
  export * from "./components/Pickaxe/common/PickaxeMarkdown/Renderer";
7
+ export * from "./components/EmbedPreview/Inline";
8
+ export * from "./components/EmbedPreview/FAB";
9
+ export * from "./components/EmbedPreview/Popup";
10
+ export * from "./components/EmbedPreview/ChatInput";
7
11
  export * from "./hooks/pickaxe/useConversation";
8
12
  export * from "./hooks/pickaxe/useHistory";
9
13
  export * from "./hooks/pickaxe/usePickaxe";
@@ -0,0 +1 @@
1
+ import{__rest as i}from"../../_virtual/_tslib.js";import{jsx as e}from"react/jsx-runtime";import{usePickaxeContext as t}from"../../hooks/pickaxe/usePickaxeContext.js";import{QueryClient as o,QueryClientProvider as r}from"@tanstack/react-query";import{Pickaxe as n}from"../Pickaxe/index.js";import{PickaxeProvider as s}from"../Pickaxe/Provider.js";import a from"../../common/cn.js";const l=new o({defaultOptions:{queries:{refetchOnWindowFocus:!1}}}),d=t=>{var{formId:o,className:a}=t,d=i(t,["formId","className"]);return e(r,Object.assign({client:l},{children:e(s,Object.assign({},d,{deploymentType:"chat-input",isEmbed:!0},{children:e(h,{children:e(n,Object.assign({formId:o},a&&{className:a}))})}))}))},h=({children:i})=>{var o;const{styles:r,deploymentDimensions:n,isNewChat:s,isDropShadow:l}=t();return e("div",Object.assign({className:a("relative top-0 flex w-full flex-col transition-all",l&&"shadow-embed",!s&&"overflow-y-auto overflow-x-hidden scrollbar scrollbar-thin"),style:Object.assign(Object.assign({borderRadius:null!==(o=null==r?void 0:r.cornerRadius)&&void 0!==o?o:0},"px"===(null==n?void 0:n.width.unit)?{width:n.width.value+n.width.unit}:"%"===(null==n?void 0:n.width.unit)?{width:"100%",maxWidth:n.maxWidth+"px"}:{}),s?{height:58}:"px"===(null==n?void 0:n.height.unit)?{height:n.height.value+"px"}:"auto"===(null==n?void 0:n.height.unit)?{minHeight:n.minHeight+"px",maxHeight:n.maxHeight+"px"}:{})},{children:i}))};export{d as ChatInput,h as ChatInputWrapper};
@@ -0,0 +1 @@
1
+ import{__rest as e,__awaiter as i}from"../../_virtual/_tslib.js";import{jsx as t,jsxs as n}from"react/jsx-runtime";import{useState as s,useEffect as o}from"react";import{usePickaxeContext as a}from"../../hooks/pickaxe/usePickaxeContext.js";import{QueryClient as r,QueryClientProvider as c}from"@tanstack/react-query";import{Pickaxe as l}from"../Pickaxe/index.js";import{PickaxeProvider as d}from"../Pickaxe/Provider.js";import{AnimatePresence as m,motion as h}from"framer-motion";import u from"../Icons/pickaxe.svg.js";import p from"../Icons/spark.svg.js";import g from"../Icons/x.svg.js";import b from"../../common/cn.js";const f=new r({defaultOptions:{queries:{refetchOnWindowFocus:!1}}}),x=i=>{var a,r,u,p,{formId:g,className:x}=i,w=e(i,["formId","className"]);const[y,j]=s(!1),[k,O]=s({}),I=()=>{const e=w.deploymentDimensions;if(!e)return;const i={value:e.width.value,unit:e.width.unit},t=e.maxWidth,n={value:e.height.value,unit:e.height.unit},s=e.minHeight,o=e.maxHeight,a=window.innerHeight-150,r=window.innerWidth-40;let c=0;c="px"===n.unit?n.value:o;let l=Math.min(c,a);l=Math.max(l,s,100),l=Math.min(l,a);let d=0;d="px"===i.unit?i.value:t;let m=Math.min(d,r,t);m=Math.max(m,150),m=Math.min(m,r);O({width:"%"===i.unit?i.value+"%":m+"px",minWidth:150,maxWidth:m,height:"auto"===n.unit?n.value:l+"px",minHeight:100,maxHeight:l})};return o((()=>(I(),window.addEventListener("resize",I),()=>window.removeEventListener("resize",I))),[w.deploymentDimensions]),t(c,Object.assign({client:f},{children:t(d,Object.assign({},w,{deploymentType:"fab",isEmbed:!0},{children:n(m,{children:[y&&t(h.div,Object.assign({initial:{opacity:0,scale:.8},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.8},transition:{duration:.1},className:b("transition-h absolute z-50 flex flex-col overflow-hidden bg-transparent",w.isDropShadow&&"shadow-embed"),style:Object.assign({transformOrigin:"bottom right",borderRadius:null!==(r=null===(a=w.styles)||void 0===a?void 0:a.cornerRadius)&&void 0!==r?r:0,bottom:100,right:20},k)},{children:t("div",Object.assign({className:"flex flex-col overflow-auto h-full scrollbar scrollbar-thin dark:bg-black",style:{borderRadius:null!==(p=null===(u=w.styles)||void 0===u?void 0:u.cornerRadius)&&void 0!==p?p:0}},{children:t(l,Object.assign({formId:g},x&&{className:x}))}))}),"fab-content"),t(v,{isOpen:y,setIsOpen:j})]})}))}))},v=({isOpen:e,setIsOpen:n})=>{const{colors:r,deploymentMisc:c}=a(),[l,d]=s({src:"",isLarge:!1}),[m,h]=s(!0);return o((()=>{i(void 0,void 0,void 0,(function*(){try{if(!(null==c?void 0:c.fabImage))return;h(!0);const e=new Image;e.src=c.fabImage,yield e.decode();const i=e.width>200;d({src:c.fabImage,isLarge:i})}catch(e){console.error("[pxe] error loading FAB image:",e),d({src:"",isLarge:!1})}finally{h(!1)}}))}),[null==c?void 0:c.fabImage]),m?null:t("button",Object.assign({className:"absolute z-50 flex h-[60px] w-[60px] cursor-pointer items-center justify-center overflow-hidden rounded-full bg-white dark:bg-black",style:{boxShadow:"0px 6px 6px rgba(0, 0, 0, 0.12)",background:r.primary,color:r.text,bottom:20,right:20},onClick:()=>n(!e)},{children:t(w,e?Object.assign({id:"close-btn"},{children:t(g,{className:"shrink-0 select-none",style:{width:28,height:28}})}):Object.assign({id:"open-btn"},{children:l.src===`https://${process.env.NEXT_PUBLIC_PICKAXE_DOMAIN}/builder/assets/images/pickaxe-chaticons/chaticon2.png`?t(p,{className:"h-6 w-6 shrink-0 select-none"}):l.src?t("img",{src:l.src,alt:"FAB Icon",width:l.isLarge?60:24,height:l.isLarge?60:24,className:"select-none"}):t(u,{className:"h-6 w-6 shrink-0 select-none"})}))}))},w=({id:e,children:i})=>t(h.div,Object.assign({initial:{opacity:0,rotate:-10},animate:{opacity:1,rotate:0},exit:{opacity:0,rotate:10},transition:{duration:.3}},{children:i}),e);export{x as FAB,v as FABButton};
@@ -0,0 +1 @@
1
+ import{__rest as i}from"../../_virtual/_tslib.js";import{jsx as e}from"react/jsx-runtime";import{QueryClient as n,QueryClientProvider as o}from"@tanstack/react-query";import{Pickaxe as t}from"../Pickaxe/index.js";import{PickaxeProvider as s}from"../Pickaxe/Provider.js";import l from"../../common/cn.js";const m=new n({defaultOptions:{queries:{refetchOnWindowFocus:!1}}}),d=n=>{var d,r,a,c,h,p,{formId:u,className:v}=n,x=i(n,["formId","className"]);return e(o,Object.assign({client:m},{children:e(s,Object.assign({},x,{deploymentType:"inline",isEmbed:!0},{children:e("div",Object.assign({className:l("relative top-0 flex w-full flex-col overflow-y-auto overflow-x-hidden transition-all scrollbar scrollbar-thin",x.isDropShadow&&"shadow-embed"),style:Object.assign(Object.assign({borderRadius:null!==(r=null===(d=x.styles)||void 0===d?void 0:d.cornerRadius)&&void 0!==r?r:0},"px"===(null===(a=x.deploymentDimensions)||void 0===a?void 0:a.width.unit)?{width:x.deploymentDimensions.width.value+x.deploymentDimensions.width.unit}:"%"===(null===(c=x.deploymentDimensions)||void 0===c?void 0:c.width.unit)?{width:"100%",maxWidth:x.deploymentDimensions.maxWidth+"px"}:{}),"px"===(null===(h=x.deploymentDimensions)||void 0===h?void 0:h.height.unit)?{height:x.deploymentDimensions.height.value+"px"}:"auto"===(null===(p=x.deploymentDimensions)||void 0===p?void 0:p.height.unit)?{minHeight:x.deploymentDimensions.minHeight+"px",maxHeight:x.deploymentDimensions.maxHeight+"px"}:{})},{children:e(t,Object.assign({formId:u},v&&{className:v}))}))}))}))};export{d as Inline};