weaver-e10-builder 1.6.0 → 1.6.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.
Files changed (60) hide show
  1. package/dist/commands/check.d.ts.map +1 -1
  2. package/dist/commands/check.js +109 -51
  3. package/dist/commands/check.js.map +1 -1
  4. package/dist/commands/form-attachment-setting.d.ts +3 -0
  5. package/dist/commands/form-attachment-setting.d.ts.map +1 -0
  6. package/dist/commands/form-attachment-setting.js +422 -0
  7. package/dist/commands/form-attachment-setting.js.map +1 -0
  8. package/dist/commands/form-data.d.ts.map +1 -1
  9. package/dist/commands/form-data.js +49 -1
  10. package/dist/commands/form-data.js.map +1 -1
  11. package/dist/commands/form-field-linkage.d.ts +6 -1
  12. package/dist/commands/form-field-linkage.d.ts.map +1 -1
  13. package/dist/commands/form-field-linkage.js +138 -31
  14. package/dist/commands/form-field-linkage.js.map +1 -1
  15. package/dist/commands/form.d.ts.map +1 -1
  16. package/dist/commands/form.js +47 -2
  17. package/dist/commands/form.js.map +1 -1
  18. package/dist/commands/project.d.ts.map +1 -1
  19. package/dist/commands/project.js +39 -6
  20. package/dist/commands/project.js.map +1 -1
  21. package/dist/services/form-attachment-settings.d.ts +110 -0
  22. package/dist/services/form-attachment-settings.d.ts.map +1 -0
  23. package/dist/services/form-attachment-settings.js +332 -0
  24. package/dist/services/form-attachment-settings.js.map +1 -0
  25. package/dist/services/form-attachment-upload.d.ts +30 -0
  26. package/dist/services/form-attachment-upload.d.ts.map +1 -0
  27. package/dist/services/form-attachment-upload.js +76 -0
  28. package/dist/services/form-attachment-upload.js.map +1 -0
  29. package/dist/services/form-data-openapi.d.ts +2 -0
  30. package/dist/services/form-data-openapi.d.ts.map +1 -1
  31. package/dist/services/form-data-openapi.js +1 -0
  32. package/dist/services/form-data-openapi.js.map +1 -1
  33. package/package.json +1 -1
  34. package/skill-docs/SKILL.md +163 -160
  35. package/skill-docs/_catalog.md +6 -4
  36. package/skill-docs/assets/sample/api/formApi.js +689 -510
  37. package/skill-docs/assets/sample/app/config.js +4 -0
  38. package/skill-docs/assets/sample/app/fields.js +25 -0
  39. package/skill-docs/assets/sample/entry.js +24 -22
  40. package/skill-docs/assets/sample/eslint.config.cjs +1 -0
  41. package/skill-docs/assets/sample/pages/Items.js +247 -0
  42. package/skill-docs/assets/sample/styles/prototypeStyles.js +137 -0
  43. package/skill-docs/references/coding/guide-edit-backfill.md +102 -150
  44. package/skill-docs/references/coding/guide-form-crud.md +195 -172
  45. package/skill-docs/references/coding/guide-html-to-react.md +250 -0
  46. package/skill-docs/references/coding/guide-page-code.md +194 -167
  47. package/skill-docs/references/coding/guide-page-export.md +27 -18
  48. package/skill-docs/references/coding/ref-compile-rules.md +7 -7
  49. package/skill-docs/references/common/map.md +2 -1
  50. package/skill-docs/references/common/ref-cli-commands.md +13 -6
  51. package/skill-docs/references/components/display-FilePreview.md +5 -4
  52. package/skill-docs/references/form/guide-field-linkage.md +4 -1
  53. package/skill-docs/references/form/guide-form-attachment-setting.md +95 -0
  54. package/skill-docs/references/form/guide-form-data.md +22 -1
  55. package/skill-docs/assets/sample/config/config.js +0 -0
  56. package/skill-docs/assets/sample/config/configLoad.js +0 -0
  57. package/skill-docs/assets/sample/config/configLoad_default.js +0 -0
  58. package/skill-docs/assets/sample/config/config_default.js +0 -0
  59. package/skill-docs/assets/sample/memo.md +0 -0
  60. package/skill-docs/assets/sample/readme.js +0 -8
