@pickaxeproject/react 1.2.5 → 1.2.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/Pickaxe/Addons/Scroll/hooks/useScroll.js +1 -1
- package/dist/cjs/components/Pickaxe/Form/Questions/Submit.js +1 -1
- package/dist/cjs/components/Pickaxe/common/PickaxeCopyButton.js +1 -1
- package/dist/cjs/components/Pickaxe/common/PickaxeMarkdown/Custom/A/index.js +1 -1
- package/dist/esm/components/Pickaxe/Addons/Scroll/hooks/useScroll.js +1 -1
- package/dist/esm/components/Pickaxe/Form/Questions/Submit.js +1 -1
- package/dist/esm/components/Pickaxe/common/PickaxeCopyButton.js +1 -1
- package/dist/esm/components/Pickaxe/common/PickaxeMarkdown/Custom/A/index.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("./useScrollContext.js");exports.useScroll=({auto:t})=>{const{scrollContainerRef:n,scrollTargetRef:o,isLocked:l,isScrollSession:s,isScrollIncreasing:c,setIsLocked:u,setIsScrollSession:i,setIsScrolling:d,setIsScrollIncreasing:v}=r.useScrollContext(),[a,f]=e.useState(0),g=e.useRef(!1),E=e.useMemo((()=>n&&n.current?n.current:"undefined"==typeof window?null:window),[n]);e.useEffect((()=>{if(!E)return;const e=e=>{s&&l&&("mousedown"===e.type||"wheel"===e.type||"DOMMouseScroll"===e.type||"mousewheel"===e.type)&&u(!1)};return null==E||E.addEventListener("scroll",e),null==E||E.addEventListener("mousedown",e),null==E||E.addEventListener("wheel",e),null==E||E.addEventListener("DOMMouseScroll",e),null==E||E.addEventListener("mousewheel",e),()=>{null==E||E.removeEventListener("scroll",e),null==E||E.removeEventListener("mousedown",e),null==E||E.removeEventListener("wheel",e),null==E||E.removeEventListener("DOMMouseScroll",e),null==E||E.removeEventListener("mousewheel",e)}}),[E,s,l]),e.useEffect((()=>{g.current=!l}),[l]),e.useEffect((()=>{const e=setInterval((()=>{if(!n.current)return;const e=n.current.scrollHeight;if(e===a)return;const r=e>a;v(r),f(e),r&&t&&S()}),100);return()=>clearInterval(e)}),[n,a]),e.useEffect((()=>{const e=setInterval((()=>{if(n.current)return;if(!o.current)return;const e=o.current.getBoundingClientRect().top+o.current.getBoundingClientRect().height+window.scrollY;if(e===a)return;const r=e>a;v(r),f(e),r&&t&&p()}),100);return()=>clearInterval(e)}),[o,a]);const S=()=>{try{if(d(!0),!n.current)return void("development"===process.env.NODE_ENV&&console.log("[useScroll] scrollContainerRef not detected"));if(g.current)return;const e=n.current.scrollHeight;n.current.scrollTo({top:e,behavior:"smooth"}),"development"===process.env.NODE_ENV&&console.log("[useScroll] scrolled scrollContainerRef")}finally{d(!1)}},p=()=>{try{if(d(!0),!o.current)return void("development"===process.env.NODE_ENV&&console.log("[useScroll] scrollTargetRef not detected"));if(g.current)return;const e=o.current.getBoundingClientRect().top+o.current.getBoundingClientRect().height+window.scrollY;window.scroll({top:e,behavior:"smooth"}),"development"===process.env.NODE_ENV&&console.log("[useScroll] scrolled scrollTargetRef")}finally{d(!1)}};return{isScrollIncreasing:c,scrollStartSession:()=>{i(!0),u(!0),g.current=!1},scrollEndSession:()=>{i(!1)},scrollToBottom:S,scrollToTarget:p}};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("./useScrollContext.js");exports.useScroll=({auto:t})=>{const{scrollContainerRef:n,scrollTargetRef:o,isLocked:l,isScrollSession:s,isScrollIncreasing:c,setIsLocked:u,setIsScrollSession:i,setIsScrolling:d,setIsScrollIncreasing:v}=r.useScrollContext(),[a,f]=e.useState(0),g=e.useRef(!1),E=e.useMemo((()=>n&&n.current?n.current:"undefined"==typeof window?null:window),[n]);e.useEffect((()=>{if(!E)return;const e=e=>{s&&l&&("mousedown"===e.type||"wheel"===e.type||"DOMMouseScroll"===e.type||"mousewheel"===e.type)&&u(!1)};return null==E||E.addEventListener("scroll",e),null==E||E.addEventListener("mousedown",e),null==E||E.addEventListener("wheel",e),null==E||E.addEventListener("DOMMouseScroll",e),null==E||E.addEventListener("mousewheel",e),()=>{null==E||E.removeEventListener("scroll",e),null==E||E.removeEventListener("mousedown",e),null==E||E.removeEventListener("wheel",e),null==E||E.removeEventListener("DOMMouseScroll",e),null==E||E.removeEventListener("mousewheel",e)}}),[E,s,l]),e.useEffect((()=>{g.current=!l}),[l]),e.useEffect((()=>{const e=setInterval((()=>{if(!n.current)return;const e=n.current.scrollHeight;if(e===a)return;const r=e>a;v(r),f(e),r&&t&&S()}),100);return()=>clearInterval(e)}),[n,a,t]),e.useEffect((()=>{const e=setInterval((()=>{if(n.current)return;if(!o.current)return;const e=o.current.getBoundingClientRect().top+o.current.getBoundingClientRect().height+window.scrollY;if(e===a)return;const r=e>a;v(r),f(e),r&&t&&p()}),100);return()=>clearInterval(e)}),[o,a,t]);const S=()=>{try{if(d(!0),!n.current)return void("development"===process.env.NODE_ENV&&console.log("[useScroll] scrollContainerRef not detected"));if(g.current)return;const e=n.current.scrollHeight;n.current.scrollTo({top:e,behavior:"smooth"}),"development"===process.env.NODE_ENV&&console.log("[useScroll] scrolled scrollContainerRef")}finally{d(!1)}},p=()=>{try{if(d(!0),!o.current)return void("development"===process.env.NODE_ENV&&console.log("[useScroll] scrollTargetRef not detected"));if(g.current)return;const e=o.current.getBoundingClientRect().top+o.current.getBoundingClientRect().height+window.scrollY;window.scroll({top:e,behavior:"smooth"}),"development"===process.env.NODE_ENV&&console.log("[useScroll] scrolled scrollTargetRef")}finally{d(!1)}};return{isScrollIncreasing:c,scrollStartSession:()=>{i(!0),u(!0),g.current=!1},scrollEndSession:()=>{i(!1)},scrollToBottom:S,scrollToTarget:p}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../_virtual/_tslib.js"),s=require("react/jsx-runtime"),t=require("react"),o=require("../../../../hooks/pickaxe/usePickaxeContext.js"),i=require("../../../../hooks/pickaxe/useResponseContext.js"),n=require("../../../../hooks/pickaxe/useSubmit.js"),r=require("../../../../hooks/pickaxe/useSubmitResult.js"),l=require("../../Addons/Document/hooks/useDocument.js"),a=require("../../Addons/Scroll/hooks/useScroll.js"),d=require("../../../../common/api/streamer.js"),u=require("../../../../common/utils.js"),c=require("@nem035/gpt-3-encoder"),m=require("../../common/PickaxeBranding.js"),p=require("../../common/PickaxeButton.js"),g=require("../../../../common/error.js"),f=require("../../../../common/cn.js");exports.default=({questions:
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../_virtual/_tslib.js"),s=require("react/jsx-runtime"),t=require("react"),o=require("../../../../hooks/pickaxe/usePickaxeContext.js"),i=require("../../../../hooks/pickaxe/useResponseContext.js"),n=require("../../../../hooks/pickaxe/useSubmit.js"),r=require("../../../../hooks/pickaxe/useSubmitResult.js"),l=require("../../Addons/Document/hooks/useDocument.js"),a=require("../../Addons/Scroll/hooks/useScroll.js"),d=require("../../../../common/api/streamer.js"),u=require("../../../../common/utils.js"),c=require("@nem035/gpt-3-encoder"),m=require("../../common/PickaxeBranding.js"),p=require("../../common/PickaxeButton.js"),g=require("../../../../common/error.js"),f=require("../../../../common/cn.js");exports.default=({questions:h})=>{var x;const{formId:j,userId:b,studioUserId:v,deploymentId:w,pickaxe:y,misc:I,translations:q,responsiveBy:k,isShowHistory:O,setChatId:S,setIsShowHistory:C,setIsNewChat:D,onGenerateComplete:P}=o.usePickaxeContext(),{status:R,limits:U,setResponse:E,setMessages:A,setStatus:N,setLimitData:_,setError:L,setIsGenerating:T}=i.useResponseContext(),{documents:B,websiteLink:H,isUploading:M,onWebsiteUpload:W,setDocumentError:G}=l.useDocument(),{scrollStartSession:F,scrollEndSession:K,scrollToTarget:Y}=a.useScroll({auto:!(null==y?void 0:y.enablechatresponses)}),z=n.useSubmit(),J=r.useSubmitResult(),[Q,V]=t.useState(!1);return s.jsxs("div",Object.assign({className:f.default("mt-4 flex flex-wrap flex-col justify-between gap-2","viewport"===k?"min-[767px]:flex-row":"@[767px]/pickaxe-root:flex-row")},{children:[s.jsxs("div",Object.assign({className:"flex items-center flex-grow flex-wrap gap-2"},{children:[s.jsx(p.default,Object.assign({className:"px-5 min-h-[42px]",isDisabled:M||Q||"idle"!==R,onClick:()=>e.__awaiter(void 0,void 0,void 0,(function*(){var e;try{if(M||Q||"idle"!==R)return;E(null),_(null),G(""),T(!0);const s="enduserupload"===(null==y?void 0:y.documentuploadtype),t=h.some((e=>"userinput:documentupload"===e.id&&e.isRequired)),o=B.filter((e=>"finished"===e.status)),i=u.extractUrlsFromText(H),n=B.map((e=>e.name)),r=i.filter((e=>!n.includes(e)));if(r.length){const e=r[r.length-1];V(!0);const s=yield W(e);s&&(o.push(s),yield new Promise((e=>setTimeout(e,5e3)))),V(!1)}else if(t&&s&&!o.length)return void G("Please paste a valid website/video link or drag a file to add to the knowledge base.");L("");const l=["Multiple Choice","Checkbox"];for(const e of h){if(c.encode(e.input).length>e.maxLength&&!l.includes(e.type))throw new Error("One or more of your responses is too long!");if(e.isRequired&&!e.input.trim()&&"userinput:documentupload"!==e.id)throw new Error("You must fill out all required fields.")}const a=o.length?o[o.length-1]:null;let m={};h.forEach((e=>m=Object.assign(Object.assign({},m),{[e.id]:"Knowledge Upload"===e.type||e.id.includes("documentupload")?(null==a?void 0:a.name)||"":e.input}))),N("fetching"),F(),Y();const{success:p,responseId:g,data:f,actionData:x,usedDocumentIds:I,rawUserInput:q,error:k}=yield z.mutateAsync(Object.assign(Object.assign(Object.assign({formId:j,valueObj:m},s&&a&&{documentId:null!==(e=a.documentId)&&void 0!==e?e:""}),v&&{studioUserId:v}),w&&{deploymentId:w}));if(!p)throw new Error(null!=k?k:"An error occurred, please try again.");Y();const O=(yield d.streamer({formId:j,responseId:g,data:f,actionData:x})).body;if(!O)throw new Error("Streaming error");const C=O.getReader(),U=new TextDecoder;let K="",X=!0,Z=!1;Y();const $=h.map((e=>({id:e.id,question:e.main,answer:e.input})));for(;X;){const{value:e,done:s}=yield C.read();X=!s;if(K+=U.decode(e).replace(/\u200B/g,""),K)Z||(N("streaming"),Z=!0,(null==y?void 0:y.enablechatresponses)&&(S(g),D(!1))),E({formId:j,responseId:g,documentIds:I,messages:[],questions:$,questionPrompt:q,questionResponse:K,createdAt:new Date}),(null==y?void 0:y.enablechatresponses)&&A([{id:0,role:"assistant",content:K}]);else if(!X&&!K)throw new Error("Server error")}K&&(Y(),N("idle"),yield J.mutateAsync(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({formId:j,responseId:g,documentIds:I},b&&{userId:b}),v&&{studioUserId:v}),v&&(null==y?void 0:y.studioid)&&{studioId:y.studioid}),w&&{deploymentId:w}),{questions:$,questionPrompt:q,questionResponse:K})),null==P||P(g))}catch(e){let s=g.default(e)||"";s&&!s.includes("Unexpected token 'A',")||(s="Oops! We're experiencing high traffic at the moment. Please try again later.");const t=Object.entries(U).find((([e])=>s.includes(e)));t?_(t[1]):L(s),Y()}finally{N("idle"),T(!1),V(!1),K()}}))},{children:Q?(null==q?void 0:q.processing)||"Processing...":M?(null==q?void 0:q.uploading)||"Uploading...":"fetching"===R||"streaming"===R?(null==q?void 0:q.loading)||"Loading...":null!==(x=null==y?void 0:y.submittext)&&void 0!==x?x:"Submit"})),I.isHistory&&!O&&s.jsx(p.default,Object.assign({variant:"transparent-text",className:"px-4",onClick:()=>C(!0)},{children:(null==q?void 0:q["see-history"])||"See history"}))]})),!I.isWhiteLabel&&s.jsx("div",Object.assign({className:"flex justify-end pr-3"},{children:s.jsx(m.default,{})}))]}))};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../_virtual/_tslib.js"),t=require("react/jsx-runtime"),r=require("react"),s=require("copy-to-clipboard"),o=require("../../Icons/copied-new.svg.js"),a=require("../../Icons/copy-new.svg.js"),i=require("./PickaxeSimpleButton.js"),c=require("../../../common/cn.js");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var n=l(s);exports.default=({color:s,text:l="",className:u,iconClassName:f})=>{const[d,m]=r.useState(l),[p,h]=r.useState(!1),[j,y]=r.useState(!1);r.useEffect((()=>{m(l)}),[l]);return t.jsx(i.default,Object.assign({color:s},u&&{className:u},{isForceColor:j,onClick:()=>e.__awaiter(void 0,void 0,void 0,(function*(){var e;try{if(p)return;h(!0);const t=null!==(e=[...Array.from(l.matchAll(/https:\/\/streaming\.pickaxeproject\.com\/api\/function_call_results\?.*?&name=[^&]+/g)),...Array.from(l.matchAll(/https:\/\/utils\.pickaxe\.
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../_virtual/_tslib.js"),t=require("react/jsx-runtime"),r=require("react"),s=require("copy-to-clipboard"),o=require("../../Icons/copied-new.svg.js"),a=require("../../Icons/copy-new.svg.js"),i=require("./PickaxeSimpleButton.js"),c=require("../../../common/cn.js");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var n=l(s);exports.default=({color:s,text:l="",className:u,iconClassName:f})=>{const[d,m]=r.useState(l),[p,h]=r.useState(!1),[j,y]=r.useState(!1);r.useEffect((()=>{m(l)}),[l]);return t.jsx(i.default,Object.assign({color:s},u&&{className:u},{isForceColor:j,onClick:()=>e.__awaiter(void 0,void 0,void 0,(function*(){var e;try{if(p)return;h(!0);const t=null!==(e=[...Array.from(l.matchAll(/https:\/\/streaming\.pickaxeproject\.com\/api\/function_call_results\?.*?&name=[^&]+/g)),...Array.from(l.matchAll(/https:\/\/utils\.pickaxe\.co\/api\/fn\/result\?.*?&name=[^&]+/g))].map((e=>e[0])))&&void 0!==e?e:[],r=[];if(t.length){for(const e of t)try{const t=yield fetch(e),s=yield t.json(),o=s.text||s.url||"";r.push(o)}catch(e){console.error(e)}r.length&&m(r.join("\n"))}n.default(r.length>0?r.join("\n"):d),h(!1),y(!0),yield new Promise((e=>setTimeout(e,1500)))}catch(e){console.error(e)}finally{h(!1),y(!1)}}))},{children:p||j?t.jsx(o.default,{className:c.default("w-4 h-4 shrink-0",f)}):t.jsx(a.default,{className:c.default("w-4 h-4 shrink-0",f)})}))};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../../../_virtual/_tslib.js"),t=require("react/jsx-runtime"),r=require("react"),s=require("@tanstack/react-query"),a=require("../../hooks/usePickaxeMarkdownContext.js"),o=require("../common/Action.js"),i=require("../Img/index.js"),n=require("../common/Audio.js"),u=require("../common/Html/index.js"),l=require("../../../../../../common/api/utils.js"),c=require("../../../../../../common/error.js");exports.default=({node:d,href:m="",children:
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../../../../../_virtual/_tslib.js"),t=require("react/jsx-runtime"),r=require("react"),s=require("@tanstack/react-query"),a=require("../../hooks/usePickaxeMarkdownContext.js"),o=require("../common/Action.js"),i=require("../Img/index.js"),n=require("../common/Audio.js"),u=require("../common/Html/index.js"),l=require("../../../../../../common/api/utils.js"),c=require("../../../../../../common/error.js");exports.default=({node:d,href:m="",children:f})=>{const{accentColor:p,websiteMetadatas:h,actions:w,setWebsiteMetadatas:j}=a.usePickaxeMarkdownContext(),b=r.useMemo((()=>{if(!m)return"";return m.startsWith("http://")?`https://${m.slice(7)}`:m.startsWith("www.")?`https://${m}`:m}),[m]),g=r.useMemo((()=>{var e;const t=b.match(/(?:https?:\/\/)?(?:www\.)?(?:youtube\.com\/watch\?v=|youtu\.be\/)([\w-]+)/i);return t&&null!==(e=null==t?void 0:t[1])&&void 0!==e?e:null}),[b]),x=r.useMemo((()=>b.match(/\.(jpeg|jpg|gif|bmp|webp|svg|tiff|avif|png|jfif|pjpeg|pjp)$/)),[b]),v=r.useMemo((()=>b.includes("action_generated_files")&&b.match(/\.(mp3|wav|ogg|flac|aac|wma|alac|m4a|aiff|ape|au|mid|midi|opus)$/)),[b]),y=r.useMemo((()=>b.includes("action_generated_files")&&b.match(/\.html$/)),[b]),_=r.useMemo((()=>w&&b.includes("pickaxe")&&(b.includes("/api/fn/result")||b.includes("/api/function_call_results"))),[w,b]);return s.useQuery({queryKey:["website-metadata",b],queryFn:()=>e.__awaiter(void 0,void 0,void 0,(function*(){return t=b,e.__awaiter(void 0,void 0,void 0,(function*(){try{if("development"===process.env.NODE_ENV&&console.log("[getWebsiteMetadata]",t),!t||!t.startsWith("https")||!t.includes("."))return null;if(["/api/fn/result","/api/function_call_results","https://prod-pickaxe-assets.s3.amazonaws.com"].some((e=>t.includes(e))))return null;const e=(yield l.default.get(`/metadata?url=${encodeURIComponent(t)}`)).data;if(e.error)throw new Error(e.error||"Failed to fetch metadata");return e}catch(e){if("development"===process.env.NODE_ENV){const t=c.default(e);console.error("[getJobResult]",t)}return null}}));var t})),enabled:!1,retry:2,onSuccess:e=>{e&&e.title&&(h.some((t=>t.href===e.href))||j((t=>[...t,e])))}}),g?t.jsx("div",Object.assign({className:"pxe-markdown-youtube",style:{display:"flex",width:"100%",justifyContent:"center"}},{children:t.jsx("iframe",Object.assign({title:"youtube-embed",src:`https://www.youtube.com/embed/${g}`,style:{width:"100%",maxWidth:"560px",minHeight:"315px",backgroundColor:"#000000"},allowFullScreen:!0},{children:"Iframe not supported, use a different browser."}))})):x?t.jsx(i.default,{src:b,alt:"string"==typeof f?f:"Markdown Image"}):v?t.jsx(n.default,{url:b}):y?t.jsx(u.default,{url:b}):_?t.jsx(o.default,{jobUrl:b}):t.jsx("a",Object.assign({href:b,target:"_blank",rel:"noopener noreferrer",style:{color:p}},{children:f}))};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{useState as e,useRef as r,useMemo as n,useEffect as t}from"react";import{useScrollContext as o}from"./useScrollContext.js";const l=({auto:l})=>{const{scrollContainerRef:s,scrollTargetRef:c,isLocked:u,isScrollSession:i,isScrollIncreasing:d,setIsLocked:v,setIsScrollSession:a,setIsScrolling:g,setIsScrollIncreasing:f}=o(),[m,p]=e(0),w=r(!1),E=n((()=>s&&s.current?s.current:"undefined"==typeof window?null:window),[s]);t((()=>{if(!E)return;const e=e=>{i&&u&&("mousedown"===e.type||"wheel"===e.type||"DOMMouseScroll"===e.type||"mousewheel"===e.type)&&v(!1)};return null==E||E.addEventListener("scroll",e),null==E||E.addEventListener("mousedown",e),null==E||E.addEventListener("wheel",e),null==E||E.addEventListener("DOMMouseScroll",e),null==E||E.addEventListener("mousewheel",e),()=>{null==E||E.removeEventListener("scroll",e),null==E||E.removeEventListener("mousedown",e),null==E||E.removeEventListener("wheel",e),null==E||E.removeEventListener("DOMMouseScroll",e),null==E||E.removeEventListener("mousewheel",e)}}),[E,i,u]),t((()=>{w.current=!u}),[u]),t((()=>{const e=setInterval((()=>{if(!s.current)return;const e=s.current.scrollHeight;if(e===m)return;const r=e>m;f(r),p(e),r&&l&&S()}),100);return()=>clearInterval(e)}),[s,m]),t((()=>{const e=setInterval((()=>{if(s.current)return;if(!c.current)return;const e=c.current.getBoundingClientRect().top+c.current.getBoundingClientRect().height+window.scrollY;if(e===m)return;const r=e>m;f(r),p(e),r&&l&&h()}),100);return()=>clearInterval(e)}),[c,m]);const S=()=>{try{if(g(!0),!s.current)return void("development"===process.env.NODE_ENV&&console.log("[useScroll] scrollContainerRef not detected"));if(w.current)return;const e=s.current.scrollHeight;s.current.scrollTo({top:e,behavior:"smooth"}),"development"===process.env.NODE_ENV&&console.log("[useScroll] scrolled scrollContainerRef")}finally{g(!1)}},h=()=>{try{if(g(!0),!c.current)return void("development"===process.env.NODE_ENV&&console.log("[useScroll] scrollTargetRef not detected"));if(w.current)return;const e=c.current.getBoundingClientRect().top+c.current.getBoundingClientRect().height+window.scrollY;window.scroll({top:e,behavior:"smooth"}),"development"===process.env.NODE_ENV&&console.log("[useScroll] scrolled scrollTargetRef")}finally{g(!1)}};return{isScrollIncreasing:d,scrollStartSession:()=>{a(!0),v(!0),w.current=!1},scrollEndSession:()=>{a(!1)},scrollToBottom:S,scrollToTarget:h}};export{l as useScroll};
|
|
1
|
+
import{useState as e,useRef as r,useMemo as n,useEffect as t}from"react";import{useScrollContext as o}from"./useScrollContext.js";const l=({auto:l})=>{const{scrollContainerRef:s,scrollTargetRef:c,isLocked:u,isScrollSession:i,isScrollIncreasing:d,setIsLocked:v,setIsScrollSession:a,setIsScrolling:g,setIsScrollIncreasing:f}=o(),[m,p]=e(0),w=r(!1),E=n((()=>s&&s.current?s.current:"undefined"==typeof window?null:window),[s]);t((()=>{if(!E)return;const e=e=>{i&&u&&("mousedown"===e.type||"wheel"===e.type||"DOMMouseScroll"===e.type||"mousewheel"===e.type)&&v(!1)};return null==E||E.addEventListener("scroll",e),null==E||E.addEventListener("mousedown",e),null==E||E.addEventListener("wheel",e),null==E||E.addEventListener("DOMMouseScroll",e),null==E||E.addEventListener("mousewheel",e),()=>{null==E||E.removeEventListener("scroll",e),null==E||E.removeEventListener("mousedown",e),null==E||E.removeEventListener("wheel",e),null==E||E.removeEventListener("DOMMouseScroll",e),null==E||E.removeEventListener("mousewheel",e)}}),[E,i,u]),t((()=>{w.current=!u}),[u]),t((()=>{const e=setInterval((()=>{if(!s.current)return;const e=s.current.scrollHeight;if(e===m)return;const r=e>m;f(r),p(e),r&&l&&S()}),100);return()=>clearInterval(e)}),[s,m,l]),t((()=>{const e=setInterval((()=>{if(s.current)return;if(!c.current)return;const e=c.current.getBoundingClientRect().top+c.current.getBoundingClientRect().height+window.scrollY;if(e===m)return;const r=e>m;f(r),p(e),r&&l&&h()}),100);return()=>clearInterval(e)}),[c,m,l]);const S=()=>{try{if(g(!0),!s.current)return void("development"===process.env.NODE_ENV&&console.log("[useScroll] scrollContainerRef not detected"));if(w.current)return;const e=s.current.scrollHeight;s.current.scrollTo({top:e,behavior:"smooth"}),"development"===process.env.NODE_ENV&&console.log("[useScroll] scrolled scrollContainerRef")}finally{g(!1)}},h=()=>{try{if(g(!0),!c.current)return void("development"===process.env.NODE_ENV&&console.log("[useScroll] scrollTargetRef not detected"));if(w.current)return;const e=c.current.getBoundingClientRect().top+c.current.getBoundingClientRect().height+window.scrollY;window.scroll({top:e,behavior:"smooth"}),"development"===process.env.NODE_ENV&&console.log("[useScroll] scrolled scrollTargetRef")}finally{g(!1)}};return{isScrollIncreasing:d,scrollStartSession:()=>{a(!0),v(!0),w.current=!1},scrollEndSession:()=>{a(!1)},scrollToBottom:S,scrollToTarget:h}};export{l as useScroll};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__awaiter as e}from"../../../../_virtual/_tslib.js";import{jsxs as
|
|
1
|
+
import{__awaiter as e}from"../../../../_virtual/_tslib.js";import{jsxs as s,jsx as o}from"react/jsx-runtime";import{useState as t}from"react";import{usePickaxeContext as i}from"../../../../hooks/pickaxe/usePickaxeContext.js";import{useResponseContext as n}from"../../../../hooks/pickaxe/useResponseContext.js";import{useSubmit as r}from"../../../../hooks/pickaxe/useSubmit.js";import{useSubmitResult as l}from"../../../../hooks/pickaxe/useSubmitResult.js";import{useDocument as a}from"../../Addons/Document/hooks/useDocument.js";import{useScroll as d}from"../../Addons/Scroll/hooks/useScroll.js";import{streamer as c}from"../../../../common/api/streamer.js";import{extractUrlsFromText as u}from"../../../../common/utils.js";import{encode as m}from"@nem035/gpt-3-encoder";import p from"../../common/PickaxeBranding.js";import f from"../../common/PickaxeButton.js";import g from"../../../../common/error.js";import h from"../../../../common/cn.js";const b=({questions:b})=>{var x;const{formId:j,userId:v,studioUserId:w,deploymentId:y,pickaxe:I,misc:k,translations:O,responsiveBy:S,isShowHistory:q,setChatId:D,setIsShowHistory:C,setIsNewChat:E,onGenerateComplete:P}=i(),{status:U,limits:R,setResponse:A,setMessages:N,setStatus:L,setLimitData:B,setError:T,setIsGenerating:H}=n(),{documents:W,websiteLink:G,isUploading:M,onWebsiteUpload:_,setDocumentError:K}=a(),{scrollStartSession:Y,scrollEndSession:z,scrollToTarget:F}=d({auto:!(null==I?void 0:I.enablechatresponses)}),J=r(),Q=l(),[V,X]=t(!1);return s("div",Object.assign({className:h("mt-4 flex flex-wrap flex-col justify-between gap-2","viewport"===S?"min-[767px]:flex-row":"@[767px]/pickaxe-root:flex-row")},{children:[s("div",Object.assign({className:"flex items-center flex-grow flex-wrap gap-2"},{children:[o(f,Object.assign({className:"px-5 min-h-[42px]",isDisabled:M||V||"idle"!==U,onClick:()=>e(void 0,void 0,void 0,(function*(){var e;try{if(M||V||"idle"!==U)return;A(null),B(null),K(""),H(!0);const s="enduserupload"===(null==I?void 0:I.documentuploadtype),o=b.some((e=>"userinput:documentupload"===e.id&&e.isRequired)),t=W.filter((e=>"finished"===e.status)),i=u(G),n=W.map((e=>e.name)),r=i.filter((e=>!n.includes(e)));if(r.length){const e=r[r.length-1];X(!0);const s=yield _(e);s&&(t.push(s),yield new Promise((e=>setTimeout(e,5e3)))),X(!1)}else if(o&&s&&!t.length)return void K("Please paste a valid website/video link or drag a file to add to the knowledge base.");T("");const l=["Multiple Choice","Checkbox"];for(const e of b){if(m(e.input).length>e.maxLength&&!l.includes(e.type))throw new Error("One or more of your responses is too long!");if(e.isRequired&&!e.input.trim()&&"userinput:documentupload"!==e.id)throw new Error("You must fill out all required fields.")}const a=t.length?t[t.length-1]:null;let d={};b.forEach((e=>d=Object.assign(Object.assign({},d),{[e.id]:"Knowledge Upload"===e.type||e.id.includes("documentupload")?(null==a?void 0:a.name)||"":e.input}))),L("fetching"),Y(),F();const{success:p,responseId:f,data:g,actionData:h,usedDocumentIds:x,rawUserInput:k,error:O}=yield J.mutateAsync(Object.assign(Object.assign(Object.assign({formId:j,valueObj:d},s&&a&&{documentId:null!==(e=a.documentId)&&void 0!==e?e:""}),w&&{studioUserId:w}),y&&{deploymentId:y}));if(!p)throw new Error(null!=O?O:"An error occurred, please try again.");F();const S=(yield c({formId:j,responseId:f,data:g,actionData:h})).body;if(!S)throw new Error("Streaming error");const q=S.getReader(),C=new TextDecoder;let R="",z=!0,Z=!1;F();const $=b.map((e=>({id:e.id,question:e.main,answer:e.input})));for(;z;){const{value:e,done:s}=yield q.read();z=!s;if(R+=C.decode(e).replace(/\u200B/g,""),R)Z||(L("streaming"),Z=!0,(null==I?void 0:I.enablechatresponses)&&(D(f),E(!1))),A({formId:j,responseId:f,documentIds:x,messages:[],questions:$,questionPrompt:k,questionResponse:R,createdAt:new Date}),(null==I?void 0:I.enablechatresponses)&&N([{id:0,role:"assistant",content:R}]);else if(!z&&!R)throw new Error("Server error")}R&&(F(),L("idle"),yield Q.mutateAsync(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({formId:j,responseId:f,documentIds:x},v&&{userId:v}),w&&{studioUserId:w}),w&&(null==I?void 0:I.studioid)&&{studioId:I.studioid}),y&&{deploymentId:y}),{questions:$,questionPrompt:k,questionResponse:R})),null==P||P(f))}catch(e){let s=g(e)||"";s&&!s.includes("Unexpected token 'A',")||(s="Oops! We're experiencing high traffic at the moment. Please try again later.");const o=Object.entries(R).find((([e])=>s.includes(e)));o?B(o[1]):T(s),F()}finally{L("idle"),H(!1),X(!1),z()}}))},{children:V?(null==O?void 0:O.processing)||"Processing...":M?(null==O?void 0:O.uploading)||"Uploading...":"fetching"===U||"streaming"===U?(null==O?void 0:O.loading)||"Loading...":null!==(x=null==I?void 0:I.submittext)&&void 0!==x?x:"Submit"})),k.isHistory&&!q&&o(f,Object.assign({variant:"transparent-text",className:"px-4",onClick:()=>C(!0)},{children:(null==O?void 0:O["see-history"])||"See history"}))]})),!k.isWhiteLabel&&o("div",Object.assign({className:"flex justify-end pr-3"},{children:o(p,{})}))]}))};export{b as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__awaiter as o}from"../../../_virtual/_tslib.js";import{jsx as r}from"react/jsx-runtime";import{useState as t,useEffect as e}from"react";import c from"copy-to-clipboard";import i from"../../Icons/copied-new.svg.js";import s from"../../Icons/copy-new.svg.js";import n from"./PickaxeSimpleButton.js";import l from"../../../common/cn.js";const m=({color:m,text:a="",className:p,iconClassName:f})=>{const[h
|
|
1
|
+
import{__awaiter as o}from"../../../_virtual/_tslib.js";import{jsx as r}from"react/jsx-runtime";import{useState as t,useEffect as e}from"react";import c from"copy-to-clipboard";import i from"../../Icons/copied-new.svg.js";import s from"../../Icons/copy-new.svg.js";import n from"./PickaxeSimpleButton.js";import l from"../../../common/cn.js";const m=({color:m,text:a="",className:p,iconClassName:f})=>{const[u,h]=t(a),[d,j]=t(!1),[y,g]=t(!1);e((()=>{h(a)}),[a]);return r(n,Object.assign({color:m},p&&{className:p},{isForceColor:y,onClick:()=>o(void 0,void 0,void 0,(function*(){var o;try{if(d)return;j(!0);const r=null!==(o=[...Array.from(a.matchAll(/https:\/\/streaming\.pickaxeproject\.com\/api\/function_call_results\?.*?&name=[^&]+/g)),...Array.from(a.matchAll(/https:\/\/utils\.pickaxe\.co\/api\/fn\/result\?.*?&name=[^&]+/g))].map((o=>o[0])))&&void 0!==o?o:[],t=[];if(r.length){for(const o of r)try{const r=yield fetch(o),e=yield r.json(),c=e.text||e.url||"";t.push(c)}catch(o){console.error(o)}t.length&&h(t.join("\n"))}c(t.length>0?t.join("\n"):u),j(!1),g(!0),yield new Promise((o=>setTimeout(o,1500)))}catch(o){console.error(o)}finally{j(!1),g(!1)}}))},{children:r(d||y?i:s,{className:l("w-4 h-4 shrink-0",f)})}))};export{m as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__awaiter as e}from"../../../../../../_virtual/_tslib.js";import{jsx as t}from"react/jsx-runtime";import{useMemo as r}from"react";import{useQuery as o}from"@tanstack/react-query";import{usePickaxeMarkdownContext as i}from"../../hooks/usePickaxeMarkdownContext.js";import a from"../common/Action.js";import
|
|
1
|
+
import{__awaiter as e}from"../../../../../../_virtual/_tslib.js";import{jsx as t}from"react/jsx-runtime";import{useMemo as r}from"react";import{useQuery as o}from"@tanstack/react-query";import{usePickaxeMarkdownContext as i}from"../../hooks/usePickaxeMarkdownContext.js";import a from"../common/Action.js";import n from"../Img/index.js";import s from"../common/Audio.js";import l from"../common/Html/index.js";import c from"../../../../../../common/api/utils.js";import m from"../../../../../../common/error.js";const u=({node:u,href:d="",children:p})=>{const{accentColor:f,websiteMetadatas:h,actions:w,setWebsiteMetadatas:b}=i(),g=r((()=>{if(!d)return"";return d.startsWith("http://")?`https://${d.slice(7)}`:d.startsWith("www.")?`https://${d}`:d}),[d]),v=r((()=>{var e;const t=g.match(/(?:https?:\/\/)?(?:www\.)?(?:youtube\.com\/watch\?v=|youtu\.be\/)([\w-]+)/i);return t&&null!==(e=null==t?void 0:t[1])&&void 0!==e?e:null}),[g]),j=r((()=>g.match(/\.(jpeg|jpg|gif|bmp|webp|svg|tiff|avif|png|jfif|pjpeg|pjp)$/)),[g]),y=r((()=>g.includes("action_generated_files")&&g.match(/\.(mp3|wav|ogg|flac|aac|wma|alac|m4a|aiff|ape|au|mid|midi|opus)$/)),[g]),x=r((()=>g.includes("action_generated_files")&&g.match(/\.html$/)),[g]),_=r((()=>w&&g.includes("pickaxe")&&(g.includes("/api/fn/result")||g.includes("/api/function_call_results"))),[w,g]);return o({queryKey:["website-metadata",g],queryFn:()=>e(void 0,void 0,void 0,(function*(){return t=g,e(void 0,void 0,void 0,(function*(){try{if("development"===process.env.NODE_ENV&&console.log("[getWebsiteMetadata]",t),!t||!t.startsWith("https")||!t.includes("."))return null;if(["/api/fn/result","/api/function_call_results","https://prod-pickaxe-assets.s3.amazonaws.com"].some((e=>t.includes(e))))return null;const e=(yield c.get(`/metadata?url=${encodeURIComponent(t)}`)).data;if(e.error)throw new Error(e.error||"Failed to fetch metadata");return e}catch(e){if("development"===process.env.NODE_ENV){const t=m(e);console.error("[getJobResult]",t)}return null}}));var t})),enabled:!1,retry:2,onSuccess:e=>{e&&e.title&&(h.some((t=>t.href===e.href))||b((t=>[...t,e])))}}),v?t("div",Object.assign({className:"pxe-markdown-youtube",style:{display:"flex",width:"100%",justifyContent:"center"}},{children:t("iframe",Object.assign({title:"youtube-embed",src:`https://www.youtube.com/embed/${v}`,style:{width:"100%",maxWidth:"560px",minHeight:"315px",backgroundColor:"#000000"},allowFullScreen:!0},{children:"Iframe not supported, use a different browser."}))})):j?t(n,{src:g,alt:"string"==typeof p?p:"Markdown Image"}):y?t(s,{url:g}):x?t(l,{url:g}):_?t(a,{jobUrl:g}):t("a",Object.assign({href:g,target:"_blank",rel:"noopener noreferrer",style:{color:f}},{children:p}))};export{u as default};
|