@pickaxeproject/react 3.3.2 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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"),r=require("../hooks/useArtifactContext.js"),n=require("../../../../../hooks/pickaxe/usePickaxeContext.js"),a=require("../../Scroll/hooks/useScroll.js"),l=require("../hooks/useArtifact.js"),i=require("react-to-pdf"),s=require("../../../common/PickaxeMarkdown/index.js"),c=require("../../../common/PickaxeMarkdown/Renderer.js"),d=require("react-syntax-highlighter"),p=require("../../Scroll/ScrollLockView.js"),u=require("../../../../Icons/x.svg.js"),m=require("../../../../Icons/save.svg.js"),x=require("../../../../Icons/expand.svg.js"),f=require("../../../../Icons/shrink.svg.js"),g=require("../../../common/PickaxeCopyButton.js"),y=require("../../../../Core/ScrollArea.js"),v=require("../../../../Core/TipContainer.js"),h=require("../MermaidRenderer.js"),b=require("./SaveMenu.js"),j=require("./ViewOptions.js"),C=require("csv-to-markdown-table"),w=require("../../../../../common/cn.js");function k(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var F=k(C);const O="development"===process.env.NODE_ENV?"http://localhost:3007":"https://user-content.pickaxe.co";exports.default=C=>{var k,A,S,T;const{artifacts:E,currentPopupType:D,currentArtifact:q,setCurrentArtifact:M}=r.useArtifactContext(),{onLoadArtifact:N}=l.useArtifact(),{styles:R,colors:B,translations:L}=n.usePickaxeContext(),{toPDF:z,targetRef:P}=i.usePDF({filename:`${(null==q?void 0:q.id)||"Untitled"}.pdf`,page:{margin:i.Margin.MEDIUM,orientation:"portrait"}}),[$,W]=o.useState("code"),_=o.useRef(null),H=o.useRef(null),{scrollContainerRef:I,scrollStartSession:U,scrollToBottom:V,scrollEndSession:X}=a.useScroll({auto:"code"===$}),G=null!==(A=null===(k=C.styling)||void 0===k?void 0:k.styles)&&void 0!==A?A:R,J=null!==(T=null===(S=C.styling)||void 0===S?void 0:S.colors)&&void 0!==T?T:B,K=o.useMemo((()=>{var e,t,o,r,n;if(!C.artifact&&!q)return null;const a=null!==(t=null===(e=C.artifact)||void 0===e?void 0:e.id)&&void 0!==t?t:null==q?void 0:q.id,l=null!==(r=null===(o=C.artifact)||void 0===o?void 0:o.version)&&void 0!==r?r:null==q?void 0:q.version;return null!==(n=E.find((e=>e.id===a&&e.version===l)))&&void 0!==n?n:null}),[q,E,C.artifact]),Q=o.useMemo((()=>K&&"text/csv"===K.type?F.default(K.content,",",!0):null),[K]),Y=o.useMemo((()=>(J.secondaryText||"").toLowerCase().startsWith("#ffffff")),[null==J?void 0:J.secondaryText]),Z=o.useMemo((()=>{const e=C.artifact&&(null==q?void 0:q.id)===C.artifact.id&&(null==q?void 0:q.version)===C.artifact.version;return"inline"===C.type&&("inline-form"===D?!!q:e)}),[q,D,C.type,C.artifact]);o.useEffect((()=>{e.__awaiter(void 0,void 0,void 0,(function*(){"inline"===C.type&&C.artifact&&(E.some((e=>C.artifact&&e.id===C.artifact.id&&e.version===C.artifact.version))||N({id:C.artifact.id,version:C.artifact.version}))}))}),[E,C.type,C.artifact]),o.useEffect((()=>{if("application/vnd.pxe.code"===(null==K?void 0:K.type)&&W("code"),"finished"!==(null==K?void 0:K.status))return W("code"),U(),void V();X(),"application/vnd.pxe.code"!==K.type&&W("render")}),[null==K?void 0:K.status,null==K?void 0:K.type]),o.useEffect((()=>{var e;!H.current||"text/html"!==(null==K?void 0:K.type)&&"application/vnd.pxe.react"!==(null==K?void 0:K.type)||null===(e=H.current.contentWindow)||void 0===e||e.postMessage({type:"text/html"===K.type?"HTML_CODE":"REACT_CODE",content:K.content},O)}),[null==K?void 0:K.content,null==K?void 0:K.type]);const ee=()=>{K&&z()},te=e=>{if(!K)return;let t={mimeType:"text/plain",extension:".txt"};switch(e){case"text/markdown":t={mimeType:"text/markdown",extension:".md"};break;case"text/html":t={mimeType:"text/html",extension:".html"};break;case"text/csv":t={mimeType:"text/csv",extension:".csv"};break;case"image/svg+xml":case"application/vnd.pxe.mermaid":t={mimeType:"image/svg+xml",extension:".svg"};break;case"application/vnd.pxe.code":t={mimeType:`application/${K.programmingLanguage||"text"};charset=utf-8`,extension:`.${K.programmingLanguage||"txt"}`};break;case"application/vnd.pxe.react":t={mimeType:"text/typescript",extension:".tsx"};break;default:t={mimeType:"text/plain",extension:".txt"}}let o=null;if("application/vnd.pxe.mermaid"===K.type&&_.current){const e=_.current.querySelector("svg");e&&(o=(new XMLSerializer).serializeToString(e))}const r=new Blob([null!=o?o:K.content],{type:t.mimeType}),n=URL.createObjectURL(r);try{const e=document.createElement("a");e.href=n,e.download=`${K.title}${t.extension}`,e.style.display="none",document.body.appendChild(e),e.click(),document.body.removeChild(e)}finally{URL.revokeObjectURL(n)}};return K?t.jsxs("div",Object.assign({className:w.default("pxe-artifact-renderer flex flex-col","inline"===C.type&&!Z&&"min-h-[320px] mb-6",C.className),style:Object.assign(Object.assign({backgroundColor:J.secondary,color:J.secondaryText},"auto"!==D&&{borderRadius:G.cornerRadius}),C.style)},{children:[t.jsxs("div",Object.assign({className:"flex items-center gap-6 justify-between p-4 shadow-sm"},{children:[t.jsxs("div",Object.assign({className:"pxe-artifact-create-header flex items-center gap-4 truncate"},{children:[(Z||!D.startsWith("inline"))&&t.jsx(j.default,{type:K.type,view:$,colors:J,onChange:W}),t.jsx("p",Object.assign({className:"font-semilight truncate text-xl"},{children:K.title}))]})),t.jsxs("div",Object.assign({className:"flex items-center gap-3"},{children:[(Z||!D.startsWith("inline"))&&t.jsx(b.default,Object.assign({variant:"anchor",className:"px-3 py-1.5 shrink-0",data:K,colors:J,onDownload:te,onSaveAsPDF:ee},{children:t.jsx("span",Object.assign({className:"shrink-0 font-semibold text-sm select-none"},{children:(null==L?void 0:L["save-as"])||"Save as"}))})),t.jsx("button",Object.assign({style:{color:J.secondaryText},onClick:()=>{"inline"!==C.type||!C.artifact||Z?M(null):M({id:C.artifact.id,version:C.artifact.version})}},{children:"inline"===C.type?Z?t.jsx(f.default,{className:"w-6 h-6 shrink-0"}):t.jsx(x.default,{className:"w-6 h-6 shrink-0"}):t.jsx(u.default,{className:"w-6 h-6 shrink-0"})}))]}))]})),t.jsx("div",Object.assign({className:"flex flex-col flex-grow @container/pickaxe-artifact"},{children:t.jsxs(y.default,Object.assign({ref:I,innerClassName:"flex-grow w-full"},{children:["render"===$&&"application/vnd.pxe.code"!==K.type?t.jsx("div",Object.assign({ref:P,className:w.default("p-4 pb-6 flex-grow flex flex-col","application/vnd.pxe.react"===K.type&&"p-0","text/html"===K.type&&"p-0","text/csv"===K.type&&"p-0")},{children:"text/markdown"===K.type||"text/csv"===K.type||"image/svg+xml"===K.type?t.jsx(s.PickaxeMarkdown,Object.assign({theme:G.theme,colors:J},{children:t.jsx(c.PickaxeMarkdownRenderer,{value:null!=Q?Q:K.content,className:w.default("px-6 @[767px]/pickaxe-artifact:px-11 mx-auto w-full","text/csv"===K.type&&"px-4 @[767px]/pickaxe-artifact:px-4 mx-0"),style:{flex:1}})})):"application/vnd.pxe.mermaid"===K.type?t.jsx(h.default,{ref:_,id:`mermaid-${K.id}-${K.version}`,data:K.content}):"text/html"===K.type||"application/vnd.pxe.react"===K.type?t.jsx("iframe",Object.assign({ref:H,title:K.title,src:`${O}/${"text/html"===K.type?"html":"react"}?theme=${Y?"dark":"light"}`,style:{width:"100%",flex:1,border:"none",backgroundColor:null==J?void 0:J.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:"text/html"===K.type?"HTML_CODE":"REACT_CODE",content:K.content},O)}catch(e){console.error("Error sending message to iframe:",e)}}),100),V()}},{children:"Iframe is not supported, please view this artifact in a browser that supports it."})):null})):t.jsx(d.Prism,Object.assign({PreTag:"div",language:"text/markdown"===K.type?"markdown":"text/html"===K.type||"image/svg+xml"===K.type?"xml":"application/vnd.pxe.react"===K.type?"typescript":K.programmingLanguage,showLineNumbers:!0,customStyle:{margin:0,flex:1},style:Object.assign({'code[class*="language-"]':Object.assign(Object.assign({color:null==J?void 0:J.secondaryText},Y&&{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==J?void 0:J.secondaryText},Y&&{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",background:null==J?void 0:J.secondary}),':not(pre) > code[class*="language-"]':{background:null==J?void 0:J.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==J?void 0:J.secondaryText,fontWeight:"bold"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}},!Y&&{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==J?void 0:J.secondaryText,fontWeight:"bold"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}})},{children:K.content})),t.jsx(p.default,{})]}))})),"inline"===C.type&&!Z&&t.jsxs("div",Object.assign({className:"flex items-center gap-4 p-4 pt-6"},{children:[t.jsx(v.default,Object.assign({id:`artifact-copy-${K.id}-${K.version}`,tip:(null==L?void 0:L.copy)||"Copy",style:{padding:"0.25rem 0.5rem",backgroundColor:J.secondary,color:J.secondaryText,fontSize:"12px"},align:"bottom"},{children:t.jsx(g.default,{color:J.secondaryText,text:K.content,className:"opacity-100",iconClassName:"w-5 h-5"})})),t.jsx(v.default,Object.assign({id:`artifact-save-${K.id}-${K.version}`,tip:(null==L?void 0:L.save)||"Save",style:{padding:"0.25rem 0.5rem",backgroundColor:J.secondary,color:J.secondaryText,fontSize:"12px"},align:"bottom"},{children:t.jsx(b.default,Object.assign({data:K,colors:J,onDownload:te,onSaveAsPDF:ee},{children:t.jsx("button",Object.assign({style:{color:J.secondaryText}},{children:t.jsx(m.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"),r=require("../../../../../hooks/pickaxe/usePickaxeContext.js"),a=require("../../Scroll/hooks/useScroll.js"),i=require("../hooks/useArtifact.js"),l=require("react-to-print"),s=require("../../../common/PickaxeMarkdown/index.js"),c=require("../../../common/PickaxeMarkdown/Renderer.js"),d=require("react-syntax-highlighter"),p=require("../../Scroll/ScrollLockView.js"),u=require("../../../../Icons/x.svg.js"),m=require("../../../../Icons/save.svg.js"),x=require("../../../../Icons/expand.svg.js"),f=require("../../../../Icons/shrink.svg.js"),v=require("../../../common/PickaxeCopyButton.js"),y=require("../../../../Core/ScrollArea.js"),g=require("../../../../Core/TipContainer.js"),h=require("../MermaidRenderer.js"),b=require("./SaveMenu.js"),j=require("./ViewOptions.js"),w=require("csv-to-markdown-table"),C=require("../../../../../common/cn.js");function k(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var F=k(w);const T="development"===process.env.NODE_ENV?"http://localhost:3007":"https://user-content.pickaxe.co";exports.default=w=>{var k,O,A,S;const{artifacts:E,currentPopupType:q,currentArtifact:D,setCurrentArtifact:N}=n.useArtifactContext(),{onLoadArtifact:M}=i.useArtifact(),{styles:R,colors:B,translations:L}=r.usePickaxeContext(),[P,z]=o.useState("code"),_=o.useRef(),$=o.useRef(null),W=o.useRef(null),H=l.useReactToPrint({contentRef:_}),{scrollContainerRef:I,scrollStartSession:U,scrollToBottom:V,scrollEndSession:X}=a.useScroll({auto:"code"===P}),G=null!==(O=null===(k=w.styling)||void 0===k?void 0:k.styles)&&void 0!==O?O:R,J=null!==(S=null===(A=w.styling)||void 0===A?void 0:A.colors)&&void 0!==S?S:B,K=o.useMemo((()=>{var e,t,o,n,r;if(!w.artifact&&!D)return null;const a=null!==(t=null===(e=w.artifact)||void 0===e?void 0:e.id)&&void 0!==t?t:null==D?void 0:D.id,i=null!==(n=null===(o=w.artifact)||void 0===o?void 0:o.version)&&void 0!==n?n:null==D?void 0:D.version;return null!==(r=E.find((e=>e.id===a&&e.version===i)))&&void 0!==r?r:null}),[D,E,w.artifact]),Q=o.useMemo((()=>K&&"text/csv"===K.type?F.default(K.content,",",!0):null),[K]),Y=o.useMemo((()=>(J.secondaryText||"").toLowerCase().startsWith("#ffffff")),[null==J?void 0:J.secondaryText]),Z=o.useMemo((()=>{const e=w.artifact&&(null==D?void 0:D.id)===w.artifact.id&&(null==D?void 0:D.version)===w.artifact.version;return"inline"===w.type&&("inline-form"===q?!!D:e)}),[D,q,w.type,w.artifact]);o.useEffect((()=>{e.__awaiter(void 0,void 0,void 0,(function*(){"inline"===w.type&&w.artifact&&(E.some((e=>w.artifact&&e.id===w.artifact.id&&e.version===w.artifact.version))||M({id:w.artifact.id,version:w.artifact.version}))}))}),[E,w.type,w.artifact]),o.useEffect((()=>{if("application/vnd.pxe.code"===(null==K?void 0:K.type)&&z("code"),"finished"!==(null==K?void 0:K.status))return z("code"),U(),void V();X(),"application/vnd.pxe.code"!==K.type&&z("render")}),[null==K?void 0:K.status,null==K?void 0:K.type]),o.useEffect((()=>{var e;!W.current||"text/html"!==(null==K?void 0:K.type)&&"application/vnd.pxe.react"!==(null==K?void 0:K.type)||null===(e=W.current.contentWindow)||void 0===e||e.postMessage({type:"text/html"===K.type?"HTML_CODE":"REACT_CODE",content:K.content},T)}),[null==K?void 0:K.content,null==K?void 0:K.type]);const ee=()=>e.__awaiter(void 0,void 0,void 0,(function*(){if(!K)return;const e=P;"code"===e&&(z("render"),yield new Promise((e=>setTimeout(e,50)))),H(),"code"===e&&z(e)})),te=t=>e.__awaiter(void 0,void 0,void 0,(function*(){var e;if(!K)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"image/svg+xml":case"application/vnd.pxe.mermaid":o={mimeType:"image/svg+xml",extension:".svg"};break;case"application/vnd.pxe.code":o={mimeType:`application/${K.programmingLanguage||"text"};charset=utf-8`,extension:`.${K.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"===K.type){const t=P;"code"===t&&(z("render"),yield new Promise((e=>setTimeout(e,50))));const o=null===(e=$.current)||void 0===e?void 0:e.querySelector("svg");o&&(n=(new XMLSerializer).serializeToString(o)),"code"===t&&z(t)}const r=new Blob([null!=n?n:K.content],{type:o.mimeType}),a=URL.createObjectURL(r);try{const e=document.createElement("a");e.href=a,e.download=`${K.title}${o.extension}`,e.style.display="none",document.body.appendChild(e),e.click(),document.body.removeChild(e)}finally{URL.revokeObjectURL(a)}}));return K?t.jsxs("div",Object.assign({className:C.default("pxe-artifact-renderer flex flex-col","inline"===w.type&&!Z&&"min-h-[320px] mb-6",w.className),style:Object.assign(Object.assign({backgroundColor:J.secondary,color:J.secondaryText},"auto"!==q&&{borderRadius:G.cornerRadius}),w.style)},{children:[t.jsxs("div",Object.assign({className:"flex items-center gap-6 justify-between p-4 shadow-sm"},{children:[t.jsxs("div",Object.assign({className:"pxe-artifact-create-header flex items-center gap-4 truncate"},{children:[(Z||!q.startsWith("inline"))&&t.jsx(j.default,{type:K.type,view:P,colors:J,onChange:z}),t.jsx("p",Object.assign({className:"font-semilight truncate text-xl"},{children:K.title}))]})),t.jsxs("div",Object.assign({className:"flex items-center gap-3"},{children:[(Z||!q.startsWith("inline"))&&t.jsx(b.default,Object.assign({variant:"anchor",className:"px-3 py-1.5 shrink-0",data:K,colors:J,onDownload:te,onSaveAsPDF:ee},{children:t.jsx("span",Object.assign({className:"shrink-0 font-semibold text-sm select-none"},{children:(null==L?void 0:L["save-as"])||"Save as"}))})),t.jsx("button",Object.assign({style:{color:J.secondaryText},onClick:()=>{"inline"!==w.type||!w.artifact||Z?N(null):N({id:w.artifact.id,version:w.artifact.version})}},{children:"inline"===w.type?Z?t.jsx(f.default,{className:"w-6 h-6 shrink-0"}):t.jsx(x.default,{className:"w-6 h-6 shrink-0"}):t.jsx(u.default,{className:"w-6 h-6 shrink-0"})}))]}))]})),t.jsx("div",Object.assign({className:"flex flex-col flex-grow @container/pickaxe-artifact"},{children:t.jsxs(y.default,Object.assign({ref:I,innerClassName:"flex-grow w-full"},{children:["render"===P&&"application/vnd.pxe.code"!==K.type?t.jsx("div",Object.assign({ref:_,className:C.default("p-4 pb-6 flex-grow flex flex-col","application/vnd.pxe.react"===K.type&&"p-0","text/html"===K.type&&"p-0","text/csv"===K.type&&"p-0")},{children:"text/markdown"===K.type||"text/csv"===K.type||"image/svg+xml"===K.type?t.jsx(s.PickaxeMarkdown,Object.assign({theme:G.theme,colors:J},{children:t.jsx(c.PickaxeMarkdownRenderer,{value:null!=Q?Q:K.content,className:C.default("px-6 @[767px]/pickaxe-artifact:px-11 mx-auto w-full","text/csv"===K.type&&"px-4 @[767px]/pickaxe-artifact:px-4 mx-0"),style:{flex:1}})})):"application/vnd.pxe.mermaid"===K.type?t.jsx(h.default,{ref:$,id:`mermaid-${K.id}-${K.version}`,data:K.content}):"text/html"===K.type||"application/vnd.pxe.react"===K.type?t.jsx("iframe",Object.assign({ref:W,title:K.title,src:`${T}/${"text/html"===K.type?"html":"react"}?theme=${Y?"dark":"light"}`,style:{width:"100%",flex:1,border:"none",backgroundColor:null==J?void 0:J.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:"text/html"===K.type?"HTML_CODE":"REACT_CODE",content:K.content},T)}catch(e){console.error("Error sending message to iframe:",e)}}),100),V()}},{children:"Iframe is not supported, please view this artifact in a browser that supports it."})):null})):t.jsx(d.Prism,Object.assign({PreTag:"div",language:"text/markdown"===K.type?"markdown":"text/html"===K.type||"image/svg+xml"===K.type?"xml":"application/vnd.pxe.react"===K.type?"typescript":K.programmingLanguage,showLineNumbers:!0,customStyle:{margin:0,flex:1},style:Object.assign({'code[class*="language-"]':Object.assign(Object.assign({color:null==J?void 0:J.secondaryText},Y&&{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==J?void 0:J.secondaryText},Y&&{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==J?void 0:J.secondary}),':not(pre) > code[class*="language-"]':{background:null==J?void 0:J.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==J?void 0:J.secondaryText,fontWeight:"bold"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}},!Y&&{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==J?void 0:J.secondaryText,fontWeight:"bold"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}})},{children:K.content})),t.jsx(p.default,{})]}))})),"inline"===w.type&&!Z&&t.jsxs("div",Object.assign({className:"flex items-center gap-4 p-4 pt-6"},{children:[t.jsx(g.default,Object.assign({id:`artifact-copy-${K.id}-${K.version}`,tip:(null==L?void 0:L.copy)||"Copy",style:{padding:"0.25rem 0.5rem",backgroundColor:J.secondary,color:J.secondaryText,fontSize:"12px"},align:"bottom"},{children:t.jsx(v.default,{color:J.secondaryText,text:K.content,className:"opacity-100",iconClassName:"w-5 h-5"})})),t.jsx(g.default,Object.assign({id:`artifact-save-${K.id}-${K.version}`,tip:(null==L?void 0:L.save)||"Save",style:{padding:"0.25rem 0.5rem",backgroundColor:J.secondary,color:J.secondaryText,fontSize:"12px"},align:"bottom"},{children:t.jsx(b.default,Object.assign({data:K,colors:J,onDownload:te,onSaveAsPDF:ee},{children:t.jsx("button",Object.assign({style:{color:J.secondaryText}},{children:t.jsx(m.default,{className:"w-5 h-5 shrink-0"})}))}))}))]}))]})):null};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("react"),a=require("../../../../hooks/pickaxe/usePickaxeContext.js"),t=require("../../../../hooks/pickaxe/useResponseContext.js"),l=require("../../../../hooks/pickaxe/useDimensionContext.js"),i=require("../../Addons/Scroll/hooks/useScrollContext.js"),o=require("../../../../hooks/studio/useStyleFontSize.js"),n=require("../../../../hooks/pickaxe/useConversation.js"),r=require("../../Addons/Artifact/hooks/useArtifactContext.js"),c=require("../../../Core/ErrorAlert.js"),d=require("../../common/PickaxeHead.js"),u=require("../../common/PickaxeCompactHead.js"),x=require("../../common/PickaxeUpgradeCard.js"),m=require("../../common/PickaxeIcon.js"),f=require("../../common/PickaxeBranding.js"),j=require("../../common/PickaxeSkeleton.js"),p=require("../../Addons/Scroll/ScrollLockView.js"),h=require("../../Addons/Artifact/Renderer/index.js"),g=require("./Message.js"),v=require("../../../../common/cn.js");exports.default=({hideInfo:w,isInputFocused:N})=>{var b;const y=n.useConversation(),k=o.useStyleFontSize(),{pickaxe:C,colors:q,misc:O,isNewChat:S,isRtl:P,isEmbed:A,setChatId:I}=a.usePickaxeContext(),{scrollContainerRef:E}=i.useScrollContext(),{messages:L,status:M,limitData:R,error:z}=t.useResponseContext(),{height:D}=l.useDimensionContext(),{currentArtifact:H,chatPopupType:$,currentPopupType:F}=r.useArtifactContext(),T=s.useMemo((()=>!!y.data&&!(y.data.messages.length<=1)),[y.data]),_=s.useMemo((()=>!w&&y.isSuccess&&S&&!T),[w,y.isSuccess,S,T]),B=s.useMemo((()=>{var e,s;return!!L.length&&!(null!==(s=null===(e=null==L?void 0:L[L.length-1])||void 0===e?void 0:e.content)&&void 0!==s?s:"").trim()}),[L]);return e.jsxs("div",Object.assign({ref:E,className:"flex w-full flex-col items-center overflow-y-auto mb-12 pb-8 scrollbar scrollbar-thin",style:{height:`calc(${D}px - 74px)`}},{children:[!!H&&"inline"===F&&e.jsx("div",Object.assign({className:v.default("absolute top-0 z-10 w-full px-4 py-2",$),style:{height:`calc(${D}px - 80px)`}},{children:e.jsx(h.default,{type:"inline",className:"pxe-artifact-inline h-full shadow",artifact:{id:H.id,version:H.version}})})),e.jsxs("div",Object.assign({className:"relative flex flex-col items-center flex-grow w-full max-w-[800px] px-4"},{children:[(_||!A)&&!O.isWhiteLabel&&e.jsx(f.default,{className:v.default("absolute top-4 right-4",!_&&!A&&"top-2"),animateHover:!0}),e.jsx(d.default,{className:v.default("opacity-0 mt-[0%] transition-all duration-500 ease-in-out max-h-0 overflow-hidden max-w-[500px]",_&&"opacity-100 mt-[10%] max-h-[100%]"),iconClassName:"duration-300 hover:opacity-90",maxDescriptionChars:500,onIconClick:()=>I("")}),A&&!y.isLoading&&e.jsx(u.default,{className:v.default("opacity-0 transition-all duration-500 ease-in-out h-0 w-full",!_&&"opacity-100 h-[56px]"),iconClassName:"duration-300 hover:opacity-90",onIconClick:()=>I("")}),e.jsx("div",Object.assign({className:v.default("flex flex-col mt-6 transition-all duration-300 ease-in-out w-full",A&&!y.isLoading&&!_&&"mt-0")},{children:y.isLoading&&!(null==C?void 0:C.enablechatresponses)?e.jsxs("div",Object.assign({className:"grid w-full max-w-[800px] grid-cols-1 gap-y-6 px-6 pt-10"},{children:[S&&e.jsxs("div",Object.assign({className:"flex flex-col items-center w-full"},{children:[e.jsx(j.default,{className:"w-[72px] h-[72px]"}),e.jsx(j.default,{className:"h-[20px] mt-6 w-full"}),e.jsx(j.default,{className:"h-[20px] mt-2 w-full"}),e.jsx(j.default,{className:"h-[20px] mt-2 w-full max-w-[400px]"})]})),e.jsx(j.default,{className:"h-10 w-[70%] animate-pulse justify-self-end rounded"}),e.jsx(j.default,{className:"h-[150px] w-[70%] animate-pulse rounded"}),e.jsx(j.default,{className:"h-10 w-[50%] animate-pulse justify-self-end rounded"})]})):y.isError?e.jsx("div",Object.assign({className:"flex w-full justify-center"},{children:e.jsxs("p",Object.assign({className:v.default(k.b2,"text-center font-semibold")},{children:["Something went wrong. Please try again, or"," ",e.jsx("a",Object.assign({href:"mailto:info@pickaxeproject.com?subject=Help",target:"_blank",rel:"noreferrer"},{children:"contact us"}))," ","for help."]}))})):y.data?e.jsxs("div",Object.assign({className:"flex flex-col w-full"},{children:[e.jsxs("div",Object.assign({className:"grid grid-cols-1 gap-y-6 w-full"},{children:[y.data.messages.map(((s,a)=>e.jsx(g.default,Object.assign({index:a,message:s},0===a&&{isIntroExpand:N}),a))),L.map(((s,a)=>e.jsx(g.default,{index:y.data.messages.length+a,message:s},a))),"fetching"===M||B?e.jsx("div",Object.assign({className:v.default("flex w-full",P?"justify-end":"justify-start")},{children:e.jsx("div",Object.assign({className:"flex flex-col"},{children:e.jsxs("div",Object.assign({className:v.default("flex gap-x-3",P&&"flex-row-reverse")},{children:["NONE"!==(null==C?void 0:C.chaticon)&&e.jsx(m.default,{src:null!==(b=null==C?void 0:C.chaticon)&&void 0!==b?b:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/chaticons/${null==C?void 0:C.formid}.png`,alt:`${null==C?void 0:C.formtitle}'s Chat Icon`,width:24,height:24,className:"my-3 h-6 w-6",textColor:q.text}),e.jsx("div",Object.assign({className:"flex items-center gap-x-2 rounded px-2"},{children:Array.from({length:3}).map(((s,a)=>e.jsx("div",{className:v.default("h-1.5 w-1.5 animate-dot rounded-full",1===a&&"animate-dot-down"),style:{backgroundColor:q.secondaryText}},a)))}))]}))}))})):R?e.jsx("div",Object.assign({className:"flex max-w-[80%] items-center gap-x-3"},{children:e.jsx(x.default,{})})):z?e.jsx("div",Object.assign({className:v.default("flex items-center gap-x-3",P?"justify-end":"justify-start")},{children:e.jsx(c.default,{error:z})})):null]})),e.jsx(p.default,{})]})):null}))]}))]}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("react"),a=require("../../../../hooks/pickaxe/usePickaxeContext.js"),t=require("../../../../hooks/pickaxe/useResponseContext.js"),i=require("../../../../hooks/pickaxe/useDimensionContext.js"),l=require("../../Addons/Scroll/hooks/useScrollContext.js"),n=require("../../../../hooks/studio/useStyleFontSize.js"),o=require("../../../../hooks/pickaxe/useConversation.js"),r=require("../../Addons/Artifact/hooks/useArtifactContext.js"),c=require("framer-motion"),d=require("../../../Core/ErrorAlert.js"),u=require("../../common/PickaxeHead.js"),x=require("../../common/PickaxeCompactHead.js"),m=require("../../common/PickaxeUpgradeCard.js"),f=require("../../common/PickaxeIcon.js"),j=require("../../common/PickaxeBranding.js"),p=require("../../common/PickaxeSkeleton.js"),h=require("../../Addons/Scroll/ScrollLockView.js"),g=require("../../Addons/Artifact/Renderer/index.js"),v=require("./Message.js"),w=require("../../../../common/cn.js");exports.default=({hideInfo:y,isInputFocused:N})=>{var b;const k=o.useConversation(),C=n.useStyleFontSize(),{pickaxe:q,colors:O,misc:P,isNewChat:S,isRtl:A,isEmbed:I,setChatId:E}=a.usePickaxeContext(),{scrollContainerRef:L}=l.useScrollContext(),{messages:M,status:R,limitData:z,error:D}=t.useResponseContext(),{height:H}=i.useDimensionContext(),{currentArtifact:$,chatPopupType:F,currentPopupType:T}=r.useArtifactContext(),_=s.useMemo((()=>!!k.data&&!(k.data.messages.length<=1)),[k.data]),B=s.useMemo((()=>!y&&k.isSuccess&&S&&!_),[y,k.isSuccess,S,_]),U=s.useMemo((()=>{var e,s;return!!M.length&&!(null!==(s=null===(e=null==M?void 0:M[M.length-1])||void 0===e?void 0:e.content)&&void 0!==s?s:"").trim()}),[M]);return e.jsxs("div",Object.assign({ref:L,className:"flex w-full flex-col items-center overflow-y-auto mb-12 pb-8 scrollbar scrollbar-thin",style:{height:`calc(${H}px - 74px)`}},{children:[e.jsx(c.AnimatePresence,{children:!!$&&"inline"===T&&e.jsx(c.motion.div,Object.assign({className:w.default("absolute top-0 z-10 w-full px-4 py-2",F),style:{height:`calc(${H}px - 80px)`},initial:{opacity:0,y:-20},animate:{opacity:1,y:0},exit:{opacity:0,y:-20},transition:{duration:.2,ease:"easeOut"}},{children:e.jsx(g.default,{type:"inline",className:"pxe-artifact-inline h-full shadow",artifact:{id:$.id,version:$.version}})}))}),e.jsxs("div",Object.assign({className:"relative flex flex-col items-center flex-grow w-full max-w-[800px] px-4"},{children:[(B||!I)&&!P.isWhiteLabel&&e.jsx(j.default,{className:w.default("absolute top-4 right-4",!B&&!I&&"top-2"),animateHover:!0}),e.jsx(u.default,{className:w.default("opacity-0 mt-[0%] transition-all duration-500 ease-in-out max-h-0 overflow-hidden max-w-[500px]",B&&"opacity-100 mt-[10%] max-h-[100%]"),iconClassName:"duration-300 hover:opacity-90",maxDescriptionChars:500,onIconClick:()=>E("")}),I&&!k.isLoading&&e.jsx(x.default,{className:w.default("opacity-0 transition-all duration-500 ease-in-out h-0 w-full",!B&&"opacity-100 h-[56px]"),iconClassName:"duration-300 hover:opacity-90",onIconClick:()=>E("")}),e.jsx("div",Object.assign({className:w.default("flex flex-col mt-6 transition-all duration-300 ease-in-out w-full",I&&!k.isLoading&&!B&&"mt-0")},{children:k.isLoading&&!(null==q?void 0:q.enablechatresponses)?e.jsxs("div",Object.assign({className:"grid w-full max-w-[800px] grid-cols-1 gap-y-6 px-6 pt-10"},{children:[S&&e.jsxs("div",Object.assign({className:"flex flex-col items-center w-full"},{children:[e.jsx(p.default,{className:"w-[72px] h-[72px]"}),e.jsx(p.default,{className:"h-[20px] mt-6 w-full"}),e.jsx(p.default,{className:"h-[20px] mt-2 w-full"}),e.jsx(p.default,{className:"h-[20px] mt-2 w-full max-w-[400px]"})]})),e.jsx(p.default,{className:"h-10 w-[70%] animate-pulse justify-self-end rounded"}),e.jsx(p.default,{className:"h-[150px] w-[70%] animate-pulse rounded"}),e.jsx(p.default,{className:"h-10 w-[50%] animate-pulse justify-self-end rounded"})]})):k.isError?e.jsx("div",Object.assign({className:"flex w-full justify-center"},{children:e.jsxs("p",Object.assign({className:w.default(C.b2,"text-center font-semibold")},{children:["Something went wrong. Please try again, or"," ",e.jsx("a",Object.assign({href:"mailto:info@pickaxeproject.com?subject=Help",target:"_blank",rel:"noreferrer"},{children:"contact us"}))," ","for help."]}))})):k.data?e.jsxs("div",Object.assign({className:"flex flex-col w-full"},{children:[e.jsxs("div",Object.assign({className:"grid grid-cols-1 gap-y-6 w-full"},{children:[k.data.messages.map(((s,a)=>e.jsx(v.default,Object.assign({index:a,message:s},0===a&&{isIntroExpand:N}),a))),M.map(((s,a)=>e.jsx(v.default,{index:k.data.messages.length+a,message:s},a))),"fetching"===R||U?e.jsx("div",Object.assign({className:w.default("flex w-full",A?"justify-end":"justify-start")},{children:e.jsx("div",Object.assign({className:"flex flex-col"},{children:e.jsxs("div",Object.assign({className:w.default("flex gap-x-3",A&&"flex-row-reverse")},{children:["NONE"!==(null==q?void 0:q.chaticon)&&e.jsx(f.default,{src:null!==(b=null==q?void 0:q.chaticon)&&void 0!==b?b:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/chaticons/${null==q?void 0:q.formid}.png`,alt:`${null==q?void 0:q.formtitle}'s Chat Icon`,width:24,height:24,className:"my-3 h-6 w-6",textColor:O.text}),e.jsx("div",Object.assign({className:"flex items-center gap-x-2 rounded px-2"},{children:Array.from({length:3}).map(((s,a)=>e.jsx("div",{className:w.default("h-1.5 w-1.5 animate-dot rounded-full",1===a&&"animate-dot-down"),style:{backgroundColor:O.secondaryText}},a)))}))]}))}))})):z?e.jsx("div",Object.assign({className:"flex max-w-[80%] items-center gap-x-3"},{children:e.jsx(m.default,{})})):D?e.jsx("div",Object.assign({className:w.default("flex items-center gap-x-3",A?"justify-end":"justify-start")},{children:e.jsx(d.default,{error:D})})):null]})),e.jsx(h.default,{})]})):null}))]}))]}))};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("../../hooks/usePickaxeMarkdownContext.js"),i=require("../../../../Addons/Artifact/hooks/useArtifactContext.js"),s=require("framer-motion"),a=require("../../../../../Icons/spinner-lines.svg.js"),n=require("../../../../Addons/Artifact/Renderer/index.js");exports.Artifact=({node:o})=>{const{theme:c,colors:d,styles:l,onArtifactClick:p}=r.usePickaxeMarkdownContext(),{artifacts:u,currentPopupType:x}=i.useArtifactContext(),f=t.useMemo((()=>{const{dataId:e,dataCommand:t,dataTitle:r,dataType:i,dataVersion:s}=(null==o?void 0:o.properties)||{};return e?{id:e,command:t||"create",title:r||"Untitled Artifact",type:i||"text/markdown",version:s?parseInt(s,10):1}:null}),[]),m=t.useMemo((()=>{var e,t;if(!f)return null;const{command:r,type:i,version:s}=f;let a=`${null!==(e={create:"Created",update:"Updated",rewrite:"Rewrote"}[r])&&void 0!==e?e:"Created"} ${null!==(t={"text/markdown":"Markdown","text/html":"HTML","text/csv":"CSV","image/svg+xml":"SVG","application/vnd.pxe.code":"Code","application/vnd.pxe.mermaid":"Diagram","application/vnd.pxe.react":"React Component"}[i])&&void 0!==t?t:"Artifact"}`;return s>1&&(a+=` (v${s})`),a}),[f]),v=t.useMemo((()=>{if(!f)return"finished";const e=u.find((e=>e.id===f.id&&e.version===f.version));return e?e.status:"finished"}),[u,f]);return f?x.startsWith("inline")&&"finished"===v?e.jsx(n.default,{type:"inline",className:"pxe-artifact-inline",styling:{colors:d,styles:l},artifact:{id:f.id,version:f.version}}):e.jsxs(s.motion.div,Object.assign({className:"pxe-artifact-create-container p-4 flex items-center gap-8 flex-wrap justify-between mb-4 select-none",style:Object.assign({borderColor:"dark"===c?"#444444":"#CCCCCC",backgroundColor:d.secondary+"80",color:d.secondaryText,borderRadius:l.cornerRadius},!!p&&{cursor:"pointer"}),initial:{opacity:0,x:10,scale:.95},animate:{opacity:1,x:0,scale:1},transition:{duration:.5,ease:"easeOut",staggerChildren:.1},whileHover:{borderColor:"dark"===c?"#666666":"#AAAAAA",backgroundColor:d.secondary}},p&&{onClick:()=>p({id:f.id,version:f.version})},{children:[e.jsxs("div",Object.assign({className:"pxe-artifact-create-header flex flex-col gap-2 text-[10pt]"},{children:[e.jsx("p",Object.assign({className:"font-semibold"},{children:f.title})),e.jsx("p",Object.assign({className:"opacity-90"},{children:m}))]})),"finished"!==v&&e.jsx("div",{children:e.jsx(a.default,{className:"pxe-spin w-5 h-5 shrink-0"})})]})):null},exports.ArtifactError=({node:r,children:s})=>{const{setArtifacts:a}=i.useArtifactContext();return t.useEffect((()=>{if(!r||!r.properties)return;const e=r.properties.dataId;e&&a((t=>t.map((t=>t.id===e?Object.assign(Object.assign({},t),{status:"error"}):t))))}),[]),e.jsx("div",Object.assign({className:"pxe-red pxe-artifact-error"},{children:s}))};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("../../hooks/usePickaxeMarkdownContext.js"),i=require("../../../../Addons/Artifact/hooks/useArtifactContext.js"),a=require("framer-motion"),s=require("../../../../../Icons/spinner-lines.svg.js"),n=require("../../../../Addons/Artifact/Renderer/index.js");exports.Artifact=({node:o})=>{const{theme:c,colors:d,styles:l,onArtifactClick:u}=r.usePickaxeMarkdownContext(),{artifacts:p,currentPopupType:x,currentArtifact:f}=i.useArtifactContext(),m=t.useMemo((()=>{const{dataId:e,dataCommand:t,dataTitle:r,dataType:i,dataVersion:a}=(null==o?void 0:o.properties)||{};return e?{id:e,command:t||"create",title:r||"Untitled Artifact",type:i||"text/markdown",version:a?parseInt(a,10):1}:null}),[]),v=t.useMemo((()=>{var e,t;if(!m)return null;const{command:r,type:i,version:a}=m;let s=`${null!==(e={create:"Created",update:"Updated",rewrite:"Rewrote"}[r])&&void 0!==e?e:"Created"} ${null!==(t={"text/markdown":"Markdown","text/html":"HTML","text/csv":"CSV","image/svg+xml":"SVG","application/vnd.pxe.code":"Code","application/vnd.pxe.mermaid":"Diagram","application/vnd.pxe.react":"React Component"}[i])&&void 0!==t?t:"Artifact"}`;return a>1&&(s+=` (v${a})`),s}),[m]),C=t.useMemo((()=>{if(!m)return"finished";const e=p.find((e=>e.id===m.id&&e.version===m.version));return e?e.status:"finished"}),[p,m]);return m?x.startsWith("inline")&&"finished"===C?f?null:e.jsx(n.default,{type:"inline",className:"pxe-artifact-inline",styling:{colors:d,styles:l},artifact:{id:m.id,version:m.version}}):e.jsxs(a.motion.div,Object.assign({className:"pxe-artifact-create-container p-4 flex items-center gap-8 flex-wrap justify-between mb-4 select-none",style:Object.assign({borderColor:"dark"===c?"#444444":"#CCCCCC",backgroundColor:d.secondary+"80",color:d.secondaryText,borderRadius:l.cornerRadius},!!u&&{cursor:"pointer"}),initial:{opacity:0,x:10,scale:.95},animate:{opacity:1,x:0,scale:1},transition:{duration:.5,ease:"easeOut",staggerChildren:.1},whileHover:{borderColor:"dark"===c?"#666666":"#AAAAAA",backgroundColor:d.secondary}},u&&{onClick:()=>u({id:m.id,version:m.version})},{children:[e.jsxs("div",Object.assign({className:"pxe-artifact-create-header flex flex-col gap-2 text-[10pt]"},{children:[e.jsx("p",Object.assign({className:"font-semibold"},{children:m.title})),e.jsx("p",Object.assign({className:"opacity-90"},{children:v}))]})),"finished"!==C&&e.jsx("div",{children:e.jsx(s.default,{className:"pxe-spin w-5 h-5 shrink-0"})})]})):null},exports.ArtifactError=({node:r,children:a})=>{const{setArtifacts:s}=i.useArtifactContext();return t.useEffect((()=>{if(!r||!r.properties)return;const e=r.properties.dataId;e&&s((t=>t.map((t=>t.id===e?Object.assign(Object.assign({},t),{status:"error"}):t))))}),[]),e.jsx("div",Object.assign({className:"pxe-red pxe-artifact-error"},{children:a}))};
@@ -1,5 +1,5 @@
1
1
  import type { PickaxeProviderStyles, PickaxeProviderColors } from "../../../Provider";
