@ai-group/chat-sdk 0.5.2 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/dist/cjs/components/XAiChatbot/XAiChatbot.stories.js +14 -5
  2. package/dist/cjs/components/XAiChatbot/XAiChatbot.stories.js.map +2 -2
  3. package/dist/cjs/components/XAiChatbot/index.js +21 -102
  4. package/dist/cjs/components/XAiChatbot/index.js.map +3 -3
  5. package/dist/cjs/components/XAiChatbot/styles.d.ts +2 -14
  6. package/dist/cjs/components/XAiChatbot/styles.js +19 -161
  7. package/dist/cjs/components/XAiChatbot/styles.js.map +2 -2
  8. package/dist/cjs/components/XAiConversations/index.js +4 -3
  9. package/dist/cjs/components/XAiConversations/index.js.map +2 -2
  10. package/dist/cjs/components/XAiConversations/styles.d.ts +4 -0
  11. package/dist/cjs/components/XAiConversations/styles.js +23 -0
  12. package/dist/cjs/components/XAiConversations/styles.js.map +2 -2
  13. package/dist/cjs/components/XAiProvider/XAiProvider.stories.js +3 -3
  14. package/dist/cjs/components/XAiProvider/XAiProvider.stories.js.map +2 -2
  15. package/dist/cjs/components/XAiProvider/demo.styles.d.ts +2 -0
  16. package/dist/cjs/components/XAiProvider/index.d.ts +2 -2
  17. package/dist/cjs/components/XAiProvider/index.js +42 -12
  18. package/dist/cjs/components/XAiProvider/index.js.map +3 -3
  19. package/dist/cjs/components/XAiSender/XAiSender.stories.d.ts +6 -0
  20. package/dist/cjs/components/XAiSender/XAiSender.stories.js +86 -0
  21. package/dist/cjs/components/XAiSender/XAiSender.stories.js.map +7 -0
  22. package/dist/cjs/components/XAiSender/index.d.ts +4 -0
  23. package/dist/cjs/components/XAiSender/index.js +168 -0
  24. package/dist/cjs/components/XAiSender/index.js.map +7 -0
  25. package/dist/cjs/components/XAiSender/styles.d.ts +47 -0
  26. package/dist/cjs/components/XAiSender/styles.js +157 -0
  27. package/dist/cjs/components/XAiSender/styles.js.map +7 -0
  28. package/dist/cjs/constants/index.d.ts +1 -0
  29. package/dist/cjs/constants/index.js +3 -0
  30. package/dist/cjs/constants/index.js.map +2 -2
  31. package/dist/cjs/hooks/useAgentGenerator.js.map +1 -1
  32. package/dist/cjs/styles/common.d.ts +9 -0
  33. package/dist/cjs/styles/common.js +30 -0
  34. package/dist/cjs/styles/common.js.map +2 -2
  35. package/dist/cjs/types/XAiChatbot.d.ts +5 -17
  36. package/dist/cjs/types/XAiChatbot.js.map +1 -1
  37. package/dist/cjs/types/XAiConversations.d.ts +2 -0
  38. package/dist/cjs/types/XAiConversations.js.map +1 -1
  39. package/dist/cjs/types/XAiProvider.d.ts +6 -0
  40. package/dist/cjs/types/XAiProvider.js.map +2 -2
  41. package/dist/cjs/types/XAiSender.d.ts +13 -0
  42. package/dist/cjs/types/XAiSender.js +18 -0
  43. package/dist/cjs/types/XAiSender.js.map +7 -0
  44. package/dist/cjs/types/index.d.ts +1 -0
  45. package/dist/cjs/types/index.js +2 -0
  46. package/dist/cjs/types/index.js.map +2 -2
  47. package/dist/cjs/utils/umdEntry.js +2 -2
  48. package/dist/cjs/utils/umdEntry.js.map +2 -2
  49. package/dist/esm/components/XAiChatbot/XAiChatbot.stories.js +17 -6
  50. package/dist/esm/components/XAiChatbot/XAiChatbot.stories.js.map +1 -1
  51. package/dist/esm/components/XAiChatbot/index.js +37 -177
  52. package/dist/esm/components/XAiChatbot/index.js.map +1 -1
  53. package/dist/esm/components/XAiChatbot/styles.d.ts +2 -14
  54. package/dist/esm/components/XAiChatbot/styles.js +13 -33
  55. package/dist/esm/components/XAiChatbot/styles.js.map +1 -1
  56. package/dist/esm/components/XAiConversations/index.js +8 -3
  57. package/dist/esm/components/XAiConversations/index.js.map +1 -1
  58. package/dist/esm/components/XAiConversations/styles.d.ts +4 -0
  59. package/dist/esm/components/XAiConversations/styles.js +9 -7
  60. package/dist/esm/components/XAiConversations/styles.js.map +1 -1
  61. package/dist/esm/components/XAiProvider/XAiProvider.stories.js +14 -7
  62. package/dist/esm/components/XAiProvider/XAiProvider.stories.js.map +1 -1
  63. package/dist/esm/components/XAiProvider/demo.styles.d.ts +2 -0
  64. package/dist/esm/components/XAiProvider/index.d.ts +2 -2
  65. package/dist/esm/components/XAiProvider/index.js +50 -3
  66. package/dist/esm/components/XAiProvider/index.js.map +1 -1
  67. package/dist/esm/components/XAiSender/XAiSender.stories.d.ts +6 -0
  68. package/dist/esm/components/XAiSender/XAiSender.stories.js +66 -0
  69. package/dist/esm/components/XAiSender/XAiSender.stories.js.map +1 -0
  70. package/dist/esm/components/XAiSender/index.d.ts +4 -0
  71. package/dist/esm/components/XAiSender/index.js +211 -0
  72. package/dist/esm/components/XAiSender/index.js.map +1 -0
  73. package/dist/esm/components/XAiSender/styles.d.ts +47 -0
  74. package/dist/esm/components/XAiSender/styles.js +21 -0
  75. package/dist/esm/components/XAiSender/styles.js.map +1 -0
  76. package/dist/esm/constants/index.d.ts +1 -0
  77. package/dist/esm/constants/index.js +3 -0
  78. package/dist/esm/constants/index.js.map +1 -1
  79. package/dist/esm/hooks/useAgentGenerator.js +1 -1
  80. package/dist/esm/hooks/useAgentGenerator.js.map +1 -1
  81. package/dist/esm/styles/common.d.ts +9 -0
  82. package/dist/esm/styles/common.js +9 -2
  83. package/dist/esm/styles/common.js.map +1 -1
  84. package/dist/esm/types/XAiChatbot.d.ts +5 -17
  85. package/dist/esm/types/XAiChatbot.js.map +1 -1
  86. package/dist/esm/types/XAiConversations.d.ts +2 -0
  87. package/dist/esm/types/XAiConversations.js.map +1 -1
  88. package/dist/esm/types/XAiProvider.d.ts +6 -0
  89. package/dist/esm/types/XAiProvider.js.map +1 -1
  90. package/dist/esm/types/XAiSender.d.ts +13 -0
  91. package/dist/esm/types/XAiSender.js +2 -0
  92. package/dist/esm/types/XAiSender.js.map +1 -0
  93. package/dist/esm/types/index.d.ts +1 -0
  94. package/dist/esm/types/index.js +1 -0
  95. package/dist/esm/types/index.js.map +1 -1
  96. package/dist/esm/utils/umdEntry.js +16 -2
  97. package/dist/esm/utils/umdEntry.js.map +1 -1
  98. package/dist/umd/chat-sdk.min.js +1 -1
  99. package/package.json +1 -1
