@pickaxeproject/react 6.1.0 → 6.1.1

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 (111) hide show
  1. package/dist/cjs/_virtual/index3.js +1 -0
  2. package/dist/cjs/_virtual/index4.js +1 -0
  3. package/dist/cjs/_virtual/react-is.development.js +1 -0
  4. package/dist/cjs/_virtual/react-is.production.min.js +1 -0
  5. package/dist/cjs/common/utils.js +1 -1
  6. package/dist/cjs/common/validation.js +1 -0
  7. package/dist/cjs/components/Icons/collapse-new.svg.js +1 -0
  8. package/dist/cjs/components/Icons/copy-new.svg.js +1 -0
  9. package/dist/cjs/components/Icons/download-new.svg.js +1 -0
  10. package/dist/cjs/components/Icons/history.svg.js +1 -0
  11. package/dist/cjs/components/Icons/pencil.svg.js +1 -0
  12. package/dist/cjs/components/Pickaxe/Addons/Artifact/Renderer/index.js +1 -1
  13. package/dist/cjs/components/Pickaxe/Addons/Auth/Provider.js +1 -1
  14. package/dist/cjs/components/Pickaxe/Addons/Auth/hooks/useAuth.js +1 -1
  15. package/dist/cjs/components/Pickaxe/Addons/Navbar/NavPill.js +1 -0
  16. package/dist/cjs/components/Pickaxe/Chat/History/index.js +1 -1
  17. package/dist/cjs/components/Pickaxe/Chat/Input.js +1 -1
  18. package/dist/cjs/components/Pickaxe/Chat/index.js +1 -1
  19. package/dist/cjs/components/Pickaxe/Form/Questions/Submit.js +1 -1
  20. package/dist/cjs/components/Pickaxe/Form/index.js +1 -1
  21. package/dist/cjs/components/Pickaxe/Provider.js +1 -1
  22. package/dist/cjs/components/Pickaxe/common/AccessGroupCardPreview.js +1 -0
  23. package/dist/cjs/components/Pickaxe/common/PickaxeAvatar.js +1 -0
  24. package/dist/cjs/components/Pickaxe/common/PickaxeCommon.js +1 -0
  25. package/dist/cjs/components/Pickaxe/common/PickaxeCurrency.js +1 -0
  26. package/dist/cjs/components/Pickaxe/common/PickaxeUpgradeCard.js +1 -1
  27. package/dist/cjs/components/Pickaxe/index.js +1 -1
  28. package/dist/cjs/hooks/studio/useStudio.js +1 -0
  29. package/dist/cjs/node_modules/.pnpm/@stripe_react-stripe-js@4.0.2_@stripe_stripe-js@7.9.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@stripe/react-stripe-js/dist/react-stripe.esm.mjs.js +1 -0
  30. package/dist/cjs/node_modules/.pnpm/@stripe_stripe-js@7.9.0/node_modules/@stripe/stripe-js/dist/index.mjs.js +1 -0
  31. package/dist/cjs/node_modules/.pnpm/object-assign@4.1.1/node_modules/object-assign/index.js +7 -0
  32. package/dist/cjs/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/checkPropTypes.js +1 -0
  33. package/dist/cjs/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/factoryWithThrowingShims.js +1 -0
  34. package/dist/cjs/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/factoryWithTypeCheckers.js +1 -0
  35. package/dist/cjs/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/index.js +1 -0
  36. package/dist/cjs/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/lib/ReactPropTypesSecret.js +1 -0
  37. package/dist/cjs/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/lib/has.js +1 -0
  38. package/dist/cjs/node_modules/.pnpm/react-is@16.13.1/node_modules/react-is/cjs/react-is.development.js +9 -0
  39. package/dist/cjs/node_modules/.pnpm/react-is@16.13.1/node_modules/react-is/cjs/react-is.production.min.js +9 -0
  40. package/dist/cjs/node_modules/.pnpm/react-is@16.13.1/node_modules/react-is/index.js +1 -0
  41. package/dist/cjs/src/common/utils.d.ts +2 -0
  42. package/dist/cjs/src/common/validation.d.ts +7 -0
  43. package/dist/cjs/src/components/Pickaxe/Addons/Auth/Provider.d.ts +4 -0
  44. package/dist/cjs/src/components/Pickaxe/Addons/Auth/hooks/useAuthContext.d.ts +4 -0
  45. package/dist/cjs/src/components/Pickaxe/Addons/Navbar/NavPill.d.ts +22 -0
  46. package/dist/cjs/src/components/Pickaxe/Provider.d.ts +25 -4
  47. package/dist/cjs/src/components/Pickaxe/ResponseProvider.d.ts +7 -3
  48. package/dist/cjs/src/components/Pickaxe/common/AccessGroupCardPreview.d.ts +9 -0
  49. package/dist/cjs/src/components/Pickaxe/common/PickaxeAvatar.d.ts +16 -0
  50. package/dist/cjs/src/components/Pickaxe/common/PickaxeCommon.d.ts +2 -0
  51. package/dist/cjs/src/components/Pickaxe/common/PickaxeCurrency.d.ts +7 -0
  52. package/dist/cjs/src/components/Pickaxe/common/PickaxeUpgradeCard.d.ts +1 -1
  53. package/dist/cjs/src/hooks/pickaxe/usePickaxeContext.d.ts +14 -1
  54. package/dist/cjs/src/hooks/studio/useStudio.d.ts +5 -0
  55. package/dist/cjs/src/types/response.d.ts +8 -0
  56. package/dist/esm/_virtual/index3.js +1 -0
  57. package/dist/esm/_virtual/index4.js +1 -0
  58. package/dist/esm/_virtual/react-is.development.js +1 -0
  59. package/dist/esm/_virtual/react-is.production.min.js +1 -0
  60. package/dist/esm/common/utils.js +1 -1
  61. package/dist/esm/common/validation.js +1 -0
  62. package/dist/esm/components/Icons/collapse-new.svg.js +1 -0
  63. package/dist/esm/components/Icons/copy-new.svg.js +1 -0
  64. package/dist/esm/components/Icons/download-new.svg.js +1 -0
  65. package/dist/esm/components/Icons/history.svg.js +1 -0
  66. package/dist/esm/components/Icons/pencil.svg.js +1 -0
  67. package/dist/esm/components/Pickaxe/Addons/Artifact/Renderer/index.js +1 -1
  68. package/dist/esm/components/Pickaxe/Addons/Auth/Provider.js +1 -1
  69. package/dist/esm/components/Pickaxe/Addons/Auth/hooks/useAuth.js +1 -1
  70. package/dist/esm/components/Pickaxe/Addons/Navbar/NavPill.js +1 -0
  71. package/dist/esm/components/Pickaxe/Chat/History/index.js +1 -1
  72. package/dist/esm/components/Pickaxe/Chat/Input.js +1 -1
  73. package/dist/esm/components/Pickaxe/Chat/index.js +1 -1
  74. package/dist/esm/components/Pickaxe/Form/Questions/Submit.js +1 -1
  75. package/dist/esm/components/Pickaxe/Form/index.js +1 -1
  76. package/dist/esm/components/Pickaxe/Provider.js +1 -1
  77. package/dist/esm/components/Pickaxe/common/AccessGroupCardPreview.js +1 -0
  78. package/dist/esm/components/Pickaxe/common/PickaxeAvatar.js +1 -0
  79. package/dist/esm/components/Pickaxe/common/PickaxeCommon.js +1 -0
  80. package/dist/esm/components/Pickaxe/common/PickaxeCurrency.js +1 -0
  81. package/dist/esm/components/Pickaxe/common/PickaxeUpgradeCard.js +1 -1
  82. package/dist/esm/components/Pickaxe/index.js +1 -1
  83. package/dist/esm/hooks/studio/useStudio.js +1 -0
  84. package/dist/esm/node_modules/.pnpm/@stripe_react-stripe-js@4.0.2_@stripe_stripe-js@7.9.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@stripe/react-stripe-js/dist/react-stripe.esm.mjs.js +1 -0
  85. package/dist/esm/node_modules/.pnpm/@stripe_stripe-js@7.9.0/node_modules/@stripe/stripe-js/dist/index.mjs.js +1 -0
  86. package/dist/esm/node_modules/.pnpm/object-assign@4.1.1/node_modules/object-assign/index.js +6 -0
  87. package/dist/esm/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/checkPropTypes.js +1 -0
  88. package/dist/esm/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/factoryWithThrowingShims.js +1 -0
  89. package/dist/esm/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/factoryWithTypeCheckers.js +1 -0
  90. package/dist/esm/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/index.js +1 -0
  91. package/dist/esm/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/lib/ReactPropTypesSecret.js +1 -0
  92. package/dist/esm/node_modules/.pnpm/prop-types@15.8.1/node_modules/prop-types/lib/has.js +1 -0
  93. package/dist/esm/node_modules/.pnpm/react-is@16.13.1/node_modules/react-is/cjs/react-is.development.js +9 -0
  94. package/dist/esm/node_modules/.pnpm/react-is@16.13.1/node_modules/react-is/cjs/react-is.production.min.js +9 -0
  95. package/dist/esm/node_modules/.pnpm/react-is@16.13.1/node_modules/react-is/index.js +1 -0
  96. package/dist/esm/src/common/utils.d.ts +2 -0
  97. package/dist/esm/src/common/validation.d.ts +7 -0
  98. package/dist/esm/src/components/Pickaxe/Addons/Auth/Provider.d.ts +4 -0
  99. package/dist/esm/src/components/Pickaxe/Addons/Auth/hooks/useAuthContext.d.ts +4 -0
  100. package/dist/esm/src/components/Pickaxe/Addons/Navbar/NavPill.d.ts +22 -0
  101. package/dist/esm/src/components/Pickaxe/Provider.d.ts +25 -4
  102. package/dist/esm/src/components/Pickaxe/ResponseProvider.d.ts +7 -3
  103. package/dist/esm/src/components/Pickaxe/common/AccessGroupCardPreview.d.ts +9 -0
  104. package/dist/esm/src/components/Pickaxe/common/PickaxeAvatar.d.ts +16 -0
  105. package/dist/esm/src/components/Pickaxe/common/PickaxeCommon.d.ts +2 -0
  106. package/dist/esm/src/components/Pickaxe/common/PickaxeCurrency.d.ts +7 -0
  107. package/dist/esm/src/components/Pickaxe/common/PickaxeUpgradeCard.d.ts +1 -1
  108. package/dist/esm/src/hooks/pickaxe/usePickaxeContext.d.ts +14 -1
  109. package/dist/esm/src/hooks/studio/useStudio.d.ts +5 -0
  110. package/dist/esm/src/types/response.d.ts +8 -0
  111. package/package.json +5 -1
