@skopon-cool/form-sdk 0.2.2 → 0.2.4

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.
package/dist/index.js CHANGED
@@ -1,31 +1,31 @@
1
1
  import './form-sdk.css';
2
- import { jsx as l, jsxs as k } from "react/jsx-runtime";
3
- import { createContext as Le, useContext as $e, useCallback as te, useSyncExternalStore as Bt, useMemo as q, useState as _, useRef as L, useEffect as R, forwardRef as wt, useImperativeHandle as qt } from "react";
4
- import { Spin as De, Button as Se, Typography as D, Avatar as Ot, Tag as re, Select as Re, Checkbox as Vt, Radio as jt, Switch as Lt, TimePicker as $t, DatePicker as Dt, Upload as Te, Input as Ie, InputNumber as Ht, ConfigProvider as Kt, Tooltip as ne } from "antd";
5
- import { ReloadOutlined as it, FileTextOutlined as at, UserOutlined as Gt, FileImageOutlined as Jt, FileExcelOutlined as Yt, FileOutlined as st, PictureOutlined as Xt, SoundOutlined as Wt, VideoCameraOutlined as Qt } from "@ant-design/icons";
6
- import { createBinderlessComponentImplementation as V, basicCatalog as fe, A2uiSurface as lt } from "@a2ui/react/v0_9";
2
+ import { jsx as c, jsxs as _ } from "react/jsx-runtime";
3
+ import { createContext as De, useContext as He, useCallback as ne, useSyncExternalStore as Wt, useMemo as w, useState as F, useRef as q, useEffect as R, forwardRef as Xt, useImperativeHandle as Qt } from "react";
4
+ import { Spin as Ke, Button as Se, Typography as V, Avatar as Zt, Tag as oe, Select as Be, Checkbox as en, Radio as tn, Switch as nn, TimePicker as rn, DatePicker as on, Upload as Ie, Input as Ne, InputNumber as an, ConfigProvider as sn, Tooltip as re } from "antd";
5
+ import { ReloadOutlined as pt, FileTextOutlined as ft, UserOutlined as ln, FileImageOutlined as cn, FileExcelOutlined as un, FileOutlined as ht, PictureOutlined as mn, SoundOutlined as dn, VideoCameraOutlined as pn } from "@ant-design/icons";
6
+ import { createBinderlessComponentImplementation as j, basicCatalog as he, A2uiSurface as gt } from "@a2ui/react/v0_9";
7
7
  import { z as f } from "zod";
