react-ai-renderer 0.1.1 → 0.1.2

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 (119) hide show
  1. package/dist/MermaidRenderer-0ef71453.js +170 -0
  2. package/dist/{MermaidRenderer-cdeab8f8.js.map → MermaidRenderer-0ef71453.js.map} +1 -1
  3. package/dist/MermaidRenderer-13e4a89a.js +172 -0
  4. package/dist/{MermaidRenderer-1f4c47aa.js.map → MermaidRenderer-13e4a89a.js.map} +1 -1
  5. package/dist/MermaidRenderer-321bfe50.js +170 -0
  6. package/dist/MermaidRenderer-321bfe50.js.map +1 -0
  7. package/dist/MermaidRenderer-325a9dee.js +170 -0
  8. package/dist/MermaidRenderer-325a9dee.js.map +1 -0
  9. package/dist/MermaidRenderer-4bae11d6.js +170 -0
  10. package/dist/MermaidRenderer-4bae11d6.js.map +1 -0
  11. package/dist/MermaidRenderer-6237d7da.js +170 -0
  12. package/dist/MermaidRenderer-6237d7da.js.map +1 -0
  13. package/dist/MermaidRenderer-653a4dab.js +172 -0
  14. package/dist/MermaidRenderer-653a4dab.js.map +1 -0
  15. package/dist/MermaidRenderer-67edae8e.js +172 -0
  16. package/dist/MermaidRenderer-67edae8e.js.map +1 -0
  17. package/dist/MermaidRenderer-6f071d8e.js +170 -0
  18. package/dist/MermaidRenderer-6f071d8e.js.map +1 -0
  19. package/dist/MermaidRenderer-75832c15.js +172 -0
  20. package/dist/MermaidRenderer-75832c15.js.map +1 -0
  21. package/dist/MermaidRenderer-7cb138d1.js +170 -0
  22. package/dist/MermaidRenderer-7cb138d1.js.map +1 -0
  23. package/dist/MermaidRenderer-8a8fb725.js +172 -0
  24. package/dist/MermaidRenderer-8a8fb725.js.map +1 -0
  25. package/dist/MermaidRenderer-91a0a7d8.js +170 -0
  26. package/dist/MermaidRenderer-91a0a7d8.js.map +1 -0
  27. package/dist/MermaidRenderer-9ff856f3.js +172 -0
  28. package/dist/MermaidRenderer-9ff856f3.js.map +1 -0
  29. package/dist/{MermaidRenderer-1f4c47aa.js → MermaidRenderer-a25ae84f.js} +1 -1
  30. package/dist/MermaidRenderer-a25ae84f.js.map +1 -0
  31. package/dist/MermaidRenderer-c3014102.js +172 -0
  32. package/dist/MermaidRenderer-c3014102.js.map +1 -0
  33. package/dist/MermaidRenderer-c664aa66.js +170 -0
  34. package/dist/MermaidRenderer-c664aa66.js.map +1 -0
  35. package/dist/MermaidRenderer-d1518f28.js +172 -0
  36. package/dist/MermaidRenderer-d1518f28.js.map +1 -0
  37. package/dist/MermaidRenderer-d7545a7e.js +172 -0
  38. package/dist/MermaidRenderer-d7545a7e.js.map +1 -0
  39. package/dist/{MermaidRenderer-cdeab8f8.js → MermaidRenderer-d8836800.js} +1 -1
  40. package/dist/MermaidRenderer-d8836800.js.map +1 -0
  41. package/dist/MermaidRenderer-d9c8351a.js +172 -0
  42. package/dist/MermaidRenderer-d9c8351a.js.map +1 -0
  43. package/dist/MermaidRenderer-dc0ac92e.js +170 -0
  44. package/dist/MermaidRenderer-dc0ac92e.js.map +1 -0
  45. package/dist/MermaidRenderer-e549ab85.js +172 -0
  46. package/dist/MermaidRenderer-e549ab85.js.map +1 -0
  47. package/dist/MermaidRenderer-e5d81a6f.js +172 -0
  48. package/dist/MermaidRenderer-e5d81a6f.js.map +1 -0
  49. package/dist/MermaidRenderer-e82f36e4.js +172 -0
  50. package/dist/MermaidRenderer-e82f36e4.js.map +1 -0
  51. package/dist/MermaidRenderer-f04366c1.js +170 -0
  52. package/dist/MermaidRenderer-f04366c1.js.map +1 -0
  53. package/dist/MermaidRenderer-f6473da3.js +170 -0
  54. package/dist/MermaidRenderer-f6473da3.js.map +1 -0
  55. package/dist/MermaidRenderer-f82d0d11.js +170 -0
  56. package/dist/MermaidRenderer-f82d0d11.js.map +1 -0
  57. package/dist/index-02f4473f.js +1313 -0
  58. package/dist/index-02f4473f.js.map +1 -0
  59. package/dist/index-172582eb.js +1294 -0
  60. package/dist/index-172582eb.js.map +1 -0
  61. package/dist/index-1d051ba8.js +1286 -0
  62. package/dist/index-1d051ba8.js.map +1 -0
  63. package/dist/{index-1e589dfb.js → index-283b43ef.js} +279 -211
  64. package/dist/index-283b43ef.js.map +1 -0
  65. package/dist/index-2d979ad5.js +1314 -0
  66. package/dist/index-2d979ad5.js.map +1 -0
  67. package/dist/index-349401d2.js +1288 -0
  68. package/dist/index-349401d2.js.map +1 -0
  69. package/dist/index-398258c5.js +1314 -0
  70. package/dist/index-398258c5.js.map +1 -0
  71. package/dist/index-3cf82be4.js +1287 -0
  72. package/dist/index-3cf82be4.js.map +1 -0
  73. package/dist/index-3de28f18.js +1319 -0
  74. package/dist/index-3de28f18.js.map +1 -0
  75. package/dist/index-415b51ad.js +1296 -0
  76. package/dist/index-415b51ad.js.map +1 -0
  77. package/dist/{index-c0f5a1e9.js → index-4592abf8.js} +279 -210
  78. package/dist/index-4592abf8.js.map +1 -0
  79. package/dist/index-4edeb553.js +1313 -0
  80. package/dist/index-4edeb553.js.map +1 -0
  81. package/dist/index-534d3bce.js +1312 -0
  82. package/dist/index-534d3bce.js.map +1 -0
  83. package/dist/index-6ceb7256.js +1287 -0
  84. package/dist/index-6ceb7256.js.map +1 -0
  85. package/dist/index-7e8dc866.js +1304 -0
  86. package/dist/index-7e8dc866.js.map +1 -0
  87. package/dist/index-896de550.js +1313 -0
  88. package/dist/index-896de550.js.map +1 -0
  89. package/dist/index-8dbf398a.js +1313 -0
  90. package/dist/index-8dbf398a.js.map +1 -0
  91. package/dist/index-922bbd30.js +1339 -0
  92. package/dist/index-922bbd30.js.map +1 -0
  93. package/dist/index-a5a2c748.js +1288 -0
  94. package/dist/index-a5a2c748.js.map +1 -0
  95. package/dist/index-abed2ed7.js +1286 -0
  96. package/dist/index-abed2ed7.js.map +1 -0
  97. package/dist/index-ae31bd04.js +1312 -0
  98. package/dist/index-ae31bd04.js.map +1 -0
  99. package/dist/index-b0cab34f.js +1287 -0
  100. package/dist/index-b0cab34f.js.map +1 -0
  101. package/dist/index-bb96fdaf.js +1322 -0
  102. package/dist/index-bb96fdaf.js.map +1 -0
  103. package/dist/index-c0acef6b.js +1330 -0
  104. package/dist/index-c0acef6b.js.map +1 -0
  105. package/dist/index-c6ab333d.js +1293 -0
  106. package/dist/index-c6ab333d.js.map +1 -0
  107. package/dist/index-d4f12a68.js +1287 -0
  108. package/dist/index-d4f12a68.js.map +1 -0
  109. package/dist/index-e07ca144.js +1320 -0
  110. package/dist/index-e07ca144.js.map +1 -0
  111. package/dist/index-fdaa9757.js +1313 -0
  112. package/dist/index-fdaa9757.js.map +1 -0
  113. package/dist/index.d.ts +25 -5
  114. package/dist/index.es.js +1 -1
  115. package/dist/index.js +2 -1
  116. package/dist/index.js.map +1 -1
  117. package/package.json +1 -1
  118. package/dist/index-1e589dfb.js.map +0 -1
  119. package/dist/index-c0f5a1e9.js.map +0 -1
