@ai-group/chat-sdk 2.0.1 → 2.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. package/dist/cjs/assets/svg/AddChatIcon.js +5 -12
  2. package/dist/cjs/assets/svg/AddChatIcon.js.map +2 -2
  3. package/dist/cjs/components/DislikeFeedback.js +33 -25
  4. package/dist/cjs/components/DislikeFeedback.js.map +2 -2
  5. package/dist/cjs/components/FeedbackTags.js +5 -15
  6. package/dist/cjs/components/FeedbackTags.js.map +2 -2
  7. package/dist/cjs/components/XAiChatbot/XAiChatbot.stories.js +178 -86
  8. package/dist/cjs/components/XAiChatbot/XAiChatbot.stories.js.map +3 -3
  9. package/dist/cjs/components/XAiChatbot/index.js +199 -131
  10. package/dist/cjs/components/XAiChatbot/index.js.map +3 -3
  11. package/dist/cjs/components/XAiChatbot/styles.js +5 -15
  12. package/dist/cjs/components/XAiChatbot/styles.js.map +2 -2
  13. package/dist/cjs/components/XAiConversations/XAiConversations.stories.js +10 -10
  14. package/dist/cjs/components/XAiConversations/XAiConversations.stories.js.map +2 -2
  15. package/dist/cjs/components/XAiConversations/index.js +61 -41
  16. package/dist/cjs/components/XAiConversations/index.js.map +3 -3
  17. package/dist/cjs/components/XAiConversations/styles.js +5 -15
  18. package/dist/cjs/components/XAiConversations/styles.js.map +3 -3
  19. package/dist/cjs/components/XAiProvider/XAiProvider.stories.js +63 -54
  20. package/dist/cjs/components/XAiProvider/XAiProvider.stories.js.map +2 -2
  21. package/dist/cjs/components/XAiProvider/index.js +110 -99
  22. package/dist/cjs/components/XAiProvider/index.js.map +3 -3
  23. package/dist/cjs/components/XAiSDK.js +2 -2
  24. package/dist/cjs/components/XAiSDK.js.map +2 -2
  25. package/dist/cjs/components/XAiSender/XAiSender.stories.js +23 -8
  26. package/dist/cjs/components/XAiSender/XAiSender.stories.js.map +3 -3
  27. package/dist/cjs/components/XAiSender/index.js +161 -89
  28. package/dist/cjs/components/XAiSender/index.js.map +3 -3
  29. package/dist/cjs/components/XAiSender/styles.d.ts +0 -3
  30. package/dist/cjs/components/XAiSender/styles.js +29 -28
  31. package/dist/cjs/components/XAiSender/styles.js.map +2 -2
  32. package/dist/cjs/components/XAiWebSDKWrapper.js +3 -2
  33. package/dist/cjs/components/XAiWebSDKWrapper.js.map +2 -2
  34. package/dist/cjs/hooks/useAgentGenerator.d.ts +3 -3
  35. package/dist/cjs/hooks/useAgentGenerator.js +5 -5
  36. package/dist/cjs/hooks/useAgentGenerator.js.map +2 -2
  37. package/dist/cjs/hooks/useProviderContext.d.ts +2 -1
  38. package/dist/cjs/hooks/useProviderContext.js.map +2 -2
  39. package/dist/cjs/hooks/useXAiSDK.js +3 -2
  40. package/dist/cjs/hooks/useXAiSDK.js.map +2 -2
  41. package/dist/cjs/styles/common.js.map +2 -2
  42. package/dist/cjs/styles/markdown.js +5 -15
  43. package/dist/cjs/styles/markdown.js.map +2 -2
  44. package/dist/cjs/types/XAiChatbot.d.ts +8 -6
  45. package/dist/cjs/types/XAiChatbot.js.map +1 -1
  46. package/dist/cjs/types/XAiConversations.d.ts +2 -2
  47. package/dist/cjs/types/XAiConversations.js.map +1 -1
  48. package/dist/cjs/types/XAiMessage.d.ts +2 -1
  49. package/dist/cjs/types/XAiMessage.js.map +2 -2
  50. package/dist/cjs/types/XAiProvider.d.ts +3 -3
  51. package/dist/cjs/types/XAiProvider.js.map +2 -2
  52. package/dist/cjs/types/XAiSender.d.ts +16 -2
  53. package/dist/cjs/types/XAiSender.js.map +1 -1
  54. package/dist/cjs/types/index.js.map +1 -1
  55. package/dist/cjs/utils/umdEntry.d.ts +3 -2
  56. package/dist/cjs/utils/umdEntry.js +12 -5
  57. package/dist/cjs/utils/umdEntry.js.map +3 -3
  58. package/dist/esm/components/XAiChatbot/XAiChatbot.stories.js +60 -6
  59. package/dist/esm/components/XAiChatbot/XAiChatbot.stories.js.map +1 -1
  60. package/dist/esm/components/XAiChatbot/index.js +84 -72
  61. package/dist/esm/components/XAiChatbot/index.js.map +1 -1
  62. package/dist/esm/components/XAiConversations/index.js +2 -2
  63. package/dist/esm/components/XAiConversations/index.js.map +1 -1
  64. package/dist/esm/components/XAiConversations/styles.js.map +1 -1
  65. package/dist/esm/components/XAiProvider/XAiProvider.stories.js +3 -1
  66. package/dist/esm/components/XAiProvider/XAiProvider.stories.js.map +1 -1
  67. package/dist/esm/components/XAiProvider/index.js +1 -1
  68. package/dist/esm/components/XAiProvider/index.js.map +1 -1
  69. package/dist/esm/components/XAiSender/XAiSender.stories.js +33 -13
  70. package/dist/esm/components/XAiSender/XAiSender.stories.js.map +1 -1
  71. package/dist/esm/components/XAiSender/index.js +99 -57
  72. package/dist/esm/components/XAiSender/index.js.map +1 -1
  73. package/dist/esm/components/XAiSender/styles.d.ts +0 -3
  74. package/dist/esm/components/XAiSender/styles.js +3 -5
  75. package/dist/esm/components/XAiSender/styles.js.map +1 -1
  76. package/dist/esm/hooks/useAgentGenerator.d.ts +3 -3
  77. package/dist/esm/hooks/useAgentGenerator.js +7 -8
  78. package/dist/esm/hooks/useAgentGenerator.js.map +1 -1
  79. package/dist/esm/hooks/useProviderContext.d.ts +2 -1
  80. package/dist/esm/hooks/useProviderContext.js.map +1 -1
  81. package/dist/esm/styles/common.js.map +1 -1
  82. package/dist/esm/types/XAiChatbot.d.ts +8 -6
  83. package/dist/esm/types/XAiChatbot.js.map +1 -1
  84. package/dist/esm/types/XAiConversations.d.ts +2 -2
  85. package/dist/esm/types/XAiConversations.js.map +1 -1
  86. package/dist/esm/types/XAiMessage.d.ts +2 -1
  87. package/dist/esm/types/XAiMessage.js.map +1 -1
  88. package/dist/esm/types/XAiProvider.d.ts +3 -3
  89. package/dist/esm/types/XAiProvider.js.map +1 -1
  90. package/dist/esm/types/XAiSender.d.ts +16 -2
  91. package/dist/esm/types/XAiSender.js.map +1 -1
  92. package/dist/esm/types/index.js.map +1 -1
  93. package/dist/esm/utils/umdEntry.d.ts +3 -2
  94. package/dist/esm/utils/umdEntry.js +2 -2
  95. package/dist/esm/utils/umdEntry.js.map +1 -1
  96. package/dist/umd/chat-sdk.min.js +1 -1
  97. package/package.json +30 -26
