@baishuyun/ai-feat-utils 1.0.3 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10,18 +10,18 @@ const c = (e) => {
10
10
  console.error("invalid raw data");
11
11
  }
12
12
  return t || e.providerMetadata.raw.data;
13
- }, h = (e) => {
13
+ }, A = (e) => {
14
14
  if ((e == null ? void 0 : e.type) === "error")
15
15
  return !0;
16
16
  const t = c(e);
17
17
  return (t == null ? void 0 : t.type) === "agent-error";
18
- }, E = (e) => {
18
+ }, R = (e) => {
19
19
  const t = c(e);
20
20
  return (t == null ? void 0 : t.type) === "agent-fake-msg";
21
- }, M = (e) => (e == null ? void 0 : e.type) === "file", T = (e) => {
21
+ }, E = (e) => (e == null ? void 0 : e.type) === "file", T = (e) => {
22
22
  const t = c(e);
23
23
  return (t == null ? void 0 : t.type) === "query-stream-parsed-info";
24
- }, N = (e) => {
24
+ }, D = (e) => {
25
25
  const t = c(e);
26
26
  if ((t == null ? void 0 : t.type) !== "query-stream-parsed-info")
27
27
  return null;
@@ -32,41 +32,41 @@ const c = (e) => {
32
32
  } catch (n) {
33
33
  return console.error("invalid query result data"), null;
34
34
  }
35
- }, D = (e) => {
35
+ }, O = (e) => {
36
36
  if (!Array.isArray(e))
37
37
  return !1;
38
38
  for (const t of e)
39
39
  if ((t == null ? void 0 : t.type) === "file")
40
40
  return !0;
41
41
  return !1;
42
- }, O = (e) => {
42
+ }, F = (e) => {
43
43
  const t = c(e);
44
44
  return (t == null ? void 0 : t.type) === "agent-loading";
45
- }, F = (e) => {
45
+ }, I = (e) => {
46
46
  const t = c(e);
47
47
  return (t == null ? void 0 : t.type) !== "agent-loading" ? "" : (t == null ? void 0 : t.label) || "加载中";
48
- }, I = (e) => {
49
- if (!h(e))
48
+ }, B = (e) => {
49
+ if (!A(e))
50
50
  return "";
51
51
  if (e != null && e.errorText)
52
52
  return e.errorText;
53
53
  const t = c(e);
54
54
  return (t == null ? void 0 : t.error) || "未知错误";
55
- }, B = (e) => {
55
+ }, L = (e) => {
56
56
  if (e != null && e.errorText)
57
57
  return e.errorText;
58
58
  const t = c(e);
59
59
  return (t == null ? void 0 : t.error) || "未知错误";
60
60
  };
