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

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 +49 -38
  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 tt,jsx as e,jsxs as et}from"react/jsx-runtime";import{useMemo as z}from"react";import{useCallback as f,useState as r,useEffect as _}from"react";import{CopilotKit as J}from"@copilotkit/react-core";import{CopilotPopup as Q}from"@copilotkit/react-ui";import V from"./button.js";import W from"./messages.js";import X from"./response.js";import Y from"./suggestions.js";import{CopilotAction as Z}from"./action.js";import B from"../../helpers/fetcher.js";const j=k=>{const{title:w,runtimeUrl:i,popup:h,shopifyDomain:a,userId:s="",account:p="",prologue:E="",locale:u="",query:l="",showResponseButton:y,gotocheckoutRender:O,gotocartRender:b,addtocartRender:S,productRender:v,signupRender:M,addtocartHandler:$,style:q,className:x="",lang:c}=k,[D,K]=c?.popupTipTimeout||[3e3,6e3],[T,g]=r(!1),[d,N]=r(!1),[n,H]=r(E),[I,m]=r([]),[C,U]=r([]),R=z(()=>({"x-user-id":s||"","x-shopify-domain":a,"x-member-ship":p,"x-user-locale":u}),[s,a,p,u]),G=f(async()=>{const t=await B({url:`${i}/copilotkit/start${l}`,method:"GET",headers:R});m(t?.suggested_questions?.map(o=>({message:o,title:o}))||[]),H(t?.opening_statement||""),U(t?.history||[])},[s,a,p,u]),A=f(async()=>{const t=await B({url:`${i}/copilotkit/suggested_questions${l}`,method:"GET",headers:R});m(t?.suggested_questions?.data?.map(o=>({message:o,title:o}))||[])},[s,a,p,u]),F=()=>{T||g(!0),setTimeout(()=>{g(!1)},K)};return _(()=>{const t=setTimeout(()=>{F()},D);return()=>{clearTimeout(t)}},[]),e("div",{className:x,style:q||{},children:s&&i&&e(J,{runtimeUrl:`${i}/copilotkit/chat${l}`,showDevConsole:!1,headers:R,children:e(Q,{...h,showResponseButton:y!=="follow",labels:{title:w||"DTC Live Chat",initial:n||""},instructions:n||"",onInProgress:t=>{d&&t&&m([]),d&&!t&&A()},Messages:({messages:t,inProgress:o})=>e(W,{messages:t,inProgress:o,ResponseButton:y==="follow"?e(X,{}):void 0,children:e(Y,{currentSuggestions:I})}),Button:({open:t,setOpen:o})=>{const L=h?.Button||V;_(()=>{N(t)},[t]);const P=f(()=>{o(!t),g(!1),(!n||!C?.length)&&G()},[n]);return et(tt,{children:[c?.popupTip&&T&&!d&&e("div",{className:"copilotKitPopup copilotKitPopupTip",children:e("button",{onClick:P,"aria-label":"Open Chat",className:"copilotKitPopupTipContent",children:c?.popupTip})}),e(L,{open:t,setOpen:P})]})},children:e(Z,{start:n,history:C,gotocartRender:b,gotocheckoutRender:O,addtocartRender:S,signupRender:M,productRender:v,addtocartHandler:$,productRenderTipMessage:c?.productRenderTipMessage})})})})};var dt=j;export{dt 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 addtocartHandler,\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 signupRender={signupRender}\n productRender={productRender}\n addtocartHandler={addtocartHandler}\n productRenderTipMessage={lang?.productRenderTipMessage}\n />\n </CopilotPopup>\n </CopilotKit>\n )}\n </div>\n )\n}\n\nexport default Chat\n"],