@@ -1,8 +1,6 @@
1
- var __create = Object.create;
2
1
  var __defProp = Object.defineProperty;
3
2
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
5
  var __export = (target, all) => {
8
6
  for (var name in all)
@@ -16,14 +14,6 @@ var __copyProps = (to, from, except, desc) => {
16
14
  }
17
15
  return to;
18
16
  };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
18
 
29
19
  // src/assets/svg/AddChatIcon.tsx
@@ -32,7 +22,10 @@ __export(AddChatIcon_exports, {
32
22
  default: () => AddChatIcon_default
33
23
  });
34
24
  module.exports = __toCommonJS(AddChatIcon_exports);
35
- var import_react = __toESM(require("react"));
36
- var AddChatIcon = (props) => /* @__PURE__ */ import_react.default.createElement("svg", { viewBox: "0 0 21 21", fill: "currentColor", ...props }, /* @__PURE__ */ import_react.default.createElement("title", null, "icon/menu/messageFlash"), /* @__PURE__ */ import_react.default.createElement("g", { id: "应用广场25.8", stroke: "none", "stroke-width": "1", fill: "none", "fill-rule": "evenodd" }, /* @__PURE__ */ import_react.default.createElement("g", { id: "应用h5_默认", transform: "translate(-112, -22)", fill: "currentColor" }, /* @__PURE__ */ import_react.default.createElement("g", { id: "编组", transform: "translate(64, 12)" }, /* @__PURE__ */ import_react.default.createElement("g", { id: "icon/menu/messageFlash", transform: "translate(48, 10)", "fill-rule": "nonzero" }, /* @__PURE__ */ import_react.default.createElement("path", { d: "M10.0096252,1.5 C14.7512907,1.5 18.5951701,5.34387936 18.5951701,10.0855449 C18.5951701,14.7998039 14.7798864,18.5 10.0096252,18.5 C9.95495387,18.5 9.90199098,18.5 9.85057112,18.5 L6.30207336,18.499027 C6.22439746,18.4989896 6.14412829,18.4989507 6.0611004,18.4989104 L4.58809638,18.498186 L4.55827318,18.5002746 C3.70779948,18.5600748 3.38742633,18.5409853 2.93655892,18.2653932 C2.1832446,17.8049309 1.94589784,16.8209176 2.40662081,16.0677691 C2.60629158,15.7413384 2.73716321,15.4799158 2.79899336,15.2947802 C2.82452738,15.2183247 2.82446769,15.2193881 2.87074412,15.311941 C2.26840799,14.1072687 1.42408038,11.4716782 1.42408038,10.0855449 C1.42408038,5.34387936 5.26795974,1.5 10.0096252,1.5 Z M10.0096252,3 C6.09638687,3 2.92408038,6.17230649 2.92408038,10.0855449 C2.92408038,11.1885612 3.70511474,13.6265803 4.21238491,14.6411206 C4.50007839,15.2165075 4.27686952,15.8848531 3.68620584,16.8504965 C3.65791475,16.8967442 3.67249916,16.9572095 3.71886202,16.9855487 C3.79328018,17.0310367 3.94204241,17.0399008 4.45306197,17.003969 C4.4683628,17.0028941 4.4683628,17.0028941 4.53596471,17 L10.0096252,17 C13.9615665,17 17.0951701,13.9609212 17.0951701,10.0855449 C17.0951701,6.17230649 13.9228636,3 10.0096252,3 Z M6.75962524,9.26403485 L13.2596252,9.26403485 C13.6738388,9.26403485 14.0096252,9.59982129 14.0096252,10.0140348 C14.0096252,10.4282484 13.6738388,10.7640348 13.2596252,10.7640348 L6.75962524,10.7640348 C6.34541167,10.7640348 6.00962524,10.4282484 6.00962524,10.0140348 C6.00962524,9.59982129 6.34541167,9.26403485 6.75962524,9.26403485 Z M9.25962524,13.2640348 L9.25962524,6.76403485 C9.25962524,6.34982129 9.59541167,6.01403485 10.0096252,6.01403485 C10.4238388,6.01403485 10.7596252,6.34982129 10.7596252,6.76403485 L10.7596252,13.2640348 C10.7596252,13.6782484 10.4238388,14.0140348 10.0096252,14.0140348 C9.59541167,14.0140348 9.25962524,13.6782484 9.25962524,13.2640348 Z", id: "形状结合" }))))));
25
+ var import_jsx_runtime = require("react/jsx-runtime");
26
+ var AddChatIcon = (props) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("svg", { viewBox: "0 0 21 21", fill: "currentColor", ...props, children: [
27
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("title", { children: "icon/menu/messageFlash" }),
28
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("g", { id: "应用广场25.8", stroke: "none", "stroke-width": "1", fill: "none", "fill-rule": "evenodd", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("g", { id: "应用h5_默认", transform: "translate(-112, -22)", fill: "currentColor", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("g", { id: "编组", transform: "translate(64, 12)", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("g", { id: "icon/menu/messageFlash", transform: "translate(48, 10)", "fill-rule": "nonzero", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M10.0096252,1.5 C14.7512907,1.5 18.5951701,5.34387936 18.5951701,10.0855449 C18.5951701,14.7998039 14.7798864,18.5 10.0096252,18.5 C9.95495387,18.5 9.90199098,18.5 9.85057112,18.5 L6.30207336,18.499027 C6.22439746,18.4989896 6.14412829,18.4989507 6.0611004,18.4989104 L4.58809638,18.498186 L4.55827318,18.5002746 C3.70779948,18.5600748 3.38742633,18.5409853 2.93655892,18.2653932 C2.1832446,17.8049309 1.94589784,16.8209176 2.40662081,16.0677691 C2.60629158,15.7413384 2.73716321,15.4799158 2.79899336,15.2947802 C2.82452738,15.2183247 2.82446769,15.2193881 2.87074412,15.311941 C2.26840799,14.1072687 1.42408038,11.4716782 1.42408038,10.0855449 C1.42408038,5.34387936 5.26795974,1.5 10.0096252,1.5 Z M10.0096252,3 C6.09638687,3 2.92408038,6.17230649 2.92408038,10.0855449 C2.92408038,11.1885612 3.70511474,13.6265803 4.21238491,14.6411206 C4.50007839,15.2165075 4.27686952,15.8848531 3.68620584,16.8504965 C3.65791475,16.8967442 3.67249916,16.9572095 3.71886202,16.9855487 C3.79328018,17.0310367 3.94204241,17.0399008 4.45306197,17.003969 C4.4683628,17.0028941 4.4683628,17.0028941 4.53596471,17 L10.0096252,17 C13.9615665,17 17.0951701,13.9609212 17.0951701,10.0855449 C17.0951701,6.17230649 13.9228636,3 10.0096252,3 Z M6.75962524,9.26403485 L13.2596252,9.26403485 C13.6738388,9.26403485 14.0096252,9.59982129 14.0096252,10.0140348 C14.0096252,10.4282484 13.6738388,10.7640348 13.2596252,10.7640348 L6.75962524,10.7640348 C6.34541167,10.7640348 6.00962524,10.4282484 6.00962524,10.0140348 C6.00962524,9.59982129 6.34541167,9.26403485 6.75962524,9.26403485 Z M9.25962524,13.2640348 L9.25962524,6.76403485 C9.25962524,6.34982129 9.59541167,6.01403485 10.0096252,6.01403485 C10.4238388,6.01403485 10.7596252,6.34982129 10.7596252,6.76403485 L10.7596252,13.2640348 C10.7596252,13.6782484 10.4238388,14.0140348 10.0096252,14.0140348 C9.59541167,14.0140348 9.25962524,13.6782484 9.25962524,13.2640348 Z", id: "形状结合" }) }) }) }) })
29
+ ] });
37
30
  var AddChatIcon_default = AddChatIcon;
38
31
  //# sourceMappingURL=AddChatIcon.js.map
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/assets/svg/AddChatIcon.tsx"],
4
4
  "sourcesContent": ["import React from 'react';\n\nconst AddChatIcon = (props: React.SVGProps<SVGSVGElement>) => (\n <svg viewBox=\"0 0 21 21\" fill=\"currentColor\" {...props}>\n <title>icon/menu/messageFlash</title>\n <g id=\"应用广场25.8\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"应用h5_默认\" transform=\"translate(-112, -22)\" fill=\"currentColor\">\n <g id=\"编组\" transform=\"translate(64, 12)\">\n <g id=\"icon/menu/messageFlash\" transform=\"translate(48, 10)\" fill-rule=\"nonzero\">\n <path d=\"M10.0096252,1.5 C14.7512907,1.5 18.5951701,5.34387936 18.5951701,10.0855449 C18.5951701,14.7998039 14.7798864,18.5 10.0096252,18.5 C9.95495387,18.5 9.90199098,18.5 9.85057112,18.5 L6.30207336,18.499027 C6.22439746,18.4989896 6.14412829,18.4989507 6.0611004,18.4989104 L4.58809638,18.498186 L4.55827318,18.5002746 C3.70779948,18.5600748 3.38742633,18.5409853 2.93655892,18.2653932 C2.1832446,17.8049309 1.94589784,16.8209176 2.40662081,16.0677691 C2.60629158,15.7413384 2.73716321,15.4799158 2.79899336,15.2947802 C2.82452738,15.2183247 2.82446769,15.2193881 2.87074412,15.311941 C2.26840799,14.1072687 1.42408038,11.4716782 1.42408038,10.0855449 C1.42408038,5.34387936 5.26795974,1.5 10.0096252,1.5 Z M10.0096252,3 C6.09638687,3 2.92408038,6.17230649 2.92408038,10.0855449 C2.92408038,11.1885612 3.70511474,13.6265803 4.21238491,14.6411206 C4.50007839,15.2165075 4.27686952,15.8848531 3.68620584,16.8504965 C3.65791475,16.8967442 3.67249916,16.9572095 3.71886202,16.9855487 C3.79328018,17.0310367 3.94204241,17.0399008 4.45306197,17.003969 C4.4683628,17.0028941 4.4683628,17.0028941 4.53596471,17 L10.0096252,17 C13.9615665,17 17.0951701,13.9609212 17.0951701,10.0855449 C17.0951701,6.17230649 13.9228636,3 10.0096252,3 Z M6.75962524,9.26403485 L13.2596252,9.26403485 C13.6738388,9.26403485 14.0096252,9.59982129 14.0096252,10.0140348 C14.0096252,10.4282484 13.6738388,10.7640348 13.2596252,10.7640348 L6.75962524,10.7640348 C6.34541167,10.7640348 6.00962524,10.4282484 6.00962524,10.0140348 C6.00962524,9.59982129 6.34541167,9.26403485 6.75962524,9.26403485 Z M9.25962524,13.2640348 L9.25962524,6.76403485 C9.25962524,6.34982129 9.59541167,6.01403485 10.0096252,6.01403485 C10.4238388,6.01403485 10.7596252,6.34982129 10.7596252,6.76403485 L10.7596252,13.2640348 C10.7596252,13.6782484 10.4238388,14.0140348 10.0096252,14.0140348 C9.59541167,14.0140348 9.25962524,13.6782484 9.25962524,13.2640348 Z\" id=\"形状结合\"></path>\n </g>\n </g>\n </g>\n </g>\n </svg>\n);\n\nexport default AddChatIcon;"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB;AAElB,IAAM,cAAc,CAAC,UACnB,6BAAAA,QAAA,cAAC,SAAI,SAAQ,aAAY,MAAK,gBAAgB,GAAG,SAC/C,6BAAAA,QAAA,cAAC,eAAM,wBAAsB,GAC7B,6BAAAA,QAAA,cAAC,OAAE,IAAG,YAAW,QAAO,QAAO,gBAAa,KAAI,MAAK,QAAO,aAAU,aAClE,6BAAAA,QAAA,cAAC,OAAE,IAAG,WAAU,WAAU,wBAAuB,MAAK,kBAClD,6BAAAA,QAAA,cAAC,OAAE,IAAG,MAAK,WAAU,uBACjB,6BAAAA,QAAA,cAAC,OAAE,IAAG,0BAAyB,WAAU,qBAAoB,aAAU,aACnE,6BAAAA,QAAA,cAAC,UAAK,GAAE,+2DAA82D,IAAG,QAAO,CACp4D,CACJ,CACJ,CACJ,CACF;AAGF,IAAO,sBAAQ;",
6
- "names": ["React"]
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGE;AADF,IAAM,cAAc,CAAC,UACnB,6CAAC,SAAI,SAAQ,aAAY,MAAK,gBAAgB,GAAG,OAC/C;AAAA,8CAAC,WAAM,oCAAsB;AAAA,EAC7B,4CAAC,OAAE,IAAG,YAAW,QAAO,QAAO,gBAAa,KAAI,MAAK,QAAO,aAAU,WAClE,sDAAC,OAAE,IAAG,WAAU,WAAU,wBAAuB,MAAK,gBAClD,sDAAC,OAAE,IAAG,MAAK,WAAU,qBACjB,sDAAC,OAAE,IAAG,0BAAyB,WAAU,qBAAoB,aAAU,WACnE,sDAAC,UAAK,GAAE,+2DAA82D,IAAG,QAAO,GACp4D,GACJ,GACJ,GACJ;AAAA,GACF;AAGF,IAAO,sBAAQ;",
6
+ "names": []
7
7
  }
@@ -34,13 +34,14 @@ __export(DislikeFeedback_exports, {
34
34
  });
35
35
  module.exports = __toCommonJS(DislikeFeedback_exports);
36
36
  var import_antd = require("antd");
37
- var import_react = __toESM(require("react"));
37
+ var import_react = require("react");
38
38
  var import_icons = require("@ant-design/icons");
39
39
  var import_FeedbackTags = __toESM(require("./FeedbackTags"));
40
+ var import_jsx_runtime = require("react/jsx-runtime");
40
41
  var DislikeFeedback = ({ msg, activeColor, onSubmit }) => {
41
42
  const [form] = import_antd.Form.useForm();
42
43
  const [showFeedback, setShowFeedback] = (0, import_react.useState)(false);
43
- return /* @__PURE__ */ import_react.default.createElement(
44
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
44
45
  import_antd.Popover,
45
46
  {
46
47
  trigger: ["click"],
@@ -56,30 +57,37 @@ var DislikeFeedback = ({ msg, activeColor, onSubmit }) => {
56
57
  }
57
58
  setShowFeedback(v);
58
59
  },
59
- title: /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement("div", null, "抱歉,未能满足您的需求"), /* @__PURE__ */ import_react.default.createElement("div", { style: { color: "#999", fontWeight: "normal", marginBottom: 12 } }, "为提升您的使用体验,请告诉我们不足的方向")),
60
- content: /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement(import_antd.Form, { form }, /* @__PURE__ */ import_react.default.createElement(import_antd.Form.Item, { name: "feedbackTags", style: { marginBottom: 12 } }, /* @__PURE__ */ import_react.default.createElement(import_FeedbackTags.default, null)), /* @__PURE__ */ import_react.default.createElement(import_antd.Form.Item, { name: "feedbackDescription", style: { marginBottom: 12 } }, /* @__PURE__ */ import_react.default.createElement(import_antd.Input.TextArea, { rows: 4, placeholder: "欢迎说说你的想法" })), /* @__PURE__ */ import_react.default.createElement(import_antd.Form.Item, { dependencies: ["feedbackTags", "feedbackDescription"], noStyle: true }, ({ getFieldValue }) => {
61
- const feedbackTags = getFieldValue("feedbackTags") || [];
62
- const feedbackDescription = getFieldValue("feedbackDescription");
63
- const disabled = !feedbackTags.length && !feedbackDescription;
64
- return /* @__PURE__ */ import_react.default.createElement(
65
- import_antd.Button,
66
- {
67
- type: "primary",
68
- block: true,
69
- disabled,
70
- onClick: async () => {
71
- const formData = await form.validateFields();
72
- const res = await onSubmit(formData);
73
- if (res) {
74
- setShowFeedback(false);
75
- }
60
+ title: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { children: [
61
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { children: "抱歉,未能满足您的需求" }),
62
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { style: { color: "#999", fontWeight: "normal", marginBottom: 12 }, children: "为提升您的使用体验,请告诉我们不足的方向" })
63
+ ] }),
64
+ content: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_antd.Form, { form, children: [
65
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_antd.Form.Item, { name: "feedbackTags", style: { marginBottom: 12 }, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_FeedbackTags.default, {}) }),
66
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_antd.Form.Item, { name: "feedbackDescription", style: { marginBottom: 12 }, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_antd.Input.TextArea, { rows: 4, placeholder: "欢迎说说你的想法" }) }),
67
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_antd.Form.Item, { dependencies: ["feedbackTags", "feedbackDescription"], noStyle: true, children: ({ getFieldValue }) => {
68
+ const feedbackTags = getFieldValue("feedbackTags") || [];
69
+ const feedbackDescription = getFieldValue("feedbackDescription");
70
+ const disabled = !feedbackTags.length && !feedbackDescription;
71
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
72
+ import_antd.Button,
73
+ {
74
+ type: "primary",
75
+ block: true,
76
+ disabled,
77
+ onClick: async () => {
78
+ const formData = await form.validateFields();
79
+ const res = await onSubmit(formData);
80
+ if (res) {
81
+ setShowFeedback(false);
82
+ }
83
+ },
84
+ children: "提交反馈"
76
85
  }
77
- },
78
- "提交反馈"
79
- );
80
- })))
81
- },
82
- msg.isLike === -1 ? /* @__PURE__ */ import_react.default.createElement(import_icons.DislikeFilled, { style: { color: activeColor } }) : /* @__PURE__ */ import_react.default.createElement(import_icons.DislikeOutlined, null)
86
+ );
87
+ } })
88
+ ] }) }),
89
+ children: msg.isLike === -1 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons.DislikeFilled, { style: { color: activeColor } }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_icons.DislikeOutlined, {})
90
+ }
83
91
  );
