@anker-in/campaign-ui 0.0.33-alpha4 → 0.0.33-alpha5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist/cjs/components/chat/action.d.ts +4 -2
  2. package/dist/cjs/components/chat/action.js +1 -1
  3. package/dist/cjs/components/chat/action.js.map +3 -3
  4. package/dist/cjs/components/chat/button.d.ts +1 -1
  5. package/dist/cjs/components/chat/button.js +1 -1
  6. package/dist/cjs/components/chat/button.js.map +3 -3
  7. package/dist/cjs/components/chat/index.d.ts +13 -7
  8. package/dist/cjs/components/chat/index.js +1 -1
  9. package/dist/cjs/components/chat/index.js.map +3 -3
  10. package/dist/cjs/components/chat/props.d.ts +1 -2
  11. package/dist/cjs/components/chat/props.js +1 -1
  12. package/dist/cjs/components/chat/props.js.map +1 -1
  13. package/dist/cjs/stories/chat.stories.js +1 -1
  14. package/dist/cjs/stories/chat.stories.js.map +2 -2
  15. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  16. package/dist/esm/components/chat/action.d.ts +4 -2
  17. package/dist/esm/components/chat/action.js +1 -1
  18. package/dist/esm/components/chat/action.js.map +3 -3
  19. package/dist/esm/components/chat/button.d.ts +1 -1
  20. package/dist/esm/components/chat/button.js +1 -1
  21. package/dist/esm/components/chat/button.js.map +3 -3
  22. package/dist/esm/components/chat/index.d.ts +13 -7
  23. package/dist/esm/components/chat/index.js +1 -1
  24. package/dist/esm/components/chat/index.js.map +3 -3
  25. package/dist/esm/components/chat/props.d.ts +1 -2
  26. package/dist/esm/components/chat/props.js.map +1 -1
  27. package/dist/esm/stories/chat.stories.js +1 -1
  28. package/dist/esm/stories/chat.stories.js.map +2 -2
  29. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  30. package/package.json +1 -1
  31. package/src/components/chat/action.tsx +19 -7
  32. package/src/components/chat/button.tsx +2 -9
  33. package/src/components/chat/index.tsx +46 -37
  34. package/src/components/chat/props.ts +1 -2
  35. package/src/stories/chat.stories.tsx +5 -5
@@ -1,2 +1,2 @@
1
- import{jsx as n}from"react/jsx-runtime";import"react";import{useEffect as u}from"react";import{useCopilotChat as f,useCopilotAction as r,useCopilotReadable as h}from"@copilotkit/react-core";import{Role as o,ActionExecutionMessage as R,TextMessage as y}from"@copilotkit/runtime-client-gql";const S=({start:_,history:s,gotocheckoutRender:i,gotocartRender:c,addtocartRender:d,productRender:p,signupRender:m,children:g})=>{const{setMessages:l}=f();return u(()=>{const e=s?.filter(a=>a?.content||a?.arguments);if(e?.length>0){const a=e?.map(t=>t?.name&&t?.arguments?new R({name:t?.name,arguments:t?.arguments,scope:t?.scope}):new y({...t,role:t?.role==="user"?o.User:o.Assistant}));l(a)}},[s]),r({name:"go_to_checkout",description:"go to cart",parameters:[{sku:"",handle:""}],render:i||(e=>n("div",{className:"hidden",children:JSON.stringify(e)})),handler:function(){}}),r({name:"go_to_cart",description:"go to cart",parameters:[{sku:"",handle:""}],render:c||(e=>n("div",{className:"hidden",children:JSON.stringify(e)})),handler:function(){}}),r({name:"add_to_cart",description:"add to cart",parameters:[{sku:"",handle:""}],render:d||(e=>n("div",{className:"hidden",children:JSON.stringify(e)})),handler:function(){}}),r({name:"show_product_card",description:"product card",parameters:[{sku:"",handle:""}],render:p||(e=>n("div",{className:"hidden",children:JSON.stringify(e)})),handler:function(){}}),r({name:"signup",description:"signup",parameters:[{name:"signup"}],render:m||(e=>n("div",{className:"hidden",children:JSON.stringify(e)})),handler:function(){}}),h({description:"Today's date",value:new Date().toLocaleDateString()}),n("div",{children:g})};export{S as CopilotAction};
1
+ import{jsx as t}from"react/jsx-runtime";import"react";import{useEffect as f}from"react";import{useCopilotChat as R,useCopilotAction as r,useCopilotReadable as _}from"@copilotkit/react-core";import{Role as c,ActionExecutionMessage as N,TextMessage as E}from"@copilotkit/runtime-client-gql";const O=({start:M,history:s,addtocartHandler:o,gotocheckoutRender:d,gotocartRender:p,addtocartRender:g,productRender:m,signupRender:l,children:u})=>{const{setMessages:h,appendMessage:k,isLoading:v}=R();return f(()=>{const e=s?.filter(a=>a?.content||a?.arguments);if(e?.length>0){const a=e?.map(n=>{if(n?.name&&n?.arguments){const y=n?.arguments?.map(i=>i?{...i,ishistory:!0}:{});return new N({name:n?.name,arguments:y,scope:n?.scope})}return new E({...n,role:n?.role==="user"?c.User:c.Assistant})});h(a)}},[s]),r({name:"go_to_checkout",description:"go to cart",parameters:[{sku:"",handle:""}],render:d||(e=>t("div",{className:"hidden",children:JSON.stringify(e)})),handler:function(){}}),r({name:"go_to_cart",description:"go to cart",parameters:[{sku:"",handle:""}],render:p||(e=>t("div",{className:"hidden",children:JSON.stringify(e)})),handler:function(){}}),r({name:"add_to_cart",description:"add to cart",parameters:[{sku:"",handle:""}],render:g||(e=>t("div",{className:"hidden",children:JSON.stringify(e)})),handler:function(e){o&&o(e)}}),r({name:"show_product_card",description:"product card",parameters:[{sku:"",handle:""}],render:m||(e=>t("div",{className:"hidden",children:JSON.stringify(e)})),handler:function(e){console.log("show_product_card-props",e)}}),r({name:"signup",description:"signup",parameters:[{name:"signup"}],render:l||(e=>t("div",{className:"hidden",children:JSON.stringify(e)})),handler:function(){}}),_({description:"Today's date",value:new Date().toLocaleDateString()}),t("div",{children:u})};export{O as CopilotAction};
2
2
  //# sourceMappingURL=action.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/components/chat/action.tsx"],