@@ -43,7 +43,14 @@ var XAiWebSDK = /*#__PURE__*/function () {
43
43
  children: /*#__PURE__*/_jsxs(XAiProvider, _objectSpread(_objectSpread({
44
44
  ref: this.providerRef
45
45
  }, this.props), {}, {
46
- children: [((_this$props$config = this.props.config) === null || _this$props$config === void 0 || (_this$props$config = _this$props$config.session) === null || _this$props$config === void 0 ? void 0 : _this$props$config.showSessionList) && /*#__PURE__*/_jsx(XAiConversations, {}), /*#__PURE__*/_jsx(XAiChatbot, {})]
46
+ children: [((_this$props$config = this.props.config) === null || _this$props$config === void 0 || (_this$props$config = _this$props$config.session) === null || _this$props$config === void 0 ? void 0 : _this$props$config.showSessionList) && /*#__PURE__*/_jsx(XAiConversations, {}), /*#__PURE__*/_jsx("div", {
47
+ style: {
48
+ display: 'flex',
49
+ justifyContent: 'center',
50
+ flex: 1
51
+ },
52
+ children: /*#__PURE__*/_jsx(XAiChatbot, {})
53
+ })]
47
54
  }))
48
55
  }));
49
56
  } else {
@@ -57,7 +64,14 @@ var XAiWebSDK = /*#__PURE__*/function () {
57
64
  children: /*#__PURE__*/_jsxs(XAiProvider, _objectSpread(_objectSpread({
58
65
  ref: this.providerRef
59
66
  }, this.props), {}, {
60
- children: [((_this$props$config2 = this.props.config) === null || _this$props$config2 === void 0 || (_this$props$config2 = _this$props$config2.session) === null || _this$props$config2 === void 0 ? void 0 : _this$props$config2.showSessionList) && /*#__PURE__*/_jsx(XAiConversations, {}), /*#__PURE__*/_jsx(XAiChatbot, {})]
67
+ children: [((_this$props$config2 = this.props.config) === null || _this$props$config2 === void 0 || (_this$props$config2 = _this$props$config2.session) === null || _this$props$config2 === void 0 ? void 0 : _this$props$config2.showSessionList) && /*#__PURE__*/_jsx(XAiConversations, {}), /*#__PURE__*/_jsx("div", {
68
+ style: {
69
+ display: 'flex',
70
+ justifyContent: 'center',
71
+ flex: 1
72
+ },
73
+ children: /*#__PURE__*/_jsx(XAiChatbot, {})
74
+ })]
61
75
  }))
62
76
  }), this.container);