2
- import { CSSProperties } from "react";
2
+ import { type CSSProperties } from "react";
3
3
  export type ArtifactStyling = Partial<{
4
4
  styles: PickaxeProviderStyles;
5
5
  colors: PickaxeProviderColors;
@@ -1 +1 @@
1
- import{__awaiter as e}from"../../../../../_virtual/_tslib.js";import{jsxs as o,jsx as t}from"react/jsx-runtime";import{useState as n,useRef as r,useMemo as a,useEffect as i}from"react";import{useArtifactContext as l}from"../hooks/useArtifactContext.js";import{usePickaxeContext as c}from"../../../../../hooks/pickaxe/usePickaxeContext.js";import{useScroll as s}from"../../Scroll/hooks/useScroll.js";import{useArtifact as d}from"../hooks/useArtifact.js";import{usePDF as p,Margin as m}from"react-to-pdf";import{PickaxeMarkdown as u}from"../../../common/PickaxeMarkdown/index.js";import{PickaxeMarkdownRenderer as g}from"../../../common/PickaxeMarkdown/Renderer.js";import{Prism as f}from"react-syntax-highlighter";import y from"../../Scroll/ScrollLockView.js";import x from"../../../../Icons/x.svg.js";import v from"../../../../Icons/save.svg.js";import h from"../../../../Icons/expand.svg.js";import b from"../../../../Icons/shrink.svg.js";import C from"../../../common/PickaxeCopyButton.js";import w from"../../../../Core/ScrollArea.js";import k from"../../../../Core/TipContainer.js";import j from"../MermaidRenderer.js";import F from"./SaveMenu.js";import O from"./ViewOptions.js";import T from"csv-to-markdown-table";import A from"../../../../../common/cn.js";const S="development"===process.env.NODE_ENV?"http://localhost:3007":"https://user-content.pickaxe.co",D=D=>{var E,N,B,M;const{artifacts:L,currentPopupType:z,currentArtifact:R,setCurrentArtifact:$}=l(),{onLoadArtifact:W}=d(),{styles:H,colors:P,translations:I}=c(),{toPDF:_,targetRef:U}=p({filename:`${(null==R?void 0:R.id)||"Untitled"}.pdf`,page:{margin:m.MEDIUM,orientation:"portrait"}}),[V,q]=n("code"),X=r(null),G=r(null),{scrollContainerRef:J,scrollStartSession:K,scrollToBottom:Q,scrollEndSession:Y}=s({auto:"code"===V}),Z=null!==(N=null===(E=D.styling)||void 0===E?void 0:E.styles)&&void 0!==N?N:H,ee=null!==(M=null===(B=D.styling)||void 0===B?void 0:B.colors)&&void 0!==M?M:P,oe=a((()=>{var e,o,t,n,r;if(!D.artifact&&!R)return null;const a=null!==(o=null===(e=D.artifact)||void 0===e?void 0:e.id)&&void 0!==o?o:null==R?void 0:R.id,i=null!==(n=null===(t=D.artifact)||void 0===t?void 0:t.version)&&void 0!==n?n:null==R?void 0:R.version;return null!==(r=L.find((e=>e.id===a&&e.version===i)))&&void 0!==r?r:null}),[R,L,D.artifact]),te=a((()=>oe&&"text/csv"===oe.type?T(oe.content,",",!0):null),[oe]),ne=a((()=>(ee.secondaryText||"").toLowerCase().startsWith("#ffffff")),[null==ee?void 0:ee.secondaryText]),re=a((()=>{const e=D.artifact&&(null==R?void 0:R.id)===D.artifact.id&&(null==R?void 0:R.version)===D.artifact.version;return"inline"===D.type&&("inline-form"===z?!!R:e)}),[R,z,D.type,D.artifact]);i((()=>{e(void 0,void 0,void 0,(function*(){"inline"===D.type&&D.artifact&&(L.some((e=>D.artifact&&e.id===D.artifact.id&&e.version===D.artifact.version))||W({id:D.artifact.id,version:D.artifact.version}))}))}),[L,D.type,D.artifact]),i((()=>{if("application/vnd.pxe.code"===(null==oe?void 0:oe.type)&&q("code"),"finished"!==(null==oe?void 0:oe.status))return q("code"),K(),void Q();Y(),"application/vnd.pxe.code"!==oe.type&&q("render")}),[null==oe?void 0:oe.status,null==oe?void 0:oe.type]),i((()=>{var e;!G.current||"text/html"!==(null==oe?void 0:oe.type)&&"application/vnd.pxe.react"!==(null==oe?void 0:oe.type)||null===(e=G.current.contentWindow)||void 0===e||e.postMessage({type:"text/html"===oe.type?"HTML_CODE":"REACT_CODE",content:oe.content},S)}),[null==oe?void 0:oe.content,null==oe?void 0:oe.type]);const ae=()=>{oe&&_()},ie=e=>{if(!oe)return;let o={mimeType:"text/plain",extension:".txt"};switch(e){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"image/svg+xml":case"application/vnd.pxe.mermaid":o={mimeType:"image/svg+xml",extension:".svg"};break;case"application/vnd.pxe.code":o={mimeType:`application/${oe.programmingLanguage||"text"};charset=utf-8`,extension:`.${oe.programmingLanguage||"txt"}`};break;case"application/vnd.pxe.react":o={mimeType:"text/typescript",extension:".tsx"};break;default:o={mimeType:"text/plain",extension:".txt"}}let t=null;if("application/vnd.pxe.mermaid"===oe.type&&X.current){const e=X.current.querySelector("svg");e&&(t=(new XMLSerializer).serializeToString(e))}const n=new Blob([null!=t?t:oe.content],{type:o.mimeType}),r=URL.createObjectURL(n);try{const e=document.createElement("a");e.href=r,e.download=`${oe.title}${o.extension}`,e.style.display="none",document.body.appendChild(e),e.click(),document.body.removeChild(e)}finally{URL.revokeObjectURL(r)}};return oe?o("div",Object.assign({className:A("pxe-artifact-renderer flex flex-col","inline"===D.type&&!re&&"min-h-[320px] mb-6",D.className),style:Object.assign(Object.assign({backgroundColor:ee.secondary,color:ee.secondaryText},"auto"!==z&&{borderRadius:Z.cornerRadius}),D.style)},{children:[o("div",Object.assign({className:"flex items-center gap-6 justify-between p-4 shadow-sm"},{children:[o("div",Object.assign({className:"pxe-artifact-create-header flex items-center gap-4 truncate"},{children:[(re||!z.startsWith("inline"))&&t(O,{type:oe.type,view:V,colors:ee,onChange:q}),t("p",Object.assign({className:"font-semilight truncate text-xl"},{children:oe.title}))]})),o("div",Object.assign({className:"flex items-center gap-3"},{children:[(re||!z.startsWith("inline"))&&t(F,Object.assign({variant:"anchor",className:"px-3 py-1.5 shrink-0",data:oe,colors:ee,onDownload:ie,onSaveAsPDF:ae},{children:t("span",Object.assign({className:"shrink-0 font-semibold text-sm select-none"},{children:(null==I?void 0:I["save-as"])||"Save as"}))})),t("button",Object.assign({style:{color:ee.secondaryText},onClick:()=>{"inline"!==D.type||!D.artifact||re?$(null):$({id:D.artifact.id,version:D.artifact.version})}},{children:"inline"===D.type?t(re?b:h,{className:"w-6 h-6 shrink-0"}):t(x,{className:"w-6 h-6 shrink-0"})}))]}))]})),t("div",Object.assign({className:"flex flex-col flex-grow @container/pickaxe-artifact"},{children:o(w,Object.assign({ref:J,innerClassName:"flex-grow w-full"},{children:["render"===V&&"application/vnd.pxe.code"!==oe.type?t("div",Object.assign({ref:U,className:A("p-4 pb-6 flex-grow flex flex-col","application/vnd.pxe.react"===oe.type&&"p-0","text/html"===oe.type&&"p-0","text/csv"===oe.type&&"p-0")},{children:"text/markdown"===oe.type||"text/csv"===oe.type||"image/svg+xml"===oe.type?t(u,Object.assign({theme:Z.theme,colors:ee},{children:t(g,{value:null!=te?te:oe.content,className:A("px-6 @[767px]/pickaxe-artifact:px-11 mx-auto w-full","text/csv"===oe.type&&"px-4 @[767px]/pickaxe-artifact:px-4 mx-0"),style:{flex:1}})})):"application/vnd.pxe.mermaid"===oe.type?t(j,{ref:X,id:`mermaid-${oe.id}-${oe.version}`,data:oe.content}):"text/html"===oe.type||"application/vnd.pxe.react"===oe.type?t("iframe",Object.assign({ref:G,title:oe.title,src:`${S}/${"text/html"===oe.type?"html":"react"}?theme=${ne?"dark":"light"}`,style:{width:"100%",flex:1,border:"none",backgroundColor:null==ee?void 0:ee.secondary},loading:"lazy",allow:"fullscreen; camera; microphone; gyroscope; accelerometer; geolocation; clipboard-write; autoplay",sandbox:"allow-scripts allow-same-origin allow-forms allow-downloads allow-popups-to-escape-sandbox allow-pointer-lock allow-popups allow-modals allow-orientation-lock allow-presentation",onLoad:e=>{const o=e.target;setTimeout((()=>{var e;try{null===(e=o.contentWindow)||void 0===e||e.postMessage({type:"text/html"===oe.type?"HTML_CODE":"REACT_CODE",content:oe.content},S)}catch(e){console.error("Error sending message to iframe:",e)}}),100),Q()}},{children:"Iframe is not supported, please view this artifact in a browser that supports it."})):null})):t(f,Object.assign({PreTag:"div",language:"text/markdown"===oe.type?"markdown":"text/html"===oe.type||"image/svg+xml"===oe.type?"xml":"application/vnd.pxe.react"===oe.type?"typescript":oe.programmingLanguage,showLineNumbers:!0,customStyle:{margin:0,flex:1},style:Object.assign({'code[class*="language-"]':Object.assign(Object.assign({color:null==ee?void 0:ee.secondaryText},ne&&{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==ee?void 0:ee.secondaryText},ne&&{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",background:null==ee?void 0:ee.secondary}),':not(pre) > code[class*="language-"]':{background:null==ee?void 0:ee.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==ee?void 0:ee.secondaryText,fontWeight:"bold"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}},!ne&&{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==ee?void 0:ee.secondaryText,fontWeight:"bold"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}})},{children:oe.content})),t(y,{})]}))})),"inline"===D.type&&!re&&o("div",Object.assign({className:"flex items-center gap-4 p-4 pt-6"},{children:[t(k,Object.assign({id:`artifact-copy-${oe.id}-${oe.version}`,tip:(null==I?void 0:I.copy)||"Copy",style:{padding:"0.25rem 0.5rem",backgroundColor:ee.secondary,color:ee.secondaryText,fontSize:"12px"},align:"bottom"},{children:t(C,{color:ee.secondaryText,text:oe.content,className:"opacity-100",iconClassName:"w-5 h-5"})})),t(k,Object.assign({id:`artifact-save-${oe.id}-${oe.version}`,tip:(null==I?void 0:I.save)||"Save",style:{padding:"0.25rem 0.5rem",backgroundColor:ee.secondary,color:ee.secondaryText,fontSize:"12px"},align:"bottom"},{children:t(F,Object.assign({data:oe,colors:ee,onDownload:ie,onSaveAsPDF:ae},{children:t("button",Object.assign({style:{color:ee.secondaryText}},{children:t(v,{className:"w-5 h-5 shrink-0"})}))}))}))]}))]})):null};export{D as default};
1
+ import{__awaiter as e}from"../../../../../_virtual/_tslib.js";import{jsxs as o,jsx as t}from"react/jsx-runtime";import{useState as n,useRef as r,useMemo as i,useEffect as a}from"react";import{useArtifactContext as l}from"../hooks/useArtifactContext.js";import{usePickaxeContext as c}from"../../../../../hooks/pickaxe/usePickaxeContext.js";import{useScroll as s}from"../../Scroll/hooks/useScroll.js";import{useArtifact as d}from"../hooks/useArtifact.js";import{useReactToPrint as p}from"react-to-print";import{PickaxeMarkdown as m}from"../../../common/PickaxeMarkdown/index.js";import{PickaxeMarkdownRenderer as u}from"../../../common/PickaxeMarkdown/Renderer.js";import{Prism as g}from"react-syntax-highlighter";import v from"../../Scroll/ScrollLockView.js";import y from"../../../../Icons/x.svg.js";import f from"../../../../Icons/save.svg.js";import x from"../../../../Icons/expand.svg.js";import h from"../../../../Icons/shrink.svg.js";import b from"../../../common/PickaxeCopyButton.js";import C from"../../../../Core/ScrollArea.js";import w from"../../../../Core/TipContainer.js";import k from"../MermaidRenderer.js";import j from"./SaveMenu.js";import F from"./ViewOptions.js";import T from"csv-to-markdown-table";import O from"../../../../../common/cn.js";const A="development"===process.env.NODE_ENV?"http://localhost:3007":"https://user-content.pickaxe.co",S=S=>{var D,E,N,B;const{artifacts:L,currentPopupType:z,currentArtifact:M,setCurrentArtifact:R}=l(),{onLoadArtifact:$}=d(),{styles:W,colors:H,translations:P}=c(),[I,_]=n("code"),U=r(),V=r(null),q=r(null),X=p({contentRef:U}),{scrollContainerRef:G,scrollStartSession:J,scrollToBottom:K,scrollEndSession:Q}=s({auto:"code"===I}),Y=null!==(E=null===(D=S.styling)||void 0===D?void 0:D.styles)&&void 0!==E?E:W,Z=null!==(B=null===(N=S.styling)||void 0===N?void 0:N.colors)&&void 0!==B?B:H,ee=i((()=>{var e,o,t,n,r;if(!S.artifact&&!M)return null;const i=null!==(o=null===(e=S.artifact)||void 0===e?void 0:e.id)&&void 0!==o?o:null==M?void 0:M.id,a=null!==(n=null===(t=S.artifact)||void 0===t?void 0:t.version)&&void 0!==n?n:null==M?void 0:M.version;return null!==(r=L.find((e=>e.id===i&&e.version===a)))&&void 0!==r?r:null}),[M,L,S.artifact]),oe=i((()=>ee&&"text/csv"===ee.type?T(ee.content,",",!0):null),[ee]),te=i((()=>(Z.secondaryText||"").toLowerCase().startsWith("#ffffff")),[null==Z?void 0:Z.secondaryText]),ne=i((()=>{const e=S.artifact&&(null==M?void 0:M.id)===S.artifact.id&&(null==M?void 0:M.version)===S.artifact.version;return"inline"===S.type&&("inline-form"===z?!!M:e)}),[M,z,S.type,S.artifact]);a((()=>{e(void 0,void 0,void 0,(function*(){"inline"===S.type&&S.artifact&&(L.some((e=>S.artifact&&e.id===S.artifact.id&&e.version===S.artifact.version))||$({id:S.artifact.id,version:S.artifact.version}))}))}),[L,S.type,S.artifact]),a((()=>{if("application/vnd.pxe.code"===(null==ee?void 0:ee.type)&&_("code"),"finished"!==(null==ee?void 0:ee.status))return _("code"),J(),void K();Q(),"application/vnd.pxe.code"!==ee.type&&_("render")}),[null==ee?void 0:ee.status,null==ee?void 0:ee.type]),a((()=>{var e;!q.current||"text/html"!==(null==ee?void 0:ee.type)&&"application/vnd.pxe.react"!==(null==ee?void 0:ee.type)||null===(e=q.current.contentWindow)||void 0===e||e.postMessage({type:"text/html"===ee.type?"HTML_CODE":"REACT_CODE",content:ee.content},A)}),[null==ee?void 0:ee.content,null==ee?void 0:ee.type]);const re=()=>e(void 0,void 0,void 0,(function*(){if(!ee)return;const e=I;"code"===e&&(_("render"),yield new Promise((e=>setTimeout(e,50)))),X(),"code"===e&&_(e)})),ie=o=>e(void 0,void 0,void 0,(function*(){var e;if(!ee)return;let t={mimeType:"text/plain",extension:".txt"};switch(o){case"text/markdown":t={mimeType:"text/markdown",extension:".md"};break;case"text/html":t={mimeType:"text/html",extension:".html"};break;case"text/csv":t={mimeType:"text/csv",extension:".csv"};break;case"image/svg+xml":case"application/vnd.pxe.mermaid":t={mimeType:"image/svg+xml",extension:".svg"};break;case"application/vnd.pxe.code":t={mimeType:`application/${ee.programmingLanguage||"text"};charset=utf-8`,extension:`.${ee.programmingLanguage||"txt"}`};break;case"application/vnd.pxe.react":t={mimeType:"text/typescript",extension:".tsx"};break;default:t={mimeType:"text/plain",extension:".txt"}}let n=null;if("application/vnd.pxe.mermaid"===ee.type){const o=I;"code"===o&&(_("render"),yield new Promise((e=>setTimeout(e,50))));const t=null===(e=V.current)||void 0===e?void 0:e.querySelector("svg");t&&(n=(new XMLSerializer).serializeToString(t)),"code"===o&&_(o)}const r=new Blob([null!=n?n:ee.content],{type:t.mimeType}),i=URL.createObjectURL(r);try{const e=document.createElement("a");e.href=i,e.download=`${ee.title}${t.extension}`,e.style.display="none",document.body.appendChild(e),e.click(),document.body.removeChild(e)}finally{URL.revokeObjectURL(i)}}));return ee?o("div",Object.assign({className:O("pxe-artifact-renderer flex flex-col","inline"===S.type&&!ne&&"min-h-[320px] mb-6",S.className),style:Object.assign(Object.assign({backgroundColor:Z.secondary,color:Z.secondaryText},"auto"!==z&&{borderRadius:Y.cornerRadius}),S.style)},{children:[o("div",Object.assign({className:"flex items-center gap-6 justify-between p-4 shadow-sm"},{children:[o("div",Object.assign({className:"pxe-artifact-create-header flex items-center gap-4 truncate"},{children:[(ne||!z.startsWith("inline"))&&t(F,{type:ee.type,view:I,colors:Z,onChange:_}),t("p",Object.assign({className:"font-semilight truncate text-xl"},{children:ee.title}))]})),o("div",Object.assign({className:"flex items-center gap-3"},{children:[(ne||!z.startsWith("inline"))&&t(j,Object.assign({variant:"anchor",className:"px-3 py-1.5 shrink-0",data:ee,colors:Z,onDownload:ie,onSaveAsPDF:re},{children:t("span",Object.assign({className:"shrink-0 font-semibold text-sm select-none"},{children:(null==P?void 0:P["save-as"])||"Save as"}))})),t("button",Object.assign({style:{color:Z.secondaryText},onClick:()=>{"inline"!==S.type||!S.artifact||ne?R(null):R({id:S.artifact.id,version:S.artifact.version})}},{children:"inline"===S.type?t(ne?h:x,{className:"w-6 h-6 shrink-0"}):t(y,{className:"w-6 h-6 shrink-0"})}))]}))]})),t("div",Object.assign({className:"flex flex-col flex-grow @container/pickaxe-artifact"},{children:o(C,Object.assign({ref:G,innerClassName:"flex-grow w-full"},{children:["render"===I&&"application/vnd.pxe.code"!==ee.type?t("div",Object.assign({ref:U,className:O("p-4 pb-6 flex-grow flex flex-col","application/vnd.pxe.react"===ee.type&&"p-0","text/html"===ee.type&&"p-0","text/csv"===ee.type&&"p-0")},{children:"text/markdown"===ee.type||"text/csv"===ee.type||"image/svg+xml"===ee.type?t(m,Object.assign({theme:Y.theme,colors:Z},{children:t(u,{value:null!=oe?oe:ee.content,className:O("px-6 @[767px]/pickaxe-artifact:px-11 mx-auto w-full","text/csv"===ee.type&&"px-4 @[767px]/pickaxe-artifact:px-4 mx-0"),style:{flex:1}})})):"application/vnd.pxe.mermaid"===ee.type?t(k,{ref:V,id:`mermaid-${ee.id}-${ee.version}`,data:ee.content}):"text/html"===ee.type||"application/vnd.pxe.react"===ee.type?t("iframe",Object.assign({ref:q,title:ee.title,src:`${A}/${"text/html"===ee.type?"html":"react"}?theme=${te?"dark":"light"}`,style:{width:"100%",flex:1,border:"none",backgroundColor:null==Z?void 0:Z.secondary},loading:"lazy",allow:"fullscreen; camera; microphone; gyroscope; accelerometer; geolocation; clipboard-write; autoplay",sandbox:"allow-scripts allow-same-origin allow-forms allow-downloads allow-popups-to-escape-sandbox allow-pointer-lock allow-popups allow-modals allow-orientation-lock allow-presentation",onLoad:e=>{const o=e.target;setTimeout((()=>{var e;try{null===(e=o.contentWindow)||void 0===e||e.postMessage({type:"text/html"===ee.type?"HTML_CODE":"REACT_CODE",content:ee.content},A)}catch(e){console.error("Error sending message to iframe:",e)}}),100),K()}},{children:"Iframe is not supported, please view this artifact in a browser that supports it."})):null})):t(g,Object.assign({PreTag:"div",language:"text/markdown"===ee.type?"markdown":"text/html"===ee.type||"image/svg+xml"===ee.type?"xml":"application/vnd.pxe.react"===ee.type?"typescript":ee.programmingLanguage,showLineNumbers:!0,customStyle:{margin:0,flex:1},style:Object.assign({'code[class*="language-"]':Object.assign(Object.assign({color:null==Z?void 0:Z.secondaryText},te&&{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==Z?void 0:Z.secondaryText},te&&{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==Z?void 0:Z.secondary}),':not(pre) > code[class*="language-"]':{background:null==Z?void 0:Z.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==Z?void 0:Z.secondaryText,fontWeight:"bold"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}},!te&&{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==Z?void 0:Z.secondaryText,fontWeight:"bold"},bold:{fontWeight:"bold"},italic:{fontStyle:"italic"}})},{children:ee.content})),t(v,{})]}))})),"inline"===S.type&&!ne&&o("div",Object.assign({className:"flex items-center gap-4 p-4 pt-6"},{children:[t(w,Object.assign({id:`artifact-copy-${ee.id}-${ee.version}`,tip:(null==P?void 0:P.copy)||"Copy",style:{padding:"0.25rem 0.5rem",backgroundColor:Z.secondary,color:Z.secondaryText,fontSize:"12px"},align:"bottom"},{children:t(b,{color:Z.secondaryText,text:ee.content,className:"opacity-100",iconClassName:"w-5 h-5"})})),t(w,Object.assign({id:`artifact-save-${ee.id}-${ee.version}`,tip:(null==P?void 0:P.save)||"Save",style:{padding:"0.25rem 0.5rem",backgroundColor:Z.secondary,color:Z.secondaryText,fontSize:"12px"},align:"bottom"},{children:t(j,Object.assign({data:ee,colors:Z,onDownload:ie,onSaveAsPDF:re},{children:t("button",Object.assign({style:{color:Z.secondaryText}},{children:t(f,{className:"w-5 h-5 shrink-0"})}))}))}))]}))]})):null};export{S as default};
@@ -1 +1 @@
1
- import{jsxs as e,jsx as s}from"react/jsx-runtime";import{useMemo as a}from"react";import{usePickaxeContext as t}from"../../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as i}from"../../../../hooks/pickaxe/useResponseContext.js";import{useDimensionContext as o}from"../../../../hooks/pickaxe/useDimensionContext.js";import{useScrollContext as l}from"../../Addons/Scroll/hooks/useScrollContext.js";import{useStyleFontSize as r}from"../../../../hooks/studio/useStyleFontSize.js";import{useConversation as n}from"../../../../hooks/pickaxe/useConversation.js";import{useArtifactContext as c}from"../../Addons/Artifact/hooks/useArtifactContext.js";import m from"../../../Core/ErrorAlert.js";import d from"../../common/PickaxeHead.js";import p from"../../common/PickaxeCompactHead.js";import f from"../../common/PickaxeUpgradeCard.js";import x from"../../common/PickaxeIcon.js";import u from"../../common/PickaxeBranding.js";import h from"../../common/PickaxeSkeleton.js";import g from"../../Addons/Scroll/ScrollLockView.js";import j from"../../Addons/Artifact/Renderer/index.js";import v from"./Message.js";import w from"../../../../common/cn.js";const N=({hideInfo:N,isInputFocused:b})=>{var y;const k=n(),C=r(),{pickaxe:O,colors:A,misc:P,isNewChat:S,isRtl:I,isEmbed:E,setChatId:L}=t(),{scrollContainerRef:H}=l(),{messages:R,status:$,limitData:z,error:D}=i(),{height:T}=o(),{currentArtifact:F,chatPopupType:B,currentPopupType:M}=c(),U=a((()=>!!k.data&&!(k.data.messages.length<=1)),[k.data]),V=a((()=>!N&&k.isSuccess&&S&&!U),[N,k.isSuccess,S,U]),W=a((()=>{var e,s;return!!R.length&&!(null!==(s=null===(e=null==R?void 0:R[R.length-1])||void 0===e?void 0:e.content)&&void 0!==s?s:"").trim()}),[R]);return e("div",Object.assign({ref:H,className:"flex w-full flex-col items-center overflow-y-auto mb-12 pb-8 scrollbar scrollbar-thin",style:{height:`calc(${T}px - 74px)`}},{children:[!!F&&"inline"===M&&s("div",Object.assign({className:w("absolute top-0 z-10 w-full px-4 py-2",B),style:{height:`calc(${T}px - 80px)`}},{children:s(j,{type:"inline",className:"pxe-artifact-inline h-full shadow",artifact:{id:F.id,version:F.version}})})),e("div",Object.assign({className:"relative flex flex-col items-center flex-grow w-full max-w-[800px] px-4"},{children:[(V||!E)&&!P.isWhiteLabel&&s(u,{className:w("absolute top-4 right-4",!V&&!E&&"top-2"),animateHover:!0}),s(d,{className:w("opacity-0 mt-[0%] transition-all duration-500 ease-in-out max-h-0 overflow-hidden max-w-[500px]",V&&"opacity-100 mt-[10%] max-h-[100%]"),iconClassName:"duration-300 hover:opacity-90",maxDescriptionChars:500,onIconClick:()=>L("")}),E&&!k.isLoading&&s(p,{className:w("opacity-0 transition-all duration-500 ease-in-out h-0 w-full",!V&&"opacity-100 h-[56px]"),iconClassName:"duration-300 hover:opacity-90",onIconClick:()=>L("")}),s("div",Object.assign({className:w("flex flex-col mt-6 transition-all duration-300 ease-in-out w-full",E&&!k.isLoading&&!V&&"mt-0")},{children:k.isLoading&&!(null==O?void 0:O.enablechatresponses)?e("div",Object.assign({className:"grid w-full max-w-[800px] grid-cols-1 gap-y-6 px-6 pt-10"},{children:[S&&e("div",Object.assign({className:"flex flex-col items-center w-full"},{children:[s(h,{className:"w-[72px] h-[72px]"}),s(h,{className:"h-[20px] mt-6 w-full"}),s(h,{className:"h-[20px] mt-2 w-full"}),s(h,{className:"h-[20px] mt-2 w-full max-w-[400px]"})]})),s(h,{className:"h-10 w-[70%] animate-pulse justify-self-end rounded"}),s(h,{className:"h-[150px] w-[70%] animate-pulse rounded"}),s(h,{className:"h-10 w-[50%] animate-pulse justify-self-end rounded"})]})):k.isError?s("div",Object.assign({className:"flex w-full justify-center"},{children:e("p",Object.assign({className:w(C.b2,"text-center font-semibold")},{children:["Something went wrong. Please try again, or"," ",s("a",Object.assign({href:"mailto:info@pickaxeproject.com?subject=Help",target:"_blank",rel:"noreferrer"},{children:"contact us"}))," ","for help."]}))})):k.data?e("div",Object.assign({className:"flex flex-col w-full"},{children:[e("div",Object.assign({className:"grid grid-cols-1 gap-y-6 w-full"},{children:[k.data.messages.map(((e,a)=>s(v,Object.assign({index:a,message:e},0===a&&{isIntroExpand:b}),a))),R.map(((e,a)=>s(v,{index:k.data.messages.length+a,message:e},a))),"fetching"===$||W?s("div",Object.assign({className:w("flex w-full",I?"justify-end":"justify-start")},{children:s("div",Object.assign({className:"flex flex-col"},{children:e("div",Object.assign({className:w("flex gap-x-3",I&&"flex-row-reverse")},{children:["NONE"!==(null==O?void 0:O.chaticon)&&s(x,{src:null!==(y=null==O?void 0:O.chaticon)&&void 0!==y?y:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/chaticons/${null==O?void 0:O.formid}.png`,alt:`${null==O?void 0:O.formtitle}'s Chat Icon`,width:24,height:24,className:"my-3 h-6 w-6",textColor:A.text}),s("div",Object.assign({className:"flex items-center gap-x-2 rounded px-2"},{children:Array.from({length:3}).map(((e,a)=>s("div",{className:w("h-1.5 w-1.5 animate-dot rounded-full",1===a&&"animate-dot-down"),style:{backgroundColor:A.secondaryText}},a)))}))]}))}))})):z?s("div",Object.assign({className:"flex max-w-[80%] items-center gap-x-3"},{children:s(f,{})})):D?s("div",Object.assign({className:w("flex items-center gap-x-3",I?"justify-end":"justify-start")},{children:s(m,{error:D})})):null]})),s(g,{})]})):null}))]}))]}))};export{N as default};
1
+ import{jsxs as e,jsx as s}from"react/jsx-runtime";import{useMemo as a}from"react";import{usePickaxeContext as t}from"../../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as i}from"../../../../hooks/pickaxe/useResponseContext.js";import{useDimensionContext as o}from"../../../../hooks/pickaxe/useDimensionContext.js";import{useScrollContext as l}from"../../Addons/Scroll/hooks/useScrollContext.js";import{useStyleFontSize as r}from"../../../../hooks/studio/useStyleFontSize.js";import{useConversation as n}from"../../../../hooks/pickaxe/useConversation.js";import{useArtifactContext as c}from"../../Addons/Artifact/hooks/useArtifactContext.js";import{AnimatePresence as m,motion as d}from"framer-motion";import p from"../../../Core/ErrorAlert.js";import f from"../../common/PickaxeHead.js";import x from"../../common/PickaxeCompactHead.js";import u from"../../common/PickaxeUpgradeCard.js";import h from"../../common/PickaxeIcon.js";import g from"../../common/PickaxeBranding.js";import j from"../../common/PickaxeSkeleton.js";import v from"../../Addons/Scroll/ScrollLockView.js";import w from"../../Addons/Artifact/Renderer/index.js";import y from"./Message.js";import N from"../../../../common/cn.js";const b=({hideInfo:b,isInputFocused:k})=>{var C;const O=n(),A=r(),{pickaxe:P,colors:S,misc:I,isNewChat:E,isRtl:L,isEmbed:H,setChatId:R}=t(),{scrollContainerRef:$}=l(),{messages:z,status:D,limitData:T,error:F}=i(),{height:B}=o(),{currentArtifact:M,chatPopupType:U,currentPopupType:V}=c(),W=a((()=>!!O.data&&!(O.data.messages.length<=1)),[O.data]),_=a((()=>!b&&O.isSuccess&&E&&!W),[b,O.isSuccess,E,W]),q=a((()=>{var e,s;return!!z.length&&!(null!==(s=null===(e=null==z?void 0:z[z.length-1])||void 0===e?void 0:e.content)&&void 0!==s?s:"").trim()}),[z]);return e("div",Object.assign({ref:$,className:"flex w-full flex-col items-center overflow-y-auto mb-12 pb-8 scrollbar scrollbar-thin",style:{height:`calc(${B}px - 74px)`}},{children:[s(m,{children:!!M&&"inline"===V&&s(d.div,Object.assign({className:N("absolute top-0 z-10 w-full px-4 py-2",U),style:{height:`calc(${B}px - 80px)`},initial:{opacity:0,y:-20},animate:{opacity:1,y:0},exit:{opacity:0,y:-20},transition:{duration:.2,ease:"easeOut"}},{children:s(w,{type:"inline",className:"pxe-artifact-inline h-full shadow",artifact:{id:M.id,version:M.version}})}))}),e("div",Object.assign({className:"relative flex flex-col items-center flex-grow w-full max-w-[800px] px-4"},{children:[(_||!H)&&!I.isWhiteLabel&&s(g,{className:N("absolute top-4 right-4",!_&&!H&&"top-2"),animateHover:!0}),s(f,{className:N("opacity-0 mt-[0%] transition-all duration-500 ease-in-out max-h-0 overflow-hidden max-w-[500px]",_&&"opacity-100 mt-[10%] max-h-[100%]"),iconClassName:"duration-300 hover:opacity-90",maxDescriptionChars:500,onIconClick:()=>R("")}),H&&!O.isLoading&&s(x,{className:N("opacity-0 transition-all duration-500 ease-in-out h-0 w-full",!_&&"opacity-100 h-[56px]"),iconClassName:"duration-300 hover:opacity-90",onIconClick:()=>R("")}),s("div",Object.assign({className:N("flex flex-col mt-6 transition-all duration-300 ease-in-out w-full",H&&!O.isLoading&&!_&&"mt-0")},{children:O.isLoading&&!(null==P?void 0:P.enablechatresponses)?e("div",Object.assign({className:"grid w-full max-w-[800px] grid-cols-1 gap-y-6 px-6 pt-10"},{children:[E&&e("div",Object.assign({className:"flex flex-col items-center w-full"},{children:[s(j,{className:"w-[72px] h-[72px]"}),s(j,{className:"h-[20px] mt-6 w-full"}),s(j,{className:"h-[20px] mt-2 w-full"}),s(j,{className:"h-[20px] mt-2 w-full max-w-[400px]"})]})),s(j,{className:"h-10 w-[70%] animate-pulse justify-self-end rounded"}),s(j,{className:"h-[150px] w-[70%] animate-pulse rounded"}),s(j,{className:"h-10 w-[50%] animate-pulse justify-self-end rounded"})]})):O.isError?s("div",Object.assign({className:"flex w-full justify-center"},{children:e("p",Object.assign({className:N(A.b2,"text-center font-semibold")},{children:["Something went wrong. Please try again, or"," ",s("a",Object.assign({href:"mailto:info@pickaxeproject.com?subject=Help",target:"_blank",rel:"noreferrer"},{children:"contact us"}))," ","for help."]}))})):O.data?e("div",Object.assign({className:"flex flex-col w-full"},{children:[e("div",Object.assign({className:"grid grid-cols-1 gap-y-6 w-full"},{children:[O.data.messages.map(((e,a)=>s(y,Object.assign({index:a,message:e},0===a&&{isIntroExpand:k}),a))),z.map(((e,a)=>s(y,{index:O.data.messages.length+a,message:e},a))),"fetching"===D||q?s("div",Object.assign({className:N("flex w-full",L?"justify-end":"justify-start")},{children:s("div",Object.assign({className:"flex flex-col"},{children:e("div",Object.assign({className:N("flex gap-x-3",L&&"flex-row-reverse")},{children:["NONE"!==(null==P?void 0:P.chaticon)&&s(h,{src:null!==(C=null==P?void 0:P.chaticon)&&void 0!==C?C:`https://prod-pickaxe-assets.s3.us-west-2.amazonaws.com/chaticons/${null==P?void 0:P.formid}.png`,alt:`${null==P?void 0:P.formtitle}'s Chat Icon`,width:24,height:24,className:"my-3 h-6 w-6",textColor:S.text}),s("div",Object.assign({className:"flex items-center gap-x-2 rounded px-2"},{children:Array.from({length:3}).map(((e,a)=>s("div",{className:N("h-1.5 w-1.5 animate-dot rounded-full",1===a&&"animate-dot-down"),style:{backgroundColor:S.secondaryText}},a)))}))]}))}))})):T?s("div",Object.assign({className:"flex max-w-[80%] items-center gap-x-3"},{children:s(u,{})})):F?s("div",Object.assign({className:N("flex items-center gap-x-3",L?"justify-end":"justify-start")},{children:s(p,{error:F})})):null]})),s(v,{})]})):null}))]}))]}))};export{b as default};
@@ -1 +1 @@
1
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import{useMemo as r,useEffect as i}from"react";import{usePickaxeMarkdownContext as a}from"../../hooks/usePickaxeMarkdownContext.js";import{useArtifactContext as n}from"../../../../Addons/Artifact/hooks/useArtifactContext.js";import{motion as o}from"framer-motion";import s from"../../../../../Icons/spinner-lines.svg.js";import c from"../../../../Addons/Artifact/Renderer/index.js";const d=({node:i})=>{const{theme:d,colors:l,styles:p,onArtifactClick:m}=a(),{artifacts:f,currentPopupType:u}=n(),x=r((()=>{const{dataId:e,dataCommand:t,dataTitle:r,dataType:a,dataVersion:n}=(null==i?void 0:i.properties)||{};return e?{id:e,command:t||"create",title:r||"Untitled Artifact",type:a||"text/markdown",version:n?parseInt(n,10):1}:null}),[]),v=r((()=>{var e,t;if(!x)return null;const{command:r,type:i,version:a}=x;let n=`${null!==(e={create:"Created",update:"Updated",rewrite:"Rewrote"}[r])&&void 0!==e?e:"Created"} ${null!==(t={"text/markdown":"Markdown","text/html":"HTML","text/csv":"CSV","image/svg+xml":"SVG","application/vnd.pxe.code":"Code","application/vnd.pxe.mermaid":"Diagram","application/vnd.pxe.react":"React Component"}[i])&&void 0!==t?t:"Artifact"}`;return a>1&&(n+=` (v${a})`),n}),[x]),h=r((()=>{if(!x)return"finished";const e=f.find((e=>e.id===x.id&&e.version===x.version));return e?e.status:"finished"}),[f,x]);return x?u.startsWith("inline")&&"finished"===h?e(c,{type:"inline",className:"pxe-artifact-inline",styling:{colors:l,styles:p},artifact:{id:x.id,version:x.version}}):t(o.div,Object.assign({className:"pxe-artifact-create-container p-4 flex items-center gap-8 flex-wrap justify-between mb-4 select-none",style:Object.assign({borderColor:"dark"===d?"#444444":"#CCCCCC",backgroundColor:l.secondary+"80",color:l.secondaryText,borderRadius:p.cornerRadius},!!m&&{cursor:"pointer"}),initial:{opacity:0,x:10,scale:.95},animate:{opacity:1,x:0,scale:1},transition:{duration:.5,ease:"easeOut",staggerChildren:.1},whileHover:{borderColor:"dark"===d?"#666666":"#AAAAAA",backgroundColor:l.secondary}},m&&{onClick:()=>m({id:x.id,version:x.version})},{children:[t("div",Object.assign({className:"pxe-artifact-create-header flex flex-col gap-2 text-[10pt]"},{children:[e("p",Object.assign({className:"font-semibold"},{children:x.title})),e("p",Object.assign({className:"opacity-90"},{children:v}))]})),"finished"!==h&&e("div",{children:e(s,{className:"pxe-spin w-5 h-5 shrink-0"})})]})):null},l=({node:t,children:r})=>{const{setArtifacts:a}=n();return i((()=>{if(!t||!t.properties)return;const e=t.properties.dataId;e&&a((t=>t.map((t=>t.id===e?Object.assign(Object.assign({},t),{status:"error"}):t))))}),[]),e("div",Object.assign({className:"pxe-red pxe-artifact-error"},{children:r}))};export{d as Artifact,l as ArtifactError};
1
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import{useMemo as r,useEffect as i}from"react";import{usePickaxeMarkdownContext as a}from"../../hooks/usePickaxeMarkdownContext.js";import{useArtifactContext as n}from"../../../../Addons/Artifact/hooks/useArtifactContext.js";import{motion as o}from"framer-motion";import s from"../../../../../Icons/spinner-lines.svg.js";import c from"../../../../Addons/Artifact/Renderer/index.js";const d=({node:i})=>{const{theme:d,colors:l,styles:p,onArtifactClick:m}=a(),{artifacts:f,currentPopupType:u,currentArtifact:x}=n(),v=r((()=>{const{dataId:e,dataCommand:t,dataTitle:r,dataType:a,dataVersion:n}=(null==i?void 0:i.properties)||{};return e?{id:e,command:t||"create",title:r||"Untitled Artifact",type:a||"text/markdown",version:n?parseInt(n,10):1}:null}),[]),h=r((()=>{var e,t;if(!v)return null;const{command:r,type:i,version:a}=v;let n=`${null!==(e={create:"Created",update:"Updated",rewrite:"Rewrote"}[r])&&void 0!==e?e:"Created"} ${null!==(t={"text/markdown":"Markdown","text/html":"HTML","text/csv":"CSV","image/svg+xml":"SVG","application/vnd.pxe.code":"Code","application/vnd.pxe.mermaid":"Diagram","application/vnd.pxe.react":"React Component"}[i])&&void 0!==t?t:"Artifact"}`;return a>1&&(n+=` (v${a})`),n}),[v]),C=r((()=>{if(!v)return"finished";const e=f.find((e=>e.id===v.id&&e.version===v.version));return e?e.status:"finished"}),[f,v]);return v?u.startsWith("inline")&&"finished"===C?x?null:e(c,{type:"inline",className:"pxe-artifact-inline",styling:{colors:l,styles:p},artifact:{id:v.id,version:v.version}}):t(o.div,Object.assign({className:"pxe-artifact-create-container p-4 flex items-center gap-8 flex-wrap justify-between mb-4 select-none",style:Object.assign({borderColor:"dark"===d?"#444444":"#CCCCCC",backgroundColor:l.secondary+"80",color:l.secondaryText,borderRadius:p.cornerRadius},!!m&&{cursor:"pointer"}),initial:{opacity:0,x:10,scale:.95},animate:{opacity:1,x:0,scale:1},transition:{duration:.5,ease:"easeOut",staggerChildren:.1},whileHover:{borderColor:"dark"===d?"#666666":"#AAAAAA",backgroundColor:l.secondary}},m&&{onClick:()=>m({id:v.id,version:v.version})},{children:[t("div",Object.assign({className:"pxe-artifact-create-header flex flex-col gap-2 text-[10pt]"},{children:[e("p",Object.assign({className:"font-semibold"},{children:v.title})),e("p",Object.assign({className:"opacity-90"},{children:h}))]})),"finished"!==C&&e("div",{children:e(s,{className:"pxe-spin w-5 h-5 shrink-0"})})]})):null},l=({node:t,children:r})=>{const{setArtifacts:a}=n();return i((()=>{if(!t||!t.properties)return;const e=t.properties.dataId;e&&a((t=>t.map((t=>t.id===e?Object.assign(Object.assign({},t),{status:"error"}):t))))}),[]),e("div",Object.assign({className:"pxe-red pxe-artifact-error"},{children:r}))};export{d as Artifact,l as ArtifactError};
@@ -1,5 +1,5 @@
1
1
  import type { PickaxeProviderStyles, PickaxeProviderColors } from "../../../Provider";
2
- import { CSSProperties } from "react";
2
+ import { type CSSProperties } from "react";
3
3
  export type ArtifactStyling = Partial<{
4
4
  styles: PickaxeProviderStyles;
5
5
  colors: PickaxeProviderColors;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pickaxeproject/react",
3
- "version": "3.3.2",
3
+ "version": "3.4.0",
4
4
  "description": "Client utility library for Pickaxe",
5
5
  "repository": {
6
6
  "type": "git",
@@ -107,7 +107,7 @@
107
107
  "react-resizable-panels": "^3.0.3",
108
108
  "react-syntax-highlighter": "^15.6.1",
109
109
  "react-textarea-autosize": "^8.5.7",
110
- "react-to-pdf": "^2.0.1",
110
+ "react-to-print": "^3.1.1",
111
111
  "react-tooltip": "^5.28.0",
112
112
  "react-virtualized-auto-sizer": "^1.0.25",
113
113
  "rehype-katex": "^7.0.1",
@@ -157,7 +157,7 @@
157
157
  "react-markdown": "^9.0.3",
158
158
  "react-syntax-highlighter": "^15.6.1",
159
159
  "react-textarea-autosize": "^8.5.7",
160
- "react-to-pdf": "^2.0.1",
160
+ "react-to-print": "^3.1.1",
161
161
  "react-tooltip": "^5.28.0",
162
162
  "react-virtualized-auto-sizer": "^1.0.25",
163
163
  "rehype-katex": "^7.0.1",