4
- "sourcesContent": ["import React from 'react'\nimport { useEffect } from 'react'\nimport { useCopilotChat, useCopilotAction, useCopilotReadable } from '@copilotkit/react-core'\nimport { Role, ActionExecutionMessage, TextMessage } from '@copilotkit/runtime-client-gql'\n\ninterface Message {\n content: string\n role: string\n name?: string\n scope?: any\n arguments?: any\n}\n\nexport interface ActionProps {\n start?: string\n history: Message[]\n gotocheckoutRender?: string | ((_props: any) => React.ReactElement)\n gotocartRender?: string | ((_props: any) => React.ReactElement)\n addtocartRender?: string | ((_props: any) => React.ReactElement)\n productRender?: string | ((_props: any) => React.ReactElement)\n signupRender?: string | ((_props: any) => React.ReactElement)\n children?: React.ReactNode\n}\n\nexport const CopilotAction = ({\n start,\n history,\n gotocheckoutRender,\n gotocartRender,\n addtocartRender,\n productRender,\n signupRender,\n children,\n}: ActionProps) => {\n const { setMessages } = useCopilotChat()\n\n useEffect(() => {\n const originhistory = history?.filter(value => value?.content || value?.arguments)\n if (originhistory?.length > 0) {\n const content = originhistory?.map(value => {\n if (value?.name && value?.arguments) {\n return new ActionExecutionMessage({\n name: value?.name,\n arguments: value?.arguments,\n scope: value?.scope,\n })\n }\n return new TextMessage({\n ...value,\n role: value?.role === 'user' ? Role.User : Role.Assistant,\n })\n })\n setMessages(content)\n }\n }, [history])\n\n useCopilotAction({\n name: 'go_to_checkout',\n description: 'go to cart',\n parameters: [{ sku: '', handle: '' }] as any,\n render: gotocheckoutRender || (props => <div className=\"hidden\">{JSON.stringify(props)}</div>),\n handler: function () {\n // console.log('buynow-props', props)\n },\n })\n\n useCopilotAction({\n name: 'go_to_cart',\n description: 'go to cart',\n parameters: [{ sku: '', handle: '' }] as any,\n render: gotocartRender || (props => <div className=\"hidden\">{JSON.stringify(props)}</div>),\n handler: function () {\n // console.log('buynow-props', props)\n },\n })\n\n useCopilotAction({\n name: 'add_to_cart',\n description: 'add to cart',\n parameters: [{ sku: '', handle: '' }] as any,\n render: addtocartRender || (props => <div className=\"hidden\">{JSON.stringify(props)}</div>),\n handler: function () {\n // console.log('buynow-props', props)\n },\n })\n\n useCopilotAction({\n name: 'show_product_card',\n description: 'product card',\n parameters: [{ sku: '', handle: '' }] as any,\n render: productRender || (props => <div className=\"hidden\">{JSON.stringify(props)}</div>),\n handler: function () {\n // console.log('buynow-props', props)\n },\n })\n\n useCopilotAction({\n name: 'signup',\n description: 'signup',\n parameters: [\n {\n name: 'signup',\n },\n ] as any,\n render: signupRender || (props => <div className=\"hidden\">{JSON.stringify(props)}</div>),\n handler: function () {\n // console.log('signup-props', props)\n },\n })\n\n useCopilotReadable({\n description: \"Today's date\",\n value: new Date().toLocaleDateString(),\n })\n\n return <div>{children}</div>\n}\n"],
5
- "mappings": "AA4D4C,cAAAA,MAAA,oBA5D5C,MAAkB,QAClB,OAAS,aAAAC,MAAiB,QAC1B,OAAS,kBAAAC,EAAgB,oBAAAC,EAAkB,sBAAAC,MAA0B,yBACrE,OAAS,QAAAC,EAAM,0BAAAC,EAAwB,eAAAC,MAAmB,iCAqBnD,MAAMC,EAAgB,CAAC,CAC5B,MAAAC,EACA,QAAAC,EACA,mBAAAC,EACA,eAAAC,EACA,gBAAAC,EACA,cAAAC,EACA,aAAAC,EACA,SAAAC,CACF,IAAmB,CACjB,KAAM,CAAE,YAAAC,CAAY,EAAIf,EAAe,EAEvC,OAAAD,EAAU,IAAM,CACd,MAAMiB,EAAgBR,GAAS,OAAOS,GAASA,GAAO,SAAWA,GAAO,SAAS,EACjF,GAAID,GAAe,OAAS,EAAG,CAC7B,MAAME,EAAUF,GAAe,IAAIC,GAC7BA,GAAO,MAAQA,GAAO,UACjB,IAAIb,EAAuB,CAChC,KAAMa,GAAO,KACb,UAAWA,GAAO,UAClB,MAAOA,GAAO,KAChB,CAAC,EAEI,IAAIZ,EAAY,CACrB,GAAGY,EACH,KAAMA,GAAO,OAAS,OAASd,EAAK,KAAOA,EAAK,SAClD,CAAC,CACF,EACDY,EAAYG,CAAO,CACrB,CACF,EAAG,CAACV,CAAO,CAAC,EAEZP,EAAiB,CACf,KAAM,iBACN,YAAa,aACb,WAAY,CAAC,CAAE,IAAK,GAAI,OAAQ,EAAG,CAAC,EACpC,OAAQQ,IAAuBU,GAASrB,EAAC,OAAI,UAAU,SAAU,cAAK,UAAUqB,CAAK,EAAE,GACvF,QAAS,UAAY,CAErB,CACF,CAAC,EAEDlB,EAAiB,CACf,KAAM,aACN,YAAa,aACb,WAAY,CAAC,CAAE,IAAK,GAAI,OAAQ,EAAG,CAAC,EACpC,OAAQS,IAAmBS,GAASrB,EAAC,OAAI,UAAU,SAAU,cAAK,UAAUqB,CAAK,EAAE,GACnF,QAAS,UAAY,CAErB,CACF,CAAC,EAEDlB,EAAiB,CACf,KAAM,cACN,YAAa,cACb,WAAY,CAAC,CAAE,IAAK,GAAI,OAAQ,EAAG,CAAC,EACpC,OAAQU,IAAoBQ,GAASrB,EAAC,OAAI,UAAU,SAAU,cAAK,UAAUqB,CAAK,EAAE,GACpF,QAAS,UAAY,CAErB,CACF,CAAC,EAEDlB,EAAiB,CACf,KAAM,oBACN,YAAa,eACb,WAAY,CAAC,CAAE,IAAK,GAAI,OAAQ,EAAG,CAAC,EACpC,OAAQW,IAAkBO,GAASrB,EAAC,OAAI,UAAU,SAAU,cAAK,UAAUqB,CAAK,EAAE,GAClF,QAAS,UAAY,CAErB,CACF,CAAC,EAEDlB,EAAiB,CACf,KAAM,SACN,YAAa,SACb,WAAY,CACV,CACE,KAAM,QACR,CACF,EACA,OAAQY,IAAiBM,GAASrB,EAAC,OAAI,UAAU,SAAU,cAAK,UAAUqB,CAAK,EAAE,GACjF,QAAS,UAAY,CAErB,CACF,CAAC,EAEDjB,EAAmB,CACjB,YAAa,eACb,MAAO,IAAI,KAAK,EAAE,mBAAmB,CACvC,CAAC,EAEMJ,EAAC,OAAK,SAAAgB,EAAS,CACxB",
6
- "names": ["jsx", "useEffect", "useCopilotChat", "useCopilotAction", "useCopilotReadable", "Role", "ActionExecutionMessage", "TextMessage", "CopilotAction", "start", "history", "gotocheckoutRender", "gotocartRender", "addtocartRender", "productRender", "signupRender", "children", "setMessages", "originhistory", "value", "content", "props"]
4
+ "sourcesContent": ["import React from 'react'\nimport { useEffect } from 'react'\nimport { useCopilotChat, useCopilotAction, useCopilotReadable } from '@copilotkit/react-core'\nimport { Role, ActionExecutionMessage, TextMessage } from '@copilotkit/runtime-client-gql'\n\ninterface Message {\n content: string\n role: string\n name?: string\n scope?: any\n arguments?: any\n}\n\nexport interface ActionProps {\n start?: string\n history: Message[]\n addtocartHandler?: (_args: any) => Promise<any>\n gotocheckoutRender?: string | ((_props: any) => React.ReactElement)\n gotocartRender?: string | ((_props: any) => React.ReactElement)\n addtocartRender?: string | ((_props: any) => React.ReactElement)\n signupRender?: string | ((_props: any) => React.ReactElement)\n productRender?: string | ((_props: any) => React.ReactElement)\n productRenderTipMessage?: string\n children?: React.ReactNode\n}\n\nexport const CopilotAction = ({\n start,\n history,\n addtocartHandler,\n gotocheckoutRender,\n gotocartRender,\n addtocartRender,\n productRender,\n signupRender,\n children,\n}: ActionProps) => {\n const { setMessages, appendMessage, isLoading } = useCopilotChat()\n\n useEffect(() => {\n const originhistory = history?.filter(value => value?.content || value?.arguments)\n if (originhistory?.length > 0) {\n const content = originhistory?.map(value => {\n if (value?.name && value?.arguments) {\n const args = value?.arguments?.map((item: any) => (item ? { ...item, ishistory: true } : {}))\n return new ActionExecutionMessage({\n name: value?.name,\n arguments: args,\n scope: value?.scope,\n })\n }\n return new TextMessage({\n ...value,\n role: value?.role === 'user' ? Role.User : Role.Assistant,\n })\n })\n setMessages(content)\n }\n }, [history])\n\n useCopilotAction({\n name: 'go_to_checkout',\n description: 'go to cart',\n parameters: [{ sku: '', handle: '' }] as any,\n render: gotocheckoutRender || (props => <div className=\"hidden\">{JSON.stringify(props)}</div>),\n handler: function () {\n // console.log('buynow-props', props)\n },\n })\n\n useCopilotAction({\n name: 'go_to_cart',\n description: 'go to cart',\n parameters: [{ sku: '', handle: '' }] as any,\n render: gotocartRender || (props => <div className=\"hidden\">{JSON.stringify(props)}</div>),\n handler: function () {\n // console.log('buynow-props', props)\n },\n })\n\n useCopilotAction({\n name: 'add_to_cart',\n description: 'add to cart',\n parameters: [{ sku: '', handle: '' }] as any,\n render: addtocartRender || (props => <div className=\"hidden\">{JSON.stringify(props)}</div>),\n handler: function (props) {\n addtocartHandler && addtocartHandler(props)\n },\n })\n\n useCopilotAction({\n name: 'show_product_card',\n description: 'product card',\n parameters: [{ sku: '', handle: '' }] as any,\n render: productRender || (props => <div className=\"hidden\">{JSON.stringify(props)}</div>),\n handler: function (props) {\n console.log('show_product_card-props', props)\n // const ishistory = props?.find((item: { ishistory: any }) => item?.ishistory)\n // if (!ishistory) {\n // const content = new TextMessage({\n // content: 'show product card',\n // role: Role.Assistant,\n // })\n // appendMessage(content)\n // }\n },\n })\n\n useCopilotAction({\n name: 'signup',\n description: 'signup',\n parameters: [\n {\n name: 'signup',\n },\n ] as any,\n render: signupRender || (props => <div className=\"hidden\">{JSON.stringify(props)}</div>),\n handler: function () {\n // console.log('signup-props', props)\n },\n })\n\n useCopilotReadable({\n description: \"Today's date\",\n value: new Date().toLocaleDateString(),\n })\n\n return <div>{children}</div>\n}\n"],
5
+ "mappings": "AAgE4C,cAAAA,MAAA,oBAhE5C,MAAkB,QAClB,OAAS,aAAAC,MAAiB,QAC1B,OAAS,kBAAAC,EAAgB,oBAAAC,EAAkB,sBAAAC,MAA0B,yBACrE,OAAS,QAAAC,EAAM,0BAAAC,EAAwB,eAAAC,MAAmB,iCAuBnD,MAAMC,EAAgB,CAAC,CAC5B,MAAAC,EACA,QAAAC,EACA,iBAAAC,EACA,mBAAAC,EACA,eAAAC,EACA,gBAAAC,EACA,cAAAC,EACA,aAAAC,EACA,SAAAC,CACF,IAAmB,CACjB,KAAM,CAAE,YAAAC,EAAa,cAAAC,EAAe,UAAAC,CAAU,EAAIlB,EAAe,EAEjE,OAAAD,EAAU,IAAM,CACd,MAAMoB,EAAgBX,GAAS,OAAOY,GAASA,GAAO,SAAWA,GAAO,SAAS,EACjF,GAAID,GAAe,OAAS,EAAG,CAC7B,MAAME,EAAUF,GAAe,IAAIC,GAAS,CAC1C,GAAIA,GAAO,MAAQA,GAAO,UAAW,CACnC,MAAME,EAAOF,GAAO,WAAW,IAAKG,GAAeA,EAAO,CAAE,GAAGA,EAAM,UAAW,EAAK,EAAI,CAAC,CAAE,EAC5F,OAAO,IAAInB,EAAuB,CAChC,KAAMgB,GAAO,KACb,UAAWE,EACX,MAAOF,GAAO,KAChB,CAAC,CACH,CACA,OAAO,IAAIf,EAAY,CACrB,GAAGe,EACH,KAAMA,GAAO,OAAS,OAASjB,EAAK,KAAOA,EAAK,SAClD,CAAC,CACH,CAAC,EACDa,EAAYK,CAAO,CACrB,CACF,EAAG,CAACb,CAAO,CAAC,EAEZP,EAAiB,CACf,KAAM,iBACN,YAAa,aACb,WAAY,CAAC,CAAE,IAAK,GAAI,OAAQ,EAAG,CAAC,EACpC,OAAQS,IAAuBc,GAAS1B,EAAC,OAAI,UAAU,SAAU,cAAK,UAAU0B,CAAK,EAAE,GACvF,QAAS,UAAY,CAErB,CACF,CAAC,EAEDvB,EAAiB,CACf,KAAM,aACN,YAAa,aACb,WAAY,CAAC,CAAE,IAAK,GAAI,OAAQ,EAAG,CAAC,EACpC,OAAQU,IAAmBa,GAAS1B,EAAC,OAAI,UAAU,SAAU,cAAK,UAAU0B,CAAK,EAAE,GACnF,QAAS,UAAY,CAErB,CACF,CAAC,EAEDvB,EAAiB,CACf,KAAM,cACN,YAAa,cACb,WAAY,CAAC,CAAE,IAAK,GAAI,OAAQ,EAAG,CAAC,EACpC,OAAQW,IAAoBY,GAAS1B,EAAC,OAAI,UAAU,SAAU,cAAK,UAAU0B,CAAK,EAAE,GACpF,QAAS,SAAUA,EAAO,CACxBf,GAAoBA,EAAiBe,CAAK,CAC5C,CACF,CAAC,EAEDvB,EAAiB,CACf,KAAM,oBACN,YAAa,eACb,WAAY,CAAC,CAAE,IAAK,GAAI,OAAQ,EAAG,CAAC,EACpC,OAAQY,IAAkBW,GAAS1B,EAAC,OAAI,UAAU,SAAU,cAAK,UAAU0B,CAAK,EAAE,GAClF,QAAS,SAAUA,EAAO,CACxB,QAAQ,IAAI,0BAA2BA,CAAK,CAS9C,CACF,CAAC,EAEDvB,EAAiB,CACf,KAAM,SACN,YAAa,SACb,WAAY,CACV,CACE,KAAM,QACR,CACF,EACA,OAAQa,IAAiBU,GAAS1B,EAAC,OAAI,UAAU,SAAU,cAAK,UAAU0B,CAAK,EAAE,GACjF,QAAS,UAAY,CAErB,CACF,CAAC,EAEDtB,EAAmB,CACjB,YAAa,eACb,MAAO,IAAI,KAAK,EAAE,mBAAmB,CACvC,CAAC,EAEMJ,EAAC,OAAK,SAAAiB,EAAS,CACxB",
6
+ "names": ["jsx", "useEffect", "useCopilotChat", "useCopilotAction", "useCopilotReadable", "Role", "ActionExecutionMessage", "TextMessage", "CopilotAction", "start", "history", "addtocartHandler", "gotocheckoutRender", "gotocartRender", "addtocartRender", "productRender", "signupRender", "children", "setMessages", "appendMessage", "isLoading", "originhistory", "value", "content", "args", "item", "props"]
7
7
  }