63
77
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","createRef","ReactDOM","XAiProvider","XAiChatbot","XAiConversations","jsx","_jsx","jsxs","_jsxs","XAiWebSDK","container","props","_classCallCheck","_defineProperty","onError","onSuccess","onMessage","mount","_createClass","key","value","createRoot","_this$props$config","root","render","style","width","height","children","_objectSpread","ref","providerRef","config","session","showSessionList","_this$props$config2","unmount","getData","_this$providerRef$cur","_this$providerRef$cur2","_this$providerRef$cur3","appInfo","current","getAppInfo","messages","getMessages","sessions","getSessions","chat","text","_this$providerRef$cur4","stop","_this$providerRef$cur5","stopChat","reChat","_this$providerRef$cur6","initChatbot","_props$componentProps","componentProps","id","existingContainer","document","getElementById","createElement","_props$componentProps2","styleProps","_objectWithoutProperties","_excluded","Object","assign","parentNode","body","appendChild","create","window"],"sources":["../../../src/utils/umdEntry.tsx"],"sourcesContent":["import React, { createRef } from 'react';\nimport ReactDOM from 'react-dom/client';\nimport { XAiSDKProps, XAiProviderHandle } from '@/types/XAiProvider';\nimport { Messages } from '@/types/XAiMessage';\nimport XAiProvider from '@/components/XAiProvider';\nimport XAiChatbot from '@/components/XAiChatbot';\nimport XAiConversations from '@/components/XAiConversations';\n\nclass XAiWebSDK {\n container: HTMLElement;\n\n props: XAiSDKProps;\n\n root: any;\n\n providerRef = createRef<XAiProviderHandle>();\n\n // ———— hook ————\n onError?: (error: any) => void;\n\n onSuccess?: (appInfo: any) => void;\n\n onMessage?: (content: string, data: Messages) => void;\n\n constructor(container: HTMLElement, props: XAiSDKProps) {\n this.container = container;\n this.props = props;\n this.onError = props.onError;\n this.onSuccess = props.onSuccess;\n this.onMessage = props.onMessage;\n this.mount();\n }\n\n mount() {\n if (ReactDOM.createRoot) {\n this.root = ReactDOM.createRoot(this.container);\n this.root.render(\n <div style={{ width: '100%', height: '100%' }}>\n <XAiProvider ref={this.providerRef} {...this.props}>\n { this.props.config?.session?.showSessionList && <XAiConversations />}\n <XAiChatbot />\n </XAiProvider>\n </div>,\n );\n } else {\n // @ts-ignore\n ReactDOM.render(\n <div style={{ width: '100%', height: '100%' }}>\n <XAiProvider ref={this.providerRef} {...this.props}>\n { this.props.config?.session?.showSessionList && <XAiConversations />}\n <XAiChatbot />\n </XAiProvider>\n </div>,\n this.container,\n );\n }\n }\n\n unmount() {\n if (this.root && this.root.unmount) {\n this.root.unmount();\n }\n }\n\n // 支持 Coze 风格的语法:new XAiWebSDK.initChatbot()\n static initChatbot(props: XAiSDKProps): XAiWebSDK {\n let container: HTMLElement;\n\n // 检查是否有指定的 componentProps.id\n if (props.componentProps?.id) {\n const existingContainer = document.getElementById(props.componentProps.id);\n if (existingContainer) {\n container = existingContainer;\n } else {\n // 如果指定的 ID 不存在,创建新元素\n container = document.createElement('div');\n container.id = props.componentProps.id;\n }\n } else {\n // 没有指定 ID,创建默认容器\n container = document.createElement('div');\n container.id = 'xai-chatbot-container';\n }\n\n // 设置容器样式 - 将除了 id 以外的所有属性都应用到容器\n if (props.componentProps) {\n const { id, ...styleProps } = props.componentProps;\n Object.assign(container.style, styleProps);\n }\n\n // 如果容器不在 DOM 中,添加到 body\n if (!container.parentNode) {\n document.body.appendChild(container);\n }\n\n return new XAiWebSDK(container, props);\n }\n\n // 兼容旧版本的静态方法\n static create(props: XAiSDKProps): XAiWebSDK {\n return this.initChatbot(props);\n }\n\n // ————对外暴露的方法————\n getData() {\n return {\n appInfo: this.providerRef.current?.getAppInfo(),\n messages: this.providerRef.current?.getMessages(),\n sessions: this.providerRef.current?.getSessions(),\n };\n }\n\n chat(text: string) {\n this.providerRef.current?.chat(text);\n }\n\n stop() {\n this.providerRef.current?.stopChat();\n }\n\n reChat() {\n this.providerRef.current?.reChat();\n }\n}\n\n// 兼容 window 方式,也支持 new\n// @ts-ignore\nwindow.XAiWebSDK = XAiWebSDK;\n\n// 支持 ESModule/UMD 直接 import\nexport default XAiWebSDK;\n"],"mappings":"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"}
1
+ {"version":3,"names":["React","createRef","ReactDOM","XAiProvider","XAiChatbot","XAiConversations","jsx","_jsx","jsxs","_jsxs","XAiWebSDK","container","props","_classCallCheck","_defineProperty","onError","onSuccess","onMessage","mount","_createClass","key","value","createRoot","_this$props$config","root","render","style","width","height","children","_objectSpread","ref","providerRef","config","session","showSessionList","display","justifyContent","flex","_this$props$config2","unmount","getData","_this$providerRef$cur","_this$providerRef$cur2","_this$providerRef$cur3","appInfo","current","getAppInfo","messages","getMessages","sessions","getSessions","chat","text","_this$providerRef$cur4","stop","_this$providerRef$cur5","stopChat","reChat","_this$providerRef$cur6","initChatbot","_props$componentProps","componentProps","id","existingContainer","document","getElementById","createElement","_props$componentProps2","styleProps","_objectWithoutProperties","_excluded","Object","assign","parentNode","body","appendChild","create","window"],"sources":["../../../src/utils/umdEntry.tsx"],"sourcesContent":["import React, { createRef } from 'react';\nimport ReactDOM from 'react-dom/client';\nimport { XAiSDKProps, XAiProviderHandle } from '@/types/XAiProvider';\nimport { Messages } from '@/types/XAiMessage';\nimport XAiProvider from '@/components/XAiProvider';\nimport XAiChatbot from '@/components/XAiChatbot';\nimport XAiConversations from '@/components/XAiConversations';\n\nclass XAiWebSDK {\n container: HTMLElement;\n\n props: XAiSDKProps;\n\n root: any;\n\n providerRef = createRef<XAiProviderHandle>();\n\n // ———— hook ————\n onError?: (error: any) => void;\n\n onSuccess?: (appInfo: any) => void;\n\n onMessage?: (content: string, data: Messages) => void;\n\n constructor(container: HTMLElement, props: XAiSDKProps) {\n this.container = container;\n this.props = props;\n this.onError = props.onError;\n this.onSuccess = props.onSuccess;\n this.onMessage = props.onMessage;\n this.mount();\n }\n\n mount() {\n if (ReactDOM.createRoot) {\n this.root = ReactDOM.createRoot(this.container);\n this.root.render(\n <div style={{ width: '100%', height: '100%' }}>\n <XAiProvider ref={this.providerRef} {...this.props}>\n { this.props.config?.session?.showSessionList && <XAiConversations />}\n <div style={{ display: 'flex', justifyContent: 'center', flex: 1 }}>\n <XAiChatbot />\n </div>\n </XAiProvider>\n </div>,\n );\n } else {\n // @ts-ignore\n ReactDOM.render(\n <div style={{ width: '100%', height: '100%' }}>\n <XAiProvider ref={this.providerRef} {...this.props}>\n { this.props.config?.session?.showSessionList && <XAiConversations />}\n <div style={{ display: 'flex', justifyContent: 'center', flex: 1 }}>\n <XAiChatbot />\n </div>\n </XAiProvider>\n </div>,\n this.container,\n );\n }\n }\n\n unmount() {\n if (this.root && this.root.unmount) {\n this.root.unmount();\n }\n }\n\n // 支持 Coze 风格的语法:new XAiWebSDK.initChatbot()\n static initChatbot(props: XAiSDKProps): XAiWebSDK {\n let container: HTMLElement;\n\n // 检查是否有指定的 componentProps.id\n if (props.componentProps?.id) {\n const existingContainer = document.getElementById(props.componentProps.id);\n if (existingContainer) {\n container = existingContainer;\n } else {\n // 如果指定的 ID 不存在,创建新元素\n container = document.createElement('div');\n container.id = props.componentProps.id;\n }\n } else {\n // 没有指定 ID,创建默认容器\n container = document.createElement('div');\n container.id = 'xai-chatbot-container';\n }\n\n // 设置容器样式 - 将除了 id 以外的所有属性都应用到容器\n if (props.componentProps) {\n const { id, ...styleProps } = props.componentProps;\n Object.assign(container.style, styleProps);\n }\n\n // 如果容器不在 DOM 中,添加到 body\n if (!container.parentNode) {\n document.body.appendChild(container);\n }\n\n return new XAiWebSDK(container, props);\n }\n\n // 兼容旧版本的静态方法\n static create(props: XAiSDKProps): XAiWebSDK {\n return this.initChatbot(props);\n }\n\n // ————对外暴露的方法————\n getData() {\n return {\n appInfo: this.providerRef.current?.getAppInfo(),\n messages: this.providerRef.current?.getMessages(),\n sessions: this.providerRef.current?.getSessions(),\n };\n }\n\n chat(text: string) {\n this.providerRef.current?.chat(text);\n }\n\n stop() {\n this.providerRef.current?.stopChat();\n }\n\n reChat() {\n this.providerRef.current?.reChat();\n }\n}\n\n// 兼容 window 方式,也支持 new\n// @ts-ignore\nwindow.XAiWebSDK = XAiWebSDK;\n\n// 支持 ESModule/UMD 直接 import\nexport default XAiWebSDK;\n"],"mappings":";;;;;;AAAA,OAAOA,KAAK,IAAIC,SAAS,QAAQ,OAAO;AACxC,OAAOC,QAAQ,MAAM,kBAAkB;AAGvC,OAAOC,WAAW;AAClB,OAAOC,UAAU;AACjB,OAAOC,gBAAgB;AAAsC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAAA,IAEvDC,SAAS;EAgBb,SAAAA,UAAYC,SAAsB,EAAEC,KAAkB,EAAE;IAAAC,eAAA,OAAAH,SAAA;IAAAI,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA,mCAT1Cb,SAAS,CAAoB,CAAC;IAE5C;IAAAa,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAQE,IAAI,CAACH,SAAS,GAAGA,SAAS;IAC1B,IAAI,CAACC,KAAK,GAAGA,KAAK;IAClB,IAAI,CAACG,OAAO,GAAGH,KAAK,CAACG,OAAO;IAC5B,IAAI,CAACC,SAAS,GAAGJ,KAAK,CAACI,SAAS;IAChC,IAAI,CAACC,SAAS,GAAGL,KAAK,CAACK,SAAS;IAChC,IAAI,CAACC,KAAK,CAAC,CAAC;EACd;EAACC,YAAA,CAAAT,SAAA;IAAAU,GAAA;IAAAC,KAAA,EAED,SAAAH,MAAA,EAAQ;MACN,IAAIhB,QAAQ,CAACoB,UAAU,EAAE;QAAA,IAAAC,kBAAA;QACvB,IAAI,CAACC,IAAI,GAAGtB,QAAQ,CAACoB,UAAU,CAAC,IAAI,CAACX,SAAS,CAAC;QAC/C,IAAI,CAACa,IAAI,CAACC,MAAM,eACdlB,IAAA;UAAKmB,KAAK,EAAE;YAAEC,KAAK,EAAE,MAAM;YAAEC,MAAM,EAAE;UAAO,CAAE;UAAAC,QAAA,eAC5CpB,KAAA,CAACN,WAAW,EAAA2B,aAAA,CAAAA,aAAA;YAACC,GAAG,EAAE,IAAI,CAACC;UAAY,GAAK,IAAI,CAACpB,KAAK;YAAAiB,QAAA,GAC5C,EAAAN,kBAAA,OAAI,CAACX,KAAK,CAACqB,MAAM,cAAAV,kBAAA,gBAAAA,kBAAA,GAAjBA,kBAAA,CAAmBW,OAAO,cAAAX,kBAAA,uBAA1BA,kBAAA,CAA4BY,eAAe,kBAAI5B,IAAA,CAACF,gBAAgB,IAAE,CAAC,eACrEE,IAAA;cAAKmB,KAAK,EAAE;gBAAEU,OAAO,EAAE,MAAM;gBAAEC,cAAc,EAAE,QAAQ;gBAAEC,IAAI,EAAE;cAAE,CAAE;cAAAT,QAAA,eACjEtB,IAAA,CAACH,UAAU,IAAE;YAAC,CACX,CAAC;UAAA,EACG;QAAC,CACX,CACP,CAAC;MACH,CAAC,MAAM;QAAA,IAAAmC,mBAAA;QACL;QACArC,QAAQ,CAACuB,MAAM,eACblB,IAAA;UAAKmB,KAAK,EAAE;YAAEC,KAAK,EAAE,MAAM;YAAEC,MAAM,EAAE;UAAO,CAAE;UAAAC,QAAA,eAC5CpB,KAAA,CAACN,WAAW,EAAA2B,aAAA,CAAAA,aAAA;YAACC,GAAG,EAAE,IAAI,CAACC;UAAY,GAAK,IAAI,CAACpB,KAAK;YAAAiB,QAAA,GAC5C,EAAAU,mBAAA,OAAI,CAAC3B,KAAK,CAACqB,MAAM,cAAAM,mBAAA,gBAAAA,mBAAA,GAAjBA,mBAAA,CAAmBL,OAAO,cAAAK,mBAAA,uBAA1BA,mBAAA,CAA4BJ,eAAe,kBAAI5B,IAAA,CAACF,gBAAgB,IAAE,CAAC,eACrEE,IAAA;cAAKmB,KAAK,EAAE;gBAAEU,OAAO,EAAE,MAAM;gBAAEC,cAAc,EAAE,QAAQ;gBAAEC,IAAI,EAAE;cAAE,CAAE;cAAAT,QAAA,eACjEtB,IAAA,CAACH,UAAU,IAAE;YAAC,CACX,CAAC;UAAA,EACG;QAAC,CACX,CAAC,EACN,IAAI,CAACO,SACP,CAAC;MACH;IACF;EAAC;IAAAS,GAAA;IAAAC,KAAA,EAED,SAAAmB,QAAA,EAAU;MACR,IAAI,IAAI,CAAChB,IAAI,IAAI,IAAI,CAACA,IAAI,CAACgB,OAAO,EAAE;QAClC,IAAI,CAAChB,IAAI,CAACgB,OAAO,CAAC,CAAC;MACrB;IACF;;IAEA;EAAA;IAAApB,GAAA;IAAAC,KAAA;IAuCA;IACA,SAAAoB,QAAA,EAAU;MAAA,IAAAC,qBAAA,EAAAC,sBAAA,EAAAC,sBAAA;MACR,OAAO;QACLC,OAAO,GAAAH,qBAAA,GAAE,IAAI,CAACV,WAAW,CAACc,OAAO,cAAAJ,qBAAA,uBAAxBA,qBAAA,CAA0BK,UAAU,CAAC,CAAC;QAC/CC,QAAQ,GAAAL,sBAAA,GAAE,IAAI,CAACX,WAAW,CAACc,OAAO,cAAAH,sBAAA,uBAAxBA,sBAAA,CAA0BM,WAAW,CAAC,CAAC;QACjDC,QAAQ,GAAAN,sBAAA,GAAE,IAAI,CAACZ,WAAW,CAACc,OAAO,cAAAF,sBAAA,uBAAxBA,sBAAA,CAA0BO,WAAW,CAAC;MAClD,CAAC;IACH;EAAC;IAAA/B,GAAA;IAAAC,KAAA,EAED,SAAA+B,KAAKC,IAAY,EAAE;MAAA,IAAAC,sBAAA;MACjB,CAAAA,sBAAA,OAAI,CAACtB,WAAW,CAACc,OAAO,cAAAQ,sBAAA,eAAxBA,sBAAA,CAA0BF,IAAI,CAACC,IAAI,CAAC;IACtC;EAAC;IAAAjC,GAAA;IAAAC,KAAA,EAED,SAAAkC,KAAA,EAAO;MAAA,IAAAC,sBAAA;MACL,CAAAA,sBAAA,OAAI,CAACxB,WAAW,CAACc,OAAO,cAAAU,sBAAA,eAAxBA,sBAAA,CAA0BC,QAAQ,CAAC,CAAC;IACtC;EAAC;IAAArC,GAAA;IAAAC,KAAA,EAED,SAAAqC,OAAA,EAAS;MAAA,IAAAC,sBAAA;MACP,CAAAA,sBAAA,OAAI,CAAC3B,WAAW,CAACc,OAAO,cAAAa,sBAAA,eAAxBA,sBAAA,CAA0BD,MAAM,CAAC,CAAC;IACpC;EAAC;IAAAtC,GAAA;IAAAC,KAAA,EAzDD,SAAAuC,YAAmBhD,KAAkB,EAAa;MAAA,IAAAiD,qBAAA;MAChD,IAAIlD,SAAsB;;MAE1B;MACA,KAAAkD,qBAAA,GAAIjD,KAAK,CAACkD,cAAc,cAAAD,qBAAA,eAApBA,qBAAA,CAAsBE,EAAE,EAAE;QAC5B,IAAMC,iBAAiB,GAAGC,QAAQ,CAACC,cAAc,CAACtD,KAAK,CAACkD,cAAc,CAACC,EAAE,CAAC;QAC1E,IAAIC,iBAAiB,EAAE;UACrBrD,SAAS,GAAGqD,iBAAiB;QAC/B,CAAC,MAAM;UACL;UACArD,SAAS,GAAGsD,QAAQ,CAACE,aAAa,CAAC,KAAK,CAAC;UACzCxD,SAAS,CAACoD,EAAE,GAAGnD,KAAK,CAACkD,cAAc,CAACC,EAAE;QACxC;MACF,CAAC,MAAM;QACL;QACApD,SAAS,GAAGsD,QAAQ,CAACE,aAAa,CAAC,KAAK,CAAC;QACzCxD,SAAS,CAACoD,EAAE,GAAG,uBAAuB;MACxC;;MAEA;MACA,IAAInD,KAAK,CAACkD,cAAc,EAAE;QACxB,IAAAM,sBAAA,GAA8BxD,KAAK,CAACkD,cAAc;UAA1CC,EAAE,GAAAK,sBAAA,CAAFL,EAAE;UAAKM,UAAU,GAAAC,wBAAA,CAAAF,sBAAA,EAAAG,SAAA;QACzBC,MAAM,CAACC,MAAM,CAAC9D,SAAS,CAACe,KAAK,EAAE2C,UAAU,CAAC;MAC5C;;MAEA;MACA,IAAI,CAAC1D,SAAS,CAAC+D,UAAU,EAAE;QACzBT,QAAQ,CAACU,IAAI,CAACC,WAAW,CAACjE,SAAS,CAAC;MACtC;MAEA,OAAO,IAAID,SAAS,CAACC,SAAS,EAAEC,KAAK,CAAC;IACxC;;IAEA;EAAA;IAAAQ,GAAA;IAAAC,KAAA,EACA,SAAAwD,OAAcjE,KAAkB,EAAa;MAC3C,OAAO,IAAI,CAACgD,WAAW,CAAChD,KAAK,CAAC;IAChC;EAAC;EAAA,OAAAF,SAAA;AAAA,KAwBH;AACA;AACAoE,MAAM,CAACpE,SAAS,GAAGA,SAAS;;AAE5B;AACA,eAAeA,SAAS"}