84
92
  };
85
93
  var DislikeFeedback_default = DislikeFeedback;
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/DislikeFeedback.tsx"],
4
4
  "sourcesContent": ["import { Button, Form, Input, message, Popover } from 'antd';\nimport React, { useState } from 'react';\nimport { DislikeFilled, DislikeOutlined } from '@ant-design/icons';\nimport FeedbackTags from './FeedbackTags';\n\nexport interface DislikeFeedbackProps {\n msg: any;\n activeColor: string;\n onSubmit: (v: any) => Promise<boolean>;\n}\n\nexport const DislikeFeedback: React.FC<DislikeFeedbackProps> = ({ msg, activeColor, onSubmit }) => {\n const [form] = Form.useForm();\n const [showFeedback, setShowFeedback] = useState(false);\n return (\n <Popover\n trigger={['click']}\n open={showFeedback}\n onOpenChange={(v) => {\n const isLike = msg.isLike ?? 0;\n if (v && isLike !== 0) {\n message.warning('已收到您的反馈,无需重复提交');\n return;\n }\n if (v) {\n form.resetFields();\n }\n setShowFeedback(v);\n }}\n title={(\n <div>\n <div>抱歉,未能满足您的需求</div>\n <div style={{ color: '#999', fontWeight: 'normal', marginBottom: 12 }}>\n 为提升您的使用体验,请告诉我们不足的方向\n </div>\n </div>\n )}\n content={(\n <div>\n <Form form={form}>\n <Form.Item name=\"feedbackTags\" style={{ marginBottom: 12 }}>\n <FeedbackTags />\n </Form.Item>\n <Form.Item name=\"feedbackDescription\" style={{ marginBottom: 12 }}>\n <Input.TextArea rows={4} placeholder=\"欢迎说说你的想法\" />\n </Form.Item>\n <Form.Item dependencies={['feedbackTags', 'feedbackDescription']} noStyle>\n {({ getFieldValue }) => {\n const feedbackTags = getFieldValue('feedbackTags') || [];\n const feedbackDescription = getFieldValue('feedbackDescription');\n const disabled = !feedbackTags.length && !feedbackDescription;\n return (\n <Button\n type=\"primary\"\n block\n disabled={disabled}\n onClick={async () => {\n const formData = await form.validateFields();\n const res = await onSubmit(formData);\n if (res) {\n setShowFeedback(false);\n }\n }}\n >\n 提交反馈\n </Button>\n );\n }}\n </Form.Item>\n </Form>\n </div>\n )}\n >\n {msg.isLike === -1\n ? (\n <DislikeFilled style={{ color: activeColor }} />\n )\n : (\n <DislikeOutlined />\n )}\n </Popover>\n );\n};\n\nexport default DislikeFeedback;\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAsD;AACtD,mBAAgC;AAChC,mBAA+C;AAC/C,0BAAyB;AAQlB,IAAM,kBAAkD,CAAC,EAAE,KAAK,aAAa,SAAS,MAAM;AACjG,QAAM,CAAC,IAAI,IAAI,iBAAK,QAAQ;AAC5B,QAAM,CAAC,cAAc,eAAe,QAAI,uBAAS,KAAK;AACtD,SACE,6BAAAA,QAAA;AAAA,IAAC;AAAA;AAAA,MACC,SAAS,CAAC,OAAO;AAAA,MACjB,MAAM;AAAA,MACN,cAAc,CAAC,MAAM;AACnB,cAAM,SAAS,IAAI,UAAU;AAC7B,YAAI,KAAK,WAAW,GAAG;AACrB,8BAAQ,QAAQ,gBAAgB;AAChC;AAAA,QACF;AACA,YAAI,GAAG;AACL,eAAK,YAAY;AAAA,QACnB;AACA,wBAAgB,CAAC;AAAA,MACnB;AAAA,MACA,OACE,6BAAAA,QAAA,cAAC,aACC,6BAAAA,QAAA,cAAC,aAAI,aAAW,GAChB,6BAAAA,QAAA,cAAC,SAAI,OAAO,EAAE,OAAO,QAAQ,YAAY,UAAU,cAAc,GAAG,KAAG,sBAEvE,CACF;AAAA,MAEF,SACE,6BAAAA,QAAA,cAAC,aACC,6BAAAA,QAAA,cAAC,oBAAK,QACJ,6BAAAA,QAAA,cAAC,iBAAK,MAAL,EAAU,MAAK,gBAAe,OAAO,EAAE,cAAc,GAAG,KACvD,6BAAAA,QAAA,cAAC,oBAAAC,SAAA,IAAa,CAChB,GACA,6BAAAD,QAAA,cAAC,iBAAK,MAAL,EAAU,MAAK,uBAAsB,OAAO,EAAE,cAAc,GAAG,KAC9D,6BAAAA,QAAA,cAAC,kBAAM,UAAN,EAAe,MAAM,GAAG,aAAY,YAAW,CAClD,GACA,6BAAAA,QAAA,cAAC,iBAAK,MAAL,EAAU,cAAc,CAAC,gBAAgB,qBAAqB,GAAG,SAAO,QACtE,CAAC,EAAE,cAAc,MAAM;AACtB,cAAM,eAAe,cAAc,cAAc,KAAK,CAAC;AACvD,cAAM,sBAAsB,cAAc,qBAAqB;AAC/D,cAAM,WAAW,CAAC,aAAa,UAAU,CAAC;AAC1C,eACE,6BAAAA,QAAA;AAAA,UAAC;AAAA;AAAA,YACC,MAAK;AAAA,YACL,OAAK;AAAA,YACL;AAAA,YACA,SAAS,YAAY;AACnB,oBAAM,WAAW,MAAM,KAAK,eAAe;AAC3C,oBAAM,MAAM,MAAM,SAAS,QAAQ;AACnC,kBAAI,KAAK;AACP,gCAAgB,KAAK;AAAA,cACvB;AAAA,YACF;AAAA;AAAA,UACD;AAAA,QAED;AAAA,MAEJ,CACF,CACF,CACF;AAAA;AAAA,IAGD,IAAI,WAAW,KAEZ,6BAAAA,QAAA,cAAC,8BAAc,OAAO,EAAE,OAAO,YAAY,GAAG,IAG9C,6BAAAA,QAAA,cAAC,kCAAgB;AAAA,EAEvB;AAEJ;AAEA,IAAO,0BAAQ;",
6
- "names": ["React", "FeedbackTags"]
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAsD;AACtD,mBAAgC;AAChC,mBAA+C;AAC/C,0BAAyB;AA2BjB;AAnBD,IAAM,kBAAkD,CAAC,EAAE,KAAK,aAAa,SAAS,MAAM;AACjG,QAAM,CAAC,IAAI,IAAI,iBAAK,QAAQ;AAC5B,QAAM,CAAC,cAAc,eAAe,QAAI,uBAAS,KAAK;AACtD,SACE;AAAA,IAAC;AAAA;AAAA,MACC,SAAS,CAAC,OAAO;AAAA,MACjB,MAAM;AAAA,MACN,cAAc,CAAC,MAAM;AACnB,cAAM,SAAS,IAAI,UAAU;AAC7B,YAAI,KAAK,WAAW,GAAG;AACrB,8BAAQ,QAAQ,gBAAgB;AAChC;AAAA,QACF;AACA,YAAI,GAAG;AACL,eAAK,YAAY;AAAA,QACnB;AACA,wBAAgB,CAAC;AAAA,MACnB;AAAA,MACA,OACE,6CAAC,SACC;AAAA,oDAAC,SAAI,yBAAW;AAAA,QAChB,4CAAC,SAAI,OAAO,EAAE,OAAO,QAAQ,YAAY,UAAU,cAAc,GAAG,GAAG,kCAEvE;AAAA,SACF;AAAA,MAEF,SACE,4CAAC,SACC,uDAAC,oBAAK,MACJ;AAAA,oDAAC,iBAAK,MAAL,EAAU,MAAK,gBAAe,OAAO,EAAE,cAAc,GAAG,GACvD,sDAAC,oBAAAA,SAAA,EAAa,GAChB;AAAA,QACA,4CAAC,iBAAK,MAAL,EAAU,MAAK,uBAAsB,OAAO,EAAE,cAAc,GAAG,GAC9D,sDAAC,kBAAM,UAAN,EAAe,MAAM,GAAG,aAAY,YAAW,GAClD;AAAA,QACA,4CAAC,iBAAK,MAAL,EAAU,cAAc,CAAC,gBAAgB,qBAAqB,GAAG,SAAO,MACtE,WAAC,EAAE,cAAc,MAAM;AACtB,gBAAM,eAAe,cAAc,cAAc,KAAK,CAAC;AACvD,gBAAM,sBAAsB,cAAc,qBAAqB;AAC/D,gBAAM,WAAW,CAAC,aAAa,UAAU,CAAC;AAC1C,iBACE;AAAA,YAAC;AAAA;AAAA,cACC,MAAK;AAAA,cACL,OAAK;AAAA,cACL;AAAA,cACA,SAAS,YAAY;AACnB,sBAAM,WAAW,MAAM,KAAK,eAAe;AAC3C,sBAAM,MAAM,MAAM,SAAS,QAAQ;AACnC,oBAAI,KAAK;AACP,kCAAgB,KAAK;AAAA,gBACvB;AAAA,cACF;AAAA,cACD;AAAA;AAAA,UAED;AAAA,QAEJ,GACF;AAAA,SACF,GACF;AAAA,MAGD,cAAI,WAAW,KAEZ,4CAAC,8BAAc,OAAO,EAAE,OAAO,YAAY,GAAG,IAG9C,4CAAC,gCAAgB;AAAA;AAAA,EAEvB;AAEJ;AAEA,IAAO,0BAAQ;",
6
+ "names": ["FeedbackTags"]
7
7
  }
