@pickaxeproject/react 3.3.1 → 3.3.3
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/Chat/History/index.js +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/src/components/Pickaxe/Addons/Artifact/Renderer/index.d.ts +1 -1
- package/dist/cjs/src/components/Pickaxe/Addons/Artifact/index.d.ts +3 -1
- package/dist/cjs/src/index.d.ts +1 -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/Chat/History/index.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/src/components/Pickaxe/Addons/Artifact/Renderer/index.d.ts +1 -1
- package/dist/esm/src/components/Pickaxe/Addons/Artifact/index.d.ts +3 -1
- package/dist/esm/src/index.d.ts +1 -0
- package/package.json +1 -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"),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"),r=require("../hooks/useArtifactContext.js"),n=require("../../../../../hooks/pickaxe/usePickaxeContext.js"),a=require("../../Scroll/hooks/useScroll.js"),i=require("../hooks/useArtifact.js"),l=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"),v=require("../../../../Core/ScrollArea.js"),y=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(l),O=k(w);const T="development"===process.env.NODE_ENV?"http://localhost:3007":"https://user-content.pickaxe.co";exports.default=w=>{var k,A,S,E;const{artifacts:D,currentPopupType:q,currentArtifact:M,setCurrentArtifact:N}=r.useArtifactContext(),{onLoadArtifact:B}=i.useArtifact(),{styles:R,colors:L,translations:z}=n.usePickaxeContext(),[P,_]=o.useState("code"),$=o.useRef(),W=o.useRef(null),H=o.useRef(null),{scrollContainerRef:I,scrollStartSession:U,scrollToBottom:V,scrollEndSession:X}=a.useScroll({auto:"code"===P}),G=null!==(A=null===(k=w.styling)||void 0===k?void 0:k.styles)&&void 0!==A?A:R,J=null!==(E=null===(S=w.styling)||void 0===S?void 0:S.colors)&&void 0!==E?E:L,K=o.useMemo((()=>{var e,t,o,r,n;if(!w.artifact&&!M)return null;const a=null!==(t=null===(e=w.artifact)||void 0===e?void 0:e.id)&&void 0!==t?t:null==M?void 0:M.id,i=null!==(r=null===(o=w.artifact)||void 0===o?void 0:o.version)&&void 0!==r?r:null==M?void 0:M.version;return null!==(n=D.find((e=>e.id===a&&e.version===i)))&&void 0!==n?n:null}),[M,D,w.artifact]),Q=o.useMemo((()=>K&&"text/csv"===K.type?O.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==M?void 0:M.id)===w.artifact.id&&(null==M?void 0:M.version)===w.artifact.version;return"inline"===w.type&&("inline-form"===q?!!M:e)}),[M,q,w.type,w.artifact]);o.useEffect((()=>{e.__awaiter(void 0,void 0,void 0,(function*(){"inline"===w.type&&w.artifact&&(D.some((e=>w.artifact&&e.id===w.artifact.id&&e.version===w.artifact.version))||B({id:w.artifact.id,version:w.artifact.version}))}))}),[D,w.type,w.artifact]),o.useEffect((()=>{if("application/vnd.pxe.code"===(null==K?void 0:K.type)&&_("code"),"finished"!==(null==K?void 0:K.status))return _("code"),U(),void V();X(),"application/vnd.pxe.code"!==K.type&&_("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},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&&(_("render"),yield new Promise((e=>setTimeout(e,50)))),yield F.default($,{filename:`${K.title}.pdf`,page:{margin:l.Margin.MEDIUM,orientation:"portrait"}}),"code"===e&&_(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 r=null;if("application/vnd.pxe.mermaid"===K.type){const t=P;"code"===t&&(_("render"),yield new Promise((e=>setTimeout(e,50))));const o=null===(e=W.current)||void 0===e?void 0:e.querySelector("svg");o&&(r=(new XMLSerializer).serializeToString(o)),"code"===t&&_(t)}const n=new Blob([null!=r?r:K.content],{type:o.mimeType}),a=URL.createObjectURL(n);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:_}),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==z?void 0:z["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(v.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:W,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:`${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(y.default,Object.assign({id:`artifact-copy-${K.id}-${K.version}`,tip:(null==z?void 0:z.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(y.default,Object.assign({id:`artifact-save-${K.id}-${K.version}`,tip:(null==z?void 0:z.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"),r=require("react"),t=require("./hooks/useArtifactContext.js"),i=require("../../../../hooks/pickaxe/usePickaxeContext.js"),l=require("../../../../hooks/core/useMediaQuery.js"),n=require("../../../Core/Modal/index.js"),s=require("../../../Core/Modal/Body.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),t=require("./hooks/useArtifactContext.js"),i=require("../../../../hooks/pickaxe/usePickaxeContext.js"),l=require("../../../../hooks/core/useMediaQuery.js"),n=require("../../../Core/Modal/index.js"),s=require("../../../Core/Modal/Body.js"),o=require("../Scroll/Provider.js"),a=require("./Renderer/index.js");exports.PickaxeArtifact=({forcedPopupType:u,panel:c,styling:d})=>{const{popupType:f,currentPopupType:x,currentArtifact:p,setCurrentPopupType:j,setCurrentArtifact:h}=t.useArtifactContext(),{pickaxe:y,chatId:m,forceMobile:g}=i.usePickaxeContext(),[q]=l.useMediaQuery("(max-width: 899px)");r.useEffect((()=>{const e=!(null==y?void 0:y.chatflag)&&!m||!m;let r=f;"auto"===r&&(e?r="inline-form":(g||q)&&(r="inline")),"inline"===f&&e&&(r="inline-form"),u&&(r=u),j(r)}),[f,g,q,null==y?void 0:y.chatflag,m,u]);const C=e.jsx(a.default,{type:"detached",className:"h-full"});return p&&"inline"!==x?e.jsx(o.ScrollProvider,{children:"auto"===x&&c?c(C):"modal"===x||"inline-form"===x?e.jsx(n.default,Object.assign({isOpen:!0,onChange:e=>{e||h(null)}},{children:e.jsx(s.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"===x?"inline":"detached",className:"flex-grow"},d&&{styling:d}))}))})):null}):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"),
|
|
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}))]}))]}))};
|
package/dist/cjs/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./components/Pickaxe/index.js"),o=require("./components/Pickaxe/Provider.js"),t=require("./components/Pickaxe/ResponseProvider.js"),r=require("./components/Pickaxe/Addons/Scroll/Provider.js"),s=require("./components/Pickaxe/common/PickaxeMarkdown/index.js"),i=require("./components/Pickaxe/common/PickaxeMarkdown/Renderer.js"),n=require("./hooks/pickaxe/useConversation.js"),x=require("./hooks/pickaxe/useHistory.js"),c=require("./hooks/pickaxe/usePickaxe.js"),a=require("./hooks/pickaxe/usePickaxeContext.js"),u=require("./hooks/pickaxe/useResponseContext.js"),p=require("./hooks/pickaxe/useDimensionContext.js"),k=require("./hooks/pickaxe/useSubmit.js"),P=require("./hooks/pickaxe/useSubmitDocument.js"),d=require("./components/EmbedPreview/Inline.js"),m=require("./components/EmbedPreview/FAB.js"),C=require("./components/EmbedPreview/Popup.js"),A=require("./components/EmbedPreview/ChatInput.js"),j=require("./components/Pickaxe/Addons/Artifact/index.js"),q=require("./components/Pickaxe/Addons/Artifact/Provider.js"),v=require("./components/Pickaxe/Addons/Artifact/hooks/useArtifactContext.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./components/Pickaxe/index.js"),o=require("./components/Pickaxe/Provider.js"),t=require("./components/Pickaxe/ResponseProvider.js"),r=require("./components/Pickaxe/Addons/Scroll/Provider.js"),s=require("./components/Pickaxe/common/PickaxeMarkdown/index.js"),i=require("./components/Pickaxe/common/PickaxeMarkdown/Renderer.js"),n=require("./hooks/pickaxe/useConversation.js"),x=require("./hooks/pickaxe/useHistory.js"),c=require("./hooks/pickaxe/usePickaxe.js"),a=require("./hooks/pickaxe/usePickaxeContext.js"),u=require("./hooks/pickaxe/useResponseContext.js"),p=require("./hooks/pickaxe/useDimensionContext.js"),k=require("./hooks/pickaxe/useSubmit.js"),P=require("./hooks/pickaxe/useSubmitDocument.js"),d=require("./components/EmbedPreview/Inline.js"),m=require("./components/EmbedPreview/FAB.js"),C=require("./components/EmbedPreview/Popup.js"),A=require("./components/EmbedPreview/ChatInput.js"),j=require("./components/Pickaxe/Addons/Artifact/index.js"),q=require("./components/Pickaxe/Addons/Artifact/Renderer/index.js"),f=require("./components/Pickaxe/Addons/Artifact/Provider.js"),v=require("./components/Pickaxe/Addons/Artifact/hooks/useArtifactContext.js"),l=require("./components/Pickaxe/Addons/Artifact/hooks/useArtifact.js");exports.Pickaxe=e.Pickaxe,exports.PickaxeContext=o.PickaxeContext,exports.PickaxeProvider=o.PickaxeProvider,exports.ResponseContext=t.ResponseContext,exports.ScrollContext=r.ScrollContext,exports.ScrollProvider=r.ScrollProvider,exports.PickaxeMarkdown=s.PickaxeMarkdown,exports.PickaxeMarkdownContext=s.PickaxeMarkdownContext,exports.PickaxeMarkdownRenderer=i.PickaxeMarkdownRenderer,exports.useConversation=n.useConversation,exports.useHistory=x.useHistory,exports.useInstantPickaxe=c.useInstantPickaxe,exports.usePickaxe=c.usePickaxe,exports.usePickaxeContext=a.usePickaxeContext,exports.useResponseContext=u.useResponseContext,exports.useDimensionContext=p.useDimensionContext,exports.useSubmit=k.useSubmit,exports.useSubmitDocument=P.useSubmitDocument,exports.Inline=d.Inline,exports.FAB=m.FAB,exports.FABButton=m.FABButton,exports.Popup=C.Popup,exports.PopupCTAButton=C.PopupCTAButton,exports.ChatInput=A.ChatInput,exports.ChatInputWrapper=A.ChatInputWrapper,exports.PickaxeArtifact=j.PickaxeArtifact,exports.PickaxeArtifactRenderer=q.default,exports.ArtifactContext=f.ArtifactContext,exports.ArtifactProvider=f.ArtifactProvider,exports.useArtifactContext=v.useArtifactContext,exports.useArtifact=l.useArtifact;
|
|
@@ -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,8 +1,10 @@
|
|
|
1
1
|
import { type ReactNode } from "react";
|
|
2
|
+
import type { ArtifactPopupType } from "./Provider";
|
|
2
3
|
import type { ArtifactStyling } from "./Renderer";
|
|
3
4
|
interface PickaxeArtifactProps {
|
|
5
|
+
forcedPopupType?: ArtifactPopupType;
|
|
4
6
|
panel?: (children: ReactNode) => ReactNode;
|
|
5
7
|
styling?: ArtifactStyling;
|
|
6
8
|
}
|
|
7
|
-
export declare const PickaxeArtifact: ({ panel, styling }: PickaxeArtifactProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
9
|
+
export declare const PickaxeArtifact: ({ forcedPopupType, panel, styling, }: PickaxeArtifactProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
8
10
|
export {};
|
package/dist/cjs/src/index.d.ts
CHANGED
|
@@ -18,6 +18,7 @@ export * from "./components/EmbedPreview/FAB";
|
|
|
18
18
|
export * from "./components/EmbedPreview/Popup";
|
|
19
19
|
export * from "./components/EmbedPreview/ChatInput";
|
|
20
20
|
export * from "./components/Pickaxe/Addons/Artifact";
|
|
21
|
+
export { default as PickaxeArtifactRenderer } from "./components/Pickaxe/Addons/Artifact/Renderer";
|
|
21
22
|
export * from "./components/Pickaxe/Addons/Artifact/Provider";
|
|
22
23
|
export * from "./components/Pickaxe/Addons/Artifact/hooks/useArtifactContext";
|
|
23
24
|
export * from "./components/Pickaxe/Addons/Artifact/hooks/useArtifact";
|
|
@@ -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 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 y}from"react-syntax-highlighter";import f from"../../Scroll/ScrollLockView.js";import v from"../../../../Icons/x.svg.js";import x 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 T from"./ViewOptions.js";import O 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(),[_,U]=n("code"),V=r(),q=r(null),X=r(null),{scrollContainerRef:G,scrollStartSession:J,scrollToBottom:K,scrollEndSession:Q}=s({auto:"code"===_}),Y=null!==(N=null===(E=D.styling)||void 0===E?void 0:E.styles)&&void 0!==N?N:H,Z=null!==(M=null===(B=D.styling)||void 0===B?void 0:B.colors)&&void 0!==M?M:P,ee=i((()=>{var e,o,t,n,r;if(!D.artifact&&!R)return null;const i=null!==(o=null===(e=D.artifact)||void 0===e?void 0:e.id)&&void 0!==o?o:null==R?void 0:R.id,a=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===i&&e.version===a)))&&void 0!==r?r:null}),[R,L,D.artifact]),oe=i((()=>ee&&"text/csv"===ee.type?O(ee.content,",",!0):null),[ee]),te=i((()=>(Z.secondaryText||"").toLowerCase().startsWith("#ffffff")),[null==Z?void 0:Z.secondaryText]),ne=i((()=>{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]);a((()=>{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]),a((()=>{if("application/vnd.pxe.code"===(null==ee?void 0:ee.type)&&U("code"),"finished"!==(null==ee?void 0:ee.status))return U("code"),J(),void K();Q(),"application/vnd.pxe.code"!==ee.type&&U("render")}),[null==ee?void 0:ee.status,null==ee?void 0:ee.type]),a((()=>{var e;!X.current||"text/html"!==(null==ee?void 0:ee.type)&&"application/vnd.pxe.react"!==(null==ee?void 0:ee.type)||null===(e=X.current.contentWindow)||void 0===e||e.postMessage({type:"text/html"===ee.type?"HTML_CODE":"REACT_CODE",content:ee.content},S)}),[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=_;"code"===e&&(U("render"),yield new Promise((e=>setTimeout(e,50)))),yield p(V,{filename:`${ee.title}.pdf`,page:{margin:m.MEDIUM,orientation:"portrait"}}),"code"===e&&U(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=_;"code"===o&&(U("render"),yield new Promise((e=>setTimeout(e,50))));const t=null===(e=q.current)||void 0===e?void 0:e.querySelector("svg");t&&(n=(new XMLSerializer).serializeToString(t)),"code"===o&&U(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:A("pxe-artifact-renderer flex flex-col","inline"===D.type&&!ne&&"min-h-[320px] mb-6",D.className),style:Object.assign(Object.assign({backgroundColor:Z.secondary,color:Z.secondaryText},"auto"!==z&&{borderRadius:Y.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:[(ne||!z.startsWith("inline"))&&t(T,{type:ee.type,view:_,colors:Z,onChange:U}),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(F,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==I?void 0:I["save-as"])||"Save as"}))})),t("button",Object.assign({style:{color:Z.secondaryText},onClick:()=>{"inline"!==D.type||!D.artifact||ne?$(null):$({id:D.artifact.id,version:D.artifact.version})}},{children:"inline"===D.type?t(ne?b:h,{className:"w-6 h-6 shrink-0"}):t(v,{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:G,innerClassName:"flex-grow w-full"},{children:["render"===_&&"application/vnd.pxe.code"!==ee.type?t("div",Object.assign({ref:V,className:A("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(u,Object.assign({theme:Y.theme,colors:Z},{children:t(g,{value:null!=oe?oe:ee.content,className:A("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(j,{ref:q,id:`mermaid-${ee.id}-${ee.version}`,data:ee.content}):"text/html"===ee.type||"application/vnd.pxe.react"===ee.type?t("iframe",Object.assign({ref:X,title:ee.title,src:`${S}/${"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},S)}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(y,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(f,{})]}))})),"inline"===D.type&&!ne&&o("div",Object.assign({className:"flex items-center gap-4 p-4 pt-6"},{children:[t(k,Object.assign({id:`artifact-copy-${ee.id}-${ee.version}`,tip:(null==I?void 0:I.copy)||"Copy",style:{padding:"0.25rem 0.5rem",backgroundColor:Z.secondary,color:Z.secondaryText,fontSize:"12px"},align:"bottom"},{children:t(C,{color:Z.secondaryText,text:ee.content,className:"opacity-100",iconClassName:"w-5 h-5"})})),t(k,Object.assign({id:`artifact-save-${ee.id}-${ee.version}`,tip:(null==I?void 0:I.save)||"Save",style:{padding:"0.25rem 0.5rem",backgroundColor:Z.secondary,color:Z.secondaryText,fontSize:"12px"},align:"bottom"},{children:t(F,Object.assign({data:ee,colors:Z,onDownload:ie,onSaveAsPDF:re},{children:t("button",Object.assign({style:{color:Z.secondaryText}},{children:t(x,{className:"w-5 h-5 shrink-0"})}))}))}))]}))]})):null};export{D as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e}from"react/jsx-runtime";import{useEffect as o}from"react";import{useArtifactContext as r}from"./hooks/useArtifactContext.js";import{usePickaxeContext as t}from"../../../../hooks/pickaxe/usePickaxeContext.js";import{useMediaQuery as i}from"../../../../hooks/core/useMediaQuery.js";import n from"../../../Core/Modal/index.js";import l from"../../../Core/Modal/Body.js";import{ScrollProvider as s}from"../Scroll/Provider.js";import a from"./Renderer/index.js";const c=({
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{useEffect as o}from"react";import{useArtifactContext as r}from"./hooks/useArtifactContext.js";import{usePickaxeContext as t}from"../../../../hooks/pickaxe/usePickaxeContext.js";import{useMediaQuery as i}from"../../../../hooks/core/useMediaQuery.js";import n from"../../../Core/Modal/index.js";import l from"../../../Core/Modal/Body.js";import{ScrollProvider as s}from"../Scroll/Provider.js";import a from"./Renderer/index.js";const c=({forcedPopupType:c,panel:m,styling:p})=>{const{popupType:f,currentPopupType:d,currentArtifact:u,setCurrentPopupType:h,setCurrentArtifact:x}=r(),{pickaxe:j,chatId:y,forceMobile:g}=t(),[C]=i("(max-width: 899px)");o((()=>{const e=!(null==j?void 0:j.chatflag)&&!y||!y;let o=f;"auto"===o&&(e?o="inline-form":(g||C)&&(o="inline")),"inline"===f&&e&&(o="inline-form"),c&&(o=c),h(o)}),[f,g,C,null==j?void 0:j.chatflag,y,c]);const k=e(a,{type:"detached",className:"h-full"});return u&&"inline"!==d?e(s,{children:"auto"===d&&m?m(k):"modal"===d||"inline-form"===d?e(n,Object.assign({isOpen:!0,onChange:e=>{e||x(null)}},{children:e(l,Object.assign({className:"max-w-[90dvw] flex flex-col w-full",style:{minHeight:"90dvh"}},{children:e(a,Object.assign({type:"inline-form"===d?"inline":"detached",className:"flex-grow"},p&&{styling:p}))}))})):null}):null};export{c as PickaxeArtifact};
|
|
@@ -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
|
|
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};
|
package/dist/esm/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{Pickaxe}from"./components/Pickaxe/index.js";export{PickaxeContext,PickaxeProvider}from"./components/Pickaxe/Provider.js";export{ResponseContext}from"./components/Pickaxe/ResponseProvider.js";export{ScrollContext,ScrollProvider}from"./components/Pickaxe/Addons/Scroll/Provider.js";export{PickaxeMarkdown,PickaxeMarkdownContext}from"./components/Pickaxe/common/PickaxeMarkdown/index.js";export{PickaxeMarkdownRenderer}from"./components/Pickaxe/common/PickaxeMarkdown/Renderer.js";export{useConversation}from"./hooks/pickaxe/useConversation.js";export{useHistory}from"./hooks/pickaxe/useHistory.js";export{useInstantPickaxe,usePickaxe}from"./hooks/pickaxe/usePickaxe.js";export{usePickaxeContext}from"./hooks/pickaxe/usePickaxeContext.js";export{useResponseContext}from"./hooks/pickaxe/useResponseContext.js";export{useDimensionContext}from"./hooks/pickaxe/useDimensionContext.js";export{useSubmit}from"./hooks/pickaxe/useSubmit.js";export{useSubmitDocument}from"./hooks/pickaxe/useSubmitDocument.js";export{Inline}from"./components/EmbedPreview/Inline.js";export{FAB,FABButton}from"./components/EmbedPreview/FAB.js";export{Popup,PopupCTAButton}from"./components/EmbedPreview/Popup.js";export{ChatInput,ChatInputWrapper}from"./components/EmbedPreview/ChatInput.js";export{PickaxeArtifact}from"./components/Pickaxe/Addons/Artifact/index.js";export{ArtifactContext,ArtifactProvider}from"./components/Pickaxe/Addons/Artifact/Provider.js";export{useArtifactContext}from"./components/Pickaxe/Addons/Artifact/hooks/useArtifactContext.js";export{useArtifact}from"./components/Pickaxe/Addons/Artifact/hooks/useArtifact.js";
|
|
1
|
+
export{Pickaxe}from"./components/Pickaxe/index.js";export{PickaxeContext,PickaxeProvider}from"./components/Pickaxe/Provider.js";export{ResponseContext}from"./components/Pickaxe/ResponseProvider.js";export{ScrollContext,ScrollProvider}from"./components/Pickaxe/Addons/Scroll/Provider.js";export{PickaxeMarkdown,PickaxeMarkdownContext}from"./components/Pickaxe/common/PickaxeMarkdown/index.js";export{PickaxeMarkdownRenderer}from"./components/Pickaxe/common/PickaxeMarkdown/Renderer.js";export{useConversation}from"./hooks/pickaxe/useConversation.js";export{useHistory}from"./hooks/pickaxe/useHistory.js";export{useInstantPickaxe,usePickaxe}from"./hooks/pickaxe/usePickaxe.js";export{usePickaxeContext}from"./hooks/pickaxe/usePickaxeContext.js";export{useResponseContext}from"./hooks/pickaxe/useResponseContext.js";export{useDimensionContext}from"./hooks/pickaxe/useDimensionContext.js";export{useSubmit}from"./hooks/pickaxe/useSubmit.js";export{useSubmitDocument}from"./hooks/pickaxe/useSubmitDocument.js";export{Inline}from"./components/EmbedPreview/Inline.js";export{FAB,FABButton}from"./components/EmbedPreview/FAB.js";export{Popup,PopupCTAButton}from"./components/EmbedPreview/Popup.js";export{ChatInput,ChatInputWrapper}from"./components/EmbedPreview/ChatInput.js";export{PickaxeArtifact}from"./components/Pickaxe/Addons/Artifact/index.js";export{default as PickaxeArtifactRenderer}from"./components/Pickaxe/Addons/Artifact/Renderer/index.js";export{ArtifactContext,ArtifactProvider}from"./components/Pickaxe/Addons/Artifact/Provider.js";export{useArtifactContext}from"./components/Pickaxe/Addons/Artifact/hooks/useArtifactContext.js";export{useArtifact}from"./components/Pickaxe/Addons/Artifact/hooks/useArtifact.js";
|
|
@@ -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,8 +1,10 @@
|
|
|
1
1
|
import { type ReactNode } from "react";
|
|
2
|
+
import type { ArtifactPopupType } from "./Provider";
|
|
2
3
|
import type { ArtifactStyling } from "./Renderer";
|
|
3
4
|
interface PickaxeArtifactProps {
|
|
5
|
+
forcedPopupType?: ArtifactPopupType;
|
|
4
6
|
panel?: (children: ReactNode) => ReactNode;
|
|
5
7
|
styling?: ArtifactStyling;
|
|
6
8
|
}
|
|
7
|
-
export declare const PickaxeArtifact: ({ panel, styling }: PickaxeArtifactProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
9
|
+
export declare const PickaxeArtifact: ({ forcedPopupType, panel, styling, }: PickaxeArtifactProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
8
10
|
export {};
|
package/dist/esm/src/index.d.ts
CHANGED
|
@@ -18,6 +18,7 @@ export * from "./components/EmbedPreview/FAB";
|
|
|
18
18
|
export * from "./components/EmbedPreview/Popup";
|
|
19
19
|
export * from "./components/EmbedPreview/ChatInput";
|
|
20
20
|
export * from "./components/Pickaxe/Addons/Artifact";
|
|
21
|
+
export { default as PickaxeArtifactRenderer } from "./components/Pickaxe/Addons/Artifact/Renderer";
|
|
21
22
|
export * from "./components/Pickaxe/Addons/Artifact/Provider";
|
|
22
23
|
export * from "./components/Pickaxe/Addons/Artifact/hooks/useArtifactContext";
|
|
23
24
|
export * from "./components/Pickaxe/Addons/Artifact/hooks/useArtifact";
|