@@ -29,168 +29,17 @@ function _interopNamespaceDefault(e) {
29
29
  var React__namespace = /*#__PURE__*/_interopNamespaceDefault(React);
30
30
  var runtime__namespace = /*#__PURE__*/_interopNamespaceDefault(runtime);
31
31
 
32
- /******************************************************************************
33
- Copyright (c) Microsoft Corporation.
34
-
35
- Permission to use, copy, modify, and/or distribute this software for any
36
- purpose with or without fee is hereby granted.
37
-
38
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
39
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
40
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
41
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
42
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
43
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
44
- PERFORMANCE OF THIS SOFTWARE.
45
- ***************************************************************************** */
46
- /* global Reflect, Promise, SuppressedError, Symbol, Iterator */
47
-
48
- var extendStatics = function(d, b) {
49
- extendStatics = Object.setPrototypeOf ||
50
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
51
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
52
- return extendStatics(d, b);
53
- };
54
-
55
- function __extends(d, b) {
56
- if (typeof b !== "function" && b !== null)
57
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
58
- extendStatics(d, b);
59
- function __() { this.constructor = d; }
60
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
61
- }
62
-
63
- var __assign = function() {
64
- __assign = Object.assign || function __assign(t) {
65
- for (var s, i = 1, n = arguments.length; i < n; i++) {
66
- s = arguments[i];
67
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
68
- }
69
- return t;
70
- };
71
- return __assign.apply(this, arguments);
72
- };
73
-
74
- function __rest(s, e) {
75
- var t = {};
76
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
77
- t[p] = s[p];
78
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
79
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
80
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
81
- t[p[i]] = s[p[i]];
82
- }
83
- return t;
84
- }
85
-
86
- function __awaiter(thisArg, _arguments, P, generator) {
87
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
88
- return new (P || (P = Promise))(function (resolve, reject) {
89
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
90
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
91
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
92
- step((generator = generator.apply(thisArg, _arguments || [])).next());
93
- });
94
- }
95
-
96
- function __generator(thisArg, body) {
97
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
98
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
99
- function verb(n) { return function (v) { return step([n, v]); }; }
100
- function step(op) {
101
- if (f) throw new TypeError("Generator is already executing.");
102
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
103
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
104
- if (y = 0, t) op = [op[0] & 2, t.value];
105
- switch (op[0]) {
106
- case 0: case 1: t = op; break;
107
- case 4: _.label++; return { value: op[1], done: false };
108
- case 5: _.label++; y = op[1]; op = [0]; continue;
109
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
110
- default:
111
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
112
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
113
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
114
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
115
- if (t[2]) _.ops.pop();
116
- _.trys.pop(); continue;
117
- }
118
- op = body.call(thisArg, _);
119
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
120
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
121
- }
122
- }
123
-
124
- function __values(o) {
125
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
126
- if (m) return m.call(o);
127
- if (o && typeof o.length === "number") return {
128
- next: function () {
129
- if (o && i >= o.length) o = void 0;
130
- return { value: o && o[i++], done: !o };
131
- }
132
- };
133
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
134
- }
135
-
136
- function __read(o, n) {
137
- var m = typeof Symbol === "function" && o[Symbol.iterator];
138
- if (!m) return o;
139
- var i = m.call(o), r, ar = [], e;
140
- try {
141
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
142
- }
143
- catch (error) { e = { error: error }; }
144
- finally {
145
- try {
146
- if (r && !r.done && (m = i["return"])) m.call(i);
147
- }
148
- finally { if (e) throw e.error; }
149
- }
150
- return ar;
151
- }
152
-
153
- function __spreadArray(to, from, pack) {
154
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
155
- if (ar || !(i in from)) {
156
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
157
- ar[i] = from[i];
158
- }
159
- }
160
- return to.concat(ar || Array.prototype.slice.call(from));
161
- }
162
-
163
- typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
164
- var e = new Error(message);
165
- return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
166
- };
167
-
168
32
  var MDXStreamingParser = /** @class */function () {
169
33
  function MDXStreamingParser(components) {
170
- this.registeredComponents = new Set(components);
34
+ // 将组件名称存储在Set中,而不是整个组件对象
35
+ this.registeredComponents = new Set(components.map(function (c) {
36
+ return c.name;
37
+ }));
171
38
  this.messages = new Map();
172
39
  }
173
- MDXStreamingParser.prototype.findComponentByName = function (name) {
174
- var e_1, _a;
175
- try {
176
- for (var _b = __values(this.registeredComponents), _c = _b.next(); !_c.done; _c = _b.next()) {
177
- var component = _c.value;
178
- if (component.name === name) {
179
- return component;
180
- }
181
- }
182
- } catch (e_1_1) {
183
- e_1 = {
184
- error: e_1_1
185
- };
186
- } finally {
187
- try {
188
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
189
- } finally {
190
- if (e_1) throw e_1.error;
191
- }
192
- }
193
- return undefined; // Return undefined if no component is found
40
+ // 检查组件是否已注册
41
+ MDXStreamingParser.prototype.isComponentRegistered = function (name) {
42
+ return this.registeredComponents.has(name);
194
43
  };
195
44
  MDXStreamingParser.prototype.parse = function (messageId, input) {
196
45
  var state = {
@@ -211,9 +60,10 @@ var MDXStreamingParser = /** @class */function () {
211
60
  break;
212
61
  }
213
62
  var tagName = input.slice(i + 2, closeTagEnd);
214
- var registerComponentInfo = this.findComponentByName(tagName);
63
+ // 检查组件是否已注册
64
+ var isRegistered = this.isComponentRegistered(tagName);
215
65
  // 如果组件未注册,则作为文本处理
216
- if (!registerComponentInfo) {
66
+ if (!isRegistered) {
217
67
  state.buffer += input.slice(i, closeTagEnd + 1);
218
68
  i = closeTagEnd + 1;
219
69
  continue;
@@ -248,9 +98,10 @@ var MDXStreamingParser = /** @class */function () {
248
98
  if (tagMatch) {
249
99
  // Handle accumulated text before the tag
250
100
  var componentName = tagMatch[1];
251
- var registerComponentInfo = this.findComponentByName(componentName);
101
+ // 检查组件是否已注册
102
+ var isRegistered = this.isComponentRegistered(componentName);
252
103
  // 如果组件未注册,将整个标签作为文本处理
253
- if (!registerComponentInfo) {
104
+ if (!isRegistered) {
254
105
  state.buffer += input[i];
255
106
  i++;
256
107
  continue;
@@ -278,20 +129,16 @@ var MDXStreamingParser = /** @class */function () {
278
129
  });
279
130
  }
280
131
  state.buffer = '';
281
- // const componentName = tagMatch[1];
282
- var selfClosing = false;
283
- // const registerComponentInfo = this.findComponentByName(componentName);
284
- if (registerComponentInfo) {
285
- selfClosing = registerComponentInfo.selfClosing;
286
- }
287
- var _a = this.parseComponentTag(input.slice(i), selfClosing),
132
+ // 动态解析标签形式,不再依赖预先注册的 selfClosing 属性
133
+ var _a = this.parseComponentTag(input.slice(i)),
288
134
  props = _a.props,
289
- endIndex = _a.endIndex;
135
+ endIndex = _a.endIndex,
136
+ selfClosing = _a.selfClosing;
290
137
  var component = {
291
138
  type: "component",
292
139
  value: componentName,
293
140
  props: props,
294
- selfClosing: selfClosing
141
+ selfClosing: selfClosing // 使用实际解析出的标签形式
295
142
  };
296
143
  if (!selfClosing) {
297
144
  state.stack.push(component);
@@ -382,22 +229,21 @@ var MDXStreamingParser = /** @class */function () {
382
229
  }
383
230
  return input.length;
384
231
  };
385
- MDXStreamingParser.prototype.parseComponentTag = function (input, selfClosing) {
232
+ MDXStreamingParser.prototype.parseComponentTag = function (input) {
386
233
  var props = {};
387
234
  var i = 0;
388
235
  // 跳过组件名
389
236
  while (i < input.length && input[i] !== ' ' && input[i] !== '>') i++;
390
- if (!selfClosing) {
391
- return this.parsePropsCommon(input);
392
- }
393
- // 使用 parseProps 方法解析属性
394
- var propsContent = input.slice(i);
395
- var parsedProps = this.parsePropsSelfClosing(propsContent);
237
+ // 使用 parsePropsCommon 方法解析属性,该方法会返回标签形式信息
238
+ var _a = this.parsePropsCommon(input),
239
+ parsedProps = _a.props,
240
+ endIndex = _a.endIndex,
241
+ selfClosing = _a.selfClosing;
396
242
  Object.assign(props, parsedProps);
397
- var endIndex = this.findComponentClose(input, i);
398
243
  return {
399
244
  props: props,
400
- endIndex: endIndex
245
+ endIndex: endIndex,
246
+ selfClosing: selfClosing
401
247
  };
402
248
  };
403
249
  MDXStreamingParser.prototype.parsePropsCommon = function (input) {
@@ -537,6 +383,142 @@ var MDXStreamingParser = /** @class */function () {
537
383
  return MDXStreamingParser;
538
384
  }();
539
385
 
386
+ /******************************************************************************
387
+ Copyright (c) Microsoft Corporation.
388
+
389
+ Permission to use, copy, modify, and/or distribute this software for any
390
+ purpose with or without fee is hereby granted.
391
+
392
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
393
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
394
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
395
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
396
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
397
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
398
+ PERFORMANCE OF THIS SOFTWARE.
399
+ ***************************************************************************** */
400
+ /* global Reflect, Promise, SuppressedError, Symbol, Iterator */
401
+
402
+ var extendStatics = function(d, b) {
403
+ extendStatics = Object.setPrototypeOf ||
404
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
405
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
406
+ return extendStatics(d, b);
407
+ };
408
+
409
+ function __extends(d, b) {
410
+ if (typeof b !== "function" && b !== null)
411
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
412
+ extendStatics(d, b);
413
+ function __() { this.constructor = d; }
414
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
415
+ }
416
+
417
+ var __assign = function() {
418
+ __assign = Object.assign || function __assign(t) {
419
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
420
+ s = arguments[i];
421
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
422
+ }
423
+ return t;
424
+ };
425
+ return __assign.apply(this, arguments);
426
+ };
427
+
428
+ function __rest(s, e) {
429
+ var t = {};
430
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
431
+ t[p] = s[p];
432
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
433
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
434
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
435
+ t[p[i]] = s[p[i]];
436
+ }
437
+ return t;
438
+ }
439
+
440
+ function __awaiter(thisArg, _arguments, P, generator) {
441
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
442
+ return new (P || (P = Promise))(function (resolve, reject) {
443
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
444
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
445
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
446
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
447
+ });
448
+ }
449
+
450
+ function __generator(thisArg, body) {
451
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
452
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
453
+ function verb(n) { return function (v) { return step([n, v]); }; }
454
+ function step(op) {
455
+ if (f) throw new TypeError("Generator is already executing.");
456
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
457
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
458
+ if (y = 0, t) op = [op[0] & 2, t.value];
459
+ switch (op[0]) {
460
+ case 0: case 1: t = op; break;
461
+ case 4: _.label++; return { value: op[1], done: false };
462
+ case 5: _.label++; y = op[1]; op = [0]; continue;
463
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
464
+ default:
465
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
466
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
467
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
468
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
469
+ if (t[2]) _.ops.pop();
470
+ _.trys.pop(); continue;
471
+ }
472
+ op = body.call(thisArg, _);
473
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
474
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
475
+ }
476
+ }
477
+
478
+ function __values(o) {
479
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
480
+ if (m) return m.call(o);
481
+ if (o && typeof o.length === "number") return {
482
+ next: function () {
483
+ if (o && i >= o.length) o = void 0;
484
+ return { value: o && o[i++], done: !o };
485
+ }
486
+ };
487
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
488
+ }
489
+
490
+ function __read(o, n) {
491
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
492
+ if (!m) return o;
493
+ var i = m.call(o), r, ar = [], e;
494
+ try {
495
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
496
+ }
497
+ catch (error) { e = { error: error }; }
498
+ finally {
499
+ try {
500
+ if (r && !r.done && (m = i["return"])) m.call(i);
501
+ }
502
+ finally { if (e) throw e.error; }
503
+ }
504
+ return ar;
505
+ }
506
+
507
+ function __spreadArray(to, from, pack) {
508
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
509
+ if (ar || !(i in from)) {
510
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
511
+ ar[i] = from[i];
512
+ }
513
+ }
514
+ return to.concat(ar || Array.prototype.slice.call(from));
515
+ }
516
+
517
+ typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
518
+ var e = new Error(message);
519
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
520
+ };
521
+
540
522
  var CodeHighlight = function (_a) {
541
523
  var textContent = _a.textContent,
542
524
  _b = _a.language,
@@ -587,7 +569,7 @@ var CodeHighlight = function (_a) {
587
569
  if (language === "mermaid") {
588
570
  // 动态导入 MermaidRenderer 组件
589
571
  var MermaidRenderer = /*#__PURE__*/React.lazy(function () {
590
- return Promise.resolve().then(function () { return require('./MermaidRenderer-1f4c47aa.js'); }).catch(function () {
572
+ return Promise.resolve().then(function () { return require('./MermaidRenderer-e82f36e4.js'); }).catch(function () {
591
573
  return {
592
574
  default: function () {
593
575
  return /*#__PURE__*/runtime.jsx("div", {});
@@ -790,10 +772,35 @@ var AComponent = function (aProps) {
790
772
  var href = aProps.href || "";
791
773
  var isInternal = /^\/#/i.test(href);
792
774
  var target = isInternal ? "_self" : (_a = aProps.target) !== null && _a !== void 0 ? _a : "_blank";
775
+ // 增强链接样式,使其更加明显
776
+ var linkStyle = {
777
+ color: '#1a73e8',
778
+ fontWeight: '600',
779
+ borderBottom: '2px solid #1a73e8',
780
+ paddingBottom: '2px',
781
+ transition: 'all 0.2s ease'
782
+ };
783
+ // 鼠标悬停效果
784
+ var hoverStyle = {
785
+ color: '#0d47a1',
786
+ borderBottom: '2px solid #0d47a1',
787
+ backgroundColor: 'rgba(26, 115, 232, 0.1)'
788
+ };
789
+ // 合并原有属性和新样式
793
790
  return /*#__PURE__*/runtime.jsx("a", {
794
- color: "red",
795
791
  ...aProps,
796
- target: target
792
+ target: target,
793
+ style: __assign(__assign({}, linkStyle), aProps.style),
794
+ onMouseEnter: function (e) {
795
+ var target = e.target;
796
+ Object.assign(target.style, hoverStyle);
797
+ aProps.onMouseEnter && aProps.onMouseEnter(e);
798
+ },
799
+ onMouseLeave: function (e) {
800
+ var target = e.target;
801
+ Object.assign(target.style, linkStyle);
802
+ aProps.onMouseLeave && aProps.onMouseLeave(e);
803
+ }
797
804
  });
798
805
  };
799
806
  // Pre 组件
@@ -917,11 +924,12 @@ function formatProps(props) {
917
924
  }
918
925
  function renderMdx(mdxContent, scope, registeredComponents) {
919
926
  return __awaiter(this, void 0, void 0, function () {
920
- var componentTagRegex, usedComponents, match, vf, XComponent, e_1;
921
- return __generator(this, function (_a) {
922
- switch (_a.label) {
927
+ var componentTagRegex, usedComponents, match, _registeredComponents, usedComponents_1, usedComponents_1_1, component, vf, XComponent;
928
+ var e_2, _a;
929
+ return __generator(this, function (_b) {
930
+ switch (_b.label) {
923
931
  case 0:
924
- _a.trys.push([0, 3,, 4]);
932
+ _b.trys.push([0, 3,, 4]);
925
933
  renderTimer && clearTimeout(renderTimer);
926
934
  componentTagRegex = /<([A-Z][a-zA-Z]*)\b/g;
927
935
  usedComponents = new Set();
@@ -929,6 +937,25 @@ function renderMdx(mdxContent, scope, registeredComponents) {
929
937
  while ((match = componentTagRegex.exec(mdxContent)) !== null) {
930
938
  usedComponents.add(match[1]);
931
939
  }
940
+ _registeredComponents = new Set(Object.keys(registeredComponents));
941
+ try {
942
+ for (usedComponents_1 = __values(usedComponents), usedComponents_1_1 = usedComponents_1.next(); !usedComponents_1_1.done; usedComponents_1_1 = usedComponents_1.next()) {
943
+ component = usedComponents_1_1.value;
944
+ if (!_registeredComponents.has(component)) {
945
+ throw new Error("Component ".concat(component, " is used but not registered in the components object."));
946
+ }
947
+ }
948
+ } catch (e_2_1) {
949
+ e_2 = {
950
+ error: e_2_1
951
+ };
952
+ } finally {
953
+ try {
954
+ if (usedComponents_1_1 && !usedComponents_1_1.done && (_a = usedComponents_1.return)) _a.call(usedComponents_1);
955
+ } finally {
956
+ if (e_2) throw e_2.error;
957
+ }
958
+ }
932
959
  return [4 /*yield*/, mdx.compile(mdxContent, {
933
960
  outputFormat: "function-body",
934
961
  remarkPlugins: [[RemarkMath, {
@@ -941,25 +968,22 @@ function renderMdx(mdxContent, scope, registeredComponents) {
941
968
  }]]
942
969
  })];
943
970
  case 1:
944
- vf = _a.sent();
971
+ vf = _b.sent();
945
972
  return [4 /*yield*/, mdx.run(vf, __assign(__assign(__assign({}, runtime__namespace), scope), {
946
973
  Fragment: MdxLayout
947
974
  }))];
948
975
  case 2:
949
- XComponent = _a.sent().default;
976
+ XComponent = _b.sent().default;
950
977
  return [2 /*return*/, /*#__PURE__*/React__namespace.createElement(XComponent, {
951
978
  components: registeredComponents,
952
979
  scope: scope
953
980
  })];
954
981
  case 3:
955
- e_1 = _a.sent();
982
+ _b.sent();
956
983
  return [2 /*return*/, new Promise(function (resolve) {
957
984
  renderTimer = setTimeout(function () {
958
- console.log(mdxContent, 'mdxContent');
959
- console.log(e_1, 'error');
960
985
  resolve(/*#__PURE__*/React__namespace.createElement('div', {
961
986
  style: {
962
- fontSize: '14px',
963
987
  backgroundColor: 'transparent'
964
988
  }
965
989
  }, mdxContent));
@@ -975,31 +999,64 @@ function renderMdx(mdxContent, scope, registeredComponents) {
975
999
  // 递归解析组件的函数
976
1000
  function parseComponentRecursively(allComponentHandlers, item, scope) {
977
1001
  return __awaiter(this, void 0, void 0, function () {
978
- var componentHandler, props, propsString, childrenContent_1, parsedChildren_1, componentString;
1002
+ var componentHandler, componentString_1, parsedChildren, props, propsString, childrenContent_1, parsedChildren_1, componentString;
979
1003
  return __generator(this, function (_a) {
980
1004
  switch (_a.label) {
981
1005
  case 0:
982
1006
  if (item.type === 'text') {
983
1007
  return [2 /*return*/, item.value];
984
1008
  }
985
- if (!(item.type === 'component')) return [3 /*break*/, 3];
1009
+ if (!(item.type === 'component')) return [3 /*break*/, 8];
986
1010
  componentHandler = allComponentHandlers.find(function (c) {
987
1011
  return c.name === item.value;
988
1012
  });
989
- if (!componentHandler) {
990
- return [2 /*return*/, null];
1013
+ if (!!componentHandler) return [3 /*break*/, 5];
1014
+ componentString_1 = "<".concat(item.value);
1015
+ if (item.props) {
1016
+ componentString_1 += ' ' + Object.entries(item.props).map(function (_a) {
1017
+ var _b = __read(_a, 2),
1018
+ key = _b[0],
1019
+ value = _b[1];
1020
+ if (typeof value === 'string') {
1021
+ return "".concat(key, "=\"").concat(value, "\"");
1022
+ }
1023
+ try {
1024
+ return "".concat(key, "={").concat(JSON.stringify(value), "}");
1025
+ } catch (e) {
1026
+ return "".concat(key, "=\"[object Object]\"");
1027
+ }
1028
+ }).join(' ');
991
1029
  }
1030
+ if (!item.selfClosing) return [3 /*break*/, 1];
1031
+ componentString_1 += ' />';
1032
+ return [3 /*break*/, 4];
1033
+ case 1:
1034
+ componentString_1 += '>';
1035
+ if (!(item.children && Array.isArray(item.children))) return [3 /*break*/, 3];
1036
+ return [4 /*yield*/, Promise.all(item.children.map(function (child) {
1037
+ return parseComponentRecursively(allComponentHandlers, child, scope);
1038
+ }))];
1039
+ case 2:
1040
+ parsedChildren = _a.sent();
1041
+ componentString_1 += parsedChildren.join('');
1042
+ _a.label = 3;
1043
+ case 3:
1044
+ componentString_1 += "</".concat(item.value, ">");
1045
+ _a.label = 4;
1046
+ case 4:
1047
+ return [2 /*return*/, componentString_1];
1048
+ case 5:
992
1049
  props = __assign(__assign({}, item.props), {
993
1050
  key: generateRandomName()
994
1051
  });
995
1052
  propsString = formatProps(props);
996
1053
  propsString += " scope={props.scope}";
997
1054
  childrenContent_1 = '';
998
- if (!(item.children && Array.isArray(item.children))) return [3 /*break*/, 2];
1055
+ if (!(item.children && Array.isArray(item.children))) return [3 /*break*/, 7];
999
1056
  return [4 /*yield*/, Promise.all(item.children.map(function (child) {
1000
1057
  return parseComponentRecursively(allComponentHandlers, child, scope);
1001
1058
  }))];
1002
- case 1:
1059
+ case 6:
1003
1060
  parsedChildren_1 = _a.sent();
1004
1061
  item.children.map(function (item, index) {
1005
1062
  if (item.type === 'text') {
@@ -1008,15 +1065,15 @@ function parseComponentRecursively(allComponentHandlers, item, scope) {
1008
1065
  childrenContent_1 += parsedChildren_1[index];
1009
1066
  }
1010
1067
  });
1011
- _a.label = 2;
1012
- case 2:
1068
+ _a.label = 7;
1069
+ case 7:
1013
1070
  // 调用组件的渲染钩子
1014
1071
  if (componentHandler.onRender) {
1015
1072
  componentHandler.onRender(item, scope);
1016
1073
  }
1017
1074
  componentString = componentHandler.selfClosing ? "<".concat(item.value, " ").concat(propsString, " />") : "\t\n<".concat(item.value, " ").concat(propsString, ">\n").concat(childrenContent_1, "\n</").concat(item.value, ">\t\n");
1018
1075
  return [2 /*return*/, componentString];
1019
- case 3:
1076
+ case 8:
1020
1077
  return [2 /*return*/, null];
1021
1078
  }
1022
1079
  });
@@ -1105,7 +1162,6 @@ function ReactAIRenderer(_a) {
1105
1162
  var _b = __read(_a, 2),
1106
1163
  name = _b[0],
1107
1164
  component = _b[1];
1108
- console.log(name, 'name');
1109
1165
  var selfClosing = isSelfClosingComponent(component);
1110
1166
  return {
1111
1167
  component: component,
@@ -1121,7 +1177,7 @@ function ReactAIRenderer(_a) {
1121
1177
  React.useEffect(function () {
1122
1178
  var parseMDX = function () {
1123
1179
  return __awaiter(_this, void 0, void 0, function () {
1124
- var ThinkComponent, ResultComponent, _a, thinkContent, resultContent, parsedData, parsedComponents, finalComponent, MDXComponent;
1180
+ var ThinkComponent, ResultComponent, _a, thinkContent, resultContent, parsedData, parsedComponents, finalComponent, i, _result, MDXComponent;
1125
1181
  return __generator(this, function (_b) {
1126
1182
  switch (_b.label) {
1127
1183
  case 0:
@@ -1134,7 +1190,7 @@ function ReactAIRenderer(_a) {
1134
1190
  ThinkComponent = _b.sent();
1135
1191
  _b.label = 2;
1136
1192
  case 2:
1137
- if (!resultContent) return [3 /*break*/, 5];
1193
+ if (!resultContent) return [3 /*break*/, 8];
1138
1194
  resultContent = fixMDXContent(resultContent);
1139
1195
  parsedData = parser.parse('magic', resultContent);
1140
1196
  return [4 /*yield*/, Promise.all(parsedData.map(function (item) {
@@ -1142,14 +1198,25 @@ function ReactAIRenderer(_a) {
1142
1198
  }))];
1143
1199
  case 3:
1144
1200
  parsedComponents = _b.sent();
1145
- return [4 /*yield*/, renderMdx(parsedComponents.join('\n'), scope, allComponents)];
1201
+ finalComponent = [];
1202
+ i = 0;
1203
+ _b.label = 4;
1146
1204
  case 4:
1147
- finalComponent = _b.sent();
1205
+ if (!(i < parsedComponents.length)) return [3 /*break*/, 7];
1206
+ return [4 /*yield*/, renderMdx(parsedComponents[i], scope, allComponents)];
1207
+ case 5:
1208
+ _result = _b.sent();
1209
+ finalComponent.push(_result);
1210
+ _b.label = 6;
1211
+ case 6:
1212
+ i++;
1213
+ return [3 /*break*/, 4];
1214
+ case 7:
1148
1215
  ResultComponent = /*#__PURE__*/runtime.jsx("div", {
1149
1216
  children: finalComponent
1150
1217
  });
1151
- _b.label = 5;
1152
- case 5:
1218
+ _b.label = 8;
1219
+ case 8:
1153
1220
  MDXComponent = /*#__PURE__*/runtime.jsxs(React.Fragment, {
1154
1221
  children: [ThinkComponent, ResultComponent]
1155
1222
  });
@@ -1232,11 +1299,13 @@ var ToolCall = function (_a) {
1232
1299
  });
1233
1300
  };
1234
1301
 
1235
- // 默认导出
1302
+ // 导出 MDXStreamingParser 类
1236
1303
 
1304
+ exports.MDXStreamingParser = MDXStreamingParser;
1237
1305
  exports.ReactAIRenderer = ReactAIRenderer;
1238
1306
  exports.Think = Think;
1239
1307
  exports.ToolCall = ToolCall;
1240
1308
  exports.__awaiter = __awaiter;
1241
1309
  exports.__generator = __generator;
1242
1310
  exports.__read = __read;
1311
+ //# sourceMappingURL=index-4592abf8.js.map