@@ -1,3 +1,3 @@
1
1
  import type { ButtonProps } from './props.js';
2
- declare const DefaultButton: ({ setOpen, setOpenTip }: ButtonProps) => import("react/jsx-runtime").JSX.Element;
2
+ declare const DefaultButton: ({ setOpen }: ButtonProps) => import("react/jsx-runtime").JSX.Element;
3
3
  export default DefaultButton;
@@ -1,2 +1,2 @@
1
- import{jsx as t,jsxs as s}from"react/jsx-runtime";import{useChatContext as i}from"@copilotkit/react-ui";const e=({setOpen:n,setOpenTip:c})=>{const o=i();return s("button",{onClick:()=>{n(!0),c(!1)},className:"copilotKitButton ","aria-label":"Open Chat",children:[t("div",{className:"copilotKitButtonIcon copilotKitButtonIconOpen",children:o.icons.openIcon}),t("div",{className:"copilotKitButtonIcon copilotKitButtonIconClose",children:o.icons.closeIcon})]})};var p=e;export{p as default};
1
+ import{jsx as t,jsxs as p}from"react/jsx-runtime";import{useChatContext as c}from"@copilotkit/react-ui";const i=({setOpen:n})=>{const o=c();return p("button",{onClick:()=>n(),className:"copilotKitButton ","aria-label":"Open Chat",children:[t("div",{className:"copilotKitButtonIcon copilotKitButtonIconOpen",children:o.icons.openIcon}),t("div",{className:"copilotKitButtonIcon copilotKitButtonIconClose",children:o.icons.closeIcon})]})};var e=i;export{e as default};
2
2
  //# sourceMappingURL=button.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/components/chat/button.tsx"],