@@ -1,8 +1,6 @@
1
- var __create = Object.create;
2
1
  var __defProp = Object.defineProperty;
3
2
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
5
  var __export = (target, all) => {
8
6
  for (var name in all)
@@ -16,14 +14,6 @@ var __copyProps = (to, from, except, desc) => {
16
14
  }
17
15
  return to;
18
16
  };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
18
 
29
19
  // src/components/FeedbackTags.tsx
@@ -34,14 +24,13 @@ __export(FeedbackTags_exports, {
34
24
  });
35
25
  module.exports = __toCommonJS(FeedbackTags_exports);
36
26
  var import_antd = require("antd");
37
- var import_react = __toESM(require("react"));
27
+ var import_jsx_runtime = require("react/jsx-runtime");
38
28
  var allTags = ["回答错误", "需求理解错", "内容质量差", "逻辑混乱", "可读性差", "遗忘了上文", "时效性差", "其他"];
39
29
  var FeedbackTags = ({ value, onChange }) => {
40
30
  const tags = value || [];
41
- return /* @__PURE__ */ import_react.default.createElement(import_antd.Flex, { gap: 8, wrap: true, style: { width: 305 } }, allTags.map((v) => /* @__PURE__ */ import_react.default.createElement(
31
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_antd.Flex, { gap: 8, wrap: true, style: { width: 305 }, children: allTags.map((v) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
42
32
  import_antd.Button,
43
33
  {
44
- key: v,
45
34
  type: tags.includes(v) ? "primary" : "default",
46
35
  onClick: () => {
47
36
  if (tags.includes(v)) {
@@ -49,10 +38,11 @@ var FeedbackTags = ({ value, onChange }) => {
49
38
  } else {
50
39
  onChange == null ? void 0 : onChange([...tags, v]);
51
40
  }
52
- }
41
+ },
42
+ children: v
53
43
  },
54
44
  v
55
- )));
45
+ )) });
56
46
  };