@@ -1 +1 @@
1
- {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/commands/project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAqW9D"}
1
+ {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/commands/project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAqY9D"}
@@ -248,6 +248,7 @@ export function registerProjectCommands(program) {
248
248
  .argument('<projectId>', '项目 ID')
249
249
  .argument('<zipPath>', 'zip 文件路径')
250
250
  .requiredOption('--main-url <url>', '应用主页 URL(如 /sp/custom/ecode/table-demo)')
251
+ .option('--replace', '导入后删除同名旧应用目录,避免出现 ecode1')
251
252
  .action(async (projectId, zipPath, cmdOpts) => {
252
253
  // Fix MSYS path mangling: /sp/... → D:/Program Files/Git/sp/...
253
254
  let mainUrl = cmdOpts.mainUrl;
@@ -291,6 +292,38 @@ export function registerProjectCommands(program) {
291
292
  const rootFolders = uploadData?.data?.rootFolders || [];
292
293
  const root = rootFolders[0] || {};
293
294
  console.error(` fileId: ${fileId}, dir: ${dirName}`);
295
+ const listTree = async () => {
296
+ const r = await fetch(`${baseUrl}/api/ecode/tree/list?parentId=${projectId}`, {
297
+ headers: { Accept: 'application/json', eteamsid: auth.eteamsId },
298
+ }).then((x) => x.json());
299
+ return { folders: r?.data?.folders || [], codes: r?.data?.codes || [] };
300
+ };
301
+ const deletedFolders = [];
302
+ // --replace:先在导入前删掉同名旧目录(含 ecode1/ecode2 这类后缀),
303
+ // 否则平台会在旧目录旁再建一个,事后很难判断哪个才是新导入的。
304
+ if (cmdOpts.replace && root.name) {
305
+ const baseName = String(root.name);
306
+ const sameBase = (name) => {
307
+ const n = String(name);
308
+ if (n === baseName)
309
+ return true;
310
+ return n.startsWith(baseName) && /^\d+$/.test(n.slice(baseName.length));
311
+ };
312
+ const beforeTree = await listTree();
313
+ for (const f of beforeTree.folders.filter((x) => sameBase(x.name))) {
314
+ const delData = await fetch(`${baseUrl}/api/ecode/folder/delete/${f.id}`, {
315
+ method: 'POST',
316
+ headers: { Accept: 'application/json', eteamsid: auth.eteamsId },
317
+ }).then((x) => x.json());
318
+ if (delData?.code === 200 && delData?.status) {
319
+ deletedFolders.push(String(f.id));
320
+ console.error(` 已清理同名旧目录 [${f.id}] ${f.name}`);
321
+ }
322
+ else {
323
+ console.error(` 删除旧目录失败 [${f.id}] ${f.name}: ${delData?.msg || '未知错误'}`);
324
+ }
325
+ }
326
+ }
294
327
  // Step 2: Confirm import
295
328
  const impParams = JSON.stringify([{
296
329
  id: root.id || '',
@@ -323,22 +356,22 @@ export function registerProjectCommands(program) {
323
356
  }
324
357
  console.error('导入成功!');
325
358
  // Step 3: Show tree
326
- const treeData = await fetch(`${baseUrl}/api/ecode/tree/list?parentId=${projectId}`, {
327
- headers: { Accept: 'application/json', eteamsid: auth.eteamsId },
328
- }).then(r => r.json());
329
- const folders = treeData?.data?.folders || [];
330
- const codes = treeData?.data?.codes || [];
359
+ const afterTree = await listTree();
360
+ const folders = afterTree.folders;
361
+ const codes = afterTree.codes;
331
362
  console.error(` 项目 [${projectId}] 目录结构:`);
332
363
  for (const f of folders)
333
364
  console.error(` [DIR] [${f.id}] ${f.name}`);
334
365
  for (const c of codes)
335
366
  console.error(` [FILE] [${c.id}] ${c.name}`);
336
367
  if (opts.json) {
337
- console.log(JSON.stringify({ projectId, mainUrl, fileId, dirName }));
368
+ console.log(JSON.stringify({ projectId, mainUrl, fileId, dirName, replaced: deletedFolders }));
338
369
  }
339
370
  else {
340
371
  console.log(`项目 [${projectId}] 导入完成`);
341
372
  console.log(` mainUrl: ${mainUrl}`);
373
+ if (deletedFolders.length)
374
+ console.log(` 已清理同名旧目录: ${deletedFolders.join(', ')}`);
342
375
  }
343
376
  });
344
377
  }
@@ -1 +1 @@
1
- {"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/commands/project.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/commands/project.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,110 @@
1
+ /**
2
+ * 表单附件上传设置(附件设置页)的读写。
3
+ *
4
+ * 平台把设置分成三层:
5
+ * 1. 表单通用配置 —— configType=0 / type=common,不带 fieldId;
6
+ * 2. 字段级覆盖 —— configType=1 / type=folder,带 fieldId;
7
+ * 3. 页面展示 —— 字段级某一项留空时继承通用配置。
8
+ *
9
+ * 通用配置里三个落点要分开看:
10
+ * - `folderId` + `folderIdBrowserValue` : 附件/图片上传目录
11
+ * - `fixedDirectory` : 新建文档存储位置
12
+ * - `addTypeConfig.types` : 新建方式(可创建的文档类型)
13
+ *
14
+ * 字段级覆盖里对应:
15
+ * - `folderId` + `folderIdBrowserValue` : 上传目录(folderSelectType=0 固定目录 / 1 选项关联)
16
+ * - `docFixedDirectoryConfig` : 新建文档存储位置
17
+ * - `docAddTypeConfig` : 新建方式
18
+ *
19
+ * 保存顺序按页面行为:先写字段级列表,再写通用配置。只读字段(customAttmentSize、
20
+ * formFields 等)回写前必须剔除,否则会被当成业务数据提交。
21
+ */
22
+ import type { ApiClient } from '../core/client.js';
23
+ export interface AttachmentTarget {
24
+ appId: string;
25
+ objId: string;
26
+ formId: string;
27
+ }
28
+ export interface CommonChanges {
29
+ /** 上传目录;null 表示清空 */
30
+ uploadFolder?: any | null;
31
+ /** 新建文档存储位置;null 表示清空 */
32
+ docFolder?: any | null;
33
+ /** 新建方式;null 表示清空 */
34
+ docTypes?: string[] | null;
35
+ /** 允许上传的扩展名;null 表示清空(不受限) */
36
+ formats?: string[] | null;
37
+ maxSizeMb?: number | string;
38
+ enable?: boolean;
39
+ displayTip?: boolean;
40
+ }
41
+ export interface FieldChanges {
42
+ uploadMode?: 'fixed' | 'option';
43
+ uploadFolder?: any | null;
44
+ optionFieldId?: string;
45
+ docFolder?: any | null;
46
+ docTypes?: string[] | null;
47
+ formats?: string[] | null;
48
+ }
49
+ /** 上传格式预设,对应设计器里的五个快捷按钮。 */
50
+ export declare const FORMAT_PRESETS: Record<string, string[]>;
51
+ /**
52
+ * 逗号串 / 预设 / 数组 → 扩展名数组(去空、去重、保持顺序)。
53
+ *
54
+ * 预设必须带 `@` 前缀(如 `@doc,@image`),否则 `doc` 这种既是预设名又是真实扩展名的值
55
+ * 会被误展开成整个文档类。
56
+ */
57
+ export declare function normalizeFormats(input: string | string[] | undefined): string[];
58
+ /** 扩展名数组 → 平台保存形状(逗号串,保留尾逗号,与设计器一致)。 */
59
+ export declare function formatLimitString(exts: string[]): string;
60
+ /** 逗号串 → 扩展名数组,供展示。 */
61
+ export declare function parseFormatLimit(value: string | undefined): string[];
62
+ /** 读取表单通用配置(附件设置页中间那栏)。 */
63
+ export declare function readAttachmentCommon(client: ApiClient, baseUrl: string, target: AttachmentTarget): Promise<any>;
64
+ /** 读取单个附件字段的有效配置。 */
65
+ export declare function readAttachmentField(client: ApiClient, baseUrl: string, target: AttachmentTarget, fieldId: string): Promise<any>;
66
+ /** 读取表单下所有附件字段的字段级配置。 */
67
+ export declare function listAttachmentFields(client: ApiClient, baseUrl: string, target: AttachmentTarget): Promise<any[]>;
68
+ /** 读取表单主表字段记录(解析选项关联字段、展示字段名用)。 */
69
+ export declare function listFormFields(client: ApiClient, baseUrl: string, target: AttachmentTarget): Promise<any[]>;
70
+ /** 名称或 ID → 字段记录;匹配多个时要求使用 ID。 */
71
+ export declare function findFormField(fields: any[], input: string): any;
72
+ /** 读取“新建方式设置”里可选的文档类型。 */
73
+ export declare function readDocumentCreateMenus(client: ApiClient, baseUrl: string, folderId?: string): Promise<any[]>;
74
+ /**
75
+ * 列出可用的文档目录。
76
+ *
77
+ * 目录浏览器一次只返回一类:默认请求给系统知识库(100-10x),
78
+ * `noChoiceType=sys,privy` 给公司/私有知识库。两次合并后再去重,否则会把
79
+ * “系统知识库/文档(101)”这类目录误判成不存在。
80
+ */
81
+ export declare function listDocumentFolders(client: ApiClient, baseUrl: string): Promise<any[]>;
82
+ /** 按目录 ID 查文档目录节点(返回的值可直接用来拼保存报文)。 */
83
+ export declare function resolveDocumentFolder(client: ApiClient, baseUrl: string, folderId: string): Promise<any>;
84
+ /** 按名称或路径查目录;重名时报错要求改用 ID。 */
85
+ export declare function resolveDocumentFolderByName(client: ApiClient, baseUrl: string, name: string): Promise<any>;
86
+ /** 目录节点 → 上传目录的展示对象(folderIdBrowserValue)。 */
87
+ export declare function folderBrowserValue(node: any): Record<string, any>;
88
+ /**
89
+ * 取上传目录 ID。
90
+ *
91
+ * 平台读回时**不返回顶层 folderId**,只给 folderIdBrowserValue[0](且形状与写报文不同);
92
+ * 写报文才带 folderId。所有「判断是否已设置」和回读比对都必须走这里。
93
+ */
94
+ export declare function uploadFolderIdOf(config: any): string;
95
+ /** 目录节点 → 新建文档存储位置(fixedDirectory / docFixedDirectoryConfig)。 */
96
+ export declare function fixedDirectoryValue(node: any): Record<string, any>;
97
+ /** 合并通用配置改动;返回完整可保存对象。 */
98
+ export declare function applyCommonChanges(config: any, changes: CommonChanges): Record<string, any>;
99
+ /** 合并字段级配置改动;返回完整可保存实体。 */
100
+ export declare function applyFieldChanges(entity: any, changes: FieldChanges): Record<string, any>;
101
+ /** 构造通用配置保存报文(纯函数,便于单测锁定形状)。 */
102
+ export declare function buildCommonSaveBody(target: AttachmentTarget, config: any): Record<string, any>;
103
+ /** 构造字段级列表保存报文(纯函数,便于单测锁定形状)。 */
104
+ export declare function buildFieldListSaveBody(target: AttachmentTarget, entities: any[]): Record<string, any>;
105
+ /** 保存表单通用配置。 */
106
+ export declare function saveAttachmentCommon(client: ApiClient, baseUrl: string, target: AttachmentTarget, config: any): Promise<void>;
107
+ /** 保存字段级配置列表(整组提交,未改动的实体原样带回)。 */
108
+ export declare function saveAttachmentFields(client: ApiClient, baseUrl: string, target: AttachmentTarget, entities: any[]): Promise<void>;
109
+ export declare function findAttachmentEntity(entities: any[], field: string): any | undefined;
110
+ //# sourceMappingURL=form-attachment-settings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-attachment-settings.d.ts","sourceRoot":"","sources":["../../src/services/form-attachment-settings.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,332 @@
1
+ const ATTACHMENT_PATH = '/api/ebuilder/form/form/setting/attachment';
2
+ const DOC_FOLDER_BROWSER_PATH = '/api/doc/common/browser/complete/folder';
3
+ const DOC_CREATE_SETTING_PATH = '/api/doc/folders/createDocument/getDocumentBrowserCreateSetting';
4
+ /** 上传格式预设,对应设计器里的五个快捷按钮。 */
5
+ export const FORMAT_PRESETS = {
6
+ doc: ['txt', 'pdf', 'doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx', 'wps', 'rtf', 'hlp'],
7
+ image: ['jpg', 'jpeg', 'png', 'gif', 'bmp', 'tif'],
8
+ video: ['mkv', 'mp4', 'avi', 'swf', 'wmv', 'rmvb', 'mov', 'mpg'],
9
+ audio: ['mp3', 'flac', 'ape', 'wma', 'wav', 'aac', 'm4a', 'au', 'ram', 'mmf', 'aif'],
10
+ archive: ['rar', 'zip', '7z', 'gz', 'arj', 'z'],
11
+ };
12
+ /**
13
+ * 逗号串 / 预设 / 数组 → 扩展名数组(去空、去重、保持顺序)。
14
+ *
15
+ * 预设必须带 `@` 前缀(如 `@doc,@image`),否则 `doc` 这种既是预设名又是真实扩展名的值
16
+ * 会被误展开成整个文档类。
17
+ */
18
+ export function normalizeFormats(input) {
19
+ const raw = Array.isArray(input) ? input : String(input ?? '').split(',');
20
+ const out = [];
21
+ for (const item of raw) {
22
+ const value = String(item).trim().replace(/^\./, '');
23
+ if (!value)
24
+ continue;
25
+ if (value.startsWith('@')) {
26
+ const preset = FORMAT_PRESETS[value.slice(1)];
27
+ if (!preset)
28
+ throw new Error(`未知的上传格式预设:${value}。可选:${Object.keys(FORMAT_PRESETS).map((key) => `@${key}`).join(', ')}`);
29
+ for (const ext of preset) {
30
+ if (!out.includes(ext))
31
+ out.push(ext);
32
+ }
33
+ continue;
34
+ }
35
+ if (!out.includes(value))
36
+ out.push(value);
37
+ }
38
+ return out;
39
+ }
40
+ /** 扩展名数组 → 平台保存形状(逗号串,保留尾逗号,与设计器一致)。 */
41
+ export function formatLimitString(exts) {
42
+ return exts.length ? `${exts.join(',')},` : '';
43
+ }
44
+ /** 逗号串 → 扩展名数组,供展示。 */
45
+ export function parseFormatLimit(value) {
46
+ return String(value ?? '').split(',').map((item) => item.trim()).filter(Boolean);
47
+ }
48
+ function checked(res, action) {
49
+ if (res?.code !== 200 || !res?.status) {
50
+ throw new Error(`${action}失败:${res?.msg || '接口返回异常'}`);
51
+ }
52
+ return res.data;
53
+ }
54
+ function locateBody(target, type, fieldId) {
55
+ return {
56
+ formId: target.formId,
57
+ type,
58
+ ...(fieldId ? { fieldId: String(fieldId) } : {}),
59
+ module: 'ebuilderform',
60
+ apiModule: 'ebuilder/form',
61
+ customParam: { appId: target.appId, objId: target.objId },
62
+ };
63
+ }
64
+ /** 读取表单通用配置(附件设置页中间那栏)。 */
65
+ export async function readAttachmentCommon(client, baseUrl, target) {
66
+ return checked(await client.post(`${baseUrl}${ATTACHMENT_PATH}/getWeaFormAndData?apid=${encodeURIComponent(target.appId)}`, locateBody(target, 'common'), { ebbusinessid: target.formId }), '读取附件通用设置');
67
+ }
68
+ /** 读取单个附件字段的有效配置。 */
69
+ export async function readAttachmentField(client, baseUrl, target, fieldId) {
70
+ return checked(await client.post(`${baseUrl}${ATTACHMENT_PATH}/getWeaFormAndData?apid=${encodeURIComponent(target.appId)}`, locateBody(target, 'folder', fieldId), { ebbusinessid: target.formId }), '读取附件字段设置');
71
+ }
72
+ /** 读取表单下所有附件字段的字段级配置。 */
73
+ export async function listAttachmentFields(client, baseUrl, target) {
74
+ const data = checked(await client.post(`${baseUrl}${ATTACHMENT_PATH}/listAttachFields?apid=${encodeURIComponent(target.appId)}`, {
75
+ formId: target.formId,
76
+ apiModule: 'ebuilder/form',
77
+ module: 'ebuilderform',
78
+ customParam: { appId: target.appId, objId: target.objId },
79
+ }, { ebbusinessid: target.formId }), '读取附件字段列表');
80
+ return Array.isArray(data) ? data : [];
81
+ }
82
+ /** 读取表单主表字段记录(解析选项关联字段、展示字段名用)。 */
83
+ export async function listFormFields(client, baseUrl, target) {
84
+ const res = await client.post(`${baseUrl}/api/ebuilder/form/form/field/manage/getFormFieldPage?apid=${encodeURIComponent(target.appId)}`, {
85
+ pageNo: 1,
86
+ pageSize: 500,
87
+ module: 'ebuilderform',
88
+ customParam: { appId: target.appId },
89
+ formFieldSearchEntity: { isDelete: 0, status: 'enable', formId: target.formId },
90
+ }, { ebbusinessid: target.formId });
91
+ return res?.data?.pageDatas?.result || res?.data?.data?.records || res?.data?.data || [];
92
+ }
93
+ /** 名称或 ID → 字段记录;匹配多个时要求使用 ID。 */
94
+ export function findFormField(fields, input) {
95
+ const hits = fields.filter((field) => String(field.fieldId) === String(input)
96
+ || String(field.id) === String(input)
97
+ || String(field.title) === input);
98
+ if (!hits.length)
99
+ throw new Error(`字段 ${input} 不存在`);
100
+ if (hits.length > 1)
101
+ throw new Error(`字段 ${input} 匹配到多个,请改用 fieldId`);
102
+ return hits[0];
103
+ }
104
+ /** 读取“新建方式设置”里可选的文档类型。 */
105
+ export async function readDocumentCreateMenus(client, baseUrl, folderId = '-1') {
106
+ const data = checked(await client.post(`${baseUrl}${DOC_CREATE_SETTING_PATH}`, { folderId: String(folderId) }), '读取新建方式');
107
+ return Array.isArray(data?.menus) ? data.menus : [];
108
+ }
109
+ function flattenFolderNodes(nodes) {
110
+ const out = [];
111
+ const walk = (list) => {
112
+ for (const node of list || []) {
113
+ if (!node)
114
+ continue;
115
+ out.push(node);
116
+ if (Array.isArray(node.children) && node.children.length)
117
+ walk(node.children);
118
+ }
119
+ };
120
+ walk(nodes);
121
+ return out;
122
+ }
123
+ /**
124
+ * 列出可用的文档目录。
125
+ *
126
+ * 目录浏览器一次只返回一类:默认请求给系统知识库(100-10x),
127
+ * `noChoiceType=sys,privy` 给公司/私有知识库。两次合并后再去重,否则会把
128
+ * “系统知识库/文档(101)”这类目录误判成不存在。
129
+ */
130
+ export async function listDocumentFolders(client, baseUrl) {
131
+ const queries = [
132
+ { noUserName: '1', newly: 1, searchValue: '' },
133
+ { browserMultiple: true, noChoiceType: 'sys,privy', newly: 1, searchValue: '' },
134
+ ];
135
+ const nodes = [];
136
+ let lastError = null;
137
+ for (const query of queries) {
138
+ try {
139
+ const data = checked(await client.post(`${baseUrl}${DOC_FOLDER_BROWSER_PATH}`, query), '查询文档目录');
140
+ nodes.push(...flattenFolderNodes(Array.isArray(data?.data) ? data.data : []));
141
+ }
142
+ catch (error) {
143
+ lastError = error;
144
+ }
145
+ }
146
+ if (!nodes.length && lastError)
147
+ throw lastError;
148
+ const seen = new Set();
149
+ return nodes.filter((node) => {
150
+ const id = String(node.id ?? '');
151
+ if (!id || seen.has(id))
152
+ return false;
153
+ seen.add(id);
154
+ return true;
155
+ });
156
+ }
157
+ /** 按目录 ID 查文档目录节点(返回的值可直接用来拼保存报文)。 */
158
+ export async function resolveDocumentFolder(client, baseUrl, folderId) {
159
+ const nodes = await listDocumentFolders(client, baseUrl);
160
+ const hit = nodes.find((node) => String(node.id) === String(folderId));
161
+ if (!hit)
162
+ throw new Error(`文档目录 ${folderId} 不存在或无权限访问`);
163
+ return hit;
164
+ }
165
+ /** 按名称或路径查目录;重名时报错要求改用 ID。 */
166
+ export async function resolveDocumentFolderByName(client, baseUrl, name) {
167
+ const nodes = await listDocumentFolders(client, baseUrl);
168
+ const hits = nodes.filter((node) => String(node.title ?? '') === name
169
+ || String(node.content ?? '') === name);
170
+ if (!hits.length)
171
+ throw new Error(`文档目录 ${name} 不存在`);
172
+ if (hits.length > 1)
173
+ throw new Error(`文档目录 ${name} 匹配到多个,请改用目录 ID`);
174
+ return hits[0];
175
+ }
176
+ /** 目录节点 → 上传目录的展示对象(folderIdBrowserValue)。 */
177
+ export function folderBrowserValue(node) {
178
+ return {
179
+ employeeName: node?.employeeName ?? '',
180
+ icon: node?.icon ?? '',
181
+ title: node?.title ?? node?.content ?? '',
182
+ type: node?.type ?? '',
183
+ isLeaf: node?.isLeaf ?? false,
184
+ content: node?.content ?? node?.title ?? '',
185
+ parentId: node?.parentId ?? '',
186
+ children: [],
187
+ disabled: node?.disabled ?? false,
188
+ id: String(node?.id ?? ''),
189
+ key: node?.key ?? {},
190
+ username: node?.username ?? node?.title ?? '',
191
+ };
192
+ }
193
+ /**
194
+ * 取上传目录 ID。
195
+ *
196
+ * 平台读回时**不返回顶层 folderId**,只给 folderIdBrowserValue[0](且形状与写报文不同);
197
+ * 写报文才带 folderId。所有「判断是否已设置」和回读比对都必须走这里。
198
+ */
199
+ export function uploadFolderIdOf(config) {
200
+ const node = config?.folderIdBrowserValue?.[0];
201
+ return String(node?.id ?? node?.dataId ?? config?.folderId ?? '');
202
+ }
203
+ /** 目录节点 → 新建文档存储位置(fixedDirectory / docFixedDirectoryConfig)。 */
204
+ export function fixedDirectoryValue(node) {
205
+ return {
206
+ folderValue: [{ id: String(node?.id ?? ''), content: String(node?.content ?? node?.title ?? '') }],
207
+ type: 'fixed',
208
+ folderType: 'range',
209
+ };
210
+ }
211
+ function stripCommonReadOnly(config) {
212
+ const { customAttmentSize, formFields, ...rest } = config || {};
213
+ return rest;
214
+ }
215
+ /** 合并通用配置改动;返回完整可保存对象。 */
216
+ export function applyCommonChanges(config, changes) {
217
+ const next = { ...(config || {}) };
218
+ if (changes.uploadFolder !== undefined) {
219
+ if (changes.uploadFolder === null) {
220
+ next.folderId = '';
221
+ next.folderIdBrowserValue = [];
222
+ }
223
+ else {
224
+ next.folderSelectType = '0';
225
+ next.folderId = String(changes.uploadFolder.id);
226
+ next.folderIdBrowserValue = [folderBrowserValue(changes.uploadFolder)];
227
+ }
228
+ }
229
+ if (changes.docFolder !== undefined) {
230
+ next.fixedDirectory = changes.docFolder ? fixedDirectoryValue(changes.docFolder) : {};
231
+ }
232
+ if (changes.docTypes !== undefined) {
233
+ next.addTypeConfig = changes.docTypes && changes.docTypes.length
234
+ ? { types: changes.docTypes }
235
+ : {};
236
+ }
237
+ if (changes.formats !== undefined) {
238
+ next.customLimitFormat = formatLimitString(changes.formats ?? []);
239
+ }
240
+ if (changes.maxSizeMb !== undefined) {
241
+ next.attmentSizeLimit = String(changes.maxSizeMb);
242
+ }
243
+ if (changes.enable !== undefined) {
244
+ next.enableState = changes.enable ? 1 : 0;
245
+ }
246
+ if (changes.displayTip !== undefined) {
247
+ next.displayTip = changes.displayTip;
248
+ }
249
+ return next;
250
+ }
251
+ /** 合并字段级配置改动;返回完整可保存实体。 */
252
+ export function applyFieldChanges(entity, changes) {
253
+ const next = { ...(entity || {}) };
254
+ const mode = changes.uploadMode;
255
+ if (mode === 'fixed') {
256
+ if (!changes.uploadFolder)
257
+ throw new Error('固定目录模式需要同时提供 --upload-dir');
258
+ next.folderSelectType = '0';
259
+ next.folderId = String(changes.uploadFolder.id);
260
+ next.folderIdBrowserValue = [folderBrowserValue(changes.uploadFolder)];
261
+ delete next.optionId;
262
+ }
263
+ else if (mode === 'option') {
264
+ if (!changes.optionFieldId)
265
+ throw new Error('选项关联模式需要同时提供 --option-field');
266
+ next.folderSelectType = '1';
267
+ next.optionId = String(changes.optionFieldId);
268
+ delete next.folderId;
269
+ delete next.folderIdBrowserValue;
270
+ }
271
+ else if (changes.uploadFolder !== undefined) {
272
+ if (String(next.folderSelectType) === '1') {
273
+ throw new Error('该字段当前是选项关联,先指定 --upload-mode fixed 再改固定目录');
274
+ }
275
+ if (changes.uploadFolder === null) {
276
+ next.folderId = '';
277
+ next.folderIdBrowserValue = [];
278
+ }
279
+ else {
280
+ next.folderId = String(changes.uploadFolder.id);
281
+ next.folderIdBrowserValue = [folderBrowserValue(changes.uploadFolder)];
282
+ }
283
+ }
284
+ if (changes.docFolder !== undefined) {
285
+ next.docFixedDirectoryConfig = changes.docFolder ? fixedDirectoryValue(changes.docFolder) : {};
286
+ }
287
+ if (changes.docTypes !== undefined) {
288
+ next.docAddTypeConfig = changes.docTypes && changes.docTypes.length
289
+ ? { types: changes.docTypes }
290
+ : {};
291
+ }
292
+ if (changes.formats !== undefined) {
293
+ next.customLimitFormat = formatLimitString(changes.formats ?? []);
294
+ }
295
+ return next;
296
+ }
297
+ /** 构造通用配置保存报文(纯函数,便于单测锁定形状)。 */
298
+ export function buildCommonSaveBody(target, config) {
299
+ const payload = stripCommonReadOnly(config);
300
+ // 读回没有顶层 folderId;保存报文需要它,从展示对象里补回来。
301
+ if (!payload.folderId)
302
+ payload.folderId = uploadFolderIdOf(payload);
303
+ return {
304
+ ...payload,
305
+ formId: target.formId,
306
+ configType: 0,
307
+ type: 'common',
308
+ customParam: { appId: target.appId, objId: target.objId },
309
+ };
310
+ }
311
+ /** 构造字段级列表保存报文(纯函数,便于单测锁定形状)。 */
312
+ export function buildFieldListSaveBody(target, entities) {
313
+ return {
314
+ formId: target.formId,
315
+ formAttachmentConfigEntities: entities,
316
+ configType: 1,
317
+ customParam: { appId: target.appId, objId: target.objId },
318
+ };
319
+ }
320
+ /** 保存表单通用配置。 */
321
+ export async function saveAttachmentCommon(client, baseUrl, target, config) {
322
+ checked(await client.post(`${baseUrl}${ATTACHMENT_PATH}/insertOrUpdateAttachmentForm?apid=${encodeURIComponent(target.appId)}`, buildCommonSaveBody(target, config), { ebbusinessid: target.formId }), '保存附件通用设置');
323
+ }
324
+ /** 保存字段级配置列表(整组提交,未改动的实体原样带回)。 */
325
+ export async function saveAttachmentFields(client, baseUrl, target, entities) {
326
+ checked(await client.post(`${baseUrl}${ATTACHMENT_PATH}/insertOrUpdateAttachmentFormList?apid=${encodeURIComponent(target.appId)}`, buildFieldListSaveBody(target, entities), { ebbusinessid: target.formId }), '保存附件字段设置');
327
+ }
328
+ export function findAttachmentEntity(entities, field) {
329
+ return entities.find((entity) => String(entity.fieldId) === String(field)
330
+ || String(entity.fieldName) === field);
331
+ }
332
+ //# sourceMappingURL=form-attachment-settings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-attachment-settings.js","sourceRoot":"","sources":["../../src/services/form-attachment-settings.ts"],"names":[],"mappings":"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"}