4
- "sourcesContent": ["import { useChatContext } from '@copilotkit/react-ui'\n\nimport type { ButtonProps } from './props.js'\n\nconst DefaultButton = ({ setOpen, setOpenTip }: ButtonProps) => {\n const context = useChatContext()\n\n return (\n <button\n onClick={() => {\n setOpen(true)\n setOpenTip(false)\n }}\n className=\"copilotKitButton \"\n aria-label=\"Open Chat\"\n >\n <div className=\"copilotKitButtonIcon copilotKitButtonIconOpen\">{context.icons.openIcon}</div>\n <div className=\"copilotKitButtonIcon copilotKitButtonIconClose\">{context.icons.closeIcon}</div>\n </button>\n )\n}\n\nexport default DefaultButton\n"],
5
- "mappings": "AAQI,OAQE,OAAAA,EARF,QAAAC,MAAA,oBARJ,OAAS,kBAAAC,MAAsB,uBAI/B,MAAMC,EAAgB,CAAC,CAAE,QAAAC,EAAS,WAAAC,CAAW,IAAmB,CAC9D,MAAMC,EAAUJ,EAAe,EAE/B,OACED,EAAC,UACC,QAAS,IAAM,CACbG,EAAQ,EAAI,EACZC,EAAW,EAAK,CAClB,EACA,UAAU,oBACV,aAAW,YAEX,UAAAL,EAAC,OAAI,UAAU,gDAAiD,SAAAM,EAAQ,MAAM,SAAS,EACvFN,EAAC,OAAI,UAAU,iDAAkD,SAAAM,EAAQ,MAAM,UAAU,GAC3F,CAEJ,EAEA,IAAOC,EAAQJ",
6
- "names": ["jsx", "jsxs", "useChatContext", "DefaultButton", "setOpen", "setOpenTip", "context", "button_default"]
4
+ "sourcesContent": ["import { useChatContext } from '@copilotkit/react-ui'\n\nimport type { ButtonProps } from './props.js'\n\nconst DefaultButton = ({ setOpen }: ButtonProps) => {\n const context = useChatContext()\n\n return (\n <button onClick={() => setOpen()} className=\"copilotKitButton \" aria-label=\"Open Chat\">\n <div className=\"copilotKitButtonIcon copilotKitButtonIconOpen\">{context.icons.openIcon}</div>\n <div className=\"copilotKitButtonIcon copilotKitButtonIconClose\">{context.icons.closeIcon}</div>\n </button>\n )\n}\n\nexport default DefaultButton\n"],
5
+ "mappings": "AAQI,OACE,OAAAA,EADF,QAAAC,MAAA,oBARJ,OAAS,kBAAAC,MAAsB,uBAI/B,MAAMC,EAAgB,CAAC,CAAE,QAAAC,CAAQ,IAAmB,CAClD,MAAMC,EAAUH,EAAe,EAE/B,OACED,EAAC,UAAO,QAAS,IAAMG,EAAQ,EAAG,UAAU,oBAAoB,aAAW,YACzE,UAAAJ,EAAC,OAAI,UAAU,gDAAiD,SAAAK,EAAQ,MAAM,SAAS,EACvFL,EAAC,OAAI,UAAU,iDAAkD,SAAAK,EAAQ,MAAM,UAAU,GAC3F,CAEJ,EAEA,IAAOC,EAAQH",
6
+ "names": ["jsx", "jsxs", "useChatContext", "DefaultButton", "setOpen", "context", "button_default"]
7
7
  }