57
47
  var FeedbackTags_default = FeedbackTags;
58
48
  // Annotate the CommonJS export names for ESM import in node:
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../../src/components/FeedbackTags.tsx"],
4
4
  "sourcesContent": ["import { Button, Flex } from 'antd';\nimport React from 'react';\n\nexport interface FeedbackTagsProps {\n value?: string[];\n onChange?: (v?: string[]) => void;\n}\n\nconst allTags = ['回答错误', '需求理解错', '内容质量差', '逻辑混乱', '可读性差', '遗忘了上文', '时效性差', '其他'];\n\nexport const FeedbackTags: React.FC<FeedbackTagsProps> = ({ value, onChange }) => {\n const tags = value || [];\n return (\n <Flex gap={8} wrap style={{ width: 305 }}>\n {allTags.map((v) => (\n <Button\n key={v}\n type={tags.includes(v) ? 'primary' : 'default'}\n onClick={() => {\n if (tags.includes(v)) {\n onChange?.(tags.filter((t) => t !== v));\n } else {\n onChange?.([...tags, v]);\n }\n }}\n >\n {v}\n </Button>\n ))}\n </Flex>\n );\n};\n\nexport default FeedbackTags;\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAA6B;AAC7B,mBAAkB;AAOlB,IAAM,UAAU,CAAC,QAAQ,SAAS,SAAS,QAAQ,QAAQ,SAAS,QAAQ,IAAI;AAEzE,IAAM,eAA4C,CAAC,EAAE,OAAO,SAAS,MAAM;AAChF,QAAM,OAAO,SAAS,CAAC;AACvB,SACE,6BAAAA,QAAA,cAAC,oBAAK,KAAK,GAAG,MAAI,MAAC,OAAO,EAAE,OAAO,IAAI,KACpC,QAAQ,IAAI,CAAC,MACZ,6BAAAA,QAAA;AAAA,IAAC;AAAA;AAAA,MACC,KAAK;AAAA,MACL,MAAM,KAAK,SAAS,CAAC,IAAI,YAAY;AAAA,MACrC,SAAS,MAAM;AACb,YAAI,KAAK,SAAS,CAAC,GAAG;AACpB,+CAAW,KAAK,OAAO,CAAC,MAAM,MAAM,CAAC;AAAA,QACvC,OAAO;AACL,+CAAW,CAAC,GAAG,MAAM,CAAC;AAAA,QACxB;AAAA,MACF;AAAA;AAAA,IAEC;AAAA,EACH,CACD,CACH;AAEJ;AAEA,IAAO,uBAAQ;",
6
- "names": ["React"]
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAA6B;AAerB;AAPR,IAAM,UAAU,CAAC,QAAQ,SAAS,SAAS,QAAQ,QAAQ,SAAS,QAAQ,IAAI;AAEzE,IAAM,eAA4C,CAAC,EAAE,OAAO,SAAS,MAAM;AAChF,QAAM,OAAO,SAAS,CAAC;AACvB,SACE,4CAAC,oBAAK,KAAK,GAAG,MAAI,MAAC,OAAO,EAAE,OAAO,IAAI,GACpC,kBAAQ,IAAI,CAAC,MACZ;AAAA,IAAC;AAAA;AAAA,MAEC,MAAM,KAAK,SAAS,CAAC,IAAI,YAAY;AAAA,MACrC,SAAS,MAAM;AACb,YAAI,KAAK,SAAS,CAAC,GAAG;AACpB,+CAAW,KAAK,OAAO,CAAC,MAAM,MAAM,CAAC;AAAA,QACvC,OAAO;AACL,+CAAW,CAAC,GAAG,MAAM,CAAC;AAAA,QACxB;AAAA,MACF;AAAA,MAEC;AAAA;AAAA,IAVI;AAAA,EAWP,CACD,GACH;AAEJ;AAEA,IAAO,uBAAQ;",
6
+ "names": []
7
7
  }