61
- function A(e) {
61
+ function S(e) {
62
62
  return Array.isArray(e) ? e.every((t) => typeof t == "string") : !1;
63
63
  }
64
- function S(e) {
64
+ function w(e) {
65
65
  return Array.isArray(e) ? e.every(
66
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 L = (e) => A(e) ? e.join(", ") : S(e) ? e.map((r) => r.value).join(", ") : e, q = /* @__PURE__ */ new Set([
69
+ const W = (e) => S(e) ? e.join(", ") : w(e) ? e.map((r) => r.value).join(", ") : e, q = /* @__PURE__ */ new Set([
70
70
  "password",
71
71
  "textarea",
72
72
  "datetime",
@@ -77,19 +77,25 @@ const L = (e) => A(e) ? e.join(", ") : S(e) ? e.map((r) => r.value).join(", ") :
77
77
  "combocheck",
78
78
  "checkboxgroup",
79
79
  "number"
80
- ]), W = (e) => Array.isArray(e) ? e.filter((t) => t.widget ? q.has(t.widget.type) : !1) : [], G = (e) => (t) => {
80
+ ]), U = (e) => Array.isArray(e) ? e.filter((t) => t.widget ? q.has(t.widget.type) : !1) : [], G = (e) => (t) => {
81
81
  const r = c(t);
82
82
  return (r == null ? void 0 : r.type) === e;
83
- }, U = (e) => (t) => {
83
+ }, j = (e) => (t) => {
84
84
  const r = c(t);
85
85
  return (r == null ? void 0 : r.type) !== e ? null : (r == null ? void 0 : r.field) || null;
86
- }, j = (e) => (t) => Array.isArray(t) && t.length > 0 ? t.filter(e) : e(t) ? [t] : [], Q = 10, H = (e, t = "image/png") => new Promise((r) => {
86
+ }, J = (e) => (t) => Array.isArray(t) && t.length > 0 ? t.filter(e) : e(t) ? [t] : [], Q = (e) => {
87
+ try {
88
+ return JSON.parse(e);
89
+ } catch (t) {
90
+ return console.error("Failed to parse JSON:", t), null;
91
+ }
92
+ }, H = 10, $ = (e, t = "image/png") => new Promise((r) => {
87
93
  const n = new Image();
88
94
  n.crossOrigin = "anonymous", n.onload = () => {
89
95
  const a = document.createElement("canvas");
90
96
  a.width = n.naturalWidth, a.height = n.naturalHeight, a.getContext("2d").drawImage(n, 0, 0), r(a.toDataURL(t));
91
97
  }, n.onerror = () => r(e), n.src = e;
92
- }), J = {
98
+ }), z = {
93
99
  eq: "等于",
94
100
  neq: "不等于",
95
101
  gt: "大于",
@@ -176,11 +182,11 @@ const L = (e) => A(e) ? e.join(", ") : S(e) ? e.map((r) => r.value).join(", ") :
176
182
  dataload: "eq",
177
183
  formula: "eq"
178
184
  };
179
- function $(e) {
185
+ function K(e) {
180
186
  var t;
181
187
  return e ? (t = C[e]) != null ? t : [] : [];
182
188
  }
183
- function z(e) {
189
+ function X(e) {
184
190
  var t;
185
191
  return e && (t = v[e]) != null ? t : "eq";
186
192
  }
@@ -213,19 +219,19 @@ function y(e, t) {
213
219
  const r = Array.isArray(t) ? t.map(String) : [];
214
220
  return Array.isArray(e) ? e.some((n) => r.includes(String(n))) : r.includes(String(e));
215
221
  }
216
- function w(e, t) {
222
+ function _(e, t) {
217
223
  const r = Array.isArray(t) ? t.map(String) : [];
218
224
  if (r.length === 0) return !1;
219
225
  const n = Array.isArray(e) ? e.map(String) : [];
220
226
  return r.every((a) => n.includes(a));
221
227
  }
222
- function _(e, t) {
228
+ function k(e, t) {
223
229
  const r = b(t);
224
230
  if (!r) return !1;
225
231
  const n = Number(e);
226
232
  return !(isNaN(n) || r.min !== void 0 && r.min !== null && n < Number(r.min) || r.max !== void 0 && r.max !== null && n > Number(r.max));
227
233
  }
228
- function k(e, t) {
234
+ function x(e, t) {
229
235
  var o;
230
236
  const r = (o = e.field.widget) == null ? void 0 : o.widgetName;
231
237
  if (!r) return !1;
@@ -256,22 +262,24 @@ function k(e, t) {
256
262
  case "nin":
257
263
  return !y(n, i);
258
264
  case "all":
259
- return w(n, i);
260
- case "range":
261
265
  return _(n, i);
266
+ case "range":
267
+ return k(n, i);
262
268
  default:
263
269
  return !1;
264
270
  }
265
271
  }
266
- function K(e, t) {
272
+ function Y(e, t) {
267
273
  const r = e.triggerCondition;
268
274
  if (!r) return !0;
275
+ if (!e.enabled)
276
+ return !1;
269
277
  const { items: n, quantifier: a } = r;
270
278
  if (!n || n.length === 0) return !0;
271
- const i = n.map((o) => k(o, t));
279
+ const i = n.map((o) => x(o, t));
272
280
  return a === "any" ? i.some((o) => o) : i.every((o) => o);
273
281
  }
274
- const x = {
282
+ const P = {
275
283
  eq: "eq",
276
284
  neq: "ne",
277
285
  gt: "gt",
@@ -286,7 +294,7 @@ const x = {
286
294
  empty: "empty",
287
295
  not_empty: "not_empty",
288
296
  range: "range"
289
- }, P = {
297
+ }, M = {
290
298
  eq: "eq",
291
299
  ne: "neq",
292
300
  gt: "gt",
@@ -302,13 +310,13 @@ const x = {
302
310
  not_empty: "not_empty",
303
311
  range: "range"
304
312
  };
305
- function X(e) {
313
+ function Z(e) {
306
314
  const t = e.quantifier === "any" ? "or" : "and", r = e.items.map((n) => {
307
- var o, l, s, u, p, f;
308
- const a = (o = x[n.operator]) != null ? o : "eq";
315
+ var o, s, l, u, p, f;
316
+ const a = (o = P[n.operator]) != null ? o : "eq";
309
317
  let i;
310
318
  return n.operator === "range" && d(n.value) ? i = [n.value.min, n.value.max] : Array.isArray(n.value) ? i = n.value : i = [n.value], {
311
- field: (u = (s = (l = n.field) == null ? void 0 : l.widget) == null ? void 0 : s.widgetName) != null ? u : "",
319
+ field: (u = (l = (s = n.field) == null ? void 0 : s.widget) == null ? void 0 : l.widgetName) != null ? u : "",
312
320
  method: a,
313
321
  value: i,
314
322
  type: (f = (p = n.field) == null ? void 0 : p.widget) == null ? void 0 : f.type
@@ -316,14 +324,12 @@ function X(e) {
316
324
  });
317
325
  return JSON.stringify({ rel: t, cond: r });
318
326
  }
319
- function Y(e) {
327
+ function V(e) {
320
328
  const t = JSON.parse(e), r = t.rel === "or" ? "any" : "all", n = t.cond.map((a, i) => {
321
- var s, u;
322
- const o = (s = P[a.method]) != null ? s : "eq";
323
- let l = a.value;
324
- return o === "range" ? l = { min: a.value[0], max: a.value[1] } : ["eq", "neq", "contains", "not_contains", "gt", "gte", "lt", "lte"].includes(
325
- o
326
- ) && (l = a.value[0]), {
329
+ var l, u;
330
+ const o = (l = M[a.method]) != null ? l : "eq";
331
+ let s = a.value;
332
+ return o === "range" ? s = { min: a.value[0], max: a.value[1] } : ["eq", "neq", "contains", "not_contains", "gt", "gte", "lt", "lte"].includes(o) && (s = a.value[0]), {
327
333
  id: `${a.field}_${i}`,
328
334
  field: {
329
335
  label: a.field,
@@ -334,18 +340,24 @@ function Y(e) {
334
340
  }
335
341
  },
336
342
  operator: o,
337
- value: l
343
+ value: s
338
344
  };
339
345
  });
340
346
  return { targetName: "", quantifier: r, items: n };
341
347
  }
342
- function Z(e, t, r = 1) {
348
+ function ee(e, t, r = 1) {
343
349
  const n = [], a = [];
344
350
  for (const i of e)
345
351
  t(i) ? a.push(i) : (a.length > 0 && (n.push(a.length >= r ? [...a] : a[0]), a.length = 0), n.push(i));
346
352
  return a.length > 0 && n.push(a.length >= 2 ? [...a] : a[0]), n;
347
353
  }
348
- const R = {
354
+ function h(e) {
355
+ const t = [];
356
+ for (const r of e)
357
+ Array.isArray(r) ? t.push(...h(r)) : t.push(r);
358
+ return t;
359
+ }
360
+ const N = {
349
361
  projectdevelopment: "e914",
350
362
  resourcelibrary: "e915",
351
363
  Plugin2: "e90e",
@@ -739,38 +751,67 @@ const R = {
739
751
  Automation1: "ea95",
740
752
  Avatar: "ea96"
741
753
  };
742
- function V(e) {
743
- const t = R[e];
754
+ function te(e) {
755
+ const t = N[e];
744
756
  return t ? `&#x${t};` : void 0;
745
757
  }
758
+ const ne = (e, t, r) => {
759
+ if (!r)
760
+ return {
761
+ translated: ""
762
+ };
763
+ const n = new Map(t.map((o) => [o.widget.widgetName, o.label]));
764
+ for (const o of t)
765
+ if (o.widget.type === "subform" && o.widget.items) {
766
+ for (const s of o.widget.items)
767
+ if ("widget" in s && !("options" in s)) {
768
+ const l = `${o.widget.widgetName}.${s.widget.widgetName}`;
769
+ n.set(l, s.label);
770
+ }
771
+ }
772
+ const a = [], i = e.replace(
773
+ /\$\{(_widget_\d+(?:\._widget_\d+)?)\}/g,
774
+ (o, s) => {
775
+ const { translated: l, meta: u } = r(s);
776
+ return u && a.push(u), l;
777
+ }
778
+ );
779
+ return {
780
+ meta: a.length ? h(a) : null,
781
+ translated: (i != null ? i : "").trim()
782
+ };
783
+ };
746
784
  export {
747
- Q as DATA_COUNT_PER_BATCH,
785
+ H as DATA_COUNT_PER_BATCH,
748
786
  C as FIELD_TYPE_OPERATOR_MAP,
749
- F as GetLoadingMsg,
750
- I as GetPartErrMsg,
751
- N as GetQueryResult,
752
- W as GetSafeFormStructure,
753
- h as IsErrorPart,
754
- E as IsFakeMsgPart,
755
- D as IsFileGroupPart,
756
- M as IsFilePart,
757
- O as IsLoadingPart,
787
+ I as GetLoadingMsg,
788
+ B as GetPartErrMsg,
789
+ D as GetQueryResult,
790
+ U as GetSafeFormStructure,
791
+ A as IsErrorPart,
792
+ R as IsFakeMsgPart,
793
+ O as IsFileGroupPart,
794
+ E as IsFilePart,
795
+ F as IsLoadingPart,
758
796
  T as IsQueryResultPart,
759
- J as OPERATOR_LABEL_MAP,
797
+ z as OPERATOR_LABEL_MAP,
760
798
  q as WHITE_LIST_FIELDS_SET,
761
- Y as bsConditionParse2Condition,
762
- X as conditionStringify2bsCondition,
763
- j as createFieldPartsExtractor,
764
- U as createGetFieldJsonInfo,
799
+ V as bsConditionParse2Condition,
800
+ Z as conditionStringify2bsCondition,
801
+ J as createFieldPartsExtractor,
802
+ j as createGetFieldJsonInfo,
765
803
  G as createPartTypeChecker,
766
804
  c as extractTextPartMeta,
767
- $ as getAvailableOperators,
768
- z as getDefaultOperator,
769
- V as getIconUnicode,
770
- B as getMetaErrorMsg,
771
- H as imageUrlToBase64,
772
- K as isHelperCondMet,
773
- Z as mergeConsecutiveTargets,
774
- L as valueNormalizer
805
+ h as flatArr,
806
+ K as getAvailableOperators,
807
+ X as getDefaultOperator,
808
+ te as getIconUnicode,
809
+ L as getMetaErrorMsg,
810
+ $ as imageUrlToBase64,
811
+ Y as isHelperCondMet,
812
+ ee as mergeConsecutiveTargets,
813
+ ne as promptParser,
814
+ Q as safeParseJson,
815
+ W as valueNormalizer
775
816
  };
776
817
  //# 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","../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 ICondition,\n IBsCondition,\n IBsCondItem,\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\n// ── Operator ↔ Bsy method maps ──────────────────────────────────────────────\n\nconst OPERATOR_TO_BS_METHOD: Record<string, string> = {\n eq: 'eq',\n neq: 'ne',\n gt: 'gt',\n gte: 'gte',\n lt: 'lt',\n lte: 'lte',\n contains: 'like',\n not_contains: 'unlike',\n in: 'in',\n nin: 'nin',\n all: 'all',\n empty: 'empty',\n not_empty: 'not_empty',\n range: 'range',\n};\n\nconst BS_METHOD_TO_OPERATOR: Record<string, relationalOperator> = {\n eq: 'eq',\n ne: 'neq',\n gt: 'gt',\n gte: 'gte',\n lt: 'lt',\n lte: 'lte',\n like: 'contains',\n unlike: 'not_contains',\n in: 'in',\n nin: 'nin',\n all: 'all',\n empty: 'empty',\n not_empty: 'not_empty',\n range: 'range',\n};\n\n// ── Public serialization API ────────────────────────────────────────────────\n\nexport function conditionStringify2bsCondition(cond: ICondition): string {\n const rel = cond.quantifier === 'any' ? 'or' : 'and';\n const bsCondItems: IBsCondItem[] = cond.items.map((item) => {\n const method = OPERATOR_TO_BS_METHOD[item.operator] ?? 'eq';\n let value: unknown[];\n if (item.operator === 'range' && isRecord(item.value)) {\n value = [item.value.min, item.value.max];\n } else if (Array.isArray(item.value)) {\n value = item.value;\n } else {\n value = [item.value];\n }\n return {\n field: item.field?.widget?.widgetName ?? '',\n method,\n value,\n type: item.field?.widget?.type,\n };\n });\n return JSON.stringify({ rel, cond: bsCondItems });\n}\n\nexport function bsConditionParse2Condition(str: string): ICondition {\n const bsCond: IBsCondition = JSON.parse(str);\n const quantifier: ICondition['quantifier'] =\n bsCond.rel === 'or' ? 'any' : 'all';\n const items: IConditionItem[] = bsCond.cond.map((bsItem, index) => {\n const operator =\n BS_METHOD_TO_OPERATOR[bsItem.method] ?? 'eq';\n let value: unknown = bsItem.value;\n if (operator === 'range') {\n value = { min: bsItem.value[0], max: bsItem.value[1] };\n } else if (\n ['eq', 'neq', 'contains', 'not_contains', 'gt', 'gte', 'lt', 'lte'].includes(\n operator,\n )\n ) {\n value = bsItem.value[0];\n }\n return {\n id: `${bsItem.field}_${index}`,\n field: {\n label: bsItem.field,\n widget: {\n widgetName: bsItem.field,\n type: (bsItem.type as FieldType) ?? 'unknown',\n value: undefined,\n },\n },\n operator,\n value,\n };\n });\n return { targetName: '', quantifier, items };\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","OPERATOR_TO_BS_METHOD","BS_METHOD_TO_OPERATOR","conditionStringify2bsCondition","cond","rel","bsCondItems","_b","_c","_d","_e","_f","method","bsConditionParse2Condition","str","bsCond","bsItem","index","mergeConsecutiveTargets","arr","minWidth","temp","ICON_UNICODE_MAP","getIconUnicode","name","code"],"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","../src/prompt-parser.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\nexport const safeParseJson = (jsonString: string): any | null => {\n try {\n return JSON.parse(jsonString);\n } catch (e) {\n console.error('Failed to parse JSON:', e);\n return null;\n }\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 ICondition,\n IBsCondition,\n IBsCondItem,\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 if (!helper.enabled) {\n return false;\n }\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\n// ── Operator ↔ Bsy method maps ──────────────────────────────────────────────\n\nconst OPERATOR_TO_BS_METHOD: Record<string, string> = {\n eq: 'eq',\n neq: 'ne',\n gt: 'gt',\n gte: 'gte',\n lt: 'lt',\n lte: 'lte',\n contains: 'like',\n not_contains: 'unlike',\n in: 'in',\n nin: 'nin',\n all: 'all',\n empty: 'empty',\n not_empty: 'not_empty',\n range: 'range',\n};\n\nconst BS_METHOD_TO_OPERATOR: Record<string, relationalOperator> = {\n eq: 'eq',\n ne: 'neq',\n gt: 'gt',\n gte: 'gte',\n lt: 'lt',\n lte: 'lte',\n like: 'contains',\n unlike: 'not_contains',\n in: 'in',\n nin: 'nin',\n all: 'all',\n empty: 'empty',\n not_empty: 'not_empty',\n range: 'range',\n};\n\n// ── Public serialization API ────────────────────────────────────────────────\n\nexport function conditionStringify2bsCondition(cond: ICondition): string {\n const rel = cond.quantifier === 'any' ? 'or' : 'and';\n const bsCondItems: IBsCondItem[] = cond.items.map((item) => {\n const method = OPERATOR_TO_BS_METHOD[item.operator] ?? 'eq';\n let value: unknown[];\n if (item.operator === 'range' && isRecord(item.value)) {\n value = [item.value.min, item.value.max];\n } else if (Array.isArray(item.value)) {\n value = item.value;\n } else {\n value = [item.value];\n }\n return {\n field: item.field?.widget?.widgetName ?? '',\n method,\n value,\n type: item.field?.widget?.type,\n };\n });\n return JSON.stringify({ rel, cond: bsCondItems });\n}\n\nexport function bsConditionParse2Condition(str: string): ICondition {\n const bsCond: IBsCondition = JSON.parse(str);\n const quantifier: ICondition['quantifier'] = bsCond.rel === 'or' ? 'any' : 'all';\n const items: IConditionItem[] = bsCond.cond.map((bsItem, index) => {\n const operator = BS_METHOD_TO_OPERATOR[bsItem.method] ?? 'eq';\n let value: unknown = bsItem.value;\n if (operator === 'range') {\n value = { min: bsItem.value[0], max: bsItem.value[1] };\n } else if (\n ['eq', 'neq', 'contains', 'not_contains', 'gt', 'gte', 'lt', 'lte'].includes(operator)\n ) {\n value = bsItem.value[0];\n }\n return {\n id: `${bsItem.field}_${index}`,\n field: {\n label: bsItem.field,\n widget: {\n widgetName: bsItem.field,\n type: (bsItem.type as FieldType) ?? 'unknown',\n value: undefined,\n },\n },\n operator,\n value,\n };\n });\n return { targetName: '', quantifier, items };\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\nexport function flatArr(arr: Array<unknown>): Array<unknown> {\n const result: Array<unknown> = [];\n for (const item of arr) {\n if (Array.isArray(item)) {\n // 递归展开子数组,并把展开后的元素合并到结果中\n result.push(...flatArr(item));\n } else {\n result.push(item);\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","import { IField, IValueFormHuman } from '@baishuyun/types';\nimport { flatArr } from './array';\n\n// input eg: '${_widget_1782471976291} ${_widget_1782471978145} ahahah'\n// output: '供应商名称 备注 ahahah'\nexport const promptParser = (\n originStrWithFieldNameTpl: string,\n formStructure: Array<IField>,\n widgetValueGetter: (name: string) => IValueFormHuman\n): IValueFormHuman => {\n if (!widgetValueGetter) {\n return {\n translated: '',\n };\n }\n\n const widgetMap = new Map(formStructure.map((f) => [f.widget.widgetName, f.label]));\n\n for (const field of formStructure) {\n if (field.widget.type === 'subform' && field.widget.items) {\n for (const item of field.widget.items) {\n if ('widget' in item && !('options' in item)) {\n const key = `${field.widget.widgetName}.${item.widget.widgetName}`;\n widgetMap.set(key, item.label);\n }\n }\n }\n }\n\n const metaPart: Array<unknown> = [];\n\n const stringPart = originStrWithFieldNameTpl.replace(\n /\\$\\{(_widget_\\d+(?:\\._widget_\\d+)?)\\}/g,\n (_, widgetName) => {\n const { translated, meta } = widgetValueGetter(widgetName);\n\n if (meta) {\n metaPart.push(meta);\n }\n\n return translated;\n }\n );\n\n return {\n meta: metaPart.length ? flatArr(metaPart) : null,\n translated: (stringPart ?? '').trim(),\n };\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","safeParseJson","jsonString","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","OPERATOR_TO_BS_METHOD","BS_METHOD_TO_OPERATOR","conditionStringify2bsCondition","cond","rel","bsCondItems","_b","_c","_d","_e","_f","method","bsConditionParse2Condition","str","bsCond","bsItem","index","mergeConsecutiveTargets","arr","minWidth","temp","flatArr","ICON_UNICODE_MAP","getIconUnicode","name","code","promptParser","originStrWithFieldNameTpl","widgetValueGetter","widgetMap","field","key","metaPart","stringPart","_","translated","meta"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@baishuyun/ai-feat-utils",
3
- "version": "1.0.3",
3
+ "version": "1.1.0",
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.4"
19
+ "@baishuyun/types": "2.1.0"
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.3"
26
+ "@baishuyun/typescript-config": "1.1.0"
27
27
  },
28
28
  "keywords": [],
29
29
  "author": "",
package/dist/array.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export declare function mergeConsecutiveTargets<T>(arr: T[], isTarget: (item: T) => boolean, minWidth?: number): (T | T[])[];
2
- //# sourceMappingURL=array.d.ts.map
@@ -1 +0,0 @@
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"}
@@ -1,2 +0,0 @@
1
- export declare const imageUrlToBase64: (url: string, mediaType?: string) => Promise<string>;
2
- //# sourceMappingURL=attachment.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"attachment.d.ts","sourceRoot":"","sources":["../src/attachment.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,GAAI,KAAK,MAAM,EAAE,kBAAuB,KAAG,OAAO,CAAC,MAAM,CAalF,CAAC"}
@@ -1,9 +0,0 @@
1
- import { FieldType, IAgentHelper, IFormValues, relationalOperator, ICondition } 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
- export declare function conditionStringify2bsCondition(cond: ICondition): string;
8
- export declare function bsConditionParse2Condition(str: string): ICondition;
9
- //# sourceMappingURL=condition.d.ts.map
@@ -1 +0,0 @@
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,EAClB,UAAU,EAGX,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;AAwCD,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAoBvE;AAED,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAgClE"}
@@ -1,2 +0,0 @@
1
- export declare const DATA_COUNT_PER_BATCH = 10;
2
- //# sourceMappingURL=constants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,KAAK,CAAC"}
@@ -1,5 +0,0 @@
1
- import { IFilledField } from '@baishuyun/types';
2
- export declare const createPartTypeChecker: (type: string) => (part: any) => boolean;
3
- export declare const createGetFieldJsonInfo: (type: string) => (part: any) => IFilledField | null;
4
- export declare const createFieldPartsExtractor: (isTarget: (part: any) => boolean) => (part: any) => any[];
5
- //# sourceMappingURL=field-json.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"field-json.d.ts","sourceRoot":"","sources":["../src/field-json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGhD,eAAO,MAAM,qBAAqB,GAC/B,MAAM,MAAM,MACZ,MAAM,GAAG,KAAG,OAGZ,CAAC;AAEJ,eAAO,MAAM,sBAAsB,GAChC,MAAM,MAAM,MACZ,MAAM,GAAG,KAAG,YAAY,GAAG,IAM3B,CAAC;AAEJ,eAAO,MAAM,yBAAyB,GACnC,UAAU,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,MAChC,MAAM,GAAG,KAAG,GAAG,EAIf,CAAC"}
@@ -1,4 +0,0 @@
1
- import { FieldType, IField } from '@baishuyun/types';
2
- export declare const WHITE_LIST_FIELDS_SET: Set<FieldType>;
3
- export declare const GetSafeFormStructure: (formStructure: Array<IField>) => IField[];
4
- //# sourceMappingURL=form-structure.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"form-structure.d.ts","sourceRoot":"","sources":["../src/form-structure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAErD,eAAO,MAAM,qBAAqB,gBAWhC,CAAC;AAEH,eAAO,MAAM,oBAAoB,GAAI,eAAe,KAAK,CAAC,MAAM,CAAC,aAYhE,CAAC"}
@@ -1,13 +0,0 @@
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
@@ -1 +0,0 @@
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 DELETED
@@ -1,11 +0,0 @@
1
- export { extractTextPartMeta } from './text-part';
2
- export * from './part';
3
- export { valueNormalizer } from './value-normalizer';
4
- export { GetSafeFormStructure, WHITE_LIST_FIELDS_SET } from './form-structure';
5
- export { createPartTypeChecker, createGetFieldJsonInfo, createFieldPartsExtractor, } from './field-json';
6
- export { DATA_COUNT_PER_BATCH } from './constants';
7
- export { imageUrlToBase64 } from './attachment';
8
- export { OPERATOR_LABEL_MAP, FIELD_TYPE_OPERATOR_MAP, getAvailableOperators, getDefaultOperator, isHelperCondMet, conditionStringify2bsCondition, bsConditionParse2Condition, } from './condition';
9
- export * from './array';
10
- export { getIconUnicode } from './iconfont';
11
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
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,EACf,8BAA8B,EAC9B,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AAErB,cAAc,SAAS,CAAC;AAExB,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC"}
package/dist/part.d.ts DELETED
@@ -1,12 +0,0 @@
1
- import { IQueryResult } from '@baishuyun/types';
2
- export declare const IsErrorPart: (part: any) => boolean;
3
- export declare const IsFakeMsgPart: (part: any) => boolean;
4
- export declare const IsFilePart: (part: any) => boolean;
5
- export declare const IsQueryResultPart: (part: any) => boolean;
6
- export declare const GetQueryResult: (part: any) => IQueryResult | null;
7
- export declare const IsFileGroupPart: (part: any) => boolean;
8
- export declare const IsLoadingPart: (part: any) => boolean;
9
- export declare const GetLoadingMsg: (part: any) => string;
10
- export declare const GetPartErrMsg: (part: any) => string;
11
- export declare const getMetaErrorMsg: (part: any) => string;
12
- //# sourceMappingURL=part.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"part.d.ts","sourceRoot":"","sources":["../src/part.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGhD,eAAO,MAAM,WAAW,GAAI,MAAM,GAAG,KAAG,OAOvC,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,MAAM,GAAG,KAAG,OAGzC,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,MAAM,GAAG,KAAG,OAEtC,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,MAAM,GAAG,KAAG,OAG7C,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,MAAM,GAAG,KAAG,YAAY,GAAG,IAczD,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,MAAM,GAAG,YAaxC,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,MAAM,GAAG,KAAG,OAGzC,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,MAAM,GAAG,KAAG,MAOzC,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,MAAM,GAAG,KAAG,MAWzC,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,MAAM,GAAG,KAAG,MAO3C,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare const extractTextPartMeta: (part: any) => any;
2
- //# sourceMappingURL=text-part.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"text-part.d.ts","sourceRoot":"","sources":["../src/text-part.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,GAAI,MAAM,GAAG,QAyB5C,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare const valueNormalizer: (value: string | string[]) => string;
2
- //# sourceMappingURL=value-normalizer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"value-normalizer.d.ts","sourceRoot":"","sources":["../src/value-normalizer.ts"],"names":[],"mappings":"AAwBA,eAAO,MAAM,eAAe,GAAI,OAAO,MAAM,GAAG,MAAM,EAAE,KAAG,MAW1D,CAAC"}