@pickaxeproject/react 6.24.5 → 6.24.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/Pickaxe/Addons/Artifact/Renderer/index.js +1 -1
- package/dist/cjs/components/Pickaxe/Addons/Artifact/index.js +1 -1
- package/dist/cjs/components/Pickaxe/Addons/Scroll/Provider.js +1 -1
- package/dist/cjs/components/Pickaxe/Addons/Scroll/hooks/useScroll.js +1 -1
- package/dist/cjs/components/Pickaxe/Chat/History/Message.js +1 -1
- package/dist/cjs/components/Pickaxe/Chat/index.js +1 -1
- package/dist/cjs/components/Pickaxe/common/PickaxeMarkdown/Components/List/index.js +1 -1
- package/dist/cjs/components/Pickaxe/common/PickaxeMarkdown/Renderer.js +1 -1
- package/dist/cjs/prose.css +1 -1
- package/dist/cjs/src/components/Pickaxe/Addons/Artifact/Renderer/index.d.ts +1 -1
- package/dist/cjs/src/components/Pickaxe/Addons/Scroll/Provider.d.ts +3 -0
- package/dist/cjs/src/components/Pickaxe/Addons/Scroll/hooks/useScroll.d.ts +2 -1
- package/dist/cjs/src/components/Pickaxe/Addons/Scroll/hooks/useScrollContext.d.ts +4 -0
- package/dist/esm/components/Pickaxe/Addons/Artifact/Renderer/index.js +1 -1
- package/dist/esm/components/Pickaxe/Addons/Artifact/index.js +1 -1
- package/dist/esm/components/Pickaxe/Addons/Scroll/Provider.js +1 -1
- package/dist/esm/components/Pickaxe/Addons/Scroll/hooks/useScroll.js +1 -1
- package/dist/esm/components/Pickaxe/Chat/History/Message.js +1 -1
- package/dist/esm/components/Pickaxe/Chat/index.js +1 -1
- package/dist/esm/components/Pickaxe/common/PickaxeMarkdown/Components/List/index.js +1 -1
- package/dist/esm/components/Pickaxe/common/PickaxeMarkdown/Renderer.js +1 -1
- package/dist/esm/prose.css +1 -1
- package/dist/esm/src/components/Pickaxe/Addons/Artifact/Renderer/index.d.ts +1 -1
- package/dist/esm/src/components/Pickaxe/Addons/Scroll/Provider.d.ts +3 -0
- package/dist/esm/src/components/Pickaxe/Addons/Scroll/hooks/useScroll.d.ts +2 -1
- package/dist/esm/src/components/Pickaxe/Addons/Scroll/hooks/useScrollContext.d.ts +4 -0
- package/package.json +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../../_virtual/_tslib.js"),t=require("react/jsx-runtime"),o=require("react"),n=require("../hooks/useArtifactContext.js"),a=require("../../../../../hooks/pickaxe/usePickaxeContext.js"),i=require("../../Auth/hooks/useAuthContext.js"),r=require("../../Scroll/hooks/useScroll.js"),l=require("../hooks/useArtifact.js"),s=require("../../../../../hooks/pickaxe/useSubmitDocument.js"),c=require("react-to-print"),d=require("../../../common/PickaxeMarkdown/index.js"),p=require("../../../common/PickaxeMarkdown/Renderer.js"),u=require("react-syntax-highlighter"),m=require("../../../../../common/docx/index.js"),x=require("file-saver"),y=require("../../Scroll/ScrollLockView.js"),v=require("../../../../Icons/expand.svg.js"),f=require("../../../../Icons/shrink.svg.js"),g=require("../../../../Icons/collapse-new.svg.js"),h=require("../../../../Icons/copy-new.svg.js"),b=require("../../../../Icons/download-new.svg.js"),w=require("../../../common/PickaxeCopyButton.js"),j=require("../../../../Core/ScrollArea.js"),k=require("../../../../Core/TipContainer.js"),C=require("../MermaidRenderer.js"),T=require("./SaveMenu.js"),S=require("./ViewOptions.js"),F=require("csv-to-markdown-table"),O=require("copy-to-clipboard"),A=require("../../../../../common/cn.js"),D=require("../../../../../common/error.js");function q(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var E=q(x),N=q(F),B=q(O);const M="development"===process.env.NODE_ENV?"http://localhost:3007":"https://user-content.pickaxe.co",_=e=>{var t;const o=null==e?void 0:e.trim().toLowerCase();if(!o)return".txt";return null!==(t={javascript:".js",js:".js",typescript:".ts",ts:".ts",python:".py",py:".py",json:".json",html:".html",css:".css",markdown:".md",md:".md",sql:".sql",shell:".sh",bash:".sh",sh:".sh",yaml:".yaml",yml:".yml",xml:".xml"}[o])&&void 0!==t?t:`.${o}`};exports.default=x=>{var F,O,q,P;const{artifacts:$,currentPopupType:R,currentArtifact:z,setCurrentArtifact:L}=n.useArtifactContext(),{onLoadArtifact:I}=l.useArtifact(),{contextId:W,pickaxeId:H,pickaxe:K,styles:V,colors:X,translations:U}=a.usePickaxeContext(),{isLoggedIn:G,token:J}=i.useAuthContext(),Q=s.useSubmitDocument(),[Y,Z]=o.useState("code"),[ee,te]=o.useState(!1),[oe,ne]=o.useState(!1),[ae,ie]=o.useState(!1),re=o.useRef(),le=o.useRef(null),se=o.useRef(null),ce=c.useReactToPrint({contentRef:re}),{scrollContainerRef:de,scrollStartSession:pe,scrollToBottom:ue,scrollEndSession:me}=r.useScroll({auto:"code"===Y}),xe=null!==(O=null===(F=x.styling)||void 0===F?void 0:F.styles)&&void 0!==O?O:V,ye=null!==(P=null===(q=x.styling)||void 0===q?void 0:q.colors)&&void 0!==P?P:X,ve=o.useMemo((()=>{var e,t,o,n,a;if(!x.artifact&&!z)return null;const i=null!==(t=null===(e=x.artifact)||void 0===e?void 0:e.id)&&void 0!==t?t:null==z?void 0:z.id,r=null!==(n=null===(o=x.artifact)||void 0===o?void 0:o.version)&&void 0!==n?n:null==z?void 0:z.version;return null!==(a=$.find((e=>e.id===i&&e.version===r)))&&void 0!==a?a:null}),[z,$,x.artifact]),fe=o.useMemo((()=>ve?"text/csv"===ve.type?N.default(ve.content,",",!0):"text/tab-separated-values"===ve.type?N.default(ve.content,"\t",!0):null:null),[ve]),ge=o.useMemo((()=>(ye.secondaryText||"").toLowerCase().startsWith("#ffffff")),[null==ye?void 0:ye.secondaryText]),he=o.useMemo((()=>{const e=x.artifact&&(null==z?void 0:z.id)===x.artifact.id&&(null==z?void 0:z.version)===x.artifact.version;return"inline"===x.type&&("inline-form"===R?!!z:e)}),[z,R,x.type,x.artifact]),be=o.useMemo((()=>ve?(e=>{switch(e.type){case"text/markdown":return{extension:".md",mimeType:"text/markdown",content:e.content};case"text/html":return{extension:".html",mimeType:"text/html",content:e.content};case"text/csv":return{extension:".csv",mimeType:"text/csv",content:e.content};case"text/tab-separated-values":return{extension:".tsv",mimeType:"text/tab-separated-values",content:e.content};case"image/svg+xml":return{extension:".svg",mimeType:"image/svg+xml",content:e.content};case"application/pdf":return e.content.trimStart().startsWith("%PDF")?{extension:".pdf",mimeType:"application/pdf",content:e.content}:{extension:".html",mimeType:"text/html",content:e.content};case"application/vnd.pxe.code":return{extension:_(e.programmingLanguage),mimeType:"text/plain",content:e.content};case"application/vnd.pxe.mermaid":return{extension:".mmd",mimeType:"text/plain",content:e.content};case"application/vnd.pxe.react":return{extension:".tsx",mimeType:"text/typescript",content:e.content};default:return null}})(ve):null),[ve]);o.useEffect((()=>{e.__awaiter(void 0,void 0,void 0,(function*(){"inline"===x.type&&x.artifact&&($.some((e=>x.artifact&&e.id===x.artifact.id&&e.version===x.artifact.version))||I({id:x.artifact.id,version:x.artifact.version}))}))}),[$,x.type,x.artifact]),o.useEffect((()=>{if("application/vnd.pxe.code"===(null==ve?void 0:ve.type)&&Z("code"),"finished"!==(null==ve?void 0:ve.status))return Z("code"),pe(),void ue();me(),"application/vnd.pxe.code"!==ve.type&&Z("render")}),[null==ve?void 0:ve.status,null==ve?void 0:ve.type]),o.useEffect((()=>{var e;!se.current||"text/html"!==(null==ve?void 0:ve.type)&&"application/pdf"!==(null==ve?void 0:ve.type)&&"application/vnd.pxe.react"!==(null==ve?void 0:ve.type)||null===(e=se.current.contentWindow)||void 0===e||e.postMessage({type:"application/vnd.pxe.react"!==ve.type?"HTML_CODE":"REACT_CODE",content:ve.content},M)}),[null==ve?void 0:ve.content,null==ve?void 0:ve.type]);const we=()=>e.__awaiter(void 0,void 0,void 0,(function*(){if(!ve)return;if("text/html"===ve.type||"application/pdf"===ve.type){const e=ve.content,t=window.open("","_blank");return void(t&&(t.document.open(),t.document.write(e),t.document.close(),t.focus(),t.print()))}const e=Y;"code"===e&&(Z("render"),yield new Promise((e=>setTimeout(e,50)))),ce(),"code"===e&&Z(e)})),je=()=>e.__awaiter(void 0,void 0,void 0,(function*(){if(!ve)return;const e=yield m.convertMarkdownToDocx(ve.content);m.downloadDocx(e,`${ve.title}.docx`)})),ke=t=>e.__awaiter(void 0,void 0,void 0,(function*(){var e;if(!ve)return;let o={mimeType:"text/plain",extension:".txt"};switch(t){case"text/markdown":o={mimeType:"text/markdown",extension:".md"};break;case"text/html":o={mimeType:"text/html",extension:".html"};break;case"text/csv":o={mimeType:"text/csv",extension:".csv"};break;case"text/tab-separated-values":o={mimeType:"text/tab-separated-values",extension:".tsv"};break;case"image/svg+xml":case"application/vnd.pxe.mermaid":o={mimeType:"image/svg+xml",extension:".svg"};break;case"application/pdf":o={mimeType:"application/pdf",extension:".pdf"};break;case"application/vnd.pxe.code":o={mimeType:`application/${ve.programmingLanguage||"text"};charset=utf-8`,extension:`.${ve.programmingLanguage||"txt"}`};break;case"application/vnd.pxe.react":o={mimeType:"text/typescript",extension:".tsx"};break;default:o={mimeType:"text/plain",extension:".txt"}}let n=null;if("application/vnd.pxe.mermaid"===ve.type){const t=Y;"code"===t&&(Z("render"),yield new Promise((e=>setTimeout(e,50))));const o=null===(e=le.current)||void 0===e?void 0:e.querySelector("svg");o&&(n=(new XMLSerializer).serializeToString(o)),"code"===t&&Z(t)}const a=new Blob([null!=n?n:ve.content],{type:o.mimeType});E.default(a,`${ve.title}${o.extension}`)})),Ce=()=>e.__awaiter(void 0,void 0,void 0,(function*(){if(ve&&be&&J){ne(!0),ie(!1);try{const t=`${e=ve.title,e.trim().replace(/[\\/:*?"<>|]/g,"-").replace(/\s+/g," ")||"artifact"}${be.extension}`,o=new File([be.content],t,{type:be.mimeType});yield Q.document(Object.assign(Object.assign({contextId:W,pickaxeId:H,file:o},(null==K?void 0:K.workspaceid)&&{workspaceId:K.workspaceid}),{studioSessionToken:J,isUserDocument:!0})),ie(!0),yield new Promise((e=>setTimeout(e,1500)))}catch(e){alert(D.default(e))}finally{ne(!1),ie(!1)}var e}})),Te=()=>{"inline"!==x.type||!x.artifact||he?L(null):L({id:x.artifact.id,version:x.artifact.version})},Se=he||!R.startsWith("inline");return ve?t.jsxs("div",Object.assign({className:A.default("pxe-artifact-renderer flex flex-col","inline"===x.type&&!he&&"min-h-[320px] mb-6",x.className),style:Object.assign(Object.assign({backgroundColor:ye.secondary,color:ye.secondaryText},"auto"!==R&&{borderRadius:xe.cornerRadius}),x.style)},{children:[t.jsxs("div",Object.assign({className:"flex items-center gap-4 justify-between px-4 py-3 shadow-sm"},{children:[t.jsxs("div",Object.assign({className:"pxe-artifact-create-header flex min-w-0 items-center gap-4"},{children:[Se&&t.jsx(S.default,{type:ve.type,view:Y,colors:ye,onChange:Z}),t.jsx("p",Object.assign({className:"w-[220px] max-w-full truncate text-[18px] font-semilight leading-tight",title:ve.title},{children:ve.title}))]})),"inline"===x.type&&!Se&&t.jsx("div",Object.assign({className:"shrink-0"},{children:t.jsx("button",Object.assign({type:"button",style:{color:ye.secondaryText},onClick:Te,title:(null==U?void 0:U.expand)||"Expand","aria-label":(null==U?void 0:U.expand)||"Expand artifact"},{children:he?t.jsx(f.default,{className:"w-6 h-6 shrink-0"}):t.jsx(v.default,{className:"w-6 h-6 shrink-0"})}))}))]})),Se&&t.jsx("div",Object.assign({className:"flex items-center justify-between border-y px-4 py-2.5",style:{borderColor:ye.primary}},{children:t.jsxs("div",Object.assign({className:"flex items-center gap-3"},{children:[t.jsx("button",Object.assign({type:"button",className:"opacity-70 transition-opacity duration-300 ease-in-out hover:opacity-100",style:{color:ye.secondaryText},onClick:Te,title:"inline"===x.type?(null==U?void 0:U.collapse)||"Collapse":(null==U?void 0:U.close)||"Close","aria-label":"inline"===x.type?(null==U?void 0:U.collapse)||"Collapse artifact":(null==U?void 0:U.close)||"Close artifact"},{children:t.jsx(g.default,{className:"h-5 w-5 shrink-0"})})),t.jsx("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:ye.secondaryText},disabled:ee,onClick:()=>e.__awaiter(void 0,void 0,void 0,(function*(){if(ve)try{B.default(ve.content),te(!0),yield new Promise((e=>setTimeout(e,1500)))}finally{te(!1)}})),title:(null==U?void 0:U.copy)||"Copy","aria-label":(null==U?void 0:U.copy)||"Copy artifact content"},{children:t.jsx(h.default,{className:"h-[18px] w-[18px] shrink-0"})})),t.jsx(T.default,Object.assign({data:ve,colors:ye,onDownload:ke,onSaveAsPDF:we,onSaveAsDOCX:je,onSaveToKnowledgeBase:Ce,isSaveToKnowledgeBaseEnabled:G&&Boolean(be),isSavingToKnowledgeBase:oe,isSavedToKnowledgeBase:ae,className:"opacity-70 transition-opacity duration-300 ease-in-out hover:opacity-100"},{children:t.jsx("div",Object.assign({role:"button",className:"cursor-pointer",style:{color:ye.secondaryText},title:(null==U?void 0:U.save)||"Download","aria-label":(null==U?void 0:U.save)||"Download artifact content"},{children:t.jsx(b.default,{className:"h-6 w-6 shrink-0"})}))}))]}))})),t.jsx("div",Object.assign({className:"flex flex-col flex-grow @container/pickaxe-artifact"},{children:t.jsxs(j.default,Object.assign({ref:de,innerClassName:"flex-grow w-full"},{children:["render"===Y&&"application/vnd.pxe.code"!==ve.type?t.jsx("div",Object.assign({ref:re,className:A.default("p-4 pb-6 flex-grow flex flex-col","text/html"===ve.type&&"p-0","text/csv"===ve.type&&"p-0","application/pdf"===ve.type&&"p-0","application/vnd.pxe.react"===ve.type&&"p-0")},{children:"text/markdown"===ve.type||"text/csv"===ve.type||"text/tab-separated-values"===ve.type||"image/svg+xml"===ve.type?t.jsx(d.PickaxeMarkdown,Object.assign({theme:xe.theme,colors:ye},{children:t.jsx(p.PickaxeMarkdownRenderer,{value:null!=fe?fe:ve.content,className:A.default("px-6 @[767px]/pickaxe-artifact:px-11 mx-auto w-full",("text/csv"===ve.type||"text/tab-separated-values"===ve.type)&&"px-4 @[767px]/pickaxe-artifact:px-4 mx-0"),style:{flex:1}})})):"application/vnd.pxe.mermaid"===ve.type?t.jsx(C.default,{ref:le,id:`mermaid-${ve.id}-${ve.version}`,data:ve.content}):"text/html"===ve.type||"application/pdf"===ve.type||"application/vnd.pxe.react"===ve.type?t.jsx("iframe",Object.assign({ref:se,title:ve.title,src:`${M}/${"application/vnd.pxe.react"!==ve.type?"html":"react"}?theme=${ge?"dark":"light"}&bg=${ye.secondary}&accent=${ye.accent}`,style:{width:"100%",flex:1,border:"none",backgroundColor:null==ye?void 0:ye.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 t=e.target;setTimeout((()=>{var e;try{null===(e=t.contentWindow)||void 0===e||e.postMessage({type:"application/vnd.pxe.react"!==ve.type?"HTML_CODE":"REACT_CODE",content:ve.content},M)}catch(e){console.error("Error sending message to iframe:",e)}}),100),ue()}},{children:(null==U?void 0:U["iframe-artifact-fallback"])||"Iframe is not supported, please view this artifact in a browser that supports it."})):null})):t.jsx(u.Prism,Object.assign({PreTag:"div",language:"text/markdown"===ve.type?"markdown":"text/html"===ve.type||"image/svg+xml"===ve.type?"xml":"application/vnd.pxe.react"===ve.type?"typescript":ve.programmingLanguage,showLineNumbers:!0,customStyle:{margin:0,flex:1},style:Object.assign({'code[class*="language-"]':Object.assign(Object.assign({color:null==ye?void 0:ye.secondaryText},ge&&{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==ye?void 0:ye.secondaryText},ge&&{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==ye?void 0:ye.secondary}),':not(pre) > code[class*="language-"]':{background:null==ye?void 0:ye.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==ye?void 0:ye.secondaryText,fontWeight:"bold"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}},!ge&&{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==ye?void 0:ye.secondaryText,fontWeight:"bold"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}})},{children:ve.content})),t.jsx(y.default,{})]}))})),"inline"===x.type&&!he&&t.jsxs("div",Object.assign({className:"flex items-center gap-4 p-4 pt-6"},{children:[t.jsx(k.default,Object.assign({id:`artifact-copy-${ve.id}-${ve.version}`,tip:(null==U?void 0:U.copy)||"Copy",style:{padding:"0.25rem 0.5rem",backgroundColor:ye.secondary,color:ye.secondaryText,fontSize:"12px"},align:"bottom"},{children:t.jsx(w.default,{color:ye.secondaryText,text:ve.content,className:"opacity-100",iconClassName:"w-5 h-5"})})),t.jsx(k.default,Object.assign({id:`artifact-save-${ve.id}-${ve.version}`,tip:(null==U?void 0:U.save)||"Save",style:{padding:"0.25rem 0.5rem",backgroundColor:ye.secondary,color:ye.secondaryText,fontSize:"12px"},align:"bottom"},{children:t.jsx(T.default,Object.assign({data:ve,colors:ye,onDownload:ke,onSaveAsPDF:we,onSaveAsDOCX:je,onSaveToKnowledgeBase:Ce,isSaveToKnowledgeBaseEnabled:G&&Boolean(be),isSavingToKnowledgeBase:oe,isSavedToKnowledgeBase:ae},{children:t.jsx("button",Object.assign({style:{color:ye.secondaryText}},{children:t.jsx(b.default,{className:"w-5 h-5 shrink-0"})}))}))}))]}))]})):null};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../../_virtual/_tslib.js"),t=require("react/jsx-runtime"),o=require("react"),n=require("../hooks/useArtifactContext.js"),a=require("../../../../../hooks/pickaxe/usePickaxeContext.js"),i=require("../../Auth/hooks/useAuthContext.js"),r=require("../../Scroll/hooks/useScroll.js"),l=require("../hooks/useArtifact.js"),s=require("../../../../../hooks/pickaxe/useSubmitDocument.js"),c=require("react-to-print"),d=require("../../../common/PickaxeMarkdown/index.js"),p=require("../../../common/PickaxeMarkdown/Renderer.js"),u=require("react-syntax-highlighter"),m=require("../../../../../common/docx/index.js"),x=require("file-saver"),y=require("../../Scroll/Provider.js"),v=require("../../Scroll/ScrollLockView.js"),f=require("../../../../Icons/expand.svg.js"),g=require("../../../../Icons/shrink.svg.js"),h=require("../../../../Icons/collapse-new.svg.js"),b=require("../../../../Icons/copy-new.svg.js"),w=require("../../../../Icons/download-new.svg.js"),j=require("../../../common/PickaxeCopyButton.js"),k=require("../../../../Core/ScrollArea.js"),C=require("../../../../Core/TipContainer.js"),T=require("../MermaidRenderer.js"),S=require("./SaveMenu.js"),F=require("./ViewOptions.js"),O=require("csv-to-markdown-table"),A=require("copy-to-clipboard"),q=require("../../../../../common/cn.js"),D=require("../../../../../common/error.js");function E(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var N=E(x),B=E(O),M=E(A);const _="development"===process.env.NODE_ENV?"http://localhost:3007":"https://user-content.pickaxe.co",P=e=>{var t;const o=null==e?void 0:e.trim().toLowerCase();if(!o)return".txt";return null!==(t={javascript:".js",js:".js",typescript:".ts",ts:".ts",python:".py",py:".py",json:".json",html:".html",css:".css",markdown:".md",md:".md",sql:".sql",shell:".sh",bash:".sh",sh:".sh",yaml:".yaml",yml:".yml",xml:".xml"}[o])&&void 0!==t?t:`.${o}`},$=x=>{var y,O,A,E;const{artifacts:$,currentPopupType:R,currentArtifact:z,setCurrentArtifact:L}=n.useArtifactContext(),{onLoadArtifact:I}=l.useArtifact(),{contextId:W,pickaxeId:H,pickaxe:K,styles:V,colors:X,translations:U}=a.usePickaxeContext(),{isLoggedIn:G,token:J}=i.useAuthContext(),Q=s.useSubmitDocument(),[Y,Z]=o.useState("code"),[ee,te]=o.useState(!1),[oe,ne]=o.useState(!1),[ae,ie]=o.useState(!1),re=o.useRef(),le=o.useRef(null),se=o.useRef(null),ce=c.useReactToPrint({contentRef:re}),{scrollContainerRef:de,scrollStartSession:pe,scrollToBottom:ue,scrollEndSession:me}=r.useScroll({auto:"code"===Y}),xe=null!==(O=null===(y=x.styling)||void 0===y?void 0:y.styles)&&void 0!==O?O:V,ye=null!==(E=null===(A=x.styling)||void 0===A?void 0:A.colors)&&void 0!==E?E:X,ve=o.useMemo((()=>{var e,t,o,n,a;if(!x.artifact&&!z)return null;const i=null!==(t=null===(e=x.artifact)||void 0===e?void 0:e.id)&&void 0!==t?t:null==z?void 0:z.id,r=null!==(n=null===(o=x.artifact)||void 0===o?void 0:o.version)&&void 0!==n?n:null==z?void 0:z.version;return null!==(a=$.find((e=>e.id===i&&e.version===r)))&&void 0!==a?a:null}),[z,$,x.artifact]),fe=o.useMemo((()=>ve?"text/csv"===ve.type?B.default(ve.content,",",!0):"text/tab-separated-values"===ve.type?B.default(ve.content,"\t",!0):null:null),[ve]),ge=o.useMemo((()=>(ye.secondaryText||"").toLowerCase().startsWith("#ffffff")),[null==ye?void 0:ye.secondaryText]),he=o.useMemo((()=>{const e=x.artifact&&(null==z?void 0:z.id)===x.artifact.id&&(null==z?void 0:z.version)===x.artifact.version;return"inline"===x.type&&("inline-form"===R?!!z:e)}),[z,R,x.type,x.artifact]),be=o.useMemo((()=>ve?(e=>{switch(e.type){case"text/markdown":return{extension:".md",mimeType:"text/markdown",content:e.content};case"text/html":return{extension:".html",mimeType:"text/html",content:e.content};case"text/csv":return{extension:".csv",mimeType:"text/csv",content:e.content};case"text/tab-separated-values":return{extension:".tsv",mimeType:"text/tab-separated-values",content:e.content};case"image/svg+xml":return{extension:".svg",mimeType:"image/svg+xml",content:e.content};case"application/pdf":return e.content.trimStart().startsWith("%PDF")?{extension:".pdf",mimeType:"application/pdf",content:e.content}:{extension:".html",mimeType:"text/html",content:e.content};case"application/vnd.pxe.code":return{extension:P(e.programmingLanguage),mimeType:"text/plain",content:e.content};case"application/vnd.pxe.mermaid":return{extension:".mmd",mimeType:"text/plain",content:e.content};case"application/vnd.pxe.react":return{extension:".tsx",mimeType:"text/typescript",content:e.content};default:return null}})(ve):null),[ve]);o.useEffect((()=>{e.__awaiter(void 0,void 0,void 0,(function*(){"inline"===x.type&&x.artifact&&($.some((e=>x.artifact&&e.id===x.artifact.id&&e.version===x.artifact.version))||I({id:x.artifact.id,version:x.artifact.version}))}))}),[$,x.type,x.artifact]),o.useEffect((()=>{if("application/vnd.pxe.code"===(null==ve?void 0:ve.type)&&Z("code"),"finished"!==(null==ve?void 0:ve.status))return Z("code"),pe(),void ue();me(),"application/vnd.pxe.code"!==ve.type&&Z("render")}),[null==ve?void 0:ve.status,null==ve?void 0:ve.type]),o.useEffect((()=>{var e;!se.current||"text/html"!==(null==ve?void 0:ve.type)&&"application/pdf"!==(null==ve?void 0:ve.type)&&"application/vnd.pxe.react"!==(null==ve?void 0:ve.type)||null===(e=se.current.contentWindow)||void 0===e||e.postMessage({type:"application/vnd.pxe.react"!==ve.type?"HTML_CODE":"REACT_CODE",content:ve.content},_)}),[null==ve?void 0:ve.content,null==ve?void 0:ve.type]);const we=()=>e.__awaiter(void 0,void 0,void 0,(function*(){if(!ve)return;if("text/html"===ve.type||"application/pdf"===ve.type){const e=ve.content,t=window.open("","_blank");return void(t&&(t.document.open(),t.document.write(e),t.document.close(),t.focus(),t.print()))}const e=Y;"code"===e&&(Z("render"),yield new Promise((e=>setTimeout(e,50)))),ce(),"code"===e&&Z(e)})),je=()=>e.__awaiter(void 0,void 0,void 0,(function*(){if(!ve)return;const e=yield m.convertMarkdownToDocx(ve.content);m.downloadDocx(e,`${ve.title}.docx`)})),ke=t=>e.__awaiter(void 0,void 0,void 0,(function*(){var e;if(!ve)return;let o={mimeType:"text/plain",extension:".txt"};switch(t){case"text/markdown":o={mimeType:"text/markdown",extension:".md"};break;case"text/html":o={mimeType:"text/html",extension:".html"};break;case"text/csv":o={mimeType:"text/csv",extension:".csv"};break;case"text/tab-separated-values":o={mimeType:"text/tab-separated-values",extension:".tsv"};break;case"image/svg+xml":case"application/vnd.pxe.mermaid":o={mimeType:"image/svg+xml",extension:".svg"};break;case"application/pdf":o={mimeType:"application/pdf",extension:".pdf"};break;case"application/vnd.pxe.code":o={mimeType:`application/${ve.programmingLanguage||"text"};charset=utf-8`,extension:`.${ve.programmingLanguage||"txt"}`};break;case"application/vnd.pxe.react":o={mimeType:"text/typescript",extension:".tsx"};break;default:o={mimeType:"text/plain",extension:".txt"}}let n=null;if("application/vnd.pxe.mermaid"===ve.type){const t=Y;"code"===t&&(Z("render"),yield new Promise((e=>setTimeout(e,50))));const o=null===(e=le.current)||void 0===e?void 0:e.querySelector("svg");o&&(n=(new XMLSerializer).serializeToString(o)),"code"===t&&Z(t)}const a=new Blob([null!=n?n:ve.content],{type:o.mimeType});N.default(a,`${ve.title}${o.extension}`)})),Ce=()=>e.__awaiter(void 0,void 0,void 0,(function*(){if(ve&&be&&J){ne(!0),ie(!1);try{const t=`${e=ve.title,e.trim().replace(/[\\/:*?"<>|]/g,"-").replace(/\s+/g," ")||"artifact"}${be.extension}`,o=new File([be.content],t,{type:be.mimeType});yield Q.document(Object.assign(Object.assign({contextId:W,pickaxeId:H,file:o},(null==K?void 0:K.workspaceid)&&{workspaceId:K.workspaceid}),{studioSessionToken:J,isUserDocument:!0})),ie(!0),yield new Promise((e=>setTimeout(e,1500)))}catch(e){alert(D.default(e))}finally{ne(!1),ie(!1)}var e}})),Te=()=>{"inline"!==x.type||!x.artifact||he?L(null):L({id:x.artifact.id,version:x.artifact.version})},Se=he||!R.startsWith("inline");return ve?t.jsxs("div",Object.assign({className:q.default("pxe-artifact-renderer flex flex-col","inline"===x.type&&!he&&"min-h-[320px] mb-6",x.className),style:Object.assign(Object.assign({backgroundColor:ye.secondary,color:ye.secondaryText},"auto"!==R&&{borderRadius:xe.cornerRadius}),x.style)},{children:[t.jsxs("div",Object.assign({className:"flex items-center gap-4 justify-between px-4 py-3 shadow-sm"},{children:[t.jsxs("div",Object.assign({className:"pxe-artifact-create-header flex min-w-0 items-center gap-4"},{children:[Se&&t.jsx(F.default,{type:ve.type,view:Y,colors:ye,onChange:Z}),t.jsx("p",Object.assign({className:"w-[220px] max-w-full truncate text-[18px] font-semilight leading-tight",title:ve.title},{children:ve.title}))]})),"inline"===x.type&&!Se&&t.jsx("div",Object.assign({className:"shrink-0"},{children:t.jsx("button",Object.assign({type:"button",style:{color:ye.secondaryText},onClick:Te,title:(null==U?void 0:U.expand)||"Expand","aria-label":(null==U?void 0:U.expand)||"Expand artifact"},{children:he?t.jsx(g.default,{className:"w-6 h-6 shrink-0"}):t.jsx(f.default,{className:"w-6 h-6 shrink-0"})}))}))]})),Se&&t.jsx("div",Object.assign({className:"flex items-center justify-between border-y px-4 py-2.5",style:{borderColor:ye.primary}},{children:t.jsxs("div",Object.assign({className:"flex items-center gap-3"},{children:[t.jsx("button",Object.assign({type:"button",className:"opacity-70 transition-opacity duration-300 ease-in-out hover:opacity-100",style:{color:ye.secondaryText},onClick:Te,title:"inline"===x.type?(null==U?void 0:U.collapse)||"Collapse":(null==U?void 0:U.close)||"Close","aria-label":"inline"===x.type?(null==U?void 0:U.collapse)||"Collapse artifact":(null==U?void 0:U.close)||"Close artifact"},{children:t.jsx(h.default,{className:"h-5 w-5 shrink-0"})})),t.jsx("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:ye.secondaryText},disabled:ee,onClick:()=>e.__awaiter(void 0,void 0,void 0,(function*(){if(ve)try{M.default(ve.content),te(!0),yield new Promise((e=>setTimeout(e,1500)))}finally{te(!1)}})),title:(null==U?void 0:U.copy)||"Copy","aria-label":(null==U?void 0:U.copy)||"Copy artifact content"},{children:t.jsx(b.default,{className:"h-[18px] w-[18px] shrink-0"})})),t.jsx(S.default,Object.assign({data:ve,colors:ye,onDownload:ke,onSaveAsPDF:we,onSaveAsDOCX:je,onSaveToKnowledgeBase:Ce,isSaveToKnowledgeBaseEnabled:G&&Boolean(be),isSavingToKnowledgeBase:oe,isSavedToKnowledgeBase:ae,className:"opacity-70 transition-opacity duration-300 ease-in-out hover:opacity-100"},{children:t.jsx("div",Object.assign({role:"button",className:"cursor-pointer",style:{color:ye.secondaryText},title:(null==U?void 0:U.save)||"Download","aria-label":(null==U?void 0:U.save)||"Download artifact content"},{children:t.jsx(w.default,{className:"h-6 w-6 shrink-0"})}))}))]}))})),t.jsx("div",Object.assign({className:"flex flex-col flex-grow @container/pickaxe-artifact"},{children:t.jsxs(k.default,Object.assign({ref:de,innerClassName:"flex-grow w-full"},{children:["render"===Y&&"application/vnd.pxe.code"!==ve.type?t.jsx("div",Object.assign({ref:re,className:q.default("p-4 pb-6 flex-grow flex flex-col","text/html"===ve.type&&"p-0","text/csv"===ve.type&&"p-0","application/pdf"===ve.type&&"p-0","application/vnd.pxe.react"===ve.type&&"p-0")},{children:"text/markdown"===ve.type||"text/csv"===ve.type||"text/tab-separated-values"===ve.type||"image/svg+xml"===ve.type?t.jsx(d.PickaxeMarkdown,Object.assign({theme:xe.theme,colors:ye},{children:t.jsx(p.PickaxeMarkdownRenderer,{value:null!=fe?fe:ve.content,className:q.default("px-6 @[767px]/pickaxe-artifact:px-11 mx-auto w-full",("text/csv"===ve.type||"text/tab-separated-values"===ve.type)&&"px-4 @[767px]/pickaxe-artifact:px-4 mx-0"),style:{flex:1}})})):"application/vnd.pxe.mermaid"===ve.type?t.jsx(T.default,{ref:le,id:`mermaid-${ve.id}-${ve.version}`,data:ve.content}):"text/html"===ve.type||"application/pdf"===ve.type||"application/vnd.pxe.react"===ve.type?t.jsx("iframe",Object.assign({ref:se,title:ve.title,src:`${_}/${"application/vnd.pxe.react"!==ve.type?"html":"react"}?theme=${ge?"dark":"light"}&bg=${ye.secondary}&accent=${ye.accent}`,style:{width:"100%",flex:1,border:"none",backgroundColor:null==ye?void 0:ye.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 t=e.target;setTimeout((()=>{var e;try{null===(e=t.contentWindow)||void 0===e||e.postMessage({type:"application/vnd.pxe.react"!==ve.type?"HTML_CODE":"REACT_CODE",content:ve.content},_)}catch(e){console.error("Error sending message to iframe:",e)}}),100),ue()}},{children:(null==U?void 0:U["iframe-artifact-fallback"])||"Iframe is not supported, please view this artifact in a browser that supports it."})):null})):t.jsx(u.Prism,Object.assign({PreTag:"div",language:"text/markdown"===ve.type?"markdown":"text/html"===ve.type||"image/svg+xml"===ve.type?"xml":"application/vnd.pxe.react"===ve.type?"typescript":ve.programmingLanguage,showLineNumbers:!0,customStyle:{margin:0,flex:1},style:Object.assign({'code[class*="language-"]':Object.assign(Object.assign({color:null==ye?void 0:ye.secondaryText},ge&&{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==ye?void 0:ye.secondaryText},ge&&{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==ye?void 0:ye.secondary}),':not(pre) > code[class*="language-"]':{background:null==ye?void 0:ye.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==ye?void 0:ye.secondaryText,fontWeight:"bold"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}},!ge&&{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==ye?void 0:ye.secondaryText,fontWeight:"bold"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}})},{children:ve.content})),t.jsx(v.default,{})]}))})),"inline"===x.type&&!he&&t.jsxs("div",Object.assign({className:"flex items-center gap-4 p-4 pt-6"},{children:[t.jsx(C.default,Object.assign({id:`artifact-copy-${ve.id}-${ve.version}`,tip:(null==U?void 0:U.copy)||"Copy",style:{padding:"0.25rem 0.5rem",backgroundColor:ye.secondary,color:ye.secondaryText,fontSize:"12px"},align:"bottom"},{children:t.jsx(j.default,{color:ye.secondaryText,text:ve.content,className:"opacity-100",iconClassName:"w-5 h-5"})})),t.jsx(C.default,Object.assign({id:`artifact-save-${ve.id}-${ve.version}`,tip:(null==U?void 0:U.save)||"Save",style:{padding:"0.25rem 0.5rem",backgroundColor:ye.secondary,color:ye.secondaryText,fontSize:"12px"},align:"bottom"},{children:t.jsx(S.default,Object.assign({data:ve,colors:ye,onDownload:ke,onSaveAsPDF:we,onSaveAsDOCX:je,onSaveToKnowledgeBase:Ce,isSaveToKnowledgeBaseEnabled:G&&Boolean(be),isSavingToKnowledgeBase:oe,isSavedToKnowledgeBase:ae},{children:t.jsx("button",Object.assign({style:{color:ye.secondaryText}},{children:t.jsx(w.default,{className:"w-5 h-5 shrink-0"})}))}))}))]}))]})):null};exports.default=e=>t.jsx(y.ScrollProvider,{children:t.jsx($,Object.assign({},e))});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("./hooks/useArtifactContext.js"),i=require("../../../../hooks/pickaxe/usePickaxeContext.js"),n=require("../../../../hooks/core/useMediaQuery.js"),s=require("../../../Core/Modal/index.js"),l=require("../../../Core/Modal/Body.js"),a=require("./Renderer/index.js");exports.PickaxeArtifact=({forcedPopupType:o,panel:u,styling:c})=>{const{popupType:d,currentPopupType:f,currentArtifact:x,setCurrentPopupType:p,setCurrentArtifact:j}=r.useArtifactContext(),{sessionId:h,pickaxe:m,forceMobile:y}=i.usePickaxeContext(),[g]=n.useMediaQuery("(max-width: 899px)");t.useEffect((()=>{const e=!(null==m?void 0:m.chatflag)&&!h||!h;let t=d;"auto"===t&&(e?t="inline-form":(y||g)&&(t="inline")),"inline"===d&&e&&(t="inline-form"),o&&(t=o),p(t)}),[d,y,g,null==m?void 0:m.chatflag,h,o]);const C=e.jsx(a.default,{type:"detached",className:"h-full"});return x&&"inline"!==f?e.jsx(e.Fragment,{children:"auto"===f&&u?u(C):"modal"===f||"inline-form"===f?e.jsx(s.default,Object.assign({isOpen:!0,onChange:e=>{e||j(null)}},{children:e.jsx(l.default,Object.assign({className:"max-w-[90dvw] flex flex-col w-full",style:{minHeight:"90dvh"}},{children:e.jsx(a.default,Object.assign({type:"inline-form"===f?"inline":"detached",className:"flex-grow"},c&&{styling:c}))}))})):null}):null};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react");const s=r.createContext({}),t=({children:t})=>{const[l,o]=r.useState(!0),[c,i]=r.useState(!0),[n,u]=r.useState(!1),[a,S]=r.useState(!0),f=r.useRef(),R=r.useRef(),d=r.useRef(!1),g=r.useRef(!1),x=r.useRef("auto"),m=r.useRef(null);return r.useEffect((()=>{const e=m;return()=>{e.current&&clearTimeout(e.current)}}),[]),e.jsx(s.Provider,Object.assign({value:{scrollContainerRef:f,scrollTargetRef:R,hasScrolledRef:d,isProgrammaticScrollRef:g,programmaticScrollBehaviorRef:x,scrollEndTimerRef:m,isLocked:l,isScrollSession:c,isScrolling:n,isScrollIncreasing:a,setIsLocked:o,setIsScrollSession:i,setIsScrolling:u,setIsScrollIncreasing:S}},{children:t}))};exports.ScrollContext=s,exports.ScrollProvider=t,exports.default=t;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("./useScrollContext.js");exports.useScroll=({auto:t=!1,debug:o,smooth:n=!0})=>{const{scrollContainerRef:
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("./useScrollContext.js");exports.useScroll=({auto:t=!1,debug:o,smooth:n=!0,listen:l=!0}={})=>{const{scrollContainerRef:c,scrollTargetRef:s,hasScrolledRef:u,isProgrammaticScrollRef:i,programmaticScrollBehaviorRef:a,scrollEndTimerRef:d,isLocked:v,isScrollIncreasing:h,setIsLocked:f,setIsScrollSession:g,setIsScrolling:m,setIsScrollIncreasing:b}=r.useScrollContext(),w=e.useRef(null),C=e.useRef(0),S=e.useCallback((()=>{d.current&&(clearTimeout(d.current),d.current=null),i.current=!1,m(!1);const e=c.current;if(!e)return;const r=e.scrollHeight-e.scrollTop-e.clientHeight<=32;u.current=!r,f(r)}),[u,i,c,d,f,m]),T=e.useCallback((()=>{null!==w.current&&(cancelAnimationFrame(w.current),w.current=null)}),[]),p=e.useCallback((e=>{d.current&&clearTimeout(d.current),a.current=e,d.current=setTimeout(S,"smooth"===e?400:100)}),[a,d,S]),E=e.useCallback(((e={})=>{var r;if(!e.force&&u.current)return;const t=null!==(r=e.behavior)&&void 0!==r?r:n?"smooth":"auto",l=c.current,a=s.current;if(l||a){if(i.current=!0,m(!0),e.force&&(u.current=!1,f(!0)),l){const e=Math.max(0,l.scrollHeight-l.clientHeight);l.scrollTo({top:e,behavior:t})}else if(a){const e=a.getBoundingClientRect().bottom+window.scrollY,r=Math.max(0,e-window.innerHeight);window.scrollTo({top:r,behavior:t})}o&&console.log("[useScroll] scrolled to the active bottom"),p(t)}else o&&console.log("[useScroll] no scroll element detected")}),[o,p,u,i,c,s,m,f,n]),R=e.useCallback(((e={})=>{T(),w.current=requestAnimationFrame((()=>{w.current=null,E(e)}))}),[T,E]),k=e.useCallback(((e={})=>{var r;if(!e.force&&u.current)return;const t=s.current;if(!t)return void(o&&console.log("[useScroll] scroll target not detected"));const l=null!==(r=e.behavior)&&void 0!==r?r:n?"smooth":"auto",c=t.getBoundingClientRect().bottom+window.scrollY,a=Math.max(0,c-500);i.current=!0,m(!0),window.scrollTo({top:a,behavior:l}),o&&console.log("[useScroll] scrolled to the form response"),p(l)}),[o,p,u,i,s,m,n]),H=e.useCallback(((e={})=>{T(),w.current=requestAnimationFrame((()=>{w.current=null,k(e)}))}),[T,k]),L=e.useCallback((()=>{u.current=!1,f(!0),g(!0)}),[u,f,g]),x=e.useCallback((()=>{g(!1)}),[g]),M=e.useCallback(((e={})=>R(e)),[R]),B=e.useCallback(((e={})=>H(e)),[H]);return e.useEffect((()=>{if(!t||!v)return;let e=c.current,r=s.current,o=null,n=[];const l=()=>{var t;if(!o)return;const n=e?Math.max(0,e.scrollHeight-e.clientHeight):null!==(t=null==r?void 0:r.getBoundingClientRect().height)&&void 0!==t?t:0,l=n>C.current;C.current=n,b(l),l&&(e?R({behavior:"auto"}):H({behavior:"auto"}))},u=new ResizeObserver(l);function i(){o&&(n.forEach((e=>u.unobserve(e))),n=[o,...Array.from(o.children)],n.forEach((e=>u.observe(e))))}const a=new MutationObserver((()=>{i(),l()}));let d=null;const h=()=>{var t;e=c.current,r=s.current;const n=null!=e?e:r;return!(!n||n===o)&&(a.disconnect(),u.disconnect(),o=n,C.current=e?Math.max(0,e.scrollHeight-e.clientHeight):null!==(t=null==r?void 0:r.getBoundingClientRect().height)&&void 0!==t?t:0,i(),a.observe(o,{childList:!0,subtree:!0}),e?R({behavior:"auto"}):H({behavior:"auto"}),!0)};return h()||(d=new MutationObserver((()=>{h()&&(null==d||d.disconnect())})),d.observe(document.body,{childList:!0,subtree:!0})),()=>{null==d||d.disconnect(),a.disconnect(),u.disconnect()}}),[t,v,R,H,c,s,b]),e.useEffect((()=>{v&&(u.current=!1)}),[u,v]),e.useEffect((()=>{if(!l)return;const e=c.current,r=null!=e?e:window,t=()=>{if(i.current)return void p(a.current);const r=(()=>{if(e)return e.scrollHeight-e.scrollTop-e.clientHeight<=32;const r=s.current;return!r||r.getBoundingClientRect().bottom-window.innerHeight<=32})();u.current=!r,f(r)},o=()=>{i.current&&S()},n=()=>{i.current&&(i.current=!1,m(!1),d.current&&(clearTimeout(d.current),d.current=null),e?e.scrollTo({top:e.scrollTop,behavior:"auto"}):window.scrollTo({top:window.scrollY,behavior:"auto"}))};return r.addEventListener("scroll",t,{passive:!0}),r.addEventListener("scrollend",o),r.addEventListener("wheel",n,{passive:!0}),r.addEventListener("touchmove",n,{passive:!0}),()=>{r.removeEventListener("scroll",t),r.removeEventListener("scrollend",o),r.removeEventListener("wheel",n),r.removeEventListener("touchmove",n)}}),[p,u,i,l,a,c,d,s,f,m,S]),e.useEffect((()=>()=>{T()}),[T]),{scrollContainerRef:c,scrollTargetRef:s,isScrollIncreasing:h,scrollStartSession:L,scrollEndSession:x,scrollToBottom:M,scrollToTarget:B}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("../../../../common/formatUserMessage.js"),t=require("../../common/PickaxeMarkdown/Renderer.js"),i=require("react"),a=require("../../../../hooks/pickaxe/usePickaxeContext.js"),r=require("../../../../hooks/studio/useStyleFontSize.js"),o=require("../../../../hooks/pickaxe/useResponseContext.js"),n=require("../../Addons/Artifact/hooks/useArtifact.js"),l=require("../../common/PickaxeMarkdown/index.js"),c=require("../../common/PickaxeIcon.js"),d=require("./Document.js"),m=require("../../common/PickaxeMessageActions.js"),u=require("../../common/PickaxeMessageParts/index.js"),x=require("../../../../common/cn.js"),p=require("../../../../common/isoMap.js"),f=require("franc-min"),j=require("../../common/ComposioConnectView.js"),g=require("../../common/SmitheryConnectView.js"),h=require("../../../../hooks/pickaxe/useTextToSpeech.js");function v(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var b=v(require("remove-markdown"));exports.default=({index:v,message:k,smitheryData:y,resubmitPrompt:w,isLastMessage:O=!1})=>{var q,N;const{pickaxeId:C,pickaxe:I,styles:P,colors:R,misc:A,responsiveBy:M,disableHtml:S,disableJs:T,disableCss:L,isNewChat:H,isRtl:F}=a.usePickaxeContext(),{isGenerating:z}=o.useResponseContext(),{onLoadArtifact:J}=n.useArtifact(),U=r.useStyleFontSize(),V=null!==(q=null==I?void 0:I.chaticon)&&void 0!==q?q:`https://cdn.mail.studio/chaticons/${C}.png`,B=O&&z,D=null==I?void 0:I.enablereadout,{isLoading:_,isSpeaking:E,speak:G,stop:$}=h.useTextToSpeech(D&&"assistant"===k.role,{provider:null==I?void 0:I.readoutprovider,pickaxeId:C,voiceName:null==I?void 0:I.readoutvoice}),K=()=>{if(_||E)return void $();const e=k.parts.filter((e=>"text"===e.type)).map((e=>e.content)).join(" ");if(!e)return;const s=b.default(e,{stripListLeaders:!0,listUnicodeChar:"",gfm:!0,useImgAltText:!1}),t=f.franc(s),i=p.convertToIso1(t);G(s,i)},Q=!k.parts.some((e=>["text","reasoning","data-action-tool-caption","data-visualization"].includes(e.type)));return"assistant"===k.role?e.jsx("div",Object.assign({className:x.default("flex w-full",F?"justify-end":"justify-start")},{children:e.jsx("div",Object.assign({className:x.default("flex flex-col w-full",0===v&&H&&"viewport"===M&&"min-[767px]:max-w-[80%]",0===v&&H&&"container"===M&&"@[767px]/pickaxe-root:max-w-[80%]")},{children:e.jsxs("div",Object.assign({className:x.default("flex gap-x-3",F&&"flex-row-reverse")},{children:[A.isChatImage&&"NONE"!==V&&e.jsx(c.default,{src:V,alt:"Assistant",width:24,height:24,className:"my-3 h-6 w-6",textColor:R.text}),e.jsxs("div",Object.assign({className:x.default("flex flex-col flex-grow",F?"items-end":"items-start")},{children:[e.jsxs("div",Object.assign({className:x.default(U.b2,"chat-message pt-3 w-full",F?"text-right":"text-left")},{children:[e.jsx(l.PickaxeMarkdown,Object.assign({theme:P.theme,colors:R,isStreaming:B},F&&{rtl:!0},S&&{disableHtml:!0},T&&{disableJs:!0},L&&{disableCss:!0},{disableReasoning:null!==(N=null==I?void 0:I.enablereasoningdisplay)&&void 0!==N&&N,onArtifactClick:J},{children:e.jsx(u.default,{parts:k.parts,isStreaming:B})})),O&&y&&w&&("composio"===y.provider?e.jsx("div",Object.assign({className:"mt-4 px-1"},{children:e.jsx(j.default,{serverId:y.serverId,toolkitSlug:y.toolkitSlug||"",name:y.name,resubmitPrompt:()=>w()})})):e.jsx("div",Object.assign({className:"mt-4 px-1"},{children:e.jsx(g.default,{serverId:y.serverId,smitheryId:y.smitheryId||"",name:y.name||y.smitheryId,resubmitPrompt:()=>w()})})))]})),e.jsx("div",Object.assign({className:x.default("flex flex-col gap-6 my-4",Q&&"mt-2")},{children:B?e.jsx("div",Object.assign({className:"flex items-center gap-x-2 rounded"},{children:Array.from({length:3}).map(((s,t)=>e.jsx("div",{className:x.default("h-1.5 w-1.5 animate-dot rounded-full",1===t&&"animate-dot-down"),style:{backgroundColor:R.secondaryText}},t)))})):e.jsx(m.default,Object.assign({responseReference:k.responseReference,content:k.parts.filter((e=>e.isVisible&&"text"===e.type)).map((e=>e.content)).join("\n"),index:v},"intromessage"===k.area&&{isHideFeedback:!0,isHideResponseAction:!0},{onReadOut:K,isReadOut:D||!1,isReadOutLoading:_,isReading:E}))}))]}))]}))}))})):"user"===k.role?e.jsx("div",Object.assign({className:x.default("flex w-full",F?"justify-start":"justify-end")},{children:e.jsx("div",Object.assign({className:x.default("flex gap-x-3 max-w-[80%]",F?"pr-9":"pl-9","viewport"===M?F?"min-[767px]:pr-0":"min-[767px]:pl-0":F?"@[767px]/pickaxe-root:pr-0":"@[767px]/pickaxe-root:pl-0")},{children:e.jsxs("div",Object.assign({className:x.default(U.b2,"overflow-x-auto overflow-y-hidden px-4 py-3 scrollbar-thin scrollbar-track-white scrollbar-thumb-[#4A4A4B] flex flex-col gap-y-3",F?"text-right":"text-left"),style:{backgroundColor:R.secondary+"80",color:R.secondaryText,borderRadius:P.cornerRadius}},{children:[k.documentIds&&k.documentIds.length>0&&e.jsx("div",Object.assign({className:x.default("flex flex-col gap-y-2",F?"items-start":"items-end")},{children:k.documentIds.map((s=>e.jsx(i.Fragment,{children:e.jsx(d.default,{documentId:s})},s)))})),e.jsx(l.PickaxeMarkdown,Object.assign({theme:P.theme,colors:R},F&&{rtl:!0},{disableHtml:!0,disableJs:!0,disableCss:!0},{children:k.parts.map(((i,a)=>"text"===i.type?e.jsx(t.PickaxeMarkdownRenderer,{value:s.formatUserMessage(i.content)},a):null))}))]}))}))})):e.jsx("div",{})};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("../../../../common/formatUserMessage.js"),t=require("../../common/PickaxeMarkdown/Renderer.js"),i=require("react"),a=require("../../../../hooks/pickaxe/usePickaxeContext.js"),r=require("../../../../hooks/studio/useStyleFontSize.js"),o=require("../../../../hooks/pickaxe/useResponseContext.js"),n=require("../../Addons/Artifact/hooks/useArtifact.js"),l=require("../../common/PickaxeMarkdown/index.js"),c=require("../../common/PickaxeIcon.js"),d=require("./Document.js"),m=require("../../common/PickaxeMessageActions.js"),u=require("../../common/PickaxeMessageParts/index.js"),x=require("../../../../common/cn.js"),p=require("../../../../common/isoMap.js"),f=require("franc-min"),j=require("../../common/ComposioConnectView.js"),g=require("../../common/SmitheryConnectView.js"),h=require("../../../../hooks/pickaxe/useTextToSpeech.js");function v(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var b=v(require("remove-markdown"));exports.default=({index:v,message:k,smitheryData:y,resubmitPrompt:w,isLastMessage:O=!1})=>{var q,N;const{pickaxeId:C,pickaxe:I,styles:P,colors:R,misc:A,responsiveBy:M,disableHtml:S,disableJs:T,disableCss:L,isNewChat:H,isRtl:F}=a.usePickaxeContext(),{isGenerating:z}=o.useResponseContext(),{onLoadArtifact:J}=n.useArtifact(),U=r.useStyleFontSize(),V=null!==(q=null==I?void 0:I.chaticon)&&void 0!==q?q:`https://cdn.mail.studio/chaticons/${C}.png`,B=O&&z,D=null==I?void 0:I.enablereadout,{isLoading:_,isSpeaking:E,speak:G,stop:$}=h.useTextToSpeech(D&&"assistant"===k.role,{provider:null==I?void 0:I.readoutprovider,pickaxeId:C,voiceName:null==I?void 0:I.readoutvoice}),K=()=>{if(_||E)return void $();const e=k.parts.filter((e=>"text"===e.type)).map((e=>e.content)).join(" ");if(!e)return;const s=b.default(e,{stripListLeaders:!0,listUnicodeChar:"",gfm:!0,useImgAltText:!1}),t=f.franc(s),i=p.convertToIso1(t);G(s,i)},Q=!k.parts.some((e=>["text","reasoning","data-action-tool-caption","data-visualization"].includes(e.type)));return"assistant"===k.role?e.jsx("div",Object.assign({className:x.default("flex w-full",F?"justify-end":"justify-start")},{children:e.jsx("div",Object.assign({className:x.default("flex flex-col w-full",0===v&&H&&"viewport"===M&&"min-[767px]:max-w-[80%]",0===v&&H&&"container"===M&&"@[767px]/pickaxe-root:max-w-[80%]")},{children:e.jsxs("div",Object.assign({className:x.default("flex gap-x-3",F&&"flex-row-reverse")},{children:[A.isChatImage&&"NONE"!==V&&e.jsx(c.default,{src:V,alt:"Assistant",width:24,height:24,className:"my-3 h-6 w-6",textColor:R.text}),e.jsxs("div",Object.assign({className:x.default("flex min-w-0 flex-col flex-grow",F?"items-end":"items-start")},{children:[e.jsxs("div",Object.assign({className:x.default(U.b2,"chat-message pt-3 w-full",F?"text-right":"text-left")},{children:[e.jsx(l.PickaxeMarkdown,Object.assign({theme:P.theme,colors:R,isStreaming:B},F&&{rtl:!0},S&&{disableHtml:!0},T&&{disableJs:!0},L&&{disableCss:!0},{disableReasoning:null!==(N=null==I?void 0:I.enablereasoningdisplay)&&void 0!==N&&N,onArtifactClick:J},{children:e.jsx(u.default,{parts:k.parts,isStreaming:B})})),O&&y&&w&&("composio"===y.provider?e.jsx("div",Object.assign({className:"mt-4 px-1"},{children:e.jsx(j.default,{serverId:y.serverId,toolkitSlug:y.toolkitSlug||"",name:y.name,resubmitPrompt:()=>w()})})):e.jsx("div",Object.assign({className:"mt-4 px-1"},{children:e.jsx(g.default,{serverId:y.serverId,smitheryId:y.smitheryId||"",name:y.name||y.smitheryId,resubmitPrompt:()=>w()})})))]})),e.jsx("div",Object.assign({className:x.default("flex flex-col gap-6 my-4",Q&&"mt-2")},{children:B?e.jsx("div",Object.assign({className:"flex items-center gap-x-2 rounded"},{children:Array.from({length:3}).map(((s,t)=>e.jsx("div",{className:x.default("h-1.5 w-1.5 animate-dot rounded-full",1===t&&"animate-dot-down"),style:{backgroundColor:R.secondaryText}},t)))})):e.jsx(m.default,Object.assign({responseReference:k.responseReference,content:k.parts.filter((e=>e.isVisible&&"text"===e.type)).map((e=>e.content)).join("\n"),index:v},"intromessage"===k.area&&{isHideFeedback:!0,isHideResponseAction:!0},{onReadOut:K,isReadOut:D||!1,isReadOutLoading:_,isReading:E}))}))]}))]}))}))})):"user"===k.role?e.jsx("div",Object.assign({className:x.default("flex w-full",F?"justify-start":"justify-end")},{children:e.jsx("div",Object.assign({className:x.default("flex gap-x-3 max-w-[80%]",F?"pr-9":"pl-9","viewport"===M?F?"min-[767px]:pr-0":"min-[767px]:pl-0":F?"@[767px]/pickaxe-root:pr-0":"@[767px]/pickaxe-root:pl-0")},{children:e.jsxs("div",Object.assign({className:x.default(U.b2,"overflow-x-auto overflow-y-hidden px-4 py-3 scrollbar-thin scrollbar-track-white scrollbar-thumb-[#4A4A4B] flex flex-col gap-y-3",F?"text-right":"text-left"),style:{backgroundColor:R.secondary+"80",color:R.secondaryText,borderRadius:P.cornerRadius}},{children:[k.documentIds&&k.documentIds.length>0&&e.jsx("div",Object.assign({className:x.default("flex flex-col gap-y-2",F?"items-start":"items-end")},{children:k.documentIds.map((s=>e.jsx(i.Fragment,{children:e.jsx(d.default,{documentId:s})},s)))})),e.jsx(l.PickaxeMarkdown,Object.assign({theme:P.theme,colors:R},F&&{rtl:!0},{disableHtml:!0,disableJs:!0,disableCss:!0},{children:k.parts.map(((i,a)=>"text"===i.type?e.jsx(t.PickaxeMarkdownRenderer,{value:s.formatUserMessage(i.content)},a):null))}))]}))}))})):e.jsx("div",{})};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../_virtual/_tslib.js"),t=require("react/jsx-runtime"),o=require("../../../common/canChat.js"),s=require("react"),i=require("../../../hooks/pickaxe/usePickaxeContext.js"),n=require("../Addons/Auth/hooks/useAuthContext.js"),r=require("../../../hooks/pickaxe/useDimensionContext.js"),a=require("../Addons/Document/hooks/useDocument.js"),l=require("../Addons/Scroll/hooks/
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../_virtual/_tslib.js"),t=require("react/jsx-runtime"),o=require("../../../common/canChat.js"),s=require("react"),i=require("../../../hooks/pickaxe/usePickaxeContext.js"),n=require("../Addons/Auth/hooks/useAuthContext.js"),r=require("../../../hooks/pickaxe/useDimensionContext.js"),a=require("../Addons/Document/hooks/useDocument.js"),l=require("../Addons/Scroll/hooks/useScroll.js"),u=require("../../../hooks/studio/useStyleFontSize.js"),c=require("../../../hooks/core/useScrollToBottomVisibility.js"),d=require("./History/index.js"),f=require("./Input.js"),m=require("../../Icons/attach-vertical.svg.js"),h=require("../../../common/cn.js"),p=require("../../../common/api/pickaxe.js"),v=require("uuid"),x=require("../../Core/StudioTip.js"),j=require("../common/ScrollToBottomButton.js"),b=require("../common/PickaxeMCPButton.js"),g=require("../../../hooks/pickaxe/useResponseContext.js"),k=require("../Addons/Navbar/NavPill.js"),y=require("../../Icons/history.svg.js");exports.default=()=>{var S,w;const{deploymentType:C,isNewChat:q,setIsNewChat:D,sessionId:I,setSessionId:N,setLastSessionId:T,pickaxeId:P,sender:A,pickaxe:O,styles:_,isEmbed:F,mcpEnabled:E,translations:R}=i.usePickaxeContext(),{isSent:z,token:B}=n.useAuthContext(),{width:H,height:G,setDimension:L}=r.useDimensionContext(),{setDocuments:M,onFileUpload:V}=a.useDocument(),{scrollContainerRef:U,scrollToBottom:W}=l.useScroll({listen:!1}),{isGenerating:J,messages:K}=g.useResponseContext(),Q=u.useStyleFontSize(),[X,Y]=s.useState(0),[Z,$]=s.useState(!1),[ee,te]=s.useState(!1),oe=s.useRef(null),se=s.useRef(null),ie=s.useRef(0),[ne,re]=s.useState(null),[ae,le]=s.useState(!1),ue=(null==R?void 0:R["new-chat"])||"New chat",ce=o.canChat(O),de=ce&&"chat-input"===C&&q&&!z,fe=ce&&null!==(w=null===(S=null==O?void 0:O.documentuploadtype)||void 0===S?void 0:S.startsWith("enduserupload"))&&void 0!==w&&w,{hasScrollableContent:me,isNearBottom:he}=c.default(U,{},[de]);s.useEffect((()=>()=>{M([])}),[]);const pe=s.useCallback((()=>{if(!P||!A&&!B)return;const t=(o=0)=>e.__awaiter(void 0,void 0,void 0,(function*(){var e;try{const t=yield p.pickaxeApi2.post("/conversation/title",Object.assign({sessionId:I},B?{studioSessionToken:B}:A?{userId:A}:{}));if(t.data&&t.data.success){const e=t.data.title;if(e&&"Conversation Title"!==e)return void xe(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,A,I,B]);s.useEffect((()=>{J||q||!I||pe()}),[J,q,I,pe]),s.useEffect((()=>{if(!oe.current)return;const e=new ResizeObserver((e=>{for(const t of e){const{width:e,height:o}=t.contentRect;L(parseInt(e.toFixed(0)),parseInt(o.toFixed(0)))}}));return e.observe(oe.current),()=>{e.disconnect()}}),[L]);const[ve,xe]=s.useState(ue),je=(null==O?void 0:O.formtitle)||"Pickaxe",be=(null==O?void 0:O.coverphoto)||void 0,[ge,ke]=s.useState(!1);s.useEffect((()=>{const e=!de&&!F&&_.portalTheme&&(K.filter((e=>"user"===e.role)).length>0||Z||!q);ke(null!=e&&e)}),[de,F,Z,q,K,_.portalTheme]);const ye=s.useCallback((()=>{W({force:!0,behavior:"auto"})}),[W]);return t.jsxs("div",Object.assign({ref:oe,className:"relative flex h-full w-full flex-col items-center overflow-hidden",onDragEnter:e=>{e.preventDefault(),e.stopPropagation(),fe&&(ie.current+=1,e.dataTransfer.items&&e.dataTransfer.items.length>0&&te(!0))},onDragLeave:e=>{e.preventDefault(),e.stopPropagation(),fe&&(ie.current-=1,0===ie.current&&te(!1))},onDragOver:e=>{e.preventDefault(),e.stopPropagation()},onDrop:t=>e.__awaiter(void 0,void 0,void 0,(function*(){if(t.preventDefault(),t.stopPropagation(),te(!1),ie.current=0,!fe)return;const e=Array.from(t.dataTransfer.files||[]);e.length>0&&(D(!1),yield V(e))}))},{children:[ee&&t.jsxs("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:[t.jsx("div",Object.assign({className:"flex h-24 w-24 items-center justify-center rounded-full bg-white shadow-lg animate-bounce text-black"},{children:t.jsx(m.default,{className:"h-10 w-10"})})),t.jsx("h3",Object.assign({className:h.default(Q.h3,"mt-6 font-semibold text-c-primary text-black")},{children:(null==R?void 0:R["drop-files-to-upload"])||"Drop files to upload"})),t.jsx("p",Object.assign({className:h.default(Q.b2,"mt-2 opacity-60 text-black")},{children:(null==R?void 0:R["add-anything-to-the-conversation"])||"Add anything to the conversation"}))]})),!F&&E?t.jsx("div",Object.assign({className:"pointer-events-none absolute left-1/2 top-4 z-40 flex w-full max-w-[800px] -translate-x-1/2 justify-end px-4"},{children:t.jsx("div",Object.assign({className:"pointer-events-auto"},{children:t.jsx(b.default,{})}))})):null,de?t.jsx(f.default,{}):t.jsxs(t.Fragment,{children:[ge&&t.jsxs("div",Object.assign({className:h.default("direct-link"===C?"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"===_.portalTheme?"glass-dark ":"")},{children:[t.jsx(k.NavPill,{text:je,icon:be}),q||ve===ue?t.jsx(k.NavPill,{text:ve}):t.jsx(k.EditableNavPill,{text:ve,sessionId:I,onRename:t=>e.__awaiter(void 0,void 0,void 0,(function*(){if(I)try{yield p.pickaxeApi2.patch("/conversation/title",Object.assign({sessionId:I,name:t},B?{studioSessionToken:B}:A?{userId:A}:{})),xe(t)}catch(e){console.error("Error renaming chat:",e),alert((null==R?void 0:R["failed-rename-chat"])||"Failed to rename chat.")}})),onDelete:()=>e.__awaiter(void 0,void 0,void 0,(function*(){if(I&&window.confirm((null==R?void 0:R["delete-confirm"])||"Are you sure you want to delete this conversation?"))try{yield p.pickaxeApi2.delete("/conversation",{data:Object.assign({sessionId:I},B?{studioSessionToken:B}:A?{userId:A}:{})}),D(!0),N(ce?v.v4():""),xe(ue)}catch(e){console.error("Error deleting chat:",e),alert((null==R?void 0:R["failed-delete-chat"])||"Failed to delete chat.")}})),isDarkGlass:"dark"===_.portalTheme}),t.jsx(x.StudioTip,Object.assign({content:R["chat-history"]||"Chat History",align:"bottom",containerClassName:"inline-flex shrink-0"},{children:t.jsx(k.HistoryPill,{icon:t.jsx(y.default,{}),onClick:()=>{N(""),T(I)}})}))]})),t.jsx(d.default,{additionalScrollHeight:X,isForceHideInfo:G<=545||H<=350||Z,isInputFocused:Z,onSubmit:t=>e.__awaiter(void 0,void 0,void 0,(function*(){ce&&se.current&&se.current.onSubmit(t)})),smitheryAuthData:ne,resubmitPrompt:()=>{re(null),le(!0)}}),t.jsx(j.default,{isVisible:me&&!he,bottom:X+65,onClick:ye}),ce&&t.jsx(f.default,{ref:se,onFocus:()=>$(!0),onBlur:()=>$(!1),onInputHeightChange:Y,initSmitheryAuthData:e=>re(e),resubmitPrompt:ae})]})]}))};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime");exports.Li=({children:r})=>e.jsx("li",{children:r}),exports.Ol=({children:r})=>e.jsx("ol",{children:r}),exports.Ul=({children:r})=>e.jsx("ul",{children:r});
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime");exports.Li=({children:r})=>e.jsx("li",{children:r}),exports.Ol=({children:r,start:s})=>e.jsx("ol",Object.assign({start:s},{children:r})),exports.Ul=({children:r})=>e.jsx("ul",{children:r});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../_virtual/_tslib.js"),r=require("react/jsx-runtime"),s=require("react"),n=require("./hooks/usePickaxeMarkdownContext.js"),i=require("./utils/custom-plugins.js"),t=require("react-markdown"),o=require("remark-gfm"),a=require("remark-math"),l=require("rehype-katex"),c=require("rehype-raw"),u=require("./Components/A/index.js"),d=require("./Components/A/FilePreview.js"),p=require("./Components/P/index.js"),f=require("./Components/Img/index.js"),h=require("./Components/Iframe/index.js"),m=require("./Components/Code/index.js"),x=require("./Components/Headings/index.js"),g=require("./Components/List/index.js"),j=require("./Components/Table/index.js"),w=require("./Components/Others/index.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../_virtual/_tslib.js"),r=require("react/jsx-runtime"),s=require("react"),n=require("./hooks/usePickaxeMarkdownContext.js"),i=require("./utils/custom-plugins.js"),t=require("react-markdown"),o=require("remark-gfm"),a=require("remark-math"),l=require("rehype-katex"),c=require("rehype-raw"),u=require("./Components/A/index.js"),d=require("./Components/A/FilePreview.js"),p=require("./Components/P/index.js"),f=require("./Components/Img/index.js"),h=require("./Components/Iframe/index.js"),m=require("./Components/Code/index.js"),x=require("./Components/Headings/index.js"),g=require("./Components/List/index.js"),j=require("./Components/Table/index.js"),w=require("./Components/Others/index.js"),v=require("./Components/Action/index.js"),C=require("./Components/Artifact/index.js"),b=require("./Components/Others/Think.js"),k=require("../../../../common/cn.js");function q(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var P=q(t),R=q(o),y=q(a),S=q(l),O=q(c);exports.PickaxeMarkdownRenderer=({className:t,style:o,children:a,value:l,maxLines:c,maxChars:q,multiLineBreaks:$,onExpandClick:A,filePreviewSeenRef:U,suppressedRichPreviewUrls:H})=>{const{colors:M,rtl:T,disableHtml:E,disableJs:I,disableCss:_}=n.usePickaxeMarkdownContext(),[N,F]=s.useState({width:0,height:0}),[L,B]=s.useState(null),z=s.useRef(null),D=s.useMemo((()=>{if(!l)return"";if(E)return l;let e=l.trim();return e=e.replace(/<!--[\s\S]*?-->/g,""),e=e.replace(/\u200B/g,""),e=e.replace(/\\\((.*?)\\\)/g,"$$$ $1 $$$"),e=e.replace(/\\\[(.*?)\\\]/g,"$$$ $1 $$$"),e=e.replace(/<\/think>/g,"\n</think>"),$&&(e=e.replace(/```[\s\S]*?```|(\n(?=\n))/g,((e,r)=>r?"\n\n<br/>\n":e))),e||""}),[l,$,E]);s.useEffect((()=>{if(q)return void B(D.length>q?D.slice(0,q)+'<span class="pxe-expand-btn">...</span>':null);if(!c)return void B(null);if(!z.current||!D||L)return;const e=z.current,r=parseInt(window.getComputedStyle(e).lineHeight,10),s=c*r;if(!(N.height>s))return;const n=Math.floor(N.width/8),i=Math.floor(n*c);B(D.slice(0,i)+'<span class="pxe-expand-btn">...</span>')}),[D,c,q,N,L]);const J=s.useRef(new Set);U||(J.current=new Set);const W=null!=U?U:J,Q=s.useRef({colors:M,onExpandClick:A,filePreviewSeenRef:W,suppressedRichPreviewUrls:H});Q.current={colors:M,onExpandClick:A,filePreviewSeenRef:W,suppressedRichPreviewUrls:H};const G=s.useMemo((()=>({h1:x.H1,h2:x.H2,h3:x.H3,h4:x.H4,h5:x.H5,p:e=>r.jsx(p.P,Object.assign({},e,{suppressedRichPreviewUrls:Q.current.suppressedRichPreviewUrls})),a:e=>r.jsx(u.A,Object.assign({},e,{filePreviewSeenRef:Q.current.filePreviewSeenRef,suppressedRichPreviewUrls:Q.current.suppressedRichPreviewUrls})),img:e=>{const{colors:s,filePreviewSeenRef:n,suppressedRichPreviewUrls:i}=Q.current,t="string"==typeof e.src?e.src:"",o=d.getFilePreviewInfo(t);return o&&!d.shouldSuppressRichPreviewForUrl(o.url,i)?d.shouldRenderFilePreview(o,n)?r.jsx(d.default,{fileInfo:o,displayName:"string"==typeof e.alt?e.alt:void 0}):r.jsx("a",Object.assign({href:o.url,target:"_blank",rel:"noopener noreferrer",style:{color:s.accent}},{children:e.alt||o.fileName})):r.jsx(f.Img,Object.assign({},e))},iframe:h.Iframe,code:m.Code,ol:g.Ol,ul:g.Ul,li:g.Li,table:j.Table,th:j.Th,tr:j.Tr,td:j.Td,hr:w.Hr,br:w.Br,blockquote:w.Blockquote,span:s=>{var{children:n}=s,i=e.__rest(s,["children"]);const{colors:t,onExpandClick:o}=Q.current;return"pxe-expand-btn"===i.className?r.jsx("span",Object.assign({},i,{style:Object.assign({display:"inline",fontWeight:500,color:t.accent,marginLeft:".25rem",userSelect:"none"},o&&{cursor:"pointer"})},o&&{onClick:o},{children:n})):r.jsx("span",Object.assign({},i,{children:n}))},"action-caption":v.ActionCaption,"action-finished":v.ActionFinished,"action-error":v.ActionError,artifact:C.Artifact,"artifact-error":C.ArtifactError,think:b.Think})),[]);s.useEffect((()=>{if(!z.current)return;const e=new ResizeObserver((e=>{for(const r of e){const{width:e,height:s}=r.contentRect;F({width:e,height:s})}}));return e.observe(z.current),()=>{e.disconnect()}}),[]);const K=L||D;return r.jsxs("div",Object.assign({className:"pxe-markdown",ref:z,style:Object.assign({position:"relative",overflowWrap:"anywhere",display:"grid",gridTemplateColumns:"repeat(1, minmax(0, 1fr))",gap:".625rem",width:"100%"},o)},T&&{dir:"rtl"},{children:[r.jsx(P.default,Object.assign({className:k.default("pxe-prose",t),components:G,remarkPlugins:[R.default,[y.default,{singleDollarTextMath:!1}],[i.remarkDocumentCssAsCode,{disableCss:_}],i.remarkSmartQuotes],rehypePlugins:[i.rehypeCode,S.default,...E?[]:[O.default],[i.rehypeSanitize,{disableJs:I,disableCss:_}]]},{children:K})),a]}))};
|
package/dist/cjs/prose.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.pxe-prose p:not(.pxe-artifact-create-header p){font-weight:350}.pxe-prose p:not(:only-child):not(.pxe-artifact-create-header p){margin-bottom:.75rem}.pxe-prose a{font-weight:600;text-decoration:underline;text-underline-offset:.2rem}.pxe-prose iframe:not(.pxe-artifact-renderer iframe){margin-bottom:1.5rem}.pxe-prose blockquote{margin-bottom:2.5rem;padding-bottom:.25rem;padding-left:1rem;padding-top:.25rem}.pxe-prose hr{margin-bottom:1.5rem}.pxe-prose .pxe-markdown-image,.pxe-prose .pxe-markdown-video{margin-bottom:1.5rem;margin-top:1.5rem}.pxe-prose .pxe-markdown-video{display:flex;justify-content:center;width:100%}.pxe-prose .pxe-markdown-code{margin-bottom:1.5rem}.pxe-prose ol{list-style-type:decimal}.pxe-prose ol,.pxe-prose ul{list-style-position:inside;margin-bottom:1.5rem;padding-left:1rem}.pxe-prose ul{list-style-type:disc}.pxe-prose li{margin:10px 10px 14px}.pxe-prose li>p{display:inline}.pxe-prose .pxe-markdown-table{overflow:auto;position:relative}.pxe-prose .pxe-markdown-table:not(:only-child){margin-bottom:2.5rem}.pxe-prose table{font-size:.875rem;line-height:1.24rem;table-layout:fixed}.pxe-prose th{font-weight:600;text-align:left}.pxe-prose td,.pxe-prose th{padding:.75em 1em}.pxe-prose h1{font-size:2.25rem;line-height:2.5rem;margin-bottom:1.5rem}.pxe-prose h2{font-size:1.875rem;line-height:2.25rem;margin-bottom:1.5rem}.pxe-prose h3{font-size:1.5rem;line-height:2rem;margin-bottom:1.5rem}.pxe-prose h4{font-size:1.25rem}.pxe-prose h4,.pxe-prose h5{line-height:1.75rem;margin-bottom:1rem}.pxe-prose h5{font-size:1.125rem}.pxe-prose h2:not(:first-child){margin-top:2.5rem}.pxe-prose h3:not(:first-child),.pxe-prose h4:not(:first-child)
|
|
1
|
+
.pxe-prose p:not(.pxe-artifact-create-header p){font-weight:350}.pxe-prose p:not(:only-child):not(.pxe-artifact-create-header p){margin-bottom:.75rem}.pxe-prose a{font-weight:600;text-decoration:underline;text-underline-offset:.2rem}.pxe-prose iframe:not(.pxe-artifact-renderer iframe){margin-bottom:1.5rem}.pxe-prose blockquote{margin-bottom:2.5rem;padding-bottom:.25rem;padding-left:1rem;padding-top:.25rem}.pxe-prose hr{margin-bottom:1.5rem}.pxe-prose .pxe-markdown-image,.pxe-prose .pxe-markdown-video{margin-bottom:1.5rem;margin-top:1.5rem}.pxe-prose .pxe-markdown-video{display:flex;justify-content:center;width:100%}.pxe-prose .pxe-markdown-code{margin-bottom:1.5rem}.pxe-prose ol{list-style-type:decimal}.pxe-prose ol,.pxe-prose ul{list-style-position:inside;margin-bottom:1.5rem;padding-left:1rem}.pxe-prose ul{list-style-type:disc}.pxe-prose li{margin:10px 10px 14px}.pxe-prose li>p{display:inline}.pxe-prose .pxe-markdown-table{overflow:auto;position:relative}.pxe-prose .pxe-markdown-table:not(:only-child){margin-bottom:2.5rem}.pxe-prose table{font-size:.875rem;line-height:1.24rem;table-layout:fixed}.pxe-prose th{font-weight:600;text-align:left}.pxe-prose td,.pxe-prose th{padding:.75em 1em}.pxe-prose h1{font-size:2.25rem;line-height:2.5rem;margin-bottom:1.5rem}.pxe-prose h2{font-size:1.875rem;line-height:2.25rem;margin-bottom:1.5rem}.pxe-prose h3{font-size:1.5rem;line-height:2rem;margin-bottom:1.5rem}.pxe-prose h4{font-size:1.25rem}.pxe-prose h4,.pxe-prose h5{line-height:1.75rem;margin-bottom:1rem}.pxe-prose h5{font-size:1.125rem}.pxe-prose h2:not(:first-child){margin-top:2.5rem}.pxe-prose h3:not(:first-child),.pxe-prose h4:not(:first-child){margin-top:1rem}.pxe-prose pre{max-width:100%;overflow-x:auto}.pxe-prose>pre:not(:first-child){margin-top:1rem}.pxe-prose .pxe-markdown-code{display:flex;flex-direction:column}.pxe-prose .pxe-markdown-code>div:first-child{background-color:#1d1f21;border-radius:.3em;display:flex;flex-direction:column;max-width:min-content;padding-top:1em;position:relative}.pxe-prose .pxe-markdown-code>div:first-child>div:first-child{display:flex;justify-content:flex-end;padding:0 1em}.pxe-prose .pxe-markdown-code>div:first-child>div:last-child{overflow:auto}.pxe-prose .pxe-action[data-action-id]:not(:nth-child(2)){margin-top:1rem}.pxe-prose .pxe-markdown-code-inline{background-color:#1d1f21;border-radius:.3em;color:#fff;font-size:10pt;padding:.15em .4em}.pxe-link-previews{display:flex;flex-direction:column;gap:2rem}.pxe-prose>p:first-child>.pxe-markdown-image,.pxe-prose>p:first-child>.pxe-markdown-video{margin-top:0}.pxe-prose .pxe-blink{animation:blink 1s ease-in-out infinite}.pxe-prose .pxe-red{color:red}.pxe-prose .pxe-action-error,.pxe-prose .pxe-artifact-error{display:flex;flex-direction:column}.pxe-prose .pxe-animated-token{animation:fadeIn .3s ease-out forwards;display:inline-block;opacity:0}.pxe-prose .pxe-spin{animation:spin 1s linear infinite}@keyframes fadeIn{0%{opacity:0;transform:translateX(5px)}to{opacity:1;transform:translateX(0)}}@keyframes blink{0%{opacity:1}50%{opacity:.5}to{opacity:1}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
|
|
@@ -14,5 +14,5 @@ interface PickaxeArtifactRendererProps {
|
|
|
14
14
|
version: number;
|
|
15
15
|
};
|
|
16
16
|
}
|
|
17
|
-
declare const PickaxeArtifactRenderer: (props: PickaxeArtifactRendererProps) => import("react/jsx-runtime").JSX.Element
|
|
17
|
+
declare const PickaxeArtifactRenderer: (props: PickaxeArtifactRendererProps) => import("react/jsx-runtime").JSX.Element;
|
|
18
18
|
export default PickaxeArtifactRenderer;
|
|
@@ -5,6 +5,9 @@ type ScrollContextType = {
|
|
|
5
5
|
scrollContainerRef: MutableRefObject<HTMLDivElement>;
|
|
6
6
|
scrollTargetRef: MutableRefObject<HTMLDivElement>;
|
|
7
7
|
hasScrolledRef: MutableRefObject<boolean>;
|
|
8
|
+
isProgrammaticScrollRef: MutableRefObject<boolean>;
|
|
9
|
+
programmaticScrollBehaviorRef: MutableRefObject<ScrollBehavior>;
|
|
10
|
+
scrollEndTimerRef: MutableRefObject<ReturnType<typeof setTimeout> | null>;
|
|
8
11
|
isLocked: boolean;
|
|
9
12
|
isScrollSession: boolean;
|
|
10
13
|
isScrolling: boolean;
|
|
@@ -3,12 +3,13 @@ interface UseScrollProps {
|
|
|
3
3
|
auto?: boolean;
|
|
4
4
|
debug?: boolean;
|
|
5
5
|
smooth?: boolean;
|
|
6
|
+
listen?: boolean;
|
|
6
7
|
}
|
|
7
8
|
interface ScrollOptions {
|
|
8
9
|
behavior?: ScrollBehavior;
|
|
9
10
|
force?: boolean;
|
|
10
11
|
}
|
|
11
|
-
export declare const useScroll: ({ auto, debug, smooth, }
|
|
12
|
+
export declare const useScroll: ({ auto, debug, smooth, listen, }?: UseScrollProps) => {
|
|
12
13
|
scrollContainerRef: import("react").MutableRefObject<HTMLDivElement>;
|
|
13
14
|
scrollTargetRef: import("react").MutableRefObject<HTMLDivElement>;
|
|
14
15
|
isScrollIncreasing: boolean;
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
+
/// <reference types="node" />
|
|
2
3
|
export declare const useScrollContext: () => {
|
|
3
4
|
scrollContainerRef: import("react").MutableRefObject<HTMLDivElement>;
|
|
4
5
|
scrollTargetRef: import("react").MutableRefObject<HTMLDivElement>;
|
|
5
6
|
hasScrolledRef: import("react").MutableRefObject<boolean>;
|
|
7
|
+
isProgrammaticScrollRef: import("react").MutableRefObject<boolean>;
|
|
8
|
+
programmaticScrollBehaviorRef: import("react").MutableRefObject<ScrollBehavior>;
|
|
9
|
+
scrollEndTimerRef: import("react").MutableRefObject<NodeJS.Timeout | null>;
|
|
6
10
|
isLocked: boolean;
|
|
7
11
|
isScrollSession: boolean;
|
|
8
12
|
isScrolling: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__awaiter as e}from"../../../../../_virtual/_tslib.js";import{jsxs as t,jsx as o}from"react/jsx-runtime";import{useState as n,useRef as i,useMemo as a,useEffect as r}from"react";import{useArtifactContext as l}from"../hooks/useArtifactContext.js";import{usePickaxeContext as c}from"../../../../../hooks/pickaxe/usePickaxeContext.js";import{useAuthContext as s}from"../../Auth/hooks/useAuthContext.js";import{useScroll as p}from"../../Scroll/hooks/useScroll.js";import{useArtifact as d}from"../hooks/useArtifact.js";import{useSubmitDocument as m}from"../../../../../hooks/pickaxe/useSubmitDocument.js";import{useReactToPrint as u}from"react-to-print";import{PickaxeMarkdown as y}from"../../../common/PickaxeMarkdown/index.js";import{PickaxeMarkdownRenderer as v}from"../../../common/PickaxeMarkdown/Renderer.js";import{Prism as x}from"react-syntax-highlighter";import{convertMarkdownToDocx as f,downloadDocx as g}from"../../../../../common/docx/index.js";import h from"file-saver";import b from"../../Scroll/ScrollLockView.js";import w from"../../../../Icons/expand.svg.js";import C from"../../../../Icons/shrink.svg.js";import k from"../../../../Icons/collapse-new.svg.js";import j from"../../../../Icons/copy-new.svg.js";import T from"../../../../Icons/download-new.svg.js";import F from"../../../common/PickaxeCopyButton.js";import S from"../../../../Core/ScrollArea.js";import O from"../../../../Core/TipContainer.js";import A from"../MermaidRenderer.js";import D from"./SaveMenu.js";import N from"./ViewOptions.js";import B from"csv-to-markdown-table";import E from"copy-to-clipboard";import $ from"../../../../../common/cn.js";import z from"../../../../../common/error.js";const L="development"===process.env.NODE_ENV?"http://localhost:3007":"https://user-content.pickaxe.co",M=e=>{var t;const o=null==e?void 0:e.trim().toLowerCase();if(!o)return".txt";return null!==(t={javascript:".js",js:".js",typescript:".ts",ts:".ts",python:".py",py:".py",json:".json",html:".html",css:".css",markdown:".md",md:".md",sql:".sql",shell:".sh",bash:".sh",sh:".sh",yaml:".yaml",yml:".yml",xml:".xml"}[o])&&void 0!==t?t:`.${o}`},I=I=>{var P,W,R,H;const{artifacts:K,currentPopupType:_,currentArtifact:q,setCurrentArtifact:V}=l(),{onLoadArtifact:X}=d(),{contextId:U,pickaxeId:G,pickaxe:J,styles:Q,colors:Y,translations:Z}=c(),{isLoggedIn:ee,token:te}=s(),oe=m(),[ne,ie]=n("code"),[ae,re]=n(!1),[le,ce]=n(!1),[se,pe]=n(!1),de=i(),me=i(null),ue=i(null),ye=u({contentRef:de}),{scrollContainerRef:ve,scrollStartSession:xe,scrollToBottom:fe,scrollEndSession:ge}=p({auto:"code"===ne}),he=null!==(W=null===(P=I.styling)||void 0===P?void 0:P.styles)&&void 0!==W?W:Q,be=null!==(H=null===(R=I.styling)||void 0===R?void 0:R.colors)&&void 0!==H?H:Y,we=a((()=>{var e,t,o,n,i;if(!I.artifact&&!q)return null;const a=null!==(t=null===(e=I.artifact)||void 0===e?void 0:e.id)&&void 0!==t?t:null==q?void 0:q.id,r=null!==(n=null===(o=I.artifact)||void 0===o?void 0:o.version)&&void 0!==n?n:null==q?void 0:q.version;return null!==(i=K.find((e=>e.id===a&&e.version===r)))&&void 0!==i?i:null}),[q,K,I.artifact]),Ce=a((()=>we?"text/csv"===we.type?B(we.content,",",!0):"text/tab-separated-values"===we.type?B(we.content,"\t",!0):null:null),[we]),ke=a((()=>(be.secondaryText||"").toLowerCase().startsWith("#ffffff")),[null==be?void 0:be.secondaryText]),je=a((()=>{const e=I.artifact&&(null==q?void 0:q.id)===I.artifact.id&&(null==q?void 0:q.version)===I.artifact.version;return"inline"===I.type&&("inline-form"===_?!!q:e)}),[q,_,I.type,I.artifact]),Te=a((()=>we?(e=>{switch(e.type){case"text/markdown":return{extension:".md",mimeType:"text/markdown",content:e.content};case"text/html":return{extension:".html",mimeType:"text/html",content:e.content};case"text/csv":return{extension:".csv",mimeType:"text/csv",content:e.content};case"text/tab-separated-values":return{extension:".tsv",mimeType:"text/tab-separated-values",content:e.content};case"image/svg+xml":return{extension:".svg",mimeType:"image/svg+xml",content:e.content};case"application/pdf":return e.content.trimStart().startsWith("%PDF")?{extension:".pdf",mimeType:"application/pdf",content:e.content}:{extension:".html",mimeType:"text/html",content:e.content};case"application/vnd.pxe.code":return{extension:M(e.programmingLanguage),mimeType:"text/plain",content:e.content};case"application/vnd.pxe.mermaid":return{extension:".mmd",mimeType:"text/plain",content:e.content};case"application/vnd.pxe.react":return{extension:".tsx",mimeType:"text/typescript",content:e.content};default:return null}})(we):null),[we]);r((()=>{e(void 0,void 0,void 0,(function*(){"inline"===I.type&&I.artifact&&(K.some((e=>I.artifact&&e.id===I.artifact.id&&e.version===I.artifact.version))||X({id:I.artifact.id,version:I.artifact.version}))}))}),[K,I.type,I.artifact]),r((()=>{if("application/vnd.pxe.code"===(null==we?void 0:we.type)&&ie("code"),"finished"!==(null==we?void 0:we.status))return ie("code"),xe(),void fe();ge(),"application/vnd.pxe.code"!==we.type&&ie("render")}),[null==we?void 0:we.status,null==we?void 0:we.type]),r((()=>{var e;!ue.current||"text/html"!==(null==we?void 0:we.type)&&"application/pdf"!==(null==we?void 0:we.type)&&"application/vnd.pxe.react"!==(null==we?void 0:we.type)||null===(e=ue.current.contentWindow)||void 0===e||e.postMessage({type:"application/vnd.pxe.react"!==we.type?"HTML_CODE":"REACT_CODE",content:we.content},L)}),[null==we?void 0:we.content,null==we?void 0:we.type]);const Fe=()=>e(void 0,void 0,void 0,(function*(){if(!we)return;if("text/html"===we.type||"application/pdf"===we.type){const e=we.content,t=window.open("","_blank");return void(t&&(t.document.open(),t.document.write(e),t.document.close(),t.focus(),t.print()))}const e=ne;"code"===e&&(ie("render"),yield new Promise((e=>setTimeout(e,50)))),ye(),"code"===e&&ie(e)})),Se=()=>e(void 0,void 0,void 0,(function*(){if(!we)return;const e=yield f(we.content);g(e,`${we.title}.docx`)})),Oe=t=>e(void 0,void 0,void 0,(function*(){var e;if(!we)return;let o={mimeType:"text/plain",extension:".txt"};switch(t){case"text/markdown":o={mimeType:"text/markdown",extension:".md"};break;case"text/html":o={mimeType:"text/html",extension:".html"};break;case"text/csv":o={mimeType:"text/csv",extension:".csv"};break;case"text/tab-separated-values":o={mimeType:"text/tab-separated-values",extension:".tsv"};break;case"image/svg+xml":case"application/vnd.pxe.mermaid":o={mimeType:"image/svg+xml",extension:".svg"};break;case"application/pdf":o={mimeType:"application/pdf",extension:".pdf"};break;case"application/vnd.pxe.code":o={mimeType:`application/${we.programmingLanguage||"text"};charset=utf-8`,extension:`.${we.programmingLanguage||"txt"}`};break;case"application/vnd.pxe.react":o={mimeType:"text/typescript",extension:".tsx"};break;default:o={mimeType:"text/plain",extension:".txt"}}let n=null;if("application/vnd.pxe.mermaid"===we.type){const t=ne;"code"===t&&(ie("render"),yield new Promise((e=>setTimeout(e,50))));const o=null===(e=me.current)||void 0===e?void 0:e.querySelector("svg");o&&(n=(new XMLSerializer).serializeToString(o)),"code"===t&&ie(t)}const i=new Blob([null!=n?n:we.content],{type:o.mimeType});h(i,`${we.title}${o.extension}`)})),Ae=()=>e(void 0,void 0,void 0,(function*(){if(we&&Te&&te){ce(!0),pe(!1);try{const t=`${e=we.title,e.trim().replace(/[\\/:*?"<>|]/g,"-").replace(/\s+/g," ")||"artifact"}${Te.extension}`,o=new File([Te.content],t,{type:Te.mimeType});yield oe.document(Object.assign(Object.assign({contextId:U,pickaxeId:G,file:o},(null==J?void 0:J.workspaceid)&&{workspaceId:J.workspaceid}),{studioSessionToken:te,isUserDocument:!0})),pe(!0),yield new Promise((e=>setTimeout(e,1500)))}catch(e){alert(z(e))}finally{ce(!1),pe(!1)}var e}})),De=()=>{"inline"!==I.type||!I.artifact||je?V(null):V({id:I.artifact.id,version:I.artifact.version})},Ne=je||!_.startsWith("inline");return we?t("div",Object.assign({className:$("pxe-artifact-renderer flex flex-col","inline"===I.type&&!je&&"min-h-[320px] mb-6",I.className),style:Object.assign(Object.assign({backgroundColor:be.secondary,color:be.secondaryText},"auto"!==_&&{borderRadius:he.cornerRadius}),I.style)},{children:[t("div",Object.assign({className:"flex items-center gap-4 justify-between px-4 py-3 shadow-sm"},{children:[t("div",Object.assign({className:"pxe-artifact-create-header flex min-w-0 items-center gap-4"},{children:[Ne&&o(N,{type:we.type,view:ne,colors:be,onChange:ie}),o("p",Object.assign({className:"w-[220px] max-w-full truncate text-[18px] font-semilight leading-tight",title:we.title},{children:we.title}))]})),"inline"===I.type&&!Ne&&o("div",Object.assign({className:"shrink-0"},{children:o("button",Object.assign({type:"button",style:{color:be.secondaryText},onClick:De,title:(null==Z?void 0:Z.expand)||"Expand","aria-label":(null==Z?void 0:Z.expand)||"Expand artifact"},{children:o(je?C:w,{className:"w-6 h-6 shrink-0"})}))}))]})),Ne&&o("div",Object.assign({className:"flex items-center justify-between border-y px-4 py-2.5",style:{borderColor:be.primary}},{children:t("div",Object.assign({className:"flex items-center gap-3"},{children:[o("button",Object.assign({type:"button",className:"opacity-70 transition-opacity duration-300 ease-in-out hover:opacity-100",style:{color:be.secondaryText},onClick:De,title:"inline"===I.type?(null==Z?void 0:Z.collapse)||"Collapse":(null==Z?void 0:Z.close)||"Close","aria-label":"inline"===I.type?(null==Z?void 0:Z.collapse)||"Collapse artifact":(null==Z?void 0:Z.close)||"Close artifact"},{children:o(k,{className:"h-5 w-5 shrink-0"})})),o("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:be.secondaryText},disabled:ae,onClick:()=>e(void 0,void 0,void 0,(function*(){if(we)try{E(we.content),re(!0),yield new Promise((e=>setTimeout(e,1500)))}finally{re(!1)}})),title:(null==Z?void 0:Z.copy)||"Copy","aria-label":(null==Z?void 0:Z.copy)||"Copy artifact content"},{children:o(j,{className:"h-[18px] w-[18px] shrink-0"})})),o(D,Object.assign({data:we,colors:be,onDownload:Oe,onSaveAsPDF:Fe,onSaveAsDOCX:Se,onSaveToKnowledgeBase:Ae,isSaveToKnowledgeBaseEnabled:ee&&Boolean(Te),isSavingToKnowledgeBase:le,isSavedToKnowledgeBase:se,className:"opacity-70 transition-opacity duration-300 ease-in-out hover:opacity-100"},{children:o("div",Object.assign({role:"button",className:"cursor-pointer",style:{color:be.secondaryText},title:(null==Z?void 0:Z.save)||"Download","aria-label":(null==Z?void 0:Z.save)||"Download artifact content"},{children:o(T,{className:"h-6 w-6 shrink-0"})}))}))]}))})),o("div",Object.assign({className:"flex flex-col flex-grow @container/pickaxe-artifact"},{children:t(S,Object.assign({ref:ve,innerClassName:"flex-grow w-full"},{children:["render"===ne&&"application/vnd.pxe.code"!==we.type?o("div",Object.assign({ref:de,className:$("p-4 pb-6 flex-grow flex flex-col","text/html"===we.type&&"p-0","text/csv"===we.type&&"p-0","application/pdf"===we.type&&"p-0","application/vnd.pxe.react"===we.type&&"p-0")},{children:"text/markdown"===we.type||"text/csv"===we.type||"text/tab-separated-values"===we.type||"image/svg+xml"===we.type?o(y,Object.assign({theme:he.theme,colors:be},{children:o(v,{value:null!=Ce?Ce:we.content,className:$("px-6 @[767px]/pickaxe-artifact:px-11 mx-auto w-full",("text/csv"===we.type||"text/tab-separated-values"===we.type)&&"px-4 @[767px]/pickaxe-artifact:px-4 mx-0"),style:{flex:1}})})):"application/vnd.pxe.mermaid"===we.type?o(A,{ref:me,id:`mermaid-${we.id}-${we.version}`,data:we.content}):"text/html"===we.type||"application/pdf"===we.type||"application/vnd.pxe.react"===we.type?o("iframe",Object.assign({ref:ue,title:we.title,src:`${L}/${"application/vnd.pxe.react"!==we.type?"html":"react"}?theme=${ke?"dark":"light"}&bg=${be.secondary}&accent=${be.accent}`,style:{width:"100%",flex:1,border:"none",backgroundColor:null==be?void 0:be.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 t=e.target;setTimeout((()=>{var e;try{null===(e=t.contentWindow)||void 0===e||e.postMessage({type:"application/vnd.pxe.react"!==we.type?"HTML_CODE":"REACT_CODE",content:we.content},L)}catch(e){console.error("Error sending message to iframe:",e)}}),100),fe()}},{children:(null==Z?void 0:Z["iframe-artifact-fallback"])||"Iframe is not supported, please view this artifact in a browser that supports it."})):null})):o(x,Object.assign({PreTag:"div",language:"text/markdown"===we.type?"markdown":"text/html"===we.type||"image/svg+xml"===we.type?"xml":"application/vnd.pxe.react"===we.type?"typescript":we.programmingLanguage,showLineNumbers:!0,customStyle:{margin:0,flex:1},style:Object.assign({'code[class*="language-"]':Object.assign(Object.assign({color:null==be?void 0:be.secondaryText},ke&&{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==be?void 0:be.secondaryText},ke&&{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==be?void 0:be.secondary}),':not(pre) > code[class*="language-"]':{background:null==be?void 0:be.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==be?void 0:be.secondaryText,fontWeight:"bold"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}},!ke&&{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==be?void 0:be.secondaryText,fontWeight:"bold"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}})},{children:we.content})),o(b,{})]}))})),"inline"===I.type&&!je&&t("div",Object.assign({className:"flex items-center gap-4 p-4 pt-6"},{children:[o(O,Object.assign({id:`artifact-copy-${we.id}-${we.version}`,tip:(null==Z?void 0:Z.copy)||"Copy",style:{padding:"0.25rem 0.5rem",backgroundColor:be.secondary,color:be.secondaryText,fontSize:"12px"},align:"bottom"},{children:o(F,{color:be.secondaryText,text:we.content,className:"opacity-100",iconClassName:"w-5 h-5"})})),o(O,Object.assign({id:`artifact-save-${we.id}-${we.version}`,tip:(null==Z?void 0:Z.save)||"Save",style:{padding:"0.25rem 0.5rem",backgroundColor:be.secondary,color:be.secondaryText,fontSize:"12px"},align:"bottom"},{children:o(D,Object.assign({data:we,colors:be,onDownload:Oe,onSaveAsPDF:Fe,onSaveAsDOCX:Se,onSaveToKnowledgeBase:Ae,isSaveToKnowledgeBaseEnabled:ee&&Boolean(Te),isSavingToKnowledgeBase:le,isSavedToKnowledgeBase:se},{children:o("button",Object.assign({style:{color:be.secondaryText}},{children:o(T,{className:"w-5 h-5 shrink-0"})}))}))}))]}))]})):null};export{I as default};
|
|
1
|
+
import{__awaiter as e}from"../../../../../_virtual/_tslib.js";import{jsx as t,jsxs as o}from"react/jsx-runtime";import{useState as n,useRef as i,useMemo as a,useEffect as r}from"react";import{useArtifactContext as l}from"../hooks/useArtifactContext.js";import{usePickaxeContext as c}from"../../../../../hooks/pickaxe/usePickaxeContext.js";import{useAuthContext as s}from"../../Auth/hooks/useAuthContext.js";import{useScroll as p}from"../../Scroll/hooks/useScroll.js";import{useArtifact as d}from"../hooks/useArtifact.js";import{useSubmitDocument as m}from"../../../../../hooks/pickaxe/useSubmitDocument.js";import{useReactToPrint as u}from"react-to-print";import{PickaxeMarkdown as y}from"../../../common/PickaxeMarkdown/index.js";import{PickaxeMarkdownRenderer as v}from"../../../common/PickaxeMarkdown/Renderer.js";import{Prism as x}from"react-syntax-highlighter";import{convertMarkdownToDocx as f,downloadDocx as g}from"../../../../../common/docx/index.js";import h from"file-saver";import{ScrollProvider as b}from"../../Scroll/Provider.js";import w from"../../Scroll/ScrollLockView.js";import C from"../../../../Icons/expand.svg.js";import k from"../../../../Icons/shrink.svg.js";import j from"../../../../Icons/collapse-new.svg.js";import T from"../../../../Icons/copy-new.svg.js";import S from"../../../../Icons/download-new.svg.js";import F from"../../../common/PickaxeCopyButton.js";import O from"../../../../Core/ScrollArea.js";import A from"../../../../Core/TipContainer.js";import D from"../MermaidRenderer.js";import N from"./SaveMenu.js";import B from"./ViewOptions.js";import E from"csv-to-markdown-table";import $ from"copy-to-clipboard";import z from"../../../../../common/cn.js";import L from"../../../../../common/error.js";const M="development"===process.env.NODE_ENV?"http://localhost:3007":"https://user-content.pickaxe.co",I=e=>{var t;const o=null==e?void 0:e.trim().toLowerCase();if(!o)return".txt";return null!==(t={javascript:".js",js:".js",typescript:".ts",ts:".ts",python:".py",py:".py",json:".json",html:".html",css:".css",markdown:".md",md:".md",sql:".sql",shell:".sh",bash:".sh",sh:".sh",yaml:".yaml",yml:".yml",xml:".xml"}[o])&&void 0!==t?t:`.${o}`},P=b=>{var P,W,R,H;const{artifacts:K,currentPopupType:_,currentArtifact:q,setCurrentArtifact:V}=l(),{onLoadArtifact:X}=d(),{contextId:U,pickaxeId:G,pickaxe:J,styles:Q,colors:Y,translations:Z}=c(),{isLoggedIn:ee,token:te}=s(),oe=m(),[ne,ie]=n("code"),[ae,re]=n(!1),[le,ce]=n(!1),[se,pe]=n(!1),de=i(),me=i(null),ue=i(null),ye=u({contentRef:de}),{scrollContainerRef:ve,scrollStartSession:xe,scrollToBottom:fe,scrollEndSession:ge}=p({auto:"code"===ne}),he=null!==(W=null===(P=b.styling)||void 0===P?void 0:P.styles)&&void 0!==W?W:Q,be=null!==(H=null===(R=b.styling)||void 0===R?void 0:R.colors)&&void 0!==H?H:Y,we=a((()=>{var e,t,o,n,i;if(!b.artifact&&!q)return null;const a=null!==(t=null===(e=b.artifact)||void 0===e?void 0:e.id)&&void 0!==t?t:null==q?void 0:q.id,r=null!==(n=null===(o=b.artifact)||void 0===o?void 0:o.version)&&void 0!==n?n:null==q?void 0:q.version;return null!==(i=K.find((e=>e.id===a&&e.version===r)))&&void 0!==i?i:null}),[q,K,b.artifact]),Ce=a((()=>we?"text/csv"===we.type?E(we.content,",",!0):"text/tab-separated-values"===we.type?E(we.content,"\t",!0):null:null),[we]),ke=a((()=>(be.secondaryText||"").toLowerCase().startsWith("#ffffff")),[null==be?void 0:be.secondaryText]),je=a((()=>{const e=b.artifact&&(null==q?void 0:q.id)===b.artifact.id&&(null==q?void 0:q.version)===b.artifact.version;return"inline"===b.type&&("inline-form"===_?!!q:e)}),[q,_,b.type,b.artifact]),Te=a((()=>we?(e=>{switch(e.type){case"text/markdown":return{extension:".md",mimeType:"text/markdown",content:e.content};case"text/html":return{extension:".html",mimeType:"text/html",content:e.content};case"text/csv":return{extension:".csv",mimeType:"text/csv",content:e.content};case"text/tab-separated-values":return{extension:".tsv",mimeType:"text/tab-separated-values",content:e.content};case"image/svg+xml":return{extension:".svg",mimeType:"image/svg+xml",content:e.content};case"application/pdf":return e.content.trimStart().startsWith("%PDF")?{extension:".pdf",mimeType:"application/pdf",content:e.content}:{extension:".html",mimeType:"text/html",content:e.content};case"application/vnd.pxe.code":return{extension:I(e.programmingLanguage),mimeType:"text/plain",content:e.content};case"application/vnd.pxe.mermaid":return{extension:".mmd",mimeType:"text/plain",content:e.content};case"application/vnd.pxe.react":return{extension:".tsx",mimeType:"text/typescript",content:e.content};default:return null}})(we):null),[we]);r((()=>{e(void 0,void 0,void 0,(function*(){"inline"===b.type&&b.artifact&&(K.some((e=>b.artifact&&e.id===b.artifact.id&&e.version===b.artifact.version))||X({id:b.artifact.id,version:b.artifact.version}))}))}),[K,b.type,b.artifact]),r((()=>{if("application/vnd.pxe.code"===(null==we?void 0:we.type)&&ie("code"),"finished"!==(null==we?void 0:we.status))return ie("code"),xe(),void fe();ge(),"application/vnd.pxe.code"!==we.type&&ie("render")}),[null==we?void 0:we.status,null==we?void 0:we.type]),r((()=>{var e;!ue.current||"text/html"!==(null==we?void 0:we.type)&&"application/pdf"!==(null==we?void 0:we.type)&&"application/vnd.pxe.react"!==(null==we?void 0:we.type)||null===(e=ue.current.contentWindow)||void 0===e||e.postMessage({type:"application/vnd.pxe.react"!==we.type?"HTML_CODE":"REACT_CODE",content:we.content},M)}),[null==we?void 0:we.content,null==we?void 0:we.type]);const Se=()=>e(void 0,void 0,void 0,(function*(){if(!we)return;if("text/html"===we.type||"application/pdf"===we.type){const e=we.content,t=window.open("","_blank");return void(t&&(t.document.open(),t.document.write(e),t.document.close(),t.focus(),t.print()))}const e=ne;"code"===e&&(ie("render"),yield new Promise((e=>setTimeout(e,50)))),ye(),"code"===e&&ie(e)})),Fe=()=>e(void 0,void 0,void 0,(function*(){if(!we)return;const e=yield f(we.content);g(e,`${we.title}.docx`)})),Oe=t=>e(void 0,void 0,void 0,(function*(){var e;if(!we)return;let o={mimeType:"text/plain",extension:".txt"};switch(t){case"text/markdown":o={mimeType:"text/markdown",extension:".md"};break;case"text/html":o={mimeType:"text/html",extension:".html"};break;case"text/csv":o={mimeType:"text/csv",extension:".csv"};break;case"text/tab-separated-values":o={mimeType:"text/tab-separated-values",extension:".tsv"};break;case"image/svg+xml":case"application/vnd.pxe.mermaid":o={mimeType:"image/svg+xml",extension:".svg"};break;case"application/pdf":o={mimeType:"application/pdf",extension:".pdf"};break;case"application/vnd.pxe.code":o={mimeType:`application/${we.programmingLanguage||"text"};charset=utf-8`,extension:`.${we.programmingLanguage||"txt"}`};break;case"application/vnd.pxe.react":o={mimeType:"text/typescript",extension:".tsx"};break;default:o={mimeType:"text/plain",extension:".txt"}}let n=null;if("application/vnd.pxe.mermaid"===we.type){const t=ne;"code"===t&&(ie("render"),yield new Promise((e=>setTimeout(e,50))));const o=null===(e=me.current)||void 0===e?void 0:e.querySelector("svg");o&&(n=(new XMLSerializer).serializeToString(o)),"code"===t&&ie(t)}const i=new Blob([null!=n?n:we.content],{type:o.mimeType});h(i,`${we.title}${o.extension}`)})),Ae=()=>e(void 0,void 0,void 0,(function*(){if(we&&Te&&te){ce(!0),pe(!1);try{const t=`${e=we.title,e.trim().replace(/[\\/:*?"<>|]/g,"-").replace(/\s+/g," ")||"artifact"}${Te.extension}`,o=new File([Te.content],t,{type:Te.mimeType});yield oe.document(Object.assign(Object.assign({contextId:U,pickaxeId:G,file:o},(null==J?void 0:J.workspaceid)&&{workspaceId:J.workspaceid}),{studioSessionToken:te,isUserDocument:!0})),pe(!0),yield new Promise((e=>setTimeout(e,1500)))}catch(e){alert(L(e))}finally{ce(!1),pe(!1)}var e}})),De=()=>{"inline"!==b.type||!b.artifact||je?V(null):V({id:b.artifact.id,version:b.artifact.version})},Ne=je||!_.startsWith("inline");return we?o("div",Object.assign({className:z("pxe-artifact-renderer flex flex-col","inline"===b.type&&!je&&"min-h-[320px] mb-6",b.className),style:Object.assign(Object.assign({backgroundColor:be.secondary,color:be.secondaryText},"auto"!==_&&{borderRadius:he.cornerRadius}),b.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:[Ne&&t(B,{type:we.type,view:ne,colors:be,onChange:ie}),t("p",Object.assign({className:"w-[220px] max-w-full truncate text-[18px] font-semilight leading-tight",title:we.title},{children:we.title}))]})),"inline"===b.type&&!Ne&&t("div",Object.assign({className:"shrink-0"},{children:t("button",Object.assign({type:"button",style:{color:be.secondaryText},onClick:De,title:(null==Z?void 0:Z.expand)||"Expand","aria-label":(null==Z?void 0:Z.expand)||"Expand artifact"},{children:t(je?k:C,{className:"w-6 h-6 shrink-0"})}))}))]})),Ne&&t("div",Object.assign({className:"flex items-center justify-between border-y px-4 py-2.5",style:{borderColor:be.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:be.secondaryText},onClick:De,title:"inline"===b.type?(null==Z?void 0:Z.collapse)||"Collapse":(null==Z?void 0:Z.close)||"Close","aria-label":"inline"===b.type?(null==Z?void 0:Z.collapse)||"Collapse artifact":(null==Z?void 0:Z.close)||"Close artifact"},{children:t(j,{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:be.secondaryText},disabled:ae,onClick:()=>e(void 0,void 0,void 0,(function*(){if(we)try{$(we.content),re(!0),yield new Promise((e=>setTimeout(e,1500)))}finally{re(!1)}})),title:(null==Z?void 0:Z.copy)||"Copy","aria-label":(null==Z?void 0:Z.copy)||"Copy artifact content"},{children:t(T,{className:"h-[18px] w-[18px] shrink-0"})})),t(N,Object.assign({data:we,colors:be,onDownload:Oe,onSaveAsPDF:Se,onSaveAsDOCX:Fe,onSaveToKnowledgeBase:Ae,isSaveToKnowledgeBaseEnabled:ee&&Boolean(Te),isSavingToKnowledgeBase:le,isSavedToKnowledgeBase:se,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:be.secondaryText},title:(null==Z?void 0:Z.save)||"Download","aria-label":(null==Z?void 0:Z.save)||"Download artifact content"},{children:t(S,{className:"h-6 w-6 shrink-0"})}))}))]}))})),t("div",Object.assign({className:"flex flex-col flex-grow @container/pickaxe-artifact"},{children:o(O,Object.assign({ref:ve,innerClassName:"flex-grow w-full"},{children:["render"===ne&&"application/vnd.pxe.code"!==we.type?t("div",Object.assign({ref:de,className:z("p-4 pb-6 flex-grow flex flex-col","text/html"===we.type&&"p-0","text/csv"===we.type&&"p-0","application/pdf"===we.type&&"p-0","application/vnd.pxe.react"===we.type&&"p-0")},{children:"text/markdown"===we.type||"text/csv"===we.type||"text/tab-separated-values"===we.type||"image/svg+xml"===we.type?t(y,Object.assign({theme:he.theme,colors:be},{children:t(v,{value:null!=Ce?Ce:we.content,className:z("px-6 @[767px]/pickaxe-artifact:px-11 mx-auto w-full",("text/csv"===we.type||"text/tab-separated-values"===we.type)&&"px-4 @[767px]/pickaxe-artifact:px-4 mx-0"),style:{flex:1}})})):"application/vnd.pxe.mermaid"===we.type?t(D,{ref:me,id:`mermaid-${we.id}-${we.version}`,data:we.content}):"text/html"===we.type||"application/pdf"===we.type||"application/vnd.pxe.react"===we.type?t("iframe",Object.assign({ref:ue,title:we.title,src:`${M}/${"application/vnd.pxe.react"!==we.type?"html":"react"}?theme=${ke?"dark":"light"}&bg=${be.secondary}&accent=${be.accent}`,style:{width:"100%",flex:1,border:"none",backgroundColor:null==be?void 0:be.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 t=e.target;setTimeout((()=>{var e;try{null===(e=t.contentWindow)||void 0===e||e.postMessage({type:"application/vnd.pxe.react"!==we.type?"HTML_CODE":"REACT_CODE",content:we.content},M)}catch(e){console.error("Error sending message to iframe:",e)}}),100),fe()}},{children:(null==Z?void 0:Z["iframe-artifact-fallback"])||"Iframe is not supported, please view this artifact in a browser that supports it."})):null})):t(x,Object.assign({PreTag:"div",language:"text/markdown"===we.type?"markdown":"text/html"===we.type||"image/svg+xml"===we.type?"xml":"application/vnd.pxe.react"===we.type?"typescript":we.programmingLanguage,showLineNumbers:!0,customStyle:{margin:0,flex:1},style:Object.assign({'code[class*="language-"]':Object.assign(Object.assign({color:null==be?void 0:be.secondaryText},ke&&{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==be?void 0:be.secondaryText},ke&&{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==be?void 0:be.secondary}),':not(pre) > code[class*="language-"]':{background:null==be?void 0:be.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==be?void 0:be.secondaryText,fontWeight:"bold"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}},!ke&&{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==be?void 0:be.secondaryText,fontWeight:"bold"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}})},{children:we.content})),t(w,{})]}))})),"inline"===b.type&&!je&&o("div",Object.assign({className:"flex items-center gap-4 p-4 pt-6"},{children:[t(A,Object.assign({id:`artifact-copy-${we.id}-${we.version}`,tip:(null==Z?void 0:Z.copy)||"Copy",style:{padding:"0.25rem 0.5rem",backgroundColor:be.secondary,color:be.secondaryText,fontSize:"12px"},align:"bottom"},{children:t(F,{color:be.secondaryText,text:we.content,className:"opacity-100",iconClassName:"w-5 h-5"})})),t(A,Object.assign({id:`artifact-save-${we.id}-${we.version}`,tip:(null==Z?void 0:Z.save)||"Save",style:{padding:"0.25rem 0.5rem",backgroundColor:be.secondary,color:be.secondaryText,fontSize:"12px"},align:"bottom"},{children:t(N,Object.assign({data:we,colors:be,onDownload:Oe,onSaveAsPDF:Se,onSaveAsDOCX:Fe,onSaveToKnowledgeBase:Ae,isSaveToKnowledgeBaseEnabled:ee&&Boolean(Te),isSavingToKnowledgeBase:le,isSavedToKnowledgeBase:se},{children:t("button",Object.assign({style:{color:be.secondaryText}},{children:t(S,{className:"w-5 h-5 shrink-0"})}))}))}))]}))]})):null},W=e=>t(b,{children:t(P,Object.assign({},e))});export{W as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e}from"react/jsx-runtime";import{useEffect as
|
|
1
|
+
import{jsx as e,Fragment as o}from"react/jsx-runtime";import{useEffect as i}from"react";import{useArtifactContext as n}from"./hooks/useArtifactContext.js";import{usePickaxeContext as t}from"../../../../hooks/pickaxe/usePickaxeContext.js";import{useMediaQuery as r}from"../../../../hooks/core/useMediaQuery.js";import l from"../../../Core/Modal/index.js";import s from"../../../Core/Modal/Body.js";import a from"./Renderer/index.js";const c=({forcedPopupType:c,panel:p,styling:m})=>{const{popupType:f,currentPopupType:u,currentArtifact:d,setCurrentPopupType:h,setCurrentArtifact:x}=n(),{sessionId:y,pickaxe:g,forceMobile:j}=t(),[C]=r("(max-width: 899px)");i((()=>{const e=!(null==g?void 0:g.chatflag)&&!y||!y;let o=f;"auto"===o&&(e?o="inline-form":(j||C)&&(o="inline")),"inline"===f&&e&&(o="inline-form"),c&&(o=c),h(o)}),[f,j,C,null==g?void 0:g.chatflag,y,c]);const k=e(a,{type:"detached",className:"h-full"});return d&&"inline"!==u?e(o,{children:"auto"===u&&p?p(k):"modal"===u||"inline-form"===u?e(l,Object.assign({isOpen:!0,onChange:e=>{e||x(null)}},{children:e(s,Object.assign({className:"max-w-[90dvw] flex flex-col w-full",style:{minHeight:"90dvh"}},{children:e(a,Object.assign({type:"inline-form"===u?"inline":"detached",className:"flex-grow"},m&&{styling:m}))}))})):null}):null};export{c as PickaxeArtifact};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";import{createContext as e,useState as l,useRef as o,useEffect as s}from"react";const c=e({}),t=({children:e})=>{const[t,i]=l(!0),[n,a]=l(!0),[m,S]=l(!1),[u,f]=l(!0),d=o(),g=o(),I=o(!1),R=o(!1),h=o("auto"),p=o(null);return s((()=>{const r=p;return()=>{r.current&&clearTimeout(r.current)}}),[]),r(c.Provider,Object.assign({value:{scrollContainerRef:d,scrollTargetRef:g,hasScrolledRef:I,isProgrammaticScrollRef:R,programmaticScrollBehaviorRef:h,scrollEndTimerRef:p,isLocked:t,isScrollSession:n,isScrolling:m,isScrollIncreasing:u,setIsLocked:i,setIsScrollSession:a,setIsScrolling:S,setIsScrollIncreasing:f}},{children:e}))};export{c as ScrollContext,t as ScrollProvider,t as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useRef as e,useCallback as r,useEffect as t}from"react";import{useScrollContext as o}from"./useScrollContext.js";const n=({auto:n=!1,debug:l,smooth:c=!0})=>{const{scrollContainerRef:s,scrollTargetRef:
|
|
1
|
+
import{useRef as e,useCallback as r,useEffect as t}from"react";import{useScrollContext as o}from"./useScrollContext.js";const n=({auto:n=!1,debug:l,smooth:c=!0,listen:i=!0}={})=>{const{scrollContainerRef:s,scrollTargetRef:u,hasScrolledRef:a,isProgrammaticScrollRef:d,programmaticScrollBehaviorRef:h,scrollEndTimerRef:v,isLocked:m,isScrollIncreasing:g,setIsLocked:f,setIsScrollSession:b,setIsScrolling:w,setIsScrollIncreasing:T}=o(),S=e(null),p=e(0),R=r((()=>{v.current&&(clearTimeout(v.current),v.current=null),d.current=!1,w(!1);const e=s.current;if(!e)return;const r=e.scrollHeight-e.scrollTop-e.clientHeight<=32;a.current=!r,f(r)}),[a,d,s,v,f,w]),E=r((()=>{null!==S.current&&(cancelAnimationFrame(S.current),S.current=null)}),[]),H=r((e=>{v.current&&clearTimeout(v.current),h.current=e,v.current=setTimeout(R,"smooth"===e?400:100)}),[h,v,R]),L=r(((e={})=>{var r;if(!e.force&&a.current)return;const t=null!==(r=e.behavior)&&void 0!==r?r:c?"smooth":"auto",o=s.current,n=u.current;if(o||n){if(d.current=!0,w(!0),e.force&&(a.current=!1,f(!0)),o){const e=Math.max(0,o.scrollHeight-o.clientHeight);o.scrollTo({top:e,behavior:t})}else if(n){const e=n.getBoundingClientRect().bottom+window.scrollY,r=Math.max(0,e-window.innerHeight);window.scrollTo({top:r,behavior:t})}l&&console.log("[useScroll] scrolled to the active bottom"),H(t)}else l&&console.log("[useScroll] no scroll element detected")}),[l,H,a,d,s,u,w,f,c]),C=r(((e={})=>{E(),S.current=requestAnimationFrame((()=>{S.current=null,L(e)}))}),[E,L]),x=r(((e={})=>{var r;if(!e.force&&a.current)return;const t=u.current;if(!t)return void(l&&console.log("[useScroll] scroll target not detected"));const o=null!==(r=e.behavior)&&void 0!==r?r:c?"smooth":"auto",n=t.getBoundingClientRect().bottom+window.scrollY,i=Math.max(0,n-500);d.current=!0,w(!0),window.scrollTo({top:i,behavior:o}),l&&console.log("[useScroll] scrolled to the form response"),H(o)}),[l,H,a,d,u,w,c]),B=r(((e={})=>{E(),S.current=requestAnimationFrame((()=>{S.current=null,x(e)}))}),[E,x]),I=r((()=>{a.current=!1,f(!0),b(!0)}),[a,f,b]),M=r((()=>{b(!1)}),[b]),A=r(((e={})=>C(e)),[C]),F=r(((e={})=>B(e)),[B]);return t((()=>{if(!n||!m)return;let e=s.current,r=u.current,t=null,o=[];const l=()=>{var o;if(!t)return;const n=e?Math.max(0,e.scrollHeight-e.clientHeight):null!==(o=null==r?void 0:r.getBoundingClientRect().height)&&void 0!==o?o:0,l=n>p.current;p.current=n,T(l),l&&(e?C({behavior:"auto"}):B({behavior:"auto"}))},c=new ResizeObserver(l);function i(){t&&(o.forEach((e=>c.unobserve(e))),o=[t,...Array.from(t.children)],o.forEach((e=>c.observe(e))))}const a=new MutationObserver((()=>{i(),l()}));let d=null;const h=()=>{var o;e=s.current,r=u.current;const n=null!=e?e:r;return!(!n||n===t)&&(a.disconnect(),c.disconnect(),t=n,p.current=e?Math.max(0,e.scrollHeight-e.clientHeight):null!==(o=null==r?void 0:r.getBoundingClientRect().height)&&void 0!==o?o:0,i(),a.observe(t,{childList:!0,subtree:!0}),e?C({behavior:"auto"}):B({behavior:"auto"}),!0)};return h()||(d=new MutationObserver((()=>{h()&&(null==d||d.disconnect())})),d.observe(document.body,{childList:!0,subtree:!0})),()=>{null==d||d.disconnect(),a.disconnect(),c.disconnect()}}),[n,m,C,B,s,u,T]),t((()=>{m&&(a.current=!1)}),[a,m]),t((()=>{if(!i)return;const e=s.current,r=null!=e?e:window,t=()=>{if(d.current)return void H(h.current);const r=(()=>{if(e)return e.scrollHeight-e.scrollTop-e.clientHeight<=32;const r=u.current;return!r||r.getBoundingClientRect().bottom-window.innerHeight<=32})();a.current=!r,f(r)},o=()=>{d.current&&R()},n=()=>{d.current&&(d.current=!1,w(!1),v.current&&(clearTimeout(v.current),v.current=null),e?e.scrollTo({top:e.scrollTop,behavior:"auto"}):window.scrollTo({top:window.scrollY,behavior:"auto"}))};return r.addEventListener("scroll",t,{passive:!0}),r.addEventListener("scrollend",o),r.addEventListener("wheel",n,{passive:!0}),r.addEventListener("touchmove",n,{passive:!0}),()=>{r.removeEventListener("scroll",t),r.removeEventListener("scrollend",o),r.removeEventListener("wheel",n),r.removeEventListener("touchmove",n)}}),[H,a,d,i,h,s,v,u,f,w,R]),t((()=>()=>{E()}),[E]),{scrollContainerRef:s,scrollTargetRef:u,isScrollIncreasing:g,scrollStartSession:I,scrollEndSession:M,scrollToBottom:A,scrollToTarget:F}};export{n as useScroll};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as s}from"react/jsx-runtime";import{formatUserMessage as t}from"../../../../common/formatUserMessage.js";import{PickaxeMarkdownRenderer as i}from"../../common/PickaxeMarkdown/Renderer.js";import{Fragment as o}from"react";import{usePickaxeContext as a}from"../../../../hooks/pickaxe/usePickaxeContext.js";import{useStyleFontSize as r}from"../../../../hooks/studio/useStyleFontSize.js";import{useResponseContext as n}from"../../../../hooks/pickaxe/useResponseContext.js";import{useArtifact as m}from"../../Addons/Artifact/hooks/useArtifact.js";import{PickaxeMarkdown as l}from"../../common/PickaxeMarkdown/index.js";import c from"../../common/PickaxeIcon.js";import d from"./Document.js";import p from"../../common/PickaxeMessageActions.js";import x from"../../common/PickaxeMessageParts/index.js";import f from"../../../../common/cn.js";import{convertToIso1 as u}from"../../../../common/isoMap.js";import{franc as g}from"franc-min";import h from"../../common/ComposioConnectView.js";import b from"../../common/SmitheryConnectView.js";import{useTextToSpeech as v}from"../../../../hooks/pickaxe/useTextToSpeech.js";import j from"remove-markdown";const k=({index:k,message:y,smitheryData:w,resubmitPrompt:O,isLastMessage:N=!1})=>{var I,C;const{pickaxeId:R,pickaxe:A,styles:P,colors:S,misc:M,responsiveBy:L,disableHtml:H,disableJs:T,disableCss:J,isNewChat:V,isRtl:z}=a(),{isGenerating:B}=n(),{onLoadArtifact:D}=m(),F=r(),U=null!==(I=null==A?void 0:A.chaticon)&&void 0!==I?I:`https://cdn.mail.studio/chaticons/${R}.png`,E=N&&B,G=null==A?void 0:A.enablereadout,{isLoading:$,isSpeaking:q,speak:K,stop:Q}=v(G&&"assistant"===y.role,{provider:null==A?void 0:A.readoutprovider,pickaxeId:R,voiceName:null==A?void 0:A.readoutvoice}),W=()=>{if($||q)return void Q();const e=y.parts.filter((e=>"text"===e.type)).map((e=>e.content)).join(" ");if(!e)return;const s=j(e,{stripListLeaders:!0,listUnicodeChar:"",gfm:!0,useImgAltText:!1}),t=g(s),i=u(t);K(s,i)},X=!y.parts.some((e=>["text","reasoning","data-action-tool-caption","data-visualization"].includes(e.type)));return"assistant"===y.role?e("div",Object.assign({className:f("flex w-full",z?"justify-end":"justify-start")},{children:e("div",Object.assign({className:f("flex flex-col w-full",0===k&&V&&"viewport"===L&&"min-[767px]:max-w-[80%]",0===k&&V&&"container"===L&&"@[767px]/pickaxe-root:max-w-[80%]")},{children:s("div",Object.assign({className:f("flex gap-x-3",z&&"flex-row-reverse")},{children:[M.isChatImage&&"NONE"!==U&&e(c,{src:U,alt:"Assistant",width:24,height:24,className:"my-3 h-6 w-6",textColor:S.text}),s("div",Object.assign({className:f("flex flex-col flex-grow",z?"items-end":"items-start")},{children:[s("div",Object.assign({className:f(F.b2,"chat-message pt-3 w-full",z?"text-right":"text-left")},{children:[e(l,Object.assign({theme:P.theme,colors:S,isStreaming:E},z&&{rtl:!0},H&&{disableHtml:!0},T&&{disableJs:!0},J&&{disableCss:!0},{disableReasoning:null!==(C=null==A?void 0:A.enablereasoningdisplay)&&void 0!==C&&C,onArtifactClick:D},{children:e(x,{parts:y.parts,isStreaming:E})})),N&&w&&O&&("composio"===w.provider?e("div",Object.assign({className:"mt-4 px-1"},{children:e(h,{serverId:w.serverId,toolkitSlug:w.toolkitSlug||"",name:w.name,resubmitPrompt:()=>O()})})):e("div",Object.assign({className:"mt-4 px-1"},{children:e(b,{serverId:w.serverId,smitheryId:w.smitheryId||"",name:w.name||w.smitheryId,resubmitPrompt:()=>O()})})))]})),e("div",Object.assign({className:f("flex flex-col gap-6 my-4",X&&"mt-2")},{children:E?e("div",Object.assign({className:"flex items-center gap-x-2 rounded"},{children:Array.from({length:3}).map(((s,t)=>e("div",{className:f("h-1.5 w-1.5 animate-dot rounded-full",1===t&&"animate-dot-down"),style:{backgroundColor:S.secondaryText}},t)))})):e(p,Object.assign({responseReference:y.responseReference,content:y.parts.filter((e=>e.isVisible&&"text"===e.type)).map((e=>e.content)).join("\n"),index:k},"intromessage"===y.area&&{isHideFeedback:!0,isHideResponseAction:!0},{onReadOut:W,isReadOut:G||!1,isReadOutLoading:$,isReading:q}))}))]}))]}))}))})):"user"===y.role?e("div",Object.assign({className:f("flex w-full",z?"justify-start":"justify-end")},{children:e("div",Object.assign({className:f("flex gap-x-3 max-w-[80%]",z?"pr-9":"pl-9","viewport"===L?z?"min-[767px]:pr-0":"min-[767px]:pl-0":z?"@[767px]/pickaxe-root:pr-0":"@[767px]/pickaxe-root:pl-0")},{children:s("div",Object.assign({className:f(F.b2,"overflow-x-auto overflow-y-hidden px-4 py-3 scrollbar-thin scrollbar-track-white scrollbar-thumb-[#4A4A4B] flex flex-col gap-y-3",z?"text-right":"text-left"),style:{backgroundColor:S.secondary+"80",color:S.secondaryText,borderRadius:P.cornerRadius}},{children:[y.documentIds&&y.documentIds.length>0&&e("div",Object.assign({className:f("flex flex-col gap-y-2",z?"items-start":"items-end")},{children:y.documentIds.map((s=>e(o,{children:e(d,{documentId:s})},s)))})),e(l,Object.assign({theme:P.theme,colors:S},z&&{rtl:!0},{disableHtml:!0,disableJs:!0,disableCss:!0},{children:y.parts.map(((s,o)=>"text"===s.type?e(i,{value:t(s.content)},o):null))}))]}))}))})):e("div",{})};export{k as default};
|
|
1
|
+
import{jsx as e,jsxs as s}from"react/jsx-runtime";import{formatUserMessage as t}from"../../../../common/formatUserMessage.js";import{PickaxeMarkdownRenderer as i}from"../../common/PickaxeMarkdown/Renderer.js";import{Fragment as o}from"react";import{usePickaxeContext as a}from"../../../../hooks/pickaxe/usePickaxeContext.js";import{useStyleFontSize as r}from"../../../../hooks/studio/useStyleFontSize.js";import{useResponseContext as n}from"../../../../hooks/pickaxe/useResponseContext.js";import{useArtifact as m}from"../../Addons/Artifact/hooks/useArtifact.js";import{PickaxeMarkdown as l}from"../../common/PickaxeMarkdown/index.js";import c from"../../common/PickaxeIcon.js";import d from"./Document.js";import p from"../../common/PickaxeMessageActions.js";import x from"../../common/PickaxeMessageParts/index.js";import f from"../../../../common/cn.js";import{convertToIso1 as u}from"../../../../common/isoMap.js";import{franc as g}from"franc-min";import h from"../../common/ComposioConnectView.js";import b from"../../common/SmitheryConnectView.js";import{useTextToSpeech as v}from"../../../../hooks/pickaxe/useTextToSpeech.js";import j from"remove-markdown";const k=({index:k,message:y,smitheryData:w,resubmitPrompt:O,isLastMessage:N=!1})=>{var I,C;const{pickaxeId:R,pickaxe:A,styles:P,colors:S,misc:M,responsiveBy:L,disableHtml:H,disableJs:T,disableCss:J,isNewChat:V,isRtl:z}=a(),{isGenerating:B}=n(),{onLoadArtifact:D}=m(),F=r(),U=null!==(I=null==A?void 0:A.chaticon)&&void 0!==I?I:`https://cdn.mail.studio/chaticons/${R}.png`,E=N&&B,G=null==A?void 0:A.enablereadout,{isLoading:$,isSpeaking:q,speak:K,stop:Q}=v(G&&"assistant"===y.role,{provider:null==A?void 0:A.readoutprovider,pickaxeId:R,voiceName:null==A?void 0:A.readoutvoice}),W=()=>{if($||q)return void Q();const e=y.parts.filter((e=>"text"===e.type)).map((e=>e.content)).join(" ");if(!e)return;const s=j(e,{stripListLeaders:!0,listUnicodeChar:"",gfm:!0,useImgAltText:!1}),t=g(s),i=u(t);K(s,i)},X=!y.parts.some((e=>["text","reasoning","data-action-tool-caption","data-visualization"].includes(e.type)));return"assistant"===y.role?e("div",Object.assign({className:f("flex w-full",z?"justify-end":"justify-start")},{children:e("div",Object.assign({className:f("flex flex-col w-full",0===k&&V&&"viewport"===L&&"min-[767px]:max-w-[80%]",0===k&&V&&"container"===L&&"@[767px]/pickaxe-root:max-w-[80%]")},{children:s("div",Object.assign({className:f("flex gap-x-3",z&&"flex-row-reverse")},{children:[M.isChatImage&&"NONE"!==U&&e(c,{src:U,alt:"Assistant",width:24,height:24,className:"my-3 h-6 w-6",textColor:S.text}),s("div",Object.assign({className:f("flex min-w-0 flex-col flex-grow",z?"items-end":"items-start")},{children:[s("div",Object.assign({className:f(F.b2,"chat-message pt-3 w-full",z?"text-right":"text-left")},{children:[e(l,Object.assign({theme:P.theme,colors:S,isStreaming:E},z&&{rtl:!0},H&&{disableHtml:!0},T&&{disableJs:!0},J&&{disableCss:!0},{disableReasoning:null!==(C=null==A?void 0:A.enablereasoningdisplay)&&void 0!==C&&C,onArtifactClick:D},{children:e(x,{parts:y.parts,isStreaming:E})})),N&&w&&O&&("composio"===w.provider?e("div",Object.assign({className:"mt-4 px-1"},{children:e(h,{serverId:w.serverId,toolkitSlug:w.toolkitSlug||"",name:w.name,resubmitPrompt:()=>O()})})):e("div",Object.assign({className:"mt-4 px-1"},{children:e(b,{serverId:w.serverId,smitheryId:w.smitheryId||"",name:w.name||w.smitheryId,resubmitPrompt:()=>O()})})))]})),e("div",Object.assign({className:f("flex flex-col gap-6 my-4",X&&"mt-2")},{children:E?e("div",Object.assign({className:"flex items-center gap-x-2 rounded"},{children:Array.from({length:3}).map(((s,t)=>e("div",{className:f("h-1.5 w-1.5 animate-dot rounded-full",1===t&&"animate-dot-down"),style:{backgroundColor:S.secondaryText}},t)))})):e(p,Object.assign({responseReference:y.responseReference,content:y.parts.filter((e=>e.isVisible&&"text"===e.type)).map((e=>e.content)).join("\n"),index:k},"intromessage"===y.area&&{isHideFeedback:!0,isHideResponseAction:!0},{onReadOut:W,isReadOut:G||!1,isReadOutLoading:$,isReading:q}))}))]}))]}))}))})):"user"===y.role?e("div",Object.assign({className:f("flex w-full",z?"justify-start":"justify-end")},{children:e("div",Object.assign({className:f("flex gap-x-3 max-w-[80%]",z?"pr-9":"pl-9","viewport"===L?z?"min-[767px]:pr-0":"min-[767px]:pl-0":z?"@[767px]/pickaxe-root:pr-0":"@[767px]/pickaxe-root:pl-0")},{children:s("div",Object.assign({className:f(F.b2,"overflow-x-auto overflow-y-hidden px-4 py-3 scrollbar-thin scrollbar-track-white scrollbar-thumb-[#4A4A4B] flex flex-col gap-y-3",z?"text-right":"text-left"),style:{backgroundColor:S.secondary+"80",color:S.secondaryText,borderRadius:P.cornerRadius}},{children:[y.documentIds&&y.documentIds.length>0&&e("div",Object.assign({className:f("flex flex-col gap-y-2",z?"items-start":"items-end")},{children:y.documentIds.map((s=>e(o,{children:e(d,{documentId:s})},s)))})),e(l,Object.assign({theme:P.theme,colors:S},z&&{rtl:!0},{disableHtml:!0,disableJs:!0,disableCss:!0},{children:y.parts.map(((s,o)=>"text"===s.type?e(i,{value:t(s.content)},o):null))}))]}))}))})):e("div",{})};export{k as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__awaiter as e}from"../../../_virtual/_tslib.js";import{jsxs as t,jsx as o,Fragment as i}from"react/jsx-runtime";import{canChat as n}from"../../../common/canChat.js";import{useState as s,useRef as r,useEffect as a,useCallback as l}from"react";import{usePickaxeContext as c}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useAuthContext as d}from"../Addons/Auth/hooks/useAuthContext.js";import{useDimensionContext as m}from"../../../hooks/pickaxe/useDimensionContext.js";import{useDocument as u}from"../Addons/Document/hooks/useDocument.js";import{
|
|
1
|
+
import{__awaiter as e}from"../../../_virtual/_tslib.js";import{jsxs as t,jsx as o,Fragment as i}from"react/jsx-runtime";import{canChat as n}from"../../../common/canChat.js";import{useState as s,useRef as r,useEffect as a,useCallback as l}from"react";import{usePickaxeContext as c}from"../../../hooks/pickaxe/usePickaxeContext.js";import{useAuthContext as d}from"../Addons/Auth/hooks/useAuthContext.js";import{useDimensionContext as m}from"../../../hooks/pickaxe/useDimensionContext.js";import{useDocument as u}from"../Addons/Document/hooks/useDocument.js";import{useScroll as p}from"../Addons/Scroll/hooks/useScroll.js";import{useStyleFontSize as f}from"../../../hooks/studio/useStyleFontSize.js";import h from"../../../hooks/core/useScrollToBottomVisibility.js";import v from"./History/index.js";import g from"./Input.js";import b from"../../Icons/attach-vertical.svg.js";import x from"../../../common/cn.js";import{pickaxeApi2 as j}from"../../../common/api/pickaxe.js";import{v4 as k}from"uuid";import{StudioTip as y}from"../../Core/StudioTip.js";import w from"../common/ScrollToBottomButton.js";import I from"../common/PickaxeMCPButton.js";import{useResponseContext as D}from"../../../hooks/pickaxe/useResponseContext.js";import{NavPill as S,EditableNavPill as C,HistoryPill as T}from"../Addons/Navbar/NavPill.js";import N from"../../Icons/history.svg.js";const O=()=>{var O,A;const{deploymentType:P,isNewChat:F,setIsNewChat:B,sessionId:z,setSessionId:E,setLastSessionId:H,pickaxeId:R,sender:G,pickaxe:L,styles:V,isEmbed:_,mcpEnabled:M,translations:U}=c(),{isSent:W,token:q}=d(),{width:J,height:K,setDimension:Q}=m(),{setDocuments:X,onFileUpload:Y}=u(),{scrollContainerRef:Z,scrollToBottom:$}=p({listen:!1}),{isGenerating:ee,messages:te}=D(),oe=f(),[ie,ne]=s(0),[se,re]=s(!1),[ae,le]=s(!1),ce=r(null),de=r(null),me=r(0),[ue,pe]=s(null),[fe,he]=s(!1),ve=(null==U?void 0:U["new-chat"])||"New chat",ge=n(L),be=ge&&"chat-input"===P&&F&&!W,xe=ge&&null!==(A=null===(O=null==L?void 0:L.documentuploadtype)||void 0===O?void 0:O.startsWith("enduserupload"))&&void 0!==A&&A,{hasScrollableContent:je,isNearBottom:ke}=h(Z,{},[be]);a((()=>()=>{X([])}),[]);const ye=l((()=>{if(!R||!G&&!q)return;const t=(o=0)=>e(void 0,void 0,void 0,(function*(){var e;try{const t=yield j.post("/conversation/title",Object.assign({sessionId:z},q?{studioSessionToken:q}:G?{userId:G}:{}));if(t.data&&t.data.success){const e=t.data.title;if(e&&"Conversation Title"!==e)return void Ie(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()}),[R,G,z,q]);a((()=>{ee||F||!z||ye()}),[ee,F,z,ye]),a((()=>{if(!ce.current)return;const e=new ResizeObserver((e=>{for(const t of e){const{width:e,height:o}=t.contentRect;Q(parseInt(e.toFixed(0)),parseInt(o.toFixed(0)))}}));return e.observe(ce.current),()=>{e.disconnect()}}),[Q]);const[we,Ie]=s(ve),De=(null==L?void 0:L.formtitle)||"Pickaxe",Se=(null==L?void 0:L.coverphoto)||void 0,[Ce,Te]=s(!1);a((()=>{const e=!be&&!_&&V.portalTheme&&(te.filter((e=>"user"===e.role)).length>0||se||!F);Te(null!=e&&e)}),[be,_,se,F,te,V.portalTheme]);const Ne=l((()=>{$({force:!0,behavior:"auto"})}),[$]);return t("div",Object.assign({ref:ce,className:"relative flex h-full w-full flex-col items-center overflow-hidden",onDragEnter:e=>{e.preventDefault(),e.stopPropagation(),xe&&(me.current+=1,e.dataTransfer.items&&e.dataTransfer.items.length>0&&le(!0))},onDragLeave:e=>{e.preventDefault(),e.stopPropagation(),xe&&(me.current-=1,0===me.current&&le(!1))},onDragOver:e=>{e.preventDefault(),e.stopPropagation()},onDrop:t=>e(void 0,void 0,void 0,(function*(){if(t.preventDefault(),t.stopPropagation(),le(!1),me.current=0,!xe)return;const e=Array.from(t.dataTransfer.files||[]);e.length>0&&(B(!1),yield Y(e))}))},{children:[ae&&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(b,{className:"h-10 w-10"})})),o("h3",Object.assign({className:x(oe.h3,"mt-6 font-semibold text-c-primary text-black")},{children:(null==U?void 0:U["drop-files-to-upload"])||"Drop files to upload"})),o("p",Object.assign({className:x(oe.b2,"mt-2 opacity-60 text-black")},{children:(null==U?void 0:U["add-anything-to-the-conversation"])||"Add anything to the conversation"}))]})),!_&&M?o("div",Object.assign({className:"pointer-events-none absolute left-1/2 top-4 z-40 flex w-full max-w-[800px] -translate-x-1/2 justify-end px-4"},{children:o("div",Object.assign({className:"pointer-events-auto"},{children:o(I,{})}))})):null,be?o(g,{}):t(i,{children:[Ce&&t("div",Object.assign({className:x("direct-link"===P?"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"===V.portalTheme?"glass-dark ":"")},{children:[o(S,{text:De,icon:Se}),F||we===ve?o(S,{text:we}):o(C,{text:we,sessionId:z,onRename:t=>e(void 0,void 0,void 0,(function*(){if(z)try{yield j.patch("/conversation/title",Object.assign({sessionId:z,name:t},q?{studioSessionToken:q}:G?{userId:G}:{})),Ie(t)}catch(e){console.error("Error renaming chat:",e),alert((null==U?void 0:U["failed-rename-chat"])||"Failed to rename chat.")}})),onDelete:()=>e(void 0,void 0,void 0,(function*(){if(z&&window.confirm((null==U?void 0:U["delete-confirm"])||"Are you sure you want to delete this conversation?"))try{yield j.delete("/conversation",{data:Object.assign({sessionId:z},q?{studioSessionToken:q}:G?{userId:G}:{})}),B(!0),E(ge?k():""),Ie(ve)}catch(e){console.error("Error deleting chat:",e),alert((null==U?void 0:U["failed-delete-chat"])||"Failed to delete chat.")}})),isDarkGlass:"dark"===V.portalTheme}),o(y,Object.assign({content:U["chat-history"]||"Chat History",align:"bottom",containerClassName:"inline-flex shrink-0"},{children:o(T,{icon:o(N,{}),onClick:()=>{E(""),H(z)}})}))]})),o(v,{additionalScrollHeight:ie,isForceHideInfo:K<=545||J<=350||se,isInputFocused:se,onSubmit:t=>e(void 0,void 0,void 0,(function*(){ge&&de.current&&de.current.onSubmit(t)})),smitheryAuthData:ue,resubmitPrompt:()=>{pe(null),he(!0)}}),o(w,{isVisible:je&&!ke,bottom:ie+65,onClick:Ne}),ge&&o(g,{ref:de,onFocus:()=>re(!0),onBlur:()=>re(!1),onInputHeightChange:ne,initSmitheryAuthData:e=>pe(e),resubmitPrompt:fe})]})]}))};export{O as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as r}from"react/jsx-runtime";const e=({children:e})=>r("ol",{children:e}),i=({children:e})=>r("ul",{children:e}),
|
|
1
|
+
import{jsx as r}from"react/jsx-runtime";const e=({children:e,start:i})=>r("ol",Object.assign({start:i},{children:e})),i=({children:e})=>r("ul",{children:e}),t=({children:e})=>r("li",{children:e});export{t as Li,e as Ol,i as Ul};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__rest as e}from"../../../../_virtual/_tslib.js";import{jsx as r,jsxs as n}from"react/jsx-runtime";import{useState as s,useRef as t,useMemo as i,useEffect as o}from"react";import{usePickaxeMarkdownContext as l}from"./hooks/usePickaxeMarkdownContext.js";import{remarkDocumentCssAsCode as a,remarkSmartQuotes as c,rehypeCode as p,rehypeSanitize as m}from"./utils/custom-plugins.js";import d from"react-markdown";import f from"remark-gfm";import h from"remark-math";import u from"rehype-katex";import g from"rehype-raw";import{A as x}from"./Components/A/index.js";import w,{getFilePreviewInfo as b,shouldSuppressRichPreviewForUrl as j,shouldRenderFilePreview as v}from"./Components/A/FilePreview.js";import{P as C}from"./Components/P/index.js";import{Img as k}from"./Components/Img/index.js";import{Iframe as P}from"./Components/Iframe/index.js";import{Code as R}from"./Components/Code/index.js";import{H1 as
|
|
1
|
+
import{__rest as e}from"../../../../_virtual/_tslib.js";import{jsx as r,jsxs as n}from"react/jsx-runtime";import{useState as s,useRef as t,useMemo as i,useEffect as o}from"react";import{usePickaxeMarkdownContext as l}from"./hooks/usePickaxeMarkdownContext.js";import{remarkDocumentCssAsCode as a,remarkSmartQuotes as c,rehypeCode as p,rehypeSanitize as m}from"./utils/custom-plugins.js";import d from"react-markdown";import f from"remark-gfm";import h from"remark-math";import u from"rehype-katex";import g from"rehype-raw";import{A as x}from"./Components/A/index.js";import w,{getFilePreviewInfo as b,shouldSuppressRichPreviewForUrl as j,shouldRenderFilePreview as v}from"./Components/A/FilePreview.js";import{P as C}from"./Components/P/index.js";import{Img as k}from"./Components/Img/index.js";import{Iframe as P}from"./Components/Iframe/index.js";import{Code as R}from"./Components/Code/index.js";import{H1 as y,H2 as $,H3 as O,H4 as S,H5 as U}from"./Components/Headings/index.js";import{Ol as N,Ul as A,Li as E}from"./Components/List/index.js";import{Table as I,Th as L,Tr as M,Td as T}from"./Components/Table/index.js";import{Hr as H,Br as _,Blockquote as B}from"./Components/Others/index.js";import{ActionCaption as J,ActionFinished as W,ActionError as q}from"./Components/Action/index.js";import{Artifact as z,ArtifactError as D}from"./Components/Artifact/index.js";import{Think as F}from"./Components/Others/Think.js";import G from"../../../../common/cn.js";const K=({className:K,style:Q,children:V,value:X,maxLines:Y,maxChars:Z,multiLineBreaks:ee,onExpandClick:re,filePreviewSeenRef:ne,suppressedRichPreviewUrls:se})=>{const{colors:te,rtl:ie,disableHtml:oe,disableJs:le,disableCss:ae}=l(),[ce,pe]=s({width:0,height:0}),[me,de]=s(null),fe=t(null),he=i((()=>{if(!X)return"";if(oe)return X;let e=X.trim();return e=e.replace(/<!--[\s\S]*?-->/g,""),e=e.replace(/\u200B/g,""),e=e.replace(/\\\((.*?)\\\)/g,"$$$ $1 $$$"),e=e.replace(/\\\[(.*?)\\\]/g,"$$$ $1 $$$"),e=e.replace(/<\/think>/g,"\n</think>"),ee&&(e=e.replace(/```[\s\S]*?```|(\n(?=\n))/g,((e,r)=>r?"\n\n<br/>\n":e))),e||""}),[X,ee,oe]);o((()=>{if(Z)return void de(he.length>Z?he.slice(0,Z)+'<span class="pxe-expand-btn">...</span>':null);if(!Y)return void de(null);if(!fe.current||!he||me)return;const e=fe.current,r=parseInt(window.getComputedStyle(e).lineHeight,10),n=Y*r;if(!(ce.height>n))return;const s=Math.floor(ce.width/8),t=Math.floor(s*Y);de(he.slice(0,t)+'<span class="pxe-expand-btn">...</span>')}),[he,Y,Z,ce,me]);const ue=t(new Set);ne||(ue.current=new Set);const ge=null!=ne?ne:ue,xe=t({colors:te,onExpandClick:re,filePreviewSeenRef:ge,suppressedRichPreviewUrls:se});xe.current={colors:te,onExpandClick:re,filePreviewSeenRef:ge,suppressedRichPreviewUrls:se};const we=i((()=>({h1:y,h2:$,h3:O,h4:S,h5:U,p:e=>r(C,Object.assign({},e,{suppressedRichPreviewUrls:xe.current.suppressedRichPreviewUrls})),a:e=>r(x,Object.assign({},e,{filePreviewSeenRef:xe.current.filePreviewSeenRef,suppressedRichPreviewUrls:xe.current.suppressedRichPreviewUrls})),img:e=>{const{colors:n,filePreviewSeenRef:s,suppressedRichPreviewUrls:t}=xe.current,i="string"==typeof e.src?e.src:"",o=b(i);return o&&!j(o.url,t)?v(o,s)?r(w,{fileInfo:o,displayName:"string"==typeof e.alt?e.alt:void 0}):r("a",Object.assign({href:o.url,target:"_blank",rel:"noopener noreferrer",style:{color:n.accent}},{children:e.alt||o.fileName})):r(k,Object.assign({},e))},iframe:P,code:R,ol:N,ul:A,li:E,table:I,th:L,tr:M,td:T,hr:H,br:_,blockquote:B,span:n=>{var{children:s}=n,t=e(n,["children"]);const{colors:i,onExpandClick:o}=xe.current;return"pxe-expand-btn"===t.className?r("span",Object.assign({},t,{style:Object.assign({display:"inline",fontWeight:500,color:i.accent,marginLeft:".25rem",userSelect:"none"},o&&{cursor:"pointer"})},o&&{onClick:o},{children:s})):r("span",Object.assign({},t,{children:s}))},"action-caption":J,"action-finished":W,"action-error":q,artifact:z,"artifact-error":D,think:F})),[]);o((()=>{if(!fe.current)return;const e=new ResizeObserver((e=>{for(const r of e){const{width:e,height:n}=r.contentRect;pe({width:e,height:n})}}));return e.observe(fe.current),()=>{e.disconnect()}}),[]);const be=me||he;return n("div",Object.assign({className:"pxe-markdown",ref:fe,style:Object.assign({position:"relative",overflowWrap:"anywhere",display:"grid",gridTemplateColumns:"repeat(1, minmax(0, 1fr))",gap:".625rem",width:"100%"},Q)},ie&&{dir:"rtl"},{children:[r(d,Object.assign({className:G("pxe-prose",K),components:we,remarkPlugins:[f,[h,{singleDollarTextMath:!1}],[a,{disableCss:ae}],c],rehypePlugins:[p,u,...oe?[]:[g],[m,{disableJs:le,disableCss:ae}]]},{children:be})),V]}))};export{K as PickaxeMarkdownRenderer};
|
package/dist/esm/prose.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.pxe-prose p:not(.pxe-artifact-create-header p){font-weight:350}.pxe-prose p:not(:only-child):not(.pxe-artifact-create-header p){margin-bottom:.75rem}.pxe-prose a{font-weight:600;text-decoration:underline;text-underline-offset:.2rem}.pxe-prose iframe:not(.pxe-artifact-renderer iframe){margin-bottom:1.5rem}.pxe-prose blockquote{margin-bottom:2.5rem;padding-bottom:.25rem;padding-left:1rem;padding-top:.25rem}.pxe-prose hr{margin-bottom:1.5rem}.pxe-prose .pxe-markdown-image,.pxe-prose .pxe-markdown-video{margin-bottom:1.5rem;margin-top:1.5rem}.pxe-prose .pxe-markdown-video{display:flex;justify-content:center;width:100%}.pxe-prose .pxe-markdown-code{margin-bottom:1.5rem}.pxe-prose ol{list-style-type:decimal}.pxe-prose ol,.pxe-prose ul{list-style-position:inside;margin-bottom:1.5rem;padding-left:1rem}.pxe-prose ul{list-style-type:disc}.pxe-prose li{margin:10px 10px 14px}.pxe-prose li>p{display:inline}.pxe-prose .pxe-markdown-table{overflow:auto;position:relative}.pxe-prose .pxe-markdown-table:not(:only-child){margin-bottom:2.5rem}.pxe-prose table{font-size:.875rem;line-height:1.24rem;table-layout:fixed}.pxe-prose th{font-weight:600;text-align:left}.pxe-prose td,.pxe-prose th{padding:.75em 1em}.pxe-prose h1{font-size:2.25rem;line-height:2.5rem;margin-bottom:1.5rem}.pxe-prose h2{font-size:1.875rem;line-height:2.25rem;margin-bottom:1.5rem}.pxe-prose h3{font-size:1.5rem;line-height:2rem;margin-bottom:1.5rem}.pxe-prose h4{font-size:1.25rem}.pxe-prose h4,.pxe-prose h5{line-height:1.75rem;margin-bottom:1rem}.pxe-prose h5{font-size:1.125rem}.pxe-prose h2:not(:first-child){margin-top:2.5rem}.pxe-prose h3:not(:first-child),.pxe-prose h4:not(:first-child)
|
|
1
|
+
.pxe-prose p:not(.pxe-artifact-create-header p){font-weight:350}.pxe-prose p:not(:only-child):not(.pxe-artifact-create-header p){margin-bottom:.75rem}.pxe-prose a{font-weight:600;text-decoration:underline;text-underline-offset:.2rem}.pxe-prose iframe:not(.pxe-artifact-renderer iframe){margin-bottom:1.5rem}.pxe-prose blockquote{margin-bottom:2.5rem;padding-bottom:.25rem;padding-left:1rem;padding-top:.25rem}.pxe-prose hr{margin-bottom:1.5rem}.pxe-prose .pxe-markdown-image,.pxe-prose .pxe-markdown-video{margin-bottom:1.5rem;margin-top:1.5rem}.pxe-prose .pxe-markdown-video{display:flex;justify-content:center;width:100%}.pxe-prose .pxe-markdown-code{margin-bottom:1.5rem}.pxe-prose ol{list-style-type:decimal}.pxe-prose ol,.pxe-prose ul{list-style-position:inside;margin-bottom:1.5rem;padding-left:1rem}.pxe-prose ul{list-style-type:disc}.pxe-prose li{margin:10px 10px 14px}.pxe-prose li>p{display:inline}.pxe-prose .pxe-markdown-table{overflow:auto;position:relative}.pxe-prose .pxe-markdown-table:not(:only-child){margin-bottom:2.5rem}.pxe-prose table{font-size:.875rem;line-height:1.24rem;table-layout:fixed}.pxe-prose th{font-weight:600;text-align:left}.pxe-prose td,.pxe-prose th{padding:.75em 1em}.pxe-prose h1{font-size:2.25rem;line-height:2.5rem;margin-bottom:1.5rem}.pxe-prose h2{font-size:1.875rem;line-height:2.25rem;margin-bottom:1.5rem}.pxe-prose h3{font-size:1.5rem;line-height:2rem;margin-bottom:1.5rem}.pxe-prose h4{font-size:1.25rem}.pxe-prose h4,.pxe-prose h5{line-height:1.75rem;margin-bottom:1rem}.pxe-prose h5{font-size:1.125rem}.pxe-prose h2:not(:first-child){margin-top:2.5rem}.pxe-prose h3:not(:first-child),.pxe-prose h4:not(:first-child){margin-top:1rem}.pxe-prose pre{max-width:100%;overflow-x:auto}.pxe-prose>pre:not(:first-child){margin-top:1rem}.pxe-prose .pxe-markdown-code{display:flex;flex-direction:column}.pxe-prose .pxe-markdown-code>div:first-child{background-color:#1d1f21;border-radius:.3em;display:flex;flex-direction:column;max-width:min-content;padding-top:1em;position:relative}.pxe-prose .pxe-markdown-code>div:first-child>div:first-child{display:flex;justify-content:flex-end;padding:0 1em}.pxe-prose .pxe-markdown-code>div:first-child>div:last-child{overflow:auto}.pxe-prose .pxe-action[data-action-id]:not(:nth-child(2)){margin-top:1rem}.pxe-prose .pxe-markdown-code-inline{background-color:#1d1f21;border-radius:.3em;color:#fff;font-size:10pt;padding:.15em .4em}.pxe-link-previews{display:flex;flex-direction:column;gap:2rem}.pxe-prose>p:first-child>.pxe-markdown-image,.pxe-prose>p:first-child>.pxe-markdown-video{margin-top:0}.pxe-prose .pxe-blink{animation:blink 1s ease-in-out infinite}.pxe-prose .pxe-red{color:red}.pxe-prose .pxe-action-error,.pxe-prose .pxe-artifact-error{display:flex;flex-direction:column}.pxe-prose .pxe-animated-token{animation:fadeIn .3s ease-out forwards;display:inline-block;opacity:0}.pxe-prose .pxe-spin{animation:spin 1s linear infinite}@keyframes fadeIn{0%{opacity:0;transform:translateX(5px)}to{opacity:1;transform:translateX(0)}}@keyframes blink{0%{opacity:1}50%{opacity:.5}to{opacity:1}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
|
|
@@ -14,5 +14,5 @@ interface PickaxeArtifactRendererProps {
|
|
|
14
14
|
version: number;
|
|
15
15
|
};
|
|
16
16
|
}
|
|
17
|
-
declare const PickaxeArtifactRenderer: (props: PickaxeArtifactRendererProps) => import("react/jsx-runtime").JSX.Element
|
|
17
|
+
declare const PickaxeArtifactRenderer: (props: PickaxeArtifactRendererProps) => import("react/jsx-runtime").JSX.Element;
|
|
18
18
|
export default PickaxeArtifactRenderer;
|
|
@@ -5,6 +5,9 @@ type ScrollContextType = {
|
|
|
5
5
|
scrollContainerRef: MutableRefObject<HTMLDivElement>;
|
|
6
6
|
scrollTargetRef: MutableRefObject<HTMLDivElement>;
|
|
7
7
|
hasScrolledRef: MutableRefObject<boolean>;
|
|
8
|
+
isProgrammaticScrollRef: MutableRefObject<boolean>;
|
|
9
|
+
programmaticScrollBehaviorRef: MutableRefObject<ScrollBehavior>;
|
|
10
|
+
scrollEndTimerRef: MutableRefObject<ReturnType<typeof setTimeout> | null>;
|
|
8
11
|
isLocked: boolean;
|
|
9
12
|
isScrollSession: boolean;
|
|
10
13
|
isScrolling: boolean;
|
|
@@ -3,12 +3,13 @@ interface UseScrollProps {
|
|
|
3
3
|
auto?: boolean;
|
|
4
4
|
debug?: boolean;
|
|
5
5
|
smooth?: boolean;
|
|
6
|
+
listen?: boolean;
|
|
6
7
|
}
|
|
7
8
|
interface ScrollOptions {
|
|
8
9
|
behavior?: ScrollBehavior;
|
|
9
10
|
force?: boolean;
|
|
10
11
|
}
|
|
11
|
-
export declare const useScroll: ({ auto, debug, smooth, }
|
|
12
|
+
export declare const useScroll: ({ auto, debug, smooth, listen, }?: UseScrollProps) => {
|
|
12
13
|
scrollContainerRef: import("react").MutableRefObject<HTMLDivElement>;
|
|
13
14
|
scrollTargetRef: import("react").MutableRefObject<HTMLDivElement>;
|
|
14
15
|
isScrollIncreasing: boolean;
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
+
/// <reference types="node" />
|
|
2
3
|
export declare const useScrollContext: () => {
|
|
3
4
|
scrollContainerRef: import("react").MutableRefObject<HTMLDivElement>;
|
|
4
5
|
scrollTargetRef: import("react").MutableRefObject<HTMLDivElement>;
|
|
5
6
|
hasScrolledRef: import("react").MutableRefObject<boolean>;
|
|
7
|
+
isProgrammaticScrollRef: import("react").MutableRefObject<boolean>;
|
|
8
|
+
programmaticScrollBehaviorRef: import("react").MutableRefObject<ScrollBehavior>;
|
|
9
|
+
scrollEndTimerRef: import("react").MutableRefObject<NodeJS.Timeout | null>;
|
|
6
10
|
isLocked: boolean;
|
|
7
11
|
isScrollSession: boolean;
|
|
8
12
|
isScrolling: boolean;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pickaxeproject/react",
|
|
3
|
-
"version": "6.24.
|
|
3
|
+
"version": "6.24.7",
|
|
4
4
|
"description": "Client utility library for Pickaxe",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -112,6 +112,7 @@
|
|
|
112
112
|
"framer-motion": "^11.17.0",
|
|
113
113
|
"husky": "^8.0.3",
|
|
114
114
|
"isomorphic-dompurify": "^2.20.0",
|
|
115
|
+
"jsdom": "26.0.0",
|
|
115
116
|
"katex": "^0.16.19",
|
|
116
117
|
"lottie-react": "^2.4.0",
|
|
117
118
|
"mermaid": "^11.7.0",
|