@@ -37,13 +37,14 @@ __export(XAiChatbot_stories_exports, {
37
37
  架构对比演示: () => 架构对比演示
38
38
  });
39
39
  module.exports = __toCommonJS(XAiChatbot_stories_exports);
40
- var import_react = __toESM(require("react"));
40
+ var import_react = require("react");
41
41
  var import_antd = require("antd");
42
42
  var import_XAiMessage = require("../../types/XAiMessage");
43
43
  var import_document = __toESM(require("../../assets/document.svg"));
44
44
  var import_XAiProvider = __toESM(require("../XAiProvider"));
45
45
  var import__ = __toESM(require("."));
46
46
  var import_useProviderContext = require("../../hooks/useProviderContext");
47
+ var import_jsx_runtime = require("react/jsx-runtime");
47
48
  var meta = {
48
49
  title: "AI组件/XAiChatbot 聊天框",
49
50
  component: import__.default,
@@ -327,7 +328,7 @@ var BasicUsageStory = (args) => {
327
328
  const { cost, token } = (data == null ? void 0 : data.extra) || {};
328
329
  if (!cost && !token)
329
330
  return null;
330
- return /* @__PURE__ */ import_react.default.createElement(
331
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
331
332
  "div",
332
333
  {
333
334
  style: {
@@ -337,14 +338,22 @@ var BasicUsageStory = (args) => {
337
338
  color: "#949494",
338
339
  flex: 1,
339
340
  paddingRight: "40px"
340
- }
341
- },
342
- cost && /* @__PURE__ */ import_react.default.createElement("div", null, cost, "s"),
343
- token && /* @__PURE__ */ import_react.default.createElement(import_antd.Divider, { type: "vertical" }),
344
- token && /* @__PURE__ */ import_react.default.createElement("div", null, token, " tokens")
341
+ },
342
+ children: [
343
+ cost && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { children: [
344
+ cost,
345
+ "s"
346
+ ] }),
347
+ token && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_antd.Divider, { type: "vertical" }),
348
+ token && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { children: [
349
+ token,
350
+ " tokens"
351
+ ] })
352
+ ]
353
+ }
345
354
  );
346
355
  };