@@ -1 +1 @@
1
- import{__awaiter as e}from"../../../../../_virtual/_tslib.js";import{jsxs as o,jsx as t}from"react/jsx-runtime";import{useState as n,useRef as r,useMemo as i,useEffect as a}from"react";import{useArtifactContext as l}from"../hooks/useArtifactContext.js";import{usePickaxeContext as c}from"../../../../../hooks/pickaxe/usePickaxeContext.js";import{useScroll as s}from"../../Scroll/hooks/useScroll.js";import{useArtifact as d}from"../hooks/useArtifact.js";import{useReactToPrint as p}from"react-to-print";import{PickaxeMarkdown as m}from"../../../common/PickaxeMarkdown/index.js";import{PickaxeMarkdownRenderer as u}from"../../../common/PickaxeMarkdown/Renderer.js";import{Prism as v}from"react-syntax-highlighter";import{convertMarkdownToDocx as y,downloadDocx as x}from"../../../../../common/docx/index.js";import f from"file-saver";import g from"../../Scroll/ScrollLockView.js";import h from"../../../../Icons/x.svg.js";import b from"../../../../Icons/save.svg.js";import C from"../../../../Icons/expand.svg.js";import w from"../../../../Icons/shrink.svg.js";import k from"../../../../Icons/copy.svg.js";import j from"../../../common/PickaxeCopyButton.js";import F from"../../../../Core/ScrollArea.js";import T from"../../../../Core/TipContainer.js";import O from"../MermaidRenderer.js";import A from"./SaveMenu.js";import S from"./ViewOptions.js";import D from"csv-to-markdown-table";import N from"copy-to-clipboard";import E from"../../../../../common/cn.js";const B="development"===process.env.NODE_ENV?"http://localhost:3007":"https://user-content.pickaxe.co",$=$=>{var z,M,W,L;const{artifacts:P,currentPopupType:R,currentArtifact:H,setCurrentArtifact:I}=l(),{onLoadArtifact:_}=d(),{styles:V,colors:X,translations:q}=c(),[G,J]=n("code"),[K,Q]=n(!1),U=r(),Y=r(null),Z=r(null),ee=p({contentRef:U}),{scrollContainerRef:oe,scrollStartSession:te,scrollToBottom:ne,scrollEndSession:re}=s({auto:"code"===G}),ie=null!==(M=null===(z=$.styling)||void 0===z?void 0:z.styles)&&void 0!==M?M:V,ae=null!==(L=null===(W=$.styling)||void 0===W?void 0:W.colors)&&void 0!==L?L:X,le=i((()=>{var e,o,t,n,r;if(!$.artifact&&!H)return null;const i=null!==(o=null===(e=$.artifact)||void 0===e?void 0:e.id)&&void 0!==o?o:null==H?void 0:H.id,a=null!==(n=null===(t=$.artifact)||void 0===t?void 0:t.version)&&void 0!==n?n:null==H?void 0:H.version;return null!==(r=P.find((e=>e.id===i&&e.version===a)))&&void 0!==r?r:null}),[H,P,$.artifact]),ce=i((()=>le?"text/csv"===le.type?D(le.content,",",!0):"text/tab-separated-values"===le.type?D(le.content,"\t",!0):null:null),[le]),se=i((()=>(ae.secondaryText||"").toLowerCase().startsWith("#ffffff")),[null==ae?void 0:ae.secondaryText]),de=i((()=>{const e=$.artifact&&(null==H?void 0:H.id)===$.artifact.id&&(null==H?void 0:H.version)===$.artifact.version;return"inline"===$.type&&("inline-form"===R?!!H:e)}),[H,R,$.type,$.artifact]);a((()=>{e(void 0,void 0,void 0,(function*(){"inline"===$.type&&$.artifact&&(P.some((e=>$.artifact&&e.id===$.artifact.id&&e.version===$.artifact.version))||_({id:$.artifact.id,version:$.artifact.version}))}))}),[P,$.type,$.artifact]),a((()=>{if("application/vnd.pxe.code"===(null==le?void 0:le.type)&&J("code"),"finished"!==(null==le?void 0:le.status))return J("code"),te(),void ne();re(),"application/vnd.pxe.code"!==le.type&&J("render")}),[null==le?void 0:le.status,null==le?void 0:le.type]),a((()=>{var e;!Z.current||"text/html"!==(null==le?void 0:le.type)&&"application/vnd.pxe.react"!==(null==le?void 0:le.type)||null===(e=Z.current.contentWindow)||void 0===e||e.postMessage({type:"text/html"===le.type?"HTML_CODE":"REACT_CODE",content:le.content},B)}),[null==le?void 0:le.content,null==le?void 0:le.type]);const pe=()=>e(void 0,void 0,void 0,(function*(){if(!le)return;if("text/html"===le.type){const e=le.content,o=window.open("","_blank");return void(o&&(o.document.open(),o.document.write(e),o.document.close(),o.focus(),o.print()))}const e=G;"code"===e&&(J("render"),yield new Promise((e=>setTimeout(e,50)))),ee(),"code"===e&&J(e)})),me=()=>e(void 0,void 0,void 0,(function*(){if(!le)return;const e=yield y(le.content);x(e,`${le.title}.docx`)})),ue=o=>e(void 0,void 0,void 0,(function*(){var e;if(!le)return;let t={mimeType:"text/plain",extension:".txt"};switch(o){case"text/markdown":t={mimeType:"text/markdown",extension:".md"};break;case"text/html":t={mimeType:"text/html",extension:".html"};break;case"text/csv":t={mimeType:"text/csv",extension:".csv"};break;case"text/tab-separated-values":t={mimeType:"text/tab-separated-values",extension:".tsv"};break;case"image/svg+xml":case"application/vnd.pxe.mermaid":t={mimeType:"image/svg+xml",extension:".svg"};break;case"application/vnd.pxe.code":t={mimeType:`application/${le.programmingLanguage||"text"};charset=utf-8`,extension:`.${le.programmingLanguage||"txt"}`};break;case"application/vnd.pxe.react":t={mimeType:"text/typescript",extension:".tsx"};break;default:t={mimeType:"text/plain",extension:".txt"}}let n=null;if("application/vnd.pxe.mermaid"===le.type){const o=G;"code"===o&&(J("render"),yield new Promise((e=>setTimeout(e,50))));const t=null===(e=Y.current)||void 0===e?void 0:e.querySelector("svg");t&&(n=(new XMLSerializer).serializeToString(t)),"code"===o&&J(o)}const r=new Blob([null!=n?n:le.content],{type:t.mimeType});f(r,`${le.title}${t.extension}`)}));return le?o("div",Object.assign({className:E("pxe-artifact-renderer flex flex-col","inline"===$.type&&!de&&"min-h-[320px] mb-6",$.className),style:Object.assign(Object.assign({backgroundColor:ae.secondary,color:ae.secondaryText},"auto"!==R&&{borderRadius:ie.cornerRadius}),$.style)},{children:[o("div",Object.assign({className:"flex items-center gap-6 justify-between p-4 shadow-sm"},{children:[o("div",Object.assign({className:"pxe-artifact-create-header flex items-center gap-4 truncate"},{children:[(de||!R.startsWith("inline"))&&t(S,{type:le.type,view:G,colors:ae,onChange:J}),t("p",Object.assign({className:"font-semilight truncate text-xl"},{children:le.title}))]})),o("div",Object.assign({className:"flex items-center gap-4"},{children:["code"===G&&(de||!R.startsWith("inline"))&&o("button",Object.assign({className:"font-semibold text-sm select-none flex items-center gap-2 disabled:cursor-not-allowed disabled:opacity-50 shrink-0",style:{color:ae.secondaryText},disabled:K,onClick:()=>e(void 0,void 0,void 0,(function*(){try{N(le.content),Q(!0),yield new Promise((e=>setTimeout(e,1500)))}finally{Q(!1)}}))},{children:[t(k,{className:"w-5 h-5 shrink-0"}),(null==q?void 0:q.copy)||"Copy"]})),(de||!R.startsWith("inline"))&&t(A,Object.assign({variant:"anchor",className:"px-3 py-1.5 shrink-0",data:le,colors:ae,onDownload:ue,onSaveAsPDF:pe,onSaveAsDOCX:me},{children:t("span",Object.assign({className:"shrink-0 font-semibold text-sm select-none"},{children:(null==q?void 0:q["save-as"])||"Save as"}))})),t("button",Object.assign({style:{color:ae.secondaryText},onClick:()=>{"inline"!==$.type||!$.artifact||de?I(null):I({id:$.artifact.id,version:$.artifact.version})}},{children:"inline"===$.type?t(de?w:C,{className:"w-6 h-6 shrink-0"}):t(h,{className:"w-6 h-6 shrink-0"})}))]}))]})),t("div",Object.assign({className:"flex flex-col flex-grow @container/pickaxe-artifact"},{children:o(F,Object.assign({ref:oe,innerClassName:"flex-grow w-full"},{children:["render"===G&&"application/vnd.pxe.code"!==le.type?t("div",Object.assign({ref:U,className:E("p-4 pb-6 flex-grow flex flex-col","application/vnd.pxe.react"===le.type&&"p-0","text/html"===le.type&&"p-0","text/csv"===le.type&&"p-0")},{children:"text/markdown"===le.type||"text/csv"===le.type||"text/tab-separated-values"===le.type||"image/svg+xml"===le.type?t(m,Object.assign({theme:ie.theme,colors:ae},{children:t(u,{value:null!=ce?ce:le.content,className:E("px-6 @[767px]/pickaxe-artifact:px-11 mx-auto w-full",("text/csv"===le.type||"text/tab-separated-values"===le.type)&&"px-4 @[767px]/pickaxe-artifact:px-4 mx-0"),style:{flex:1}})})):"application/vnd.pxe.mermaid"===le.type?t(O,{ref:Y,id:`mermaid-${le.id}-${le.version}`,data:le.content}):"text/html"===le.type||"application/vnd.pxe.react"===le.type?t("iframe",Object.assign({ref:Z,title:le.title,src:`${B}/${"text/html"===le.type?"html":"react"}?theme=${se?"dark":"light"}&bg=${ae.secondary}&accent=${ae.accent}`,style:{width:"100%",flex:1,border:"none",backgroundColor:null==ae?void 0:ae.secondary},loading:"lazy",allow:"fullscreen; camera; microphone; gyroscope; accelerometer; geolocation; clipboard-write; autoplay",sandbox:"allow-scripts allow-same-origin allow-forms allow-downloads allow-popups-to-escape-sandbox allow-pointer-lock allow-popups allow-modals allow-orientation-lock allow-presentation",onLoad:e=>{const o=e.target;setTimeout((()=>{var e;try{null===(e=o.contentWindow)||void 0===e||e.postMessage({type:"text/html"===le.type?"HTML_CODE":"REACT_CODE",content:le.content},B)}catch(e){console.error("Error sending message to iframe:",e)}}),100),ne()}},{children:"Iframe is not supported, please view this artifact in a browser that supports it."})):null})):t(v,Object.assign({PreTag:"div",language:"text/markdown"===le.type?"markdown":"text/html"===le.type||"image/svg+xml"===le.type?"xml":"application/vnd.pxe.react"===le.type?"typescript":le.programmingLanguage,showLineNumbers:!0,customStyle:{margin:0,flex:1},style:Object.assign({'code[class*="language-"]':Object.assign(Object.assign({color:null==ae?void 0:ae.secondaryText},se&&{textShadow:"0 1px rgba(0, 0, 0, 0.3)"}),{fontFamily:"Inconsolata, Monaco, Consolas, 'Courier New', Courier, monospace",direction:"ltr",textAlign:"left",whiteSpace:"pre",wordSpacing:"normal",wordBreak:"normal",lineHeight:"1.5",MozTabSize:"4",OTabSize:"4",tabSize:"4",WebkitHyphens:"none",MozHyphens:"none",msHyphens:"none",hyphens:"none"}),'pre[class*="language-"]':Object.assign(Object.assign({color:null==ae?void 0:ae.secondaryText},se&&{textShadow:"0 1px rgba(0, 0, 0, 0.3)"}),{fontFamily:"Inconsolata, Monaco, Consolas, 'Courier New', Courier, monospace",direction:"ltr",textAlign:"left",whiteSpace:"pre",wordSpacing:"normal",wordBreak:"normal",lineHeight:"1.5",MozTabSize:"4",OTabSize:"4",tabSize:"4",WebkitHyphens:"none",MozHyphens:"none",msHyphens:"none",hyphens:"none",borderRadius:"0.3em",minWidth:0,paddingLeft:"1em",paddingRight:"1em",paddingBottom:"2em",background:null==ae?void 0:ae.secondary}),':not(pre) > code[class*="language-"]':{background:null==ae?void 0:ae.secondary,padding:".1em",borderRadius:".3em"},comment:{color:"#7C7C7C"},prolog:{color:"#7C7C7C"},doctype:{color:"#7C7C7C"},cdata:{color:"#7C7C7C"},punctuation:{color:"#c5c8c6"},".namespace":{opacity:".7"},property:{color:"#96CBFE"},keyword:{color:"#96CBFE"},tag:{color:"#96CBFE"},"class-name":{color:"#FFFFB6"},boolean:{color:"#99CC99"},constant:{color:"#99CC99"},symbol:{color:"#f92672"},deleted:{color:"#f92672"},number:{color:"#FF73FD"},selector:{color:"#A8FF60"},"attr-name":{color:"#A8FF60"},string:{color:"#A8FF60"},char:{color:"#A8FF60"},builtin:{color:"#A8FF60"},inserted:{color:"#A8FF60"},variable:{color:"#C6C5FE"},operator:{color:"#EDEDED"},entity:{color:"#FFFFB6",cursor:"help"},url:{color:"#96CBFE"},".language-css .token.string":{color:"#87C38A"},".style .token.string":{color:"#87C38A"},atrule:{color:"#F9EE98"},"attr-value":{color:"#F9EE98"},function:{color:"#DAD085"},regex:{color:"#E9C062"},important:{color:null==ae?void 0:ae.secondaryText,fontWeight:"bold"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}},!se&&{comment:{color:"#7D8B99"},prolog:{color:"#7D8B99"},doctype:{color:"#7D8B99"},cdata:{color:"#7D8B99"},punctuation:{color:"#4D4D4C"},property:{color:"#4078F2"},keyword:{color:"#8959A8"},tag:{color:"#8959A8"},"class-name":{color:"#D75F00"},boolean:{color:"#0086B3"},constant:{color:"#0086B3"},symbol:{color:"#990055"},deleted:{color:"#990000"},number:{color:"#005CC5"},selector:{color:"#63A35C"},"attr-name":{color:"#63A35C"},string:{color:"#50A14F"},char:{color:"#50A14F"},builtin:{color:"#50A14F"},inserted:{color:"#50A14F"},variable:{color:"#A626A4"},operator:{color:"#4D4D4C"},entity:{color:"#E45649",cursor:"help"},url:{color:"#4078F2"},".language-css .token.string":{color:"#50A14F"},".style .token.string":{color:"#50A14F"},atrule:{color:"#C18401"},"attr-value":{color:"#986801"},function:{color:"#005CC5"},regex:{color:"#D16969"},important:{color:null==ae?void 0:ae.secondaryText,fontWeight:"bold"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}})},{children:le.content})),t(g,{})]}))})),"inline"===$.type&&!de&&o("div",Object.assign({className:"flex items-center gap-4 p-4 pt-6"},{children:[t(T,Object.assign({id:`artifact-copy-${le.id}-${le.version}`,tip:(null==q?void 0:q.copy)||"Copy",style:{padding:"0.25rem 0.5rem",backgroundColor:ae.secondary,color:ae.secondaryText,fontSize:"12px"},align:"bottom"},{children:t(j,{color:ae.secondaryText,text:le.content,className:"opacity-100",iconClassName:"w-5 h-5"})})),t(T,Object.assign({id:`artifact-save-${le.id}-${le.version}`,tip:(null==q?void 0:q.save)||"Save",style:{padding:"0.25rem 0.5rem",backgroundColor:ae.secondary,color:ae.secondaryText,fontSize:"12px"},align:"bottom"},{children:t(A,Object.assign({data:le,colors:ae,onDownload:ue,onSaveAsPDF:pe,onSaveAsDOCX:me},{children:t("button",Object.assign({style:{color:ae.secondaryText}},{children:t(b,{className:"w-5 h-5 shrink-0"})}))}))}))]}))]})):null};export{$ as default};
1
+ import{__awaiter as e}from"../../../../../_virtual/_tslib.js";import{jsxs as o,jsx as t}from"react/jsx-runtime";import{useState as n,useRef as i,useMemo as r,useEffect as a}from"react";import{useArtifactContext as l}from"../hooks/useArtifactContext.js";import{usePickaxeContext as c}from"../../../../../hooks/pickaxe/usePickaxeContext.js";import{useScroll as s}from"../../Scroll/hooks/useScroll.js";import{useArtifact as d}from"../hooks/useArtifact.js";import{useReactToPrint as p}from"react-to-print";import{PickaxeMarkdown as m}from"../../../common/PickaxeMarkdown/index.js";import{PickaxeMarkdownRenderer as u}from"../../../common/PickaxeMarkdown/Renderer.js";import{Prism as y}from"react-syntax-highlighter";import{convertMarkdownToDocx as v,downloadDocx as x}from"../../../../../common/docx/index.js";import f from"file-saver";import g from"../../Scroll/ScrollLockView.js";import b from"../../../../Icons/expand.svg.js";import h from"../../../../Icons/shrink.svg.js";import w from"../../../../Icons/collapse-new.svg.js";import C from"../../../../Icons/copy-new.svg.js";import k from"../../../../Icons/download-new.svg.js";import j from"../../../common/PickaxeCopyButton.js";import F from"../../../../Core/ScrollArea.js";import T from"../../../../Core/TipContainer.js";import O from"../MermaidRenderer.js";import A from"./SaveMenu.js";import S from"./ViewOptions.js";import D from"csv-to-markdown-table";import N from"copy-to-clipboard";import E from"../../../../../common/cn.js";const B="development"===process.env.NODE_ENV?"http://localhost:3007":"https://user-content.pickaxe.co",$=$=>{var z,M,L,P;const{artifacts:R,currentPopupType:W,currentArtifact:H,setCurrentArtifact:I}=l(),{onLoadArtifact:_}=d(),{styles:V,colors:X,translations:q}=c(),[G,J]=n("code"),[K,Q]=n(!1),U=i(),Y=i(null),Z=i(null),ee=p({contentRef:U}),{scrollContainerRef:oe,scrollStartSession:te,scrollToBottom:ne,scrollEndSession:ie}=s({auto:"code"===G}),re=null!==(M=null===(z=$.styling)||void 0===z?void 0:z.styles)&&void 0!==M?M:V,ae=null!==(P=null===(L=$.styling)||void 0===L?void 0:L.colors)&&void 0!==P?P:X,le=r((()=>{var e,o,t,n,i;if(!$.artifact&&!H)return null;const r=null!==(o=null===(e=$.artifact)||void 0===e?void 0:e.id)&&void 0!==o?o:null==H?void 0:H.id,a=null!==(n=null===(t=$.artifact)||void 0===t?void 0:t.version)&&void 0!==n?n:null==H?void 0:H.version;return null!==(i=R.find((e=>e.id===r&&e.version===a)))&&void 0!==i?i:null}),[H,R,$.artifact]),ce=r((()=>le?"text/csv"===le.type?D(le.content,",",!0):"text/tab-separated-values"===le.type?D(le.content,"\t",!0):null:null),[le]),se=r((()=>(ae.secondaryText||"").toLowerCase().startsWith("#ffffff")),[null==ae?void 0:ae.secondaryText]),de=r((()=>{const e=$.artifact&&(null==H?void 0:H.id)===$.artifact.id&&(null==H?void 0:H.version)===$.artifact.version;return"inline"===$.type&&("inline-form"===W?!!H:e)}),[H,W,$.type,$.artifact]);a((()=>{e(void 0,void 0,void 0,(function*(){"inline"===$.type&&$.artifact&&(R.some((e=>$.artifact&&e.id===$.artifact.id&&e.version===$.artifact.version))||_({id:$.artifact.id,version:$.artifact.version}))}))}),[R,$.type,$.artifact]),a((()=>{if("application/vnd.pxe.code"===(null==le?void 0:le.type)&&J("code"),"finished"!==(null==le?void 0:le.status))return J("code"),te(),void ne();ie(),"application/vnd.pxe.code"!==le.type&&J("render")}),[null==le?void 0:le.status,null==le?void 0:le.type]),a((()=>{var e;!Z.current||"text/html"!==(null==le?void 0:le.type)&&"application/vnd.pxe.react"!==(null==le?void 0:le.type)||null===(e=Z.current.contentWindow)||void 0===e||e.postMessage({type:"text/html"===le.type?"HTML_CODE":"REACT_CODE",content:le.content},B)}),[null==le?void 0:le.content,null==le?void 0:le.type]);const pe=()=>e(void 0,void 0,void 0,(function*(){if(!le)return;if("text/html"===le.type){const e=le.content,o=window.open("","_blank");return void(o&&(o.document.open(),o.document.write(e),o.document.close(),o.focus(),o.print()))}const e=G;"code"===e&&(J("render"),yield new Promise((e=>setTimeout(e,50)))),ee(),"code"===e&&J(e)})),me=()=>e(void 0,void 0,void 0,(function*(){if(!le)return;const e=yield v(le.content);x(e,`${le.title}.docx`)})),ue=o=>e(void 0,void 0,void 0,(function*(){var e;if(!le)return;let t={mimeType:"text/plain",extension:".txt"};switch(o){case"text/markdown":t={mimeType:"text/markdown",extension:".md"};break;case"text/html":t={mimeType:"text/html",extension:".html"};break;case"text/csv":t={mimeType:"text/csv",extension:".csv"};break;case"text/tab-separated-values":t={mimeType:"text/tab-separated-values",extension:".tsv"};break;case"image/svg+xml":case"application/vnd.pxe.mermaid":t={mimeType:"image/svg+xml",extension:".svg"};break;case"application/vnd.pxe.code":t={mimeType:`application/${le.programmingLanguage||"text"};charset=utf-8`,extension:`.${le.programmingLanguage||"txt"}`};break;case"application/vnd.pxe.react":t={mimeType:"text/typescript",extension:".tsx"};break;default:t={mimeType:"text/plain",extension:".txt"}}let n=null;if("application/vnd.pxe.mermaid"===le.type){const o=G;"code"===o&&(J("render"),yield new Promise((e=>setTimeout(e,50))));const t=null===(e=Y.current)||void 0===e?void 0:e.querySelector("svg");t&&(n=(new XMLSerializer).serializeToString(t)),"code"===o&&J(o)}const i=new Blob([null!=n?n:le.content],{type:t.mimeType});f(i,`${le.title}${t.extension}`)})),ye=()=>{"inline"!==$.type||!$.artifact||de?I(null):I({id:$.artifact.id,version:$.artifact.version})},ve=de||!W.startsWith("inline");return le?o("div",Object.assign({className:E("pxe-artifact-renderer flex flex-col","inline"===$.type&&!de&&"min-h-[320px] mb-6",$.className),style:Object.assign(Object.assign({backgroundColor:ae.secondary,color:ae.secondaryText},"auto"!==W&&{borderRadius:re.cornerRadius}),$.style)},{children:[o("div",Object.assign({className:"flex items-center gap-4 justify-between px-4 py-3 shadow-sm"},{children:[o("div",Object.assign({className:"pxe-artifact-create-header flex min-w-0 items-center gap-4"},{children:[ve&&t(S,{type:le.type,view:G,colors:ae,onChange:J}),t("p",Object.assign({className:"w-[220px] max-w-full truncate text-[18px] font-semilight leading-tight",title:le.title},{children:le.title}))]})),"inline"===$.type&&!ve&&t("div",Object.assign({className:"shrink-0"},{children:t("button",Object.assign({type:"button",style:{color:ae.secondaryText},onClick:ye,title:(null==q?void 0:q.expand)||"Expand","aria-label":(null==q?void 0:q.expand)||"Expand artifact"},{children:t(de?h:b,{className:"w-6 h-6 shrink-0"})}))}))]})),ve&&t("div",Object.assign({className:"flex items-center justify-between border-y px-4 py-2.5",style:{borderColor:ae.primary}},{children:o("div",Object.assign({className:"flex items-center gap-3"},{children:[t("button",Object.assign({type:"button",className:"opacity-70 transition-opacity duration-300 ease-in-out hover:opacity-100",style:{color:ae.secondaryText},onClick:ye,title:"inline"===$.type?(null==q?void 0:q.collapse)||"Collapse":(null==q?void 0:q.close)||"Close","aria-label":"inline"===$.type?(null==q?void 0:q.collapse)||"Collapse artifact":(null==q?void 0:q.close)||"Close artifact"},{children:t(w,{className:"h-5 w-5 shrink-0"})})),t("button",Object.assign({type:"button",className:"opacity-70 transition-opacity duration-300 ease-in-out hover:opacity-100 disabled:cursor-not-allowed disabled:opacity-50",style:{color:ae.secondaryText},disabled:K,onClick:()=>e(void 0,void 0,void 0,(function*(){if(le)try{N(le.content),Q(!0),yield new Promise((e=>setTimeout(e,1500)))}finally{Q(!1)}})),title:(null==q?void 0:q.copy)||"Copy","aria-label":(null==q?void 0:q.copy)||"Copy artifact content"},{children:t(C,{className:"h-[18px] w-[18px] shrink-0"})})),t(A,Object.assign({data:le,colors:ae,onDownload:ue,onSaveAsPDF:pe,onSaveAsDOCX:me,className:"opacity-70 transition-opacity duration-300 ease-in-out hover:opacity-100"},{children:t("div",Object.assign({role:"button",className:"cursor-pointer",style:{color:ae.secondaryText},title:(null==q?void 0:q.save)||"Download","aria-label":(null==q?void 0:q.save)||"Download artifact content"},{children:t(k,{className:"h-6 w-6 shrink-0"})}))}))]}))})),t("div",Object.assign({className:"flex flex-col flex-grow @container/pickaxe-artifact"},{children:o(F,Object.assign({ref:oe,innerClassName:"flex-grow w-full"},{children:["render"===G&&"application/vnd.pxe.code"!==le.type?t("div",Object.assign({ref:U,className:E("p-4 pb-6 flex-grow flex flex-col","application/vnd.pxe.react"===le.type&&"p-0","text/html"===le.type&&"p-0","text/csv"===le.type&&"p-0")},{children:"text/markdown"===le.type||"text/csv"===le.type||"text/tab-separated-values"===le.type||"image/svg+xml"===le.type?t(m,Object.assign({theme:re.theme,colors:ae},{children:t(u,{value:null!=ce?ce:le.content,className:E("px-6 @[767px]/pickaxe-artifact:px-11 mx-auto w-full",("text/csv"===le.type||"text/tab-separated-values"===le.type)&&"px-4 @[767px]/pickaxe-artifact:px-4 mx-0"),style:{flex:1}})})):"application/vnd.pxe.mermaid"===le.type?t(O,{ref:Y,id:`mermaid-${le.id}-${le.version}`,data:le.content}):"text/html"===le.type||"application/vnd.pxe.react"===le.type?t("iframe",Object.assign({ref:Z,title:le.title,src:`${B}/${"text/html"===le.type?"html":"react"}?theme=${se?"dark":"light"}&bg=${ae.secondary}&accent=${ae.accent}`,style:{width:"100%",flex:1,border:"none",backgroundColor:null==ae?void 0:ae.secondary},loading:"lazy",allow:"fullscreen; camera; microphone; gyroscope; accelerometer; geolocation; clipboard-write; autoplay",sandbox:"allow-scripts allow-same-origin allow-forms allow-downloads allow-popups-to-escape-sandbox allow-pointer-lock allow-popups allow-modals allow-orientation-lock allow-presentation",onLoad:e=>{const o=e.target;setTimeout((()=>{var e;try{null===(e=o.contentWindow)||void 0===e||e.postMessage({type:"text/html"===le.type?"HTML_CODE":"REACT_CODE",content:le.content},B)}catch(e){console.error("Error sending message to iframe:",e)}}),100),ne()}},{children:"Iframe is not supported, please view this artifact in a browser that supports it."})):null})):t(y,Object.assign({PreTag:"div",language:"text/markdown"===le.type?"markdown":"text/html"===le.type||"image/svg+xml"===le.type?"xml":"application/vnd.pxe.react"===le.type?"typescript":le.programmingLanguage,showLineNumbers:!0,customStyle:{margin:0,flex:1},style:Object.assign({'code[class*="language-"]':Object.assign(Object.assign({color:null==ae?void 0:ae.secondaryText},se&&{textShadow:"0 1px rgba(0, 0, 0, 0.3)"}),{fontFamily:"Inconsolata, Monaco, Consolas, 'Courier New', Courier, monospace",direction:"ltr",textAlign:"left",whiteSpace:"pre",wordSpacing:"normal",wordBreak:"normal",lineHeight:"1.5",MozTabSize:"4",OTabSize:"4",tabSize:"4",WebkitHyphens:"none",MozHyphens:"none",msHyphens:"none",hyphens:"none"}),'pre[class*="language-"]':Object.assign(Object.assign({color:null==ae?void 0:ae.secondaryText},se&&{textShadow:"0 1px rgba(0, 0, 0, 0.3)"}),{fontFamily:"Inconsolata, Monaco, Consolas, 'Courier New', Courier, monospace",direction:"ltr",textAlign:"left",whiteSpace:"pre",wordSpacing:"normal",wordBreak:"normal",lineHeight:"1.5",MozTabSize:"4",OTabSize:"4",tabSize:"4",WebkitHyphens:"none",MozHyphens:"none",msHyphens:"none",hyphens:"none",borderRadius:"0.3em",minWidth:0,paddingLeft:"1em",paddingRight:"1em",paddingBottom:"2em",background:null==ae?void 0:ae.secondary}),':not(pre) > code[class*="language-"]':{background:null==ae?void 0:ae.secondary,padding:".1em",borderRadius:".3em"},comment:{color:"#7C7C7C"},prolog:{color:"#7C7C7C"},doctype:{color:"#7C7C7C"},cdata:{color:"#7C7C7C"},punctuation:{color:"#c5c8c6"},".namespace":{opacity:".7"},property:{color:"#96CBFE"},keyword:{color:"#96CBFE"},tag:{color:"#96CBFE"},"class-name":{color:"#FFFFB6"},boolean:{color:"#99CC99"},constant:{color:"#99CC99"},symbol:{color:"#f92672"},deleted:{color:"#f92672"},number:{color:"#FF73FD"},selector:{color:"#A8FF60"},"attr-name":{color:"#A8FF60"},string:{color:"#A8FF60"},char:{color:"#A8FF60"},builtin:{color:"#A8FF60"},inserted:{color:"#A8FF60"},variable:{color:"#C6C5FE"},operator:{color:"#EDEDED"},entity:{color:"#FFFFB6",cursor:"help"},url:{color:"#96CBFE"},".language-css .token.string":{color:"#87C38A"},".style .token.string":{color:"#87C38A"},atrule:{color:"#F9EE98"},"attr-value":{color:"#F9EE98"},function:{color:"#DAD085"},regex:{color:"#E9C062"},important:{color:null==ae?void 0:ae.secondaryText,fontWeight:"bold"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}},!se&&{comment:{color:"#7D8B99"},prolog:{color:"#7D8B99"},doctype:{color:"#7D8B99"},cdata:{color:"#7D8B99"},punctuation:{color:"#4D4D4C"},property:{color:"#4078F2"},keyword:{color:"#8959A8"},tag:{color:"#8959A8"},"class-name":{color:"#D75F00"},boolean:{color:"#0086B3"},constant:{color:"#0086B3"},symbol:{color:"#990055"},deleted:{color:"#990000"},number:{color:"#005CC5"},selector:{color:"#63A35C"},"attr-name":{color:"#63A35C"},string:{color:"#50A14F"},char:{color:"#50A14F"},builtin:{color:"#50A14F"},inserted:{color:"#50A14F"},variable:{color:"#A626A4"},operator:{color:"#4D4D4C"},entity:{color:"#E45649",cursor:"help"},url:{color:"#4078F2"},".language-css .token.string":{color:"#50A14F"},".style .token.string":{color:"#50A14F"},atrule:{color:"#C18401"},"attr-value":{color:"#986801"},function:{color:"#005CC5"},regex:{color:"#D16969"},important:{color:null==ae?void 0:ae.secondaryText,fontWeight:"bold"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}})},{children:le.content})),t(g,{})]}))})),"inline"===$.type&&!de&&o("div",Object.assign({className:"flex items-center gap-4 p-4 pt-6"},{children:[t(T,Object.assign({id:`artifact-copy-${le.id}-${le.version}`,tip:(null==q?void 0:q.copy)||"Copy",style:{padding:"0.25rem 0.5rem",backgroundColor:ae.secondary,color:ae.secondaryText,fontSize:"12px"},align:"bottom"},{children:t(j,{color:ae.secondaryText,text:le.content,className:"opacity-100",iconClassName:"w-5 h-5"})})),t(T,Object.assign({id:`artifact-save-${le.id}-${le.version}`,tip:(null==q?void 0:q.save)||"Save",style:{padding:"0.25rem 0.5rem",backgroundColor:ae.secondary,color:ae.secondaryText,fontSize:"12px"},align:"bottom"},{children:t(A,Object.assign({data:le,colors:ae,onDownload:ue,onSaveAsPDF:pe,onSaveAsDOCX:me},{children:t("button",Object.assign({style:{color:ae.secondaryText}},{children:t(k,{className:"w-5 h-5 shrink-0"})}))}))}))]}))]})):null};export{$ as default};
@@ -1 +1 @@
1
- import{jsx as e}from"react/jsx-runtime";import{useState as s,createContext as n}from"react";const t=n({}),i=({children:n})=>{const[i,o]=s(""),[r,g]=s(null),[d,a]=s(!1),[l,I]=s(!1),[u,c]=s(!1),[m,p]=s(!1);return e(t.Provider,Object.assign({value:{emailInput:i,token:r,isLoggedIn:!!r,isLoggedOut:!r,isLoggingIn:d,isSending:l,isResendDisabled:u,isSent:m,setEmailInput:o,setToken:g,setIsLoggingIn:a,setIsSending:I,setIsResendDisabled:c,setIsSent:p}},{children:n}))};export{t as AuthContext,i as default};
1
+ import{jsx as e}from"react/jsx-runtime";import{useState as s,createContext as t}from"react";const i=t({}),n=({children:t})=>{const[n,r]=s(""),[g,d]=s(null),[l,o]=s(null),[c,u]=s(!1),[a,I]=s(!1),[m,p]=s(!1),[h,L]=s(!1),[S,b]=s(!1);return e(i.Provider,Object.assign({value:{emailInput:n,redirectUrl:l,token:g,isLoggedIn:!!g,isLoggedOut:!g,isLoggingIn:c,isSending:m,isResendDisabled:h,isSent:S,isPricingAuth:a,setIsPricingAuth:I,setRedirectUrl:o,setEmailInput:r,setToken:d,setIsLoggingIn:u,setIsSending:p,setIsResendDisabled:L,setIsSent:b}},{children:t}))};export{i as AuthContext,n as default};
@@ -1 +1 @@
1
- import{__awaiter as e}from"../../../../../_virtual/_tslib.js";import{useEffect as o}from"react";import{usePickaxeContext as i}from"../../../../../hooks/pickaxe/usePickaxeContext.js";import{useAuthContext as t}from"./useAuthContext.js";import{useAuthVerify as s}from"./useAuthVerify.js";import{getAuthToken as r,deleteAuthToken as n,setAuthToken as d}from"../../../../../common/utils.js";import a from"../../../../../common/api/pickaxe.js";import m from"../../../../../common/error.js";const u=()=>{const{deploymentId:u,pickaxe:l,isEmailLogin:c,setSender:f,setSenderType:p}=i(),{emailInput:g,isSending:I,isLoggedOut:k,setToken:w,setIsLoggingIn:y,setIsSending:h,setIsSent:v,setIsResendDisabled:E}=t(),S=s({token:r((null==l?void 0:l.studioid)||"")||"",enabled:c&&k,setIsLoggingIn:y});o((()=>{if("undefined"==typeof window)return;if(!S.data)return;const{success:e,token:o,error:i}=S.data;e&&!i?(w(o),f(void 0),p("STUDIO_USER")):n(`PXE-token-${null==l?void 0:l.studioid}`)}),[S.data,null==l?void 0:l.studioid]);return{onSend:o=>e(void 0,void 0,void 0,(function*(){try{if(!l)return;if(I)return;const e=g.trim().toLowerCase();if(!e)throw new Error("Email address cannot be empty.");if(!e.includes("@")||!e.includes("."))throw new Error("Please enter a valid email address.");if(!l.studioid)throw new Error(`Studio ID is missing for ${l.formid}. Please contact support.`);h(!0),o&&E(!0);const i=(yield a.post("/auth/email",Object.assign({pickaxeId:l.formid,studioId:l.studioid,email:e},u&&{deploymentId:u}))).data;if(!i.success)throw new Error(i.error||"Failed to send sign-in link.");h(!1),v(!0),o&&(yield new Promise((e=>setTimeout(e,3e4))),E(!1)),d(`PXE-token-${l.studioid}`,i.token)}catch(e){const o=m(e);alert(o)}finally{h(!1)}}))}};export{u as useAuth};
1
+ import{__awaiter as e}from"../../../../../_virtual/_tslib.js";import{useEffect as t}from"react";import{usePickaxeContext as i}from"../../../../../hooks/pickaxe/usePickaxeContext.js";import{useAuthContext as o}from"./useAuthContext.js";import{useAuthVerify as r}from"./useAuthVerify.js";import{getAuthToken as s,deleteAuthToken as n,setAuthToken as d}from"../../../../../common/utils.js";import a from"../../../../../common/api/pickaxe.js";import m from"../../../../../common/error.js";import{useResponseContext as u}from"../../../../../hooks/pickaxe/useResponseContext.js";const c=()=>{const{deploymentId:c,pickaxe:l,setSender:f,setSenderType:p}=i(),{emailInput:g,redirectUrl:k,isSending:I,isLoggedOut:h,isPricingAuth:w,setToken:j,setIsLoggingIn:v,setIsSending:x,setIsSent:y,setIsResendDisabled:S,setIsPricingAuth:E}=o(),P=r({token:s((null==l?void 0:l.studioid)||"")||"",enabled:h,setIsLoggingIn:v}),{setLimitData:b}=u();t((()=>{if("undefined"==typeof window)return;if(!P.data)return;const{success:e,token:t,error:i}=P.data;if(!e||i)return n(`PXE-token-${null==l?void 0:l.studioid}`),void E(!1);e&&t&&(j(t),f(void 0),p("STUDIO_USER"),w&&(E(!1),b(null)))}),[P.data,null==l?void 0:l.studioid]);return{onSend:t=>e(void 0,void 0,void 0,(function*(){try{if(!l)return;if(I)return;const e=g.trim().toLowerCase();if(!e)throw new Error("Email address cannot be empty.");if(!e.includes("@")||!e.includes("."))throw new Error("Please enter a valid email address.");if(!l.studioid)throw new Error(`Studio ID is missing for ${l.formid}. Please contact support.`);x(!0),t&&S(!0);const i=(yield a.post("/auth/email",Object.assign(Object.assign({pickaxeId:l.formid,studioId:l.studioid,email:e},c&&{deploymentId:c}),{redirectUrl:k}))).data;if(!i.success)throw new Error(i.error||"Failed to send sign-in link.");x(!1),y(!0),t&&(yield new Promise((e=>setTimeout(e,3e4))),S(!1)),d(`PXE-token-${l.studioid}`,i.token),E(!0)}catch(e){const t=m(e);alert(t)}finally{x(!1)}}))}};export{c as useAuth};
@@ -0,0 +1 @@
1
+ import{__awaiter as e}from"../../../../_virtual/_tslib.js";import{jsx as t,jsxs as n}from"react/jsx-runtime";import s from"../../../../common/cn.js";import{useState as i,useRef as a,useEffect as r}from"react";import{Check as o,X as l,MoreHorizontal as c}from"lucide-react";import m from"../../../Icons/trash-2.svg.js";import d from"../../../Icons/pencil.svg.js";const p=({text:e,icon:i,className:a,onClick:r})=>t("div",Object.assign({onClick:e=>{e.stopPropagation(),null==r||r()},className:s("relative flex items-center justify-center px-3 py-2 md:px-4 md:py-3 h-full shrink min-w-0 transition-all duration-200 cursor-pointer","glass",a),onMouseDown:e=>{e.preventDefault()}},{children:n("div",Object.assign({className:"flex items-center gap-2 z-20 min-w-0"},{children:[i&&t("img",{src:i,alt:"",className:"h-5 w-5 shrink-0 rounded-full object-cover"}),t("p",Object.assign({className:"text-xs md:text-sm font-medium truncate max-w-[80px] md:max-w-[150px]"},{children:e}))]}))})),u=({text:p,className:u,onRename:h,onDelete:x,isDarkGlass:f})=>{const[g,b]=i(!1),[v,w]=i(!1),[j,N]=i(p),[k,y]=i(!1),O=a(null),C=a(null);r((()=>{v||N(p)}),[p,v]),r((()=>{const e=e=>{C.current&&!C.current.contains(e.target)&&b(!1)};return document.addEventListener("mousedown",e),()=>document.removeEventListener("mousedown",e)}),[]);const D=()=>e(void 0,void 0,void 0,(function*(){j.trim()&&(y(!0),yield h(j),y(!1),w(!1))})),z=()=>{N(p),w(!1)};return n("div",Object.assign({ref:C,className:"relative z-40 h-full shrink min-w-0",onMouseDown:e=>{e.preventDefault()}},{children:[t("div",Object.assign({className:s("relative flex items-center justify-center px-3 py-2 md:px-4 md:py-3 h-full shrink min-w-0 overflow-visible transition-all duration-200 cursor-pointer group","glass",u),onClick:e=>{e.stopPropagation(),v||g?g&&b(!1):b(!0)}},{children:n("div",v?Object.assign({className:"flex items-center gap-2 z-20 min-w-[100px] md:min-w-[140px]",onClick:e=>e.stopPropagation()},{children:[t("input",{autoFocus:!0,type:"text",value:j,onChange:e=>N(e.target.value),onKeyDown:e=>{"Enter"===e.key&&D(),"Escape"===e.key&&z()},className:"bg-transparent border-b border-current text-xs md:text-sm font-medium focus:outline-none w-full min-w-[60px] md:min-w-[80px]",style:{color:"inherit"}}),t("button",Object.assign({onClick:D,disabled:k,className:"p-1 rounded hover:bg-black/10 dark:hover:bg-white/10 shrink-0"},{children:t(o,{className:"h-4 w-4"})})),t("button",Object.assign({onClick:z,disabled:k,className:"p-1 rounded hover:bg-black/10 dark:hover:bg-white/10 shrink-0"},{children:t(l,{className:"h-4 w-4"})}))]}):Object.assign({className:"flex items-center gap-2 z-20 min-w-0 max-w-[140px] md:max-w-[200px]"},{children:[t("p",Object.assign({className:"text-xs md:text-sm font-medium truncate"},{children:p})),t(c,{className:s("h-4 w-4 opacity-50 group-hover:opacity-100 transition-opacity shrink-0")})]}))})),g&&n("div",Object.assign({className:s("absolute top-full right-0 mt-2 w-48 shadow-xl z-50 rounded-[16px] overflow-hidden animate-in fade-in zoom-in-95 duration-100",f?"bg-[#313131] text-white":"bg-white text-black"),ref:O},{children:[n("button",Object.assign({onClick:e=>{e.stopPropagation(),b(!1),w(!0)},className:s("w-full text-left px-4 py-3 flex items-center gap-3 transition-colors border-b hover:opacity-70",f?"border-current":"border-[#EBEAEB]")},{children:[t(d,{className:"h-4 w-4"}),t("span",Object.assign({className:"font-medium text-sm"},{children:"Rename chat"}))]})),n("button",Object.assign({onClick:e=>{e.stopPropagation(),b(!1),x()},className:"w-full text-left px-4 py-3 flex items-center gap-3 transition-colors hover:opacity-70"},{children:[t(m,{className:"h-4 w-4"}),t("span",Object.assign({className:"font-medium text-sm"},{children:"Delete chat"}))]}))]}))]}))},h=({icon:e,className:n,onClick:i})=>t("div",Object.assign({onClick:e=>{e.stopPropagation(),null==i||i()},className:s("relative flex items-center justify-center h-full aspect-square p-2 md:p-3 shrink-0 transition-all duration-200 cursor-pointer","glass rounded-full",n),onMouseDown:e=>{e.preventDefault()}},{children:t("div",Object.assign({className:"flex items-center justify-center z-20"},{children:e}))}));export{u as EditableNavPill,h as HistoryPill,p as NavPill};
@@ -1 +1 @@
1
- import{jsxs as e,jsx as s,Fragment as i}from"react/jsx-runtime";import{useMemo as t,useEffect as a}from"react";import{usePickaxeContext as o}from"../../../../hooks/pickaxe/usePickaxeContext.js";import{useAuthContext as n}from"../../Addons/Auth/hooks/useAuthContext.js";import{useAuth as l}from"../../Addons/Auth/hooks/useAuth.js";import{useResponseContext as r}from"../../../../hooks/pickaxe/useResponseContext.js";import{useDimensionContext as c}from"../../../../hooks/pickaxe/useDimensionContext.js";import{useScrollContext as m}from"../../Addons/Scroll/hooks/useScrollContext.js";import{useStyleFontSize as d}from"../../../../hooks/studio/useStyleFontSize.js";import{useConversation as p}from"../../../../hooks/pickaxe/useConversation.js";import{useArtifactContext as u}from"../../Addons/Artifact/hooks/useArtifactContext.js";import{AnimatePresence as h,motion as f}from"framer-motion";import g from"../../../Icons/lock.svg.js";import x from"../../../Core/ErrorAlert.js";import j from"../../common/PickaxeHead.js";import b from"../../common/PickaxeEmbedHead.js";import v from"../../common/PickaxeUpgradeCard.js";import y from"../../common/PickaxeSkeleton.js";import k from"../../common/PickaxeHistoryButton.js";import w from"../../Addons/Scroll/ScrollLockView.js";import N from"../../Addons/Artifact/Renderer/index.js";import O from"./Message.js";import C from"./CustomMessage.js";import S from"../../Addons/IceBreaker/index.js";import A from"../../common/PickaxeBranding.js";import P from"../../../../common/cn.js";const I=({additionalScrollHeight:I,smitheryAuthData:H,isForceHideInfo:L,isInputFocused:R,onSubmit:D,resubmitPrompt:B})=>{var E,T,F,z,M;const{sessionId:W,deploymentType:$,pickaxe:q,translations:U,misc:V,isNewChat:_,isRtl:G,isEmbed:J,isEmailLogin:K,isShowIceBreaker:Q,setSessionId:X,setLastSessionId:Y}=o(),{emailInput:Z,isLoggedOut:ee,isSending:se,isResendDisabled:ie,isSent:te}=n(),{onSend:ae}=l(),{scrollContainerRef:oe}=m(),{messages:ne,limitData:le,error:re}=r(),{height:ce,width:me}=c(),{currentArtifact:de,chatPopupType:pe,currentPopupType:ue}=u(),he=p(),fe=d(),ge=t((()=>(null==q?void 0:q.icebreakers)?q.icebreakers.slice(0,3):[]),[null==q?void 0:q.icebreakers]),xe=t((()=>{const e=!!he.data&&he.data.messages.length>1;return!L&&he.isSuccess&&_&&!e}),[L,he.isSuccess,_,he.data]),je=t((()=>!(null==q?void 0:q.chatflag)&&(null==q?void 0:q.enablechatresponses)&&ne.length>0),[q,ne]),be=t((()=>!!he.data&&he.data.messages.some((e=>"intromessage"===e.area))),[he.data]),ve="chat-input"===$&&K&&ee&&te,ye=Q&&!R&&!be&&xe&&me>767,ke=Q&&!R&&(be||me<=767),we=()=>{Y(W),X("")};return a((()=>{oe.current&&requestAnimationFrame((()=>{oe.current&&(oe.current.scrollTop=oe.current.scrollHeight)}))}),[I,oe]),e("div",Object.assign({ref:oe,className:"flex flex-1 w-full flex-col items-center overflow-y-auto pb-4 scrollbar scrollbar-thin min-h-0 mb-4"},{children:[s(h,{children:!!de&&"inline"===ue&&s(f.div,Object.assign({className:P("absolute top-0 z-20 w-full px-4 py-2",pe),style:{height:`calc(${ce-I}px - 80px)`},initial:{opacity:0,y:-20},animate:{opacity:1,y:0},exit:{opacity:0,y:-20},transition:{duration:.2,ease:"easeOut"}},{children:s(N,{type:"inline",className:"pxe-artifact-inline h-full shadow",artifact:{id:de.id,version:de.version}})}))}),e("div",Object.assign({className:"relative flex flex-col items-center flex-grow w-full max-w-[800px]"},{children:[xe&&J&&s("div",Object.assign({className:P("absolute right-4 top-3 flex items-center gap-2","popup"===$&&"right-12")},{children:s(k,{tip:(null==U?void 0:U["chat-history"])||"Chat History",onClick:we})})),s(j,Object.assign({className:P("opacity-0 mt-[0%] transition-all duration-500 ease-in-out max-h-0 overflow-hidden max-w-[500px]",xe&&"opacity-100 mt-[10%] max-h-[100%]"),iconClassName:"duration-300 hover:opacity-90",maxDescriptionChars:500},!ve&&{onIconClick:we})),J&&!he.isLoading&&s(b,Object.assign({className:P("opacity-0 transition-all duration-500 ease-in-out h-0 w-full sticky top-0 z-10",!xe&&"opacity-100 h-[56px]"),iconClassName:"duration-300 hover:opacity-90",historyBtnTip:(null==U?void 0:U["chat-history"])||"Chat History"},!ve&&{onIconClick:we,onHistoryClick:we})),e("div",Object.assign({className:P("flex flex-col flex-grow mt-6 transition-all duration-300 ease-in-out w-full px-4",J&&!he.isLoading&&!xe&&"mt-0")},{children:[ye&&s("div",Object.assign({className:P("grid grid-cols-3 gap-4",2===ge.length&&"grid-cols-2",1===ge.length&&"grid-cols-1")},{children:s(S,{type:"center",data:ge,onSend:D})})),ve?s("div",Object.assign({className:"flex flex-col w-full"},{children:e("div",Object.assign({className:"grid grid-cols-1 gap-y-6 w-full"},{children:[s(C,Object.assign({chatRole:"user"},{children:e("div",Object.assign({className:"flex items-center gap-x-3"},{children:[s(g,{className:"h-6 w-6 shrink-0"}),s("p",Object.assign({className:"font-semilight"},{children:Z}))]}))})),s(C,Object.assign({chatRole:"assistant"},{children:e("p",Object.assign({className:"py-3 font-semilight"},{children:[`${null!==(F=null==U?void 0:U["we-sent-your-an-activation-link"])&&void 0!==F?F:"We sent you an activation link. Please be sure to check your spam folder too."} `,s("span",Object.assign({className:"underline underline-offset-2 cursor-pointer",onClick:()=>{ie||se||ae(!0)}},{children:se?null!==(z=null==U?void 0:U.resending)&&void 0!==z?z:"Resending...":null!==(M=null==U?void 0:U.resend)&&void 0!==M?M:"Resend"}))]}))}))]}))})):s(i,{children:he.isLoading&&!(null==q?void 0:q.enablechatresponses)?e("div",Object.assign({className:"grid w-full max-w-[800px] grid-cols-1 gap-y-6 px-6 pt-10"},{children:[_&&e("div",Object.assign({className:"flex flex-col items-center w-full"},{children:[s(y,{className:"w-[72px] h-[72px]"}),s(y,{className:"h-[20px] mt-6 w-full"}),s(y,{className:"h-[20px] mt-2 w-full"}),s(y,{className:"h-[20px] mt-2 w-full max-w-[400px]"})]})),s(y,{className:"h-10 w-[70%] animate-pulse justify-self-end rounded"}),s(y,{className:"h-[150px] w-[70%] animate-pulse rounded"}),s(y,{className:"h-10 w-[50%] animate-pulse justify-self-end rounded"})]})):he.isError?s("div",Object.assign({className:"flex w-full justify-center"},{children:e("p",Object.assign({className:P(fe.b2,"text-center font-semibold")},{children:["Something went wrong. Please try again, or"," ",s("a",Object.assign({href:"mailto:info@pickaxeproject.com?subject=Help",target:"_blank",rel:"noreferrer"},{children:"contact us"}))," ","for help."]}))})):he.data||je?e("div",Object.assign({className:"flex flex-col w-full flex-grow justify-between"},{children:[e("div",Object.assign({className:"grid grid-cols-1 gap-y-6 w-full"},{children:[(null!==(T=null===(E=he.data)||void 0===E?void 0:E.messages)&&void 0!==T?T:[]).map(((e,i)=>s(O,{index:i,message:e},i))),ne.map(((e,i)=>{var t,a;return s(O,{smitheryData:H,resubmitPrompt:B,index:(null!==(a=null===(t=he.data)||void 0===t?void 0:t.messages.length)&&void 0!==a?a:0)+i,message:e,isLastMessage:i===ne.length-1},i)})),le?s("div",Object.assign({className:"flex max-w-[80%] items-center gap-x-3"},{children:s(v,{})})):re?s("div",Object.assign({className:P("flex items-center gap-x-3",G?"justify-end":"justify-start")},{children:s(x,{error:re})})):null]})),e("div",Object.assign({className:P("flex flex-col",!V.isWhiteLabel||ke&&"mt-4")},{children:[!V.isWhiteLabel&&s(A,{containerClassName:P("justify-end",ke&&"mb-2")}),ke&&s("div",Object.assign({className:"flex flex-col items-end gap-2"},{children:s(S,{type:"right",data:ge,onSend:D})})),s(w,{})]}))]})):null})]}))]}))]}))};export{I as default};
1
+ import{jsxs as e,jsx as s,Fragment as i}from"react/jsx-runtime";import{useMemo as t,useEffect as a}from"react";import{usePickaxeContext as o}from"../../../../hooks/pickaxe/usePickaxeContext.js";import{useAuthContext as n}from"../../Addons/Auth/hooks/useAuthContext.js";import{useAuth as l}from"../../Addons/Auth/hooks/useAuth.js";import{useResponseContext as r}from"../../../../hooks/pickaxe/useResponseContext.js";import{useDimensionContext as c}from"../../../../hooks/pickaxe/useDimensionContext.js";import{useScrollContext as m}from"../../Addons/Scroll/hooks/useScrollContext.js";import{useStyleFontSize as d}from"../../../../hooks/studio/useStyleFontSize.js";import{useConversation as p}from"../../../../hooks/pickaxe/useConversation.js";import{useArtifactContext as u}from"../../Addons/Artifact/hooks/useArtifactContext.js";import{AnimatePresence as h,motion as f}from"framer-motion";import g from"../../../Icons/lock.svg.js";import x from"../../../Core/ErrorAlert.js";import j from"../../common/PickaxeHead.js";import b from"../../common/PickaxeEmbedHead.js";import v from"../../common/PickaxeUpgradeCard.js";import y from"../../common/PickaxeSkeleton.js";import k from"../../common/PickaxeHistoryButton.js";import w from"../../Addons/Scroll/ScrollLockView.js";import N from"../../Addons/Artifact/Renderer/index.js";import O from"./Message.js";import C from"./CustomMessage.js";import S from"../../Addons/IceBreaker/index.js";import A from"../../common/PickaxeBranding.js";import P from"../../../../common/cn.js";const I=({additionalScrollHeight:I,smitheryAuthData:H,isForceHideInfo:L,isInputFocused:R,onSubmit:D,resubmitPrompt:B})=>{var T,E,F,z,M;const{sessionId:W,deploymentType:$,pickaxe:q,translations:U,misc:V,isNewChat:_,isRtl:G,isEmbed:J,isShowIceBreaker:K,setSessionId:Q,setLastSessionId:X}=o(),{emailInput:Y,isLoggedOut:Z,isSending:ee,isResendDisabled:se,isSent:ie,isPricingAuth:te}=n(),{onSend:ae}=l(),{scrollContainerRef:oe}=m(),{messages:ne,limitData:le,error:re}=r(),{height:ce,width:me}=c(),{currentArtifact:de,chatPopupType:pe,currentPopupType:ue}=u(),he=p(),fe=d(),ge=t((()=>(null==q?void 0:q.icebreakers)?q.icebreakers.slice(0,3):[]),[null==q?void 0:q.icebreakers]),xe=t((()=>{const e=!!he.data&&he.data.messages.length>1;return!L&&he.isSuccess&&_&&!e}),[L,he.isSuccess,_,he.data]),je=t((()=>!(null==q?void 0:q.chatflag)&&(null==q?void 0:q.enablechatresponses)&&ne.length>0),[q,ne]),be=t((()=>!!he.data&&he.data.messages.some((e=>"intromessage"===e.area))),[he.data]),ve="chat-input"===$&&te&&Z&&ie,ye=K&&!R&&!be&&xe&&me>767,ke=K&&!R&&(be||me<=767),we=()=>{X(W),Q("")};return a((()=>{oe.current&&requestAnimationFrame((()=>{oe.current&&(oe.current.scrollTop=oe.current.scrollHeight)}))}),[I,oe]),e("div",Object.assign({ref:oe,className:"flex flex-1 w-full flex-col items-center overflow-y-auto pb-4 scrollbar scrollbar-thin min-h-0 mb-4"},{children:[s(h,{children:!!de&&"inline"===ue&&s(f.div,Object.assign({className:P("absolute top-0 z-20 w-full px-4 py-2",pe),style:{height:`calc(${ce-I}px - 80px)`},initial:{opacity:0,y:-20},animate:{opacity:1,y:0},exit:{opacity:0,y:-20},transition:{duration:.2,ease:"easeOut"}},{children:s(N,{type:"inline",className:"pxe-artifact-inline h-full shadow",artifact:{id:de.id,version:de.version}})}))}),e("div",Object.assign({className:"relative flex flex-col items-center flex-grow w-full max-w-[800px]"},{children:[xe&&J&&s("div",Object.assign({className:P("absolute right-4 top-3 flex items-center gap-2","popup"===$&&"right-12")},{children:s(k,{tip:(null==U?void 0:U["chat-history"])||"Chat History",onClick:we})})),s(j,Object.assign({className:P("opacity-0 mt-[0%] transition-all duration-500 ease-in-out max-h-0 overflow-hidden max-w-[500px]",xe&&"opacity-100 mt-[10%] max-h-[100%]"),iconClassName:"duration-300 hover:opacity-90",maxDescriptionChars:500},!ve&&{onIconClick:we})),J&&!he.isLoading&&s(b,Object.assign({className:P("opacity-0 transition-all duration-500 ease-in-out h-0 w-full sticky top-0 z-10",!xe&&"opacity-100 h-[56px]"),iconClassName:"duration-300 hover:opacity-90",historyBtnTip:(null==U?void 0:U["chat-history"])||"Chat History"},!ve&&{onIconClick:we,onHistoryClick:we})),e("div",Object.assign({className:P("flex flex-col flex-grow mt-6 transition-all duration-300 ease-in-out w-full px-4",J&&!he.isLoading&&!xe&&"mt-0")},{children:[ye&&s("div",Object.assign({className:P("grid grid-cols-3 gap-4",2===ge.length&&"grid-cols-2",1===ge.length&&"grid-cols-1")},{children:s(S,{type:"center",data:ge,onSend:D})})),ve?s("div",Object.assign({className:"flex flex-col w-full"},{children:e("div",Object.assign({className:"grid grid-cols-1 gap-y-6 w-full"},{children:[s(C,Object.assign({chatRole:"user"},{children:e("div",Object.assign({className:"flex items-center gap-x-3"},{children:[s(g,{className:"h-6 w-6 shrink-0"}),s("p",Object.assign({className:"font-semilight"},{children:Y}))]}))})),s(C,Object.assign({chatRole:"assistant"},{children:e("p",Object.assign({className:"py-3 font-semilight"},{children:[`${null!==(F=null==U?void 0:U["we-sent-your-an-activation-link"])&&void 0!==F?F:"We sent you an activation link. Please be sure to check your spam folder too."} `,s("span",Object.assign({className:"underline underline-offset-2 cursor-pointer",onClick:()=>{se||ee||ae(!0)}},{children:ee?null!==(z=null==U?void 0:U.resending)&&void 0!==z?z:"Resending...":null!==(M=null==U?void 0:U.resend)&&void 0!==M?M:"Resend"}))]}))}))]}))})):s(i,{children:he.isLoading&&!(null==q?void 0:q.enablechatresponses)?e("div",Object.assign({className:"grid w-full max-w-[800px] grid-cols-1 gap-y-6 px-6 pt-10"},{children:[_&&e("div",Object.assign({className:"flex flex-col items-center w-full"},{children:[s(y,{className:"w-[72px] h-[72px]"}),s(y,{className:"h-[20px] mt-6 w-full"}),s(y,{className:"h-[20px] mt-2 w-full"}),s(y,{className:"h-[20px] mt-2 w-full max-w-[400px]"})]})),s(y,{className:"h-10 w-[70%] animate-pulse justify-self-end rounded"}),s(y,{className:"h-[150px] w-[70%] animate-pulse rounded"}),s(y,{className:"h-10 w-[50%] animate-pulse justify-self-end rounded"})]})):he.isError?s("div",Object.assign({className:"flex w-full justify-center"},{children:e("p",Object.assign({className:P(fe.b2,"text-center font-semibold")},{children:["Something went wrong. Please try again, or"," ",s("a",Object.assign({href:"mailto:info@pickaxeproject.com?subject=Help",target:"_blank",rel:"noreferrer"},{children:"contact us"}))," ","for help."]}))})):he.data||je?e("div",Object.assign({className:"flex flex-col w-full flex-grow justify-between"},{children:[e("div",Object.assign({className:"grid grid-cols-1 gap-y-6 w-full"},{children:[(null!==(E=null===(T=he.data)||void 0===T?void 0:T.messages)&&void 0!==E?E:[]).map(((e,i)=>s(O,{index:i,message:e},i))),ne.map(((e,i)=>{var t,a;return s(O,{smitheryData:H,resubmitPrompt:B,index:(null!==(a=null===(t=he.data)||void 0===t?void 0:t.messages.length)&&void 0!==a?a:0)+i,message:e,isLastMessage:i===ne.length-1},i)})),le?s("div",Object.assign({className:"flex max-w-[100%] items-center gap-x-3"},{children:s(v,{})})):re?s("div",Object.assign({className:P("flex items-center gap-x-3",G?"justify-end":"justify-start")},{children:s(x,{error:re})})):null]})),e("div",Object.assign({className:P("flex flex-col",!V.isWhiteLabel||ke&&"mt-4")},{children:[!V.isWhiteLabel&&s(A,{containerClassName:P("justify-end",ke&&"mb-2")}),ke&&s("div",Object.assign({className:"flex flex-col items-end gap-2"},{children:s(S,{type:"right",data:ge,onSend:D})})),s(w,{})]}))]})):null})]}))]}))]}))};export{I as default};
@@ -1 +1 @@
1
- import{__rest as e,__awaiter as t}from"../../../_virtual/_tslib.js";import{jsx as n,jsxs as s,Fragment as o}from"react/jsx-runtime";import{forwardRef as i,useState as r,useRef as a,useMemo as l,useImperativeHandle as c,useEffect as d}from"react";import"../../../node_modules/.pnpm/regenerator-runtime@0.14.1/node_modules/regenerator-runtime/runtime.js";import u,{useSpeechRecognition as m}from"react-speech-recognition";import{usePickaxeContext as p}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as f}from"../../../hooks/pickaxe/useResponseContext.js";import{useStyleInput as h}from"../../../hooks/studio/useStyleInput.js";import{useStyleFontSize as g}from"../../../hooks/studio/useStyleFontSize.js";import{useConversation as v}from"../../../hooks/pickaxe/useConversation.js";import{useDimensionContext as b}from"../../../hooks/pickaxe/useDimensionContext.js";import{useAuthContext as y}from"../Addons/Auth/hooks/useAuthContext.js";import{useDocument as x}from"../Addons/Document/hooks/useDocument.js";import{useScroll as j}from"../Addons/Scroll/hooks/useScroll.js";import{useArtifactContext as w}from"../Addons/Artifact/hooks/useArtifactContext.js";import{useHover as O}from"../../../hooks/core/useHover.js";import{useMediaQuery as k}from"../../../hooks/core/useMediaQuery.js";import{allowedFileMimeTypes as S,allowedImageMimeTypes as N,additionalAllowedFileExtensions as I}from"../../../common/documents.js";import{createParser as C}from"eventsource-parser";import E from"../../Icons/attach-vertical.svg.js";import _ from"../../Icons/arrow-right.svg.js";import A from"../../Icons/microphone.svg.js";import T from"../../Icons/stop.svg.js";import P from"../Addons/Document/List.js";import R from"../../Core/Textarea.js";import D from"../../Core/ErrorAlert.js";import L from"../../../common/error.js";import $ from"../../../common/cn.js";const W=i((({resubmitPrompt:i,onFocus:W,onBlur:B,onInputHeightChange:H,initSmitheryAuthData:F},J)=>{var U,M,V;const{origin:K,pickaxeId:X,sessionId:z,sender:q,senderType:G,deploymentId:Q,deploymentType:Y,pickaxe:Z,styles:ee,colors:te,locale:ne,forceMobile:se,isNewChat:oe,isRtl:ie,isEmailLogin:re,isShowFeedbackMessage:ae,setIsNewChat:le,setIsShowIceBreaker:ce,onGenerateComplete:de}=p(),{token:ue,isLoggedOut:me,isSent:pe}=y(),{messages:fe,limits:he,isGenerating:ge,setMessages:ve,setStatus:be,setLimitData:ye,setError:xe}=f(),{documents:je,isUploading:we,documentError:Oe,onFileUpload:ke,setDocuments:Se,setDocumentError:Ne}=x(),{scrollStartSession:Ie,scrollEndSession:Ce,scrollToBottom:Ee}=j({auto:!0}),{artifacts:_e,currentPopupType:Ae,setArtifacts:Te,setCurrentArtifact:Pe}=w(),{height:Re}=b(),De=v(),[Le,$e]=r(""),[We,Be]=r(!1),[He,Fe]=r(!1),Je=a(null),Ue=a(""),Me=a(null),Ve=a(null),Ke=a(null),Xe=a(null),ze=a(null),qe=Math.max(.4*Re,100),{transcript:Ge,listening:Qe,resetTranscript:Ye,browserSupportsSpeechRecognition:Ze}=m(),[et]=k("(max-width: 480px)"),tt=O(),{isHover:nt}=tt,st=e(tt,["isHover"]),ot=O(),{isHover:it}=ot,rt=e(ot,["isHover"]),at=O(),{isHover:lt}=at,ct=e(at,["isHover"]),dt=g(),ut=h(),mt="undefined"!=typeof window?window.location.hostname:"",pt="undefined"!=typeof window?window.location.href:"",ft="undefined"!=typeof window&&window.self!==window.top,ht=mt.includes("pickaxe.co")&&!pt.includes("https://studio.pickaxe.co/_embed")&&!ft,gt=null===(U=null==Z?void 0:Z.documentuploadtype)||void 0===U?void 0:U.startsWith("enduserupload"),vt=Ze&&(null==Z?void 0:Z.enablevoicetotext),bt="chat-input"===Y&&oe&&!pe,yt="chat-input"===Y&&re&&me&&pe,xt=null!==(M=null==Z?void 0:Z.placeholdertext)&&void 0!==M?M:ie?"بماذا تريد أن تتحدث؟":"What do you want to talk about?",jt=We||He,wt=l((()=>{var e,t,n;return!!oe&&(!!Z&&(!De.isLoading&&(!((null!==(t=null===(e=De.data)||void 0===e?void 0:e.messages.length)&&void 0!==t?t:0)>1)&&(!!(null===(n=Z.icebreakers)||void 0===n?void 0:n.length)&&(!ae&&!bt)))))}),[Z,oe,ae,bt,De.data,De.isLoading]),Ot=l((()=>{if(ge||we)return!1;const e=je.length>0&&je.every((e=>"finished"===e.status));return!(!Le.trim()&&!e)&&je.every((e=>"finished"===e.status||e.isInsertedAsRaw))}),[ge,we,Le,je]);c(J,(()=>({onSubmit:kt}))),d((()=>{ce(wt)}),[wt]),d((()=>{var e;if(i){const t=Array.from(fe),n=null===(e=t[t.length-2].parts.find((e=>"text"===e.type)))||void 0===e?void 0:e.content;kt(n,!0)}}),[i]),d((()=>{if(!Xe.current||!H)return;const e=new ResizeObserver((e=>{for(const t of e)H(t.contentRect.height)}));return e.observe(Xe.current),()=>{e.disconnect()}}),[H]),d((()=>{if(!Qe)return;const e=Ue.current?`${Ue.current} `:"";$e(`${e}${Ge}`)}),[Ge,Qe]),d((()=>{if(!Ve.current)return;(()=>{if(!Ve.current)return;let e=Ve.current.scrollHeight>52;Le.includes("\n")||je.length?e=!0:Le.trim()||(e=!1),Be(e)})()}),[Le,je]),d((()=>{const e=Ve.current,t=Ke.current;if(!e||!t||We||Le.includes("\n"))return void Fe(!1);const n=window.getComputedStyle(e),s=`${n.fontStyle} ${n.fontVariant} ${n.fontWeight} ${n.fontSize} / ${n.lineHeight} ${n.fontFamily}`,o=document.createElement("span");Object.assign(o.style,{font:s,letterSpacing:n.letterSpacing,position:"absolute",visibility:"hidden",whiteSpace:"nowrap",top:"0",left:"0"}),o.textContent=Le||xt,document.body.appendChild(o);const i=o.offsetWidth;o.remove();const r=parseFloat(n.paddingLeft)||0,a=parseFloat(n.paddingRight)||0,l=e.clientWidth-r-a-t.offsetWidth;Fe(i>l)}),[Le,We,xt]);const kt=(e,n=!1)=>t(void 0,void 0,void 0,(function*(){var t,s,o;try{if(ge||we)return;const i=je.filter((e=>"finished"===e.status&&!e.isInsertedAsRaw)),r=i.map((e=>e.documentId)).filter(Boolean),a=i.filter((e=>"image"===e.type)).map((e=>{const t=e.name.split(".").pop()||"";return{documentId:e.documentId,extension:t}})),l=r.length>0,c=null!=e?e:Le;if(!c&&!l)return;xe(""),Ne(""),ye(null),$e(""),le(!1),be("fetching"),Ie(),Ee();const d=null!==(s=null===(t=null==Z?void 0:Z.documentuploadtype)||void 0===t?void 0:t.startsWith("enduserupload"))&&void 0!==s&&s&&r.length>0,u=[...n?Array.from(fe.slice(0,fe.length-1)):Array.from(fe),...n?[]:[{id:fe.length+1,role:"user",parts:[{type:"text",content:c,isVisible:!0}],documentIds:d?r:[]}],{id:fe.length+(n?0:2),role:"assistant",parts:[],documentIds:[]}];ve(u),Ee(),d&&Se([]);const m=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API_URL}/submit`,Object.assign({method:"POST",body:JSON.stringify(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({origin:K,pickaxeId:X,sessionId:z,senderType:G,value:c},d&&{documentIds:r}),q&&{sender:q}),ue&&{studioSessionToken:ue}),Q&&{deploymentId:Q}),a.length>0&&{uploadedModelImages:a})),headers:Object.assign(Object.assign({},(!process.env.NODE_ENV||"development"===process.env.NODE_ENV)&&Object.assign({},process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN&&{"x-pickaxe-session-token":process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN})),{"x-request-sent-at":(new Date).toISOString()})},ht&&{credentials:"include"})),p=yield m.json();if(!p.success)throw new Error(p.error||"Failed to start generation");const f=p.submissionId;be("streaming"),ze.current=new AbortController;const h=u.length-1,g=[];let v=[...null!=_e?_e:[]],b=0,y=!1,x="";for(;!y;)try{const e=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API_URL}/stream/${f}?index=${b}`,{signal:null===(o=ze.current)||void 0===o?void 0:o.signal,headers:{"Cache-Control":"no-cache",Connection:"keep-alive"}});if(!e.body)throw new Error("No response body");const t=e.body.getReader();Me.current=t;const n=new TextDecoder,s=C({onEvent:e=>{var t,n;if(e.event&&"ping"!==e.event&&b++,"stop"!==e.event){if("error"===e.event){const t=JSON.parse(e.data).error||"Something went wrong.";return xe(t),void(y=!0)}if("delta"===e.event){const s=JSON.parse(e.data);if("data-error"===s.type&&F){const e=s.data.error;if("string"==typeof e){if(/['"]type['"]\s*:\s*['"]unauthorized_smithery['"]/.test(e)){const t=e.match(/['"]qualifiedName['"]\s*:\s*['"]([^'"]+)['"]/),n=e.match(/['"]serverId['"]\s*:\s*['"]([^'"]+)['"]/),s=e.match(/['"]name['"]\s*:\s*['"]([^'"]+)['"]/);if(t&&t[1]&&n&&n[1]&&s&&s[1])throw y=!0,F({smitheryId:t[1],serverId:n[1],name:s[1]}),new Error("STOP_STREAM")}}else if("object"==typeof e&&null!==e){const t=e;if("unauthorized_smithery"===t.type&&t.qualifiedName&&t.serverId&&t.name)throw y=!0,F({smitheryId:t.qualifiedName,serverId:t.serverId,name:t.name}),new Error("STOP_STREAM")}}else if("text-start"===s.type)x="",g.push({type:"text",content:"",isVisible:null===(t=s.isVisible)||void 0===t||t});else if("text-delta"===s.type)x+=s.delta,g[g.length-1].content=x;else if("text-end"===s.type)x="";else if("reasoning-start"===s.type)x="",g.push({type:"reasoning",content:"",isVisible:null===(n=s.isVisible)||void 0===n||n});else if("reasoning-delta"===s.type)x+=s.delta,g[g.length-1].content=x;else if("reasoning-end"===s.type)x="";else if(s.type.startsWith("data-")){const e=s;g.push({type:e.type,content:JSON.stringify(e.data),isVisible:!0})}ve([...u.slice(0,h),Object.assign(Object.assign({},u[u.length-1]),{id:fe.length+1,role:"assistant",parts:g})])}else if("artifact_created"===e.event){const t=JSON.parse(e.data);v=v.filter((e=>!(e.id===t.id&&e.version===t.version))),v.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),Te([...v]),Ae.startsWith("inline")||Pe({id:t.id,version:t.version})}else if("artifact_updated"===e.event){const t=JSON.parse(e.data);v=v.filter((e=>!(e.id===t.id&&e.version===t.version))),v.push(Object.assign(Object.assign({},t),{content:"",status:"updating"})),Te(v),Ae.startsWith("inline")||Pe({id:t.id,version:t.version})}else if("artifact_rewrite"===e.event){const t=JSON.parse(e.data);v=v.filter((e=>!(e.id===t.id&&e.version===t.version))),v.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),Te(v),Ae.startsWith("inline")||Pe({id:t.id,version:t.version})}else if("artifact_content"===e.event){const t=JSON.parse(e.data),n=t.token.replace(/\u200B/g,"");v=v.map((e=>e.id===t.id&&e.version===t.version?Object.assign(Object.assign({},e),{content:e.content+n,status:"streaming"}):e)),Te(v)}else if("artifact_finished"===e.event){const t=JSON.parse(e.data);Te(v.map((e=>e.id===t.id?Object.assign(Object.assign({},e),{status:"finished"}):e)))}else if("error"===e.event){const t=JSON.parse(e.data);xe(t.error||"Something went wrong, please try again.")}else"stop"===e.event&&(y=!0)}else y=!0}});for(;;){const{value:e,done:o}=yield t.read();if(o)break;s.feed(n.decode(e))}y||(yield new Promise((e=>setTimeout(e,1e3))))}catch(e){if("STOP_STREAM"===e.message||"AbortError"===e.name)return void(y=!0);console.warn("Stream connection lost, retrying...",e),yield new Promise((e=>setTimeout(e,1e3)))}null==de||de(z)}catch(e){let t=L(e)||"";t&&!t.includes("Unexpected token 'A',")||(t="Oops! We're experiencing high traffic at the moment. Please try again later.");const n=Object.entries(he).find((([e])=>t.includes(e)));n?ye(n[1]):xe(t)}finally{Ee(),be("idle"),Ce(),Me.current=null}}));return yt?null:n("div",Object.assign({className:$("flex w-full flex-shrink-0 flex-col items-center",!bt&&"px-4 pb-8"),dir:ie?"rtl":"ltr"},{children:s("div",Object.assign({className:"flex w-full max-w-[800px] flex-col"},{children:[s("div",Object.assign({ref:Xe,className:$("relative flex flex-col w-full justify-end gap-y-3 py-[3px]","block"===ee.formFieldStyle&&"shadow"),style:Object.assign(Object.assign({},ut),{maxHeight:`${qe}px`,overflowY:"auto"})},{children:[Qe&&s("div",Object.assign({className:"absolute left-4 top-1/2 flex -translate-y-1/2 select-none items-center gap-x-2"},{children:[n("span",{className:"h-2 w-2 animate-pulse rounded-full bg-c-secondary",style:{backgroundColor:null!==(V=te.accent)&&void 0!==V?V:"#ff0000"}}),n("span",Object.assign({className:"text-sm text-c-secondary font-semilight",style:{color:te.text+"90"}},{children:"Listening..."}))]})),!ge&&je.length>0&&n(P,{className:"p-4 pb-0",isDisabled:ge}),n(R,Object.assign({ref:Ve,className:$(dt.i1,"py-3.5 max-h-60 px-4 w-full border-transparent bg-transparent",!Le.trim()&&!Le.includes("\n")&&"overflow-hidden text-ellipsis whitespace-nowrap placeholder:whitespace-normal placeholder:overflow-visible",ie?"text-right":"text-left",jt&&"mb-12",Qe&&"text-transparent"),value:Le,placeholder:xt,onChange:e=>{if($e(e),H){const t=(e.match(/\n/g)||[]).length+1;if(!e)return void H(0);if(t>=11)return;let n=0;t>1&&(n=50),H(24*(t-1)+n)}},onKeyDown:e=>{se||et||"Enter"===e.key&&(e.shiftKey||(e.preventDefault(),we||ge||kt()))},onPaste:e=>t(void 0,void 0,void 0,(function*(){const t=Array.from(e.clipboardData.files||[]);t.length>0&&(e.preventDefault(),le(!1),yield ke(t))}))},W&&{onFocus:W},B&&{onBlur:B},{dir:ie?"rtl":"ltr"})),n("div",Object.assign({ref:Ke,className:$("flex items-center gap-2 absolute right-0 z-2 transition-all duration-200 ease-in-out",jt?"mb-2.5":"top-1/2 -translate-y-1/2"),style:Object.assign(Object.assign({},!jt&&ut.backgroundColor&&{backgroundColor:ut.backgroundColor}),{borderTopRightRadius:ee.cornerRadius+"px",borderBottomRightRadius:ee.cornerRadius+"px"})},{children:ge?n("button",Object.assign({className:"flex h-8 w-8 items-center mr-2 justify-center rounded-full outline-none transition-colors duration-200 ease-in-out",onClick:()=>{ze.current&&(ze.current.abort(),ze.current=null),Me.current&&(Me.current.cancel(),Me.current=null),be("idle")},style:{backgroundColor:te.accent,color:te.accentText}},{children:n(T,{className:"h-4 w-4 shrink-0"})})):Qe?n("button",Object.assign({className:"flex h-8 w-8 items-center mr-2 justify-center rounded-full outline-none transition-colors duration-200 ease-in-out",onClick:u.stopListening,style:{backgroundColor:te.accent,color:te.accentText}},{children:n(T,{className:"h-4 w-4 shrink-0"})})):s(o,{children:[gt&&s("button",Object.assign({className:"flex h-8 w-8 items-center justify-center rounded-full outline-none transition-colors duration-200 ease-in-out disabled:cursor-default",style:{backgroundColor:it?te.accent+"10":void 0,color:it?te.accent:te.accent+"80"},disabled:we||ge,onClick:()=>{var e;return null===(e=Je.current)||void 0===e?void 0:e.click()}},rt,{children:[n("input",{id:"file-upload",ref:Je,type:"file",accept:[...S,...N,...I].join(", "),multiple:!0,hidden:!0,className:"hidden",onChange:e=>t(void 0,void 0,void 0,(function*(){le(!1),yield ke(Array.from(e.target.files||[])),e.target.value=""}))}),n(E,{className:"h-6 w-6 shrink-0"})]})),vt&&n("button",Object.assign({className:"disabled:cursor-default flex h-8 w-8 items-center justify-center rounded-full outline-none transition-colors duration-200 ease-in-out",style:{backgroundColor:Qe?te.accent:lt?te.accent+"10":void 0,color:Qe?te.accentText:lt?te.accent:te.accent+"80"},disabled:we||ge,onClick:()=>{Qe?u.stopListening():(Ue.current=Le,Ye(),u.startListening({continuous:!0,interimResults:!0,language:ne||"en-US"}))}},ct,{children:n(A,{className:"h-5 w-5 shrink-0"})})),n("button",Object.assign({className:"flex h-8 w-8 items-center mr-2 justify-center rounded-full outline-none transition-colors duration-200 ease-in-out disabled:cursor-default",style:{backgroundColor:nt||Ot?te.accent:te.accent+"10",color:nt||Ot?te.accentText:te.accent+"80"},disabled:!Ot,onClick:()=>kt()},st,{children:n(_,{className:$("h-6 w-6 shrink-0",ie&&"scale-x-[-1] transform")})}))]})}))]})),Oe&&n(D,{error:Oe,className:"mt-3"})]}))}))}));W.displayName="Input";export{W as default};
1
+ import{__rest as e,__awaiter as t}from"../../../_virtual/_tslib.js";import{jsx as s,jsxs as n,Fragment as o}from"react/jsx-runtime";import{forwardRef as i,useState as r,useRef as a,useCallback as l,useEffect as c,useMemo as d,useImperativeHandle as u}from"react";import"../../../node_modules/.pnpm/regenerator-runtime@0.14.1/node_modules/regenerator-runtime/runtime.js";import p,{useSpeechRecognition as m}from"react-speech-recognition";import{usePickaxeContext as f}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as g}from"../../../hooks/pickaxe/useResponseContext.js";import{useStyleInput as h}from"../../../hooks/studio/useStyleInput.js";import{useStyleFontSize as v}from"../../../hooks/studio/useStyleFontSize.js";import{useConversation as b}from"../../../hooks/pickaxe/useConversation.js";import{useDimensionContext as y}from"../../../hooks/pickaxe/useDimensionContext.js";import{useAuthContext as j}from"../Addons/Auth/hooks/useAuthContext.js";import{useDocument as x}from"../Addons/Document/hooks/useDocument.js";import{useScroll as w}from"../Addons/Scroll/hooks/useScroll.js";import{useArtifactContext as O}from"../Addons/Artifact/hooks/useArtifactContext.js";import{useHover as k}from"../../../hooks/core/useHover.js";import{useMediaQuery as N}from"../../../hooks/core/useMediaQuery.js";import{allowedFileMimeTypes as S,allowedImageMimeTypes as C,additionalAllowedFileExtensions as I}from"../../../common/documents.js";import{createParser as _}from"eventsource-parser";import E from"../../Icons/attach-vertical.svg.js";import T from"../../Icons/arrow-right.svg.js";import A from"../../Icons/microphone.svg.js";import P from"../../Icons/stop.svg.js";import R from"../Addons/Document/List.js";import D from"../../Core/Textarea.js";import L from"../../Core/ErrorAlert.js";import U from"../../../common/error.js";import{getValidationFailure as $}from"../../../common/validation.js";import B from"../../../common/cn.js";import{isInIframe as V,initializeEmbedUserId as X}from"../../../common/utils.js";import{useStudio as K}from"../../../hooks/studio/useStudio.js";const W=i((({resubmitPrompt:i,onFocus:W,onBlur:F,onInputHeightChange:H,initSmitheryAuthData:J},M)=>{var z,G,q;const{origin:Q,pickaxeId:Y,sessionId:Z,sender:ee,senderType:te,portalId:se,deploymentId:ne,deploymentType:oe,pickaxe:ie,styles:re,colors:ae,locale:le,forceMobile:ce,isNewChat:de,isRtl:ue,isShowFeedbackMessage:pe,accessGroup:me,setIsNewChat:fe,setIsShowIceBreaker:ge,setValidationStatus:he,setValidationUpgradeGroups:ve,setValidationUpgradeUrl:be,onGenerateComplete:ye}=f(),{token:je,isLoggedOut:xe,isSent:we,isPricingAuth:Oe}=j(),{messages:ke,isGenerating:Ne,setMessages:Se,setStatus:Ce,setLimitData:Ie,setError:_e}=g(),{documents:Ee,isUploading:Te,documentError:Ae,onFileUpload:Pe,setDocuments:Re,setDocumentError:De}=x(),{studio:Le}=K(),{scrollStartSession:Ue,scrollEndSession:$e,scrollToBottom:Be}=w({auto:!0}),{artifacts:Ve,currentPopupType:Xe,setArtifacts:Ke,setCurrentArtifact:We}=O(),{height:Fe}=y(),He=b(),[Je,Me]=r(""),[ze,Ge]=r(!1),[qe,Qe]=r(!1),[Ye,Ze]=r(null),[et,tt]=r(null),[st,nt]=r(!1),ot=a(null),it=a(""),rt=a(null),at=a(null),lt=a(null),ct=a(null),dt=a(null),ut=Math.max(.4*Fe,100),{transcript:pt,listening:mt,resetTranscript:ft,browserSupportsSpeechRecognition:gt}=m(),[ht]=N("(max-width: 480px)"),vt=k(),{isHover:bt}=vt,yt=e(vt,["isHover"]),jt=k(),{isHover:xt}=jt,wt=e(jt,["isHover"]),Ot=k(),{isHover:kt}=Ot,Nt=e(Ot,["isHover"]),St=v(),Ct=h(),It="undefined"!=typeof window?window.location.hostname:"",_t="undefined"!=typeof window?window.location.href:"",Et="undefined"!=typeof window&&window.self!==window.top,Tt=It.includes("pickaxe.co")&&!_t.includes("https://studio.pickaxe.co/_embed")&&!Et,At=null===(z=null==ie?void 0:ie.documentuploadtype)||void 0===z?void 0:z.startsWith("enduserupload"),Pt=gt&&(null==ie?void 0:ie.enablevoicetotext),Rt="chat-input"===oe&&de&&!we,Dt="chat-input"===oe&&Oe&&xe&&we,Lt=l((e=>{const t=$(e);return!!t&&(_e(""),Ie(null),he(t.status),ve(t.upgradeGroups),be(t.upgradeUrl),!0)}),[_e,Ie,he,ve,be]),Ut=null!==(G=null==ie?void 0:ie.placeholdertext)&&void 0!==G?G:ue?"بماذا تريد أن تتحدث؟":"What do you want to talk about?",$t=ze||qe,Bt=l((()=>t(void 0,void 0,void 0,(function*(){try{const e=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API_URL}/get_user`,Object.assign(Object.assign({method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(Object.assign(Object.assign(Object.assign({studioId:null==ie?void 0:ie.studioid},ee&&{sender:ee}),je&&{studioSessionToken:je}),!je&&!ee&&{sender:X()}))},(!process.env.NODE_ENV||"development"===process.env.NODE_ENV)&&Object.assign({},process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN&&{headers:{"Content-Type":"application/json","x-pickaxe-session-token":process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN}})),Tt&&{credentials:"include"})),t=yield e.json();(null==t?void 0:t.studioUser)&&(Ze(t.studioUser),tt(t.url))}catch(e){console.error("Failed to fetch studio user:",e)}}))),[Q,Y,Z,te,ee,je,se,ne,Tt]);c((()=>{Bt()}),[Bt]);const Vt=(null==me?void 0:me.limit)||0,Xt=(null==Ye?void 0:Ye.currentUses)||0,Kt=(null==Ye?void 0:Ye.extraUses)||0,Wt=!!(null==Le?void 0:Le.data.usage)&&Le.data.usage.isCredits,Ft=Vt>Xt?Vt-Xt+Kt:Kt,Ht=d((()=>!!Ye&&(!st&&(!(Vt<=0)&&Ft<=.05*Vt))),[Ye,st,Ft,Vt]),Jt=d((()=>{var e,t,s;return!!de&&(!!ie&&(!He.isLoading&&(!((null!==(t=null===(e=He.data)||void 0===e?void 0:e.messages.length)&&void 0!==t?t:0)>1)&&(!!(null===(s=ie.icebreakers)||void 0===s?void 0:s.length)&&(!pe&&!Rt)))))}),[ie,de,pe,Rt,He.data,He.isLoading]),Mt=d((()=>{if(Ne||Te)return!1;const e=Ee.length>0&&Ee.every((e=>"finished"===e.status));return!(!Je.trim()&&!e)&&Ee.every((e=>"finished"===e.status||e.isInsertedAsRaw))}),[Ne,Te,Je,Ee]);u(M,(()=>({onSubmit:zt}))),c((()=>{ge(Jt)}),[Jt]),c((()=>{var e;if(i){const t=Array.from(ke),s=null===(e=t[t.length-2].parts.find((e=>"text"===e.type)))||void 0===e?void 0:e.content;zt(s,!0)}}),[i]),c((()=>{if(!ct.current||!H)return;const e=new ResizeObserver((e=>{for(const t of e)H(t.contentRect.height)}));return e.observe(ct.current),()=>{e.disconnect()}}),[H]),c((()=>{if(!mt)return;const e=it.current?`${it.current} `:"";Me(`${e}${pt}`)}),[pt,mt]),c((()=>{if(!at.current)return;(()=>{if(!at.current)return;let e=at.current.scrollHeight>52;Je.includes("\n")||Ee.length?e=!0:Je.trim()||(e=!1),Ge(e)})()}),[Je,Ee]),c((()=>{const e=at.current,t=lt.current;if(!e||!t||ze||Je.includes("\n"))return void Qe(!1);const s=window.getComputedStyle(e),n=`${s.fontStyle} ${s.fontVariant} ${s.fontWeight} ${s.fontSize} / ${s.lineHeight} ${s.fontFamily}`,o=document.createElement("span");Object.assign(o.style,{font:n,letterSpacing:s.letterSpacing,position:"absolute",visibility:"hidden",whiteSpace:"nowrap",top:"0",left:"0"}),o.textContent=Je||Ut,document.body.appendChild(o);const i=o.offsetWidth;o.remove();const r=parseFloat(s.paddingLeft)||0,a=parseFloat(s.paddingRight)||0,l=e.clientWidth-r-a-t.offsetWidth;Qe(i>l)}),[Je,ze,Ut]);const zt=(e,s=!1)=>t(void 0,void 0,void 0,(function*(){var t,n,o;try{if(Ne||Te)return;const i=Ee.filter((e=>"finished"===e.status&&!e.isInsertedAsRaw)),r=i.map((e=>e.documentId)).filter(Boolean),a=i.filter((e=>"image"===e.type)).map((e=>{const t=e.name.split(".").pop()||"";return{documentId:e.documentId,extension:t}})),l=r.length>0,c=null!=e?e:Je;if(!c&&!l)return;_e(""),De(""),Ie(null),Me(""),fe(!1),Ce("fetching"),Ue(),Be();const d=null!==(n=null===(t=null==ie?void 0:ie.documentuploadtype)||void 0===t?void 0:t.startsWith("enduserupload"))&&void 0!==n&&n&&r.length>0,u=[...s?Array.from(ke.slice(0,ke.length-1)):Array.from(ke),...s?[]:[{id:ke.length+1,role:"user",parts:[{type:"text",content:c,isVisible:!0}],documentIds:d?r:[]}],{id:ke.length+(s?0:2),role:"assistant",parts:[],documentIds:[]}];Se(u),Be(),d&&Re([]);const p=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API_URL}/submit`,Object.assign({method:"POST",body:JSON.stringify(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({origin:Q,pickaxeId:Y,sessionId:Z,senderType:te,value:c},d&&{documentIds:r}),ee&&{sender:ee}),je&&{studioSessionToken:je}),!je&&!ee&&{sender:X()}),se&&{portalId:se}),ne&&{deploymentId:ne}),a.length>0&&{uploadedModelImages:a})),headers:Object.assign(Object.assign({},(!process.env.NODE_ENV||"development"===process.env.NODE_ENV)&&Object.assign({},process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN&&{"x-pickaxe-session-token":process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN})),{"x-request-sent-at":(new Date).toISOString()})},Tt&&{credentials:"include"})),m=yield p.json();if(!m.success){if(Lt(m))return;const e=new Error(m.error||m.message||"Failed to start generation");throw m.limitData&&(e.limitData=m.limitData),e}const f=m.submissionId;Ce("streaming"),dt.current=new AbortController;const g=u.length-1,h=[];let v=[...null!=Ve?Ve:[]],b=0,y=!1,j="";for(;!y;)try{const e=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API_URL}/stream/${f}?index=${b}`,{signal:null===(o=dt.current)||void 0===o?void 0:o.signal,headers:{"Cache-Control":"no-cache",Connection:"keep-alive"}});if(!e.body)throw new Error("No response body");const t=e.body.getReader();rt.current=t;const s=new TextDecoder,n=_({onEvent:e=>{var t,s;if(e.event&&"ping"!==e.event&&b++,"stop"!==e.event){if("error"===e.event){const t=JSON.parse(e.data),s=t.error||t.message||"Something went wrong.";return Lt(t)||_e(s),void(y=!0)}if("delta"===e.event){const n=JSON.parse(e.data);if("data-error"===n.type&&J){const e=n.data.error;if("string"==typeof e){if(/['"]type['"]\s*:\s*['"]unauthorized_smithery['"]/.test(e)){const t=e.match(/['"]qualifiedName['"]\s*:\s*['"]([^'"]+)['"]/),s=e.match(/['"]serverId['"]\s*:\s*['"]([^'"]+)['"]/),n=e.match(/['"]name['"]\s*:\s*['"]([^'"]+)['"]/);if(t&&t[1]&&s&&s[1]&&n&&n[1])throw y=!0,J({smitheryId:t[1],serverId:s[1],name:n[1]}),new Error("STOP_STREAM")}}else if("object"==typeof e&&null!==e){const t=e;if("unauthorized_smithery"===t.type&&t.qualifiedName&&t.serverId&&t.name)throw y=!0,J({smitheryId:t.qualifiedName,serverId:t.serverId,name:t.name}),new Error("STOP_STREAM")}}else if("text-start"===n.type)j="",h.push({type:"text",content:"",isVisible:null===(t=n.isVisible)||void 0===t||t});else if("text-delta"===n.type)j+=n.delta,h[h.length-1].content=j;else if("text-end"===n.type)j="";else if("reasoning-start"===n.type)j="",h.push({type:"reasoning",content:"",isVisible:null===(s=n.isVisible)||void 0===s||s});else if("reasoning-delta"===n.type)j+=n.delta,h[h.length-1].content=j;else if("reasoning-end"===n.type)j="";else if(n.type.startsWith("data-")){const e=n;h.push({type:e.type,content:JSON.stringify(e.data),isVisible:!0})}Se([...u.slice(0,g),Object.assign(Object.assign({},u[u.length-1]),{id:ke.length+1,role:"assistant",parts:h})])}else if("artifact_created"===e.event){const t=JSON.parse(e.data);v=v.filter((e=>!(e.id===t.id&&e.version===t.version))),v.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),Ke([...v]),Xe.startsWith("inline")||We({id:t.id,version:t.version})}else if("artifact_updated"===e.event){const t=JSON.parse(e.data);v=v.filter((e=>!(e.id===t.id&&e.version===t.version))),v.push(Object.assign(Object.assign({},t),{content:"",status:"updating"})),Ke(v),Xe.startsWith("inline")||We({id:t.id,version:t.version})}else if("artifact_rewrite"===e.event){const t=JSON.parse(e.data);v=v.filter((e=>!(e.id===t.id&&e.version===t.version))),v.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),Ke(v),Xe.startsWith("inline")||We({id:t.id,version:t.version})}else if("artifact_content"===e.event){const t=JSON.parse(e.data),s=t.token.replace(/\u200B/g,"");v=v.map((e=>e.id===t.id&&e.version===t.version?Object.assign(Object.assign({},e),{content:e.content+s,status:"streaming"}):e)),Ke(v)}else if("artifact_finished"===e.event){const t=JSON.parse(e.data);Ke(v.map((e=>e.id===t.id?Object.assign(Object.assign({},e),{status:"finished"}):e)))}else if("error"===e.event){const t=JSON.parse(e.data),s=t.error||t.message||"Something went wrong, please try again.";if(Lt(t))return void(y=!0);_e(s)}else"stop"===e.event&&(y=!0)}else y=!0}});for(;;){const{value:e,done:o}=yield t.read();if(o)break;n.feed(s.decode(e))}y||(yield new Promise((e=>setTimeout(e,1e3))))}catch(e){if("STOP_STREAM"===e.message||"AbortError"===e.name)return void(y=!0);console.warn("Stream connection lost, retrying...",e),yield new Promise((e=>setTimeout(e,1e3)))}null==ye||ye(Z)}catch(e){if(e.limitData)Ie(e.limitData),_e("");else{let t=U(e)||"";t&&!t.includes("Unexpected token 'A',")||(t="Oops! We're experiencing high traffic at the moment. Please try again later."),Lt(t)||_e(t)}}finally{Be(),Ce("idle"),$e(),rt.current=null,yield Bt()}}));return Dt?null:s("div",Object.assign({className:B("flex w-full flex-shrink-0 flex-col items-center",!Rt&&"px-4 pb-8"),dir:ue?"rtl":"ltr"},{children:n("div",Object.assign({className:"flex w-full max-w-[800px] flex-col"},{children:[n("div",Object.assign({ref:ct,className:B("relative flex flex-col w-full justify-end gap-y-3 py-[3px]","block"===re.formFieldStyle&&"shadow"),style:Object.assign(Object.assign({},Ct),{maxHeight:`${ut}px`,overflowY:"auto"})},{children:[Ht&&n("div",Object.assign({className:"sticky top-0 z-10 flex w-full items-center justify-between border-b px-4 py-2.5 shadow-sm backdrop-blur-md",style:{backgroundColor:Ct.backgroundColor?`${Ct.backgroundColor}E6`:void 0,borderColor:ae.text+"20",color:ae.text,borderTopRightRadius:re.cornerRadius+"px",borderTopLeftRadius:re.cornerRadius+"px"}},{children:[s("div",Object.assign({className:"flex items-center gap-2 text-sm font-medium"},{children:n("span",{children:[Ft," ",Wt?"credits":"uses"," remaining"]})})),n("div",Object.assign({className:"flex items-center gap-3"},{children:[s("button",Object.assign({className:"rounded-md px-3 py-1.5 text-xs font-semibold transition-opacity hover:opacity-90",style:{backgroundColor:ae.accent,color:ae.accentText},onClick:e=>{e.preventDefault(),e.stopPropagation();const t=`${et}${null==me?void 0:me.accessGroupId}`;V()?window.open(t):location.href=t}},{children:"Upgrade"})),s("button",Object.assign({className:"flex h-6 w-6 items-center justify-center rounded-full opacity-60 transition-opacity hover:opacity-100",onClick:()=>nt(!0)},{children:s("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",strokeWidth:2,stroke:"currentColor",className:"h-4 w-4"},{children:s("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M6 18L18 6M6 6l12 12"})}))}))]}))]})),!Ne&&Ee.length>0&&s(R,{className:"p-4 pb-0",isDisabled:Ne}),n("div",Object.assign({className:"relative flex w-full flex-col"},{children:[mt&&n("div",Object.assign({className:"absolute left-4 top-1/2 flex -translate-y-1/2 select-none items-center gap-x-2"},{children:[s("span",{className:"h-2 w-2 animate-pulse rounded-full bg-c-secondary",style:{backgroundColor:null!==(q=ae.accent)&&void 0!==q?q:"#ff0000"}}),s("span",Object.assign({className:"text-sm text-c-secondary font-semilight",style:{color:ae.text+"90"}},{children:"Listening..."}))]})),s(D,Object.assign({ref:at,className:B(St.i1,"py-3.5 max-h-60 px-4 w-full border-transparent bg-transparent",!Je.trim()&&!Je.includes("\n")&&"overflow-hidden text-ellipsis whitespace-nowrap placeholder:whitespace-normal placeholder:overflow-visible",ue?"text-right":"text-left",$t&&"mb-12",mt&&"text-transparent"),value:Je,placeholder:Ut,onChange:e=>{if(Me(e),H){const t=(e.match(/\n/g)||[]).length+1;if(!e)return void H(0);if(t>=11)return;let s=0;t>1&&(s=50),H(24*(t-1)+s)}},onKeyDown:e=>{ce||ht||"Enter"===e.key&&(e.shiftKey||(e.preventDefault(),Te||Ne||zt()))},onPaste:e=>t(void 0,void 0,void 0,(function*(){const t=Array.from(e.clipboardData.files||[]);t.length>0&&(e.preventDefault(),fe(!1),yield Pe(t))}))},W&&{onFocus:W},F&&{onBlur:F},{dir:ue?"rtl":"ltr"})),s("div",Object.assign({ref:lt,className:B("flex items-center gap-2 absolute right-0 z-2 transition-all duration-200 ease-in-out",$t?"bottom-0 mb-2.5":"top-1/2 -translate-y-1/2"),style:Object.assign(Object.assign({},!$t&&Ct.backgroundColor&&{backgroundColor:Ct.backgroundColor}),{borderTopRightRadius:re.cornerRadius+"px",borderBottomRightRadius:re.cornerRadius+"px"})},{children:Ne?s("button",Object.assign({className:"flex h-8 w-8 items-center mr-2 justify-center rounded-full outline-none transition-colors duration-200 ease-in-out",onClick:()=>{dt.current&&(dt.current.abort(),dt.current=null),rt.current&&(rt.current.cancel(),rt.current=null),Ce("idle")},style:{backgroundColor:ae.accent,color:ae.accentText}},{children:s(P,{className:"h-4 w-4 shrink-0"})})):mt?s("button",Object.assign({className:"flex h-8 w-8 items-center mr-2 justify-center rounded-full outline-none transition-colors duration-200 ease-in-out",onClick:p.stopListening,style:{backgroundColor:ae.accent,color:ae.accentText}},{children:s(P,{className:"h-4 w-4 shrink-0"})})):n(o,{children:[At&&n("button",Object.assign({className:"flex h-8 w-8 items-center justify-center rounded-full outline-none transition-colors duration-200 ease-in-out disabled:cursor-default",style:{backgroundColor:xt?ae.accent+"10":void 0,color:xt?ae.accent:ae.accent+"80"},disabled:Te||Ne,onClick:()=>{var e;return null===(e=ot.current)||void 0===e?void 0:e.click()}},wt,{children:[s("input",{id:"file-upload",ref:ot,type:"file",accept:[...S,...C,...I].join(", "),multiple:!0,hidden:!0,className:"hidden",onChange:e=>t(void 0,void 0,void 0,(function*(){fe(!1),yield Pe(Array.from(e.target.files||[])),e.target.value=""}))}),s(E,{className:"h-6 w-6 shrink-0"})]})),Pt&&s("button",Object.assign({className:"disabled:cursor-default flex h-8 w-8 items-center justify-center rounded-full outline-none transition-colors duration-200 ease-in-out",style:{backgroundColor:mt?ae.accent:kt?ae.accent+"10":void 0,color:mt?ae.accentText:kt?ae.accent:ae.accent+"80"},disabled:Te||Ne,onClick:()=>{mt?p.stopListening():(it.current=Je,ft(),p.startListening({continuous:!0,interimResults:!0,language:le||"en-US"}))}},Nt,{children:s(A,{className:"h-5 w-5 shrink-0"})})),s("button",Object.assign({className:"flex h-8 w-8 items-center mr-2 justify-center rounded-full outline-none transition-colors duration-200 ease-in-out disabled:cursor-default",style:{backgroundColor:bt||Mt?ae.accent:ae.accent+"10",color:bt||Mt?ae.accentText:ae.accent+"80"},disabled:!Mt,onClick:()=>zt()},yt,{children:s(T,{className:B("h-6 w-6 shrink-0",ue&&"scale-x-[-1] transform")})}))]})}))]}))]})),Ae&&s(L,{error:Ae,className:"mt-3"})]}))}))}));W.displayName="Input";export{W as default};
@@ -1 +1 @@
1
- import{__awaiter as t}from"../../../_virtual/_tslib.js";import{jsxs as e,jsx as o,Fragment as r}from"react/jsx-runtime";import{useState as n,useRef as i,useEffect as s}from"react";import{usePickaxeContext as a}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useAuthContext as c}from"../Addons/Auth/hooks/useAuthContext.js";import{useDimensionContext as l}from"../../../hooks/pickaxe/useDimensionContext.js";import{useDocument as u}from"../Addons/Document/hooks/useDocument.js";import{useStyleFontSize as m}from"../../../hooks/studio/useStyleFontSize.js";import d from"./History/index.js";import p from"./Input.js";import f from"../../Icons/attach-vertical.svg.js";import h from"../../../common/cn.js";const g=()=>{const{deploymentType:g,isNewChat:b,setIsNewChat:v}=a(),{isSent:x}=c(),{width:j,height:D,setDimension:y}=l(),{setDocuments:k,onFileUpload:w}=u(),A=m(),[I,N]=n(0),[F,O]=n(!1),[P,S]=n(!1),C=i(null),H=i(null),T=i(0),[z,R]=n(null),[_,B]=n(!1),E="chat-input"===g&&b&&!x;s((()=>()=>{k([])}),[]),s((()=>{if(!C.current)return;const t=new ResizeObserver((t=>{for(const e of t){const{width:t,height:o}=e.contentRect;y(parseInt(t.toFixed(0)),parseInt(o.toFixed(0)))}}));return t.observe(C.current),()=>{t.disconnect()}}),[C.current]);return e("div",Object.assign({ref:C,className:"relative flex h-full w-full flex-col items-center",onDragEnter:t=>{t.preventDefault(),t.stopPropagation(),T.current+=1,t.dataTransfer.items&&t.dataTransfer.items.length>0&&S(!0)},onDragLeave:t=>{t.preventDefault(),t.stopPropagation(),T.current-=1,0===T.current&&S(!1)},onDragOver:t=>{t.preventDefault(),t.stopPropagation()},onDrop:e=>t(void 0,void 0,void 0,(function*(){e.preventDefault(),e.stopPropagation(),S(!1),T.current=0;const t=Array.from(e.dataTransfer.files||[]);t.length>0&&(v(!1),yield w(t))}))},{children:[P&&e("div",Object.assign({className:"absolute inset-0 z-50 flex flex-col items-center justify-center rounded-lg bg-white/80 backdrop-blur-sm transition-all duration-300"},{children:[o("div",Object.assign({className:"flex h-24 w-24 items-center justify-center rounded-full bg-white shadow-lg animate-bounce text-black"},{children:o(f,{className:"h-10 w-10"})})),o("h3",Object.assign({className:h(A.h3,"mt-6 font-semibold text-c-primary text-black")},{children:"Drop files to upload"})),o("p",Object.assign({className:h(A.b2,"mt-2 opacity-60 text-black")},{children:"Add anything to the conversation"}))]})),E?o(p,{}):e(r,{children:[o(d,{additionalScrollHeight:I,isForceHideInfo:D<=545||j<=350||F,isInputFocused:F,onSubmit:e=>t(void 0,void 0,void 0,(function*(){H.current&&H.current.onSubmit(e)})),smitheryAuthData:z,resubmitPrompt:()=>{R(null),B(!0)}}),o(p,{ref:H,onFocus:()=>O(!0),onBlur:()=>O(!1),onInputHeightChange:N,initSmitheryAuthData:t=>R(t),resubmitPrompt:_})]})]}))};export{g as default};
1
+ import{__awaiter as e}from"../../../_virtual/_tslib.js";import{jsxs as t,jsx as o,Fragment as i}from"react/jsx-runtime";import{useState as r,useRef as n,useEffect as s,useCallback as a}from"react";import{usePickaxeContext as c}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useAuthContext as l}from"../Addons/Auth/hooks/useAuthContext.js";import{useDimensionContext as d}from"../../../hooks/pickaxe/useDimensionContext.js";import{useDocument as m}from"../Addons/Document/hooks/useDocument.js";import{useStyleFontSize as u}from"../../../hooks/studio/useStyleFontSize.js";import p from"./History/index.js";import f from"./Input.js";import h from"../../Icons/attach-vertical.svg.js";import v from"../../../common/cn.js";import g from"../../../common/api/pickaxe.js";import{v4 as x}from"uuid";import{useResponseContext as b}from"../../../hooks/pickaxe/useResponseContext.js";import{NavPill as k,EditableNavPill as j,HistoryPill as y}from"../Addons/Navbar/NavPill.js";import w from"../../Icons/history.svg.js";const I=()=>{const{deploymentType:I,isNewChat:D,setIsNewChat:N,sessionId:C,setSessionId:A,setLastSessionId:F,pickaxeId:P,sender:S,pickaxe:T,styles:O,isEmbed:_}=c(),{isSent:z}=l(),{width:E,height:H,setDimension:R}=d(),{setDocuments:G,onFileUpload:L}=m(),{isGenerating:B,messages:U}=b(),q=u(),[J,K]=r(0),[M,Q]=r(!1),[V,W]=r(!1),X=n(null),Y=n(null),Z=n(0),[$,ee]=r(null),[te,oe]=r(!1),ie="chat-input"===I&&D&&!z;s((()=>()=>{G([])}),[]);const re=a((()=>{if(!P||!S)return;const t=(o=0)=>e(void 0,void 0,void 0,(function*(){var e;try{const t=yield g.post("/get_pickaxe_conversation",{sessionId:C,userId:S});if(t.data&&t.data.success){const e=t.data.title;if(e&&"Conversation Title"!==e)return void se(e)}else console.error("Failed to load conversation:",null===(e=t.data)||void 0===e?void 0:e.error)}catch(e){console.error("Error fetching conversation:",e)}o<20&&setTimeout((()=>t(o+1)),3e3)}));t()}),[P,S,C]);s((()=>{B||D||!C||re()}),[B,D,C,re]),s((()=>{if(!X.current)return;const e=new ResizeObserver((e=>{for(const t of e){const{width:e,height:o}=t.contentRect;R(parseInt(e.toFixed(0)),parseInt(o.toFixed(0)))}}));return e.observe(X.current),()=>{e.disconnect()}}),[X.current]);const[ne,se]=r("New Chat"),ae=(null==T?void 0:T.formtitle)||"Pickaxe",ce=(null==T?void 0:T.coverphoto)||void 0,[le,de]=r(!1);s((()=>{const e=!ie&&!_&&O.portalTheme&&(U.filter((e=>"user"===e.role)).length>0||M||!D);de(null!=e&&e)}),[U,M,D]);return t("div",Object.assign({ref:X,className:"relative flex h-full w-full flex-col items-center overflow-hidden",onDragEnter:e=>{e.preventDefault(),e.stopPropagation(),Z.current+=1,e.dataTransfer.items&&e.dataTransfer.items.length>0&&W(!0)},onDragLeave:e=>{e.preventDefault(),e.stopPropagation(),Z.current-=1,0===Z.current&&W(!1)},onDragOver:e=>{e.preventDefault(),e.stopPropagation()},onDrop:t=>e(void 0,void 0,void 0,(function*(){t.preventDefault(),t.stopPropagation(),W(!1),Z.current=0;const e=Array.from(t.dataTransfer.files||[]);e.length>0&&(N(!1),yield L(e))}))},{children:[V&&t("div",Object.assign({className:"absolute inset-0 z-50 flex flex-col items-center justify-center rounded-lg bg-white/80 backdrop-blur-sm transition-all duration-300"},{children:[o("div",Object.assign({className:"flex h-24 w-24 items-center justify-center rounded-full bg-white shadow-lg animate-bounce text-black"},{children:o(h,{className:"h-10 w-10"})})),o("h3",Object.assign({className:v(q.h3,"mt-6 font-semibold text-c-primary text-black")},{children:"Drop files to upload"})),o("p",Object.assign({className:v(q.b2,"mt-2 opacity-60 text-black")},{children:"Add anything to the conversation"}))]})),ie?o(f,{}):t(i,{children:[le&&t("div",Object.assign({className:v("direct-link"===I?"absolute top-4 left-4 md:top-6 md:left-6 z-40 flex items-center gap-2 animate-in fade-in slide-in-from-top-4 duration-500":"w-full max-w-3xl mt-6 px-4 md:px-0 flex justify-start z-30 mb-4 animate-in fade-in slide-in-from-top-4 duration-500 gap-2","dark"===O.portalTheme?"glass-dark ":"")},{children:[o(k,{text:ae,icon:ce}),D||"New Chat"===ne?o(k,{text:ne}):o(j,{text:ne,sessionId:C,onRename:t=>e(void 0,void 0,void 0,(function*(){if(C)try{yield g.post("/edit_conversation_name",{sessionId:C,name:t,userId:S}),se(t)}catch(e){console.error("Error renaming chat:",e),alert("Failed to rename chat.")}})),onDelete:()=>e(void 0,void 0,void 0,(function*(){if(C&&window.confirm("Are you sure you want to delete this conversation?"))try{yield g.post("/delete_pickaxe_conversation",{sessionId:C,userId:S}),N(!0),A(x()),se("New Chat")}catch(e){console.error("Error deleting chat:",e),alert("Failed to delete chat.")}})),isDarkGlass:"dark"===O.portalTheme}),o(y,{icon:o(w,{}),onClick:()=>{A(""),F(C)}})]})),o(p,{additionalScrollHeight:J,isForceHideInfo:H<=545||E<=350||M,isInputFocused:M,onSubmit:t=>e(void 0,void 0,void 0,(function*(){Y.current&&Y.current.onSubmit(t)})),smitheryAuthData:$,resubmitPrompt:()=>{ee(null),oe(!0)}}),o(f,{ref:Y,onFocus:()=>Q(!0),onBlur:()=>Q(!1),onInputHeightChange:K,initSmitheryAuthData:e=>ee(e),resubmitPrompt:te})]})]}))};export{I as default};
@@ -1 +1 @@
1
- import{__awaiter as e}from"../../../../_virtual/_tslib.js";import{jsxs as t,jsx as s}from"react/jsx-runtime";import{useState as n,useRef as i,useMemo as o}from"react";import{usePickaxeContext as r}from"../../../../hooks/pickaxe/usePickaxeContext.js";import{useAuthContext as a}from"../../Addons/Auth/hooks/useAuthContext.js";import{useResponseContext as l}from"../../../../hooks/pickaxe/useResponseContext.js";import{useDocument as d}from"../../Addons/Document/hooks/useDocument.js";import{useScroll as c}from"../../Addons/Scroll/hooks/useScroll.js";import{useArtifactContext as p}from"../../Addons/Artifact/hooks/useArtifactContext.js";import{extractUrlsFromText as u}from"../../../../common/utils.js";import{encode as m}from"@nem035/gpt-3-encoder";import{createParser as f}from"eventsource-parser";import g from"../../common/PickaxeBranding.js";import h from"../../common/PickaxeButton.js";import v from"../../../../common/error.js";const b=({questions:b,resetQuestions:y})=>{var j;const{origin:O,pickaxeId:x,sender:w,senderType:S,deploymentId:k,pickaxe:C,misc:I,translations:N,isRtl:P,setSessionId:_,setIsNewChat:A,onGenerateComplete:E}=r(),{token:T}=a(),{limits:L,isGenerating:U,setResponse:D,setMessages:q,setStatus:J,setLimitData:B,setError:K,setIsSwitchedToChat:R}=l(),{documents:W,websiteLink:X,isUploading:V,onWebsiteUpload:$,setDocuments:G,setDocumentError:M}=d(),{scrollStartSession:F,scrollEndSession:Q,scrollToTarget:Y}=c({auto:!(null==C?void 0:C.enablechatresponses)}),{artifacts:z,currentPopupType:H,setArtifacts:Z,setCurrentArtifact:ee}=p(),[te,se]=n(!1),ne=i(null),ie=o((()=>b.some((e=>("Short Answer"===e.type||"Long Answer"===e.type||"long"===e.type||"short"===e.type||"Checkbox"===e.type||"Knowledge Upload"===e.type||e.id.includes("documentupload"))&&e.input.length>0))),[b]);return t("div",Object.assign({className:"mt-4 flex flex-wrap justify-between gap-4 items-center",dir:P?"rtl":"ltr"},{children:[t("div",Object.assign({className:"flex items-center flex-grow flex-wrap gap-2"},{children:[s(h,Object.assign({className:"px-5 min-h-[42px]",isDisabled:V||U||te,onClick:()=>e(void 0,void 0,void 0,(function*(){var e,t,s;try{if(U||V||te)return;K(""),M(""),B(null),D(null);const n=["Multiple Choice","Checkbox"];for(const e of b){if(m(e.input).length>e.maxLength&&!n.includes(e.type))throw new Error("One or more of your responses is too long!");if(e.isRequired&&!e.input.trim()&&"userinput:documentupload"!==e.id)throw new Error("You must fill out all required fields.")}const i=W.filter((e=>"finished"===e.status)),o=W.map((e=>e.name)),r=null!==(t=null===(e=null==C?void 0:C.documentuploadtype)||void 0===e?void 0:e.startsWith("enduserupload"))&&void 0!==t&&t,a=b.some((e=>"userinput:documentupload"===e.id&&e.isRequired)),l=u(X).filter((e=>!o.includes(e)));if(l.length){const e=l[l.length-1];se(!0);const t=yield $(e);t&&(i.push(t),yield new Promise((e=>setTimeout(e,5e3)))),se(!1)}else if(a&&r&&!i.length)return void M("Please paste a valid website/video link or drag a file to add to the knowledge base.");const d=i.map((e=>e.documentId||"")).filter(Boolean),c=r&&d.length>0,p={};b.forEach((e=>{p[e.id]="Knowledge Upload"===e.type||e.id.includes("documentupload")?i.map((e=>e.name)).join(",")||"":e.input})),J("fetching"),F(),Y();const g=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API_URL}/submit`,{method:"POST",headers:Object.assign(Object.assign({"Content-Type":"application/json"},process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN&&{"x-pickaxe-session-token":process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN}),{"x-request-sent-at":(new Date).toISOString()}),body:JSON.stringify(Object.assign(Object.assign(Object.assign(Object.assign({origin:O,pickaxeId:x,senderType:S,valueObj:p},c&&{documentIds:d}),w&&{sender:w}),T&&{studioSessionToken:T}),k&&{deploymentId:k}))}),h=yield g.json();if(!h.success)throw new Error(h.error||"Failed to start generation");const v=h.submissionId,y=h.sessionId,j={sessionId:y,documentIds:c?d:[],question:{inputs:b.map((e=>({id:e.id,question:e.main,answer:e.input}))),responseParts:[]},messageCount:0,sentAt:new Date};D(j),(null==C?void 0:C.enablechatresponses)&&(_(y),A(!1),R(!0),q([{id:0,role:"assistant",parts:[],documentIds:[]}])),c&&G([]),J("streaming"),ne.current=new AbortController;const I=[];let N=[...null!=z?z:[]],P=0,L=!1,Q="";for(;!L;)try{const e=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API_URL}/stream/${v}?index=${P}`,{signal:null===(s=ne.current)||void 0===s?void 0:s.signal,headers:{"Cache-Control":"no-cache",Connection:"keep-alive"}});if(!e.body)throw new Error("No response body");const t=e.body.getReader(),n=new TextDecoder,i=f({onEvent:e=>{var t,s;if(e.event&&"ping"!==e.event&&P++,"stop"!==e.event){if("error"===e.event){const t=JSON.parse(e.data).error||"Something went wrong.";return K(t),void(L=!0)}if("delta"===e.event){const n=JSON.parse(e.data);if("text-start"===n.type)Q="",I.push({type:"text",content:"",isVisible:null===(t=n.isVisible)||void 0===t||t});else if("text-delta"===n.type)Q+=n.delta,I[I.length-1].content=Q;else if("text-end"===n.type)Q="";else if("reasoning-start"===n.type)Q="",I.push({type:"reasoning",content:"",isVisible:null===(s=n.isVisible)||void 0===s||s});else if("reasoning-delta"===n.type)Q+=n.delta,I[I.length-1].content=Q;else if("reasoning-end"===n.type)Q="";else if(n.type.startsWith("data-")){const e=n;I.push({type:e.type,content:JSON.stringify(e.data),isVisible:!0})}const i=Object.assign(Object.assign({},j),{question:Object.assign(Object.assign({},j.question),{responseParts:[...I]})});D(i),(null==C?void 0:C.enablechatresponses)&&q([{id:0,role:"assistant",parts:[...I],documentIds:[]}])}else if("artifact_created"===e.event){const t=JSON.parse(e.data);N=N.filter((e=>!(e.id===t.id&&e.version===t.version))),N.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),Z([...N]),H.startsWith("inline")||ee({id:t.id,version:t.version})}else if("artifact_updated"===e.event){const t=JSON.parse(e.data);N=N.filter((e=>!(e.id===t.id&&e.version===t.version))),N.push(Object.assign(Object.assign({},t),{content:"",status:"updating"})),Z([...N]),H.startsWith("inline")||ee({id:t.id,version:t.version})}else if("artifact_rewrite"===e.event){const t=JSON.parse(e.data);N=N.filter((e=>!(e.id===t.id&&e.version===t.version))),N.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),Z([...N]),H.startsWith("inline")||ee({id:t.id,version:t.version})}else if("artifact_content"===e.event){const t=JSON.parse(e.data),s=t.token.replace(/\u200B/g,"");N=N.map((e=>e.id===t.id&&e.version===t.version?Object.assign(Object.assign({},e),{content:e.content+s,status:"streaming"}):e)),Z([...N])}else if("artifact_finished"===e.event){const t=JSON.parse(e.data);Z(N.map((e=>e.id===t.id?Object.assign(Object.assign({},e),{status:"finished"}):e)))}}else L=!0}});for(;;){const{value:e,done:s}=yield t.read();if(s)break;i.feed(n.decode(e))}L||(yield new Promise((e=>setTimeout(e,1e3))))}catch(e){if("AbortError"===e.name)return void(L=!0);console.warn("Stream connection lost, retrying...",e),yield new Promise((e=>setTimeout(e,1e3)))}null==E||E(y)}catch(e){let t=v(e)||"";t&&!t.includes("Unexpected token 'A',")||(t="Oops! We're experiencing high traffic at the moment. Please try again later.");const s=Object.entries(L).find((([e])=>t.includes(e)));s?B(s[1]):K(t),Y()}finally{J("idle"),se(!1),Q()}}))},{children:te?(null==N?void 0:N.processing)||"Processing...":V?(null==N?void 0:N.uploading)||"Uploading...":U?(null==N?void 0:N.loading)||"Loading...":null!==(j=null==C?void 0:C.submittext)&&void 0!==j?j:"Submit"})),ie&&s(h,Object.assign({variant:"transparent-text",className:"min-h-[42px] px-5",isDisabled:V||U||te,onClick:y},{children:(null==N?void 0:N["clear-form"])||"Clear form"}))]})),!I.isWhiteLabel&&s(g,{containerClassName:"justify-end"})]}))};export{b as default};
1
+ import{__awaiter as e}from"../../../../_virtual/_tslib.js";import{jsxs as t,jsx as s}from"react/jsx-runtime";import{useState as n,useRef as i,useMemo as o}from"react";import{usePickaxeContext as r}from"../../../../hooks/pickaxe/usePickaxeContext.js";import{useAuthContext as a}from"../../Addons/Auth/hooks/useAuthContext.js";import{useResponseContext as l}from"../../../../hooks/pickaxe/useResponseContext.js";import{useDocument as d}from"../../Addons/Document/hooks/useDocument.js";import{useScroll as c}from"../../Addons/Scroll/hooks/useScroll.js";import{useArtifactContext as p}from"../../Addons/Artifact/hooks/useArtifactContext.js";import{extractUrlsFromText as u,initializeEmbedUserId as m}from"../../../../common/utils.js";import{encode as g}from"@nem035/gpt-3-encoder";import{createParser as f}from"eventsource-parser";import h from"../../common/PickaxeBranding.js";import v from"../../common/PickaxeButton.js";import b from"../../../../common/error.js";import{getValidationFailure as y}from"../../../../common/validation.js";const j=({questions:j,resetQuestions:O})=>{var x;const{origin:w,pickaxeId:I,sender:S,senderType:k,portalId:C,deploymentId:N,pickaxe:E,misc:P,translations:_,isRtl:A,setSessionId:T,setIsNewChat:U,setValidationStatus:D,setValidationUpgradeGroups:L,setValidationUpgradeUrl:q,onGenerateComplete:J}=r(),{token:B}=a(),{isGenerating:K,setResponse:R,setMessages:V,setStatus:W,setLimitData:X,setError:G,setIsSwitchedToChat:$}=l(),{documents:F,websiteLink:M,isUploading:Q,onWebsiteUpload:Y,setDocuments:z,setDocumentError:H}=d(),{scrollStartSession:Z,scrollEndSession:ee,scrollToTarget:te}=c({auto:!(null==E?void 0:E.enablechatresponses)}),{artifacts:se,currentPopupType:ne,setArtifacts:ie,setCurrentArtifact:oe}=p(),[re,ae]=n(!1),le=i(null),de=e=>{const t=y(e);return!!t&&(G(""),X(null),D(t.status),L(t.upgradeGroups),q(t.upgradeUrl),!0)},ce=o((()=>j.some((e=>("Short Answer"===e.type||"Long Answer"===e.type||"long"===e.type||"short"===e.type||"Checkbox"===e.type||"Knowledge Upload"===e.type||e.id.includes("documentupload"))&&e.input.length>0))),[j]);return t("div",Object.assign({className:"mt-4 flex flex-wrap justify-between gap-4 items-center",dir:A?"rtl":"ltr"},{children:[t("div",Object.assign({className:"flex items-center flex-grow flex-wrap gap-2"},{children:[s(v,Object.assign({className:"px-5 min-h-[42px]",isDisabled:Q||K||re,onClick:()=>e(void 0,void 0,void 0,(function*(){var e,t,s;try{if(K||Q||re)return;G(""),H(""),X(null),R(null);const n=["Multiple Choice","Checkbox"];for(const e of j){if(g(e.input).length>e.maxLength&&!n.includes(e.type))throw new Error("One or more of your responses is too long!");if(e.isRequired&&!e.input.trim()&&"userinput:documentupload"!==e.id)throw new Error("You must fill out all required fields.")}const i=F.filter((e=>"finished"===e.status)),o=F.map((e=>e.name)),r=null!==(t=null===(e=null==E?void 0:E.documentuploadtype)||void 0===e?void 0:e.startsWith("enduserupload"))&&void 0!==t&&t,a=j.some((e=>"userinput:documentupload"===e.id&&e.isRequired)),l=u(M).filter((e=>!o.includes(e)));if(l.length){const e=l[l.length-1];ae(!0);const t=yield Y(e);t&&(i.push(t),yield new Promise((e=>setTimeout(e,5e3)))),ae(!1)}else if(a&&r&&!i.length)return void H("Please paste a valid website/video link or drag a file to add to the knowledge base.");const d=i.map((e=>e.documentId||"")).filter(Boolean),c=r&&d.length>0,p={};j.forEach((e=>{p[e.id]="Knowledge Upload"===e.type||e.id.includes("documentupload")?i.map((e=>e.name)).join(",")||"":e.input})),W("fetching"),Z(),te();const h=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API_URL}/submit`,{method:"POST",headers:Object.assign(Object.assign({"Content-Type":"application/json"},process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN&&{"x-pickaxe-session-token":process.env.NEXT_PUBLIC_PICKAXE_SESSION_TOKEN}),{"x-request-sent-at":(new Date).toISOString()}),body:JSON.stringify(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({origin:w,pickaxeId:I,senderType:k,valueObj:p},c&&{documentIds:d}),S&&{sender:S}),B&&{studioSessionToken:B}),!B&&!S&&{sender:m()}),C&&{portalId:C}),N&&{deploymentId:N}))}),v=yield h.json();if(!v.success){if(de(v))return;const e=new Error(v.error||v.message||"Failed to start generation");throw v.limitData&&(e.limitData=v.limitData),e}if(!v.submissionId||!v.sessionId)throw new Error("Failed to start generation");const b=v.submissionId,y=v.sessionId,O={sessionId:y,documentIds:c?d:[],question:{inputs:j.map((e=>({id:e.id,question:e.main,answer:e.input}))),responseParts:[]},messageCount:0,sentAt:new Date};R(O),(null==E?void 0:E.enablechatresponses)&&(T(y),U(!1),$(!0),V([{id:0,role:"assistant",parts:[],documentIds:[]}])),c&&z([]),W("streaming"),le.current=new AbortController;const x=[];let P=[...null!=se?se:[]],_=0,A=!1,D="";for(;!A;)try{const e=yield fetch(`${process.env.NEXT_PUBLIC_PICKAXE_API_URL}/stream/${b}?index=${_}`,{signal:null===(s=le.current)||void 0===s?void 0:s.signal,headers:{"Cache-Control":"no-cache",Connection:"keep-alive"}});if(!e.body)throw new Error("No response body");const t=e.body.getReader(),n=new TextDecoder,i=f({onEvent:e=>{var t,s;if(e.event&&"ping"!==e.event&&_++,"stop"!==e.event){if("error"===e.event){const t=JSON.parse(e.data),s=t.error||t.message||"Something went wrong.";return de(t)||G(s),void(A=!0)}if("delta"===e.event){const n=JSON.parse(e.data);if("text-start"===n.type)D="",x.push({type:"text",content:"",isVisible:null===(t=n.isVisible)||void 0===t||t});else if("text-delta"===n.type)D+=n.delta,x[x.length-1].content=D;else if("text-end"===n.type)D="";else if("reasoning-start"===n.type)D="",x.push({type:"reasoning",content:"",isVisible:null===(s=n.isVisible)||void 0===s||s});else if("reasoning-delta"===n.type)D+=n.delta,x[x.length-1].content=D;else if("reasoning-end"===n.type)D="";else if(n.type.startsWith("data-")){const e=n;x.push({type:e.type,content:JSON.stringify(e.data),isVisible:!0})}const i=Object.assign(Object.assign({},O),{question:Object.assign(Object.assign({},O.question),{responseParts:[...x]})});R(i),(null==E?void 0:E.enablechatresponses)&&V([{id:0,role:"assistant",parts:[...x],documentIds:[]}])}else if("artifact_created"===e.event){const t=JSON.parse(e.data);P=P.filter((e=>!(e.id===t.id&&e.version===t.version))),P.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),ie([...P]),ne.startsWith("inline")||oe({id:t.id,version:t.version})}else if("artifact_updated"===e.event){const t=JSON.parse(e.data);P=P.filter((e=>!(e.id===t.id&&e.version===t.version))),P.push(Object.assign(Object.assign({},t),{content:"",status:"updating"})),ie([...P]),ne.startsWith("inline")||oe({id:t.id,version:t.version})}else if("artifact_rewrite"===e.event){const t=JSON.parse(e.data);P=P.filter((e=>!(e.id===t.id&&e.version===t.version))),P.push(Object.assign(Object.assign({},t),{content:"",status:"streaming"})),ie([...P]),ne.startsWith("inline")||oe({id:t.id,version:t.version})}else if("artifact_content"===e.event){const t=JSON.parse(e.data),s=t.token.replace(/\u200B/g,"");P=P.map((e=>e.id===t.id&&e.version===t.version?Object.assign(Object.assign({},e),{content:e.content+s,status:"streaming"}):e)),ie([...P])}else if("artifact_finished"===e.event){const t=JSON.parse(e.data);ie(P.map((e=>e.id===t.id?Object.assign(Object.assign({},e),{status:"finished"}):e)))}}else A=!0}});for(;;){const{value:e,done:s}=yield t.read();if(s)break;i.feed(n.decode(e))}A||(yield new Promise((e=>setTimeout(e,1e3))))}catch(e){if("AbortError"===e.name)return void(A=!0);console.warn("Stream connection lost, retrying...",e),yield new Promise((e=>setTimeout(e,1e3)))}null==J||J(y)}catch(e){let t=b(e)||"";t&&!t.includes("Unexpected token 'A',")||(t="Oops! We're experiencing high traffic at the moment. Please try again later."),de(t)||G(t),te()}finally{W("idle"),ae(!1),ee()}}))},{children:re?(null==_?void 0:_.processing)||"Processing...":Q?(null==_?void 0:_.uploading)||"Uploading...":K?(null==_?void 0:_.loading)||"Loading...":null!==(x=null==E?void 0:E.submittext)&&void 0!==x?x:"Submit"})),ce&&s(v,Object.assign({variant:"transparent-text",className:"min-h-[42px] px-5",isDisabled:Q||K||re,onClick:O},{children:(null==_?void 0:_["clear-form"])||"Clear form"}))]})),!P.isWhiteLabel&&s(h,{containerClassName:"justify-end"})]}))};export{j as default};
@@ -1 +1 @@
1
- import{jsxs as e,Fragment as t,jsx as i}from"react/jsx-runtime";import{usePickaxeContext as l}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useStyleFontSize as s}from"../../../hooks/studio/useStyleFontSize.js";import o from"../common/PickaxeHead.js";import a from"../common/PickaxeEmbedHead.js";import r from"./History/index.js";import c from"./NewChat.js";import n from"./Questions/index.js";import m from"../../../common/cn.js";const x=()=>{const{lastSessionId:x,pickaxe:p,responsiveBy:f,translations:d,isEmbed:h,setSessionId:u}=l(),j=s(),v=h&&(null==p?void 0:p.chatflag);return e("div",Object.assign({className:m("relative flex w-full h-full overflow-y-auto flex-col items-center pb-10",v?"pt-0":"pt-12","viewport"===f?"min-[767px]:pb-10":"@[767px]/pickaxe-root:pb-10")},{children:[v?e(t,{children:[i(a,{className:"sticky top-0 z-10 w-full",historyBtnTip:(null==d?void 0:d["exit-chat-history"])||"Exit Chat History",onHistoryClick:()=>u(x)}),i("div",Object.assign({className:"relative flex min-h-[56px] w-full justify-end rounded-tl-lg rounded-tr-lg border-y p-4"},{children:i("p",Object.assign({className:m(j.b1,"absolute left-1/2 -translate-x-1/2 select-none text-center")},{children:(null==d?void 0:d["chat-history"])||"Chat History"}))}))]}):i("div",Object.assign({className:"flex w-full max-w-[700px] flex-col"},{children:i(o,{})})),i("div",Object.assign({className:m("flex w-full flex-col items-center min-h-0",v?"px-4":"px-6")},{children:i("div",Object.assign({className:"flex w-full max-w-[700px] flex-col h-full"},{children:e("div",Object.assign({className:m("flex flex-col gap-y-8 h-full","viewport"===f?"min-[767px]:mt-4":"@[767px]/pickaxe-root:mt-4")},{children:[(null==p?void 0:p.chatflag)?i(c,{}):i(n,{}),i(r,{})]}))}))}))]}))};export{x as default};
1
+ import{jsxs as e,jsx as t,Fragment as i}from"react/jsx-runtime";import{usePickaxeContext as l}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useStyleFontSize as o}from"../../../hooks/studio/useStyleFontSize.js";import s from"../common/PickaxeHead.js";import a from"../common/PickaxeEmbedHead.js";import n from"./History/index.js";import r from"./NewChat.js";import m from"./Questions/index.js";import c from"../../../common/cn.js";import{NavPill as d}from"../Addons/Navbar/NavPill.js";const p=()=>{const{lastSessionId:p,pickaxe:f,responsiveBy:x,translations:u,isEmbed:h,deploymentType:v,styles:j,setLastSessionId:b,setSessionId:y}=l(),g=(null==f?void 0:f.formtitle)||"Pickaxe",k=(null==f?void 0:f.coverphoto)||void 0,w=o(),N=h&&(null==f?void 0:f.chatflag);return e("div",Object.assign({className:c("relative flex w-full h-full overflow-y-auto flex-col items-center pb-10","pt-0","viewport"===x?"min-[767px]:pb-10":"@[767px]/pickaxe-root:pb-10")},{children:[!h&&t("div",Object.assign({className:c("direct-link"===v?"absolute top-4 left-4 md:top-6 md:left-6 z-40 flex items-center gap-2 animate-in fade-in slide-in-from-top-4 duration-500":"w-full max-w-3xl mt-6 px-4 md:px-0 flex justify-start z-30 mb-4 animate-in fade-in slide-in-from-top-4 duration-500 gap-2","dark"===j.portalTheme?"glass-dark ":"")},{children:t(d,{text:g,icon:k,onClick:()=>{y(p),b("")}})})),N?e(i,{children:[t(a,{className:"sticky top-0 z-10 w-full",historyBtnTip:(null==u?void 0:u["exit-chat-history"])||"Exit Chat History",onHistoryClick:()=>y(p)}),t("div",Object.assign({className:"relative flex min-h-[56px] w-full justify-end rounded-tl-lg rounded-tr-lg border-y p-4"},{children:t("p",Object.assign({className:c(w.b1,"absolute left-1/2 -translate-x-1/2 select-none text-center")},{children:(null==u?void 0:u["chat-history"])||"Chat History"}))}))]}):t("div",Object.assign({className:"flex w-full max-w-[700px] flex-col"},{children:t(s,{})})),t("div",Object.assign({className:c("flex w-full flex-col items-center min-h-0",N?"px-4":"px-6")},{children:t("div",Object.assign({className:"flex w-full max-w-[700px] flex-col h-full"},{children:e("div",Object.assign({className:c("flex flex-col gap-y-8 h-full","viewport"===x?"min-[767px]:mt-4":"@[767px]/pickaxe-root:mt-4")},{children:[(null==f?void 0:f.chatflag)?t(r,{}):t(m,{}),t(n,{})]}))}))}))]}))};export{p as default};
@@ -1 +1 @@
1
- import{__awaiter as e}from"../../_virtual/_tslib.js";import{jsx as o}from"react/jsx-runtime";import{createContext as i,useState as t,useEffect as s}from"react";import{ArtifactProvider as n}from"./Addons/Artifact/Provider.js";import r from"./DimensionProvider.js";import a from"./ResponseProvider.js";import l from"./Addons/Document/Provider.js";import d from"./Addons/Auth/Provider.js";const c=i({}),m=({children:i,origin:m,sender:p,senderType:y,deploymentId:h,deploymentType:f,deploymentDimensions:u,deploymentMisc:b,styles:g,colors:v,limits:F={},misc:w={isWhiteLabel:!0,isProfileImage:!0,isChatImage:!0,isTitle:!0,isDescription:!0,isHistory:!0},translations:x,artifact:S={popupType:"auto"},responsiveBy:I="viewport",locale:k="en",opacity:P=1,forceMobile:j=!1,disableHtml:C=!1,disableJs:T=!1,disableCss:D=!1,loadFont:H=!0,isRtl:L=!1,isEmbed:O=!1,isDropShadow:R=!1,isEmailLogin:E=!1,allowGuestUsage:A=!0,onGenerateComplete:M})=>{const[B,G]=t(""),[N,U]=t(""),[W,J]=t(""),[_,z]=t(""),[Y,q]=t(p),[K,Q]=t(y),[V,X]=t(null),[Z,$]=t(!1),[ee,oe]=t(!0),[ie,te]=t(!0),[se,ne]=t(!1);return s((()=>{$(!1)}),[null==g?void 0:g.font]),s((()=>{e(void 0,void 0,void 0,(function*(){if("undefined"!=typeof window&&H&&!Z&&(null==g?void 0:g.font)&&"Real Head Pro"!==g.font)try{(yield import("webfontloader")).default.load({google:{families:[g.font]},active:()=>{$(!0)},inactive:()=>{console.error("[pxe] failed to load font {styles.font}"),$(!0)}})}catch(e){console.error("[pxe] failed to load font:",e),$(!0)}}))}),[H,Z,null==g?void 0:g.font]),s((()=>{q(p)}),[p]),o(c.Provider,Object.assign({value:Object.assign({origin:m,contextId:B,pickaxeId:N,sessionId:W,lastSessionId:_,sender:Y,senderType:K,deploymentId:h,deploymentType:f,deploymentDimensions:u,deploymentMisc:b,pickaxe:V,styles:Object.assign({theme:"light",font:"Real Head Pro",fontSize:"md",formFieldStyle:"box",btnStyle:"filled",outlineThickness:1,cornerRadius:4},g),colors:Object.assign({primary:"#F6F8FA",text:"#000000",secondary:"#FFFFFF",secondaryText:"#000000",accent:"#228DD7",accentText:"#FFFFFF",error:"#EF4444"},v),misc:w,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",copy:"Copy","file-limit-reached":"You have reached the file limit.",save:"Save","save-as":"Save as","please-enter-email-to-continue":"Please enter your email to continue:","enter-email-to-continue":"Enter here your email to continue",submit:"Submit",sending:"Sending...","check-your-inbox":"Check your inbox","we-sent-your-an-activation-link":"We sent you an activation link. Please be sure to check your spam folder too.",resend:"Resend",resending:"Resending...","chat-history":"Chat History","exit-chat-history":"Exit Chat History","no-history":"No history yet.","log-out":"Log Out","clear-form":"Clear form"},x),artifact:S,responsiveBy:I,locale:k,opacity:P,forceMobile:j,loadFont:H,disableHtml:C,disableJs:T,disableCss:D,isFontLoaded:Z,isNewChat:ee,isShowIceBreaker:ie,isShowFeedbackMessage:se,isRtl:L,isEmbed:O,isDropShadow:R,isEmailLogin:E,allowGuestUsage:A,setContextId:G,setPickaxeId:U,setSessionId:J,setLastSessionId:z,setSender:q,setSenderType:Q,setPickaxe:X,setIsFontLoaded:$,setIsNewChat:oe,setIsShowIceBreaker:te,setIsShowFeedbackMessage:ne},M&&{onGenerateComplete:M})},{children:o(d,{children:o(r,{children:o(a,Object.assign({limits:F},{children:o(l,{children:o(n,Object.assign({},S,{children:i}))})}))})})}))};export{c as PickaxeContext,m as PickaxeProvider};
1
+ import{__awaiter as e}from"../../_virtual/_tslib.js";import{jsx as o}from"react/jsx-runtime";import{createContext as t,useState as i,useEffect as s}from"react";import{ArtifactProvider as n}from"./Addons/Artifact/Provider.js";import r from"./DimensionProvider.js";import a from"./ResponseProvider.js";import l from"./Addons/Document/Provider.js";import d from"./Addons/Auth/Provider.js";const c=t({}),p=({children:t,origin:p,sender:m,senderType:u,deploymentId:y,portalId:h,deploymentType:f,deploymentDimensions:g,deploymentMisc:b,styles:v,colors:S,limits:I={},misc:F={isWhiteLabel:!0,isProfileImage:!0,isChatImage:!0,isTitle:!0,isDescription:!0,isHistory:!0},translations:w,artifact:x={popupType:"auto"},responsiveBy:k="viewport",locale:P="en",opacity:C=1,forceMobile:j=!1,disableHtml:T=!1,disableJs:A=!1,disableCss:D=!1,loadFont:U=!0,isRtl:G=!1,isEmbed:H=!1,isDropShadow:O=!1,allowGuestUsage:R=!0,preventInitialSessionId:L=!1,onGenerateComplete:M,onSessionIdChange:E})=>{const[B,N]=i(""),[V,W]=i(""),[J,_]=i(""),[z,Y]=i(""),[q,K]=i(m),[Q,X]=i(null),[Z,$]=i(u),[ee,oe]=i("loading"),[te,ie]=i([]),[se,ne]=i(null),[re,ae]=i(null),[le,de]=i(null),[ce,pe]=i(null),[me,ue]=i(!1),[ye,he]=i(!0),[fe,ge]=i(!0),[be,ve]=i(!1);return s((()=>{ue(!1)}),[null==v?void 0:v.font]),s((()=>{e(void 0,void 0,void 0,(function*(){if("undefined"!=typeof window&&U&&!me&&(null==v?void 0:v.font)&&"Real Head Pro"!==v.font)try{(yield import("webfontloader")).default.load({google:{families:[v.font]},active:()=>{ue(!0)},inactive:()=>{console.error("[pxe] failed to load font {styles.font}"),ue(!0)}})}catch(e){console.error("[pxe] failed to load font:",e),ue(!0)}}))}),[U,me,null==v?void 0:v.font]),s((()=>{K(m)}),[m]),o(c.Provider,Object.assign({value:Object.assign({origin:p,contextId:B,pickaxeId:V,sessionId:J,lastSessionId:z,sender:q,senderType:Z,portalId:h,deploymentId:y,deploymentType:f,validationStatus:ee,validationUpgradeGroups:te,validationUpgradeUrl:se,deploymentDimensions:g,deploymentMisc:b,accessGroup:Q,pickaxe:ce,styles:Object.assign({theme:"light",font:"Real Head Pro",fontSize:"md",formFieldStyle:"box",btnStyle:"filled",outlineThickness:1,cornerRadius:4},v),colors:Object.assign({primary:"#F6F8FA",text:"#000000",secondary:"#FFFFFF",secondaryText:"#000000",accent:"#228DD7",accentText:"#FFFFFF",error:"#EF4444"},S),misc:F,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",copy:"Copy","file-limit-reached":"You have reached the file limit.",save:"Save","save-as":"Save as","please-enter-email-to-continue":"Please enter your email to continue:","enter-email-to-continue":"Enter here your email to continue",submit:"Submit",sending:"Sending...","check-your-inbox":"Check your inbox","we-sent-your-an-activation-link":"We sent you an activation link. Please be sure to check your spam folder too.",resend:"Resend",resending:"Resending...","chat-history":"Chat History","exit-chat-history":"Exit Chat History","no-history":"No history yet.","log-out":"Log Out","clear-form":"Clear form"},w),artifact:x,responsiveBy:k,locale:P,opacity:C,forceMobile:j,loadFont:U,disableHtml:T,disableJs:A,disableCss:D,isFontLoaded:me,isNewChat:ye,isShowIceBreaker:fe,isShowFeedbackMessage:be,isRtl:G,isEmbed:H,isDropShadow:O,allowGuestUsage:R,clientSecret:le,stripeAccountId:re,preventInitialSessionId:L,setClientSecret:de,setStripeAccountId:ae,setContextId:N,setValidationStatus:oe,setValidationUpgradeGroups:ie,setValidationUpgradeUrl:ne,setPickaxeId:W,setSessionId:e=>{_((o=>{const t="function"==typeof e?e(o):e;return null==E||E(t),t}))},setLastSessionId:Y,setSender:K,setSenderType:$,setAccessGroup:X,setPickaxe:pe,setIsFontLoaded:ue,setIsNewChat:he,setIsShowIceBreaker:ge,setIsShowFeedbackMessage:ve},M&&{onGenerateComplete:M})},{children:o(d,{children:o(r,{children:o(a,Object.assign({limits:I},{children:o(l,{children:o(n,Object.assign({},x,{children:t}))})}))})})}))};export{c as PickaxeContext,p as PickaxeProvider};
@@ -0,0 +1 @@
1
+ import{__awaiter as e}from"../../../_virtual/_tslib.js";import{jsxs as t,jsx as i}from"react/jsx-runtime";import{useMemo as s}from"react";import{usePickaxeContext as o}from"../../../hooks/pickaxe/usePickaxeContext.js";import r from"./PickaxeButton.js";import{STUDIO_INFINITY_VALUE as n,intervalToSuffix as c}from"./PickaxeCommon.js";import{currencyOptions as a}from"./PickaxeCurrency.js";import{Avatar as l,AvatarImage as d,AvatarFallback as m}from"./PickaxeAvatar.js";import{useAuthContext as u}from"../Addons/Auth/hooks/useAuthContext.js";import p from"../../../common/api/pickaxe.js";import{isInIframe as f}from"../../../common/utils.js";import{useResponseContext as x}from"../../../hooks/pickaxe/useResponseContext.js";import{useStudio as h}from"../../../hooks/studio/useStudio.js";const v=({data:v,children:b,upgradeUrl:j})=>{var g;const{limitData:k}=x(),{studio:y}=h(),{colors:N,sender:O,pickaxe:w,setValidationStatus:C,setStripeAccountId:S,setClientSecret:I}=o(),{token:U,setRedirectUrl:_}=u(),A=s((()=>{var e;return null!==(e=v.displayName)&&void 0!==e?e:v.name}),[v]),L=s((()=>{var e;return null!==(e=v.displayDescription)&&void 0!==e?e:v.description}),[v]),T=!!(null==y?void 0:y.data.usage)&&y.data.usage.isCredits,P=s((()=>{var e;const{price:t,priceInterval:i,currency:s}=v;if(!t)return{price:"Free",suffix:""};const o=c(i,!0);return{price:`${(null!==(e=a.find((e=>e.id===s)))&&void 0!==e?e:a[0]).symbol}${t.toLocaleString()}`,suffix:o}}),[v]),R=s((()=>{const{limit:e,limitInterval:t}=v;if(e===n)return{limit:"Unlimited",suffix:""};const i=c(t,!0);return{limit:e.toLocaleString(),suffix:i}}),[v]);return t("div",Object.assign({className:"relative flex min-h-[260px] w-[220px] shrink-0 snap-center flex-col justify-between rounded-xl border p-4 shadow-sm",style:{backgroundColor:N.secondary,color:N.secondaryText}},{children:[b,t("div",Object.assign({className:"flex flex-col"},{children:[t("div",Object.assign({className:"flex flex-col"},{children:[t(l,Object.assign({className:"h-8 w-8"},{children:[i(d,{src:null!==(g=v.image)&&void 0!==g?g:"",alt:A}),i(m,{})]})),i("p",Object.assign({className:"mt-2 text-sm font-semibold line-clamp-1",title:A},{children:A})),Boolean(L)&&i("p",Object.assign({className:"mt-1 text-[10px] opacity-70 line-clamp-2 leading-tight"},{children:L})),t("p",Object.assign({className:"mt-2 text-base font-semibold"},{children:[P.price,i("span",Object.assign({className:"text-xs font-normal opacity-70"},{children:P.suffix}))]}))]})),t("div",Object.assign({className:"mt-3 flex flex-col border-t py-2",style:{borderTopColor:N.secondaryText}},{children:[i("span",Object.assign({className:"text-[10px] font-bold opacity-50"},{children:T?"CREDITS":"USES"})),t("p",Object.assign({className:"text-base font-semibold"},{children:[R.limit,i("span",Object.assign({className:"text-xs font-normal opacity-70"},{children:R.suffix}))]}))]}))]})),i(r,Object.assign({variant:"primary",className:"w-full mt-2 min-h-[32px] text-xs",onClick:()=>e(void 0,void 0,void 0,(function*(){if(U)e(void 0,void 0,void 0,(function*(){try{const e=yield p.post("/access_group_checkout",{data:{studioUserId:O||void 0,studioId:null==w?void 0:w.studioid,accessGroupId:v.accessGroupId,successUrl:document.URL,isEmbed:f(),studioSessionToken:U}}),{success:t,url:i,clientSecret:s,stripeAccountId:o,error:r}=e.data;t?f()?s&&o?(S(o),I(s),C("stripe_checkout")):i&&window.open(i,"_blank"):i&&(window.location.href=i):alert(r)}catch(e){alert(e)}}));else if(f()){const e=j||(null==k?void 0:k.limitLink);_(e||null),C("login_required")}else window.location.href=j||`${null==k?void 0:k.limitLink}?redirectUrl=${document.URL}`}))},{children:v.ctaButtonText}))]}))};export{v as default};
@@ -0,0 +1 @@
1
+ import{__rest as a}from"../../../_virtual/_tslib.js";import{jsx as e,jsxs as s}from"react/jsx-runtime";import*as r from"react";import l from"../../../common/cn.js";import*as t from"@radix-ui/react-avatar";const m=r.forwardRef(((s,r)=>{var{className:m}=s,c=a(s,["className"]);return e(t.Root,Object.assign({ref:r,className:l("relative flex h-6 w-6 shrink-0 overflow-hidden rounded-full",m)},c))}));m.displayName=t.Root.displayName;const c=r.forwardRef(((s,r)=>{var{className:m}=s,c=a(s,["className"]);return e(t.Image,Object.assign({ref:r,className:l("aspect-square h-full w-full",m)},c))}));c.displayName=t.Image.displayName;const n=r.forwardRef(((s,r)=>{var{className:m}=s,c=a(s,["className"]);return e(t.Fallback,Object.assign({ref:r,className:l("flex h-full w-full select-none items-center justify-center rounded-full bg-muted text-sm text-muted-foreground",m)},c))}));n.displayName=t.Fallback.displayName;const i=r.forwardRef(((r,t)=>{var{className:i,data:d,max:o=5,avatarClassName:f}=r,u=a(r,["className","data","max","avatarClassName"]);const N=o&&d.length>o,g=N?d.slice(0,o):d,p=N?d.length-o:0;return s("div",Object.assign({ref:t,className:l("flex items-center",i)},u,{children:[g.map((({src:a,initials:r},t)=>e("div",Object.assign({className:l(0!==t&&"-ml-2","rounded-full border-2 border-background"),style:{zIndex:g.length-t}},{children:s(m,Object.assign({},f&&{className:f},{children:[e(c,{src:a}),e(n,Object.assign({className:"text-xs"},{children:r}))]}))}),t))),N&&s("div",Object.assign({className:l("text-sm text-muted-foreground",0!==g.length&&"ml-1"),style:{zIndex:0}},{children:["+",p]}))]}))}));i.displayName="AvatarGroup";export{m as Avatar,n as AvatarFallback,i as AvatarGroup,c as AvatarImage};
@@ -0,0 +1 @@
1
+ const y=(y,e=!1)=>"day"===y?e?"/daily":"/day":"week"===y?e?"/weekly":"/wk":"month"===y?e?"/monthly":"/mo":"year"===y?e?"/yearly":"/yr":"",e=-1337;export{e as STUDIO_INFINITY_VALUE,y as intervalToSuffix};
@@ -0,0 +1 @@
1
+ const l=[{id:"usd",label:"US Dollar ($)",min:.5,symbol:"$",decimals:2},{id:"eur",label:"Euro (€)",min:.5,symbol:"€",decimals:2},{id:"gbp",label:"British Pound (£)",min:.3,symbol:"£",decimals:2},{id:"jpy",label:"Japanese Yen (¥)",min:50,symbol:"¥",decimals:0},{id:"aud",label:"Australian Dollar ($)",min:.5,symbol:"A$",decimals:2},{id:"cad",label:"Canadian Dollar ($)",min:.5,symbol:"C$",decimals:2},{id:"cny",label:"Chinese Yuan (¥)",min:3,symbol:"CN¥",decimals:2},{id:"chf",label:"Swiss Franc (Fr)",min:.5,symbol:"Fr",decimals:2},{id:"inr",label:"Indian Rupee (₹)",min:.5,symbol:"₹",decimals:2},{id:"sgd",label:"Singapore Dollar ($)",min:.5,symbol:"S$",decimals:2},{id:"hkd",label:"Hong Kong Dollar ($)",min:4,symbol:"HK$",decimals:2},{id:"krw",label:"South Korean Won (₩)",min:500,symbol:"₩",decimals:0},{id:"nzd",label:"New Zealand Dollar ($)",min:.5,symbol:"NZ$",decimals:2},{id:"zar",label:"South African Rand (R)",min:5,symbol:"R",decimals:2},{id:"brl",label:"Brazilian Real (R$)",min:.5,symbol:"R$",decimals:2},{id:"mxn",label:"Mexican Peso ($)",min:10,symbol:"MX$",decimals:2},{id:"sek",label:"Swedish Krona (kr)",min:3,symbol:"kr",decimals:2},{id:"nok",label:"Norwegian Krone (kr)",min:3,symbol:"kr",decimals:2},{id:"try",label:"Turkish Lira (₺)",min:.5,symbol:"₺",decimals:2},{id:"thb",label:"Thai Baht (฿)",min:10,symbol:"฿",decimals:2},{id:"pln",label:"Polish Złoty (zł)",min:2,symbol:"zł",decimals:2},{id:"myr",label:"Malaysian Ringgit (RM)",min:2,symbol:"RM",decimals:2},{id:"idr",label:"Indonesian Rupiah (Rp)",min:5e3,symbol:"Rp",decimals:2},{id:"czk",label:"Czech Koruna (Kč)",min:15,symbol:"Kč",decimals:2},{id:"bgn",label:"Bulgarian Lev (лв)",min:1,symbol:"лв",decimals:2},{id:"rub",label:"Russian Ruble (₽)",min:30,symbol:"₽",decimals:2}];export{l as currencyOptions};
@@ -1 +1 @@
1
- import{jsx as e,jsxs as o}from"react/jsx-runtime";import{AnimatePresence as s}from"framer-motion";import{usePickaxeContext as t}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as r}from"../../../hooks/pickaxe/useResponseContext.js";import{useStyleFontSize as i}from"../../../hooks/studio/useStyleFontSize.js";import{isInIframe as m}from"../../../common/utils.js";import a from"../../Icons/circle-exclamation.svg.js";import c from"../../Core/SpringTransition.js";import n from"../../Core/HtmlRenderer.js";import l from"./PickaxeButton.js";import p from"../../../common/cn.js";const f=({className:f,iconClassName:h,htmlClassName:x})=>{const{colors:j}=t(),{limitData:d}=r(),g=i(),u=window.location.href.includes("_embed");return e(s,{children:!!d&&o(c,Object.assign({className:p("flex gap-3",f)},{children:[e(a,{className:p("h-5 w-5 shrink-0",h),style:{color:j.accent}}),o("div",Object.assign({className:"flex flex-col gap-4"},{children:[e(n,{className:p(g.b2,"font-semibold",x),style:{color:j.text},html:d.html}),!!d.cta&&e("a",Object.assign({href:d.ctaLink,target:m()&&!u?"_self":"_top",rel:"noreferrer"},{children:e(l,Object.assign({variant:"primary",className:"min-h-[38px]",style:{minHeight:"38px"}},{children:d.cta}))}))]}))]}))})};export{f as default};
1
+ import{__awaiter as e}from"../../../_virtual/_tslib.js";import{jsx as o,jsxs as s}from"react/jsx-runtime";import{useState as t,useEffect as i}from"react";import{AnimatePresence as r}from"framer-motion";import{usePickaxeContext as a}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as l}from"../../../hooks/pickaxe/useResponseContext.js";import{useStyleFontSize as n}from"../../../hooks/studio/useStyleFontSize.js";import{isInIframe as c}from"../../../common/utils.js";import d from"../../Icons/circle-exclamation.svg.js";import u from"../../Core/SpringTransition.js";import p from"../../Core/HtmlRenderer.js";import m from"./PickaxeButton.js";import x from"../../../common/cn.js";import f from"../../../common/api/pickaxe.js";import{useAuthContext as v}from"../Addons/Auth/hooks/useAuthContext.js";import g from"./AccessGroupCardPreview.js";import{useStudio as h}from"../../../hooks/studio/useStudio.js";import{currencyOptions as b}from"./PickaxeCurrency.js";const y=({price:e,uses:t,isCredits:i,isSelected:r,costPerRun:a,onClick:l,colors:n})=>{const c={backgroundColor:n.secondary,color:n.secondaryText,borderColor:r?n.secondaryText:"rgba(0,0,0,0.1)"},d=i&&a?Math.ceil(t/a):0;return s("button",i?Object.assign({onClick:l,className:x("flex min-w-[200px] shrink-0 cursor-pointer flex-col rounded-[16px] px-6 py-5 text-left transition-all duration-200",r?"border-2 shadow-sm":"border opacity-80 hover:opacity-100"),style:c},{children:[s("div",Object.assign({className:"mb-4 flex items-center gap-2"},{children:[o("span",Object.assign({className:"text-[24px] font-semibold tracking-tight"},{children:e})),s("span",Object.assign({className:"text-[14px] font-light opacity-80"},{children:["/",t," credits"]}))]})),o("div",{className:"mb-4 h-[1px] w-full",style:{backgroundColor:n.secondaryText,opacity:.15}}),s("span",Object.assign({className:"text-[14px] italic opacity-70"},{children:["~ ",void 0!==d&&d>0?d.toLocaleString():"..."," ","runs"]}))]}):Object.assign({onClick:l,className:x("flex shrink-0 cursor-pointer items-center justify-center gap-2 rounded-[16px] px-5 py-3 transition-all duration-200",r?"border-2 shadow-sm":"border opacity-80 hover:opacity-100"),style:c},{children:[o("span",Object.assign({className:"text-[24px] font-semibold tracking-tight"},{children:e})),s("span",Object.assign({className:"text-[14px] font-light opacity-80"},{children:["/",t," uses"]}))]}))},j=({className:j,iconClassName:k,htmlClassName:w})=>{var C,N,O,A,S,U;const{colors:_,pickaxe:I,sender:R,setValidationStatus:P,setClientSecret:G,setStripeAccountId:L}=a(),{token:T,setRedirectUrl:$}=v(),{limitData:B}=l(),{studio:q}=h(),F=n(),[M,z]=t(0),[D,E]=t(null),H=!!(null==q?void 0:q.data.usage)&&q.data.usage.isCredits,V=null!==(N=null===(C=b.find((e=>e.id===(null==q?void 0:q.data.currency))))||void 0===C?void 0:C.symbol)&&void 0!==N?N:b[0].symbol;i((()=>{var e;(null===(e=null==B?void 0:B.buyUses)||void 0===e?void 0:e.length)&&z(0)}),[B]);const J=null==B?void 0:B.customLink,K=null==B?void 0:B.limitCTA,Q=Array.isArray(null==B?void 0:B.upgradeGroups)&&(null==B?void 0:B.upgradeGroups)&&(null==B?void 0:B.upgradeGroups.length)>0,W=(H?null===(O=null==q?void 0:q.data.usage)||void 0===O?void 0:O.availableCredits:null===(A=null==q?void 0:q.data.usage)||void 0===A?void 0:A.availableUses)||(null==B?void 0:B.buyUses),X=Array.isArray(W)&&W.length>0,Y=X&&Array.isArray(W)&&W[M];i((()=>{let o=!0;return e(void 0,void 0,void 0,(function*(){var e;if(q&&(null===(e=q.data)||void 0===e?void 0:e.workspaceId))try{const e=yield f.get(`/cost_per_run?workspaceId=${q.data.workspaceId}`,{withCredentials:!1});if(o){const o=1e4*e.data.costPerRun||0;E(o)}}catch(e){console.error("Failed to fetch cost per run:",e),o&&E(0)}else E(0)})),()=>{o=!1}}),[q,null===(S=null==q?void 0:q.data)||void 0===S?void 0:S.workspaceId,E]);return B?o(r,{children:s(u,Object.assign({className:x("flex flex-col gap-5 w-full",j)},{children:[s("div",Object.assign({className:"flex flex-col sm:flex-row gap-4 items-start sm:items-center justify-between rounded-lg p-3 bg-opacity-5",style:{backgroundColor:_.secondary}},{children:[s("div",Object.assign({className:"flex gap-3 items-start"},{children:[o(d,{className:x("h-5 w-5 shrink-0 mt-0.5",k),style:{color:_.accent}}),o(p,{className:x(F.b2,"font-semibold leading-relaxed text-sm",w),style:{color:_.text},html:B.limitMessage||""})]})),J&&o(m,Object.assign({variant:"primary",className:"whitespace-nowrap min-h-[32px] w-full sm:w-auto text-sm",onClick:()=>e(void 0,void 0,void 0,(function*(){if(c()){if(!T)return $(J||null),void P("login_required");window.open(J)}else window.location.href=`${J}?redirectUrl=${document.URL}`}))},{children:K}))]})),Q&&s("div",Object.assign({className:"flex flex-col gap-2"},{children:[o("h3",Object.assign({className:"text-xs font-bold opacity-70 uppercase px-1",style:{color:_.text}},{children:"Available Plans"})),o("div",Object.assign({className:"flex flex-row gap-3 overflow-x-auto pb-4 pt-1 snap-x scrollbar-thin"},{children:null===(U=B.upgradeGroups)||void 0===U?void 0:U.map(((e,s)=>o(g,{data:e},e.accessGroupId||s)))}))]})),X&&Y&&s("div",Object.assign({className:"flex flex-col gap-3"},{children:[s("h3",Object.assign({className:"text-xs font-bold opacity-70 uppercase px-1",style:{color:_.text}},{children:["Buy ",H?"Credits":"Uses"]})),o("div",Object.assign({className:"flex flex-row gap-3 overflow-x-auto pb-2 pt-1 snap-x scrollbar-thin"},{children:null==W?void 0:W.map(((e,s)=>o(y,{price:e.price,uses:e.uses,isCredits:H,costPerRun:D||void 0,isSelected:s===M,onClick:()=>z(s),colors:_},s)))})),s(m,Object.assign({variant:"primary",className:"w-full py-3 text-sm font-bold shadow-md",onClick:()=>e(void 0,void 0,void 0,(function*(){var o,s;T?(o=Y.uses,s=Y.price,e(void 0,void 0,void 0,(function*(){try{const e=yield f.post("/get_extra_usage_payment_link",{data:{sender:R||void 0,studioSessionToken:T,studioId:null==I?void 0:I.studioid,cost:s,isEmbed:c(),extraUses:o,successUrl:document.URL}}),{success:t,url:i,clientSecret:r,stripeAccountId:a,error:l}=e.data;t?c()?r&&a?(L(a),G(r),P("stripe_checkout")):i&&window.open(i,"_blank"):i&&(window.location.href=i):alert(l)}catch(e){alert(e)}}))):c()?($(J||null),P("login_required")):window.location.href=`${J}?redirectUrl=${document.URL}`}))},{children:["Buy ",Y.uses.toLocaleString()," ",H?"Credits":"Uses"," for ",V,Y.price]}))]}))]}))}):null};export{j as default};
@@ -1 +1 @@
1
- import{jsx as t,Fragment as e,jsxs as o}from"react/jsx-runtime";import{usePickaxe as s}from"../../hooks/pickaxe/usePickaxe.js";import{useState as r,useEffect as a,useMemo as i}from"react";import{usePickaxeContext as n}from"../../hooks/pickaxe/usePickaxeContext.js";import{useAuthContext as l}from"./Addons/Auth/hooks/useAuthContext.js";import{useResponseContext as m}from"../../hooks/pickaxe/useResponseContext.js";import{useDocumentContext as c}from"./Addons/Document/hooks/useDocumentContext.js";import{useArtifactContext as p}from"./Addons/Artifact/hooks/useArtifactContext.js";import{v4 as x}from"uuid";import{ScrollProvider as d}from"./Addons/Scroll/Provider.js";import f from"./common/PickaxeSkeleton.js";import u from"./Chat/index.js";import h from"./Form/index.js";import k from"./Addons/Auth/index.js";import j from"../../common/cn.js";const w=({pickaxeId:w,className:g})=>{const{sessionId:y,styles:A,colors:C,responsiveBy:N,deploymentType:b,isNewChat:v,isEmailLogin:P,opacity:S,setContextId:I,setPickaxeId:O,setSessionId:D,setPickaxe:L}=n(),{isLoggedOut:E,isSent:R}=l(),{setMessages:F,setResponse:M,setError:T,setLimitData:$,setIsSwitchedToChat:B}=m(),{setDocumentError:H}=c(),{setCurrentArtifact:W}=p(),[q,z]=r(!1),G=s(),J="chat-input"===b&&v&&!R,K="chat-input"!==b||!R;a((()=>{O(w)}),[w]),a((()=>{if(!G.data)return;const t=G.data.chatflag;D(t?x():""),I(x()),t?F([]):M(null),T(""),H(""),$(null),W(null),B(!1),L(G.data),z(!0)}),[G.data]),a((()=>{T(""),H(""),$(null),F([]),M(null),W(null)}),[y]);const Q=i((()=>{const t=null!=S?S:1;if(!C.primary||!C.primary.startsWith("#")||t<0||t>1)return C.primary;const e=Math.round(255*t).toString(16).padStart(2,"0");return`${C.primary}${e}`}),[C.primary,S]);return G.data?t("div",Object.assign({className:j("relative @container/pickaxe-root flex flex-col flex-grow w-full h-full","dark"===A.theme&&"dark",g),style:Object.assign({backgroundColor:J?"transparent":Q,color:C.text},A.font&&"Real Head Pro"!==A.font&&{fontFamily:A.font})},{children:P&&E&&K?t(k,{}):t(e,{children:G.isLoading||!q?t("div",Object.assign({className:j("flex items-center flex-col w-full pt-12 px-4 pb-10","viewport"===N?"min-[767px]:pb-40":"@[767px]/pickaxe-root:pb-40")},{children:o("div",Object.assign({className:"flex w-full items-center max-w-[700px] flex-col"},{children:[t(f,{className:"w-[72px] h-[72px]"}),t(f,{className:"h-[20px] mt-6 w-full"}),t(f,{className:"h-[20px] mt-2 w-full"}),t(f,{className:"h-[20px] mt-2 w-full max-w-[400px]"}),t("div",Object.assign({className:"flex flex-col gap-y-8 w-full mt-6"},{children:t(f,{className:j("w-full min-h-[48px]","viewport"===N?"min-[767px]:max-w-[176px]":"@[767px]/pickaxe-root:max-w-[176px]")})}))]}))})):t(e,{children:t(d,y?{children:t(u,{})}:{children:t(h,{})})})})})):null};export{w as Pickaxe};
1
+ import{__awaiter as e}from"../../_virtual/_tslib.js";import{jsx as s,jsxs as t}from"react/jsx-runtime";import{usePickaxe as o}from"../../hooks/pickaxe/usePickaxe.js";import{useState as i,useMemo as a,useEffect as r}from"react";import{usePickaxeContext as l}from"../../hooks/pickaxe/usePickaxeContext.js";import{useAuthContext as c}from"./Addons/Auth/hooks/useAuthContext.js";import{useResponseContext as n}from"../../hooks/pickaxe/useResponseContext.js";import{useDocumentContext as d}from"./Addons/Document/hooks/useDocumentContext.js";import{useArtifactContext as m}from"./Addons/Artifact/hooks/useArtifactContext.js";import{v4 as p}from"uuid";import{ScrollProvider as u}from"./Addons/Scroll/Provider.js";import f from"./common/PickaxeSkeleton.js";import x from"./Chat/index.js";import h from"./Form/index.js";import g from"./Addons/Auth/index.js";import v from"../../common/cn.js";import j from"../../common/api/pickaxe.js";import{getValidationFailure as b}from"../../common/validation.js";import y from"./common/AccessGroupCardPreview.js";import{Avatar as k,AvatarImage as w,AvatarFallback as N}from"./common/PickaxeAvatar.js";import O from"../Icons/lock.svg.js";import{EmbeddedCheckoutProvider as _,EmbeddedCheckout as I}from"../../node_modules/.pnpm/@stripe_react-stripe-js@4.0.2_@stripe_stripe-js@7.9.0_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@stripe/react-stripe-js/dist/react-stripe.esm.mjs.js";import{loadStripe as A}from"../../node_modules/.pnpm/@stripe_stripe-js@7.9.0/node_modules/@stripe/stripe-js/dist/index.mjs.js";const C=({className:e})=>s("svg",Object.assign({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:e},{children:s("polyline",{points:"15 18 9 12 15 6"})})),S=({pickaxeId:S,className:P})=>{const{sessionId:q,styles:U,colors:T,responsiveBy:G,deploymentType:L,isNewChat:R,isEmbed:E,opacity:D,deploymentId:B,sender:$,portalId:F,validationStatus:V,validationUpgradeGroups:M,validationUpgradeUrl:W,stripeAccountId:z,clientSecret:H,preventInitialSessionId:J,setClientSecret:K,setStripeAccountId:X,setValidationStatus:Y,setValidationUpgradeGroups:Q,setValidationUpgradeUrl:Z,setContextId:ee,setPickaxeId:se,setSessionId:te,setPickaxe:oe,setAccessGroup:ie}=l(),{isSent:ae,token:re}=c(),{setMessages:le,setResponse:ce,setError:ne,setLimitData:de,setIsSwitchedToChat:me}=n(),{setDocumentError:pe}=d(),{setCurrentArtifact:ue}=m(),[fe,xe]=i(!1),he=o(),ge="chat-input"===L&&R&&!ae,ve=a((()=>z?A(process.env.NEXT_PUBLIC_STRIPE_KEY,{stripeAccount:z}):null),[z]);r((()=>{se(S)}),[S]);r((()=>{if(!B&&!F||!he.data)return;if("stripe_checkout"===V)return;e(void 0,void 0,void 0,(function*(){var e;Y("loading");try{const s=yield j.post("/validate_studio_deployment",{data:{deploymentId:B,sender:$||void 0,studioSessionToken:re,portalId:F,studioId:null===(e=he.data)||void 0===e?void 0:e.studioid}});if(s.data.success)Y("success"),Q([]),Z(null),ie(s.data.accessGroup);else{const e=b(s.data);if(!e)return Y("login_required"),Q([]),void Z(null);Y(e.status),Q(e.upgradeGroups),Z(e.upgradeUrl),xe(!0)}}catch(e){console.error("Failed to validate deployment:",e),Y("success")}}))}),[B,$,re,F,he.data]),r((()=>{if(!he.data)return;const e=he.data.chatflag;J||te(e?p():""),ee(p()),e?le([]):ce(null),ne(""),pe(""),de(null),ue(null),me(!1),oe(he.data),xe(!0)}),[he.data]),r((()=>{ne(""),pe(""),de(null),le([]),ce(null),ue(null)}),[q]);const je=a((()=>{const e=null!=D?D:1;if(!T.primary||!T.primary.startsWith("#")||e<0||e>1)return T.primary;const s=Math.round(255*e).toString(16).padStart(2,"0");return`${T.primary}${s}`}),[T.primary,D]);if(!he.data)return null;return s("div",Object.assign({className:v("relative @container/pickaxe-root flex flex-col flex-grow w-full h-full","dark"===U.theme&&"dark",P),style:Object.assign({backgroundColor:ge?"transparent":je,color:T.text},U.font&&"Real Head Pro"!==U.font&&{fontFamily:U.font})},{children:"stripe_checkout"===V&&H&&ve?t("div",Object.assign({className:"absolute inset-0 z-[999] flex flex-col w-full h-full overflow-hidden",style:{backgroundColor:T.secondary||"#ffffff",color:T.secondaryText||"#000000"}},{children:[s("div",Object.assign({className:"flex items-center p-4 border-b border-gray-100 shrink-0"},{children:t("button",Object.assign({onClick:()=>{K&&K(null),X&&X(null),Y("success")},className:"flex items-center gap-2 text-sm font-semibold opacity-70 hover:opacity-100 transition-opacity",style:{color:T.text}},{children:[s(C,{className:"w-5 h-5"}),s("span",{children:"Back"})]}))})),s("div",Object.assign({className:"flex-1 w-full h-full overflow-y-auto [&>div]:h-full"},{children:s(_,Object.assign({stripe:ve,options:{clientSecret:H}},{children:s(I,{})}))}))]})):he.isLoading||!fe||"loading"===V?s("div",Object.assign({className:v("flex items-center flex-col w-full pt-12 px-4 pb-10","viewport"===G?"min-[767px]:pb-40":"@[767px]/pickaxe-root:pb-40")},{children:t("div",Object.assign({className:"flex w-full items-center max-w-[700px] flex-col"},{children:[s(f,{className:"w-[72px] h-[72px]"}),s(f,{className:"h-[20px] mt-6 w-full"}),s(f,{className:"h-[20px] mt-2 w-full"}),s(f,{className:"h-[20px] mt-2 w-full max-w-[400px]"}),s("div",Object.assign({className:"flex flex-col gap-y-8 w-full mt-6"},{children:s(f,{className:v("w-full min-h-[48px]","viewport"===G?"min-[767px]:max-w-[176px]":"@[767px]/pickaxe-root:max-w-[176px]")})}))]}))})):"upgrade_required"===V?s("div",Object.assign({className:"flex flex-col items-center justify-center w-full h-full p-4 overflow-y-auto"},{children:M&&M.length>0?t("div",Object.assign({className:"flex flex-col items-center gap-6 w-full max-w-4xl"},{children:[t("div",Object.assign({className:"text-center"},{children:[s("h2",Object.assign({className:"text-2xl font-bold mb-2"},{children:"Upgrade Required"})),s("p",Object.assign({className:"opacity-80"},{children:"Please upgrade to continue using this tool."}))]})),s("div",Object.assign({className:"flex flex-wrap justify-center gap-4 w-full"},{children:M.map(((e,t)=>s(y,{data:e,upgradeUrl:W},e.id||t)))}))]})):t("div",Object.assign({className:"text-center mb-8"},{children:[s("h2",Object.assign({className:"text-2xl font-bold mb-2"},{children:"Access Locked"})),s("p",Object.assign({className:"opacity-80"},{children:"This tool is locked to use. Contact owner for more information."}))]}))})):"login_required"===V&&E?s(g,{}):"login_required"!==V||E?"access_denied"===V?t("div",Object.assign({className:"flex flex-col items-center justify-center w-full h-full p-4 overflow-y-auto"},{children:[t(k,Object.assign({className:"h-[68px] w-[68px] mb-4"},{children:[s(w,{src:null===(be=he.data)||void 0===be?void 0:be.coverphoto,alt:`${null===(ye=he.data)||void 0===ye?void 0:ye.formtitle} Logo`}),s(N,{})]})),t("div",Object.assign({className:"text-center mb-6"},{children:[s("h2",Object.assign({className:"text-2xl font-bold mb-2"},{children:"Access Denied"})),t("div",Object.assign({className:"w-[400px] text-xl flex justify-center items-start"},{children:[s(O,{className:"h-6 w-6 mr-[-20px] shrink-0"}),s("p",Object.assign({className:"ml-1"},{children:"It looks like you don't have access to these resources. Please request access to continue."}))]}))]})),s("button",Object.assign({className:"px-6 py-2 font-medium rounded-md transition-colors",style:{backgroundColor:T.accent,color:T.accentText,borderRadius:U.cornerRadius},onClick:()=>{e(void 0,void 0,void 0,(function*(){var e,s;const t=M.map((e=>e.accessGroupId));try{const o=yield j.post("/request_access",{data:{sender:$||void 0,studioSessionToken:re,studioId:null===(e=he.data)||void 0===e?void 0:e.studioid,message:JSON.stringify({toolId:null===(s=he.data)||void 0===s?void 0:s.formid,deploymentId:B,accessGroupIds:t})}});o.data.success?alert("Successfully requested access!"):alert(o.data.error)}catch(e){alert(`Couldn't request access. Error: ${e}`)}}))}},{children:"Request Access"})),s("span",Object.assign({className:"mt-4 mb-2"},{children:"or"})),s("span",Object.assign({className:"font-medium text-lg"},{children:"Sign in with a different account"}))]})):s(u,q?{children:s(x,{})}:{children:s(h,{})}):s("div",Object.assign({className:"flex flex-col items-center justify-center w-full h-full p-4 overflow-y-auto"},{children:t("div",Object.assign({className:"text-center mb-8"},{children:[s("h2",Object.assign({className:"text-2xl font-bold mb-2"},{children:"Access Denied"})),s("p",Object.assign({className:"opacity-80"},{children:"Login is required."}))]}))}))}));var be,ye};export{S as Pickaxe};
@@ -0,0 +1 @@
1
+ import o from"../../common/api/pickaxe.js";import{usePickaxeContext as t}from"../pickaxe/usePickaxeContext.js";import{useQuery as e}from"@tanstack/react-query";const i=()=>{const{pickaxe:i}=t(),r=null==i?void 0:i.studioid,{data:a,isLoading:s,error:d}=e({queryKey:["studio",r],queryFn:()=>o.get("get_studio",{params:{studioId:r},withCredentials:!1}),enabled:!!r});return{studio:a,isLoading:s,error:d}};export{i as useStudio};
@@ -0,0 +1 @@
1
+ import e from"react";import t from"../../../../../prop-types@15.8.1/node_modules/prop-types/index.js";function n(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function r(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?n(Object(r),!0).forEach((function(t){c(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):n(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function o(e){return o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(e)}function c(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function u(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},c=Object.keys(e);for(r=0;r<c.length;r++)n=c[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(e);for(r=0;r<c.length;r++)n=c[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function i(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=e&&("undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"]);if(null==n)return;var r,o,c=[],u=!0,i=!1;try{for(n=n.call(e);!(u=(r=n.next()).done)&&(c.push(r.value),!t||c.length!==t);u=!0);}catch(e){i=!0,o=e}finally{try{u||null==n.return||n.return()}finally{if(i)throw o}}return c}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return a(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return a(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function a(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var s=function(t,n,r){var o=!!r,c=e.useRef(r);e.useEffect((function(){c.current=r}),[r]),e.useEffect((function(){if(!o||!t)return function(){};var e=function(){c.current&&c.current.apply(c,arguments)};return t.on(n,e),function(){t.off(n,e)}}),[o,n,t,c])},l=function(t){var n=e.useRef(t);return e.useEffect((function(){n.current=t}),[t]),n.current},p=function(e){return null!==e&&"object"===o(e)},d="[object Object]",f=function e(t,n){if(!p(t)||!p(n))return t===n;var r=Array.isArray(t);if(r!==Array.isArray(n))return!1;var o=Object.prototype.toString.call(t)===d;if(o!==(Object.prototype.toString.call(n)===d))return!1;if(!o&&!r)return t===n;var c=Object.keys(t),u=Object.keys(n);if(c.length!==u.length)return!1;for(var i={},a=0;a<c.length;a+=1)i[c[a]]=!0;for(var s=0;s<u.length;s+=1)i[u[s]]=!0;var l=Object.keys(i);if(l.length!==c.length)return!1;var f=t,m=n;return l.every((function(t){return e(f[t],m[t])}))},m=function(e,t,n){return p(e)?Object.keys(e).reduce((function(o,u){var i=!p(t)||!f(e[u],t[u]);return n.includes(u)?(i&&console.warn("Unsupported prop change: options.".concat(u," is not a mutable property.")),o):i?r(r({},o||{}),{},c({},u,e[u])):o}),null):null},h="Invalid prop `stripe` supplied to `Elements`. We recommend using the `loadStripe` utility from `@stripe/stripe-js`. See https://stripe.com/docs/stripe-js/react#elements-props-stripe for details.",y=function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:h;if(null===e||p(t=e)&&"function"==typeof t.elements&&"function"==typeof t.createToken&&"function"==typeof t.createPaymentMethod&&"function"==typeof t.confirmCardPayment)return e;throw new Error(n)},g=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:h;if(function(e){return p(e)&&"function"==typeof e.then}(e))return{tag:"async",stripePromise:Promise.resolve(e).then((function(e){return y(e,t)}))};var n=y(e,t);return null===n?{tag:"empty"}:{tag:"sync",stripe:n}},v=e.createContext(null);v.displayName="ElementsContext";t.any,t.object,t.func.isRequired;var b=e.createContext(null);b.displayName="CheckoutContext",t.any,t.shape({fetchClientSecret:t.func.isRequired,elementsOptions:t.object}).isRequired;var C=function(t){var n=e.useContext(b),r=e.useContext(v);if(n){if(r)throw new Error("You cannot wrap the part of your app that ".concat(t," in both <CheckoutProvider> and <Elements> providers."));return n}return function(e,t){if(!e)throw new Error("Could not find Elements context; You need to wrap the part of your app that ".concat(t," in an <Elements> provider."));return e}(r,t)},E=["mode"],k=function(n,r){var o,c="".concat((o=n).charAt(0).toUpperCase()+o.slice(1),"Element"),a=r?function(t){C("mounts <".concat(c,">"));var n=t.id,r=t.className;return e.createElement("div",{id:n,className:r})}:function(t){var r,o=t.id,a=t.className,p=t.options,d=void 0===p?{}:p,f=t.onBlur,h=t.onFocus,y=t.onReady,g=t.onChange,v=t.onEscape,b=t.onClick,k=t.onLoadError,S=t.onLoaderStart,w=t.onNetworksChange,j=t.onConfirm,P=t.onCancel,O=t.onShippingAddressChange,x=t.onShippingRateChange,A=t.onSavedPaymentMethodRemove,R=t.onSavedPaymentMethodUpdate,I=C("mounts <".concat(c,">")),N="elements"in I?I.elements:null,U="checkoutState"in I?I.checkoutState:null,Y="success"===(null==U?void 0:U.type)?U.checkout:null,L=i(e.useState(null),2),M=L[0],B=L[1],D=e.useRef(null),q=e.useRef(null);s(M,"blur",f),s(M,"focus",h),s(M,"escape",v),s(M,"click",b),s(M,"loaderror",k),s(M,"loaderstart",S),s(M,"networkschange",w),s(M,"confirm",j),s(M,"cancel",P),s(M,"shippingaddresschange",O),s(M,"shippingratechange",x),s(M,"savedpaymentmethodremove",A),s(M,"savedpaymentmethodupdate",R),s(M,"change",g),y&&(r="expressCheckout"===n?y:function(){y(M)}),s(M,"ready",r),e.useLayoutEffect((function(){if(null===D.current&&null!==q.current&&(N||Y)){var e=null;if(Y)switch(n){case"payment":e=Y.createPaymentElement(d);break;case"address":if(!("mode"in d))throw new Error("You must supply options.mode. mode must be 'billing' or 'shipping'.");var t=d.mode,r=u(d,E);if("shipping"===t)e=Y.createShippingAddressElement(r);else{if("billing"!==t)throw new Error("Invalid options.mode. mode must be 'billing' or 'shipping'.");e=Y.createBillingAddressElement(r)}break;case"expressCheckout":e=Y.createExpressCheckoutElement(d);break;case"currencySelector":e=Y.createCurrencySelectorElement();break;case"taxId":e=Y.createTaxIdElement(d);break;default:throw new Error("Invalid Element type ".concat(c,". You must use either the <PaymentElement />, <AddressElement options={{mode: 'shipping'}} />, <AddressElement options={{mode: 'billing'}} />, or <ExpressCheckoutElement />."))}else N&&(e=N.create(n,d));D.current=e,B(e),e&&e.mount(q.current)}}),[N,Y,d]);var T=l(d);return e.useEffect((function(){if(D.current){var e=m(d,T,["paymentRequest"]);e&&"update"in D.current&&D.current.update(e)}}),[d,T]),e.useLayoutEffect((function(){return function(){if(D.current&&"function"==typeof D.current.destroy)try{D.current.destroy(),D.current=null}catch(e){}}}),[]),e.createElement("div",{id:o,className:a,ref:q})};return a.propTypes={id:t.string,className:t.string,onChange:t.func,onBlur:t.func,onFocus:t.func,onReady:t.func,onEscape:t.func,onClick:t.func,onLoadError:t.func,onLoaderStart:t.func,onNetworksChange:t.func,onConfirm:t.func,onCancel:t.func,onShippingAddressChange:t.func,onShippingRateChange:t.func,onSavedPaymentMethodRemove:t.func,onSavedPaymentMethodUpdate:t.func,options:t.object},a.displayName=c,a.__elementType=n,a},S="undefined"==typeof window,w=e.createContext(null);w.displayName="EmbeddedCheckoutProviderContext";var j=function(){var t=e.useContext(w);if(!t)throw new Error("<EmbeddedCheckout> must be used within <EmbeddedCheckoutProvider>");return t},P=function(t){var n=t.stripe,r=t.options,o=t.children,c=e.useMemo((function(){return g(n,"Invalid prop `stripe` supplied to `EmbeddedCheckoutProvider`. We recommend using the `loadStripe` utility from `@stripe/stripe-js`. See https://stripe.com/docs/stripe-js/react#elements-props-stripe for details.")}),[n]),u=e.useRef(null),a=e.useRef(null),s=i(e.useState({embeddedCheckout:null}),2),p=s[0],d=s[1];e.useEffect((function(){if(!a.current&&!u.current){var e=function(e){a.current||u.current||(a.current=e,u.current=a.current.initEmbeddedCheckout(r).then((function(e){d({embeddedCheckout:e})})))};"async"!==c.tag||a.current||!r.clientSecret&&!r.fetchClientSecret?"sync"!==c.tag||a.current||!r.clientSecret&&!r.fetchClientSecret||e(c.stripe):c.stripePromise.then((function(t){t&&e(t)}))}}),[c,r,p,a]),e.useEffect((function(){return function(){p.embeddedCheckout?(u.current=null,p.embeddedCheckout.destroy()):u.current&&u.current.then((function(){u.current=null,p.embeddedCheckout&&p.embeddedCheckout.destroy()}))}}),[p.embeddedCheckout]),e.useEffect((function(){var e;(e=a)&&e._registerWrapper&&e.registerAppInfo&&(e._registerWrapper({name:"react-stripe-js",version:"4.0.2"}),e.registerAppInfo({name:"react-stripe-js",version:"4.0.2",url:"https://stripe.com/docs/stripe-js/react"}))}),[a]);var f=l(n);e.useEffect((function(){null!==f&&f!==n&&console.warn("Unsupported prop change on EmbeddedCheckoutProvider: You cannot change the `stripe` prop after setting it.")}),[f,n]);var m=l(r);return e.useEffect((function(){null!=m&&(null!=r?(void 0===r.clientSecret&&void 0===r.fetchClientSecret&&console.warn("Invalid props passed to EmbeddedCheckoutProvider: You must provide one of either `options.fetchClientSecret` or `options.clientSecret`."),null!=m.clientSecret&&r.clientSecret!==m.clientSecret&&console.warn("Unsupported prop change on EmbeddedCheckoutProvider: You cannot change the client secret after setting it. Unmount and create a new instance of EmbeddedCheckoutProvider instead."),null!=m.fetchClientSecret&&r.fetchClientSecret!==m.fetchClientSecret&&console.warn("Unsupported prop change on EmbeddedCheckoutProvider: You cannot change fetchClientSecret after setting it. Unmount and create a new instance of EmbeddedCheckoutProvider instead."),null!=m.onComplete&&r.onComplete!==m.onComplete&&console.warn("Unsupported prop change on EmbeddedCheckoutProvider: You cannot change the onComplete option after setting it."),null!=m.onShippingDetailsChange&&r.onShippingDetailsChange!==m.onShippingDetailsChange&&console.warn("Unsupported prop change on EmbeddedCheckoutProvider: You cannot change the onShippingDetailsChange option after setting it."),null!=m.onLineItemsChange&&r.onLineItemsChange!==m.onLineItemsChange&&console.warn("Unsupported prop change on EmbeddedCheckoutProvider: You cannot change the onLineItemsChange option after setting it.")):console.warn("Unsupported prop change on EmbeddedCheckoutProvider: You cannot unset options after setting them."))}),[m,r]),e.createElement(w.Provider,{value:p},o)},O=S?function(t){var n=t.id,r=t.className;return j(),e.createElement("div",{id:n,className:r})}:function(t){var n=t.id,r=t.className,o=j().embeddedCheckout,c=e.useRef(!1),u=e.useRef(null);return e.useLayoutEffect((function(){return!c.current&&o&&null!==u.current&&(o.mount(u.current),c.current=!0),function(){if(c.current&&o)try{o.unmount(),c.current=!1}catch(e){}}}),[o]),e.createElement("div",{ref:u,id:n,className:r})};k("auBankAccount",S),k("card",S),k("cardNumber",S),k("cardExpiry",S),k("cardCvc",S),k("fpxBank",S),k("iban",S),k("idealBank",S),k("p24Bank",S),k("epsBank",S),k("payment",S),k("expressCheckout",S),k("paymentRequestButton",S),k("linkAuthentication",S),k("address",S),k("shippingAddress",S),k("paymentMethodMessaging",S),k("affirmMessage",S),k("afterpayClearpayMessage",S),k("taxId",S);export{O as EmbeddedCheckout,P as EmbeddedCheckoutProvider};
@@ -0,0 +1 @@
1
+ var e,r="basil",n="https://js.stripe.com",t="".concat(n,"/").concat(r,"/stripe.js"),o=/^https:\/\/js\.stripe\.com\/v3\/?(\?.*)?$/,i=/^https:\/\/js\.stripe\.com\/(v3|[a-z]+)\/stripe\.js(\?.*)?$/,s="loadStripe.setLoadParameters was called but an existing Stripe.js script already exists in the document; existing script parameters will be used",a=function(e){var r=e&&!e.advancedFraudSignals?"?advancedFraudSignals=false":"",n=document.createElement("script");n.src="".concat(t).concat(r);var o=document.head||document.body;if(!o)throw new Error("Expected document.body not to be null. Stripe.js requires a <body> element.");return o.appendChild(n),n},c=null,u=null,l=null,d=function(e){return null!==c?c:(c=new Promise((function(r,t){if("undefined"!=typeof window&&"undefined"!=typeof document)if(window.Stripe&&e&&console.warn(s),window.Stripe)r(window.Stripe);else try{var c=function(){for(var e,r=document.querySelectorAll('script[src^="'.concat(n,'"]')),t=0;t<r.length;t++){var s=r[t];if(e=s.src,o.test(e)||i.test(e))return s}return null}();if(c&&e)console.warn(s);else if(c){if(c&&null!==l&&null!==u){var d;c.removeEventListener("load",l),c.removeEventListener("error",u),null===(d=c.parentNode)||void 0===d||d.removeChild(c),c=a(e)}}else c=a(e);l=function(e,r){return function(){window.Stripe?e(window.Stripe):r(new Error("Stripe.js not available"))}}(r,t),u=function(e){return function(r){e(new Error("Failed to load Stripe.js",{cause:r}))}}(t),c.addEventListener("load",l),c.addEventListener("error",u)}catch(e){return void t(e)}else r(null)}))).catch((function(e){return c=null,Promise.reject(e)}))},p=!1,f=function(){return e||(e=d(null).catch((function(r){return e=null,Promise.reject(r)})))};Promise.resolve().then((function(){return f()})).catch((function(e){p||console.warn(e)}));var v=function(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];p=!0;var o=Date.now();return f().then((function(e){return function(e,n,t){if(null===e)return null;var o=n[0].match(/^pk_test/),i=function(e){return 3===e?"v3":e}(e.version),s=r;o&&i!==s&&console.warn("Stripe.js@".concat(i," was loaded on the page, but @stripe/stripe-js@").concat("7.9.0"," expected Stripe.js@").concat(s,". This may result in unexpected behavior. For more information, see https://docs.stripe.com/sdks/stripejs-versioning"));var a=e.apply(void 0,n);return function(e,r){e&&e._registerWrapper&&e._registerWrapper({name:"stripe-js",version:"7.9.0",startTime:r})}(a,t),a}(e,n,o)}))};export{v as loadStripe};
@@ -0,0 +1,6 @@
1
+ /*
2
+ object-assign
3
+ (c) Sindre Sorhus
4
+ @license MIT
5
+ */
6
+ var r,e;function t(){if(e)return r;e=1;var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable;return r=function(){try{if(!Object.assign)return!1;var r=new String("abc");if(r[5]="de","5"===Object.getOwnPropertyNames(r)[0])return!1;for(var e={},t=0;t<10;t++)e["_"+String.fromCharCode(t)]=t;if("0123456789"!==Object.getOwnPropertyNames(e).map((function(r){return e[r]})).join(""))return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach((function(r){n[r]=r})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},n)).join("")}catch(r){return!1}}()?Object.assign:function(r,e){for(var a,c,i=function(r){if(null==r)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(r)}(r),f=1;f<arguments.length;f++){for(var u in a=Object(arguments[f]))n.call(a,u)&&(i[u]=a[u]);if(t){c=t(a);for(var b=0;b<c.length;b++)o.call(a,c[b])&&(i[c[b]]=a[c[b]])}}return i},r}export{t as __require};