@@ -2,16 +2,19 @@ import React from 'react';
2
2
  export interface ChatProps {
3
3
  title: string;
4
4
  runtimeUrl: string;
5
- shopify_domain: string;
5
+ shopifyDomain: string;
6
6
  /** GA 的 client id
7
7
  */
8
- user_id: string;
8
+ userId: string;
9
9
  /** 是否登陆用户 0 or 1
10
10
  */
11
11
  account?: string;
12
12
  /** 用户浏览器语言
13
13
  */
14
14
  locale?: string;
15
+ /** 开场白
16
+ */
17
+ prologue?: string;
15
18
  /** ?a=1&b=2
16
19
  */
17
20
  query?: string;
@@ -28,21 +31,24 @@ export interface ChatProps {
28
31
  * 后端接口文档:https://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb
29
32
  */
30
33
  gotocartRender?: string | ((_props: any) => React.ReactElement);
34
+ /** 打开购物车 action 的触发事件
35
+ */
36
+ addtocartHandler?: (_args: any) => Promise<any>;
31
37
  /** 加购卡片,接受参数: {"status":"complete","args":[{"sku":["A3936031"],"handle":"space-a40-a3936031"}],"result":""}
32
38
  * 后端接口文档:https://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb
33
39
  */
34
40
  addtocartRender?: string | ((_props: any) => React.ReactElement);
35
- /** 产品卡片,接受参数: {"status":"complete","args":[{"sku":["A3936031"],"handle":"space-a40-a3936031"}],"result":""}
36
- * 后端接口文档:https://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb
37
- */
38
- productRender?: string | ((_props: any) => React.ReactElement);
39
41
  /** 订阅卡片,接受参数: {"status":"complete","args":[{"sku":["A3936031"],"handle":"space-a40-a3936031"}],"result":""}
40
42
  * 后端接口文档:https://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb
41
43
  */
42
44
  signupRender?: string | ((_props: any) => React.ReactElement);
45
+ /** 产品卡片,接受参数: {"status":"complete","args":[{"sku":["A3936031"],"handle":"space-a40-a3936031"}],"result":""}
46
+ * 后端接口文档:https://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb
47
+ */
48
+ productRender?: string | ((_props: any) => React.ReactElement);
43
49
  /** CopilotPopup 自定义参数,参考:https://docs.copilotkit.ai/reference/components/CopilotPopup */
44
50
  popup?: any;
45
- /** 文案,{"popupTip": "Hi ! Welcome to soundcore Innovations live chat!", "popupTipTimeout": [3000, 6000]} */
51
+ /** 文案,{"productRenderTipMessage": "","popupTip": "Hi ! Welcome to soundcore Innovations live chat!", "popupTipTimeout": [3000, 6000]} */
46
52
  lang?: any;
47
53
  /** 参考此文档:https://docs.copilotkit.ai/concepts/customize-look-and-feel */
48
54
  style?: any;
@@ -1,2 +1,2 @@
1
- import{Fragment as W,jsx as o,jsxs as X}from"react/jsx-runtime";import"react";import{useCallback as T,useState as p,useEffect as f}from"react";import{CopilotKit as F}from"@copilotkit/react-core";import{CopilotPopup as I}from"@copilotkit/react-ui";import L from"./button.js";import z from"./messages.js";import H from"./response.js";import J from"./suggestions.js";import{CopilotAction as Q}from"./action.js";import C from"../../helpers/fetcher.js";const V=_=>{const{title:P,runtimeUrl:a,popup:R,shopify_domain:n,user_id:s="",account:r="",locale:i="",query:l="",showResponseButton:h,gotocheckoutRender:B,gotocartRender:k,addtocartRender:w,productRender:E,signupRender:S,style:b,className:v="",lang:g}=_,[O,$]=g?.popupTipTimeout||[3e3,6e3],[y,u]=p(!1),[d,q]=p(!1),[c,K]=p(""),[N,m]=p([]),[D,M]=p([]),U=T(async()=>{const t=await C({url:`${a}/copilotkit/start${l}`,method:"GET",headers:{user_id:s||"",shopify_domain:n,account:r,locale:i}});m(t?.suggested_questions?.map(e=>({message:e,title:e}))||[]),K(t?.opening_statement||""),M(t?.history||[])},[s,n,r,i]),G=T(async()=>{const t=await C({url:`${a}/copilotkit/suggested_questions${l}`,method:"GET",headers:{user_id:s||"",shopify_domain:n,account:r,locale:i}});m(t?.suggested_questions?.data?.map(e=>({message:e,title:e}))||[])},[s,n,r,i]),x=()=>{y||u(!0),setTimeout(()=>{u(!1)},$)};return f(()=>{const t=setTimeout(()=>{x()},O);return()=>{clearTimeout(t)}},[]),f(()=>{c||U()},[]),o("div",{className:v,style:b||{},children:s&&a&&o(F,{runtimeUrl:`${a}/copilotkit/chat${l}`,showDevConsole:!1,headers:{user_id:s||"",shopify_domain:n,account:r,locale:i},children:o(I,{...R,showResponseButton:h!=="follow",labels:{title:P||"DTC Live Chat",initial:c||""},instructions:c||"",onInProgress:t=>{d&&t&&m([]),d&&!t&&G()},Messages:({messages:t,inProgress:e})=>o(z,{messages:t,inProgress:e,ResponseButton:h==="follow"?o(H,{}):void 0,children:o(J,{currentSuggestions:N})}),Button:({open:t,setOpen:e})=>{const A=R?.Button||L;return f(()=>{q(t)},[t]),X(W,{children:[g?.popupTip&&y&&!d&&o("div",{className:"copilotKitPopup copilotKitPopupTip",children:o("button",{onClick:()=>{e(!0),u(!1)},"aria-label":"Open Chat",className:"copilotKitPopupTipContent",children:g?.popupTip})}),o(A,{open:t,setOpen:e,setOpenTip:u})]})},children:o(Q,{start:c,history:D,gotocartRender:k,gotocheckoutRender:B,addtocartRender:w,productRender:E,signupRender:S})})})})};var at=V;export{at as default};
1
+ import{Fragment as j,jsx as e,jsxs as tt}from"react/jsx-runtime";import{useMemo as L}from"react";import{useCallback as f,useState as r,useEffect as _}from"react";import{CopilotKit as z}from"@copilotkit/react-core";import{CopilotPopup as J}from"@copilotkit/react-ui";import Q from"./button.js";import V from"./messages.js";import W from"./response.js";import X from"./suggestions.js";import{CopilotAction as Y}from"./action.js";import B from"../../helpers/fetcher.js";const Z=k=>{const{title:w,runtimeUrl:i,popup:h,shopifyDomain:p,userId:s="",account:a="",prologue:E="",locale:u="",query:l="",showResponseButton:y,gotocheckoutRender:O,gotocartRender:b,addtocartRender:S,productRender:v,signupRender:M,style:$,className:q="",lang:c}=k,[x,D]=c?.popupTipTimeout||[3e3,6e3],[T,g]=r(!1),[m,K]=r(!1),[n,N]=r(E),[I,d]=r([]),[C,U]=r([]),R=L(()=>({"x-user-id":s||"","x-shopify-domain":p,"x-member-ship":a,"x-user-locale":u}),[s,p,a,u]),G=f(async()=>{const t=await B({url:`${i}/copilotkit/start${l}`,method:"GET",headers:R});d(t?.suggested_questions?.map(o=>({message:o,title:o}))||[]),N(t?.opening_statement||""),U(t?.history||[])},[s,p,a,u]),A=f(async()=>{const t=await B({url:`${i}/copilotkit/suggested_questions${l}`,method:"GET",headers:R});d(t?.suggested_questions?.data?.map(o=>({message:o,title:o}))||[])},[s,p,a,u]),F=()=>{T||g(!0),setTimeout(()=>{g(!1)},D)};return _(()=>{const t=setTimeout(()=>{F()},x);return()=>{clearTimeout(t)}},[]),e("div",{className:q,style:$||{},children:s&&i&&e(z,{runtimeUrl:`${i}/copilotkit/chat${l}`,showDevConsole:!1,headers:R,children:e(J,{...h,showResponseButton:y!=="follow",labels:{title:w||"DTC Live Chat",initial:n||""},instructions:n||"",onInProgress:t=>{m&&t&&d([]),m&&!t&&A()},Messages:({messages:t,inProgress:o})=>e(V,{messages:t,inProgress:o,ResponseButton:y==="follow"?e(W,{}):void 0,children:e(X,{currentSuggestions:I})}),Button:({open:t,setOpen:o})=>{const H=h?.Button||Q;_(()=>{K(t)},[t]);const P=f(()=>{o(!t),g(!1),(!n||!C?.length)&&G()},[n]);return tt(j,{children:[c?.popupTip&&T&&!m&&e("div",{className:"copilotKitPopup copilotKitPopupTip",children:e("button",{onClick:P,"aria-label":"Open Chat",className:"copilotKitPopupTipContent",children:c?.popupTip})}),e(H,{open:t,setOpen:P})]})},children:e(Y,{start:n,history:C,gotocartRender:b,gotocheckoutRender:O,addtocartRender:S,productRender:v,signupRender:M,productRenderTipMessage:c?.productRenderTipMessage})})})})};var gt=Z;export{gt as default};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/components/chat/index.tsx"],
4
- "sourcesContent": ["/* eslint-disable react-hooks/exhaustive-deps */\nimport React from 'react'\nimport { useCallback, useState, useEffect } from 'react'\nimport { CopilotKit } from '@copilotkit/react-core'\nimport { CopilotPopup } from '@copilotkit/react-ui'\nimport DefaultButton from './button.js'\nimport Messages from './messages.js'\nimport ResponseButton from './response.js'\nimport Suggestions from './suggestions.js'\nimport { CopilotAction } from './action.js'\nimport fetcher from '../../helpers/fetcher.js'\n\nexport interface ChatProps {\n title: string\n runtimeUrl: string\n shopify_domain: string\n /** GA \u7684 client id\n */\n user_id: string\n /** \u662F\u5426\u767B\u9646\u7528\u6237 0 or 1\n */\n account?: string\n /** \u7528\u6237\u6D4F\u89C8\u5668\u8BED\u8A00\n */\n locale?: string\n /** ?a=1&b=2\n */\n query?: string\n /** 'follow' or 'unfollow' | true or false\n * follow: ResponseButton \u4F1A\u8DDF\u968F\u5728 messages \u7684\u540E\u8FB9\n * unfollow: ResponseButton \u5728\u804A\u5929\u6846\u5E95\u90E8\n */\n showResponseButton?: string | boolean\n /** \u8DF3\u8F6C checkout action \u5361\u7247\uFF0C\u63A5\u53D7\u53C2\u6570\uFF1A {\"status\":\"complete\",\"args\":[{\"sku\":[\"A3936031\"],\"handle\":\"space-a40-a3936031\"}],\"result\":\"\"}\n * \u540E\u7AEF\u63A5\u53E3\u6587\u6863\uFF1Ahttps://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb\n */\n gotocheckoutRender?: string | ((_props: any) => React.ReactElement)\n /** \u6253\u5F00\u8D2D\u7269\u8F66 action \u5361\u7247\uFF0C\u63A5\u53D7\u53C2\u6570\uFF1A {\"status\":\"complete\",\"args\":[{\"sku\":[\"A3936031\"],\"handle\":\"space-a40-a3936031\"}],\"result\":\"\"}\n * \u540E\u7AEF\u63A5\u53E3\u6587\u6863\uFF1Ahttps://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb\n */\n gotocartRender?: string | ((_props: any) => React.ReactElement)\n /** \u52A0\u8D2D\u5361\u7247\uFF0C\u63A5\u53D7\u53C2\u6570\uFF1A {\"status\":\"complete\",\"args\":[{\"sku\":[\"A3936031\"],\"handle\":\"space-a40-a3936031\"}],\"result\":\"\"}\n * \u540E\u7AEF\u63A5\u53E3\u6587\u6863\uFF1Ahttps://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb\n */\n addtocartRender?: string | ((_props: any) => React.ReactElement)\n /** \u4EA7\u54C1\u5361\u7247\uFF0C\u63A5\u53D7\u53C2\u6570\uFF1A {\"status\":\"complete\",\"args\":[{\"sku\":[\"A3936031\"],\"handle\":\"space-a40-a3936031\"}],\"result\":\"\"}\n * \u540E\u7AEF\u63A5\u53E3\u6587\u6863\uFF1Ahttps://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb\n */\n productRender?: string | ((_props: any) => React.ReactElement)\n /** \u8BA2\u9605\u5361\u7247\uFF0C\u63A5\u53D7\u53C2\u6570\uFF1A {\"status\":\"complete\",\"args\":[{\"sku\":[\"A3936031\"],\"handle\":\"space-a40-a3936031\"}],\"result\":\"\"}\n * \u540E\u7AEF\u63A5\u53E3\u6587\u6863\uFF1Ahttps://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb\n */\n signupRender?: string | ((_props: any) => React.ReactElement)\n /** CopilotPopup \u81EA\u5B9A\u4E49\u53C2\u6570\uFF0C\u53C2\u8003\uFF1Ahttps://docs.copilotkit.ai/reference/components/CopilotPopup */\n popup?: any\n /** \u6587\u6848\uFF0C{\"popupTip\": \"Hi ! Welcome to soundcore Innovations live chat\uFF01\", \"popupTipTimeout\": [3000, 6000]} */\n lang?: any\n /** \u53C2\u8003\u6B64\u6587\u6863\uFF1Ahttps://docs.copilotkit.ai/concepts/customize-look-and-feel */\n style?: any\n className?: string\n}\n\nconst Chat = (props: ChatProps) => {\n const {\n title,\n runtimeUrl,\n popup,\n shopify_domain,\n user_id = '',\n account = '',\n locale = '',\n query = '',\n showResponseButton,\n gotocheckoutRender,\n gotocartRender,\n addtocartRender,\n productRender,\n signupRender,\n style,\n className = '',\n lang,\n } = props\n const [autoTipOpen, autoTipClose] = lang?.popupTipTimeout || [3000, 6000]\n\n const [openTip, setOpenTip] = useState(false)\n const [openPopup, setOpenPopup] = useState(false)\n const [start, setstart] = useState('')\n const [currentSuggestions, setCurrentSuggestions] = useState([])\n const [history, sethistory] = useState<[{ content: string; role: string }] | []>([])\n\n const getStart = useCallback(async () => {\n const result = await fetcher({\n url: `${runtimeUrl}/copilotkit/start${query}`,\n method: 'GET',\n headers: { user_id: user_id || '', shopify_domain, account, locale },\n })\n\n setCurrentSuggestions(result?.suggested_questions?.map((item: string) => ({ message: item, title: item })) || [])\n setstart(result?.opening_statement || '')\n sethistory(result?.history || [])\n }, [user_id, shopify_domain, account, locale])\n\n const getSuggestions = useCallback(async () => {\n const result = await fetcher({\n url: `${runtimeUrl}/copilotkit/suggested_questions${query}`,\n method: 'GET',\n headers: { user_id: user_id || '', shopify_domain, account, locale },\n })\n\n setCurrentSuggestions(\n result?.suggested_questions?.data?.map((item: string) => ({ message: item, title: item })) || []\n )\n }, [user_id, shopify_domain, account, locale])\n\n const setOpenTipFn = () => {\n if (!openTip) setOpenTip(true)\n setTimeout(() => {\n setOpenTip(false)\n }, autoTipClose)\n }\n\n useEffect(() => {\n const timer = setTimeout(() => {\n setOpenTipFn()\n }, autoTipOpen)\n\n return () => {\n clearTimeout(timer)\n }\n }, [])\n\n useEffect(() => {\n if (!start) {\n getStart()\n }\n }, [])\n\n return (\n <div className={className} style={style || {}}>\n {user_id && runtimeUrl && (\n <CopilotKit\n runtimeUrl={`${runtimeUrl}/copilotkit/chat${query}`}\n showDevConsole={false}\n headers={{ user_id: user_id || '', shopify_domain: shopify_domain, account, locale }}\n >\n <CopilotPopup\n {...popup}\n showResponseButton={showResponseButton !== 'follow'}\n labels={{\n title: title || 'DTC Live Chat',\n initial: start || '',\n }}\n instructions={start || ''}\n onInProgress={load => {\n if (openPopup && load) setCurrentSuggestions([])\n if (openPopup && !load) getSuggestions()\n }}\n Messages={({ messages, inProgress }) => (\n <Messages\n messages={messages}\n inProgress={inProgress}\n ResponseButton={showResponseButton === 'follow' ? <ResponseButton /> : undefined}\n >\n <Suggestions currentSuggestions={currentSuggestions} />\n </Messages>\n )}\n Button={({ open, setOpen }) => {\n const Button = popup?.Button || DefaultButton\n // eslint-disable-next-line react-hooks/rules-of-hooks\n useEffect(() => {\n setOpenPopup(open)\n }, [open])\n return (\n <>\n {lang?.popupTip && openTip && !openPopup && (\n <div className=\"copilotKitPopup copilotKitPopupTip\">\n <button\n onClick={() => {\n setOpen(true)\n setOpenTip(false)\n }}\n aria-label=\"Open Chat\"\n className=\"copilotKitPopupTipContent\"\n >\n {lang?.popupTip}\n </button>\n </div>\n )}\n <Button open={open} setOpen={setOpen} setOpenTip={setOpenTip} />\n </>\n )\n }}\n >\n <CopilotAction\n start={start}\n history={history}\n gotocartRender={gotocartRender}\n gotocheckoutRender={gotocheckoutRender}\n addtocartRender={addtocartRender}\n productRender={productRender}\n signupRender={signupRender}\n />\n </CopilotPopup>\n </CopilotKit>\n )}\n </div>\n )\n}\n\nexport default Chat\n"],
5
- "mappings": "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",
6
- "names": ["Fragment", "jsx", "jsxs", "useCallback", "useState", "useEffect", "CopilotKit", "CopilotPopup", "DefaultButton", "Messages", "ResponseButton", "Suggestions", "CopilotAction", "fetcher", "Chat", "props", "title", "runtimeUrl", "popup", "shopify_domain", "user_id", "account", "locale", "query", "showResponseButton", "gotocheckoutRender", "gotocartRender", "addtocartRender", "productRender", "signupRender", "style", "className", "lang", "autoTipOpen", "autoTipClose", "openTip", "setOpenTip", "openPopup", "setOpenPopup", "start", "setstart", "currentSuggestions", "setCurrentSuggestions", "history", "sethistory", "getStart", "result", "item", "getSuggestions", "setOpenTipFn", "timer", "load", "messages", "inProgress", "open", "setOpen", "Button", "chat_default"]
4
+ "sourcesContent": ["/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useMemo } from 'react'\nimport { useCallback, useState, useEffect } from 'react'\nimport { CopilotKit } from '@copilotkit/react-core'\nimport { CopilotPopup } from '@copilotkit/react-ui'\nimport DefaultButton from './button.js'\nimport Messages from './messages.js'\nimport ResponseButton from './response.js'\nimport Suggestions from './suggestions.js'\nimport { CopilotAction } from './action.js'\nimport fetcher from '../../helpers/fetcher.js'\n\nexport interface ChatProps {\n title: string\n runtimeUrl: string\n shopifyDomain: string\n /** GA \u7684 client id\n */\n userId: string\n /** \u662F\u5426\u767B\u9646\u7528\u6237 0 or 1\n */\n account?: string\n /** \u7528\u6237\u6D4F\u89C8\u5668\u8BED\u8A00\n */\n locale?: string\n /** \u5F00\u573A\u767D\n */\n prologue?: string\n /** ?a=1&b=2\n */\n query?: string\n /** 'follow' or 'unfollow' | true or false\n * follow: ResponseButton \u4F1A\u8DDF\u968F\u5728 messages \u7684\u540E\u8FB9\n * unfollow: ResponseButton \u5728\u804A\u5929\u6846\u5E95\u90E8\n */\n showResponseButton?: string | boolean\n /** \u8DF3\u8F6C checkout action \u5361\u7247\uFF0C\u63A5\u53D7\u53C2\u6570\uFF1A {\"status\":\"complete\",\"args\":[{\"sku\":[\"A3936031\"],\"handle\":\"space-a40-a3936031\"}],\"result\":\"\"}\n * \u540E\u7AEF\u63A5\u53E3\u6587\u6863\uFF1Ahttps://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb\n */\n gotocheckoutRender?: string | ((_props: any) => React.ReactElement)\n /** \u6253\u5F00\u8D2D\u7269\u8F66 action \u5361\u7247\uFF0C\u63A5\u53D7\u53C2\u6570\uFF1A {\"status\":\"complete\",\"args\":[{\"sku\":[\"A3936031\"],\"handle\":\"space-a40-a3936031\"}],\"result\":\"\"}\n * \u540E\u7AEF\u63A5\u53E3\u6587\u6863\uFF1Ahttps://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb\n */\n gotocartRender?: string | ((_props: any) => React.ReactElement)\n /** \u6253\u5F00\u8D2D\u7269\u8F66 action \u7684\u89E6\u53D1\u4E8B\u4EF6\n */\n addtocartHandler?: (_args: any) => Promise<any>\n /** \u52A0\u8D2D\u5361\u7247\uFF0C\u63A5\u53D7\u53C2\u6570\uFF1A {\"status\":\"complete\",\"args\":[{\"sku\":[\"A3936031\"],\"handle\":\"space-a40-a3936031\"}],\"result\":\"\"}\n * \u540E\u7AEF\u63A5\u53E3\u6587\u6863\uFF1Ahttps://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb\n */\n addtocartRender?: string | ((_props: any) => React.ReactElement)\n /** \u8BA2\u9605\u5361\u7247\uFF0C\u63A5\u53D7\u53C2\u6570\uFF1A {\"status\":\"complete\",\"args\":[{\"sku\":[\"A3936031\"],\"handle\":\"space-a40-a3936031\"}],\"result\":\"\"}\n * \u540E\u7AEF\u63A5\u53E3\u6587\u6863\uFF1Ahttps://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb\n */\n signupRender?: string | ((_props: any) => React.ReactElement)\n /** \u4EA7\u54C1\u5361\u7247\uFF0C\u63A5\u53D7\u53C2\u6570\uFF1A {\"status\":\"complete\",\"args\":[{\"sku\":[\"A3936031\"],\"handle\":\"space-a40-a3936031\"}],\"result\":\"\"}\n * \u540E\u7AEF\u63A5\u53E3\u6587\u6863\uFF1Ahttps://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb\n */\n productRender?: string | ((_props: any) => React.ReactElement)\n /** CopilotPopup \u81EA\u5B9A\u4E49\u53C2\u6570\uFF0C\u53C2\u8003\uFF1Ahttps://docs.copilotkit.ai/reference/components/CopilotPopup */\n popup?: any\n /** \u6587\u6848\uFF0C{\"productRenderTipMessage\": \"\",\"popupTip\": \"Hi ! Welcome to soundcore Innovations live chat\uFF01\", \"popupTipTimeout\": [3000, 6000]} */\n lang?: any\n /** \u53C2\u8003\u6B64\u6587\u6863\uFF1Ahttps://docs.copilotkit.ai/concepts/customize-look-and-feel */\n style?: any\n className?: string\n}\n\nconst Chat = (props: ChatProps) => {\n const {\n title,\n runtimeUrl,\n popup,\n shopifyDomain,\n userId = '',\n account = '',\n prologue = '',\n locale = '',\n query = '',\n showResponseButton,\n gotocheckoutRender,\n gotocartRender,\n addtocartRender,\n productRender,\n signupRender,\n style,\n className = '',\n lang,\n } = props\n const [autoTipOpen, autoTipClose] = lang?.popupTipTimeout || [3000, 6000]\n\n const [openTip, setOpenTip] = useState(false)\n const [openPopup, setOpenPopup] = useState(false)\n const [start, setstart] = useState(prologue)\n const [currentSuggestions, setCurrentSuggestions] = useState([])\n const [history, sethistory] = useState<[{ content: string; role: string }] | []>([])\n\n const headers = useMemo(\n () => ({\n 'x-user-id': userId || '',\n 'x-shopify-domain': shopifyDomain,\n 'x-member-ship': account,\n 'x-user-locale': locale,\n }),\n [userId, shopifyDomain, account, locale]\n )\n\n const getStart = useCallback(async () => {\n const result = await fetcher({\n url: `${runtimeUrl}/copilotkit/start${query}`,\n method: 'GET',\n headers,\n })\n\n setCurrentSuggestions(result?.suggested_questions?.map((item: string) => ({ message: item, title: item })) || [])\n setstart(result?.opening_statement || '')\n sethistory(result?.history || [])\n }, [userId, shopifyDomain, account, locale])\n\n const getSuggestions = useCallback(async () => {\n const result = await fetcher({\n url: `${runtimeUrl}/copilotkit/suggested_questions${query}`,\n method: 'GET',\n headers,\n })\n\n setCurrentSuggestions(\n result?.suggested_questions?.data?.map((item: string) => ({ message: item, title: item })) || []\n )\n }, [userId, shopifyDomain, account, locale])\n\n const setOpenTipFn = () => {\n if (!openTip) setOpenTip(true)\n setTimeout(() => {\n setOpenTip(false)\n }, autoTipClose)\n }\n\n useEffect(() => {\n const timer = setTimeout(() => {\n setOpenTipFn()\n }, autoTipOpen)\n\n return () => {\n clearTimeout(timer)\n }\n }, [])\n\n return (\n <div className={className} style={style || {}}>\n {userId && runtimeUrl && (\n <CopilotKit runtimeUrl={`${runtimeUrl}/copilotkit/chat${query}`} showDevConsole={false} headers={headers}>\n <CopilotPopup\n {...popup}\n showResponseButton={showResponseButton !== 'follow'}\n labels={{\n title: title || 'DTC Live Chat',\n initial: start || '',\n }}\n instructions={start || ''}\n onInProgress={load => {\n if (openPopup && load) setCurrentSuggestions([])\n if (openPopup && !load) getSuggestions()\n }}\n Messages={({ messages, inProgress }) => (\n <Messages\n messages={messages}\n inProgress={inProgress}\n ResponseButton={showResponseButton === 'follow' ? <ResponseButton /> : undefined}\n >\n <Suggestions currentSuggestions={currentSuggestions} />\n </Messages>\n )}\n Button={({ open, setOpen: setOpenDefault }) => {\n const Button = popup?.Button || DefaultButton\n // eslint-disable-next-line react-hooks/rules-of-hooks\n useEffect(() => {\n setOpenPopup(open)\n }, [open])\n\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const setOpen = useCallback(() => {\n setOpenDefault(!open)\n setOpenTip(false)\n if (!start || !history?.length) getStart()\n }, [start])\n\n return (\n <>\n {lang?.popupTip && openTip && !openPopup && (\n <div className=\"copilotKitPopup copilotKitPopupTip\">\n <button onClick={setOpen} aria-label=\"Open Chat\" className=\"copilotKitPopupTipContent\">\n {lang?.popupTip}\n </button>\n </div>\n )}\n <Button open={open} setOpen={setOpen} />\n </>\n )\n }}\n >\n <CopilotAction\n start={start}\n history={history}\n gotocartRender={gotocartRender}\n gotocheckoutRender={gotocheckoutRender}\n addtocartRender={addtocartRender}\n productRender={productRender}\n signupRender={signupRender}\n productRenderTipMessage={lang?.productRenderTipMessage}\n />\n </CopilotPopup>\n </CopilotKit>\n )}\n </div>\n )\n}\n\nexport default Chat\n"],
5
+ "mappings": "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",
6
+ "names": ["Fragment", "jsx", "jsxs", "useMemo", "useCallback", "useState", "useEffect", "CopilotKit", "CopilotPopup", "DefaultButton", "Messages", "ResponseButton", "Suggestions", "CopilotAction", "fetcher", "Chat", "props", "title", "runtimeUrl", "popup", "shopifyDomain", "userId", "account", "prologue", "locale", "query", "showResponseButton", "gotocheckoutRender", "gotocartRender", "addtocartRender", "productRender", "signupRender", "style", "className", "lang", "autoTipOpen", "autoTipClose", "openTip", "setOpenTip", "openPopup", "setOpenPopup", "start", "setstart", "currentSuggestions", "setCurrentSuggestions", "history", "sethistory", "headers", "getStart", "result", "item", "getSuggestions", "setOpenTipFn", "timer", "load", "messages", "inProgress", "open", "setOpenDefault", "Button", "setOpen", "chat_default"]
7
7
  }
@@ -2,8 +2,7 @@ import React from 'react';
2
2
  import { Message } from '@copilotkit/runtime-client-gql';
3
3
  export interface ButtonProps {
4
4
  open: boolean;
5
- setOpen: (open: boolean) => void;
6
- setOpenTip: (open: boolean) => void;
5
+ setOpen: () => void;
7
6
  }
8
7
  export interface WindowProps {
9
8
  open: boolean;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/components/chat/props.ts"],
4
- "sourcesContent": ["import React from 'react'\nimport { Message } from '@copilotkit/runtime-client-gql'\n\nexport interface ButtonProps {\n open: boolean\n setOpen: (open: boolean) => void\n setOpenTip: (open: boolean) => void\n}\n\nexport interface WindowProps {\n open: boolean\n setOpen: (open: boolean) => void\n clickOutsideToClose: boolean\n hitEscapeToClose: boolean\n shortcut: string\n children?: React.ReactNode\n}\n\nexport interface HeaderProps {\n open: boolean\n setOpen: (open: boolean) => void\n}\n\nexport interface ChatSuggestions {\n currentSuggestions: SuggestionsProps[]\n}\n\nexport interface SuggestionsProps {\n title: string\n message: string\n partial?: boolean\n className?: string\n}\n\nexport interface MessagesProps {\n messages: Message[]\n inProgress: boolean\n ResponseButton?: React.ReactElement\n children?: React.ReactNode\n}\n\nexport interface InputProps {\n inProgress: boolean\n onSend: (text: string) => Promise<Message>\n isVisible?: boolean\n}\n\nexport interface ResponseButtonProps {\n onClick: () => void\n inProgress: boolean\n}\n"],
4
+ "sourcesContent": ["import React from 'react'\nimport { Message } from '@copilotkit/runtime-client-gql'\n\nexport interface ButtonProps {\n open: boolean\n setOpen: () => void\n}\n\nexport interface WindowProps {\n open: boolean\n setOpen: (open: boolean) => void\n clickOutsideToClose: boolean\n hitEscapeToClose: boolean\n shortcut: string\n children?: React.ReactNode\n}\n\nexport interface HeaderProps {\n open: boolean\n setOpen: (open: boolean) => void\n}\n\nexport interface ChatSuggestions {\n currentSuggestions: SuggestionsProps[]\n}\n\nexport interface SuggestionsProps {\n title: string\n message: string\n partial?: boolean\n className?: string\n}\n\nexport interface MessagesProps {\n messages: Message[]\n inProgress: boolean\n ResponseButton?: React.ReactElement\n children?: React.ReactNode\n}\n\nexport interface InputProps {\n inProgress: boolean\n onSend: (text: string) => Promise<Message>\n isVisible?: boolean\n}\n\nexport interface ResponseButtonProps {\n onClick: () => void\n inProgress: boolean\n}\n"],
5
5
  "mappings": "AAAA,MAAkB,QAClB,MAAwB",
6
6
  "names": []
7
7
  }
@@ -1,2 +1,2 @@
1
- import{jsx as t}from"react/jsx-runtime";import"react";import{Chat as e}from"../components/index.js";import"../styles/chat.css";const a={title:"Campaign/Chat",component:e,args:{title:"DTC Live Chat",runtimeUrl:"https://beta-dtcapi.anker.com",shopify_domain:"soundcoreusa.myshopify.com"},tags:["autodocs"],decorators:[o=>t("div",{style:{height:"700px"},children:t(o,{})})]};var m=a;const n={args:{title:"DTC Live Chat",runtimeUrl:"https://beta-dtcapi.anker.com",shopify_domain:"soundcoreusa.myshopify.com",user_id:"arno6",showResponseButton:"follow",lang:{popupTip:"Hi ! Welcome to soundcore Innovations live chat\uFF01",popupTipTimeout:[3e3,6e3]}}};export{n as Default,m as default};
1
+ import{jsx as t}from"react/jsx-runtime";import"react";import{Chat as e}from"../components/index.js";import"../styles/chat.css";const a={title:"Campaign/Chat",component:e,args:{title:"DTC Live Chat",runtimeUrl:"https://beta-api-livechat.anker.com",shopifyDomain:"soundcoreusa.myshopify.com"},tags:["autodocs"],decorators:[o=>t("div",{style:{height:"700px"},children:t(o,{})})]};var m=a;const n={args:{title:"DTC Live Chat",runtimeUrl:"https://beta-api-livechat.anker.com",shopifyDomain:"soundcoreusa.myshopify.com",userId:"arno7",showResponseButton:"follow",lang:{popupTip:"Hi ! Welcome to soundcore Innovations live chat\uFF01",popupTipTimeout:[3e3,6e3]}}};export{n as Default,m as default};
2
2
  //# sourceMappingURL=chat.stories.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/stories/chat.stories.tsx"],
4
- "sourcesContent": ["import React from 'react'\nimport type { Meta, StoryObj } from '@storybook/react'\nimport { Chat } from '../components/index.js'\nimport '../styles/chat.css'\n\ntype Story = StoryObj<typeof meta>\n\n// More on how to set up stories at: https://storybook.js.org/docs/writing-stories#default-export\nconst meta: Meta<typeof Chat> = {\n // \u540C\u65F6\u5B9A\u4E49\u4E86\u9875\u9762\u5DE6\u4FA7\u83DC\u5355\n title: 'Campaign/Chat',\n component: Chat,\n args: {\n title: 'DTC Live Chat',\n runtimeUrl: 'https://beta-dtcapi.anker.com',\n shopify_domain: 'soundcoreusa.myshopify.com',\n },\n // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/writing-docs/autodocs\n tags: ['autodocs'],\n // More on argTypes: https://storybook.js.org/docs/api/argtypes\n decorators: [\n Story => (\n <div style={{ height: '700px' }}>\n <Story />\n </div>\n ),\n ],\n} satisfies Meta<typeof Chat>\n\nexport default meta\n\nexport const Default: Story = {\n args: {\n title: 'DTC Live Chat',\n runtimeUrl: 'https://beta-dtcapi.anker.com',\n shopify_domain: 'soundcoreusa.myshopify.com',\n user_id: 'arno6',\n showResponseButton: 'follow',\n lang: { popupTip: 'Hi ! Welcome to soundcore Innovations live chat\uFF01', popupTipTimeout: [3000, 6000] },\n },\n}\n"],
5
- "mappings": "AAuBQ,cAAAA,MAAA,oBAvBR,MAAkB,QAElB,OAAS,QAAAC,MAAY,yBACrB,MAAO,qBAKP,MAAMC,EAA0B,CAE9B,MAAO,gBACP,UAAWD,EACX,KAAM,CACJ,MAAO,gBACP,WAAY,gCACZ,eAAgB,4BAClB,EAEA,KAAM,CAAC,UAAU,EAEjB,WAAY,CACVE,GACEH,EAAC,OAAI,MAAO,CAAE,OAAQ,OAAQ,EAC5B,SAAAA,EAACG,EAAA,EAAM,EACT,CAEJ,CACF,EAEA,IAAOC,EAAQF,EAER,MAAMG,EAAiB,CAC5B,KAAM,CACJ,MAAO,gBACP,WAAY,gCACZ,eAAgB,6BAChB,QAAS,QACT,mBAAoB,SACpB,KAAM,CAAE,SAAU,wDAAoD,gBAAiB,CAAC,IAAM,GAAI,CAAE,CACtG,CACF",
4
+ "sourcesContent": ["import React from 'react'\nimport type { Meta, StoryObj } from '@storybook/react'\nimport { Chat } from '../components/index.js'\nimport '../styles/chat.css'\n\ntype Story = StoryObj<typeof meta>\n\n// More on how to set up stories at: https://storybook.js.org/docs/writing-stories#default-export\nconst meta: Meta<typeof Chat> = {\n // \u540C\u65F6\u5B9A\u4E49\u4E86\u9875\u9762\u5DE6\u4FA7\u83DC\u5355\n title: 'Campaign/Chat',\n component: Chat,\n args: {\n title: 'DTC Live Chat',\n runtimeUrl: 'https://beta-api-livechat.anker.com',\n shopifyDomain: 'soundcoreusa.myshopify.com',\n },\n // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/writing-docs/autodocs\n tags: ['autodocs'],\n // More on argTypes: https://storybook.js.org/docs/api/argtypes\n decorators: [\n Story => (\n <div style={{ height: '700px' }}>\n <Story />\n </div>\n ),\n ],\n} satisfies Meta<typeof Chat>\n\nexport default meta\n\nexport const Default: Story = {\n args: {\n title: 'DTC Live Chat',\n runtimeUrl: 'https://beta-api-livechat.anker.com',\n shopifyDomain: 'soundcoreusa.myshopify.com',\n userId: 'arno7',\n showResponseButton: 'follow',\n lang: { popupTip: 'Hi ! Welcome to soundcore Innovations live chat\uFF01', popupTipTimeout: [3000, 6000] },\n },\n}\n"],
5
+ "mappings": "AAuBQ,cAAAA,MAAA,oBAvBR,MAAkB,QAElB,OAAS,QAAAC,MAAY,yBACrB,MAAO,qBAKP,MAAMC,EAA0B,CAE9B,MAAO,gBACP,UAAWD,EACX,KAAM,CACJ,MAAO,gBACP,WAAY,sCACZ,cAAe,4BACjB,EAEA,KAAM,CAAC,UAAU,EAEjB,WAAY,CACVE,GACEH,EAAC,OAAI,MAAO,CAAE,OAAQ,OAAQ,EAC5B,SAAAA,EAACG,EAAA,EAAM,EACT,CAEJ,CACF,EAEA,IAAOC,EAAQF,EAER,MAAMG,EAAiB,CAC5B,KAAM,CACJ,MAAO,gBACP,WAAY,sCACZ,cAAe,6BACf,OAAQ,QACR,mBAAoB,SACpB,KAAM,CAAE,SAAU,wDAAoD,gBAAiB,CAAC,IAAM,GAAI,CAAE,CACtG,CACF",
6
6
  "names": ["jsx", "Chat", "meta", "Story", "chat_stories_default", "Default"]
7
7
  }