347
- return /* @__PURE__ */ import_react.default.createElement(
356
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
348
357
  "div",
349
358
  {
350
359
  style: {
@@ -352,22 +361,32 @@ var BasicUsageStory = (args) => {
352
361
  width: "400px",
353
362
  border: "1px solid #e7e7e7",
354
363
  borderRadius: "8px"
355
- }
356
- },
357
- /* @__PURE__ */ import_react.default.createElement(
358
- import__.default,
359
- {
360
- ...args,
361
- inputShow: false,
362
- messages,
363
- loading,
364
- messageTooltip: ToolTip,
365
- onClear: handleClear,
366
- onSuggestMessageClick: handleSuggestMessageClick,
367
- onSend: handleSendMessage,
368
- onMessagesActionsCallback: handleActions
369
- }
370
- )
364
+ },
365
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
366
+ import__.default,
367
+ {
368
+ ...args,
369
+ inputShow: false,
370
+ messages,
371
+ loading,
372
+ messageTooltip: ToolTip,
373
+ onClear: handleClear,
374
+ onSuggestMessageClick: handleSuggestMessageClick,
375
+ onSend: handleSendMessage,
376
+ onMessagesActionsCallback: handleActions,
377
+ enableUpload: true,
378
+ uploadRequest: ({ file, onProgress, onSuccess }) => {
379
+ console.info(file);
380
+ onProgress == null ? void 0 : onProgress({
381
+ percent: 50
382
+ });
383
+ setTimeout(() => {
384
+ onSuccess == null ? void 0 : onSuccess({});
385
+ }, 1e3);
386
+ }
387
+ }
388
+ )
389
+ }
371
390
  );
372
391
  };
373
392
  var 基础用法 = {
@@ -382,7 +401,7 @@ var 基础用法 = {
382
401
  };
383
402
  var 在Provider中使用 = {
384
403
  decorators: [
385
- (Story) => /* @__PURE__ */ import_react.default.createElement(import_XAiProvider.default, { token: "test-token", url: "https://api.example.com" }, /* @__PURE__ */ import_react.default.createElement(Story, null))
404
+ (Story) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_XAiProvider.default, { token: "test-token", url: "https://api.example.com", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Story, {}) })
386
405
  ],
387
406
  args: {
388
407
  navbar: {
@@ -392,7 +411,10 @@ var 在Provider中使用 = {
392
411
  };
393
412
  var 多个Provider实例 = {
394
413
  decorators: [
395
- (Story) => /* @__PURE__ */ import_react.default.createElement("div", { style: { display: "flex", gap: "50px", height: "600px" } }, /* @__PURE__ */ import_react.default.createElement(import_XAiProvider.default, { providerId: "chat1", token: "token1", url: "https://api1.example.com" }, /* @__PURE__ */ import_react.default.createElement("div", { style: { width: "300px", marginRight: "40px" } }, /* @__PURE__ */ import_react.default.createElement(Story, null))), /* @__PURE__ */ import_react.default.createElement(import_XAiProvider.default, { providerId: "chat2", token: "token2", url: "https://api2.example.com" }, /* @__PURE__ */ import_react.default.createElement("div", { style: { width: "300px" } }, /* @__PURE__ */ import_react.default.createElement(Story, null))))
414
+ (Story) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { style: { display: "flex", gap: "50px", height: "600px" }, children: [
415
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_XAiProvider.default, { providerId: "chat1", token: "token1", url: "https://api1.example.com", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { style: { width: "300px", marginRight: "40px" }, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Story, {}) }) }),
416
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_XAiProvider.default, { providerId: "chat2", token: "token2", url: "https://api2.example.com", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { style: { width: "300px" }, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Story, {}) }) })
417
+ ] })
396
418
  ],
397
419
  args: {
398
420
  navbar: {
@@ -418,7 +440,7 @@ var ArchitectureDemoComponent = ({ title }) => {
418
440
  }
419
441
  });
420
442
  const providerMethods = (0, import_useProviderContext.useProviderMethods)();
421
- return /* @__PURE__ */ import_react.default.createElement(
443
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
422
444
  "div",
423
445
  {
424
446
  style: {
@@ -427,43 +449,78 @@ var ArchitectureDemoComponent = ({ title }) => {
427
449
  borderRadius: "8px",
428
450
  marginBottom: "10px",
429
451
  backgroundColor: "#fafafa"
430
- }
431
- },
432
- /* @__PURE__ */ import_react.default.createElement("h4", { style: { margin: "0 0 10px 0" } }, mergedProps.title),
433
- /* @__PURE__ */ import_react.default.createElement("div", { style: { fontSize: "12px", color: "#666" } }, /* @__PURE__ */ import_react.default.createElement("p", null, "Provider 状态: ", isInProvider ? "✅ 已连接" : "❌ 未连接"), /* @__PURE__ */ import_react.default.createElement("p", null, "消息数量: ", ((_a = getProviderValue("messages")) == null ? void 0 : _a.length) || 0), /* @__PURE__ */ import_react.default.createElement("p", null, "加载状态: ", getProviderValue("loading") ? "🔄 加载中" : "✅ 就绪"), /* @__PURE__ */ import_react.default.createElement(
434
- "button",
435
- {
436
- onClick: () => {
437
- var _a2;
438
- return (_a2 = providerMethods.sendMessage) == null ? void 0 : _a2.call(providerMethods, "来自架构演示组件的消息");
439
- },
440
- disabled: !isInProvider,
441
- style: {
442
- fontSize: "12px",
443
- padding: "4px 8px",
444
- backgroundColor: isInProvider ? "#1890ff" : "#d9d9d9",
445
- color: "white",
446
- border: "none",
447
- borderRadius: "4px",
448
- cursor: isInProvider ? "pointer" : "not-allowed"
449
- }
450
452
  },
451
- isInProvider ? "发送消息" : "需要 Provider"
452
- ))
453
+ children: [
454
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h4", { style: { margin: "0 0 10px 0" }, children: mergedProps.title }),
455
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { style: { fontSize: "12px", color: "#666" }, children: [
456
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("p", { children: [
457
+ "Provider 状态: ",
458
+ isInProvider ? "✅ 已连接" : "❌ 未连接"
459
+ ] }),
460
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("p", { children: [
461
+ "消息数量: ",
462
+ ((_a = getProviderValue("messages")) == null ? void 0 : _a.length) || 0
463
+ ] }),
464
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("p", { children: [
465
+ "加载状态: ",
466
+ getProviderValue("loading") ? "🔄 加载中" : "✅ 就绪"
467
+ ] }),
468
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
469
+ "button",
470
+ {
471
+ onClick: () => {
472
+ var _a2;
473
+ return (_a2 = providerMethods.sendMessage) == null ? void 0 : _a2.call(providerMethods, { text: "来自架构演示组件的消息" });
474
+ },
475
+ disabled: !isInProvider,
476
+ style: {
477
+ fontSize: "12px",
478
+ padding: "4px 8px",
479
+ backgroundColor: isInProvider ? "#1890ff" : "#d9d9d9",
480
+ color: "white",
481
+ border: "none",
482
+ borderRadius: "4px",
483
+ cursor: isInProvider ? "pointer" : "not-allowed"
484
+ },
485
+ children: isInProvider ? "发送消息" : "需要 Provider"
486
+ }
487
+ )
488
+ ] })
489
+ ]
490
+ }
453
491
  );
454
492
  };
