@baishuyun/ai-feat-utils 1.0.1 → 1.0.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.
@@ -1,72 +1,72 @@
1
- const n = (r) => {
2
- if ((r == null ? void 0 : r.type) !== "text" || !r.providerMetadata || !r.providerMetadata.raw || !r.providerMetadata.raw.data)
1
+ const o = (e) => {
2
+ if ((e == null ? void 0 : e.type) !== "text" || !e.providerMetadata || !e.providerMetadata.raw || !e.providerMetadata.raw.data)
3
3
  return null;
4
- if (typeof r.providerMetadata.raw.data != "string")
5
- return r.providerMetadata.raw.data;
6
- let e;
4
+ if (typeof e.providerMetadata.raw.data != "string")
5
+ return e.providerMetadata.raw.data;
6
+ let t;
7
7
  try {
8
- e = JSON.parse(r.providerMetadata.raw.data);
9
- } catch (t) {
8
+ t = JSON.parse(e.providerMetadata.raw.data);
9
+ } catch (n) {
10
10
  console.error("invalid raw data");
11
11
  }
12
- return e || r.providerMetadata.raw.data;
13
- }, i = (r) => {
14
- if ((r == null ? void 0 : r.type) === "error")
12
+ return t || e.providerMetadata.raw.data;
13
+ }, f = (e) => {
14
+ if ((e == null ? void 0 : e.type) === "error")
15
15
  return !0;
16
- const e = n(r);
17
- return (e == null ? void 0 : e.type) === "agent-error";
18
- }, f = (r) => {
19
- const e = n(r);
20
- return (e == null ? void 0 : e.type) === "agent-fake-msg";
21
- }, l = (r) => (r == null ? void 0 : r.type) === "file", g = (r) => {
22
- const e = n(r);
23
- return (e == null ? void 0 : e.type) === "query-stream-parsed-info";
24
- }, d = (r) => {
25
- const e = n(r);
26
- if ((e == null ? void 0 : e.type) !== "query-stream-parsed-info")
16
+ const t = o(e);
17
+ return (t == null ? void 0 : t.type) === "agent-error";
18
+ }, w = (e) => {
19
+ const t = o(e);
20
+ return (t == null ? void 0 : t.type) === "agent-fake-msg";
21
+ }, v = (e) => (e == null ? void 0 : e.type) === "file", x = (e) => {
22
+ const t = o(e);
23
+ return (t == null ? void 0 : t.type) === "query-stream-parsed-info";
24
+ }, _ = (e) => {
25
+ const t = o(e);
26
+ if ((t == null ? void 0 : t.type) !== "query-stream-parsed-info")
27
27
  return null;
28
- const t = e.result;
29
- console.log("query result raw data:", t);
28
+ const n = t.result;
29
+ console.log("query result raw data:", n);
30
30
  try {
31
- return JSON.parse(t);
32
- } catch (o) {
31
+ return JSON.parse(n);
32
+ } catch (r) {
33
33
  return console.error("invalid query result data"), null;
34
34
  }
35
- }, y = (r) => {
36
- if (!Array.isArray(r))
35
+ }, k = (e) => {
36
+ if (!Array.isArray(e))
37
37
  return !1;
38
- for (const e of r)
39
- if ((e == null ? void 0 : e.type) === "file")
38
+ for (const t of e)
39
+ if ((t == null ? void 0 : t.type) === "file")
40
40
  return !0;
41
41
  return !1;
42
- }, w = (r) => {
43
- const e = n(r);
44
- return (e == null ? void 0 : e.type) === "agent-loading";
45
- }, A = (r) => {
46
- const e = n(r);
47
- return (e == null ? void 0 : e.type) !== "agent-loading" ? "" : (e == null ? void 0 : e.label) || "加载中";
48
- }, m = (r) => {
49
- if (!i(r))
42
+ }, P = (e) => {
43
+ const t = o(e);
44
+ return (t == null ? void 0 : t.type) === "agent-loading";
45
+ }, M = (e) => {
46
+ const t = o(e);
47
+ return (t == null ? void 0 : t.type) !== "agent-loading" ? "" : (t == null ? void 0 : t.label) || "加载中";
48
+ }, R = (e) => {
49
+ if (!f(e))
50
50
  return "";
51
- if (r != null && r.errorText)
52
- return r.errorText;
53
- const e = n(r);
54
- return (e == null ? void 0 : e.error) || "未知错误";
55
- }, x = (r) => {
56
- if (r != null && r.errorText)
57
- return r.errorText;
58
- const e = n(r);
59
- return (e == null ? void 0 : e.error) || "未知错误";
51
+ if (e != null && e.errorText)
52
+ return e.errorText;
53
+ const t = o(e);
54
+ return (t == null ? void 0 : t.error) || "未知错误";
55
+ }, E = (e) => {
56
+ if (e != null && e.errorText)
57
+ return e.errorText;
58
+ const t = o(e);
59
+ return (t == null ? void 0 : t.error) || "未知错误";
60
60
  };
61
- function u(r) {
62
- return Array.isArray(r) ? r.every((e) => typeof e == "string") : !1;
61
+ function m(e) {
62
+ return Array.isArray(e) ? e.every((t) => typeof t == "string") : !1;
63
63
  }
64
- function a(r) {
65
- return Array.isArray(r) ? r.every(
66
- (e) => typeof e == "object" && e !== null && "label" in e && "value" in e && typeof e.label == "string" && typeof e.value == "string"
64
+ function g(e) {
65
+ return Array.isArray(e) ? e.every(
66
+ (t) => typeof t == "object" && t !== null && "label" in t && "value" in t && typeof t.label == "string" && typeof t.value == "string"
67
67
  ) : !1;
68
68
  }
69
- const M = (r) => u(r) ? r.join(", ") : a(r) ? r.map((t) => t.value).join(", ") : r, c = /* @__PURE__ */ new Set([
69
+ const D = (e) => m(e) ? e.join(", ") : g(e) ? e.map((n) => n.value).join(", ") : e, y = /* @__PURE__ */ new Set([
70
70
  "password",
71
71
  "textarea",
72
72
  "datetime",
@@ -77,38 +77,630 @@ const M = (r) => u(r) ? r.join(", ") : a(r) ? r.map((t) => t.value).join(", ") :
77
77
  "combocheck",
78
78
  "checkboxgroup",
79
79
  "number"
80
- ]), h = (r) => Array.isArray(r) ? r.filter((e) => e.widget ? c.has(e.widget.type) : !1) : [], v = (r) => (e) => {
81
- const t = n(e);
82
- return (t == null ? void 0 : t.type) === r;
83
- }, I = (r) => (e) => {
84
- const t = n(e);
85
- return (t == null ? void 0 : t.type) !== r ? null : (t == null ? void 0 : t.field) || null;
86
- }, P = (r) => (e) => Array.isArray(e) && e.length > 0 ? e.filter(r) : r(e) ? [e] : [], T = 10, E = (r, e = "image/png") => new Promise((t) => {
87
- const o = new Image();
88
- o.crossOrigin = "anonymous", o.onload = () => {
89
- const s = document.createElement("canvas");
90
- s.width = o.naturalWidth, s.height = o.naturalHeight, s.getContext("2d").drawImage(o, 0, 0), t(s.toDataURL(e));
91
- }, o.onerror = () => t(r), o.src = r;
92
- });
80
+ ]), I = (e) => Array.isArray(e) ? e.filter((t) => t.widget ? y.has(t.widget.type) : !1) : [], F = (e) => (t) => {
81
+ const n = o(t);
82
+ return (n == null ? void 0 : n.type) === e;
83
+ }, T = (e) => (t) => {
84
+ const n = o(t);
85
+ return (n == null ? void 0 : n.type) !== e ? null : (n == null ? void 0 : n.field) || null;
86
+ }, N = (e) => (t) => Array.isArray(t) && t.length > 0 ? t.filter(e) : e(t) ? [t] : [], O = 10, B = (e, t = "image/png") => new Promise((n) => {
87
+ const r = new Image();
88
+ r.crossOrigin = "anonymous", r.onload = () => {
89
+ const a = document.createElement("canvas");
90
+ a.width = r.naturalWidth, a.height = r.naturalHeight, a.getContext("2d").drawImage(r, 0, 0), n(a.toDataURL(t));
91
+ }, r.onerror = () => n(e), r.src = e;
92
+ }), L = {
93
+ eq: "等于",
94
+ neq: "不等于",
95
+ gt: "大于",
96
+ lt: "小于",
97
+ gte: "大于等于",
98
+ lte: "小于等于",
99
+ contains: "包含",
100
+ not_contains: "不包含",
101
+ in: "等于任意",
102
+ nin: "不等于任意",
103
+ all: "包含所有",
104
+ empty: "为空",
105
+ not_empty: "不为空",
106
+ range: "范围"
107
+ }, b = {
108
+ // Text-like: equality, fuzzy, empty checks
109
+ text: ["eq", "neq", "in", "nin", "contains", "not_contains", "empty", "not_empty"],
110
+ password: ["eq", "neq", "contains", "not_contains", "empty", "not_empty"],
111
+ radiogroup: ["eq", "neq", "in", "nin", "empty", "not_empty"],
112
+ radio: ["eq", "neq", "empty", "not_empty"],
113
+ combo: ["eq", "neq", "in", "nin", "empty", "not_empty"],
114
+ sn: ["eq", "neq", "in", "nin", "contains", "not_contains", "empty", "not_empty"],
115
+ // Textarea: fuzzy matching
116
+ textarea: ["contains", "not_contains", "empty", "not_empty"],
117
+ // Number: comparison operators
118
+ number: ["eq", "neq", "gt", "gte", "lt", "lte", "range", "empty", "not_empty"],
119
+ // DateTime: comparison operators
120
+ datetime: ["eq", "neq", "gte", "lte", "range", "empty", "not_empty"],
121
+ // Multi-select: membership, intersection
122
+ checkboxgroup: ["in", "all", "eq", "empty", "not_empty"],
123
+ combocheck: ["in", "all", "eq", "empty", "not_empty"],
124
+ // User/Dept: equality and membership
125
+ user: ["eq", "neq", "in", "nin", "empty", "not_empty"],
126
+ dept: ["eq", "neq", "in", "nin", "empty", "not_empty"],
127
+ // Groups: membership, intersection, empty
128
+ usergroup: ["in", "all", "eq", "empty", "not_empty"],
129
+ deptgroup: ["in", "all", "eq", "empty", "not_empty"],
130
+ // Address/Location: intersection
131
+ address: ["in", "nin", "empty", "not_empty"],
132
+ location: ["in", "nin", "empty", "not_empty"],
133
+ // Files: empty checks
134
+ upload: ["empty", "not_empty"],
135
+ image: ["empty", "not_empty"],
136
+ signature: ["empty", "not_empty"],
137
+ // Flow state
138
+ flowState: ["eq", "neq", "empty"],
139
+ flowstate: ["eq", "neq", "empty"],
140
+ // Link data: combo-like
141
+ linkdata: ["eq", "neq", "in", "nin", "empty", "not_empty"],
142
+ linkquery: ["eq", "neq", "in", "nin", "empty", "not_empty"],
143
+ dataload: ["eq", "neq", "in", "nin", "empty", "not_empty"],
144
+ // Formula
145
+ formula: ["eq", "neq", "empty", "not_empty"],
146
+ // Display-only: no meaningful operators
147
+ separator: [],
148
+ button: [],
149
+ subform: [],
150
+ unknown: []
151
+ }, h = {
152
+ text: "eq",
153
+ password: "eq",
154
+ radiogroup: "eq",
155
+ radio: "eq",
156
+ combo: "eq",
157
+ sn: "eq",
158
+ textarea: "contains",
159
+ number: "range",
160
+ datetime: "range",
161
+ checkboxgroup: "all",
162
+ combocheck: "all",
163
+ user: "eq",
164
+ dept: "eq",
165
+ usergroup: "all",
166
+ deptgroup: "all",
167
+ address: "all",
168
+ location: "all",
169
+ upload: "not_empty",
170
+ image: "not_empty",
171
+ signature: "not_empty",
172
+ flowState: "eq",
173
+ flowstate: "eq",
174
+ linkdata: "eq",
175
+ linkquery: "eq",
176
+ dataload: "eq",
177
+ formula: "eq"
178
+ };
179
+ function W(e) {
180
+ var t;
181
+ return e ? (t = b[e]) != null ? t : [] : [];
182
+ }
183
+ function G(e) {
184
+ var t;
185
+ return e && (t = h[e]) != null ? t : "eq";
186
+ }
187
+ function s(e) {
188
+ return typeof e == "object" && e !== null && !Array.isArray(e);
189
+ }
190
+ function p(e) {
191
+ return s(e) ? e : null;
192
+ }
193
+ function l(e) {
194
+ return !!(e == null || e === "" || Array.isArray(e) && e.length === 0);
195
+ }
196
+ function u(e, t) {
197
+ if (Array.isArray(e) && Array.isArray(t)) {
198
+ if (e.length !== t.length) return !1;
199
+ const n = e.map(String).sort(), r = t.map(String).sort();
200
+ return n.every((a, i) => a === r[i]);
201
+ }
202
+ if (s(e) && s(t)) {
203
+ const n = Object.keys(e), r = Object.keys(t);
204
+ return n.length !== r.length ? !1 : n.every((a) => String(e[a]) === String(t[a]));
205
+ }
206
+ return String(e) === String(t);
207
+ }
208
+ function d(e, t) {
209
+ if (s(t)) {
210
+ const r = p(e);
211
+ return !(!r || t.province !== void 0 && String(r.province) !== String(t.province) || t.city !== void 0 && String(r.city) !== String(t.city) || t.district !== void 0 && String(r.district) !== String(t.district));
212
+ }
213
+ const n = Array.isArray(t) ? t.map(String) : [];
214
+ return Array.isArray(e) ? e.some((r) => n.includes(String(r))) : n.includes(String(e));
215
+ }
216
+ function A(e, t) {
217
+ const n = Array.isArray(t) ? t.map(String) : [];
218
+ if (n.length === 0) return !1;
219
+ const r = Array.isArray(e) ? e.map(String) : [];
220
+ return n.every((a) => r.includes(a));
221
+ }
222
+ function S(e, t) {
223
+ const n = p(t);
224
+ if (!n) return !1;
225
+ const r = Number(e);
226
+ return !(isNaN(r) || n.min !== void 0 && n.min !== null && r < Number(n.min) || n.max !== void 0 && n.max !== null && r > Number(n.max));
227
+ }
228
+ function C(e, t) {
229
+ var c;
230
+ const n = (c = e.field.widget) == null ? void 0 : c.widgetName;
231
+ if (!n) return !1;
232
+ const r = t[n], { operator: a, value: i } = e;
233
+ switch (a) {
234
+ case "empty":
235
+ return l(r);
236
+ case "not_empty":
237
+ return !l(r);
238
+ case "eq":
239
+ return u(r, i);
240
+ case "neq":
241
+ return !u(r, i);
242
+ case "contains":
243
+ return String(r).includes(String(i));
244
+ case "not_contains":
245
+ return !String(r).includes(String(i));
246
+ case "gt":
247
+ return Number(r) > Number(i);
248
+ case "gte":
249
+ return Number(r) >= Number(i);
250
+ case "lt":
251
+ return Number(r) < Number(i);
252
+ case "lte":
253
+ return Number(r) <= Number(i);
254
+ case "in":
255
+ return d(r, i);
256
+ case "nin":
257
+ return !d(r, i);
258
+ case "all":
259
+ return A(r, i);
260
+ case "range":
261
+ return S(r, i);
262
+ default:
263
+ return !1;
264
+ }
265
+ }
266
+ function U(e, t) {
267
+ const n = e.triggerCondition;
268
+ if (!n) return !0;
269
+ const { items: r, quantifier: a } = n;
270
+ if (!r || r.length === 0) return !0;
271
+ const i = r.map((c) => C(c, t));
272
+ return a === "any" ? i.some((c) => c) : i.every((c) => c);
273
+ }
274
+ function j(e, t, n = 1) {
275
+ const r = [], a = [];
276
+ for (const i of e)
277
+ t(i) ? a.push(i) : (a.length > 0 && (r.push(a.length >= n ? [...a] : a[0]), a.length = 0), r.push(i));
278
+ return a.length > 0 && r.push(a.length >= 2 ? [...a] : a[0]), r;
279
+ }
280
+ const q = {
281
+ projectdevelopment: "e914",
282
+ resourcelibrary: "e915",
283
+ Plugin2: "e90e",
284
+ Plugin: "e90f",
285
+ JSON: "e910",
286
+ Dropdown: "e911",
287
+ Batchprocessing: "e912",
288
+ "Image-text": "e916",
289
+ Newaddition: "e917",
290
+ reportforms: "e918",
291
+ AddFola: "e919",
292
+ delete: "e91a",
293
+ AddImage: "e91b",
294
+ Send: "e91c",
295
+ text: "e91d",
296
+ image: "e91e",
297
+ Star1: "e91f",
298
+ Ellipse: "e920",
299
+ "Ellipse-Copy": "e921",
300
+ Shape: "e922",
301
+ "Shape-Copy": "e923",
302
+ "right-line": "e924",
303
+ "right-arrow": "e925",
304
+ "double-right-arrow": "e926",
305
+ ellipse: "e927",
306
+ Rectangle: "e928",
307
+ "Rectangle-Copy": "e929",
308
+ "Rectangle-Copy-2": "e92a",
309
+ CombinedShape: "e92b",
310
+ Line: "e92c",
311
+ time: "e92d",
312
+ calendar: "e92e",
313
+ richsinglelinetext: "e92f",
314
+ singlelinetext: "e930",
315
+ multilinetext: "e931",
316
+ number: "e932",
317
+ RichText: "e933",
318
+ image1: "e934",
319
+ Attachment: "e935",
320
+ Phone: "e936",
321
+ Email: "e937",
322
+ date: "e938",
323
+ "Multiple-choice": "e939",
324
+ Checkbox: "e93a",
325
+ "Drop-down": "e93b",
326
+ positioning: "e93c",
327
+ Description: "e93d",
328
+ AutoNumber: "e93e",
329
+ Address: "e93f",
330
+ Staff: "e940",
331
+ Department: "e941",
332
+ Switch: "e942",
333
+ Slider: "e943",
334
+ Currentdate: "e944",
335
+ Grade: "e945",
336
+ Barcode: "e946",
337
+ Subtable: "e947",
338
+ associatedtable: "e948",
339
+ Associatedapplication: "e949",
340
+ Referencefield: "e94a",
341
+ Uppercasing: "e94b",
342
+ nodata: "e94c",
343
+ "X-mark": "e94d",
344
+ Copy: "e94e",
345
+ Correct: "e94f",
346
+ Save: "e950",
347
+ Printer: "e951",
348
+ search: "e952",
349
+ filter: "e953",
350
+ Export: "e954",
351
+ Import: "e955",
352
+ Customprint: "e956",
353
+ refresh: "e957",
354
+ Helpcenter: "e958",
355
+ Tutorial: "e959",
356
+ Release: "e95a",
357
+ more: "e95b",
358
+ Setup: "e95c",
359
+ sort: "e95d",
360
+ Back: "e95e",
361
+ show: "e95f",
362
+ hide: "e960",
363
+ Preview: "e961",
364
+ Click: "e962",
365
+ Allcheck: "e963",
366
+ Cancelcheck: "e964",
367
+ Likespot: "e965",
368
+ Favoritespot: "e966",
369
+ Followspot: "e967",
370
+ Commentspot: "e968",
371
+ At: "e969",
372
+ Pin: "e96a",
373
+ edit: "e96b",
374
+ Top: "e96c",
375
+ Movein: "e96d",
376
+ Moveout: "e96e",
377
+ Forward: "e96f",
378
+ Revoke: "e970",
379
+ Return: "e971",
380
+ Link: "e972",
381
+ Unlink: "e973",
382
+ Download: "e974",
383
+ Upload: "e975",
384
+ Download2: "e976",
385
+ Upload2: "e977",
386
+ Comment: "e978",
387
+ Remind: "e979",
388
+ Notice: "e97a",
389
+ Permission: "e97b",
390
+ SMS: "e97c",
391
+ QRcode: "e97d",
392
+ Website: "e97e",
393
+ Monitoring: "e97f",
394
+ Api: "e980",
395
+ Webhook: "e981",
396
+ Synchronous: "e982",
397
+ Automation: "e983",
398
+ Trigger: "e984",
399
+ Condition: "e985",
400
+ Success: "e986",
401
+ Failure: "e987",
402
+ countdown: "e988",
403
+ Waiting: "e989",
404
+ Flow: "e98a",
405
+ Connection: "e98b",
406
+ Dashboard: "e98c",
407
+ chart: "e98d",
408
+ Piechart: "e98e",
409
+ BarChart: "e98f",
410
+ DoubleBarChart: "e991",
411
+ StackedBarChart: "e992",
412
+ PercentageStackedBarChart: "e993",
413
+ LineChart: "e994",
414
+ areachart: "e990",
415
+ combinationchart: "e995",
416
+ Scatterplot: "e996",
417
+ FunnelChart: "e997",
418
+ wordcloud: "e998",
419
+ RadarChart: "e999",
420
+ PivotTable: "e99a",
421
+ NumberChart: "e99b",
422
+ map: "e99c",
423
+ Timeline: "e99d",
424
+ Album: "e99e",
425
+ Kanban: "e99f",
426
+ Ganttchart: "e9a0",
427
+ Circle: "e9a8",
428
+ linesurface: "e9a1",
429
+ IconStyle: "e9a2",
430
+ Backgroundcolor: "e9a3",
431
+ DeleteDe: "e9a4",
432
+ AlignLeft: "e9a5",
433
+ AlignCenter: "e9a6",
434
+ AlignRight: "e9a7",
435
+ Column: "e9a9",
436
+ Component: "e9aa",
437
+ Customcomponent: "e9ab",
438
+ Title: "e9ac",
439
+ RichText1: "e9ad",
440
+ Carousel: "e9ae",
441
+ PageTab: "e9af",
442
+ Buriedpoint: "e9b0",
443
+ Container: "e9b1",
444
+ QuickStart: "e9b2",
445
+ Group: "e9b3",
446
+ Ungroup: "e9b4",
447
+ Front: "e9b5",
448
+ Back1: "e9b6",
449
+ Lock: "e9b7",
450
+ Unlock: "e9b8",
451
+ Association: "e9b9",
452
+ CancelAssociation: "e9ba",
453
+ Quotation: "e9bb",
454
+ ViewSet: "e9bc",
455
+ AutoScale: "e9bd",
456
+ waterfall: "e9be",
457
+ watermark: "e9bf",
458
+ history: "e9c0",
459
+ Setting: "e9c1",
460
+ Draftbox: "e9c2",
461
+ SQL: "e9c3",
462
+ Workflow: "e9c4",
463
+ Workflow2: "e9c5",
464
+ Addone: "e9c6",
465
+ Formula: "e9c7",
466
+ Dictionary: "e9c8",
467
+ statistical: "e9c9",
468
+ Recycle: "e9ca",
469
+ Mistake: "e9cb",
470
+ Tag: "e9cc",
471
+ Pendingapproval: "e9cd",
472
+ MyApplication: "e9ce",
473
+ ApplicationApproval: "e9cf",
474
+ Initiatedbyme: "e9d0",
475
+ Copiedtome: "e9d1",
476
+ Approvalnode: "e9d2",
477
+ Fillnode: "e9d3",
478
+ cc: "e9d4",
479
+ Image1: "e9d5",
480
+ Open: "e9d6",
481
+ Color: "e9d7",
482
+ Right: "e9d8",
483
+ Backward: "e9d9",
484
+ dataanalysis: "e9da",
485
+ Filter2: "e9db",
486
+ Freefilter: "e9dc",
487
+ Conditionfilter: "e9dd",
488
+ Quickfilter: "e9de",
489
+ Export1: "e9df",
490
+ Attachmentpreview: "e9e0",
491
+ BulkEdit: "e9e1",
492
+ Calculationrows: "e9e2",
493
+ SingleSelect: "e9e3",
494
+ dataview: "e9e4",
495
+ Dataid: "e9e5",
496
+ Divide: "e9e6",
497
+ Progress: "e9e7",
498
+ Star: "e9e8",
499
+ Contacts: "e9e9",
500
+ Activity: "e9ea",
501
+ Minus: "e9eb",
502
+ Plussign: "e9ec",
503
+ "Plussign-Copy": "e9ed",
504
+ Increased: "e9ee",
505
+ Decline: "e9ef",
506
+ indeterminate: "e9f0",
507
+ Decline1: "e9f1",
508
+ personal: "e9f2",
509
+ Warning: "e9f3",
510
+ Warning2: "e9f4",
511
+ Prompt: "e9f5",
512
+ info: "e9f6",
513
+ Cancel: "e9f7",
514
+ question1: "e9f8",
515
+ Question: "e9f9",
516
+ exclamation: "e9fa",
517
+ Warning1: "e9fb",
518
+ True: "e9fc",
519
+ Suspended: "e9fd",
520
+ Suspended1: "e9fe",
521
+ Suspended2: "e9ff",
522
+ Error: "ea00",
523
+ CombinedShape2: "ea01",
524
+ Delete1: "ea02",
525
+ Circle1: "ea03",
526
+ Decline2: "ea04",
527
+ Decline3: "ea05",
528
+ add: "ea06",
529
+ Addto: "ea07",
530
+ Reduce: "ea08",
531
+ Subtract: "ea09",
532
+ Addition: "ea0a",
533
+ Multiplication: "ea0b",
534
+ Division: "ea0c",
535
+ Bracket: "ea0d",
536
+ Reduce1: "ea0e",
537
+ Search: "ea0f",
538
+ Favorites: "ea10",
539
+ Annotation: "ea11",
540
+ Application: "ea12",
541
+ Application2: "ea13",
542
+ Applicationsview: "ea14",
543
+ Publish: "ea15",
544
+ Deploy: "ea16",
545
+ Sidetoplowerside: "ea17",
546
+ Narrow: "ea18",
547
+ Backtothenavigation: "ea19",
548
+ Forwardtothenavigation: "ea1a",
549
+ Return1: "ea1b",
550
+ Transfer: "ea1c",
551
+ Log: "ea1d",
552
+ table: "ea1e",
553
+ Form: "ea1f",
554
+ Openfield: "ea20",
555
+ Closefield: "ea21",
556
+ Receive: "ea22",
557
+ Fill: "ea23",
558
+ Fill1: "ea24",
559
+ fillet: "ea25",
560
+ rightangle: "ea26",
561
+ round: "ea27",
562
+ Send1: "ea28",
563
+ Map: "ea29",
564
+ Upward: "ea2a",
565
+ Move: "ea2b",
566
+ Downward: "ea2c",
567
+ drag: "ea2d",
568
+ TextIcon: "ea2e",
569
+ Narrow1: "ea2f",
570
+ Enlarge: "ea30",
571
+ Enlarge2: "ea31",
572
+ Cancel1: "ea32",
573
+ Retract: "ea33",
574
+ Expand: "ea34",
575
+ Retract1: "ea35",
576
+ Expand1: "ea36",
577
+ Retract2: "ea37",
578
+ Expand2: "ea38",
579
+ Switch1: "ea39",
580
+ Fullscreen: "ea3a",
581
+ Offscreen: "ea3b",
582
+ Notvisible: "ea3c",
583
+ Visible: "ea3d",
584
+ Adjust: "ea3e",
585
+ PC: "ea3f",
586
+ Mobile: "ea40",
587
+ Pad: "ea41",
588
+ Scanthecode: "ea42",
589
+ Scan: "ea43",
590
+ Screenshot: "ea44",
591
+ Rotation: "ea45",
592
+ voice: "ea46",
593
+ Video: "ea47",
594
+ Location: "ea48",
595
+ Clock: "ea49",
596
+ Print: "ea4a",
597
+ Member: "ea4b",
598
+ WorkWeChat: "ea4c",
599
+ DingTalk: "ea4d",
600
+ EnterpriseWeChat2: "ea4e",
601
+ Groupmanagement: "ea4f",
602
+ Feishu: "ea50",
603
+ Stationletter: "ea51",
604
+ Email1: "ea52",
605
+ WeChat: "ea53",
606
+ ServiceAccount: "ea54",
607
+ Subscribed: "ea55",
608
+ Dingtalk: "ea56",
609
+ Information: "ea57",
610
+ Assistant: "ea58",
611
+ ai: "ea59",
612
+ Inquireabout: "ea5a",
613
+ IFrame: "ea5b",
614
+ Integratio: "ea5c",
615
+ close: "ea5d",
616
+ Close: "ea5e",
617
+ Addgroup: "ea5f",
618
+ deletegroup: "ea60",
619
+ Relateddata: "ea61",
620
+ Enlarge1: "ea62",
621
+ Narrow2: "ea63",
622
+ "map-search": "ea64",
623
+ Corner: "ea65",
624
+ text1: "ea66",
625
+ Onlinemap: "ea67",
626
+ Maptile: "ea68",
627
+ Dataexport: "ea69",
628
+ Word: "ea6a",
629
+ Excel: "ea6b",
630
+ PPT: "ea6c",
631
+ PDF: "ea6d",
632
+ Video1: "ea6e",
633
+ Audio: "ea6f",
634
+ Txt: "ea70",
635
+ Zip: "ea71",
636
+ file: "ea72",
637
+ richtext: "ea73",
638
+ Onlinemap1: "ea74",
639
+ Maptile1: "ea75",
640
+ Ai2: "ea76",
641
+ Guide: "ea77",
642
+ Button: "ea78",
643
+ Menus: "ea79",
644
+ "richtext-Copy": "ea7a",
645
+ "richtext-Copy-2": "ea7b",
646
+ "richtext-Copy-3": "ea7c",
647
+ "richtext-Copy-4": "ea7d",
648
+ Split: "ea7e",
649
+ AI: "ea7f",
650
+ Form1: "ea80",
651
+ Fields: "ea81",
652
+ Project: "ea82",
653
+ More1: "ea83",
654
+ Notstarted: "ea84",
655
+ Inprocess: "ea85",
656
+ Completed: "ea86",
657
+ Completed1: "ea87",
658
+ More2: "ea88",
659
+ AIoffice: "ea89",
660
+ statistics: "ea8a",
661
+ Expand3: "ea8b",
662
+ list: "ea8c",
663
+ "list-Copy": "ea8d",
664
+ Grid: "ea8e",
665
+ Calendar: "ea8f",
666
+ Schedule: "ea90",
667
+ tableview: "ea91",
668
+ Gallery: "ea92",
669
+ Copy1: "ea93",
670
+ Mailbox: "ea94",
671
+ Automation1: "ea95",
672
+ Avatar: "ea96"
673
+ };
674
+ function Q(e) {
675
+ const t = q[e];
676
+ return t ? `&#x${t};` : void 0;
677
+ }
93
678
  export {
94
- T as DATA_COUNT_PER_BATCH,
95
- A as GetLoadingMsg,
96
- m as GetPartErrMsg,
97
- d as GetQueryResult,
98
- h as GetSafeFormStructure,
99
- i as IsErrorPart,
100
- f as IsFakeMsgPart,
101
- y as IsFileGroupPart,
102
- l as IsFilePart,
103
- w as IsLoadingPart,
104
- g as IsQueryResultPart,
105
- c as WHITE_LIST_FIELDS_SET,
106
- P as createFieldPartsExtractor,
107
- I as createGetFieldJsonInfo,
108
- v as createPartTypeChecker,
109
- n as extractTextPartMeta,
110
- x as getMetaErrorMsg,
111
- E as imageUrlToBase64,
112
- M as valueNormalizer
679
+ O as DATA_COUNT_PER_BATCH,
680
+ b as FIELD_TYPE_OPERATOR_MAP,
681
+ M as GetLoadingMsg,
682
+ R as GetPartErrMsg,
683
+ _ as GetQueryResult,
684
+ I as GetSafeFormStructure,
685
+ f as IsErrorPart,
686
+ w as IsFakeMsgPart,
687
+ k as IsFileGroupPart,
688
+ v as IsFilePart,
689
+ P as IsLoadingPart,
690
+ x as IsQueryResultPart,
691
+ L as OPERATOR_LABEL_MAP,
692
+ y as WHITE_LIST_FIELDS_SET,
693
+ N as createFieldPartsExtractor,
694
+ T as createGetFieldJsonInfo,
695
+ F as createPartTypeChecker,
696
+ o as extractTextPartMeta,
697
+ W as getAvailableOperators,
698
+ G as getDefaultOperator,
699
+ Q as getIconUnicode,
700
+ E as getMetaErrorMsg,
701
+ B as imageUrlToBase64,
702
+ U as isHelperCondMet,
703
+ j as mergeConsecutiveTargets,
704
+ D as valueNormalizer
113
705
  };
114
706
  //# sourceMappingURL=ai-feat-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ai-feat-utils.js","sources":["../src/text-part.ts","../src/part.ts","../src/value-normalizer.ts","../src/form-structure.ts","../src/field-json.ts","../src/constants.ts","../src/attachment.ts"],"sourcesContent":["export const extractTextPartMeta = (part: any) => {\n if (part?.type !== 'text') {\n return null;\n }\n\n if (!part.providerMetadata) {\n return null;\n }\n\n if (!part.providerMetadata.raw || !part.providerMetadata.raw.data) {\n return null;\n }\n\n if (typeof part.providerMetadata.raw.data !== 'string') {\n return part.providerMetadata.raw.data;\n }\n\n let payload;\n try {\n payload = JSON.parse(part.providerMetadata.raw.data);\n } catch (e) {\n console.error('invalid raw data');\n }\n\n return payload || part.providerMetadata.raw.data;\n};\n","import { IQueryResult } from '@baishuyun/types';\nimport { extractTextPartMeta } from './text-part';\n\nexport const IsErrorPart = (part: any): boolean => {\n if (part?.type === 'error') {\n return true;\n }\n\n const payload = extractTextPartMeta(part);\n return payload?.type === 'agent-error';\n};\n\nexport const IsFakeMsgPart = (part: any): boolean => {\n const payload = extractTextPartMeta(part);\n return payload?.type === 'agent-fake-msg';\n};\n\nexport const IsFilePart = (part: any): boolean => {\n return part?.type === 'file';\n};\n\nexport const IsQueryResultPart = (part: any): boolean => {\n const payload = extractTextPartMeta(part);\n return payload?.type === 'query-stream-parsed-info';\n};\n\nexport const GetQueryResult = (part: any): IQueryResult | null => {\n const payload = extractTextPartMeta(part);\n if (payload?.type !== 'query-stream-parsed-info') {\n return null;\n }\n\n const result = payload.result;\n console.log('query result raw data:', result);\n try {\n return JSON.parse(result);\n } catch (e) {\n console.error('invalid query result data');\n return null;\n }\n};\n\nexport const IsFileGroupPart = (part: any) => {\n if (!Array.isArray(part)) {\n return false;\n }\n\n // any one is file part\n for (const p of part) {\n if (p?.type === 'file') {\n return true;\n }\n }\n\n return false;\n};\n\nexport const IsLoadingPart = (part: any): boolean => {\n const payload = extractTextPartMeta(part);\n return payload?.type === 'agent-loading';\n};\n\nexport const GetLoadingMsg = (part: any): string => {\n const payload = extractTextPartMeta(part);\n if (payload?.type !== 'agent-loading') {\n return '';\n }\n\n return payload?.label || '加载中';\n};\n\nexport const GetPartErrMsg = (part: any): string => {\n if (!IsErrorPart(part)) {\n return '';\n }\n\n if (part?.errorText) {\n return part.errorText;\n }\n\n const payload = extractTextPartMeta(part);\n return payload?.error || '未知错误';\n};\n\nexport const getMetaErrorMsg = (part: any): string => {\n if (part?.errorText) {\n return part.errorText;\n }\n\n const payload = extractTextPartMeta(part);\n return payload?.error || '未知错误';\n};\n","function isStringArray(value: unknown): value is string[] {\n if (!Array.isArray(value)) {\n return false;\n }\n\n return value.every((item) => typeof item === 'string');\n}\n\nfunction isOptionArray(value: unknown): value is Array<{ label: string; value: string }> {\n if (!Array.isArray(value)) {\n return false;\n }\n\n return value.every(\n (item) =>\n typeof item === 'object' &&\n item !== null &&\n 'label' in item &&\n 'value' in item &&\n typeof (item as any).label === 'string' &&\n typeof (item as any).value === 'string'\n );\n}\n\nexport const valueNormalizer = (value: string | string[]): string => {\n if (isStringArray(value)) {\n return value.join(', ');\n }\n\n if (isOptionArray(value)) {\n const values = value.map((item) => item.value);\n return values.join(', ');\n }\n\n return value;\n};\n","import { FieldType, IField } from '@baishuyun/types';\n\nexport const WHITE_LIST_FIELDS_SET = new Set<FieldType>([\n 'password',\n 'textarea',\n 'datetime',\n 'text',\n 'radiogroup',\n 'radio',\n 'combo',\n 'combocheck',\n 'checkboxgroup',\n 'number',\n]);\n\nexport const GetSafeFormStructure = (formStructure: Array<IField>) => {\n if (!Array.isArray(formStructure)) {\n return [];\n }\n\n return formStructure.filter((f) => {\n if (!f.widget) {\n return false;\n }\n\n return WHITE_LIST_FIELDS_SET.has(f.widget.type);\n });\n};\n","import { IFilledField } from '@baishuyun/types';\nimport { extractTextPartMeta } from './text-part';\n\nexport const createPartTypeChecker =\n (type: string) =>\n (part: any): boolean => {\n const payload = extractTextPartMeta(part);\n return payload?.type === type;\n };\n\nexport const createGetFieldJsonInfo =\n (type: string) =>\n (part: any): IFilledField | null => {\n const payload = extractTextPartMeta(part);\n if (payload?.type !== type) {\n return null;\n }\n return payload?.field || null;\n };\n\nexport const createFieldPartsExtractor =\n (isTarget: (part: any) => boolean) =>\n (part: any): any[] => {\n if (Array.isArray(part) && part.length > 0) return part.filter(isTarget);\n if (isTarget(part)) return [part];\n return [];\n };\n","export const DATA_COUNT_PER_BATCH = 10;\n","export const imageUrlToBase64 = (url: string, mediaType = 'image/png'): Promise<string> =>\n new Promise((resolve) => {\n const img = new Image();\n img.crossOrigin = 'anonymous';\n img.onload = () => {\n const canvas = document.createElement('canvas');\n canvas.width = img.naturalWidth;\n canvas.height = img.naturalHeight;\n canvas.getContext('2d')!.drawImage(img, 0, 0);\n resolve(canvas.toDataURL(mediaType));\n };\n img.onerror = () => resolve(url);\n img.src = url;\n });\n"],"names":["extractTextPartMeta","part","payload","e","IsErrorPart","IsFakeMsgPart","IsFilePart","IsQueryResultPart","GetQueryResult","result","IsFileGroupPart","p","IsLoadingPart","GetLoadingMsg","GetPartErrMsg","getMetaErrorMsg","isStringArray","value","item","isOptionArray","valueNormalizer","WHITE_LIST_FIELDS_SET","GetSafeFormStructure","formStructure","f","createPartTypeChecker","type","createGetFieldJsonInfo","createFieldPartsExtractor","isTarget","DATA_COUNT_PER_BATCH","imageUrlToBase64","url","mediaType","resolve","img","canvas"],"mappings":"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"}
1
+ {"version":3,"file":"ai-feat-utils.js","sources":["../src/text-part.ts","../src/part.ts","../src/value-normalizer.ts","../src/form-structure.ts","../src/field-json.ts","../src/constants.ts","../src/attachment.ts","../src/condition.ts","../src/array.ts","../src/iconfont.ts"],"sourcesContent":["export const extractTextPartMeta = (part: any) => {\n if (part?.type !== 'text') {\n return null;\n }\n\n if (!part.providerMetadata) {\n return null;\n }\n\n if (!part.providerMetadata.raw || !part.providerMetadata.raw.data) {\n return null;\n }\n\n if (typeof part.providerMetadata.raw.data !== 'string') {\n return part.providerMetadata.raw.data;\n }\n\n let payload;\n try {\n payload = JSON.parse(part.providerMetadata.raw.data);\n } catch (e) {\n console.error('invalid raw data');\n }\n\n return payload || part.providerMetadata.raw.data;\n};\n","import { IQueryResult } from '@baishuyun/types';\nimport { extractTextPartMeta } from './text-part';\n\nexport const IsErrorPart = (part: any): boolean => {\n if (part?.type === 'error') {\n return true;\n }\n\n const payload = extractTextPartMeta(part);\n return payload?.type === 'agent-error';\n};\n\nexport const IsFakeMsgPart = (part: any): boolean => {\n const payload = extractTextPartMeta(part);\n return payload?.type === 'agent-fake-msg';\n};\n\nexport const IsFilePart = (part: any): boolean => {\n return part?.type === 'file';\n};\n\nexport const IsQueryResultPart = (part: any): boolean => {\n const payload = extractTextPartMeta(part);\n return payload?.type === 'query-stream-parsed-info';\n};\n\nexport const GetQueryResult = (part: any): IQueryResult | null => {\n const payload = extractTextPartMeta(part);\n if (payload?.type !== 'query-stream-parsed-info') {\n return null;\n }\n\n const result = payload.result;\n console.log('query result raw data:', result);\n try {\n return JSON.parse(result);\n } catch (e) {\n console.error('invalid query result data');\n return null;\n }\n};\n\nexport const IsFileGroupPart = (part: any) => {\n if (!Array.isArray(part)) {\n return false;\n }\n\n // any one is file part\n for (const p of part) {\n if (p?.type === 'file') {\n return true;\n }\n }\n\n return false;\n};\n\nexport const IsLoadingPart = (part: any): boolean => {\n const payload = extractTextPartMeta(part);\n return payload?.type === 'agent-loading';\n};\n\nexport const GetLoadingMsg = (part: any): string => {\n const payload = extractTextPartMeta(part);\n if (payload?.type !== 'agent-loading') {\n return '';\n }\n\n return payload?.label || '加载中';\n};\n\nexport const GetPartErrMsg = (part: any): string => {\n if (!IsErrorPart(part)) {\n return '';\n }\n\n if (part?.errorText) {\n return part.errorText;\n }\n\n const payload = extractTextPartMeta(part);\n return payload?.error || '未知错误';\n};\n\nexport const getMetaErrorMsg = (part: any): string => {\n if (part?.errorText) {\n return part.errorText;\n }\n\n const payload = extractTextPartMeta(part);\n return payload?.error || '未知错误';\n};\n","function isStringArray(value: unknown): value is string[] {\n if (!Array.isArray(value)) {\n return false;\n }\n\n return value.every((item) => typeof item === 'string');\n}\n\nfunction isOptionArray(value: unknown): value is Array<{ label: string; value: string }> {\n if (!Array.isArray(value)) {\n return false;\n }\n\n return value.every(\n (item) =>\n typeof item === 'object' &&\n item !== null &&\n 'label' in item &&\n 'value' in item &&\n typeof (item as any).label === 'string' &&\n typeof (item as any).value === 'string'\n );\n}\n\nexport const valueNormalizer = (value: string | string[]): string => {\n if (isStringArray(value)) {\n return value.join(', ');\n }\n\n if (isOptionArray(value)) {\n const values = value.map((item) => item.value);\n return values.join(', ');\n }\n\n return value;\n};\n","import { FieldType, IField } from '@baishuyun/types';\n\nexport const WHITE_LIST_FIELDS_SET = new Set<FieldType>([\n 'password',\n 'textarea',\n 'datetime',\n 'text',\n 'radiogroup',\n 'radio',\n 'combo',\n 'combocheck',\n 'checkboxgroup',\n 'number',\n]);\n\nexport const GetSafeFormStructure = (formStructure: Array<IField>) => {\n if (!Array.isArray(formStructure)) {\n return [];\n }\n\n return formStructure.filter((f) => {\n if (!f.widget) {\n return false;\n }\n\n return WHITE_LIST_FIELDS_SET.has(f.widget.type);\n });\n};\n","import { IFilledField } from '@baishuyun/types';\nimport { extractTextPartMeta } from './text-part';\n\nexport const createPartTypeChecker =\n (type: string) =>\n (part: any): boolean => {\n const payload = extractTextPartMeta(part);\n return payload?.type === type;\n };\n\nexport const createGetFieldJsonInfo =\n (type: string) =>\n (part: any): IFilledField | null => {\n const payload = extractTextPartMeta(part);\n if (payload?.type !== type) {\n return null;\n }\n return payload?.field || null;\n };\n\nexport const createFieldPartsExtractor =\n (isTarget: (part: any) => boolean) =>\n (part: any): any[] => {\n if (Array.isArray(part) && part.length > 0) return part.filter(isTarget);\n if (isTarget(part)) return [part];\n return [];\n };\n","export const DATA_COUNT_PER_BATCH = 10;\n","export const imageUrlToBase64 = (url: string, mediaType = 'image/png'): Promise<string> =>\n new Promise((resolve) => {\n const img = new Image();\n img.crossOrigin = 'anonymous';\n img.onload = () => {\n const canvas = document.createElement('canvas');\n canvas.width = img.naturalWidth;\n canvas.height = img.naturalHeight;\n canvas.getContext('2d')!.drawImage(img, 0, 0);\n resolve(canvas.toDataURL(mediaType));\n };\n img.onerror = () => resolve(url);\n img.src = url;\n });\n","import type {\n FieldType,\n IAgentHelper,\n IFormValues,\n IConditionItem,\n relationalOperator,\n} from '@baishuyun/types';\n\nexport const OPERATOR_LABEL_MAP: Record<relationalOperator, string> = {\n eq: '等于',\n neq: '不等于',\n gt: '大于',\n lt: '小于',\n gte: '大于等于',\n lte: '小于等于',\n contains: '包含',\n not_contains: '不包含',\n in: '等于任意',\n nin: '不等于任意',\n all: '包含所有',\n empty: '为空',\n not_empty: '不为空',\n range: '范围',\n};\n\nexport const FIELD_TYPE_OPERATOR_MAP: Record<FieldType, relationalOperator[]> = {\n // Text-like: equality, fuzzy, empty checks\n text: ['eq', 'neq', 'in', 'nin', 'contains', 'not_contains', 'empty', 'not_empty'],\n password: ['eq', 'neq', 'contains', 'not_contains', 'empty', 'not_empty'],\n radiogroup: ['eq', 'neq', 'in', 'nin', 'empty', 'not_empty'],\n radio: ['eq', 'neq', 'empty', 'not_empty'],\n combo: ['eq', 'neq', 'in', 'nin', 'empty', 'not_empty'],\n sn: ['eq', 'neq', 'in', 'nin', 'contains', 'not_contains', 'empty', 'not_empty'],\n\n // Textarea: fuzzy matching\n textarea: ['contains', 'not_contains', 'empty', 'not_empty'],\n\n // Number: comparison operators\n number: ['eq', 'neq', 'gt', 'gte', 'lt', 'lte', 'range', 'empty', 'not_empty'],\n\n // DateTime: comparison operators\n datetime: ['eq', 'neq', 'gte', 'lte', 'range', 'empty', 'not_empty'],\n\n // Multi-select: membership, intersection\n checkboxgroup: ['in', 'all', 'eq', 'empty', 'not_empty'],\n combocheck: ['in', 'all', 'eq', 'empty', 'not_empty'],\n\n // User/Dept: equality and membership\n user: ['eq', 'neq', 'in', 'nin', 'empty', 'not_empty'],\n dept: ['eq', 'neq', 'in', 'nin', 'empty', 'not_empty'],\n\n // Groups: membership, intersection, empty\n usergroup: ['in', 'all', 'eq', 'empty', 'not_empty'],\n deptgroup: ['in', 'all', 'eq', 'empty', 'not_empty'],\n\n // Address/Location: intersection\n address: ['in', 'nin', 'empty', 'not_empty'],\n location: ['in', 'nin', 'empty', 'not_empty'],\n\n // Files: empty checks\n upload: ['empty', 'not_empty'],\n image: ['empty', 'not_empty'],\n signature: ['empty', 'not_empty'],\n\n // Flow state\n flowState: ['eq', 'neq', 'empty'],\n flowstate: ['eq', 'neq', 'empty'],\n\n // Link data: combo-like\n linkdata: ['eq', 'neq', 'in', 'nin', 'empty', 'not_empty'],\n linkquery: ['eq', 'neq', 'in', 'nin', 'empty', 'not_empty'],\n dataload: ['eq', 'neq', 'in', 'nin', 'empty', 'not_empty'],\n\n // Formula\n formula: ['eq', 'neq', 'empty', 'not_empty'],\n\n // Display-only: no meaningful operators\n separator: [],\n button: [],\n subform: [],\n unknown: [],\n};\n\nconst DEFAULT_OPERATOR_MAP: Partial<Record<FieldType, relationalOperator>> = {\n text: 'eq',\n password: 'eq',\n radiogroup: 'eq',\n radio: 'eq',\n combo: 'eq',\n sn: 'eq',\n textarea: 'contains',\n number: 'range',\n datetime: 'range',\n checkboxgroup: 'all',\n combocheck: 'all',\n user: 'eq',\n dept: 'eq',\n usergroup: 'all',\n deptgroup: 'all',\n address: 'all',\n location: 'all',\n upload: 'not_empty',\n image: 'not_empty',\n signature: 'not_empty',\n flowState: 'eq',\n flowstate: 'eq',\n linkdata: 'eq',\n linkquery: 'eq',\n dataload: 'eq',\n formula: 'eq',\n};\n\nexport function getAvailableOperators(fieldType?: FieldType): relationalOperator[] {\n if (!fieldType) return [];\n return FIELD_TYPE_OPERATOR_MAP[fieldType] ?? [];\n}\n\nexport function getDefaultOperator(fieldType?: FieldType): relationalOperator {\n if (!fieldType) return 'eq';\n return DEFAULT_OPERATOR_MAP[fieldType] ?? 'eq';\n}\n\n// ── Helpers ────────────────────────────────────────────────────────────────\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === 'object' && value !== null && !Array.isArray(value);\n}\n\nfunction asRecord(value: unknown): Record<string, unknown> | null {\n return isRecord(value) ? value : null;\n}\n\nfunction isEmpty(value: unknown): boolean {\n if (value === null || value === undefined) return true;\n if (value === '') return true;\n if (Array.isArray(value) && value.length === 0) return true;\n return false;\n}\n\nfunction isEqual(a: unknown, b: unknown): boolean {\n if (Array.isArray(a) && Array.isArray(b)) {\n if (a.length !== b.length) return false;\n const sa = a.map(String).sort();\n const sb = b.map(String).sort();\n return sa.every((v, i) => v === sb[i]);\n }\n if (isRecord(a) && isRecord(b)) {\n const ka = Object.keys(a);\n const kb = Object.keys(b);\n if (ka.length !== kb.length) return false;\n return ka.every((k) => String(a[k]) === String(b[k]));\n }\n return String(a) === String(b);\n}\n\nfunction evaluateIn(formValue: unknown, condValue: unknown): boolean {\n if (isRecord(condValue)) {\n const fv = asRecord(formValue);\n if (!fv) return false;\n if (condValue.province !== undefined && String(fv.province) !== String(condValue.province))\n return false;\n if (condValue.city !== undefined && String(fv.city) !== String(condValue.city)) return false;\n if (condValue.district !== undefined && String(fv.district) !== String(condValue.district))\n return false;\n return true;\n }\n const cv = Array.isArray(condValue) ? condValue.map(String) : [];\n if (Array.isArray(formValue)) {\n return formValue.some((v) => cv.includes(String(v)));\n }\n return cv.includes(String(formValue));\n}\n\nfunction evaluateAll(formValue: unknown, condValue: unknown): boolean {\n const cv = Array.isArray(condValue) ? condValue.map(String) : [];\n if (cv.length === 0) return false;\n const fv = Array.isArray(formValue) ? formValue.map(String) : [];\n return cv.every((v) => fv.includes(v));\n}\n\nfunction evaluateRange(formValue: unknown, condValue: unknown): boolean {\n const range = asRecord(condValue);\n if (!range) return false;\n const fv = Number(formValue);\n if (isNaN(fv)) return false;\n if (range.min !== undefined && range.min !== null && fv < Number(range.min)) return false;\n if (range.max !== undefined && range.max !== null && fv > Number(range.max)) return false;\n return true;\n}\n\n// ── Item evaluator ─────────────────────────────────────────────────────────\n\nfunction evaluateConditionItem(item: IConditionItem, formValues: IFormValues): boolean {\n const widgetName = item.field.widget?.widgetName;\n if (!widgetName) return false;\n\n const formValue = formValues[widgetName];\n const { operator, value: condValue } = item;\n\n switch (operator) {\n case 'empty':\n return isEmpty(formValue);\n case 'not_empty':\n return !isEmpty(formValue);\n case 'eq':\n return isEqual(formValue, condValue);\n case 'neq':\n return !isEqual(formValue, condValue);\n case 'contains':\n return String(formValue).includes(String(condValue));\n case 'not_contains':\n return !String(formValue).includes(String(condValue));\n case 'gt':\n return Number(formValue) > Number(condValue);\n case 'gte':\n return Number(formValue) >= Number(condValue);\n case 'lt':\n return Number(formValue) < Number(condValue);\n case 'lte':\n return Number(formValue) <= Number(condValue);\n case 'in':\n return evaluateIn(formValue, condValue);\n case 'nin':\n return !evaluateIn(formValue, condValue);\n case 'all':\n return evaluateAll(formValue, condValue);\n case 'range':\n return evaluateRange(formValue, condValue);\n default:\n return false;\n }\n}\n\n// ── Public API ─────────────────────────────────────────────────────────────\n\nexport function isHelperCondMet(helper: IAgentHelper, formValues: IFormValues): boolean {\n const condition = helper.triggerCondition;\n if (!condition) return true;\n\n const { items, quantifier } = condition;\n if (!items || items.length === 0) return true;\n\n const results = items.map((item) => evaluateConditionItem(item, formValues));\n\n return quantifier === 'any' ? results.some((r) => r) : results.every((r) => r);\n}\n","export function mergeConsecutiveTargets<T>(\n arr: T[],\n isTarget: (item: T) => boolean,\n minWidth = 1\n): (T | T[])[] {\n // 存储最终结果\n const result: (T | T[])[] = [];\n // 临时收集连续的目标元素\n const temp: T[] = [];\n\n // 遍历原始数组\n for (const item of arr) {\n if (isTarget(item)) {\n // 是目标元素,加入临时数组\n temp.push(item);\n } else {\n // 不是目标元素:先处理临时数组(内联原辅助函数逻辑)\n if (temp.length > 0) {\n // 连续≥ minWidth 个目标元素 → 合并为子数组\n result.push(temp.length >= minWidth ? [...temp] : temp[0]);\n temp.length = 0; // 清空临时数组\n }\n // 将当前非目标元素加入结果\n result.push(item);\n }\n }\n\n // 处理遍历结束后剩余的临时数组(末尾可能全是目标元素)\n if (temp.length > 0) {\n result.push(temp.length >= 2 ? [...temp] : temp[0]);\n }\n\n return result;\n}\n","/**\n * Mapping from icon font_class name to unicode hex string.\n * Generated from apps/web/public/iconfont.json\n */\nconst ICON_UNICODE_MAP: Record<string, string> = {\n projectdevelopment: 'e914',\n resourcelibrary: 'e915',\n Plugin2: 'e90e',\n Plugin: 'e90f',\n JSON: 'e910',\n Dropdown: 'e911',\n Batchprocessing: 'e912',\n 'Image-text': 'e916',\n Newaddition: 'e917',\n reportforms: 'e918',\n AddFola: 'e919',\n delete: 'e91a',\n AddImage: 'e91b',\n Send: 'e91c',\n text: 'e91d',\n image: 'e91e',\n Star1: 'e91f',\n Ellipse: 'e920',\n 'Ellipse-Copy': 'e921',\n Shape: 'e922',\n 'Shape-Copy': 'e923',\n 'right-line': 'e924',\n 'right-arrow': 'e925',\n 'double-right-arrow': 'e926',\n ellipse: 'e927',\n Rectangle: 'e928',\n 'Rectangle-Copy': 'e929',\n 'Rectangle-Copy-2': 'e92a',\n CombinedShape: 'e92b',\n Line: 'e92c',\n time: 'e92d',\n calendar: 'e92e',\n richsinglelinetext: 'e92f',\n singlelinetext: 'e930',\n multilinetext: 'e931',\n number: 'e932',\n RichText: 'e933',\n image1: 'e934',\n Attachment: 'e935',\n Phone: 'e936',\n Email: 'e937',\n date: 'e938',\n 'Multiple-choice': 'e939',\n Checkbox: 'e93a',\n 'Drop-down': 'e93b',\n positioning: 'e93c',\n Description: 'e93d',\n AutoNumber: 'e93e',\n Address: 'e93f',\n Staff: 'e940',\n Department: 'e941',\n Switch: 'e942',\n Slider: 'e943',\n Currentdate: 'e944',\n Grade: 'e945',\n Barcode: 'e946',\n Subtable: 'e947',\n associatedtable: 'e948',\n Associatedapplication: 'e949',\n Referencefield: 'e94a',\n Uppercasing: 'e94b',\n nodata: 'e94c',\n 'X-mark': 'e94d',\n Copy: 'e94e',\n Correct: 'e94f',\n Save: 'e950',\n Printer: 'e951',\n search: 'e952',\n filter: 'e953',\n Export: 'e954',\n Import: 'e955',\n Customprint: 'e956',\n refresh: 'e957',\n Helpcenter: 'e958',\n Tutorial: 'e959',\n Release: 'e95a',\n more: 'e95b',\n Setup: 'e95c',\n sort: 'e95d',\n Back: 'e95e',\n show: 'e95f',\n hide: 'e960',\n Preview: 'e961',\n Click: 'e962',\n Allcheck: 'e963',\n Cancelcheck: 'e964',\n Likespot: 'e965',\n Favoritespot: 'e966',\n Followspot: 'e967',\n Commentspot: 'e968',\n At: 'e969',\n Pin: 'e96a',\n edit: 'e96b',\n Top: 'e96c',\n Movein: 'e96d',\n Moveout: 'e96e',\n Forward: 'e96f',\n Revoke: 'e970',\n Return: 'e971',\n Link: 'e972',\n Unlink: 'e973',\n Download: 'e974',\n Upload: 'e975',\n Download2: 'e976',\n Upload2: 'e977',\n Comment: 'e978',\n Remind: 'e979',\n Notice: 'e97a',\n Permission: 'e97b',\n SMS: 'e97c',\n QRcode: 'e97d',\n Website: 'e97e',\n Monitoring: 'e97f',\n Api: 'e980',\n Webhook: 'e981',\n Synchronous: 'e982',\n Automation: 'e983',\n Trigger: 'e984',\n Condition: 'e985',\n Success: 'e986',\n Failure: 'e987',\n countdown: 'e988',\n Waiting: 'e989',\n Flow: 'e98a',\n Connection: 'e98b',\n Dashboard: 'e98c',\n chart: 'e98d',\n Piechart: 'e98e',\n BarChart: 'e98f',\n DoubleBarChart: 'e991',\n StackedBarChart: 'e992',\n PercentageStackedBarChart: 'e993',\n LineChart: 'e994',\n areachart: 'e990',\n combinationchart: 'e995',\n Scatterplot: 'e996',\n FunnelChart: 'e997',\n wordcloud: 'e998',\n RadarChart: 'e999',\n PivotTable: 'e99a',\n NumberChart: 'e99b',\n map: 'e99c',\n Timeline: 'e99d',\n Album: 'e99e',\n Kanban: 'e99f',\n Ganttchart: 'e9a0',\n Circle: 'e9a8',\n linesurface: 'e9a1',\n IconStyle: 'e9a2',\n Backgroundcolor: 'e9a3',\n DeleteDe: 'e9a4',\n AlignLeft: 'e9a5',\n AlignCenter: 'e9a6',\n AlignRight: 'e9a7',\n Column: 'e9a9',\n Component: 'e9aa',\n Customcomponent: 'e9ab',\n Title: 'e9ac',\n RichText1: 'e9ad',\n Carousel: 'e9ae',\n PageTab: 'e9af',\n Buriedpoint: 'e9b0',\n Container: 'e9b1',\n QuickStart: 'e9b2',\n Group: 'e9b3',\n Ungroup: 'e9b4',\n Front: 'e9b5',\n Back1: 'e9b6',\n Lock: 'e9b7',\n Unlock: 'e9b8',\n Association: 'e9b9',\n CancelAssociation: 'e9ba',\n Quotation: 'e9bb',\n ViewSet: 'e9bc',\n AutoScale: 'e9bd',\n waterfall: 'e9be',\n watermark: 'e9bf',\n history: 'e9c0',\n Setting: 'e9c1',\n Draftbox: 'e9c2',\n SQL: 'e9c3',\n Workflow: 'e9c4',\n Workflow2: 'e9c5',\n Addone: 'e9c6',\n Formula: 'e9c7',\n Dictionary: 'e9c8',\n statistical: 'e9c9',\n Recycle: 'e9ca',\n Mistake: 'e9cb',\n Tag: 'e9cc',\n Pendingapproval: 'e9cd',\n MyApplication: 'e9ce',\n ApplicationApproval: 'e9cf',\n Initiatedbyme: 'e9d0',\n Copiedtome: 'e9d1',\n Approvalnode: 'e9d2',\n Fillnode: 'e9d3',\n cc: 'e9d4',\n Image1: 'e9d5',\n Open: 'e9d6',\n Color: 'e9d7',\n Right: 'e9d8',\n Backward: 'e9d9',\n dataanalysis: 'e9da',\n Filter2: 'e9db',\n Freefilter: 'e9dc',\n Conditionfilter: 'e9dd',\n Quickfilter: 'e9de',\n Export1: 'e9df',\n Attachmentpreview: 'e9e0',\n BulkEdit: 'e9e1',\n Calculationrows: 'e9e2',\n SingleSelect: 'e9e3',\n dataview: 'e9e4',\n Dataid: 'e9e5',\n Divide: 'e9e6',\n Progress: 'e9e7',\n Star: 'e9e8',\n Contacts: 'e9e9',\n Activity: 'e9ea',\n Minus: 'e9eb',\n Plussign: 'e9ec',\n 'Plussign-Copy': 'e9ed',\n Increased: 'e9ee',\n Decline: 'e9ef',\n indeterminate: 'e9f0',\n Decline1: 'e9f1',\n personal: 'e9f2',\n Warning: 'e9f3',\n Warning2: 'e9f4',\n Prompt: 'e9f5',\n info: 'e9f6',\n Cancel: 'e9f7',\n question1: 'e9f8',\n Question: 'e9f9',\n exclamation: 'e9fa',\n Warning1: 'e9fb',\n True: 'e9fc',\n Suspended: 'e9fd',\n Suspended1: 'e9fe',\n Suspended2: 'e9ff',\n Error: 'ea00',\n CombinedShape2: 'ea01',\n Delete1: 'ea02',\n Circle1: 'ea03',\n Decline2: 'ea04',\n Decline3: 'ea05',\n add: 'ea06',\n Addto: 'ea07',\n Reduce: 'ea08',\n Subtract: 'ea09',\n Addition: 'ea0a',\n Multiplication: 'ea0b',\n Division: 'ea0c',\n Bracket: 'ea0d',\n Reduce1: 'ea0e',\n Search: 'ea0f',\n Favorites: 'ea10',\n Annotation: 'ea11',\n Application: 'ea12',\n Application2: 'ea13',\n Applicationsview: 'ea14',\n Publish: 'ea15',\n Deploy: 'ea16',\n Sidetoplowerside: 'ea17',\n Narrow: 'ea18',\n Backtothenavigation: 'ea19',\n Forwardtothenavigation: 'ea1a',\n Return1: 'ea1b',\n Transfer: 'ea1c',\n Log: 'ea1d',\n table: 'ea1e',\n Form: 'ea1f',\n Openfield: 'ea20',\n Closefield: 'ea21',\n Receive: 'ea22',\n Fill: 'ea23',\n Fill1: 'ea24',\n fillet: 'ea25',\n rightangle: 'ea26',\n round: 'ea27',\n Send1: 'ea28',\n Map: 'ea29',\n Upward: 'ea2a',\n Move: 'ea2b',\n Downward: 'ea2c',\n drag: 'ea2d',\n TextIcon: 'ea2e',\n Narrow1: 'ea2f',\n Enlarge: 'ea30',\n Enlarge2: 'ea31',\n Cancel1: 'ea32',\n Retract: 'ea33',\n Expand: 'ea34',\n Retract1: 'ea35',\n Expand1: 'ea36',\n Retract2: 'ea37',\n Expand2: 'ea38',\n Switch1: 'ea39',\n Fullscreen: 'ea3a',\n Offscreen: 'ea3b',\n Notvisible: 'ea3c',\n Visible: 'ea3d',\n Adjust: 'ea3e',\n PC: 'ea3f',\n Mobile: 'ea40',\n Pad: 'ea41',\n Scanthecode: 'ea42',\n Scan: 'ea43',\n Screenshot: 'ea44',\n Rotation: 'ea45',\n voice: 'ea46',\n Video: 'ea47',\n Location: 'ea48',\n Clock: 'ea49',\n Print: 'ea4a',\n Member: 'ea4b',\n WorkWeChat: 'ea4c',\n DingTalk: 'ea4d',\n EnterpriseWeChat2: 'ea4e',\n Groupmanagement: 'ea4f',\n Feishu: 'ea50',\n Stationletter: 'ea51',\n Email1: 'ea52',\n WeChat: 'ea53',\n ServiceAccount: 'ea54',\n Subscribed: 'ea55',\n Dingtalk: 'ea56',\n Information: 'ea57',\n Assistant: 'ea58',\n ai: 'ea59',\n Inquireabout: 'ea5a',\n IFrame: 'ea5b',\n Integratio: 'ea5c',\n close: 'ea5d',\n Close: 'ea5e',\n Addgroup: 'ea5f',\n deletegroup: 'ea60',\n Relateddata: 'ea61',\n Enlarge1: 'ea62',\n Narrow2: 'ea63',\n 'map-search': 'ea64',\n Corner: 'ea65',\n text1: 'ea66',\n Onlinemap: 'ea67',\n Maptile: 'ea68',\n Dataexport: 'ea69',\n Word: 'ea6a',\n Excel: 'ea6b',\n PPT: 'ea6c',\n PDF: 'ea6d',\n Video1: 'ea6e',\n Audio: 'ea6f',\n Txt: 'ea70',\n Zip: 'ea71',\n file: 'ea72',\n richtext: 'ea73',\n Onlinemap1: 'ea74',\n Maptile1: 'ea75',\n Ai2: 'ea76',\n Guide: 'ea77',\n Button: 'ea78',\n Menus: 'ea79',\n 'richtext-Copy': 'ea7a',\n 'richtext-Copy-2': 'ea7b',\n 'richtext-Copy-3': 'ea7c',\n 'richtext-Copy-4': 'ea7d',\n Split: 'ea7e',\n AI: 'ea7f',\n Form1: 'ea80',\n Fields: 'ea81',\n Project: 'ea82',\n More1: 'ea83',\n Notstarted: 'ea84',\n Inprocess: 'ea85',\n Completed: 'ea86',\n Completed1: 'ea87',\n More2: 'ea88',\n AIoffice: 'ea89',\n statistics: 'ea8a',\n Expand3: 'ea8b',\n list: 'ea8c',\n 'list-Copy': 'ea8d',\n Grid: 'ea8e',\n Calendar: 'ea8f',\n Schedule: 'ea90',\n tableview: 'ea91',\n Gallery: 'ea92',\n Copy1: 'ea93',\n Mailbox: 'ea94',\n Automation1: 'ea95',\n Avatar: 'ea96',\n};\n\n/**\n * Look up the unicode hex string for an icon by its font_class name.\n * Returns undefined if the icon name is not found.\n *\n * @param name - The icon font_class name (e.g. \"search\", \"edit\", \"ai\")\n * @returns The unicode hex string (e.g. \"e952\"), or undefined\n *\n * @example\n * getIconUnicode(\"search\") // \"e952\"\n * getIconUnicode(\"ai\") // \"ea59\"\n */\nexport function getIconUnicode(name: string): string | undefined {\n const code = ICON_UNICODE_MAP[name];\n return code ? `&#x${code};` : undefined;\n}\n"],"names":["extractTextPartMeta","part","payload","e","IsErrorPart","IsFakeMsgPart","IsFilePart","IsQueryResultPart","GetQueryResult","result","IsFileGroupPart","p","IsLoadingPart","GetLoadingMsg","GetPartErrMsg","getMetaErrorMsg","isStringArray","value","item","isOptionArray","valueNormalizer","WHITE_LIST_FIELDS_SET","GetSafeFormStructure","formStructure","f","createPartTypeChecker","type","createGetFieldJsonInfo","createFieldPartsExtractor","isTarget","DATA_COUNT_PER_BATCH","imageUrlToBase64","url","mediaType","resolve","img","canvas","OPERATOR_LABEL_MAP","FIELD_TYPE_OPERATOR_MAP","DEFAULT_OPERATOR_MAP","getAvailableOperators","fieldType","_a","getDefaultOperator","isRecord","asRecord","isEmpty","isEqual","a","b","sa","sb","v","ka","kb","k","evaluateIn","formValue","condValue","fv","cv","evaluateAll","evaluateRange","range","evaluateConditionItem","formValues","widgetName","operator","isHelperCondMet","helper","condition","items","quantifier","results","r","mergeConsecutiveTargets","arr","minWidth","temp","ICON_UNICODE_MAP","getIconUnicode","name","code"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function mergeConsecutiveTargets<T>(arr: T[], isTarget: (item: T) => boolean, minWidth?: number): (T | T[])[];
2
+ //# sourceMappingURL=array.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../src/array.ts"],"names":[],"mappings":"AAAA,wBAAgB,uBAAuB,CAAC,CAAC,EACvC,GAAG,EAAE,CAAC,EAAE,EACR,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,EAC9B,QAAQ,SAAI,GACX,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CA6Bb"}
@@ -0,0 +1,7 @@
1
+ import { FieldType, IAgentHelper, IFormValues, relationalOperator } from '@baishuyun/types';
2
+ export declare const OPERATOR_LABEL_MAP: Record<relationalOperator, string>;
3
+ export declare const FIELD_TYPE_OPERATOR_MAP: Record<FieldType, relationalOperator[]>;
4
+ export declare function getAvailableOperators(fieldType?: FieldType): relationalOperator[];
5
+ export declare function getDefaultOperator(fieldType?: FieldType): relationalOperator;
6
+ export declare function isHelperCondMet(helper: IAgentHelper, formValues: IFormValues): boolean;
7
+ //# sourceMappingURL=condition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"condition.d.ts","sourceRoot":"","sources":["../src/condition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,YAAY,EACZ,WAAW,EAEX,kBAAkB,EACnB,MAAM,kBAAkB,CAAC;AAE1B,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAejE,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,SAAS,EAAE,kBAAkB,EAAE,CAwD3E,CAAC;AA+BF,wBAAgB,qBAAqB,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,kBAAkB,EAAE,CAGjF;AAED,wBAAgB,kBAAkB,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,kBAAkB,CAG5E;AAmHD,wBAAgB,eAAe,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,GAAG,OAAO,CAUtF"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Look up the unicode hex string for an icon by its font_class name.
3
+ * Returns undefined if the icon name is not found.
4
+ *
5
+ * @param name - The icon font_class name (e.g. "search", "edit", "ai")
6
+ * @returns The unicode hex string (e.g. "e952"), or undefined
7
+ *
8
+ * @example
9
+ * getIconUnicode("search") // "e952"
10
+ * getIconUnicode("ai") // "ea59"
11
+ */
12
+ export declare function getIconUnicode(name: string): string | undefined;
13
+ //# sourceMappingURL=iconfont.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iconfont.d.ts","sourceRoot":"","sources":["../src/iconfont.ts"],"names":[],"mappings":"AA+YA;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAG/D"}
package/dist/index.d.ts CHANGED
@@ -5,4 +5,7 @@ export { GetSafeFormStructure, WHITE_LIST_FIELDS_SET } from './form-structure';
5
5
  export { createPartTypeChecker, createGetFieldJsonInfo, createFieldPartsExtractor, } from './field-json';
6
6
  export { DATA_COUNT_PER_BATCH } from './constants';
7
7
  export { imageUrlToBase64 } from './attachment';
8
+ export { OPERATOR_LABEL_MAP, FIELD_TYPE_OPERATOR_MAP, getAvailableOperators, getDefaultOperator, isHelperCondMet, } from './condition';
9
+ export * from './array';
10
+ export { getIconUnicode } from './iconfont';
8
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,cAAc,QAAQ,CAAC;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,cAAc,QAAQ,CAAC;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,qBAAqB,EACrB,kBAAkB,EAClB,eAAe,GAChB,MAAM,aAAa,CAAC;AAErB,cAAc,SAAS,CAAC;AAExB,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@baishuyun/ai-feat-utils",
3
- "version": "1.0.1",
3
+ "version": "1.0.2",
4
4
  "description": "Shared utility functions for AI feature plugins",
5
5
  "type": "module",
6
6
  "main": "dist/ai-feat-utils.js",
@@ -16,14 +16,14 @@
16
16
  "dist/**/*"
17
17
  ],
18
18
  "dependencies": {
19
- "@baishuyun/types": "2.0.2"
19
+ "@baishuyun/types": "2.0.3"
20
20
  },
21
21
  "devDependencies": {
22
22
  "rimraf": "^6.1.2",
23
23
  "typescript": "^5.5.0",
24
24
  "vite": "^5.1.4",
25
25
  "vite-plugin-dts": "^4.5.4",
26
- "@baishuyun/typescript-config": "1.0.2"
26
+ "@baishuyun/typescript-config": "1.0.3"
27
27
  },
28
28
  "keywords": [],
29
29
  "author": "",