5
+ "mappings": "AAyKkE,OAoBlD,YAAAA,GApBkD,OAAAC,EAoBlD,QAAAC,OApBkD,oBAxKlE,OAAgB,WAAAC,MAAe,QAC/B,OAAS,eAAAC,EAAa,YAAAC,EAAU,aAAAC,MAAiB,QACjD,OAAS,cAAAC,MAAkB,yBAC3B,OAAS,gBAAAC,MAAoB,uBAC7B,OAAOC,MAAmB,cAC1B,OAAOC,MAAc,gBACrB,OAAOC,MAAoB,gBAC3B,OAAOC,MAAiB,mBACxB,OAAS,iBAAAC,MAAqB,cAC9B,OAAOC,MAAa,2BA0DpB,MAAMC,EAAQC,GAAqB,CACjC,KAAM,CACJ,MAAAC,EACA,WAAAC,EACA,MAAAC,EACA,cAAAC,EACA,OAAAC,EAAS,GACT,QAAAC,EAAU,GACV,SAAAC,EAAW,GACX,OAAAC,EAAS,GACT,MAAAC,EAAQ,GACR,mBAAAC,EACA,mBAAAC,EACA,eAAAC,EACA,gBAAAC,EACA,cAAAC,EACA,aAAAC,EACA,iBAAAC,EACA,MAAAC,EACA,UAAAC,EAAY,GACZ,KAAAC,CACF,EAAInB,EACE,CAACoB,EAAaC,CAAY,EAAIF,GAAM,iBAAmB,CAAC,IAAM,GAAI,EAElE,CAACG,EAASC,CAAU,EAAIlC,EAAS,EAAK,EACtC,CAACmC,EAAWC,CAAY,EAAIpC,EAAS,EAAK,EAC1C,CAACqC,EAAOC,CAAQ,EAAItC,EAASkB,CAAQ,EACrC,CAACqB,EAAoBC,CAAqB,EAAIxC,EAAS,CAAC,CAAC,EACzD,CAACyC,EAASC,CAAU,EAAI1C,EAAmD,CAAC,CAAC,EAE7E2C,EAAU7C,EACd,KAAO,CACL,YAAakB,GAAU,GACvB,mBAAoBD,EACpB,gBAAiBE,EACjB,gBAAiBE,CACnB,GACA,CAACH,EAAQD,EAAeE,EAASE,CAAM,CACzC,EAEMyB,EAAW7C,EAAY,SAAY,CACvC,MAAM8C,EAAS,MAAMpC,EAAQ,CAC3B,IAAK,GAAGI,CAAU,oBAAoBO,CAAK,GAC3C,OAAQ,MACR,QAAAuB,CACF,CAAC,EAEDH,EAAsBK,GAAQ,qBAAqB,IAAKC,IAAkB,CAAE,QAASA,EAAM,MAAOA,CAAK,EAAE,GAAK,CAAC,CAAC,EAChHR,EAASO,GAAQ,mBAAqB,EAAE,EACxCH,EAAWG,GAAQ,SAAW,CAAC,CAAC,CAClC,EAAG,CAAC7B,EAAQD,EAAeE,EAASE,CAAM,CAAC,EAErC4B,EAAiBhD,EAAY,SAAY,CAC7C,MAAM8C,EAAS,MAAMpC,EAAQ,CAC3B,IAAK,GAAGI,CAAU,kCAAkCO,CAAK,GACzD,OAAQ,MACR,QAAAuB,CACF,CAAC,EAEDH,EACEK,GAAQ,qBAAqB,MAAM,IAAKC,IAAkB,CAAE,QAASA,EAAM,MAAOA,CAAK,EAAE,GAAK,CAAC,CACjG,CACF,EAAG,CAAC9B,EAAQD,EAAeE,EAASE,CAAM,CAAC,EAErC6B,EAAe,IAAM,CACpBf,GAASC,EAAW,EAAI,EAC7B,WAAW,IAAM,CACfA,EAAW,EAAK,CAClB,EAAGF,CAAY,CACjB,EAEA,OAAA/B,EAAU,IAAM,CACd,MAAMgD,EAAQ,WAAW,IAAM,CAC7BD,EAAa,CACf,EAAGjB,CAAW,EAEd,MAAO,IAAM,CACX,aAAakB,CAAK,CACpB,CACF,EAAG,CAAC,CAAC,EAGHrD,EAAC,OAAI,UAAWiC,EAAW,MAAOD,GAAS,CAAC,EACzC,SAAAZ,GAAUH,GACTjB,EAACM,EAAA,CAAW,WAAY,GAAGW,CAAU,mBAAmBO,CAAK,GAAI,eAAgB,GAAO,QAASuB,EAC/F,SAAA/C,EAACO,EAAA,CACE,GAAGW,EACJ,mBAAoBO,IAAuB,SAC3C,OAAQ,CACN,MAAOT,GAAS,gBAChB,QAASyB,GAAS,EACpB,EACA,aAAcA,GAAS,GACvB,aAAca,GAAQ,CAChBf,GAAae,GAAMV,EAAsB,CAAC,CAAC,EAC3CL,GAAa,CAACe,GAAMH,EAAe,CACzC,EACA,SAAU,CAAC,CAAE,SAAAI,EAAU,WAAAC,CAAW,IAChCxD,EAACS,EAAA,CACC,SAAU8C,EACV,WAAYC,EACZ,eAAgB/B,IAAuB,SAAWzB,EAACU,EAAA,EAAe,EAAK,OAEvE,SAAAV,EAACW,EAAA,CAAY,mBAAoBgC,EAAoB,EACvD,EAEF,OAAQ,CAAC,CAAE,KAAAc,EAAM,QAASC,CAAe,IAAM,CAC7C,MAAMC,EAASzC,GAAO,QAAUV,EAEhCH,EAAU,IAAM,CACdmC,EAAaiB,CAAI,CACnB,EAAG,CAACA,CAAI,CAAC,EAGT,MAAMG,EAAUzD,EAAY,IAAM,CAChCuD,EAAe,CAACD,CAAI,EACpBnB,EAAW,EAAK,GACZ,CAACG,GAAS,CAACI,GAAS,SAAQG,EAAS,CAC3C,EAAG,CAACP,CAAK,CAAC,EAEV,OACExC,GAAAF,GAAA,CACG,UAAAmC,GAAM,UAAYG,GAAW,CAACE,GAC7BvC,EAAC,OAAI,UAAU,qCACb,SAAAA,EAAC,UAAO,QAAS4D,EAAS,aAAW,YAAY,UAAU,4BACxD,SAAA1B,GAAM,SACT,EACF,EAEFlC,EAAC2D,EAAA,CAAO,KAAMF,EAAM,QAASG,EAAS,GACxC,CAEJ,EAEA,SAAA5D,EAACY,EAAA,CACC,MAAO6B,EACP,QAASI,EACT,eAAgBlB,EAChB,mBAAoBD,EACpB,gBAAiBE,EACjB,aAAcE,EACd,cAAeD,EACf,iBAAkBE,EAClB,wBAAyBG,GAAM,wBACjC,EACF,EACF,EAEJ,CAEJ,EAEA,IAAO2B,GAAQ/C",
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", "addtocartHandler", "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
  }