455
493
  var 新架构演示 = {
456
- render: (args) => /* @__PURE__ */ import_react.default.createElement("div", { style: { width: "500px", height: "700px" } }, /* @__PURE__ */ import_react.default.createElement(import_XAiProvider.default, { token: "demo-token", url: "https://api.example.com", providerId: "architecture-demo" }, /* @__PURE__ */ import_react.default.createElement("div", { style: { padding: "20px" } }, /* @__PURE__ */ import_react.default.createElement("h3", { style: { marginBottom: "20px" } }, "新架构演示"), /* @__PURE__ */ import_react.default.createElement("p", { style: { marginBottom: "20px", color: "#666" } }, "展示如何使用 useProviderContext 和 useProviderMethods Hook"), /* @__PURE__ */ import_react.default.createElement("div", { style: { marginBottom: "20px" } }, /* @__PURE__ */ import_react.default.createElement(ArchitectureDemoComponent, { title: "演示组件 A" }), /* @__PURE__ */ import_react.default.createElement(ArchitectureDemoComponent, { title: "演示组件 B" }), /* @__PURE__ */ import_react.default.createElement(ArchitectureDemoComponent, { title: "演示组件 C" })), /* @__PURE__ */ import_react.default.createElement(
457
- import__.default,
458
- {
459
- ...args,
460
- navbarShow: true,
461
- navbar: {
462
- title: "架构演示聊天机器人",
463
- subtitle: "展示新 Hook 的使用"
494
+ render: (args) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { style: { width: "500px", height: "700px" }, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_XAiProvider.default, { token: "demo-token", url: "https://api.example.com", providerId: "architecture-demo", children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { style: { padding: "20px" }, children: [
495
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h3", { style: { marginBottom: "20px" }, children: "新架构演示" }),
496
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { style: { marginBottom: "20px", color: "#666" }, children: "展示如何使用 useProviderContext 和 useProviderMethods Hook" }),
497
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { style: { marginBottom: "20px" }, children: [
498
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ArchitectureDemoComponent, { title: "演示组件 A" }),
499
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ArchitectureDemoComponent, { title: "演示组件 B" }),
500
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ArchitectureDemoComponent, { title: "演示组件 C" })
501
+ ] }),
502
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
503
+ import__.default,
504
+ {
505
+ ...args,
506
+ navbarShow: true,
507
+ navbar: {
508
+ title: "架构演示聊天机器人",
509
+ subtitle: "展示新 Hook 的使用"
510
+ },
511
+ enableUpload: true,
512
+ uploadRequest: ({ file, onProgress, onSuccess }) => {
513
+ console.info(file);
514
+ onProgress == null ? void 0 : onProgress({
515
+ percent: 50
516
+ });
517
+ setTimeout(() => {
518
+ onSuccess == null ? void 0 : onSuccess({});
519
+ }, 1e3);
520
+ }
464
521
  }
465
- }
466
- )))),
522
+ )
523
+ ] }) }) }),
467
524
  args: {
468
525
  navbar: {
469
526
  title: "智能助手"
@@ -471,33 +528,68 @@ var 新架构演示 = {
471
528
  }
472
529
  };
473
530
  var 架构对比演示 = {
474
- render: (args) => /* @__PURE__ */ import_react.default.createElement("div", { style: { display: "flex", gap: "20px", padding: "20px" } }, /* @__PURE__ */ import_react.default.createElement("div", { style: { width: "300px" } }, /* @__PURE__ */ import_react.default.createElement("h4", null, "独立使用模式"), /* @__PURE__ */ import_react.default.createElement("div", { style: { border: "1px solid #e7e7e7", borderRadius: "8px", padding: "15px" } }, /* @__PURE__ */ import_react.default.createElement(ArchitectureDemoComponent, { title: "独立组件" }), /* @__PURE__ */ import_react.default.createElement(
475
- import__.default,
476
- {
477
- ...args,
478
- navbarShow: true,
479
- navbar: {
480
- title: "独立聊天机器人",
481
- subtitle: "不依赖 Provider"
482
- },
483
- onSend: (type, content) => {
484
- console.log("独立模式发送:", type, content);
485
- },
486
- onClear: () => {
487
- console.log("独立模式清空");
488
- }
489
- }
490
- ))), /* @__PURE__ */ import_react.default.createElement("div", { style: { width: "300px" } }, /* @__PURE__ */ import_react.default.createElement("h4", null, "Provider 模式"), /* @__PURE__ */ import_react.default.createElement(import_XAiProvider.default, { token: "demo-token", url: "https://api.example.com", providerId: "comparison-demo" }, /* @__PURE__ */ import_react.default.createElement("div", { style: { border: "1px solid #e7e7e7", borderRadius: "8px", padding: "15px" } }, /* @__PURE__ */ import_react.default.createElement(ArchitectureDemoComponent, { title: "Provider 组件" }), /* @__PURE__ */ import_react.default.createElement(
491
- import__.default,
492
- {
493
- ...args,
494
- navbarShow: true,
495
- navbar: {
496
- title: "Provider 聊天机器人",
497
- subtitle: "由 Provider 管理"
498
- }
499
- }
500
- ))))),
531
+ render: (args) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { style: { display: "flex", gap: "20px", padding: "20px" }, children: [
532
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { style: { width: "300px" }, children: [
533
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h4", { children: "独立使用模式" }),
534
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { style: { border: "1px solid #e7e7e7", borderRadius: "8px", padding: "15px" }, children: [
535
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ArchitectureDemoComponent, { title: "独立组件" }),
536
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
537
+ import__.default,
538
+ {
539
+ ...args,
540
+ navbarShow: true,
541
+ navbar: {
542
+ title: "独立聊天机器人",
543
+ subtitle: "不依赖 Provider"
544
+ },
545
+ onSend: (content) => {
546
+ console.log("独立模式发送:", content);
547
+ },
548
+ onClear: () => {
549
+ console.log("独立模式清空");
550
+ },
551
+ enableUpload: true,
552
+ uploadRequest: ({ file, onProgress, onSuccess }) => {
553
+ console.info(file);
554
+ onProgress == null ? void 0 : onProgress({
555
+ percent: 50
556
+ });
557
+ setTimeout(() => {
558
+ onSuccess == null ? void 0 : onSuccess({});
559
+ }, 1e3);
560
+ }
561
+ }
562
+ )
563
+ ] })
564
+ ] }),
565
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { style: { width: "300px" }, children: [
566
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h4", { children: "Provider 模式" }),
567
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_XAiProvider.default, { token: "demo-token", url: "https://api.example.com", providerId: "comparison-demo", children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { style: { border: "1px solid #e7e7e7", borderRadius: "8px", padding: "15px" }, children: [
568
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ArchitectureDemoComponent, { title: "Provider 组件" }),
569
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
570
+ import__.default,
571
+ {
572
+ ...args,
573
+ navbarShow: true,
574
+ navbar: {
575
+ title: "Provider 聊天机器人",
576
+ subtitle: "由 Provider 管理"
577
+ },
578
+ enableUpload: true,
579
+ uploadRequest: ({ file, onProgress, onSuccess }) => {
580
+ console.info(file);
581
+ onProgress == null ? void 0 : onProgress({
582
+ percent: 50
583
+ });
584
+ setTimeout(() => {
585
+ onSuccess == null ? void 0 : onSuccess({});
586
+ }, 1e3);
587
+ }
588
+ }
589
+ )
590
+ ] }) })
591
+ ] })
592
+ ] }),
501
593
  args: {
502
594
  navbar: {
503
595
  title: "智能助手"