8
- import { Catalog as Zt, MessageProcessor as ct } from "@a2ui/web_core/v0_9";
9
- import { injectBasicCatalogStyles as ut } from "@a2ui/web_core/v0_9/basic_catalog";
10
- import { injectStyles as pt } from "@a2ui/react/styles";
11
- import Ze from "dayjs";
12
- const Po = "v0.9", en = [
8
+ import { Catalog as fn, MessageProcessor as yt } from "@a2ui/web_core/v0_9";
9
+ import { injectBasicCatalogStyles as vt } from "@a2ui/web_core/v0_9/basic_catalog";
10
+ import { injectStyles as bt } from "@a2ui/react/styles";
11
+ import st from "dayjs";
12
+ const Go = "v0.9", hn = [
13
13
  "huge",
14
14
  "large",
15
15
  "medium",
16
16
  "small",
17
17
  "icon"
18
18
  ];
19
- function he(e) {
19
+ function ge(e) {
20
20
  return e === "image" || e === "video" || e === "audio";
21
21
  }
22
- function be(e) {
22
+ function ke(e) {
23
23
  return e === "heading" || e === "paragraph";
24
24
  }
25
- function W(e) {
26
- return !be(e) && !he(e);
25
+ function Y(e) {
26
+ return !ke(e) && !ge(e);
27
27
  }
28
- function tn() {
28
+ function gn() {
29
29
  if (typeof crypto < "u" && typeof crypto.randomUUID == "function")
30
30
  return crypto.randomUUID();
31
31
  if (typeof crypto < "u" && typeof crypto.getRandomValues == "function") {
@@ -39,11 +39,11 @@ function tn() {
39
39
  return (e === "x" ? t : t & 3 | 8).toString(16);
40
40
  });
41
41
  }
42
- function ie(e) {
43
- const t = tn().replace(/-/g, "").slice(0, 8);
42
+ function ae(e) {
43
+ const t = gn().replace(/-/g, "").slice(0, 8);
44
44
  return `${e}${t}`;
45
45
  }
46
- const mt = [
46
+ const St = [
47
47
  { value: "image/*", label: "图片" },
48
48
  { value: "video/*", label: "视频" },
49
49
  { value: "audio/*", label: "音频" },
@@ -54,7 +54,7 @@ const mt = [
54
54
  { value: "text/plain", label: "纯文本" },
55
55
  { value: "application/zip", label: "ZIP 压缩包" },
56
56
  { value: "application/x-rar-compressed", label: "RAR 压缩包" }
57
- ], nn = {
57
+ ], yn = {
58
58
  "image/*": ["image/*"],
59
59
  "video/*": ["video/*"],
60
60
  "audio/*": ["audio/*"],
@@ -74,7 +74,7 @@ const mt = [
74
74
  "text/plain": ["text/plain"],
75
75
  "application/zip": ["application/zip"],
76
76
  "application/x-rar-compressed": ["application/x-rar-compressed"]
77
- }, rn = {
77
+ }, vn = {
78
78
  "image/*": [".jpg", ".jpeg", ".png", ".gif", ".webp", ".svg"],
79
79
  "video/*": [".mp4", ".mov", ".avi", ".webm"],
80
80
  "audio/*": [".mp3", ".wav", ".ogg", ".m4a"],
@@ -85,14 +85,14 @@ const mt = [
85
85
  "text/plain": [".txt"],
86
86
  "application/zip": [".zip", ".7z"],
87
87
  "application/x-rar-compressed": [".rar"]
88
- }, on = {
88
+ }, bn = {
89
89
  "application/msword": "office/word",
90
90
  "application/vnd.openxmlformats-officedocument.wordprocessingml.document": "office/word",
91
91
  "application/vnd.ms-excel": "office/excel",
92
92
  "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": "office/excel",
93
93
  "application/vnd.ms-powerpoint": "office/ppt",
94
94
  "application/vnd.openxmlformats-officedocument.presentationml.presentation": "office/ppt"
95
- }, He = [
95
+ }, Ge = [
96
96
  { value: ".jpg", label: ".jpg" },
97
97
  { value: ".jpeg", label: ".jpeg" },
98
98
  { value: ".png", label: ".png" },
@@ -118,124 +118,124 @@ const mt = [
118
118
  { value: ".zip", label: ".zip" },
119
119
  { value: ".rar", label: ".rar" },
120
120
  { value: ".7z", label: ".7z" }
121
- ], an = Object.fromEntries(
122
- mt.map((e) => [e.value, e.label])
123
- ), sn = Object.fromEntries(
124
- He.map((e) => [e.value, e.label])
125
- ), ln = new Set(mt.map((e) => e.value)), cn = new Set(
126
- He.map((e) => e.value)
121
+ ], Sn = Object.fromEntries(
122
+ St.map((e) => [e.value, e.label])
123
+ ), kn = Object.fromEntries(
124
+ Ge.map((e) => [e.value, e.label])
125
+ ), Cn = new Set(St.map((e) => e.value)), An = new Set(
126
+ Ge.map((e) => e.value)
127
127
  );
128
- function un(e) {
128
+ function xn(e) {
129
129
  const t = e.trim();
130
- return t ? ln.has(t) ? t : on[t] ?? null : null;
130
+ return t ? Cn.has(t) ? t : bn[t] ?? null : null;
131
131
  }
132
- function pn(e) {
132
+ function Tn(e) {
133
133
  return Array.isArray(e) ? e.map((t) => {
134
134
  const n = t.trim().toLowerCase();
135
135
  return n ? n.startsWith(".") ? n : `.${n}` : "";
136
136
  }).filter(Boolean) : [];
137
137
  }
138
- function ae(e) {
138
+ function se(e) {
139
139
  if (!Array.isArray(e)) return [];
140
140
  const t = [], n = /* @__PURE__ */ new Set();
141
141
  for (const r of e) {
142
- const o = un(r);
142
+ const o = xn(r);
143
143
  o && !n.has(o) && (n.add(o), t.push(o));
144
144
  }
145
145
  return t;
146
146
  }
147
- function mn(e) {
148
- const t = ae(e), n = [];
147
+ function _n(e) {
148
+ const t = se(e), n = [];
149
149
  for (const r of t)
150
- n.push(...nn[r] ?? [r]);
150
+ n.push(...yn[r] ?? [r]);
151
151
  return n;
152
152
  }
153
- function dn(e) {
154
- const t = ae(e);
153
+ function In(e) {
154
+ const t = se(e);
155
155
  if (t.length === 0) return [];
156
156
  const n = /* @__PURE__ */ new Set();
157
157
  for (const r of t)
158
- for (const o of rn[r] ?? [])
158
+ for (const o of vn[r] ?? [])
159
159
  n.add(o);
160
- return He.filter((r) => n.has(r.value));
160
+ return Ge.filter((r) => n.has(r.value));
161
161
  }
162
- function Ke(e, t) {
163
- const n = pn(t), r = ae(e);
162
+ function Je(e, t) {
163
+ const n = Tn(t), r = se(e);
164
164
  if (r.length === 0)
165
- return n.filter((i) => cn.has(i));
165
+ return n.filter((i) => An.has(i));
166
166
  const o = new Set(
167
- dn(r).map((i) => i.value)
167
+ In(r).map((i) => i.value)
168
168
  );
169
169
  return n.filter((i) => o.has(i));
170
170
  }
171
- function fn(e, t) {
172
- const n = mn(e), r = Ke(e, t), o = [...n, ...r];
171
+ function Nn(e, t) {
172
+ const n = _n(e), r = Je(e, t), o = [...n, ...r];
173
173
  return o.length > 0 ? o.join(",") : void 0;
174
174
  }
175
- function hn(e, t) {
176
- const n = ae(e), r = Ke(
175
+ function Mn(e, t) {
176
+ const n = se(e), r = Je(
177
177
  n,
178
178
  t
179
179
  ), o = [
180
- ...n.map((i) => an[i] ?? i),
181
- ...r.map((i) => sn[i] ?? i)
180
+ ...n.map((i) => Sn[i] ?? i),
181
+ ...r.map((i) => kn[i] ?? i)
182
182
  ];
183
183
  return o.length === 0 ? null : o.join("、");
184
184
  }
185
- const gn = [
185
+ const Fn = [
186
186
  "video",
187
187
  "audio",
188
188
  "image",
189
189
  "file",
190
190
  "spreadsheet",
191
191
  "document"
192
- ], yn = new Set(gn);
193
- function vn(e) {
194
- return e && yn.has(e) ? e : "file";
192
+ ], Un = new Set(Fn);
193
+ function Pn(e) {
194
+ return e && Un.has(e) ? e : "file";
195
195
  }
196
- function se(e) {
197
- return typeof e == "string" && en.includes(e) ? e : "medium";
196
+ function le(e) {
197
+ return typeof e == "string" && hn.includes(e) ? e : "medium";
198
198
  }
199
- function Sn(e, t) {
199
+ function En(e, t) {
200
200
  var o;
201
201
  const n = Math.max(1, t);
202
202
  let r = [];
203
203
  return Array.isArray(e.mediaUrls) ? r = e.mediaUrls.map((i) => String(i).trim()) : (o = e.mediaUrl) != null && o.trim() && (r = [e.mediaUrl.trim()]), r.length === 0 ? [""] : r.slice(0, n);
204
204
  }
205
- function bn(e) {
205
+ function zn(e) {
206
206
  var t;
207
207
  return Array.isArray(e.mediaUrls) ? e.mediaUrls.map((n) => n.trim()).filter(Boolean) : (t = e.mediaUrl) != null && t.trim() ? [e.mediaUrl.trim()] : [];
208
208
  }
209
- function Cn(e) {
210
- return `form-media-size-${se(e)}`;
209
+ function Rn(e) {
210
+ return `form-media-size-${le(e)}`;
211
211
  }
212
- function xn(e) {
213
- return `form-media-preview form-media-list ${Cn(e)}`;
212
+ function wn(e) {
213
+ return `form-media-preview form-media-list ${Rn(e)}`;
214
214
  }
215
- const kn = 10;
216
- function Ge(e) {
215
+ const Bn = 10;
216
+ function Ye(e) {
217
217
  return e && typeof e == "object" && !Array.isArray(e) ? e : {};
218
218
  }
219
- function le(e) {
219
+ function ce(e) {
220
220
  return e === !0 || e === "true" || e === 1 || e === "1";
221
221
  }
222
- function et(e, t = 1) {
222
+ function lt(e, t = 1) {
223
223
  const n = typeof e == "number" ? e : Number(e);
224
224
  return Number.isFinite(n) ? Math.max(0, Math.floor(n)) : t;
225
225
  }
226
- function pe(e, t = 1) {
226
+ function de(e, t = 1) {
227
227
  const n = typeof e == "number" ? e : Number(e);
228
228
  return Number.isFinite(n) ? Math.max(1, Math.floor(n)) : t;
229
229
  }
230
- function An(e, t) {
230
+ function qn(e, t) {
231
231
  if (t !== void 0)
232
- return e === "toggle" ? le(t) : e === "multiselect" || e === "checkbox" || e === "resume_multiselect" || e === "case_multiselect" ? Array.isArray(t) ? t.map(String) : typeof t == "string" && t ? [t] : [] : typeof t == "boolean" ? t ? "true" : "false" : Array.isArray(t) ? t.map(String) : String(t);
232
+ return e === "toggle" ? ce(t) : e === "multiselect" || e === "checkbox" || e === "resume_multiselect" || e === "case_multiselect" ? Array.isArray(t) ? t.map(String) : typeof t == "string" && t ? [t] : [] : typeof t == "boolean" ? t ? "true" : "false" : Array.isArray(t) ? t.map(String) : String(t);
233
233
  }
234
- function Tn(e) {
234
+ function On(e) {
235
235
  const t = typeof (e == null ? void 0 : e.pageSize) == "number" ? e.pageSize : Number(e == null ? void 0 : e.pageSize), n = Number.isFinite(t) && t >= 1 && t <= 100 ? Math.floor(t) : 20, r = typeof (e == null ? void 0 : e.agentKind) == "string" && e.agentKind.trim() ? e.agentKind.trim() : void 0, o = typeof (e == null ? void 0 : e.agentUniqueId) == "string" && e.agentUniqueId.trim() ? e.agentUniqueId.trim() : void 0, i = typeof (e == null ? void 0 : e.flowType) == "string" && e.flowType.trim() ? e.flowType.trim() : void 0, a = typeof (e == null ? void 0 : e.category) == "string" && e.category.trim() ? e.category.trim() : void 0, s = Array.isArray(e == null ? void 0 : e.flowUniqueIds) ? e.flowUniqueIds.map(String).filter(Boolean) : [];
236
236
  return { agentKind: r, agentUniqueId: o, flowType: i, category: a, flowUniqueIds: s, pageSize: n };
237
237
  }
238
- function In(e) {
238
+ function jn(e) {
239
239
  const t = typeof (e == null ? void 0 : e.pageSize) == "number" ? e.pageSize : Number(e == null ? void 0 : e.pageSize), n = Number.isFinite(t) && t >= 1 && t <= 100 ? Math.floor(t) : 20;
240
240
  return {
241
241
  names: Array.isArray(e == null ? void 0 : e.names) ? e.names.map(String).filter(Boolean) : [],
@@ -244,51 +244,51 @@ function In(e) {
244
244
  pageSize: n
245
245
  };
246
246
  }
247
- function Nn(e) {
247
+ function Ln(e) {
248
248
  if (e.type !== "case_singleselect") return e;
249
249
  const t = typeof e.defaultValue == "string" && e.defaultValue.trim() ? [e.defaultValue.trim()] : Array.isArray(e.defaultValue) ? e.defaultValue.map(String).filter(Boolean) : [];
250
250
  return { ...e, type: "case_multiselect", defaultValue: t };
251
251
  }
252
- function Mn(e) {
252
+ function Vn(e) {
253
253
  var o, i;
254
- const t = Nn(e), n = ae(t.fileAcceptTypes), r = t.type;
254
+ const t = Ln(e), n = se(t.fileAcceptTypes), r = t.type;
255
255
  return {
256
- id: ((o = t.id) == null ? void 0 : o.trim()) || ie("block-"),
256
+ id: ((o = t.id) == null ? void 0 : o.trim()) || ae("block-"),
257
257
  type: r,
258
258
  name: ((i = t.name) == null ? void 0 : i.trim()) || void 0,
259
259
  label: t.label ?? "",
260
260
  placeholder: t.placeholder ?? "",
261
261
  help: t.help ?? "",
262
262
  required: t.required === !0,
263
- mediaUrls: he(r) ? Sn(t, kn) : void 0,
264
- mediaSize: he(r) ? se(t.mediaSize) : void 0,
263
+ mediaUrls: ge(r) ? En(t, Bn) : void 0,
264
+ mediaSize: ge(r) ? le(t.mediaSize) : void 0,
265
265
  fileAcceptTypes: n,
266
- fileAcceptExtensions: Ke(
266
+ fileAcceptExtensions: Je(
267
267
  n,
268
268
  t.fileAcceptExtensions
269
269
  ),
270
- filePlaceholderIcon: vn(t.filePlaceholderIcon),
271
- fileMinCount: r === "file" ? et(t.fileMinCount, 1) : void 0,
272
- fileMaxCount: r === "file" ? et(t.fileMaxCount, 1) : void 0,
273
- defaultValue: An(r, t.defaultValue),
270
+ filePlaceholderIcon: Pn(t.filePlaceholderIcon),
271
+ fileMinCount: r === "file" ? lt(t.fileMinCount, 1) : void 0,
272
+ fileMaxCount: r === "file" ? lt(t.fileMaxCount, 1) : void 0,
273
+ defaultValue: qn(r, t.defaultValue),
274
274
  options: Array.isArray(t.options) ? t.options.map((a, s) => {
275
- var c, u;
275
+ var l, u;
276
276
  return {
277
- value: ((c = a.value) == null ? void 0 : c.trim()) || `option_${s + 1}`,
277
+ value: ((l = a.value) == null ? void 0 : l.trim()) || `option_${s + 1}`,
278
278
  label: ((u = a.label) == null ? void 0 : u.trim()) || `选项 ${s + 1}`
279
279
  };
280
280
  }) : void 0,
281
281
  resumeEnableRefresh: r === "resume_multiselect" ? t.resumeEnableRefresh !== !1 : void 0,
282
- resumeMinCount: r === "resume_multiselect" && t.resumeMinCount != null ? pe(t.resumeMinCount, 1) : void 0,
283
- resumeMaxCount: r === "resume_multiselect" && t.resumeMaxCount != null ? pe(t.resumeMaxCount, 1) : void 0,
284
- resumeFilter: r === "resume_multiselect" ? In(t.resumeFilter) : void 0,
282
+ resumeMinCount: r === "resume_multiselect" && t.resumeMinCount != null ? de(t.resumeMinCount, 1) : void 0,
283
+ resumeMaxCount: r === "resume_multiselect" && t.resumeMaxCount != null ? de(t.resumeMaxCount, 1) : void 0,
284
+ resumeFilter: r === "resume_multiselect" ? jn(t.resumeFilter) : void 0,
285
285
  caseEnableRefresh: r === "case_multiselect" ? t.caseEnableRefresh !== !1 : void 0,
286
- caseMinCount: r === "case_multiselect" && t.caseMinCount != null ? pe(t.caseMinCount, 1) : void 0,
287
- caseMaxCount: r === "case_multiselect" && t.caseMaxCount != null ? pe(t.caseMaxCount, 1) : void 0,
288
- caseFilter: r === "case_multiselect" ? Tn(t.caseFilter) : void 0
286
+ caseMinCount: r === "case_multiselect" && t.caseMinCount != null ? de(t.caseMinCount, 1) : void 0,
287
+ caseMaxCount: r === "case_multiselect" && t.caseMaxCount != null ? de(t.caseMaxCount, 1) : void 0,
288
+ caseFilter: r === "case_multiselect" ? On(t.caseFilter) : void 0
289
289
  };
290
290
  }
291
- function ge(e) {
291
+ function ye(e) {
292
292
  return {
293
293
  title: e.title ?? "",
294
294
  description: e.description ?? "",
@@ -296,18 +296,18 @@ function ge(e) {
296
296
  jsonSchema: e.jsonSchema ?? {}
297
297
  };
298
298
  }
299
- function ee(e) {
299
+ function W(e) {
300
300
  if (!e || !Array.isArray(e.blocks))
301
- return ge({ title: "", description: "", blocks: [], jsonSchema: {} });
302
- const t = e.blocks.map(Mn);
303
- return ge({
301
+ return ye({ title: "", description: "", blocks: [], jsonSchema: {} });
302
+ const t = e.blocks.map(Vn);
303
+ return ye({
304
304
  title: typeof e.title == "string" ? e.title : "",
305
305
  description: typeof e.description == "string" ? e.description : "",
306
306
  blocks: t,
307
- jsonSchema: Ge(e.jsonSchema)
307
+ jsonSchema: Ye(e.jsonSchema)
308
308
  });
309
309
  }
310
- function Fn(e) {
310
+ function $n(e) {
311
311
  const t = typeof e.pageSize == "number" ? e.pageSize : Number(e.pageSize), n = typeof e.agentKind == "string" && e.agentKind.trim() ? e.agentKind.trim() : void 0, r = typeof e.agentUniqueId == "string" && e.agentUniqueId.trim() ? e.agentUniqueId.trim() : void 0, o = typeof e.flowType == "string" && e.flowType.trim() ? e.flowType.trim() : void 0, i = typeof e.category == "string" && e.category.trim() ? e.category.trim() : void 0, a = Array.isArray(e.flowUniqueIds) ? e.flowUniqueIds.map(String).filter(Boolean) : [];
312
312
  return {
313
313
  agentKind: n,
@@ -318,14 +318,14 @@ function Fn(e) {
318
318
  pageSize: Number.isFinite(t) && t >= 1 && t <= 100 ? Math.floor(t) : 20
319
319
  };
320
320
  }
321
- function tt(e) {
321
+ function ct(e) {
322
322
  if (e == null) return;
323
323
  const t = typeof e == "number" ? e : Number(e);
324
324
  if (!(!Number.isFinite(t) || t < 1))
325
325
  return Math.floor(t);
326
326
  }
327
- function _n(e, t) {
328
- var a, s, c, u, d, m;
327
+ function Dn(e, t) {
328
+ var a, s, l, u, d, m;
329
329
  const { id: n, label: r, path: o, withData: i } = t;
330
330
  return i({
331
331
  id: n,
@@ -337,7 +337,7 @@ function _n(e, t) {
337
337
  caseFilter: {
338
338
  agentKind: (a = e.caseFilter) == null ? void 0 : a.agentKind,
339
339
  agentUniqueId: (s = e.caseFilter) == null ? void 0 : s.agentUniqueId,
340
- flowType: (c = e.caseFilter) == null ? void 0 : c.flowType,
340
+ flowType: (l = e.caseFilter) == null ? void 0 : l.flowType,
341
341
  category: (u = e.caseFilter) == null ? void 0 : u.category,
342
342
  flowUniqueIds: ((d = e.caseFilter) == null ? void 0 : d.flowUniqueIds) ?? [],
343
343
  pageSize: ((m = e.caseFilter) == null ? void 0 : m.pageSize) ?? 20
@@ -347,7 +347,7 @@ function _n(e, t) {
347
347
  value: { path: o }
348
348
  });
349
349
  }
350
- function Pn(e, t, n) {
350
+ function Hn(e, t, n) {
351
351
  const r = n.nameFromValue(e.value), o = {
352
352
  ...t("case_multiselect"),
353
353
  name: r,
@@ -355,32 +355,32 @@ function Pn(e, t, n) {
355
355
  }, i = n.asLiteral(e.placeholder);
356
356
  i && (o.placeholder = i);
357
357
  const a = n.asLiteral(e.help);
358
- a && (o.help = a), e.caseFilter && typeof e.caseFilter == "object" && (o.caseFilter = Fn(e.caseFilter));
359
- const s = tt(e.minCount);
358
+ a && (o.help = a), e.caseFilter && typeof e.caseFilter == "object" && (o.caseFilter = $n(e.caseFilter));
359
+ const s = ct(e.minCount);
360
360
  s !== void 0 && (o.caseMinCount = s);
361
- const c = tt(e.maxCount);
362
- return c !== void 0 && (o.caseMaxCount = c), o;
361
+ const l = ct(e.maxCount);
362
+ return l !== void 0 && (o.caseMaxCount = l), o;
363
363
  }
364
- const dt = Le({ interactive: !0 });
365
- function Be({
364
+ const kt = De({ interactive: !0 });
365
+ function qe({
366
366
  interactive: e,
367
367
  children: t
368
368
  }) {
369
- return /* @__PURE__ */ l(dt.Provider, { value: { interactive: e }, children: t });
369
+ return /* @__PURE__ */ c(kt.Provider, { value: { interactive: e }, children: t });
370
370
  }
371
- function K() {
372
- return $e(dt);
371
+ function H() {
372
+ return He(kt);
373
373
  }
374
- function ft(e) {
374
+ function Ct(e) {
375
375
  return e && typeof e == "object" && "path" in e && String(e.path ?? "").trim() || null;
376
376
  }
377
- function nt(e, t = "value") {
377
+ function ut(e, t = "value") {
378
378
  const r = e.componentModel.properties[t];
379
- if (!(!ft(r) || r === void 0))
379
+ if (!(!Ct(r) || r === void 0))
380
380
  return e.dataContext.resolveDynamicValue(r);
381
381
  }
382
- function G(e, t = "value") {
383
- const r = e.componentModel.properties[t], o = ft(r), i = te(
382
+ function K(e, t = "value") {
383
+ const r = e.componentModel.properties[t], o = Ct(r), i = ne(
384
384
  (u) => {
385
385
  if (!o || r === void 0) return () => {
386
386
  };
@@ -388,76 +388,76 @@ function G(e, t = "value") {
388
388
  return () => d.unsubscribe();
389
389
  },
390
390
  [e, r, o]
391
- ), a = te(() => {
391
+ ), a = ne(() => {
392
392
  if (!(!o || r === void 0))
393
393
  return e.dataContext.resolveDynamicValue(r);
394
- }, [e, r, o]), s = Bt(i, a, a), c = te(
394
+ }, [e, r, o]), s = Wt(i, a, a), l = ne(
395
395
  (u) => {
396
396
  !o || !r || typeof r != "object" || !("path" in r) || e.dataContext.set(String(r.path), u);
397
397
  },
398
398
  [e, r, o]
399
399
  );
400
- return { value: s, setValue: c, hasBinding: !!o };
400
+ return { value: s, setValue: l, hasBinding: !!o };
401
401
  }
402
- function oe(e) {
402
+ function ie(e) {
403
403
  if (typeof e == "string") return e || void 0;
404
404
  if (typeof e == "number") return String(e);
405
405
  }
406
406
  function O(e) {
407
407
  return Array.isArray(e) ? e.map(String) : typeof e == "string" && e ? [e] : [];
408
408
  }
409
- function ht(e, t) {
409
+ function At(e, t) {
410
410
  return t ? Array.isArray(e) ? null : O(e) : Array.isArray(e) ? e.length > 0 ? String(e[0]) : "" : e == null || typeof e == "string" || typeof e == "number" ? null : "";
411
411
  }
412
- function ye(e) {
412
+ function ve(e) {
413
413
  if (e == null) return;
414
414
  const t = typeof e == "number" ? e : Number(e);
415
415
  if (!(!Number.isFinite(t) || t < 1))
416
416
  return Math.floor(t);
417
417
  }
418
- function gt(e, t, n, r) {
418
+ function xt(e, t, n, r) {
419
419
  if (e.includes(t)) {
420
420
  const i = e.filter((a) => a !== t);
421
421
  return n !== void 0 && i.length < n ? null : i;
422
422
  }
423
423
  return r !== void 0 && e.length >= r ? null : [...e, t];
424
424
  }
425
- function yt(e, t, n, r, o) {
425
+ function Tt(e, t, n, r, o) {
426
426
  if (!n) return !0;
427
427
  const i = e.includes(t);
428
428
  return !!(!i && o !== void 0 && e.length >= o || i && r !== void 0 && e.length <= r);
429
429
  }
430
- function vt(e, t) {
430
+ function _t(e, t) {
431
431
  return t === void 0 || e.length <= t ? null : e.slice(0, t);
432
432
  }
433
- const St = Le(null);
434
- function we({
433
+ const It = De(null);
434
+ function Oe({
435
435
  caseSearch: e,
436
436
  children: t
437
437
  }) {
438
- return /* @__PURE__ */ l(St.Provider, { value: e ?? null, children: t });
438
+ return /* @__PURE__ */ c(It.Provider, { value: e ?? null, children: t });
439
439
  }
440
- function Un() {
441
- return $e(St);
440
+ function Kn() {
441
+ return He(It);
442
442
  }
443
- function Ne(e) {
443
+ function Me(e) {
444
444
  return typeof e == "string" ? e : "";
445
445
  }
446
- function Me(e) {
446
+ function Fe(e) {
447
447
  if (!e || typeof e != "object")
448
448
  return { flowUniqueIds: [], pageSize: 20 };
449
- const t = e, n = typeof t.pageSize == "number" ? t.pageSize : Number(t.pageSize), r = Number.isFinite(n) && n >= 1 && n <= 100 ? Math.floor(n) : 20, o = typeof t.agentKind == "string" && t.agentKind.trim() ? t.agentKind.trim() : void 0, i = typeof t.agentUniqueId == "string" && t.agentUniqueId.trim() ? t.agentUniqueId.trim() : void 0, a = typeof t.flowType == "string" && t.flowType.trim() ? t.flowType.trim() : void 0, s = typeof t.category == "string" && t.category.trim() ? t.category.trim() : void 0, c = Array.isArray(t.flowUniqueIds) ? t.flowUniqueIds.map(String).filter(Boolean) : [];
450
- return { agentKind: o, agentUniqueId: i, flowType: a, category: s, flowUniqueIds: c, pageSize: r };
449
+ const t = e, n = typeof t.pageSize == "number" ? t.pageSize : Number(t.pageSize), r = Number.isFinite(n) && n >= 1 && n <= 100 ? Math.floor(n) : 20, o = typeof t.agentKind == "string" && t.agentKind.trim() ? t.agentKind.trim() : void 0, i = typeof t.agentUniqueId == "string" && t.agentUniqueId.trim() ? t.agentUniqueId.trim() : void 0, a = typeof t.flowType == "string" && t.flowType.trim() ? t.flowType.trim() : void 0, s = typeof t.category == "string" && t.category.trim() ? t.category.trim() : void 0, l = Array.isArray(t.flowUniqueIds) ? t.flowUniqueIds.map(String).filter(Boolean) : [];
450
+ return { agentKind: o, agentUniqueId: i, flowType: a, category: s, flowUniqueIds: l, pageSize: r };
451
451
  }
452
- function Fe(e) {
452
+ function Ue(e) {
453
453
  var r;
454
454
  const t = !!((r = e.flowUniqueIds) != null && r.length), n = !!(e.agentUniqueId && e.flowType && e.category);
455
455
  return t || n;
456
456
  }
457
- function zn(e) {
457
+ function Gn(e) {
458
458
  return JSON.stringify(e);
459
459
  }
460
- const En = {
460
+ const Jn = {
461
461
  name: "SkoponCaseSelect",
462
462
  schema: f.object({
463
463
  label: f.any().optional(),
@@ -470,13 +470,13 @@ const En = {
470
470
  value: f.any().optional()
471
471
  }).passthrough()
472
472
  };
473
- function Rn({
473
+ function Yn({
474
474
  item: e,
475
475
  selected: t,
476
476
  disabled: n,
477
477
  onToggle: r
478
478
  }) {
479
- return /* @__PURE__ */ k(
479
+ return /* @__PURE__ */ _(
480
480
  "button",
481
481
  {
482
482
  type: "button",
@@ -484,11 +484,11 @@ function Rn({
484
484
  disabled: n,
485
485
  onClick: r,
486
486
  children: [
487
- /* @__PURE__ */ l("div", { className: "skopon-resume-select-card-avatar", children: /* @__PURE__ */ l(at, { style: { fontSize: 24, color: "var(--color-primary, #208368)" } }) }),
488
- /* @__PURE__ */ k("div", { className: "skopon-resume-select-card-body", children: [
489
- /* @__PURE__ */ l("div", { className: "skopon-resume-select-card-name", children: e.name }),
490
- e.description ? /* @__PURE__ */ l("div", { className: "skopon-resume-select-card-desc", children: e.description }) : null,
491
- /* @__PURE__ */ k("div", { className: "skopon-resume-select-card-meta", children: [
487
+ /* @__PURE__ */ c("div", { className: "skopon-resume-select-card-avatar", children: /* @__PURE__ */ c(ft, { style: { fontSize: 24, color: "var(--color-primary, #208368)" } }) }),
488
+ /* @__PURE__ */ _("div", { className: "skopon-resume-select-card-body", children: [
489
+ /* @__PURE__ */ c("div", { className: "skopon-resume-select-card-name", children: e.name }),
490
+ e.description ? /* @__PURE__ */ c("div", { className: "skopon-resume-select-card-desc", children: e.description }) : null,
491
+ /* @__PURE__ */ _("div", { className: "skopon-resume-select-card-meta", children: [
492
492
  e.caseUniqueId,
493
493
  e.platform ? ` · ${e.platform}` : "",
494
494
  e.link ? ` · ${e.link}` : ""
@@ -498,105 +498,105 @@ function Rn({
498
498
  }
499
499
  );
500
500
  }
501
- function Bn({ context: e }) {
502
- const { interactive: t } = K(), n = Un(), { value: r, setValue: o } = G(e), i = e.componentModel.properties, a = Ne(i.label), s = Ne(i.placeholder), c = Ne(i.help), u = i.enableRefresh !== !1, d = ye(i.minCount), m = ye(i.maxCount), b = q(() => Me(i.caseFilter), [i.caseFilter]), g = zn(b), [A, N] = _(1), [v, p] = _(!1), [h, x] = _(""), [y, C] = _([]), [M, E] = _(0), [$, Q] = _(b.pageSize ?? 20), j = L(0), w = O(r);
501
+ function Wn({ context: e }) {
502
+ const { interactive: t } = H(), n = Kn(), { value: r, setValue: o } = K(e), i = e.componentModel.properties, a = Me(i.label), s = Me(i.placeholder), l = Me(i.help), u = i.enableRefresh !== !1, d = ve(i.minCount), m = ve(i.maxCount), S = w(() => Fe(i.caseFilter), [i.caseFilter]), h = Gn(S), [A, N] = F(1), [b, p] = F(!1), [v, g] = F(""), [C, U] = F([]), [k, x] = F(0), [X, L] = F(S.pageSize ?? 20), P = q(0), B = O(r);
503
503
  R(() => {
504
- const S = vt(w, m);
505
- S !== null && o(S);
506
- }, [m, w, o]);
507
- const J = q(() => n ? Fe(b) ? h || s || "暂无匹配的案例" : "未配置案例列表筛选条件" : "未配置案例搜索服务", [n, b, h, s]), Y = te(
508
- async (S) => {
509
- const F = Me(JSON.parse(g)), B = ++j.current;
510
- if (!n || !Fe(F)) {
511
- C([]), E(0), x(""), p(!1);
504
+ const y = _t(B, m);
505
+ y !== null && o(y);
506
+ }, [m, B, o]);
507
+ const $ = w(() => n ? Ue(S) ? v || s || "暂无匹配的案例" : "未配置案例列表筛选条件" : "未配置案例搜索服务", [n, S, v, s]), G = ne(
508
+ async (y) => {
509
+ const T = Fe(JSON.parse(h)), E = ++P.current;
510
+ if (!n || !Ue(T)) {
511
+ U([]), x(0), g(""), p(!1);
512
512
  return;
513
513
  }
514
- p(!0), x("");
514
+ p(!0), g("");
515
515
  try {
516
- const I = await n({ filter: F, page: S });
517
- if (B !== j.current) return;
518
- C(I.list), E(I.total), N(I.page), Q(I.pageSize);
519
- } catch (I) {
520
- if (B !== j.current) return;
521
- C([]), E(0), x(I instanceof Error ? I.message : "加载案例列表失败");
516
+ const M = await n({ filter: T, page: y });
517
+ if (E !== P.current) return;
518
+ U(M.list), x(M.total), N(M.page), L(M.pageSize);
519
+ } catch (M) {
520
+ if (E !== P.current) return;
521
+ U([]), x(0), g(M instanceof Error ? M.message : "加载案例列表失败");
522
522
  } finally {
523
- B === j.current && p(!1);
523
+ E === P.current && p(!1);
524
524
  }
525
525
  },
526
- [n, g]
526
+ [n, h]
527
527
  );
528
528
  R(() => {
529
- N(1), Y(1);
530
- }, [g, Y]);
531
- const P = (S) => {
529
+ N(1), G(1);
530
+ }, [h, G]);
531
+ const Q = (y) => {
532
532
  if (!t) return;
533
- const F = gt(
534
- w,
535
- S,
533
+ const T = xt(
534
+ B,
535
+ y,
536
536
  d,
537
537
  m
538
538
  );
539
- F !== null && o(F);
540
- }, U = () => {
541
- const S = Me(JSON.parse(g)), F = $ || S.pageSize || 20, B = Math.max(1, Math.ceil(M / F)), I = A >= B ? 1 : A + 1;
542
- Y(I);
539
+ T !== null && o(T);
540
+ }, Z = () => {
541
+ const y = Fe(JSON.parse(h)), T = X || y.pageSize || 20, E = Math.max(1, Math.ceil(k / T)), M = A >= E ? 1 : A + 1;
542
+ G(M);
543
543
  };
544
- return /* @__PURE__ */ k("div", { className: "form-block-preview skopon-resume-select", children: [
545
- a ? /* @__PURE__ */ l("div", { className: "form-block-preview-label", children: a }) : null,
546
- v && y.length === 0 ? /* @__PURE__ */ k("div", { className: "skopon-resume-select-status", children: [
547
- /* @__PURE__ */ l(De, { size: "small" }),
544
+ return /* @__PURE__ */ _("div", { className: "form-block-preview skopon-resume-select", children: [
545
+ a ? /* @__PURE__ */ c("div", { className: "form-block-preview-label", children: a }) : null,
546
+ b && C.length === 0 ? /* @__PURE__ */ _("div", { className: "skopon-resume-select-status", children: [
547
+ /* @__PURE__ */ c(Ke, { size: "small" }),
548
548
  " 加载案例…"
549
549
  ] }) : null,
550
- !v && y.length === 0 ? /* @__PURE__ */ l("div", { className: "skopon-resume-select-empty", children: J }) : null,
551
- y.length > 0 ? /* @__PURE__ */ l("div", { className: "skopon-resume-select-list", children: y.map((S) => /* @__PURE__ */ l(
552
- Rn,
550
+ !b && C.length === 0 ? /* @__PURE__ */ c("div", { className: "skopon-resume-select-empty", children: $ }) : null,
551
+ C.length > 0 ? /* @__PURE__ */ c("div", { className: "skopon-resume-select-list", children: C.map((y) => /* @__PURE__ */ c(
552
+ Yn,
553
553
  {
554
- item: S,
555
- selected: w.includes(S.caseUniqueId),
556
- disabled: yt(
557
- w,
558
- S.caseUniqueId,
554
+ item: y,
555
+ selected: B.includes(y.caseUniqueId),
556
+ disabled: Tt(
557
+ B,
558
+ y.caseUniqueId,
559
559
  t,
560
560
  d,
561
561
  m
562
562
  ),
563
- onToggle: () => P(S.caseUniqueId)
563
+ onToggle: () => Q(y.caseUniqueId)
564
564
  },
565
- S.caseUniqueId
565
+ y.caseUniqueId
566
566
  )) }) : null,
567
- u && n && Fe(b) ? /* @__PURE__ */ l("div", { className: "skopon-resume-select-actions", children: /* @__PURE__ */ l(
567
+ u && n && Ue(S) ? /* @__PURE__ */ c("div", { className: "skopon-resume-select-actions", children: /* @__PURE__ */ c(
568
568
  Se,
569
569
  {
570
570
  type: "default",
571
571
  size: "small",
572
- icon: /* @__PURE__ */ l(it, {}),
573
- loading: v,
572
+ icon: /* @__PURE__ */ c(pt, {}),
573
+ loading: b,
574
574
  disabled: !t,
575
- onClick: U,
575
+ onClick: Z,
576
576
  children: "换一批"
577
577
  }
578
578
  ) }) : null,
579
- c ? /* @__PURE__ */ l(D.Text, { type: "secondary", className: "form-block-preview-help", children: c }) : null
579
+ l ? /* @__PURE__ */ c(V.Text, { type: "secondary", className: "form-block-preview-help", children: l }) : null
580
580
  ] });
581
581
  }
582
- const wn = V(
583
- En,
584
- Bn
585
- ), qn = {
582
+ const Xn = j(
583
+ Jn,
584
+ Wn
585
+ ), Qn = {
586
586
  type: "case_multiselect",
587
587
  componentName: "SkoponCaseSelect",
588
- toComponent: _n,
589
- fromComponent: Pn,
590
- catalogComponents: [wn]
588
+ toComponent: Dn,
589
+ fromComponent: Hn,
590
+ catalogComponents: [Xn]
591
591
  };
592
- function rt(e) {
592
+ function mt(e) {
593
593
  if (e == null) return;
594
594
  const t = typeof e == "number" ? e : Number(e);
595
595
  if (!(!Number.isFinite(t) || t < 1))
596
596
  return Math.floor(t);
597
597
  }
598
- function On(e, t) {
599
- var a, s, c, u;
598
+ function Zn(e, t) {
599
+ var a, s, l, u;
600
600
  const { id: n, label: r, path: o, withData: i } = t;
601
601
  return i({
602
602
  id: n,
@@ -608,7 +608,7 @@ function On(e, t) {
608
608
  resumeFilter: {
609
609
  names: ((a = e.resumeFilter) == null ? void 0 : a.names) ?? [],
610
610
  agentUniqueIds: ((s = e.resumeFilter) == null ? void 0 : s.agentUniqueIds) ?? [],
611
- resumeUniqueIds: ((c = e.resumeFilter) == null ? void 0 : c.resumeUniqueIds) ?? [],
611
+ resumeUniqueIds: ((l = e.resumeFilter) == null ? void 0 : l.resumeUniqueIds) ?? [],
612
612
  pageSize: ((u = e.resumeFilter) == null ? void 0 : u.pageSize) ?? 20
613
613
  },
614
614
  ...e.resumeMinCount !== void 0 ? { minCount: e.resumeMinCount } : {},
@@ -616,7 +616,7 @@ function On(e, t) {
616
616
  value: { path: o }
617
617
  });
618
618
  }
619
- function Vn(e, t, n) {
619
+ function er(e, t, n) {
620
620
  const r = n.nameFromValue(e.value), o = {
621
621
  ...t("resume_multiselect"),
622
622
  name: r,
@@ -633,34 +633,34 @@ function Vn(e, t, n) {
633
633
  pageSize: typeof u.pageSize == "number" ? u.pageSize : 20
634
634
  };
635
635
  }
636
- const s = rt(e.minCount);
636
+ const s = mt(e.minCount);
637
637
  s !== void 0 && (o.resumeMinCount = s);
638
- const c = rt(e.maxCount);
639
- return c !== void 0 && (o.resumeMaxCount = c), o;
638
+ const l = mt(e.maxCount);
639
+ return l !== void 0 && (o.resumeMaxCount = l), o;
640
640
  }
641
- const bt = Le(null);
642
- function qe({
641
+ const Nt = De(null);
642
+ function je({
643
643
  resumeSearch: e,
644
644
  children: t
645
645
  }) {
646
- return /* @__PURE__ */ l(bt.Provider, { value: e ?? null, children: t });
646
+ return /* @__PURE__ */ c(Nt.Provider, { value: e ?? null, children: t });
647
647
  }
648
- function jn() {
649
- return $e(bt);
648
+ function tr() {
649
+ return He(Nt);
650
650
  }
651
- function _e(e) {
651
+ function Pe(e) {
652
652
  return typeof e == "string" ? e : "";
653
653
  }
654
- function Pe(e) {
654
+ function Ee(e) {
655
655
  if (!e || typeof e != "object")
656
656
  return { names: [], agentUniqueIds: [], resumeUniqueIds: [], pageSize: 20 };
657
657
  const t = e, n = Array.isArray(t.names) ? t.names.map(String).filter(Boolean) : [], r = Array.isArray(t.agentUniqueIds) ? t.agentUniqueIds.map(String).filter(Boolean) : [], o = Array.isArray(t.resumeUniqueIds) ? t.resumeUniqueIds.map(String).filter(Boolean) : [], i = typeof t.pageSize == "number" ? t.pageSize : Number(t.pageSize), a = Number.isFinite(i) && i >= 1 && i <= 100 ? Math.floor(i) : 20;
658
658
  return { names: n, agentUniqueIds: r, resumeUniqueIds: o, pageSize: a };
659
659
  }
660
- function Ln(e) {
660
+ function nr(e) {
661
661
  return JSON.stringify(e);
662
662
  }
663
- const $n = {
663
+ const rr = {
664
664
  name: "SkoponResumeSelect",
665
665
  schema: f.object({
666
666
  label: f.any().optional(),
@@ -672,40 +672,40 @@ const $n = {
672
672
  maxCount: f.any().optional(),
673
673
  value: f.any().optional()
674
674
  }).passthrough()
675
- }, Dn = 3, Hn = 2;
676
- function Ue(e, t) {
677
- const n = (t ?? []).filter(Boolean), r = n.slice(0, Dn), o = n.length - r.length;
678
- return /* @__PURE__ */ k("div", { className: "skopon-resume-select-card-tags", children: [
679
- /* @__PURE__ */ l("span", { className: "skopon-resume-select-card-tags-label", children: e }),
680
- n.length > 0 ? /* @__PURE__ */ k("div", { className: "skopon-resume-select-card-tags-list", children: [
681
- r.map((i) => /* @__PURE__ */ l(re, { className: "skopon-resume-select-card-tag", children: i }, i)),
682
- o > 0 ? /* @__PURE__ */ k(re, { className: "skopon-resume-select-card-tag", children: [
675
+ }, or = 3, ir = 2;
676
+ function ze(e, t) {
677
+ const n = (t ?? []).filter(Boolean), r = n.slice(0, or), o = n.length - r.length;
678
+ return /* @__PURE__ */ _("div", { className: "skopon-resume-select-card-tags", children: [
679
+ /* @__PURE__ */ c("span", { className: "skopon-resume-select-card-tags-label", children: e }),
680
+ n.length > 0 ? /* @__PURE__ */ _("div", { className: "skopon-resume-select-card-tags-list", children: [
681
+ r.map((i) => /* @__PURE__ */ c(oe, { className: "skopon-resume-select-card-tag", children: i }, i)),
682
+ o > 0 ? /* @__PURE__ */ _(oe, { className: "skopon-resume-select-card-tag", children: [
683
683
  "+",
684
684
  o
685
685
  ] }) : null
686
- ] }) : /* @__PURE__ */ l("span", { className: "skopon-resume-select-card-tags-empty", children: "暂无" })
686
+ ] }) : /* @__PURE__ */ c("span", { className: "skopon-resume-select-card-tags-empty", children: "暂无" })
687
687
  ] });
688
688
  }
689
- function Kn(e) {
690
- return /* @__PURE__ */ k("div", { className: "skopon-resume-select-card-field", children: [
691
- /* @__PURE__ */ l("span", { className: "skopon-resume-select-card-tags-label", children: "满意度" }),
692
- /* @__PURE__ */ l("span", { className: "skopon-resume-select-card-field-value", children: typeof e == "number" ? `${e}%` : "暂无" })
689
+ function ar(e) {
690
+ return /* @__PURE__ */ _("div", { className: "skopon-resume-select-card-field", children: [
691
+ /* @__PURE__ */ c("span", { className: "skopon-resume-select-card-tags-label", children: "满意度" }),
692
+ /* @__PURE__ */ c("span", { className: "skopon-resume-select-card-field-value", children: typeof e == "number" ? `${e}%` : "暂无" })
693
693
  ] });
694
694
  }
695
- function Gn({ work: e }) {
696
- return /* @__PURE__ */ k("div", { className: "skopon-resume-select-card-work", children: [
697
- /* @__PURE__ */ l("div", { className: "skopon-resume-select-card-work-cover", children: e.coverUrl ? /* @__PURE__ */ l("img", { src: e.coverUrl, alt: "", className: "skopon-resume-select-card-work-img" }) : /* @__PURE__ */ l(Jt, { className: "skopon-resume-select-card-work-placeholder" }) }),
698
- /* @__PURE__ */ l("div", { className: "skopon-resume-select-card-work-title", children: e.title || "未命名作品" })
695
+ function sr({ work: e }) {
696
+ return /* @__PURE__ */ _("div", { className: "skopon-resume-select-card-work", children: [
697
+ /* @__PURE__ */ c("div", { className: "skopon-resume-select-card-work-cover", children: e.coverUrl ? /* @__PURE__ */ c("img", { src: e.coverUrl, alt: "", className: "skopon-resume-select-card-work-img" }) : /* @__PURE__ */ c(cn, { className: "skopon-resume-select-card-work-placeholder" }) }),
698
+ /* @__PURE__ */ c("div", { className: "skopon-resume-select-card-work-title", children: e.title || "未命名作品" })
699
699
  ] });
700
700
  }
701
- function Jn({
701
+ function lr({
702
702
  item: e,
703
703
  selected: t,
704
704
  disabled: n,
705
705
  onToggle: r
706
706
  }) {
707
- const o = (e.works ?? []).slice(0, Hn);
708
- return /* @__PURE__ */ k(
707
+ const o = (e.works ?? []).slice(0, ir);
708
+ return /* @__PURE__ */ _(
709
709
  "button",
710
710
  {
711
711
  type: "button",
@@ -713,183 +713,183 @@ function Jn({
713
713
  disabled: n,
714
714
  onClick: r,
715
715
  children: [
716
- /* @__PURE__ */ l(
717
- Ot,
716
+ /* @__PURE__ */ c(
717
+ Zt,
718
718
  {
719
719
  size: 48,
720
720
  src: e.avatarUrl || void 0,
721
- icon: e.avatarUrl ? void 0 : /* @__PURE__ */ l(Gt, {}),
721
+ icon: e.avatarUrl ? void 0 : /* @__PURE__ */ c(ln, {}),
722
722
  className: "skopon-resume-select-card-avatar"
723
723
  }
724
724
  ),
725
- /* @__PURE__ */ l("div", { className: "skopon-resume-select-card-name", children: e.name || "未命名简历" }),
726
- /* @__PURE__ */ k("div", { className: "skopon-resume-select-card-body", children: [
727
- Kn(e.satisfaction),
728
- Ue("性格", e.personality),
729
- Ue("专长", e.specialties),
730
- Ue("擅长领域", e.traits),
731
- /* @__PURE__ */ k("div", { className: "skopon-resume-select-card-works", children: [
732
- /* @__PURE__ */ l("span", { className: "skopon-resume-select-card-works-label", children: "过往作品" }),
733
- o.length > 0 ? /* @__PURE__ */ l("div", { className: "skopon-resume-select-card-works-list", children: o.map((i, a) => /* @__PURE__ */ l(Gn, { work: i }, `${i.title}-${a}`)) }) : /* @__PURE__ */ l("div", { className: "skopon-resume-select-card-works-empty", children: "暂无作品" })
725
+ /* @__PURE__ */ c("div", { className: "skopon-resume-select-card-name", children: e.name || "未命名简历" }),
726
+ /* @__PURE__ */ _("div", { className: "skopon-resume-select-card-body", children: [
727
+ ar(e.satisfaction),
728
+ ze("性格", e.personality),
729
+ ze("专长", e.specialties),
730
+ ze("擅长领域", e.traits),
731
+ /* @__PURE__ */ _("div", { className: "skopon-resume-select-card-works", children: [
732
+ /* @__PURE__ */ c("span", { className: "skopon-resume-select-card-works-label", children: "过往作品" }),
733
+ o.length > 0 ? /* @__PURE__ */ c("div", { className: "skopon-resume-select-card-works-list", children: o.map((i, a) => /* @__PURE__ */ c(sr, { work: i }, `${i.title}-${a}`)) }) : /* @__PURE__ */ c("div", { className: "skopon-resume-select-card-works-empty", children: "暂无作品" })
734
734
  ] })
735
735
  ] })
736
736
  ]
737
737
  }
738
738
  );
739
739
  }
740
- function Yn({ context: e }) {
741
- const { interactive: t } = K(), n = jn(), { value: r, setValue: o } = G(e), i = e.componentModel.properties, a = _e(i.label), s = _e(i.placeholder), c = _e(i.help), u = i.enableRefresh !== !1, d = ye(i.minCount), m = ye(i.maxCount), b = q(() => Pe(i.resumeFilter), [i.resumeFilter]), g = Ln(b), [A, N] = _(1), [v, p] = _(!1), [h, x] = _(""), [y, C] = _([]), [M, E] = _(0), [$, Q] = _(b.pageSize ?? 20), j = L(0), w = O(r);
740
+ function cr({ context: e }) {
741
+ const { interactive: t } = H(), n = tr(), { value: r, setValue: o } = K(e), i = e.componentModel.properties, a = Pe(i.label), s = Pe(i.placeholder), l = Pe(i.help), u = i.enableRefresh !== !1, d = ve(i.minCount), m = ve(i.maxCount), S = w(() => Ee(i.resumeFilter), [i.resumeFilter]), h = nr(S), [A, N] = F(1), [b, p] = F(!1), [v, g] = F(""), [C, U] = F([]), [k, x] = F(0), [X, L] = F(S.pageSize ?? 20), P = q(0), B = O(r);
742
742
  R(() => {
743
- const S = vt(w, m);
744
- S !== null && o(S);
745
- }, [m, w, o]);
746
- const J = te(
747
- async (S) => {
748
- const F = Pe(JSON.parse(g)), B = ++j.current;
743
+ const y = _t(B, m);
744
+ y !== null && o(y);
745
+ }, [m, B, o]);
746
+ const $ = ne(
747
+ async (y) => {
748
+ const T = Ee(JSON.parse(h)), E = ++P.current;
749
749
  if (!n) {
750
- C([]), E(0), x("未配置简历搜索服务"), p(!1);
750
+ U([]), x(0), g("未配置简历搜索服务"), p(!1);
751
751
  return;
752
752
  }
753
- p(!0), x("");
753
+ p(!0), g("");
754
754
  try {
755
- const I = await n({ filter: F, page: S });
756
- if (B !== j.current) return;
757
- C(I.list), E(I.total), N(I.page), Q(I.pageSize);
758
- } catch (I) {
759
- if (B !== j.current) return;
760
- C([]), E(0), x(I instanceof Error ? I.message : "加载简历列表失败");
755
+ const M = await n({ filter: T, page: y });
756
+ if (E !== P.current) return;
757
+ U(M.list), x(M.total), N(M.page), L(M.pageSize);
758
+ } catch (M) {
759
+ if (E !== P.current) return;
760
+ U([]), x(0), g(M instanceof Error ? M.message : "加载简历列表失败");
761
761
  } finally {
762
- B === j.current && p(!1);
762
+ E === P.current && p(!1);
763
763
  }
764
764
  },
765
- [n, g]
765
+ [n, h]
766
766
  );
767
767
  R(() => {
768
- N(1), J(1);
769
- }, [g, J]);
770
- const Y = (S) => {
768
+ N(1), $(1);
769
+ }, [h, $]);
770
+ const G = (y) => {
771
771
  if (!t) return;
772
- const F = gt(
773
- w,
774
- S,
772
+ const T = xt(
773
+ B,
774
+ y,
775
775
  d,
776
776
  m
777
777
  );
778
- F !== null && o(F);
779
- }, P = () => {
780
- const S = Pe(JSON.parse(g)), F = $ || S.pageSize || 20, B = Math.max(1, Math.ceil(M / F)), I = A >= B ? 1 : A + 1;
781
- J(I);
782
- }, U = s || "暂无匹配的简历";
783
- return /* @__PURE__ */ k("div", { className: "form-block-preview skopon-resume-select", children: [
784
- a ? /* @__PURE__ */ l("div", { className: "form-block-preview-label", children: a }) : null,
785
- v && y.length === 0 ? /* @__PURE__ */ k("div", { className: "skopon-resume-select-status", children: [
786
- /* @__PURE__ */ l(De, { size: "small" }),
778
+ T !== null && o(T);
779
+ }, Q = () => {
780
+ const y = Ee(JSON.parse(h)), T = X || y.pageSize || 20, E = Math.max(1, Math.ceil(k / T)), M = A >= E ? 1 : A + 1;
781
+ $(M);
782
+ }, Z = s || "暂无匹配的简历";
783
+ return /* @__PURE__ */ _("div", { className: "form-block-preview skopon-resume-select", children: [
784
+ a ? /* @__PURE__ */ c("div", { className: "form-block-preview-label", children: a }) : null,
785
+ b && C.length === 0 ? /* @__PURE__ */ _("div", { className: "skopon-resume-select-status", children: [
786
+ /* @__PURE__ */ c(Ke, { size: "small" }),
787
787
  " 加载简历…"
788
788
  ] }) : null,
789
- !v && h ? /* @__PURE__ */ l(D.Text, { type: "danger", className: "skopon-resume-select-status", children: h }) : null,
790
- !v && !h && y.length === 0 ? /* @__PURE__ */ l("div", { className: "skopon-resume-select-empty", children: U }) : null,
791
- y.length > 0 ? /* @__PURE__ */ l("div", { className: "skopon-resume-select-list", children: y.map((S) => /* @__PURE__ */ l(
792
- Jn,
789
+ !b && v ? /* @__PURE__ */ c(V.Text, { type: "danger", className: "skopon-resume-select-status", children: v }) : null,
790
+ !b && !v && C.length === 0 ? /* @__PURE__ */ c("div", { className: "skopon-resume-select-empty", children: Z }) : null,
791
+ C.length > 0 ? /* @__PURE__ */ c("div", { className: "skopon-resume-select-list", children: C.map((y) => /* @__PURE__ */ c(
792
+ lr,
793
793
  {
794
- item: S,
795
- selected: w.includes(S.resumeUniqueId),
796
- disabled: yt(
797
- w,
798
- S.resumeUniqueId,
794
+ item: y,
795
+ selected: B.includes(y.resumeUniqueId),
796
+ disabled: Tt(
797
+ B,
798
+ y.resumeUniqueId,
799
799
  t,
800
800
  d,
801
801
  m
802
802
  ),
803
- onToggle: () => Y(S.resumeUniqueId)
803
+ onToggle: () => G(y.resumeUniqueId)
804
804
  },
805
- S.resumeUniqueId
805
+ y.resumeUniqueId
806
806
  )) }) : null,
807
- u && n ? /* @__PURE__ */ l("div", { className: "skopon-resume-select-actions", children: /* @__PURE__ */ l(
807
+ u && n ? /* @__PURE__ */ c("div", { className: "skopon-resume-select-actions", children: /* @__PURE__ */ c(
808
808
  Se,
809
809
  {
810
810
  type: "default",
811
811
  size: "small",
812
- icon: /* @__PURE__ */ l(it, {}),
813
- loading: v,
812
+ icon: /* @__PURE__ */ c(pt, {}),
813
+ loading: b,
814
814
  disabled: !t,
815
- onClick: P,
815
+ onClick: Q,
816
816
  children: "换一批"
817
817
  }
818
818
  ) }) : null,
819
- c ? /* @__PURE__ */ l(D.Text, { type: "secondary", className: "form-block-preview-help", children: c }) : null
819
+ l ? /* @__PURE__ */ c(V.Text, { type: "secondary", className: "form-block-preview-help", children: l }) : null
820
820
  ] });
821
821
  }
822
- const Xn = V(
823
- $n,
824
- Yn
825
- ), Wn = {
822
+ const ur = j(
823
+ rr,
824
+ cr
825
+ ), mr = {
826
826
  type: "resume_multiselect",
827
827
  componentName: "SkoponResumeSelect",
828
- toComponent: On,
829
- fromComponent: Vn,
830
- catalogComponents: [Xn]
831
- }, Ce = [Wn, qn], Qn = new Map(
828
+ toComponent: Zn,
829
+ fromComponent: er,
830
+ catalogComponents: [ur]
831
+ }, Ce = [mr, Qn], dr = new Map(
832
832
  Ce.map((e) => [e.type, e])
833
- ), Zn = new Map(
833
+ ), pr = new Map(
834
834
  Ce.map((e) => [e.componentName, e])
835
835
  );
836
- function er(e) {
837
- return Qn.get(e);
836
+ function fr(e) {
837
+ return dr.get(e);
838
838
  }
839
- function tr(e) {
840
- return Zn.get(e);
839
+ function hr(e) {
840
+ return pr.get(e);
841
841
  }
842
- function nr() {
842
+ function gr() {
843
843
  return Ce.flatMap((e) => e.catalogComponents);
844
844
  }
845
- function rr() {
845
+ function yr() {
846
846
  return Ce.map((e) => e.componentName);
847
847
  }
848
- const ve = "root", Oe = "__title__", Ve = "__desc__", Je = "^[^@\\s]+@[^@\\s]+\\.[^@\\s]+$";
849
- function or(e) {
848
+ const be = "root", Le = "__title__", Ve = "__desc__", We = "^[^@\\s]+@[^@\\s]+\\.[^@\\s]+$";
849
+ function vr(e) {
850
850
  return `/${e}`;
851
851
  }
852
- function ot(e) {
852
+ function dt(e) {
853
853
  return e && typeof e == "object" && "path" in e ? String(e.path ?? "").replace(/^\//, "") : "";
854
854
  }
855
855
  function z(e) {
856
856
  if (typeof e == "string") return e;
857
857
  }
858
- function ir(e) {
859
- const t = e.id || ie("a2-"), n = e.type === "video" ? "video" : e.type === "audio" ? "audio" : "image";
858
+ function br(e) {
859
+ const t = e.id || ae("a2-"), n = e.type === "video" ? "video" : e.type === "audio" ? "audio" : "image";
860
860
  return {
861
861
  id: t,
862
862
  component: "SkoponMedia",
863
863
  mediaType: n,
864
- urls: bn(e),
865
- mediaSize: se(e.mediaSize),
864
+ urls: zn(e),
865
+ mediaSize: le(e.mediaSize),
866
866
  label: e.label ?? "",
867
867
  help: e.help ?? "",
868
868
  placeholder: e.placeholder ?? ""
869
869
  };
870
870
  }
871
- function ar(e) {
871
+ function Sr(e) {
872
872
  if (Array.isArray(e.urls))
873
873
  return e.urls.map((n) => String(n).trim()).filter(Boolean);
874
874
  const t = z(e.url);
875
875
  return t != null && t.trim() ? [t.trim()] : [];
876
876
  }
877
- function me(e, t, n) {
878
- const r = typeof e.id == "string" ? e.id : ie("block-"), o = ar(e), i = z(e.label) ?? z(e.description) ?? n, a = z(e.help), s = z(e.placeholder), c = se(e.mediaSize);
877
+ function pe(e, t, n) {
878
+ const r = typeof e.id == "string" ? e.id : ae("block-"), o = Sr(e), i = z(e.label) ?? z(e.description) ?? n, a = z(e.help), s = z(e.placeholder), l = le(e.mediaSize);
879
879
  return {
880
880
  id: r,
881
881
  type: t,
882
882
  label: i,
883
883
  ...a ? { help: a } : {},
884
884
  ...s ? { placeholder: s } : {},
885
- mediaSize: c,
885
+ mediaSize: l,
886
886
  mediaUrls: o.length > 0 ? o : [""]
887
887
  };
888
888
  }
889
- function sr(e) {
889
+ function kr(e) {
890
890
  switch (e.type) {
891
891
  case "toggle":
892
- return le(e.defaultValue);
892
+ return ce(e.defaultValue);
893
893
  case "multiselect":
894
894
  case "checkbox":
895
895
  case "resume_multiselect":
@@ -903,11 +903,11 @@ function sr(e) {
903
903
  return typeof e.defaultValue == "string" ? e.defaultValue : "";
904
904
  }
905
905
  }
906
- function lr(e) {
906
+ function Cr(e) {
907
907
  var u;
908
- const t = e.id || ie("a2-"), n = e.label ?? "", r = ((u = e.name) == null ? void 0 : u.trim()) || "", o = r ? or(r) : void 0, i = (e.options ?? []).map((d) => ({ label: d.label, value: d.value })), a = (d) => r ? { node: d, dataKey: r, dataValue: sr(e) } : { node: d }, s = { id: t, label: n, name: r, path: o, withData: a }, c = er(e.type);
909
- if (c)
910
- return c.toComponent(e, s);
908
+ const t = e.id || ae("a2-"), n = e.label ?? "", r = ((u = e.name) == null ? void 0 : u.trim()) || "", o = r ? vr(r) : void 0, i = (e.options ?? []).map((d) => ({ label: d.label, value: d.value })), a = (d) => r ? { node: d, dataKey: r, dataValue: kr(e) } : { node: d }, s = { id: t, label: n, name: r, path: o, withData: a }, l = fr(e.type);
909
+ if (l)
910
+ return l.toComponent(e, s);
911
911
  switch (e.type) {
912
912
  case "heading":
913
913
  return { node: { id: t, component: "Text", text: n, variant: "h3" } };
@@ -930,7 +930,7 @@ function lr(e) {
930
930
  component: "TextField",
931
931
  label: n,
932
932
  variant: "shortText",
933
- validationRegexp: Je,
933
+ validationRegexp: We,
934
934
  ...e.placeholder ? { placeholder: e.placeholder } : {},
935
935
  value: { path: o }
936
936
  });
@@ -1016,7 +1016,7 @@ function lr(e) {
1016
1016
  case "image":
1017
1017
  case "video":
1018
1018
  case "audio":
1019
- return { node: ir(e) };
1019
+ return { node: br(e) };
1020
1020
  case "file":
1021
1021
  return a({
1022
1022
  id: t,
@@ -1033,31 +1033,31 @@ function lr(e) {
1033
1033
  return { node: null };
1034
1034
  }
1035
1035
  }
1036
- function je(e) {
1036
+ function $e(e) {
1037
1037
  if (!e || !Array.isArray(e.components) || e.components.length === 0) return !0;
1038
- const t = e.components.find((r) => r.id === ve);
1038
+ const t = e.components.find((r) => r.id === be);
1039
1039
  if (!t) return e.components.length === 0;
1040
1040
  const n = t.children;
1041
1041
  return !Array.isArray(n) || n.length === 0;
1042
1042
  }
1043
- function Ct(e, t) {
1043
+ function Mt(e, t) {
1044
1044
  const n = [], r = [], o = {}, i = (t == null ? void 0 : t.includeHeader) !== !1, a = (e.title ?? "").trim(), s = (e.description ?? "").trim();
1045
- i && a && (n.push({ id: Oe, component: "Text", text: a, variant: "h2" }), r.push(Oe)), i && s && (n.push({ id: Ve, component: "Text", text: s, variant: "body" }), r.push(Ve));
1045
+ i && a && (n.push({ id: Le, component: "Text", text: a, variant: "h2" }), r.push(Le)), i && s && (n.push({ id: Ve, component: "Text", text: s, variant: "body" }), r.push(Ve));
1046
1046
  for (const d of e.blocks ?? []) {
1047
- const { node: m, dataKey: b, dataValue: g } = lr(d);
1048
- m && (n.push(m), r.push(m.id), b && (o[b] = g));
1047
+ const { node: m, dataKey: S, dataValue: h } = Cr(d);
1048
+ m && (n.push(m), r.push(m.id), S && (o[S] = h));
1049
1049
  }
1050
- n.unshift({ id: ve, component: "Column", children: r });
1051
- const c = { root: ve, components: n, dataModel: o }, u = t == null ? void 0 : t.styleId;
1052
- return u !== void 0 && (c.surfaceProperties = { styleId: u ?? null }), c;
1050
+ n.unshift({ id: be, component: "Column", children: r });
1051
+ const l = { root: be, components: n, dataModel: o }, u = t == null ? void 0 : t.styleId;
1052
+ return u !== void 0 && (l.surfaceProperties = { styleId: u ?? null }), l;
1053
1053
  }
1054
- function cr(e) {
1054
+ function Ar(e) {
1055
1055
  const t = /* @__PURE__ */ new Map();
1056
1056
  for (const n of e.components ?? [])
1057
1057
  n && typeof n.id == "string" && t.set(n.id, n);
1058
1058
  return t;
1059
1059
  }
1060
- function ze(e) {
1060
+ function Re(e) {
1061
1061
  const t = e.options;
1062
1062
  return Array.isArray(t) ? t.map((n) => {
1063
1063
  if (!n || typeof n != "object") return null;
@@ -1068,29 +1068,29 @@ function ze(e) {
1068
1068
  };
1069
1069
  }).filter((n) => !!n) : [];
1070
1070
  }
1071
- function ur(e) {
1072
- const t = typeof e.id == "string" ? e.id : ie("block-"), n = String(e.component ?? ""), r = z(e.label) ?? z(e.text) ?? "", o = ot(e.value), i = (s) => ({ id: t, type: s, label: r }), a = tr(n);
1071
+ function xr(e) {
1072
+ const t = typeof e.id == "string" ? e.id : ae("block-"), n = String(e.component ?? ""), r = z(e.label) ?? z(e.text) ?? "", o = dt(e.value), i = (s) => ({ id: t, type: s, label: r }), a = hr(n);
1073
1073
  if (a)
1074
- return a.fromComponent(e, i, { asLiteral: z, nameFromValue: ot });
1074
+ return a.fromComponent(e, i, { asLiteral: z, nameFromValue: dt });
1075
1075
  switch (n) {
1076
1076
  case "Text": {
1077
- const s = String(e.variant ?? "body"), c = /^h[1-6]$/i.test(s) || s === "title" || s === "subtitle";
1078
- return { id: t, type: c ? "heading" : "paragraph", label: r };
1077
+ const s = String(e.variant ?? "body"), l = /^h[1-6]$/i.test(s) || s === "title" || s === "subtitle";
1078
+ return { id: t, type: l ? "heading" : "paragraph", label: r };
1079
1079
  }
1080
1080
  case "TextField": {
1081
1081
  const s = String(e.variant ?? "shortText");
1082
- let c = "text";
1083
- s === "longText" ? c = "textarea" : s === "number" ? c = "number" : z(e.validationRegexp) === Je && (c = "email");
1084
- const u = { ...i(c), name: o }, d = z(e.placeholder);
1082
+ let l = "text";
1083
+ s === "longText" ? l = "textarea" : s === "number" ? l = "number" : z(e.validationRegexp) === We && (l = "email");
1084
+ const u = { ...i(l), name: o }, d = z(e.placeholder);
1085
1085
  return d && (u.placeholder = d), u;
1086
1086
  }
1087
1087
  case "CheckBox":
1088
1088
  return { ...i("toggle"), name: o };
1089
1089
  case "SkoponSelect": {
1090
- const c = String(e.mode ?? "single") === "multiple" ? "multiselect" : "select", u = {
1091
- ...i(c),
1090
+ const l = String(e.mode ?? "single") === "multiple" ? "multiselect" : "select", u = {
1091
+ ...i(l),
1092
1092
  name: o,
1093
- options: ze(e)
1093
+ options: Re(e)
1094
1094
  }, d = z(e.placeholder);
1095
1095
  return d && (u.placeholder = d), u;
1096
1096
  }
@@ -1100,36 +1100,36 @@ function ur(e) {
1100
1100
  const d = {
1101
1101
  ...i(s),
1102
1102
  name: o,
1103
- options: ze(e)
1103
+ options: Re(e)
1104
1104
  }, m = z(e.placeholder);
1105
1105
  return m && (d.placeholder = m), d;
1106
1106
  }
1107
1107
  const u = String(e.variant ?? "mutuallyExclusive") === "multipleSelection" ? "checkbox" : "radio";
1108
- return { ...i(u), name: o, options: ze(e) };
1108
+ return { ...i(u), name: o, options: Re(e) };
1109
1109
  }
1110
1110
  case "DateTimeInput": {
1111
- const s = e.enableDate === !0, c = e.enableTime === !0, d = { ...i(!s && c ? "time" : "datetime"), name: o }, m = z(e.placeholder);
1111
+ const s = e.enableDate === !0, l = e.enableTime === !0, d = { ...i(!s && l ? "time" : "datetime"), name: o }, m = z(e.placeholder);
1112
1112
  return m && (d.placeholder = m), d;
1113
1113
  }
1114
1114
  case "SkoponMedia": {
1115
1115
  const s = String(e.mediaType ?? "image");
1116
- return me(e, s === "video" ? "video" : s === "audio" ? "audio" : "image", r);
1116
+ return pe(e, s === "video" ? "video" : s === "audio" ? "audio" : "image", r);
1117
1117
  }
1118
1118
  case "Image":
1119
- return me(e, "image", r);
1119
+ return pe(e, "image", r);
1120
1120
  case "Video":
1121
- return me(e, "video", r);
1121
+ return pe(e, "video", r);
1122
1122
  case "AudioPlayer":
1123
- return me(e, "audio", r);
1123
+ return pe(e, "audio", r);
1124
1124
  case "FileUpload": {
1125
- const s = z(e.accept) ?? "", c = { ...i("file"), name: o };
1126
- return s && (c.fileAcceptExtensions = s.split(",").map((u) => u.trim()).filter(Boolean)), Array.isArray(e.fileAcceptTypes) && (c.fileAcceptTypes = e.fileAcceptTypes.map(String)), typeof e.filePlaceholderIcon == "string" && (c.filePlaceholderIcon = e.filePlaceholderIcon), typeof e.minCount == "number" && (c.fileMinCount = e.minCount), typeof e.maxCount == "number" && (c.fileMaxCount = e.maxCount), c;
1125
+ const s = z(e.accept) ?? "", l = { ...i("file"), name: o };
1126
+ return s && (l.fileAcceptExtensions = s.split(",").map((u) => u.trim()).filter(Boolean)), Array.isArray(e.fileAcceptTypes) && (l.fileAcceptTypes = e.fileAcceptTypes.map(String)), typeof e.filePlaceholderIcon == "string" && (l.filePlaceholderIcon = e.filePlaceholderIcon), typeof e.minCount == "number" && (l.fileMinCount = e.minCount), typeof e.maxCount == "number" && (l.fileMaxCount = e.maxCount), l;
1127
1127
  }
1128
1128
  default:
1129
1129
  return null;
1130
1130
  }
1131
1131
  }
1132
- function xt(e, t, n, r) {
1132
+ function Ft(e, t, n, r) {
1133
1133
  if (n.has(e)) return;
1134
1134
  n.add(e);
1135
1135
  const o = t.get(e);
@@ -1137,29 +1137,29 @@ function xt(e, t, n, r) {
1137
1137
  const i = String(o.component ?? "");
1138
1138
  if ((i === "Column" || i === "Row") && Array.isArray(o.children)) {
1139
1139
  for (const a of o.children)
1140
- typeof a == "string" && xt(a, t, n, r);
1140
+ typeof a == "string" && Ft(a, t, n, r);
1141
1141
  return;
1142
1142
  }
1143
1143
  r.push(o);
1144
1144
  }
1145
- function pr(e, t) {
1145
+ function Tr(e, t) {
1146
1146
  return t ? e.map((n) => {
1147
1147
  var i;
1148
1148
  const r = (i = n.name) == null ? void 0 : i.trim();
1149
1149
  if (!r || !(r in t)) return n;
1150
1150
  const o = t[r];
1151
- return o === void 0 ? n : n.type === "toggle" ? { ...n, defaultValue: le(o) } : { ...n, defaultValue: o };
1151
+ return o === void 0 ? n : n.type === "toggle" ? { ...n, defaultValue: ce(o) } : { ...n, defaultValue: o };
1152
1152
  }) : e;
1153
1153
  }
1154
- function mr(e) {
1154
+ function _r(e) {
1155
1155
  if (!e || !Array.isArray(e.components))
1156
- return ge({ title: "", description: "", blocks: [], jsonSchema: {} });
1157
- const t = cr(e), n = [];
1158
- xt(e.root ?? ve, t, /* @__PURE__ */ new Set(), n);
1156
+ return ye({ title: "", description: "", blocks: [], jsonSchema: {} });
1157
+ const t = Ar(e), n = [];
1158
+ Ft(e.root ?? be, t, /* @__PURE__ */ new Set(), n);
1159
1159
  let r = "", o = "";
1160
1160
  const i = [];
1161
1161
  for (const a of n) {
1162
- if (a.id === Oe) {
1162
+ if (a.id === Le) {
1163
1163
  r = z(a.text) ?? r;
1164
1164
  continue;
1165
1165
  }
@@ -1167,17 +1167,17 @@ function mr(e) {
1167
1167
  o = z(a.text) ?? o;
1168
1168
  continue;
1169
1169
  }
1170
- const s = ur(a);
1170
+ const s = xr(a);
1171
1171
  s && i.push(s);
1172
1172
  }
1173
- return ge({
1173
+ return ye({
1174
1174
  title: r,
1175
1175
  description: o,
1176
- blocks: pr(i, e.dataModel),
1176
+ blocks: Tr(i, e.dataModel),
1177
1177
  jsonSchema: {}
1178
1178
  });
1179
1179
  }
1180
- function dr(e, t) {
1180
+ function Ir(e, t) {
1181
1181
  const { surfaceId: n, catalogId: r } = t, o = [
1182
1182
  { version: "v0.9", createSurface: { surfaceId: n, catalogId: r } },
1183
1183
  {
@@ -1190,25 +1190,25 @@ function dr(e, t) {
1190
1190
  updateDataModel: { surfaceId: n, path: "/", value: e.dataModel }
1191
1191
  }), o;
1192
1192
  }
1193
- function kt(e) {
1193
+ function Ut(e) {
1194
1194
  return !!e && typeof e == "object" && !Array.isArray(e) && Array.isArray(e.components);
1195
1195
  }
1196
- function fr(e, t) {
1196
+ function Nr(e, t) {
1197
1197
  if (!e || typeof e != "object") return null;
1198
- const n = e, r = kt(n.a2ui) ? n.a2ui : void 0;
1199
- if (r && !je(r)) return r;
1198
+ const n = e, r = Ut(n.a2ui) ? n.a2ui : void 0;
1199
+ if (r && !$e(r)) return r;
1200
1200
  const o = Array.isArray(n.blocks) ? n.blocks : [];
1201
1201
  if (o.length === 0) return null;
1202
- const i = ee({
1202
+ const i = W({
1203
1203
  title: typeof n.title == "string" ? n.title : "",
1204
1204
  description: typeof n.description == "string" ? n.description : "",
1205
1205
  blocks: o,
1206
- jsonSchema: Ge(n.jsonSchema ?? n.json_schema)
1207
- }), a = Ct(i, t);
1208
- return je(a) ? null : a;
1206
+ jsonSchema: Ye(n.jsonSchema ?? n.json_schema)
1207
+ }), a = Mt(i, t);
1208
+ return $e(a) ? null : a;
1209
1209
  }
1210
- function hr(e, t, n) {
1211
- return Ct(
1210
+ function Mr(e, t, n) {
1211
+ return Mt(
1212
1212
  {
1213
1213
  title: e.title,
1214
1214
  description: e.description,
@@ -1217,18 +1217,18 @@ function hr(e, t, n) {
1217
1217
  n
1218
1218
  );
1219
1219
  }
1220
- function gr(e) {
1220
+ function Fr(e) {
1221
1221
  if (!e || typeof e != "object" || Array.isArray(e))
1222
1222
  return;
1223
1223
  const t = e;
1224
- return !(Array.isArray(t.blocks) && t.blocks.length > 0) && kt(t.a2ui) ? mr(t.a2ui) : ee({
1224
+ return !(Array.isArray(t.blocks) && t.blocks.length > 0) && Ut(t.a2ui) ? _r(t.a2ui) : W({
1225
1225
  title: typeof t.title == "string" ? t.title : "",
1226
1226
  description: typeof t.description == "string" ? t.description : "",
1227
1227
  blocks: Array.isArray(t.blocks) ? t.blocks : [],
1228
- jsonSchema: Ge(t.jsonSchema ?? t.json_schema)
1228
+ jsonSchema: Ye(t.jsonSchema ?? t.json_schema)
1229
1229
  });
1230
1230
  }
1231
- function yr(e, t, n) {
1231
+ function Ur(e, t, n) {
1232
1232
  const r = e.model.surfacesMap.get(t);
1233
1233
  if (!r) return {};
1234
1234
  const o = {};
@@ -1238,15 +1238,15 @@ function yr(e, t, n) {
1238
1238
  }
1239
1239
  return o;
1240
1240
  }
1241
- function vr(e) {
1242
- return ee({
1241
+ function Pr(e) {
1242
+ return W({
1243
1243
  title: "",
1244
1244
  description: "",
1245
1245
  blocks: [e],
1246
1246
  jsonSchema: {}
1247
1247
  }).blocks[0];
1248
1248
  }
1249
- function Sr(e, t) {
1249
+ function Er(e, t) {
1250
1250
  var o, i;
1251
1251
  const n = /* @__PURE__ */ new Map();
1252
1252
  for (const a of t) {
@@ -1255,54 +1255,54 @@ function Sr(e, t) {
1255
1255
  }
1256
1256
  const r = [];
1257
1257
  for (const a of e.blocks) {
1258
- if (be(a.type)) {
1259
- r.push(vr(a));
1258
+ if (ke(a.type)) {
1259
+ r.push(Pr(a));
1260
1260
  continue;
1261
1261
  }
1262
- if (!W(a.type)) continue;
1262
+ if (!Y(a.type)) continue;
1263
1263
  const s = (i = a.name) == null ? void 0 : i.trim();
1264
1264
  if (!s) continue;
1265
- const c = n.get(s);
1266
- c && r.push(c);
1265
+ const l = n.get(s);
1266
+ l && r.push(l);
1267
1267
  }
1268
1268
  return r;
1269
1269
  }
1270
- function br(e, t) {
1270
+ function zr(e, t) {
1271
1271
  var r;
1272
1272
  const n = {
1273
1273
  ...e,
1274
1274
  name: ((r = e.name) == null ? void 0 : r.trim()) || t.name
1275
1275
  };
1276
- return t.defaultValue !== void 0 && (n.defaultValue = t.defaultValue), ee({
1276
+ return t.defaultValue !== void 0 && (n.defaultValue = t.defaultValue), W({
1277
1277
  title: "",
1278
1278
  description: "",
1279
1279
  blocks: [n],
1280
1280
  jsonSchema: {}
1281
1281
  }).blocks[0];
1282
1282
  }
1283
- function At(e) {
1283
+ function Ae(e) {
1284
1284
  if (!e || typeof e != "object" || Array.isArray(e)) return null;
1285
1285
  const t = e;
1286
- return Array.isArray(t.blocks) ? ee({
1286
+ return Array.isArray(t.blocks) ? W({
1287
1287
  title: typeof t.title == "string" ? t.title : "",
1288
1288
  description: typeof t.description == "string" ? t.description : "",
1289
1289
  blocks: t.blocks,
1290
1290
  jsonSchema: {}
1291
1291
  }) : null;
1292
1292
  }
1293
- function Cr(e, t) {
1294
- var i, a, s, c, u, d;
1293
+ function Rr(e, t) {
1294
+ var i, a, s, l, u, d;
1295
1295
  const n = /* @__PURE__ */ new Map();
1296
1296
  for (const m of (t == null ? void 0 : t.blocks) ?? [])
1297
- W(m.type) && ((i = m.name) != null && i.trim()) && n.set(m.name.trim(), m);
1297
+ Y(m.type) && ((i = m.name) != null && i.trim()) && n.set(m.name.trim(), m);
1298
1298
  const r = [], o = [];
1299
1299
  for (const m of e.blocks) {
1300
- if (!W(m.type)) continue;
1301
- const b = (a = m.name) == null ? void 0 : a.trim();
1302
- if (!b) continue;
1303
- const g = n.get(b);
1304
- g ? r.push(br(g, m)) : o.push(
1305
- ee({
1300
+ if (!Y(m.type)) continue;
1301
+ const S = (a = m.name) == null ? void 0 : a.trim();
1302
+ if (!S) continue;
1303
+ const h = n.get(S);
1304
+ h ? r.push(zr(h, m)) : o.push(
1305
+ W({
1306
1306
  title: "",
1307
1307
  description: "",
1308
1308
  blocks: [m],
@@ -1313,80 +1313,80 @@ function Cr(e, t) {
1313
1313
  return {
1314
1314
  matchedBlocks: r,
1315
1315
  extraBlocks: o,
1316
- renderBlocks: Sr(e, r),
1317
- title: ((s = e.title) == null ? void 0 : s.trim()) || ((c = t == null ? void 0 : t.title) == null ? void 0 : c.trim()) || "",
1316
+ renderBlocks: Er(e, r),
1317
+ title: ((s = e.title) == null ? void 0 : s.trim()) || ((l = t == null ? void 0 : t.title) == null ? void 0 : l.trim()) || "",
1318
1318
  description: ((u = e.description) == null ? void 0 : u.trim()) || ((d = t == null ? void 0 : t.description) == null ? void 0 : d.trim()) || ""
1319
1319
  };
1320
1320
  }
1321
- function xr(e) {
1321
+ function wr(e) {
1322
1322
  const { type: t, defaultValue: n } = e;
1323
1323
  return n !== void 0 ? t === "toggle" ? n === !0 || n === "true" : t === "multiselect" || t === "checkbox" || t === "resume_multiselect" || t === "case_multiselect" ? Array.isArray(n) ? n.map(String) : typeof n == "string" && n ? [n] : [] : n : t === "toggle" ? !1 : t === "multiselect" || t === "checkbox" || t === "resume_multiselect" || t === "case_multiselect" ? [] : t === "number" ? null : "";
1324
1324
  }
1325
- function Tt(e) {
1325
+ function Xe(e) {
1326
1326
  var n;
1327
1327
  const t = {};
1328
1328
  for (const r of e) {
1329
- if (!W(r.type)) continue;
1329
+ if (!Y(r.type)) continue;
1330
1330
  const o = (n = r.name) == null ? void 0 : n.trim();
1331
- o && (t[o] = xr(r));
1331
+ o && (t[o] = wr(r));
1332
1332
  }
1333
1333
  return t;
1334
1334
  }
1335
- function kr(e) {
1335
+ function Br(e) {
1336
1336
  return e.blocks.some(
1337
1337
  (t) => {
1338
1338
  var n;
1339
- return W(t.type) && !!((n = t.name) != null && n.trim());
1339
+ return Y(t.type) && !!((n = t.name) != null && n.trim());
1340
1340
  }
1341
1341
  );
1342
1342
  }
1343
- function Ar(e) {
1343
+ function qr(e) {
1344
1344
  return e.blocks.filter((t) => {
1345
1345
  var n;
1346
- return be(t.type) ? !0 : W(t.type) && !!((n = t.name) != null && n.trim());
1346
+ return ke(t.type) ? !0 : Y(t.type) && !!((n = t.name) != null && n.trim());
1347
1347
  });
1348
1348
  }
1349
- function Tr(e) {
1349
+ function Or(e) {
1350
1350
  return e.blocks.filter((t) => {
1351
1351
  var n;
1352
- return W(t.type) && ((n = t.name) == null ? void 0 : n.trim());
1352
+ return Y(t.type) && ((n = t.name) == null ? void 0 : n.trim());
1353
1353
  }).map((t) => t.name.trim());
1354
1354
  }
1355
- function It(e) {
1355
+ function Pt(e) {
1356
1356
  return e.replace(/'/g, "'\\''");
1357
1357
  }
1358
- function Nt(e, t) {
1358
+ function Et(e, t) {
1359
1359
  const n = (t ?? "").trim() || "<callback_url>", r = JSON.stringify(e ?? {}, null, 2);
1360
1360
  return [
1361
1361
  `curl -X POST '${n}' \\`,
1362
1362
  " -H 'Content-Type: application/json' \\",
1363
- ` -d '${It(r)}'`
1363
+ ` -d '${Pt(r)}'`
1364
1364
  ].join(`
1365
1365
  `);
1366
1366
  }
1367
- function Ir(e, t) {
1367
+ function jr(e, t) {
1368
1368
  return JSON.stringify({ ...e, ...t }, null, 2);
1369
1369
  }
1370
- function Mt({
1370
+ function Lr({
1371
1371
  cardValues: e,
1372
1372
  extraValues: t = {},
1373
1373
  callbackUrl: n
1374
1374
  }) {
1375
- const r = (n ?? "").trim() || "<callback_url>", o = Ir(e, t);
1375
+ const r = (n ?? "").trim() || "<callback_url>", o = jr(e, t);
1376
1376
  return [
1377
1377
  `curl -X POST '${r}' \\`,
1378
1378
  " -H 'Content-Type: application/json' \\",
1379
- ` -d '${It(o)}'`
1379
+ ` -d '${Pt(o)}'`
1380
1380
  ].join(`
1381
1381
  `);
1382
1382
  }
1383
- function Nr(e, t) {
1384
- const n = At(e);
1385
- if (!n) return Nt(e, t);
1386
- const r = Tt(n.blocks);
1387
- return Mt({ cardValues: r, callbackUrl: t });
1383
+ function Jo(e, t) {
1384
+ const n = Ae(e);
1385
+ if (!n) return Et(e, t);
1386
+ const r = Xe(n.blocks);
1387
+ return Lr({ cardValues: r, callbackUrl: t });
1388
1388
  }
1389
- async function Mr(e, t, n) {
1389
+ async function zt(e, t, n) {
1390
1390
  const r = e.trim();
1391
1391
  if (!r)
1392
1392
  throw new Error("callback_url 为空");
@@ -1413,7 +1413,7 @@ async function Mr(e, t, n) {
1413
1413
  }
1414
1414
  return { ok: i.ok, status: i.status, body: a };
1415
1415
  }
1416
- async function Ft(e) {
1416
+ async function Yo(e) {
1417
1417
  var n;
1418
1418
  if (typeof navigator < "u" && ((n = navigator.clipboard) != null && n.writeText)) {
1419
1419
  await navigator.clipboard.writeText(e);
@@ -1429,7 +1429,7 @@ async function Ft(e) {
1429
1429
  document.body.removeChild(t);
1430
1430
  }
1431
1431
  }
1432
- async function Ye(e) {
1432
+ async function Qe(e) {
1433
1433
  let t;
1434
1434
  try {
1435
1435
  t = await e.json();
@@ -1442,8 +1442,8 @@ async function Ye(e) {
1442
1442
  throw new Error(t.message || `响应缺少 data (${e.status})`);
1443
1443
  return t.data;
1444
1444
  }
1445
- const Fr = "auth_user", _r = "token";
1446
- function Pr(e) {
1445
+ const Rt = "auth_user", Vr = "token", $r = "answer_agent_callback_url", te = "/api/v1/mock/ask_user_answer_mock";
1446
+ function wt(e) {
1447
1447
  if (typeof window > "u") return null;
1448
1448
  try {
1449
1449
  return e === "localStorage" ? window.localStorage : window.sessionStorage;
@@ -1451,26 +1451,42 @@ function Pr(e) {
1451
1451
  return null;
1452
1452
  }
1453
1453
  }
1454
- function Ur(e, t) {
1454
+ function Bt(e) {
1455
1455
  try {
1456
- const r = JSON.parse(e)[t];
1457
- return typeof r == "string" ? r.trim().replace(/^bearer\s+/i, "").trim() : "";
1456
+ const t = JSON.parse(e);
1457
+ return !t || typeof t != "object" || Array.isArray(t) ? null : t;
1458
1458
  } catch {
1459
- return "";
1459
+ return null;
1460
1460
  }
1461
1461
  }
1462
- function zr(e = {}) {
1463
- const t = e.storage ?? "sessionStorage", n = e.storageKey ?? Fr, r = e.tokenField ?? _r, o = Pr(t);
1462
+ function Dr(e, t) {
1463
+ const n = Bt(e);
1464
+ if (!n) return "";
1465
+ const r = n[t];
1466
+ return typeof r == "string" ? r.trim().replace(/^bearer\s+/i, "").trim() : "";
1467
+ }
1468
+ function Hr(e = {}) {
1469
+ const t = e.storage ?? "sessionStorage", n = e.storageKey ?? Rt, r = e.answerAgentCallbackUrlField ?? $r, o = wt(t);
1470
+ if (!o) return te;
1471
+ const i = o.getItem(n);
1472
+ if (!i) return te;
1473
+ const a = Bt(i);
1474
+ if (!a) return te;
1475
+ const s = a[r];
1476
+ return (typeof s == "string" ? s.trim() : "") || te;
1477
+ }
1478
+ function qt(e = {}) {
1479
+ const t = e.storage ?? "sessionStorage", n = e.storageKey ?? Rt, r = e.tokenField ?? Vr, o = wt(t);
1464
1480
  if (!o) return {};
1465
1481
  const i = o.getItem(n);
1466
1482
  if (!i) return {};
1467
- const a = Ur(i, r);
1483
+ const a = Dr(i, r);
1468
1484
  return a ? { Authorization: `Bearer ${a}` } : {};
1469
1485
  }
1470
- async function Xe(e = {}) {
1471
- return e.getHeaders ? await e.getHeaders() ?? {} : zr(e.authStorage);
1486
+ async function Ze(e = {}) {
1487
+ return e.getHeaders ? await e.getHeaders() ?? {} : qt(e.authStorage);
1472
1488
  }
1473
- function Er(e = {}) {
1489
+ function Kr(e = {}) {
1474
1490
  const t = (e.baseUrl ?? "/api/v1").replace(/\/$/, ""), n = e.detailPath ?? "/dev/form/detail", r = e.fetch ?? fetch;
1475
1491
  async function o(i) {
1476
1492
  const a = new URLSearchParams();
@@ -1480,21 +1496,111 @@ function Er(e = {}) {
1480
1496
  a.set("form_unique_id", i.formUniqueId);
1481
1497
  else
1482
1498
  throw new Error("form_id 或 form_unique_id 至少传一个");
1483
- const s = await Xe(e), c = await r(`${t}${n}?${a.toString()}`, {
1499
+ const s = await Ze(e), l = await r(`${t}${n}?${a.toString()}`, {
1484
1500
  method: "GET",
1485
1501
  headers: s
1486
- }), u = await Ye(c), d = gr(u.form_definition);
1502
+ }), u = await Qe(l), d = Fr(u.form_definition);
1487
1503
  return {
1488
1504
  formUniqueId: u.form_unique_id,
1489
1505
  formId: u.form_id,
1490
1506
  disabled: u.disabled === 1,
1491
1507
  formDefinition: d,
1492
- a2ui: fr(u.form_definition) ?? void 0
1508
+ a2ui: Nr(u.form_definition) ?? void 0
1493
1509
  };
1494
1510
  }
1495
1511
  return { fetchDetail: o };
1496
1512
  }
1497
- function Rr(e) {
1513
+ function Gr(e) {
1514
+ if (!e || typeof e != "object" || Array.isArray(e))
1515
+ return e ?? null;
1516
+ const t = e;
1517
+ return Array.isArray(t.blocks) ? {
1518
+ title: typeof t.title == "string" ? t.title : "",
1519
+ description: typeof t.description == "string" ? t.description : "",
1520
+ blocks: t.blocks
1521
+ } : e;
1522
+ }
1523
+ function et({
1524
+ context: e,
1525
+ payload: t,
1526
+ form: n,
1527
+ answer: r
1528
+ }) {
1529
+ const o = Ae(t) ?? t, i = n ? Gr(n) : o;
1530
+ return {
1531
+ mission_id: e.missionId ?? null,
1532
+ tenant_id: e.tenantId ?? null,
1533
+ tenant_user_id: e.tenantUserId ?? null,
1534
+ request_id: e.requestId ?? null,
1535
+ ask_user_query_description: e.askUserQueryDescription ?? null,
1536
+ callback_url: (e.callbackUrl ?? "").trim() || null,
1537
+ form: i,
1538
+ question: o,
1539
+ answer: r
1540
+ };
1541
+ }
1542
+ function Ot(e) {
1543
+ const t = e.callback_url;
1544
+ if (typeof t != "string" || !t.trim())
1545
+ return "callback_url 为空,无法提交";
1546
+ if (e.tenant_id == null)
1547
+ return "tenant_id 缺失,无法提交";
1548
+ const n = e.tenant_user_id;
1549
+ if (typeof n != "string" || !n.trim())
1550
+ return "tenant_user_id 缺失,无法提交";
1551
+ const r = e.request_id;
1552
+ if (typeof r != "string" || !r.trim())
1553
+ return "request_id 缺失,无法提交";
1554
+ const o = e.mission_id;
1555
+ return o == null || o === "" ? "mission_id 缺失,无法提交" : null;
1556
+ }
1557
+ function Wo(e) {
1558
+ return Ot(
1559
+ et({
1560
+ context: e,
1561
+ payload: {},
1562
+ answer: {}
1563
+ })
1564
+ );
1565
+ }
1566
+ function jt(e) {
1567
+ if (!e || typeof e != "object" || Array.isArray(e)) return null;
1568
+ const n = e.data;
1569
+ return !n || typeof n != "object" || Array.isArray(n) ? null : n;
1570
+ }
1571
+ function Jr(e, t) {
1572
+ if (t && typeof t == "object" && t !== null && "message" in t) {
1573
+ const n = t.message;
1574
+ if (typeof n == "string" && n.trim())
1575
+ return `提交失败 (${e}): ${n.trim()}`;
1576
+ }
1577
+ return typeof t == "string" && t.trim() ? `提交失败 (${e}): ${t.trim()}` : `提交失败 (${e})`;
1578
+ }
1579
+ function Yr(e) {
1580
+ return `提交失败:${typeof e.error == "string" && e.error.trim() ? e.error.trim() : `回调 HTTP ${e.callback_status ?? "失败"}`}`;
1581
+ }
1582
+ function Lt(e) {
1583
+ const t = jt(e.body);
1584
+ return (t == null ? void 0 : t.callback_ok) === !1 ? { type: "error", message: Yr(t) } : e.ok ? { type: "success", message: "提交成功" } : {
1585
+ type: "error",
1586
+ message: Jr(e.status, e.body)
1587
+ };
1588
+ }
1589
+ async function Vt(e, t) {
1590
+ var s;
1591
+ const n = Ot(e);
1592
+ if (n)
1593
+ throw new Error(n);
1594
+ const r = (((s = t == null ? void 0 : t.answerAgentCallbackUrl) == null ? void 0 : s.trim()) || Hr(t == null ? void 0 : t.authStorage) || te).trim(), o = qt(t == null ? void 0 : t.authStorage), i = await zt(r, e, {
1595
+ ...t,
1596
+ headers: {
1597
+ ...o,
1598
+ ...(t == null ? void 0 : t.headers) ?? {}
1599
+ }
1600
+ }), a = jt(i.body);
1601
+ return i.ok && (a == null ? void 0 : a.callback_ok) === !1 ? { ok: !1, status: i.status, body: i.body } : i;
1602
+ }
1603
+ function Wr(e) {
1498
1604
  return {
1499
1605
  resumeUniqueId: e.resume_unique_id,
1500
1606
  resumeId: e.resume_id,
@@ -1515,7 +1621,7 @@ function Rr(e) {
1515
1621
  }))
1516
1622
  };
1517
1623
  }
1518
- function Br(e, t) {
1624
+ function Xr(e, t) {
1519
1625
  const n = new URLSearchParams();
1520
1626
  n.set("page", String(t)), n.set("page_size", String(e.pageSize ?? 20));
1521
1627
  for (const r of e.names ?? [])
@@ -1526,27 +1632,27 @@ function Br(e, t) {
1526
1632
  r && n.append("resume_unique_id", r);
1527
1633
  return n;
1528
1634
  }
1529
- function wr(e = {}) {
1635
+ function Qr(e = {}) {
1530
1636
  const t = (e.baseUrl ?? "/api/v1").replace(/\/$/, ""), n = e.searchPath ?? "/univ/resume/search", r = e.fetch ?? fetch;
1531
1637
  return async ({ filter: o, page: i }) => {
1532
- const a = await Xe(e), s = Br(o, i), c = await r(`${t}${n}?${s.toString()}`, {
1638
+ const a = await Ze(e), s = Xr(o, i), l = await r(`${t}${n}?${s.toString()}`, {
1533
1639
  method: "GET",
1534
1640
  headers: a
1535
- }), u = await Ye(c);
1641
+ }), u = await Qe(l);
1536
1642
  return {
1537
- list: (u.list ?? []).map(Rr),
1643
+ list: (u.list ?? []).map(Wr),
1538
1644
  total: u.total ?? 0,
1539
1645
  page: u.page ?? i,
1540
1646
  pageSize: u.page_size ?? o.pageSize ?? 20
1541
1647
  };
1542
1648
  };
1543
1649
  }
1544
- function qr(e) {
1650
+ function Zr(e) {
1545
1651
  var r, o, i, a;
1546
1652
  const t = !!((r = e.flowUniqueIds) != null && r.length), n = !!((o = e.agentUniqueId) != null && o.trim() && ((i = e.flowType) != null && i.trim()) && ((a = e.category) != null && a.trim()));
1547
1653
  return t || n;
1548
1654
  }
1549
- function Or(e) {
1655
+ function eo(e) {
1550
1656
  return {
1551
1657
  caseUniqueId: e.case_unique_id,
1552
1658
  caseId: e.case_id,
@@ -1557,7 +1663,7 @@ function Or(e) {
1557
1663
  description: e.description ?? void 0
1558
1664
  };
1559
1665
  }
1560
- function Vr(e, t, n) {
1666
+ function to(e, t, n) {
1561
1667
  var o, i, a;
1562
1668
  const r = new URLSearchParams();
1563
1669
  r.set("page", String(t)), r.set("page_size", String(e.pageSize ?? 20)), r.set("published", String(n)), (o = e.agentUniqueId) != null && o.trim() && r.set("agent_unique_id", e.agentUniqueId.trim()), (i = e.flowType) != null && i.trim() && r.set("flow_type", e.flowType.trim()), (a = e.category) != null && a.trim() && r.set("category_unique_id", e.category.trim());
@@ -1565,24 +1671,24 @@ function Vr(e, t, n) {
1565
1671
  s && r.append("flow_unique_ids", s);
1566
1672
  return r;
1567
1673
  }
1568
- function jr(e = {}) {
1674
+ function no(e = {}) {
1569
1675
  const t = (e.baseUrl ?? "/api/v1").replace(/\/$/, ""), n = e.listPath ?? "/univ/case/list", r = e.fetch ?? fetch, o = e.published ?? 1;
1570
1676
  return async ({ filter: i, page: a }) => {
1571
- if (!qr(i))
1677
+ if (!Zr(i))
1572
1678
  return { list: [], total: 0, page: 1, pageSize: i.pageSize ?? 20 };
1573
- const s = await Xe(e), c = Vr(i, a, o), u = await r(`${t}${n}?${c.toString()}`, {
1679
+ const s = await Ze(e), l = to(i, a, o), u = await r(`${t}${n}?${l.toString()}`, {
1574
1680
  method: "GET",
1575
1681
  headers: s
1576
- }), d = await Ye(u);
1682
+ }), d = await Qe(u);
1577
1683
  return {
1578
- list: (d.list ?? []).map(Or),
1684
+ list: (d.list ?? []).map(eo),
1579
1685
  total: d.total ?? 0,
1580
1686
  page: d.page ?? a,
1581
1687
  pageSize: d.page_size ?? i.pageSize ?? 20
1582
1688
  };
1583
1689
  };
1584
1690
  }
1585
- function Uo(e = {}) {
1691
+ function Xo(e = {}) {
1586
1692
  var r, o, i, a;
1587
1693
  const t = {
1588
1694
  baseUrl: e.baseUrl,
@@ -1591,22 +1697,22 @@ function Uo(e = {}) {
1591
1697
  authStorage: e.authStorage
1592
1698
  };
1593
1699
  return {
1594
- fetchDetail: Er({
1700
+ fetchDetail: Kr({
1595
1701
  ...t,
1596
1702
  detailPath: (r = e.form) == null ? void 0 : r.detailPath
1597
1703
  }).fetchDetail,
1598
- resumeSearch: wr({
1704
+ resumeSearch: Qr({
1599
1705
  ...t,
1600
1706
  searchPath: (o = e.resume) == null ? void 0 : o.searchPath
1601
1707
  }),
1602
- caseSearch: jr({
1708
+ caseSearch: no({
1603
1709
  ...t,
1604
1710
  listPath: (i = e.case) == null ? void 0 : i.listPath,
1605
1711
  published: (a = e.case) == null ? void 0 : a.published
1606
1712
  })
1607
1713
  };
1608
1714
  }
1609
- function _t(e, t) {
1715
+ function $t(e, t) {
1610
1716
  if (!t.trim()) return !0;
1611
1717
  try {
1612
1718
  return new RegExp(t).test(e);
@@ -1614,10 +1720,10 @@ function _t(e, t) {
1614
1720
  return !0;
1615
1721
  }
1616
1722
  }
1617
- function Pt(e) {
1723
+ function Dt(e) {
1618
1724
  return e == null ? !0 : typeof e == "string" ? !e.trim() : !1;
1619
1725
  }
1620
- function Lr(e, t) {
1726
+ function ro(e, t) {
1621
1727
  switch (e.type) {
1622
1728
  case "multiselect":
1623
1729
  case "checkbox":
@@ -1626,74 +1732,74 @@ function Lr(e, t) {
1626
1732
  case "case_multiselect":
1627
1733
  return O(t).length === 0;
1628
1734
  case "toggle":
1629
- return !le(t);
1735
+ return !ce(t);
1630
1736
  case "number":
1631
1737
  return t == null || t === "";
1632
1738
  default:
1633
- return Pt(t);
1739
+ return Dt(t);
1634
1740
  }
1635
1741
  }
1636
- function Ee(e, t) {
1742
+ function we(e, t) {
1637
1743
  return e.required === !0 || t > 0;
1638
1744
  }
1639
- function $r(e, t) {
1745
+ function oo(e, t) {
1640
1746
  var n, r;
1641
1747
  for (const o of e) {
1642
1748
  const i = (n = o.name) == null ? void 0 : n.trim();
1643
- if (!i || be(o.type) || he(o.type)) continue;
1749
+ if (!i || ke(o.type) || ge(o.type)) continue;
1644
1750
  const a = t[i], s = ((r = o.label) == null ? void 0 : r.trim()) || i;
1645
- if (o.required && Lr(o, a))
1751
+ if (o.required && ro(o, a))
1646
1752
  return { fieldName: i, label: s, message: `请填写「${s}」` };
1647
- if (o.type === "email" && !Pt(a)) {
1648
- const c = String(a).trim();
1649
- if (!_t(c, Je))
1753
+ if (o.type === "email" && !Dt(a)) {
1754
+ const l = String(a).trim();
1755
+ if (!$t(l, We))
1650
1756
  return { fieldName: i, label: s, message: `「${s}」格式不正确` };
1651
1757
  }
1652
1758
  if (o.type === "file") {
1653
- const c = o.fileMinCount ?? 0, u = O(a).length;
1654
- if (c > 0 && u < c && Ee(o, u))
1759
+ const l = o.fileMinCount ?? 0, u = O(a).length;
1760
+ if (l > 0 && u < l && we(o, u))
1655
1761
  return {
1656
1762
  fieldName: i,
1657
1763
  label: s,
1658
- message: `「${s}」至少需要 ${c} 个文件`
1764
+ message: `「${s}」至少需要 ${l} 个文件`
1659
1765
  };
1660
1766
  }
1661
1767
  if (o.type === "resume_multiselect") {
1662
- const c = o.resumeMinCount, u = O(a).length;
1663
- if (c !== void 0 && u < c && Ee(o, u))
1768
+ const l = o.resumeMinCount, u = O(a).length;
1769
+ if (l !== void 0 && u < l && we(o, u))
1664
1770
  return {
1665
1771
  fieldName: i,
1666
1772
  label: s,
1667
- message: `「${s}」至少选择 ${c} 项`
1773
+ message: `「${s}」至少选择 ${l} 项`
1668
1774
  };
1669
1775
  }
1670
1776
  if (o.type === "case_multiselect") {
1671
- const c = o.caseMinCount, u = O(a).length;
1672
- if (c !== void 0 && u < c && Ee(o, u))
1777
+ const l = o.caseMinCount, u = O(a).length;
1778
+ if (l !== void 0 && u < l && we(o, u))
1673
1779
  return {
1674
1780
  fieldName: i,
1675
1781
  label: s,
1676
- message: `「${s}」至少选择 ${c} 项`
1782
+ message: `「${s}」至少选择 ${l} 项`
1677
1783
  };
1678
1784
  }
1679
1785
  }
1680
1786
  return null;
1681
1787
  }
1682
- const Dr = {
1683
- video: Qt,
1684
- audio: Wt,
1685
- image: Xt,
1686
- file: st,
1687
- spreadsheet: Yt,
1688
- document: at
1788
+ const io = {
1789
+ video: pn,
1790
+ audio: dn,
1791
+ image: mn,
1792
+ file: ht,
1793
+ spreadsheet: un,
1794
+ document: ft
1689
1795
  };
1690
- function Hr({
1796
+ function ao({
1691
1797
  type: e,
1692
1798
  size: t = 40,
1693
1799
  className: n
1694
1800
  }) {
1695
- const r = Dr[e] ?? st;
1696
- return /* @__PURE__ */ l(
1801
+ const r = io[e] ?? ht;
1802
+ return /* @__PURE__ */ c(
1697
1803
  r,
1698
1804
  {
1699
1805
  className: n ?? "skopon-form-file-placeholder-icon",
@@ -1702,7 +1808,7 @@ function Hr({
1702
1808
  }
1703
1809
  );
1704
1810
  }
1705
- const Ut = "skopon-form-v0_9", Kr = /* @__PURE__ */ new Set([
1811
+ const Ht = "skopon-form-v0_9", so = /* @__PURE__ */ new Set([
1706
1812
  "SkoponMedia",
1707
1813
  "SkoponSelect",
1708
1814
  "Image",
@@ -1714,17 +1820,17 @@ const Ut = "skopon-form-v0_9", Kr = /* @__PURE__ */ new Set([
1714
1820
  "FileUpload",
1715
1821
  "TextField",
1716
1822
  "Text",
1717
- ...rr()
1718
- ]), Gr = /* @__PURE__ */ new Set(["h1", "h2", "h3", "h4", "h5", "caption"]);
1719
- function ce(e) {
1720
- const t = [...fe.components.values()].find((n) => n.name === e);
1823
+ ...yr()
1824
+ ]), lo = /* @__PURE__ */ new Set(["h1", "h2", "h3", "h4", "h5", "caption"]);
1825
+ function ue(e) {
1826
+ const t = [...he.components.values()].find((n) => n.name === e);
1721
1827
  if (!t) throw new Error(`Missing basic catalog component: ${e}`);
1722
1828
  return t.schema;
1723
1829
  }
1724
- function T(e) {
1830
+ function I(e) {
1725
1831
  return typeof e == "string" ? e : "";
1726
1832
  }
1727
- function zt(e) {
1833
+ function Kt(e) {
1728
1834
  return Array.isArray(e) ? e.map((t) => {
1729
1835
  if (!t || typeof t != "object") return null;
1730
1836
  const n = t, r = String(n.value ?? n.label ?? ""), o = String(n.label ?? n.value ?? "");
@@ -1739,10 +1845,10 @@ function xe({
1739
1845
  help: o,
1740
1846
  placeholder: i
1741
1847
  }) {
1742
- const a = r == null ? void 0 : r.trim(), s = o == null ? void 0 : o.trim(), c = xn(n), u = (i == null ? void 0 : i.trim()) || (e === "image" ? "未设置图片 URL" : e === "video" ? "未设置视频 URL" : "未设置音频 URL");
1743
- return /* @__PURE__ */ k("div", { className: "form-block-preview", children: [
1744
- a ? /* @__PURE__ */ l("div", { className: "form-block-preview-label", children: a }) : null,
1745
- t.length === 0 ? /* @__PURE__ */ l("div", { className: "form-media-preview form-media-preview--empty", children: u }) : /* @__PURE__ */ l("div", { className: c, children: t.map((d, m) => e === "image" ? /* @__PURE__ */ l(
1848
+ const a = r == null ? void 0 : r.trim(), s = o == null ? void 0 : o.trim(), l = wn(n), u = (i == null ? void 0 : i.trim()) || (e === "image" ? "未设置图片 URL" : e === "video" ? "未设置视频 URL" : "未设置音频 URL");
1849
+ return /* @__PURE__ */ _("div", { className: "form-block-preview", children: [
1850
+ a ? /* @__PURE__ */ c("div", { className: "form-block-preview-label", children: a }) : null,
1851
+ t.length === 0 ? /* @__PURE__ */ c("div", { className: "form-media-preview form-media-preview--empty", children: u }) : /* @__PURE__ */ c("div", { className: l, children: t.map((d, m) => e === "image" ? /* @__PURE__ */ c(
1746
1852
  "img",
1747
1853
  {
1748
1854
  src: d,
@@ -1750,7 +1856,7 @@ function xe({
1750
1856
  className: "form-media-item"
1751
1857
  },
1752
1858
  `media-${m}`
1753
- ) : e === "video" ? /* @__PURE__ */ l(
1859
+ ) : e === "video" ? /* @__PURE__ */ c(
1754
1860
  "video",
1755
1861
  {
1756
1862
  src: d,
@@ -1758,7 +1864,7 @@ function xe({
1758
1864
  className: "form-media-item"
1759
1865
  },
1760
1866
  `media-${m}`
1761
- ) : /* @__PURE__ */ l(
1867
+ ) : /* @__PURE__ */ c(
1762
1868
  "audio",
1763
1869
  {
1764
1870
  src: d,
@@ -1767,21 +1873,21 @@ function xe({
1767
1873
  },
1768
1874
  `media-${m}`
1769
1875
  )) }),
1770
- s ? /* @__PURE__ */ l(D.Text, { type: "secondary", className: "form-block-preview-help", children: s }) : null
1876
+ s ? /* @__PURE__ */ c(V.Text, { type: "secondary", className: "form-block-preview-help", children: s }) : null
1771
1877
  ] });
1772
1878
  }
1773
- function ke(e, t) {
1774
- const n = Array.isArray(e.urls) ? e.urls.map((r) => String(r).trim()).filter(Boolean) : T(e.url).trim() ? [T(e.url).trim()] : [];
1879
+ function Te(e, t) {
1880
+ const n = Array.isArray(e.urls) ? e.urls.map((r) => String(r).trim()).filter(Boolean) : I(e.url).trim() ? [I(e.url).trim()] : [];
1775
1881
  return {
1776
1882
  mediaType: t,
1777
1883
  urls: n,
1778
- mediaSize: se(e.mediaSize),
1779
- label: T(e.label) || T(e.description),
1780
- help: T(e.help),
1781
- placeholder: T(e.placeholder)
1884
+ mediaSize: le(e.mediaSize),
1885
+ label: I(e.label) || I(e.description),
1886
+ help: I(e.help),
1887
+ placeholder: I(e.placeholder)
1782
1888
  };
1783
1889
  }
1784
- const Jr = {
1890
+ const co = {
1785
1891
  name: "SkoponMedia",
1786
1892
  schema: f.object({
1787
1893
  mediaType: f.any().optional(),
@@ -1791,19 +1897,19 @@ const Jr = {
1791
1897
  help: f.any().optional(),
1792
1898
  placeholder: f.any().optional()
1793
1899
  }).passthrough()
1794
- }, Yr = V(Jr, ({ context: e }) => {
1795
- const t = e.componentModel.properties, n = T(t.mediaType);
1796
- return /* @__PURE__ */ l(xe, { ...ke(t, n === "video" ? "video" : n === "audio" ? "audio" : "image") });
1797
- }), Xr = V(
1798
- { name: "Image", schema: ce("Image") },
1799
- ({ context: e }) => /* @__PURE__ */ l(xe, { ...ke(e.componentModel.properties, "image") })
1800
- ), Wr = V(
1801
- { name: "Video", schema: ce("Video") },
1802
- ({ context: e }) => /* @__PURE__ */ l(xe, { ...ke(e.componentModel.properties, "video") })
1803
- ), Qr = V(
1804
- { name: "AudioPlayer", schema: ce("AudioPlayer") },
1805
- ({ context: e }) => /* @__PURE__ */ l(xe, { ...ke(e.componentModel.properties, "audio") })
1806
- ), Zr = {
1900
+ }, uo = j(co, ({ context: e }) => {
1901
+ const t = e.componentModel.properties, n = I(t.mediaType);
1902
+ return /* @__PURE__ */ c(xe, { ...Te(t, n === "video" ? "video" : n === "audio" ? "audio" : "image") });
1903
+ }), mo = j(
1904
+ { name: "Image", schema: ue("Image") },
1905
+ ({ context: e }) => /* @__PURE__ */ c(xe, { ...Te(e.componentModel.properties, "image") })
1906
+ ), po = j(
1907
+ { name: "Video", schema: ue("Video") },
1908
+ ({ context: e }) => /* @__PURE__ */ c(xe, { ...Te(e.componentModel.properties, "video") })
1909
+ ), fo = j(
1910
+ { name: "AudioPlayer", schema: ue("AudioPlayer") },
1911
+ ({ context: e }) => /* @__PURE__ */ c(xe, { ...Te(e.componentModel.properties, "audio") })
1912
+ ), ho = {
1807
1913
  name: "SkoponSelect",
1808
1914
  schema: f.object({
1809
1915
  label: f.any().optional(),
@@ -1813,87 +1919,87 @@ const Jr = {
1813
1919
  value: f.any().optional()
1814
1920
  }).passthrough()
1815
1921
  };
1816
- function eo({ context: e }) {
1817
- const { interactive: t } = K(), { value: n, setValue: r } = G(e), o = e.componentModel.properties, i = T(o.label), a = T(o.placeholder), s = zt(o.options), c = T(o.mode) === "multiple";
1922
+ function go({ context: e }) {
1923
+ const { interactive: t } = H(), { value: n, setValue: r } = K(e), o = e.componentModel.properties, i = I(o.label), a = I(o.placeholder), s = Kt(o.options), l = I(o.mode) === "multiple";
1818
1924
  return R(() => {
1819
- const u = ht(n, c);
1925
+ const u = At(n, l);
1820
1926
  u !== null && r(u);
1821
- }, [c, n, r]), /* @__PURE__ */ k("div", { className: "form-block-preview", children: [
1822
- i ? /* @__PURE__ */ l("div", { className: "form-block-preview-label", children: i }) : null,
1823
- /* @__PURE__ */ l(
1824
- Re,
1927
+ }, [l, n, r]), /* @__PURE__ */ _("div", { className: "form-block-preview", children: [
1928
+ i ? /* @__PURE__ */ c("div", { className: "form-block-preview-label", children: i }) : null,
1929
+ /* @__PURE__ */ c(
1930
+ Be,
1825
1931
  {
1826
- mode: c ? "multiple" : void 0,
1932
+ mode: l ? "multiple" : void 0,
1827
1933
  disabled: !t,
1828
1934
  allowClear: !0,
1829
1935
  className: "form-block-preview-control",
1830
1936
  style: { width: "100%" },
1831
- placeholder: a || (c ? "请选择多项" : "请选择"),
1937
+ placeholder: a || (l ? "请选择多项" : "请选择"),
1832
1938
  options: s,
1833
- value: c ? O(n) : oe(n),
1834
- onChange: (u) => r(c ? u ?? [] : u ?? "")
1939
+ value: l ? O(n) : ie(n),
1940
+ onChange: (u) => r(l ? u ?? [] : u ?? "")
1835
1941
  }
1836
1942
  )
1837
1943
  ] });
1838
1944
  }
1839
- const to = V(
1840
- Zr,
1841
- eo
1945
+ const yo = j(
1946
+ ho,
1947
+ go
1842
1948
  );
1843
- function no({ context: e }) {
1844
- const { interactive: t } = K(), { value: n, setValue: r } = G(e), o = e.componentModel.properties, i = T(o.label), a = T(o.variant) || "mutuallyExclusive", s = T(o.skoponPickerType), c = T(o.placeholder), u = zt(o.options), m = s === "select" || s === "multiselect" || s === "radio" || s === "checkbox" ? s : a === "multipleSelection" ? "checkbox" : "radio", b = m === "multiselect" || m === "checkbox";
1949
+ function vo({ context: e }) {
1950
+ const { interactive: t } = H(), { value: n, setValue: r } = K(e), o = e.componentModel.properties, i = I(o.label), a = I(o.variant) || "mutuallyExclusive", s = I(o.skoponPickerType), l = I(o.placeholder), u = Kt(o.options), m = s === "select" || s === "multiselect" || s === "radio" || s === "checkbox" ? s : a === "multipleSelection" ? "checkbox" : "radio", S = m === "multiselect" || m === "checkbox";
1845
1951
  return R(() => {
1846
- const g = ht(n, b);
1847
- g !== null && r(g);
1848
- }, [b, n, r]), /* @__PURE__ */ k("div", { className: "form-block-preview", children: [
1849
- i ? /* @__PURE__ */ l("div", { className: "form-block-preview-label", children: i }) : null,
1850
- m === "select" ? /* @__PURE__ */ l(
1851
- Re,
1952
+ const h = At(n, S);
1953
+ h !== null && r(h);
1954
+ }, [S, n, r]), /* @__PURE__ */ _("div", { className: "form-block-preview", children: [
1955
+ i ? /* @__PURE__ */ c("div", { className: "form-block-preview-label", children: i }) : null,
1956
+ m === "select" ? /* @__PURE__ */ c(
1957
+ Be,
1852
1958
  {
1853
1959
  disabled: !t,
1854
1960
  allowClear: !0,
1855
1961
  className: "form-block-preview-control",
1856
1962
  style: { width: "100%" },
1857
- placeholder: c || "请选择",
1963
+ placeholder: l || "请选择",
1858
1964
  options: u,
1859
- value: oe(n),
1860
- onChange: (g) => r(g ?? "")
1965
+ value: ie(n),
1966
+ onChange: (h) => r(h ?? "")
1861
1967
  }
1862
- ) : m === "multiselect" ? /* @__PURE__ */ l(
1863
- Re,
1968
+ ) : m === "multiselect" ? /* @__PURE__ */ c(
1969
+ Be,
1864
1970
  {
1865
1971
  mode: "multiple",
1866
1972
  disabled: !t,
1867
1973
  allowClear: !0,
1868
1974
  className: "form-block-preview-control",
1869
1975
  style: { width: "100%" },
1870
- placeholder: c || "请选择多项",
1976
+ placeholder: l || "请选择多项",
1871
1977
  options: u,
1872
1978
  value: O(n),
1873
- onChange: (g) => r(g ?? [])
1979
+ onChange: (h) => r(h ?? [])
1874
1980
  }
1875
- ) : m === "checkbox" ? /* @__PURE__ */ l(
1876
- Vt.Group,
1981
+ ) : m === "checkbox" ? /* @__PURE__ */ c(
1982
+ en.Group,
1877
1983
  {
1878
1984
  disabled: !t,
1879
1985
  className: "form-block-preview-control",
1880
1986
  options: u,
1881
1987
  value: O(n),
1882
- onChange: (g) => r(g)
1988
+ onChange: (h) => r(h)
1883
1989
  }
1884
- ) : /* @__PURE__ */ l(
1885
- jt.Group,
1990
+ ) : /* @__PURE__ */ c(
1991
+ tn.Group,
1886
1992
  {
1887
1993
  disabled: !t,
1888
1994
  className: "form-block-preview-control",
1889
1995
  options: u,
1890
- value: oe(n),
1891
- onChange: (g) => r(g.target.value)
1996
+ value: ie(n),
1997
+ onChange: (h) => r(h.target.value)
1892
1998
  }
1893
1999
  )
1894
2000
  ] });
1895
2001
  }
1896
- const ro = V(
2002
+ const bo = j(
1897
2003
  {
1898
2004
  name: "ChoicePicker",
1899
2005
  schema: f.object({
@@ -1905,57 +2011,57 @@ const ro = V(
1905
2011
  placeholder: f.any().optional()
1906
2012
  }).passthrough()
1907
2013
  },
1908
- no
2014
+ vo
1909
2015
  );
1910
- function oo({ context: e }) {
1911
- const { interactive: t } = K(), { value: n, setValue: r } = G(e), o = e.componentModel.properties, i = T(o.label);
1912
- return /* @__PURE__ */ k("div", { className: "form-block-preview", children: [
1913
- i ? /* @__PURE__ */ l("div", { className: "form-block-preview-label", children: i }) : null,
1914
- /* @__PURE__ */ l(
1915
- Lt,
2016
+ function So({ context: e }) {
2017
+ const { interactive: t } = H(), { value: n, setValue: r } = K(e), o = e.componentModel.properties, i = I(o.label);
2018
+ return /* @__PURE__ */ _("div", { className: "form-block-preview", children: [
2019
+ i ? /* @__PURE__ */ c("div", { className: "form-block-preview-label", children: i }) : null,
2020
+ /* @__PURE__ */ c(
2021
+ nn,
1916
2022
  {
1917
2023
  disabled: !t,
1918
2024
  className: "form-block-preview-control",
1919
- checked: le(n),
2025
+ checked: ce(n),
1920
2026
  onChange: (a) => r(a)
1921
2027
  }
1922
2028
  )
1923
2029
  ] });
1924
2030
  }
1925
- const io = V(
1926
- { name: "CheckBox", schema: ce("CheckBox") },
1927
- oo
2031
+ const ko = j(
2032
+ { name: "CheckBox", schema: ue("CheckBox") },
2033
+ So
1928
2034
  );
1929
- function ao(e, t, n) {
1930
- const r = oe(e);
2035
+ function Co(e, t, n) {
2036
+ const r = ie(e);
1931
2037
  if (!r) return;
1932
2038
  if (!t && n) {
1933
- const i = Ze(r, "HH:mm", !0);
2039
+ const i = st(r, "HH:mm", !0);
1934
2040
  return i.isValid() ? i : void 0;
1935
2041
  }
1936
- const o = Ze(r);
2042
+ const o = st(r);
1937
2043
  return o.isValid() ? o : void 0;
1938
2044
  }
1939
- function so({ context: e }) {
1940
- const { interactive: t } = K(), { value: n, setValue: r } = G(e), o = e.componentModel.properties, i = T(o.label), a = T(o.placeholder), s = o.enableDate === !0, c = o.enableTime === !0, u = ao(n, s, c), d = (m) => {
2045
+ function Ao({ context: e }) {
2046
+ const { interactive: t } = H(), { value: n, setValue: r } = K(e), o = e.componentModel.properties, i = I(o.label), a = I(o.placeholder), s = o.enableDate === !0, l = o.enableTime === !0, u = Co(n, s, l), d = (m) => {
1941
2047
  if (!m) {
1942
2048
  r("");
1943
2049
  return;
1944
2050
  }
1945
- if (!s && c) {
2051
+ if (!s && l) {
1946
2052
  r(m.format("HH:mm"));
1947
2053
  return;
1948
2054
  }
1949
- if (s && c) {
2055
+ if (s && l) {
1950
2056
  r(m.format("YYYY-MM-DDTHH:mm"));
1951
2057
  return;
1952
2058
  }
1953
2059
  r(m.format("YYYY-MM-DD"));
1954
2060
  };
1955
- return /* @__PURE__ */ k("div", { className: "form-block-preview", children: [
1956
- i ? /* @__PURE__ */ l("div", { className: "form-block-preview-label", children: i }) : null,
1957
- !s && c ? /* @__PURE__ */ l(
1958
- $t,
2061
+ return /* @__PURE__ */ _("div", { className: "form-block-preview", children: [
2062
+ i ? /* @__PURE__ */ c("div", { className: "form-block-preview-label", children: i }) : null,
2063
+ !s && l ? /* @__PURE__ */ c(
2064
+ rn,
1959
2065
  {
1960
2066
  disabled: !t,
1961
2067
  className: "form-block-preview-control",
@@ -1964,21 +2070,21 @@ function so({ context: e }) {
1964
2070
  value: u,
1965
2071
  onChange: d
1966
2072
  }
1967
- ) : /* @__PURE__ */ l(
1968
- Dt,
2073
+ ) : /* @__PURE__ */ c(
2074
+ on,
1969
2075
  {
1970
- showTime: s && c,
2076
+ showTime: s && l,
1971
2077
  disabled: !t,
1972
2078
  className: "form-block-preview-control",
1973
2079
  style: { width: "100%" },
1974
- placeholder: a || (s && c ? "选择日期时间" : "选择日期"),
2080
+ placeholder: a || (s && l ? "选择日期时间" : "选择日期"),
1975
2081
  value: u,
1976
2082
  onChange: d
1977
2083
  }
1978
2084
  )
1979
2085
  ] });
1980
2086
  }
1981
- const lo = V(
2087
+ const xo = j(
1982
2088
  {
1983
2089
  name: "DateTimeInput",
1984
2090
  schema: f.object({
@@ -1991,8 +2097,8 @@ const lo = V(
1991
2097
  max: f.any().optional()
1992
2098
  }).passthrough()
1993
2099
  },
1994
- so
1995
- ), co = {
2100
+ Ao
2101
+ ), To = {
1996
2102
  name: "FileUpload",
1997
2103
  schema: f.object({
1998
2104
  label: f.any().optional(),
@@ -2004,72 +2110,72 @@ const lo = V(
2004
2110
  value: f.any().optional()
2005
2111
  }).passthrough()
2006
2112
  };
2007
- function uo({ context: e }) {
2008
- const { interactive: t } = K(), { value: n, setValue: r } = G(e), o = e.componentModel.properties, i = T(o.label), a = T(o.accept), s = Array.isArray(o.fileAcceptTypes) ? o.fileAcceptTypes.map(String) : void 0, c = a ? a.split(",").map((p) => p.trim()).filter(Boolean) : void 0, u = hn(s, c), d = typeof o.filePlaceholderIcon == "string" && ["video", "audio", "image", "file", "spreadsheet", "document"].includes(
2113
+ function _o({ context: e }) {
2114
+ const { interactive: t } = H(), { value: n, setValue: r } = K(e), o = e.componentModel.properties, i = I(o.label), a = I(o.accept), s = Array.isArray(o.fileAcceptTypes) ? o.fileAcceptTypes.map(String) : void 0, l = a ? a.split(",").map((p) => p.trim()).filter(Boolean) : void 0, u = Mn(s, l), d = typeof o.filePlaceholderIcon == "string" && ["video", "audio", "image", "file", "spreadsheet", "document"].includes(
2009
2115
  o.filePlaceholderIcon
2010
- ) ? o.filePlaceholderIcon : "document", m = typeof o.minCount == "number" ? Math.max(0, o.minCount) : 0, b = typeof o.maxCount == "number" ? o.maxCount : 1, g = b > 0, A = O(n), N = g && A.length >= b, v = A.length < m;
2011
- return /* @__PURE__ */ k("div", { className: "form-block-preview", children: [
2012
- i ? /* @__PURE__ */ l("div", { className: "form-block-preview-label", children: i }) : null,
2013
- /* @__PURE__ */ k(
2014
- Te.Dragger,
2116
+ ) ? o.filePlaceholderIcon : "document", m = typeof o.minCount == "number" ? Math.max(0, o.minCount) : 0, S = typeof o.maxCount == "number" ? o.maxCount : 1, h = S > 0, A = O(n), N = h && A.length >= S, b = A.length < m;
2117
+ return /* @__PURE__ */ _("div", { className: "form-block-preview", children: [
2118
+ i ? /* @__PURE__ */ c("div", { className: "form-block-preview-label", children: i }) : null,
2119
+ /* @__PURE__ */ _(
2120
+ Ie.Dragger,
2015
2121
  {
2016
2122
  disabled: !t || N,
2017
- accept: fn(s, c),
2123
+ accept: Nn(s, l),
2018
2124
  className: "form-file-upload-preview",
2019
2125
  showUploadList: t && A.length > 0,
2020
- fileList: t ? A.map((p, h) => ({
2021
- uid: `${h}-${p}`,
2126
+ fileList: t ? A.map((p, v) => ({
2127
+ uid: `${v}-${p}`,
2022
2128
  name: p,
2023
2129
  status: "done"
2024
2130
  })) : [],
2025
2131
  beforeUpload: (p) => {
2026
- if (!t) return Te.LIST_IGNORE;
2027
- const h = O(nt(e));
2028
- if (g && h.length >= b) return Te.LIST_IGNORE;
2029
- const x = g ? [...h, p.name].slice(0, b) : [...h, p.name];
2030
- return r(x), !1;
2132
+ if (!t) return Ie.LIST_IGNORE;
2133
+ const v = O(ut(e));
2134
+ if (h && v.length >= S) return Ie.LIST_IGNORE;
2135
+ const g = h ? [...v, p.name].slice(0, S) : [...v, p.name];
2136
+ return r(g), !1;
2031
2137
  },
2032
2138
  onRemove: (p) => {
2033
- const h = O(nt(e)), x = /^(\d+)-/.exec(p.uid ?? ""), y = x ? Number(x[1]) : -1, C = y >= 0 && y < h.length ? h.filter((M, E) => E !== y) : h.filter((M) => M !== p.name);
2034
- if (C.length < m) return !1;
2035
- r(C);
2139
+ const v = O(ut(e)), g = /^(\d+)-/.exec(p.uid ?? ""), C = g ? Number(g[1]) : -1, U = C >= 0 && C < v.length ? v.filter((k, x) => x !== C) : v.filter((k) => k !== p.name);
2140
+ if (U.length < m) return !1;
2141
+ r(U);
2036
2142
  },
2037
2143
  children: [
2038
- /* @__PURE__ */ l("p", { className: "form-file-upload-preview-icon", children: /* @__PURE__ */ l(Hr, { type: d, size: 40 }) }),
2039
- /* @__PURE__ */ l("p", { className: "form-file-upload-preview-text", children: "点击或拖拽文件到此处上传" })
2144
+ /* @__PURE__ */ c("p", { className: "form-file-upload-preview-icon", children: /* @__PURE__ */ c(ao, { type: d, size: 40 }) }),
2145
+ /* @__PURE__ */ c("p", { className: "form-file-upload-preview-text", children: "点击或拖拽文件到此处上传" })
2040
2146
  ]
2041
2147
  }
2042
2148
  ),
2043
- /* @__PURE__ */ k(D.Text, { type: "secondary", className: "form-block-preview-help", children: [
2149
+ /* @__PURE__ */ _(V.Text, { type: "secondary", className: "form-block-preview-help", children: [
2044
2150
  "允许:",
2045
2151
  u ?? "全部类型",
2046
2152
  m > 0 ? `;至少 ${m} 个文件` : "",
2047
- g ? `;最多 ${b} 个文件` : "",
2153
+ h ? `;最多 ${S} 个文件` : "",
2048
2154
  ";当前仅收集文件名(不含文件内容,需宿主另行上传)",
2049
- v && t ? `(当前 ${A.length} 个,未达下限)` : ""
2155
+ b && t ? `(当前 ${A.length} 个,未达下限)` : ""
2050
2156
  ] })
2051
2157
  ] });
2052
2158
  }
2053
- const po = V(
2054
- co,
2055
- uo
2159
+ const Io = j(
2160
+ To,
2161
+ _o
2056
2162
  );
2057
- function mo({ context: e }) {
2058
- const { interactive: t } = K(), { value: n, setValue: r } = G(e), o = e.componentModel.properties, i = T(o.label), a = T(o.placeholder), s = T(o.variant) || "shortText", c = T(o.validationRegexp), u = oe(n) ?? "", d = !t, [m, b] = _(""), g = (v) => {
2059
- if (!c || !v.trim()) {
2060
- b("");
2163
+ function No({ context: e }) {
2164
+ const { interactive: t } = H(), { value: n, setValue: r } = K(e), o = e.componentModel.properties, i = I(o.label), a = I(o.placeholder), s = I(o.variant) || "shortText", l = I(o.validationRegexp), u = ie(n) ?? "", d = !t, [m, S] = F(""), h = (b) => {
2165
+ if (!l || !b.trim()) {
2166
+ S("");
2061
2167
  return;
2062
2168
  }
2063
- b(_t(v, c) ? "" : "格式不正确");
2169
+ S($t(b, l) ? "" : "格式不正确");
2064
2170
  };
2065
2171
  R(() => {
2066
- g(u);
2067
- }, [c, u]);
2172
+ h(u);
2173
+ }, [l, u]);
2068
2174
  const A = "form-block-preview-control";
2069
2175
  let N;
2070
2176
  if (s === "longText")
2071
- N = /* @__PURE__ */ l(
2072
- Ie.TextArea,
2177
+ N = /* @__PURE__ */ c(
2178
+ Ne.TextArea,
2073
2179
  {
2074
2180
  disabled: d,
2075
2181
  className: A,
@@ -2077,57 +2183,57 @@ function mo({ context: e }) {
2077
2183
  autoSize: { minRows: 2, maxRows: 6 },
2078
2184
  value: u,
2079
2185
  status: m ? "error" : void 0,
2080
- onChange: (v) => {
2081
- const p = v.target.value;
2082
- r(p), g(p);
2186
+ onChange: (b) => {
2187
+ const p = b.target.value;
2188
+ r(p), h(p);
2083
2189
  },
2084
- onBlur: (v) => g(v.target.value)
2190
+ onBlur: (b) => h(b.target.value)
2085
2191
  }
2086
2192
  );
2087
2193
  else if (s === "number") {
2088
- const v = u && Number.isFinite(Number(u)) ? Number(u) : void 0;
2089
- N = /* @__PURE__ */ l(
2090
- Ht,
2194
+ const b = u && Number.isFinite(Number(u)) ? Number(u) : void 0;
2195
+ N = /* @__PURE__ */ c(
2196
+ an,
2091
2197
  {
2092
2198
  disabled: d,
2093
2199
  className: A,
2094
2200
  style: { width: "100%" },
2095
2201
  placeholder: a || "数字",
2096
- value: v,
2202
+ value: b,
2097
2203
  onChange: (p) => r(p == null ? "" : String(p))
2098
2204
  }
2099
2205
  );
2100
- } else s === "obscured" ? N = /* @__PURE__ */ l(
2101
- Ie.Password,
2206
+ } else s === "obscured" ? N = /* @__PURE__ */ c(
2207
+ Ne.Password,
2102
2208
  {
2103
2209
  disabled: d,
2104
2210
  className: A,
2105
2211
  placeholder: a,
2106
2212
  value: u,
2107
- onChange: (v) => r(v.target.value)
2213
+ onChange: (b) => r(b.target.value)
2108
2214
  }
2109
- ) : N = /* @__PURE__ */ l(
2110
- Ie,
2215
+ ) : N = /* @__PURE__ */ c(
2216
+ Ne,
2111
2217
  {
2112
2218
  disabled: d,
2113
2219
  className: A,
2114
2220
  placeholder: a,
2115
2221
  value: u,
2116
2222
  status: m ? "error" : void 0,
2117
- onChange: (v) => {
2118
- const p = v.target.value;
2119
- r(p), g(p);
2223
+ onChange: (b) => {
2224
+ const p = b.target.value;
2225
+ r(p), h(p);
2120
2226
  },
2121
- onBlur: (v) => g(v.target.value)
2227
+ onBlur: (b) => h(b.target.value)
2122
2228
  }
2123
2229
  );
2124
- return /* @__PURE__ */ k("div", { className: "form-block-preview", children: [
2125
- i ? /* @__PURE__ */ l("div", { className: "form-block-preview-label", children: i }) : null,
2230
+ return /* @__PURE__ */ _("div", { className: "form-block-preview", children: [
2231
+ i ? /* @__PURE__ */ c("div", { className: "form-block-preview-label", children: i }) : null,
2126
2232
  N,
2127
- m ? /* @__PURE__ */ l(D.Text, { type: "danger", className: "form-block-preview-help", children: m }) : null
2233
+ m ? /* @__PURE__ */ c(V.Text, { type: "danger", className: "form-block-preview-help", children: m }) : null
2128
2234
  ] });
2129
2235
  }
2130
- const fo = V(
2236
+ const Mo = j(
2131
2237
  {
2132
2238
  name: "TextField",
2133
2239
  schema: f.object({
@@ -2138,37 +2244,37 @@ const fo = V(
2138
2244
  value: f.any().optional()
2139
2245
  }).passthrough()
2140
2246
  },
2141
- mo
2247
+ No
2142
2248
  );
2143
- function ho({ context: e }) {
2144
- const t = e.componentModel.properties, n = T(t.text), r = T(t.variant) || "body";
2145
- return Gr.has(r) ? r === "caption" ? /* @__PURE__ */ l(D.Text, { type: "secondary", className: "form-block-preview-paragraph", children: /* @__PURE__ */ l("em", { children: n }) }) : /* @__PURE__ */ l(r, { className: "form-block-preview-heading", children: n }) : /* @__PURE__ */ l(D.Paragraph, { className: "form-block-preview-paragraph", children: n });
2249
+ function Fo({ context: e }) {
2250
+ const t = e.componentModel.properties, n = I(t.text), r = I(t.variant) || "body";
2251
+ return lo.has(r) ? r === "caption" ? /* @__PURE__ */ c(V.Text, { type: "secondary", className: "form-block-preview-paragraph", children: /* @__PURE__ */ c("em", { children: n }) }) : /* @__PURE__ */ c(r, { className: "form-block-preview-heading", children: n }) : /* @__PURE__ */ c(V.Paragraph, { className: "form-block-preview-paragraph", children: n });
2146
2252
  }
2147
- const go = V(
2148
- { name: "Text", schema: ce("Text") },
2149
- ho
2253
+ const Uo = j(
2254
+ { name: "Text", schema: ue("Text") },
2255
+ Fo
2150
2256
  );
2151
- function Et() {
2257
+ function Gt() {
2152
2258
  const t = [
2153
- ...[...fe.components.values()].filter(
2154
- (r) => !Kr.has(r.name)
2259
+ ...[...he.components.values()].filter(
2260
+ (r) => !so.has(r.name)
2155
2261
  ),
2156
- Yr,
2157
- to,
2158
- Xr,
2159
- Wr,
2160
- Qr,
2161
- ro,
2162
- io,
2163
- lo,
2262
+ uo,
2263
+ yo,
2264
+ mo,
2164
2265
  po,
2165
2266
  fo,
2166
- go,
2167
- ...nr()
2168
- ], n = [...fe.functions.values()];
2169
- return new Zt(Ut, t, n, fe.themeSchema);
2170
- }
2171
- const H = {
2267
+ bo,
2268
+ ko,
2269
+ xo,
2270
+ Io,
2271
+ Mo,
2272
+ Uo,
2273
+ ...gr()
2274
+ ], n = [...he.functions.values()];
2275
+ return new fn(Ht, t, n, he.themeSchema);
2276
+ }
2277
+ const D = {
2172
2278
  jade9: "#29a383",
2173
2279
  jade10: "#26997b",
2174
2280
  jade11: "#208368",
@@ -2180,20 +2286,20 @@ const H = {
2180
2286
  primaryHover: "#26997b",
2181
2287
  primaryActive: "#1d3b31",
2182
2288
  onPrimary: "#ffffff"
2183
- }, yo = {
2289
+ }, Po = {
2184
2290
  cssVar: { key: "vidtempl" },
2185
2291
  token: {
2186
- colorPrimary: H.primarySolid,
2187
- colorPrimaryHover: H.primaryHover,
2188
- colorPrimaryActive: H.primaryActive,
2189
- colorLink: H.primary,
2190
- colorLinkHover: H.primaryHover,
2191
- colorSuccess: H.jade9,
2292
+ colorPrimary: D.primarySolid,
2293
+ colorPrimaryHover: D.primaryHover,
2294
+ colorPrimaryActive: D.primaryActive,
2295
+ colorLink: D.primary,
2296
+ colorLinkHover: D.primaryHover,
2297
+ colorSuccess: D.jade9,
2192
2298
  colorWarning: "#f5a623",
2193
2299
  gold6: "#f5a623",
2194
2300
  gold7: "#e6951a",
2195
2301
  colorError: "#e5484d",
2196
- colorInfo: H.primary,
2302
+ colorInfo: D.primary,
2197
2303
  colorBgLayout: "#f9f9f9",
2198
2304
  colorBgContainer: "#ffffff",
2199
2305
  colorBgElevated: "#ffffff",
@@ -2253,7 +2359,7 @@ const H = {
2253
2359
  },
2254
2360
  Tag: {
2255
2361
  defaultBg: "#e6f7ed",
2256
- defaultColor: H.primary,
2362
+ defaultColor: D.primary,
2257
2363
  fontSizeSM: 13
2258
2364
  },
2259
2365
  Form: {
@@ -2265,14 +2371,14 @@ const H = {
2265
2371
  }
2266
2372
  }
2267
2373
  };
2268
- function X({
2374
+ function J({
2269
2375
  children: e,
2270
2376
  locale: t,
2271
2377
  theme: n
2272
2378
  }) {
2273
- return /* @__PURE__ */ l(Kt, { theme: n ?? yo, locale: t, children: e });
2379
+ return /* @__PURE__ */ c(sn, { theme: n ?? Po, locale: t, children: e });
2274
2380
  }
2275
- const vo = wt(
2381
+ const Eo = Xt(
2276
2382
  function({
2277
2383
  doc: t,
2278
2384
  surfaceId: n = "skopon-form",
@@ -2281,59 +2387,59 @@ const vo = wt(
2281
2387
  fieldNames: i = [],
2282
2388
  resumeSearch: a = null,
2283
2389
  caseSearch: s = null,
2284
- wrapProvider: c = !0
2390
+ wrapProvider: l = !0
2285
2391
  }, u) {
2286
2392
  R(() => {
2287
- pt(), ut();
2393
+ bt(), vt();
2288
2394
  }, []);
2289
- const d = L(null), m = L(i);
2395
+ const d = q(null), m = q(i);
2290
2396
  m.current = i;
2291
- const b = q(() => {
2292
- if (je(t)) return "";
2397
+ const S = w(() => {
2398
+ if ($e(t)) return "";
2293
2399
  try {
2294
2400
  return JSON.stringify(t);
2295
2401
  } catch {
2296
2402
  return String(t);
2297
2403
  }
2298
- }, [t]), g = q(() => {
2299
- if (!b)
2404
+ }, [t]), h = w(() => {
2405
+ if (!S)
2300
2406
  return { surfaces: [], processor: null };
2301
2407
  try {
2302
- const p = JSON.parse(b), h = new ct([Et()]), x = dr(p, {
2408
+ const p = JSON.parse(S), v = new yt([Gt()]), g = Ir(p, {
2303
2409
  surfaceId: n,
2304
- catalogId: Ut
2410
+ catalogId: Ht
2305
2411
  });
2306
- return h.processMessages(x), {
2307
- surfaces: Array.from(h.model.surfacesMap.values()),
2308
- processor: h
2412
+ return v.processMessages(g), {
2413
+ surfaces: Array.from(v.model.surfacesMap.values()),
2414
+ processor: v
2309
2415
  };
2310
2416
  } catch (p) {
2311
2417
  return console.error("[SkoponFormRenderer] 渲染 A2UI surface 失败", p), { surfaces: [], processor: null };
2312
2418
  }
2313
- }, [b, n]), { surfaces: A, processor: N } = g;
2314
- if (d.current = N, qt(
2419
+ }, [S, n]), { surfaces: A, processor: N } = h;
2420
+ if (d.current = N, Qt(
2315
2421
  u,
2316
2422
  () => ({
2317
2423
  getValues(p) {
2318
- const h = d.current;
2319
- if (!h) return {};
2320
- const x = (p ?? m.current).map((y) => y.trim()).filter(Boolean);
2321
- return yr(h, n, x);
2424
+ const v = d.current;
2425
+ if (!v) return {};
2426
+ const g = (p ?? m.current).map((C) => C.trim()).filter(Boolean);
2427
+ return Ur(v, n, g);
2322
2428
  }
2323
2429
  }),
2324
2430
  [n]
2325
2431
  ), A.length === 0) {
2326
- const p = /* @__PURE__ */ l(qe, { resumeSearch: a, children: /* @__PURE__ */ l(we, { caseSearch: s, children: /* @__PURE__ */ l(Be, { interactive: o, children: r }) }) });
2327
- return c ? /* @__PURE__ */ l(X, { children: p }) : p;
2432
+ const p = /* @__PURE__ */ c(je, { resumeSearch: a, children: /* @__PURE__ */ c(Oe, { caseSearch: s, children: /* @__PURE__ */ c(qe, { interactive: o, children: r }) }) });
2433
+ return l ? /* @__PURE__ */ c(J, { children: p }) : p;
2328
2434
  }
2329
- const v = /* @__PURE__ */ l(qe, { resumeSearch: a, children: /* @__PURE__ */ l(we, { caseSearch: s, children: /* @__PURE__ */ l(Be, { interactive: o, children: /* @__PURE__ */ l("div", { className: "a2ui-surface a2ui-container", children: A.map((p) => /* @__PURE__ */ l(lt, { surface: p }, p.id)) }) }) }) });
2330
- return c ? /* @__PURE__ */ l(X, { children: v }) : v;
2435
+ const b = /* @__PURE__ */ c(je, { resumeSearch: a, children: /* @__PURE__ */ c(Oe, { caseSearch: s, children: /* @__PURE__ */ c(qe, { interactive: o, children: /* @__PURE__ */ c("div", { className: "a2ui-surface a2ui-container", children: A.map((p) => /* @__PURE__ */ c(gt, { surface: p }, p.id)) }) }) }) });
2436
+ return l ? /* @__PURE__ */ c(J, { children: b }) : b;
2331
2437
  }
2332
2438
  );
2333
- function de() {
2334
- return new ct([Et()]);
2439
+ function fe() {
2440
+ return new yt([Gt()]);
2335
2441
  }
2336
- function zo({
2442
+ function Qo({
2337
2443
  messages: e,
2338
2444
  surfaceId: t = "skopon-form-stream",
2339
2445
  emptyHint: n = null,
@@ -2342,28 +2448,28 @@ function zo({
2342
2448
  caseSearch: i = null
2343
2449
  }) {
2344
2450
  R(() => {
2345
- pt(), ut();
2451
+ bt(), vt();
2346
2452
  }, []);
2347
- const a = L(null);
2348
- a.current === null && (a.current = de());
2349
- const s = L(0), c = L(""), u = L(!0), d = L(t);
2350
- function m(p, h) {
2351
- a.current = p, s.current = h.length, c.current = JSON.stringify(h), u.current && (A(p), v(Array.from(p.model.surfacesMap.values())));
2453
+ const a = q(null);
2454
+ a.current === null && (a.current = fe());
2455
+ const s = q(0), l = q(""), u = q(!0), d = q(t);
2456
+ function m(p, v) {
2457
+ a.current = p, s.current = v.length, l.current = JSON.stringify(v), u.current && (A(p), b(Array.from(p.model.surfacesMap.values())));
2352
2458
  }
2353
- function b(p, h) {
2354
- if (h <= 0) return !1;
2355
- const x = JSON.stringify(p.slice(0, h)), y = c.current;
2356
- if (!y) return !0;
2459
+ function S(p, v) {
2460
+ if (v <= 0) return !1;
2461
+ const g = JSON.stringify(p.slice(0, v)), C = l.current;
2462
+ if (!C) return !0;
2357
2463
  try {
2358
- const C = JSON.parse(y);
2359
- return JSON.stringify(C.slice(0, h)) !== x;
2464
+ const U = JSON.parse(C);
2465
+ return JSON.stringify(U.slice(0, v)) !== g;
2360
2466
  } catch {
2361
2467
  return !0;
2362
2468
  }
2363
2469
  }
2364
- const [g, A] = _(
2470
+ const [h, A] = F(
2365
2471
  () => a.current
2366
- ), [N, v] = _(
2472
+ ), [N, b] = F(
2367
2473
  () => Array.from(
2368
2474
  a.current.model.surfacesMap.values()
2369
2475
  )
@@ -2371,81 +2477,118 @@ function zo({
2371
2477
  return R(() => (u.current = !0, () => {
2372
2478
  u.current = !1;
2373
2479
  }), []), R(() => {
2374
- a.current = g;
2375
- }, [g]), R(() => {
2480
+ a.current = h;
2481
+ }, [h]), R(() => {
2376
2482
  const p = () => {
2377
- u.current && v(Array.from(g.model.surfacesMap.values()));
2378
- }, h = g.onSurfaceCreated(p), x = g.onSurfaceDeleted(p);
2483
+ u.current && b(Array.from(h.model.surfacesMap.values()));
2484
+ }, v = h.onSurfaceCreated(p), g = h.onSurfaceDeleted(p);
2379
2485
  return () => {
2380
- h.unsubscribe(), x.unsubscribe();
2486
+ v.unsubscribe(), g.unsubscribe();
2381
2487
  };
2382
- }, [g]), R(() => {
2488
+ }, [h]), R(() => {
2383
2489
  let p = !1;
2384
- const h = d.current !== t;
2385
- if (d.current = t, h) {
2386
- const M = de();
2387
- return Array.isArray(e) && e.length > 0 ? (M.processMessages(e), p || m(M, e)) : (a.current = M, s.current = 0, c.current = "", p || (A(M), v([]))), () => {
2490
+ const v = d.current !== t;
2491
+ if (d.current = t, v) {
2492
+ const k = fe();
2493
+ return Array.isArray(e) && e.length > 0 ? (k.processMessages(e), p || m(k, e)) : (a.current = k, s.current = 0, l.current = "", p || (A(k), b([]))), () => {
2388
2494
  p = !0;
2389
2495
  };
2390
2496
  }
2391
2497
  if (!Array.isArray(e) || e.length === 0) {
2392
2498
  if (s.current > 0) {
2393
- const M = de();
2394
- a.current = M, s.current = 0, c.current = "", p || (A(M), v([]));
2499
+ const k = fe();
2500
+ a.current = k, s.current = 0, l.current = "", p || (A(k), b([]));
2395
2501
  }
2396
2502
  return () => {
2397
2503
  p = !0;
2398
2504
  };
2399
2505
  }
2400
- const x = a.current, y = s.current;
2401
- if (e.length < y || b(e, y)) {
2402
- const M = de();
2403
- return M.processMessages(e), p || m(M, e), () => {
2506
+ const g = a.current, C = s.current;
2507
+ if (e.length < C || S(e, C)) {
2508
+ const k = fe();
2509
+ return k.processMessages(e), p || m(k, e), () => {
2404
2510
  p = !0;
2405
2511
  };
2406
2512
  }
2407
- const C = e.slice(y);
2408
- return C.length === 0 ? () => {
2513
+ const U = e.slice(C);
2514
+ return U.length === 0 ? () => {
2409
2515
  p = !0;
2410
- } : (x.processMessages(C), s.current = e.length, c.current = JSON.stringify(e), p || v(Array.from(x.model.surfacesMap.values())), () => {
2516
+ } : (g.processMessages(U), s.current = e.length, l.current = JSON.stringify(e), p || b(Array.from(g.model.surfacesMap.values())), () => {
2411
2517
  p = !0;
2412
2518
  });
2413
- }, [e, t]), N.length === 0 ? /* @__PURE__ */ l(X, { children: n }) : /* @__PURE__ */ l(X, { children: /* @__PURE__ */ l(qe, { resumeSearch: o, children: /* @__PURE__ */ l(we, { caseSearch: i, children: /* @__PURE__ */ l(Be, { interactive: r, children: /* @__PURE__ */ l("div", { className: "a2ui-surface a2ui-container", children: N.map((p) => /* @__PURE__ */ l(lt, { surface: p }, p.id)) }) }) }) }) });
2519
+ }, [e, t]), N.length === 0 ? /* @__PURE__ */ c(J, { children: n }) : /* @__PURE__ */ c(J, { children: /* @__PURE__ */ c(je, { resumeSearch: o, children: /* @__PURE__ */ c(Oe, { caseSearch: i, children: /* @__PURE__ */ c(qe, { interactive: r, children: /* @__PURE__ */ c("div", { className: "a2ui-surface a2ui-container", children: N.map((p) => /* @__PURE__ */ c(gt, { surface: p }, p.id)) }) }) }) }) });
2414
2520
  }
2415
- function So({
2521
+ function zo(e) {
2522
+ const t = Ae(e);
2523
+ return t ? Xe(t.blocks) : e && typeof e == "object" && !Array.isArray(e) ? e : {};
2524
+ }
2525
+ function Ro({
2416
2526
  payload: e,
2417
2527
  callbackUrl: t,
2418
2528
  title: n,
2419
2529
  unpublishedFormId: r,
2420
2530
  incompleteFormId: o,
2421
- copyMode: i = "display",
2531
+ answerAgentContext: i,
2422
2532
  onNotify: a
2423
2533
  }) {
2424
- const s = q(
2425
- () => Nt(e, t),
2534
+ const [s, l] = F(!1), u = q(!0);
2535
+ R(() => (u.current = !0, () => {
2536
+ u.current = !1;
2537
+ }), []);
2538
+ const d = w(
2539
+ () => Et(e, t),
2426
2540
  [e, t]
2427
- ), c = q(() => i === "submitFields" ? Nr(e, t) : s, [i, e, t, s]);
2428
- async function u() {
2429
- try {
2430
- await Ft(c), a == null || a("success", "已复制到剪贴板");
2431
- } catch {
2432
- a == null || a("error", "复制失败");
2541
+ ), m = w(
2542
+ () => ({
2543
+ ...i,
2544
+ callbackUrl: (i == null ? void 0 : i.callbackUrl) ?? t ?? null
2545
+ }),
2546
+ [i, t]
2547
+ );
2548
+ async function S() {
2549
+ if (!s) {
2550
+ l(!0);
2551
+ try {
2552
+ const h = zo(e), A = et({
2553
+ context: m,
2554
+ payload: e,
2555
+ answer: h
2556
+ }), N = await Vt(A);
2557
+ if (!u.current) return;
2558
+ const b = Lt(N);
2559
+ a == null || a(b.type, b.message);
2560
+ } catch (h) {
2561
+ if (!u.current) return;
2562
+ const A = h instanceof Error ? h.message : "提交失败";
2563
+ a == null || a("error", A);
2564
+ } finally {
2565
+ u.current && l(!1);
2566
+ }
2433
2567
  }
2434
2568
  }
2435
- const d = i === "submitFields" ? "复制提交字段 curl(向 callback 回传)" : "复制 curl";
2436
- return /* @__PURE__ */ k("div", { className: "ask-user-curl-card", children: [
2437
- /* @__PURE__ */ k("div", { className: "ask-user-curl-card-header", children: [
2438
- /* @__PURE__ */ k("div", { className: "ask-user-curl-card-header-title", children: [
2439
- /* @__PURE__ */ l(D.Text, { type: "secondary", children: n ?? "curl 命令" }),
2440
- r ? /* @__PURE__ */ l(ne, { title: r, children: /* @__PURE__ */ l(re, { className: "ask-user-curl-unpublished-tag", children: "卡片 ID 未发布" }) }) : null,
2441
- o ? /* @__PURE__ */ l(ne, { title: o, children: /* @__PURE__ */ l(re, { className: "ask-user-curl-incomplete-tag", children: "卡片 ID 待补足" }) }) : null
2569
+ return /* @__PURE__ */ _("div", { className: "ask-user-curl-card", children: [
2570
+ /* @__PURE__ */ _("div", { className: "ask-user-curl-card-header", children: [
2571
+ /* @__PURE__ */ _("div", { className: "ask-user-curl-card-header-title", children: [
2572
+ /* @__PURE__ */ c(V.Text, { type: "secondary", children: n ?? "curl 命令" }),
2573
+ r ? /* @__PURE__ */ c(re, { title: r, children: /* @__PURE__ */ c(oe, { className: "ask-user-curl-unpublished-tag", children: "卡片 ID 未发布" }) }) : null,
2574
+ o ? /* @__PURE__ */ c(re, { title: o, children: /* @__PURE__ */ c(oe, { className: "ask-user-curl-incomplete-tag", children: "卡片 ID 待补足" }) }) : null
2442
2575
  ] }),
2443
- /* @__PURE__ */ l(ne, { title: d, children: /* @__PURE__ */ l(Se, { size: "small", type: "text", onClick: () => void u(), children: "复制" }) })
2576
+ /* @__PURE__ */ c(re, { title: "提交到 answer_agent_callback_url", children: /* @__PURE__ */ c(
2577
+ Se,
2578
+ {
2579
+ size: "small",
2580
+ type: "text",
2581
+ loading: s,
2582
+ disabled: s,
2583
+ onClick: () => void S(),
2584
+ children: "提交"
2585
+ }
2586
+ ) })
2444
2587
  ] }),
2445
- /* @__PURE__ */ l("pre", { className: "skopon-form-curl-json", children: s })
2588
+ /* @__PURE__ */ c("pre", { className: "skopon-form-curl-json", children: d })
2446
2589
  ] });
2447
2590
  }
2448
- function bo(e, t) {
2591
+ function wo(e, t) {
2449
2592
  if (t && typeof t == "object" && t !== null && "message" in t) {
2450
2593
  const n = t.message;
2451
2594
  if (typeof n == "string" && n.trim())
@@ -2453,172 +2596,198 @@ function bo(e, t) {
2453
2596
  }
2454
2597
  return typeof t == "string" && t.trim() ? `提交失败 (${e}): ${t.trim()}` : `提交失败 (${e})`;
2455
2598
  }
2456
- function Eo({
2599
+ function Zo({
2457
2600
  payload: e,
2458
2601
  formUniqueId: t,
2459
2602
  callbackUrl: n,
2460
2603
  submitMode: r = "curl",
2461
- fetchFormDetail: o,
2462
- onNotify: i,
2463
- resumeSearch: a = null,
2464
- caseSearch: s = null
2604
+ answerAgentContext: o,
2605
+ fetchFormDetail: i,
2606
+ onNotify: a,
2607
+ resumeSearch: s = null,
2608
+ caseSearch: l = null
2465
2609
  }) {
2466
- const [c, u] = _(null), [d, m] = _(!1), [b, g] = _(!0), [A, N] = _(!1), v = L(null), p = L(!0), h = L(i);
2467
- h.current = i;
2468
- const x = (t == null ? void 0 : t.trim()) ?? "";
2469
- R(() => (p.current = !0, () => {
2470
- p.current = !1;
2610
+ const [u, d] = F(null), [m, S] = F(!1), [h, A] = F(!0), [N, b] = F(!1), p = q(null), v = q(!0), g = q(a);
2611
+ g.current = a;
2612
+ const C = (t == null ? void 0 : t.trim()) ?? "", U = w(
2613
+ () => ({
2614
+ ...o,
2615
+ callbackUrl: (o == null ? void 0 : o.callbackUrl) ?? n ?? null
2616
+ }),
2617
+ [o, n]
2618
+ );
2619
+ R(() => (v.current = !0, () => {
2620
+ v.current = !1;
2471
2621
  }), []), R(() => {
2472
- let P = !1;
2473
- return x ? (g(!0), m(!1), o({ formUniqueId: x }).then((U) => {
2474
- P || (m(!!U.disabled), u(U.formDefinition ?? null));
2475
- }).catch((U) => {
2476
- var S;
2477
- if (!P) {
2478
- m(!1), u(null);
2479
- const F = U instanceof Error ? U.message : "获取表单定义失败";
2480
- (S = h.current) == null || S.call(h, "error", F);
2622
+ let y = !1;
2623
+ return C ? (A(!0), S(!1), i({ formUniqueId: C }).then((T) => {
2624
+ y || (S(!!T.disabled), d(T.formDefinition ?? null));
2625
+ }).catch((T) => {
2626
+ var E;
2627
+ if (!y) {
2628
+ S(!1), d(null);
2629
+ const M = T instanceof Error ? T.message : "获取表单定义失败";
2630
+ (E = g.current) == null || E.call(g, "error", M);
2481
2631
  }
2482
2632
  }).finally(() => {
2483
- P || g(!1);
2633
+ y || A(!1);
2484
2634
  }), () => {
2485
- P = !0;
2486
- }) : (g(!1), m(!1), u(null), () => {
2487
- P = !0;
2635
+ y = !0;
2636
+ }) : (A(!1), S(!1), d(null), () => {
2637
+ y = !0;
2488
2638
  });
2489
- }, [x, o]);
2490
- const y = q(() => At(e), [e]), C = q(() => y ? Cr(y, c ?? void 0) : null, [y, c]), M = (C == null ? void 0 : C.matchedBlocks) ?? [], E = !!(y && kr(y) && M.length === 0), $ = q(() => E && y ? Ar(y) : C && C.renderBlocks.length > 0 ? C.renderBlocks : [], [C, E, y]), Q = q(
2491
- () => E ? {} : Tt((C == null ? void 0 : C.extraBlocks) ?? []),
2492
- [E, C]
2493
- ), j = q(() => E && y ? Tr(y) : $.filter((P) => {
2494
- var U;
2495
- return (U = P.name) == null ? void 0 : U.trim();
2496
- }).map((P) => P.name.trim()), [E, y, $]), w = q(() => {
2497
- if ($.length === 0) return null;
2498
- const P = (C == null ? void 0 : C.title) ?? (y == null ? void 0 : y.title) ?? "", U = (C == null ? void 0 : C.description) ?? (y == null ? void 0 : y.description) ?? "";
2499
- return hr({ title: P, description: U }, $);
2500
- }, [C, y, $]), J = x ? `ask-user-${x}` : "ask-user-payload";
2501
- if (b)
2502
- return /* @__PURE__ */ l(X, { children: /* @__PURE__ */ l("div", { className: "ask-user-form-card", children: /* @__PURE__ */ l(De, { size: "small" }) }) });
2503
- if (!y || $.length === 0)
2504
- return /* @__PURE__ */ l(X, { children: /* @__PURE__ */ l(
2505
- So,
2639
+ }, [C, i]);
2640
+ const k = w(() => Ae(e), [e]), x = w(() => k ? Rr(k, u ?? void 0) : null, [k, u]), X = (x == null ? void 0 : x.matchedBlocks) ?? [], L = !!(k && Br(k) && X.length === 0), P = w(() => L && k ? qr(k) : x && x.renderBlocks.length > 0 ? x.renderBlocks : [], [x, L, k]), B = w(
2641
+ () => L ? {} : Xe((x == null ? void 0 : x.extraBlocks) ?? []),
2642
+ [L, x]
2643
+ ), $ = w(() => L && k ? Or(k) : P.filter((y) => {
2644
+ var T;
2645
+ return (T = y.name) == null ? void 0 : T.trim();
2646
+ }).map((y) => y.name.trim()), [L, k, P]), G = w(() => {
2647
+ if (P.length === 0) return null;
2648
+ const y = (x == null ? void 0 : x.title) ?? (k == null ? void 0 : k.title) ?? "", T = (x == null ? void 0 : x.description) ?? (k == null ? void 0 : k.description) ?? "";
2649
+ return Mr({ title: y, description: T }, P);
2650
+ }, [x, k, P]), Q = C ? `ask-user-${C}` : "ask-user-payload";
2651
+ if (h)
2652
+ return /* @__PURE__ */ c(J, { children: /* @__PURE__ */ c("div", { className: "ask-user-form-card", children: /* @__PURE__ */ c(Ke, { size: "small" }) }) });
2653
+ if (!k || P.length === 0)
2654
+ return /* @__PURE__ */ c(J, { children: /* @__PURE__ */ c(
2655
+ Ro,
2506
2656
  {
2507
2657
  payload: e,
2508
2658
  callbackUrl: n,
2509
- copyMode: "submitFields",
2510
- unpublishedFormId: d && x ? x : void 0,
2511
- onNotify: i
2659
+ answerAgentContext: U,
2660
+ unpublishedFormId: m && C ? C : void 0,
2661
+ onNotify: a
2512
2662
  }
2513
2663
  ) });
2514
- async function Y() {
2515
- var P, U, S, F, B, I, We;
2516
- if (!A) {
2517
- N(!0);
2664
+ async function Z() {
2665
+ var y, T, E, M, tt, nt, rt;
2666
+ if (!N) {
2667
+ b(!0);
2518
2668
  try {
2519
- const Z = ((P = v.current) == null ? void 0 : P.getValues(j)) ?? {}, ue = $r($, Z);
2520
- if (ue) {
2521
- (U = h.current) == null || U.call(h, "error", ue.message);
2669
+ const ee = ((y = p.current) == null ? void 0 : y.getValues($)) ?? {}, me = oo(P, ee);
2670
+ if (me) {
2671
+ (T = g.current) == null || T.call(g, "error", me.message);
2522
2672
  return;
2523
2673
  }
2524
- const Rt = { ...Z, ...Q };
2674
+ const ot = { ...ee, ...B };
2525
2675
  if (r === "post") {
2526
- const Qe = (n ?? "").trim();
2527
- if (!Qe) {
2528
- (S = h.current) == null || S.call(h, "error", "callback_url 为空,无法提交");
2676
+ const at = (n ?? "").trim();
2677
+ if (!at) {
2678
+ (E = g.current) == null || E.call(g, "error", "callback_url 为空,无法提交");
2529
2679
  return;
2530
2680
  }
2531
- const Ae = await Mr(Qe, Rt);
2532
- if (!p.current) return;
2533
- Ae.ok ? (F = h.current) == null || F.call(h, "success", "提交成功") : (B = h.current) == null || B.call(h, "error", bo(Ae.status, Ae.body));
2681
+ const _e = await zt(at, ot);
2682
+ if (!v.current) return;
2683
+ _e.ok ? (M = g.current) == null || M.call(g, "success", "提交成功") : (tt = g.current) == null || tt.call(g, "error", wo(_e.status, _e.body));
2534
2684
  return;
2535
2685
  }
2536
- if (await Ft(
2537
- Mt({ cardValues: Z, extraValues: Q, callbackUrl: n })
2538
- ), !p.current) return;
2539
- (I = h.current) == null || I.call(h, "success", "已复制 curl 到剪贴板");
2540
- } catch (Z) {
2541
- if (!p.current) return;
2542
- const ue = Z instanceof Error ? Z.message : "复制失败";
2543
- (We = h.current) == null || We.call(h, "error", ue);
2686
+ const Jt = et({
2687
+ context: U,
2688
+ payload: e,
2689
+ form: u ?? k,
2690
+ answer: ot
2691
+ }), Yt = await Vt(Jt);
2692
+ if (!v.current) return;
2693
+ const it = Lt(Yt);
2694
+ (nt = g.current) == null || nt.call(g, it.type, it.message);
2695
+ } catch (ee) {
2696
+ if (!v.current) return;
2697
+ const me = ee instanceof Error ? ee.message : "提交失败";
2698
+ (rt = g.current) == null || rt.call(g, "error", me);
2544
2699
  } finally {
2545
- p.current && N(!1);
2700
+ v.current && b(!1);
2546
2701
  }
2547
2702
  }
2548
2703
  }
2549
- return /* @__PURE__ */ l(X, { children: /* @__PURE__ */ k("div", { className: "ask-user-form-card", children: [
2550
- d && x ? /* @__PURE__ */ l("div", { className: "ask-user-form-card-status", children: /* @__PURE__ */ l(ne, { title: x, children: /* @__PURE__ */ l(re, { className: "ask-user-curl-unpublished-tag", children: "卡片 ID 未发布" }) }) }) : null,
2551
- /* @__PURE__ */ l(
2552
- vo,
2704
+ return /* @__PURE__ */ c(J, { children: /* @__PURE__ */ _("div", { className: "ask-user-form-card", children: [
2705
+ m && C ? /* @__PURE__ */ c("div", { className: "ask-user-form-card-status", children: /* @__PURE__ */ c(re, { title: C, children: /* @__PURE__ */ c(oe, { className: "ask-user-curl-unpublished-tag", children: "卡片 ID 未发布" }) }) }) : null,
2706
+ /* @__PURE__ */ c(
2707
+ Eo,
2553
2708
  {
2554
- ref: v,
2555
- doc: w,
2556
- surfaceId: J,
2557
- fieldNames: j,
2709
+ ref: p,
2710
+ doc: G,
2711
+ surfaceId: Q,
2712
+ fieldNames: $,
2558
2713
  interactive: !0,
2559
2714
  wrapProvider: !1,
2560
- resumeSearch: a,
2561
- caseSearch: s
2715
+ resumeSearch: s,
2716
+ caseSearch: l
2562
2717
  }
2563
2718
  ),
2564
- /* @__PURE__ */ l("div", { className: "ask-user-form-actions", children: /* @__PURE__ */ l(ne, { title: r === "curl" ? "点击复制 curl" : "提交 JSON 到 callback_url", children: /* @__PURE__ */ l(
2565
- Se,
2719
+ /* @__PURE__ */ c("div", { className: "ask-user-form-actions", children: /* @__PURE__ */ c(
2720
+ re,
2566
2721
  {
2567
- type: "primary",
2568
- size: "small",
2569
- loading: A,
2570
- disabled: A,
2571
- onClick: () => void Y(),
2572
- children: "提交"
2722
+ title: r === "post" ? "提交 JSON 到 callback_url" : "提交到 answer_agent_callback_url",
2723
+ children: /* @__PURE__ */ c(
2724
+ Se,
2725
+ {
2726
+ type: "primary",
2727
+ size: "small",
2728
+ loading: N,
2729
+ disabled: N,
2730
+ onClick: () => void Z(),
2731
+ children: "提交"
2732
+ }
2733
+ )
2573
2734
  }
2574
- ) }) })
2735
+ ) })
2575
2736
  ] }) });
2576
2737
  }
2577
2738
  export {
2578
- Po as A2UI_PROTOCOL_VERSION,
2579
- Eo as AskUserFormCard,
2580
- we as CaseSearchProvider,
2581
- So as CurlSubmitBlock,
2582
- Fr as DEFAULT_AUTH_STORAGE_KEY,
2583
- _r as DEFAULT_AUTH_TOKEN_FIELD,
2584
- en as FORM_MEDIA_SIZES,
2585
- qe as ResumeSearchProvider,
2586
- zo as SkoponA2uiStreamRenderer,
2587
- X as SkoponFormProvider,
2588
- vo as SkoponFormRenderer,
2589
- mr as a2uiToBlocks,
2590
- Ct as blocksToA2ui,
2591
- Ir as buildAskUserCurlBodyJson,
2592
- Mt as buildAskUserCurlStatement,
2593
- Nr as buildAskUserSubmitCurlFromPayload,
2594
- hr as buildAskUserSurface,
2595
- Nt as buildCurlStatement,
2596
- Ft as copyTextToClipboard,
2597
- jr as createCaseSearchClient,
2598
- Er as createFormClient,
2599
- wr as createResumeSearchClient,
2600
- Uo as createSkoponSdkClients,
2601
- Tt as extractExtraBlockValues,
2602
- yr as extractSurfaceValues,
2603
- Tr as getPayloadInputFieldNames,
2604
- Ar as getPayloadRenderableBlocks,
2605
- Cr as intersectPayloadBlocksWithForm,
2606
- je as isA2uiSurfaceEmpty,
2607
- W as isInputBlockType,
2608
- be as isLayoutBlockType,
2609
- he as isMediaBlockType,
2610
- gr as mapFormDefinitionFromDto,
2611
- ee as normalizeFormDefinition,
2612
- At as parsePayloadBlocksJson,
2613
- kr as payloadHasInputBlocks,
2614
- Xe as resolveClientHeaders,
2615
- zr as resolveSkoponAuthHeaders,
2616
- fr as resolveSurfaceFromFormDefinition,
2617
- yo as skoponAntdTheme,
2618
- H as skoponBrandColors,
2619
- Mr as submitFormJson,
2620
- dr as surfaceDocToMessages,
2621
- ge as syncFormDefinition,
2622
- Un as useCaseSearch,
2623
- jn as useResumeSearch
2739
+ Go as A2UI_PROTOCOL_VERSION,
2740
+ Zo as AskUserFormCard,
2741
+ Oe as CaseSearchProvider,
2742
+ Ro as CurlSubmitBlock,
2743
+ te as DEFAULT_ANSWER_AGENT_CALLBACK_URL,
2744
+ $r as DEFAULT_AUTH_ANSWER_AGENT_CALLBACK_URL_FIELD,
2745
+ Rt as DEFAULT_AUTH_STORAGE_KEY,
2746
+ Vr as DEFAULT_AUTH_TOKEN_FIELD,
2747
+ hn as FORM_MEDIA_SIZES,
2748
+ je as ResumeSearchProvider,
2749
+ Qo as SkoponA2uiStreamRenderer,
2750
+ J as SkoponFormProvider,
2751
+ Eo as SkoponFormRenderer,
2752
+ _r as a2uiToBlocks,
2753
+ Mt as blocksToA2ui,
2754
+ et as buildAnswerAgentBody,
2755
+ jr as buildAskUserCurlBodyJson,
2756
+ Lr as buildAskUserCurlStatement,
2757
+ Jo as buildAskUserSubmitCurlFromPayload,
2758
+ Mr as buildAskUserSurface,
2759
+ Et as buildCurlStatement,
2760
+ Yo as copyTextToClipboard,
2761
+ no as createCaseSearchClient,
2762
+ Kr as createFormClient,
2763
+ Qr as createResumeSearchClient,
2764
+ Xo as createSkoponSdkClients,
2765
+ Xe as extractExtraBlockValues,
2766
+ Ur as extractSurfaceValues,
2767
+ Lt as formatAnswerAgentSubmitMessage,
2768
+ Or as getPayloadInputFieldNames,
2769
+ qr as getPayloadRenderableBlocks,
2770
+ Rr as intersectPayloadBlocksWithForm,
2771
+ $e as isA2uiSurfaceEmpty,
2772
+ Y as isInputBlockType,
2773
+ ke as isLayoutBlockType,
2774
+ ge as isMediaBlockType,
2775
+ Fr as mapFormDefinitionFromDto,
2776
+ W as normalizeFormDefinition,
2777
+ Ae as parsePayloadBlocksJson,
2778
+ Br as payloadHasInputBlocks,
2779
+ Hr as resolveAnswerAgentCallbackUrl,
2780
+ Ze as resolveClientHeaders,
2781
+ qt as resolveSkoponAuthHeaders,
2782
+ Nr as resolveSurfaceFromFormDefinition,
2783
+ Po as skoponAntdTheme,
2784
+ D as skoponBrandColors,
2785
+ Vt as submitAnswerAgent,
2786
+ zt as submitFormJson,
2787
+ Ir as surfaceDocToMessages,
2788
+ ye as syncFormDefinition,
2789
+ Kn as useCaseSearch,
2790
+ tr as useResumeSearch,
2791
+ Ot as validateAnswerAgentBody,
2792
+ Wo as validateAnswerAgentContext
2624
2793
  };