weaver-e10-builder 1.5.11 → 1.5.12

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 (172) hide show
  1. package/README.md +212 -189
  2. package/assets/image-style-observation.schema.json +1355 -0
  3. package/assets/layout-spec.schema.json +52 -0
  4. package/dist/commands/form-field-linkage.d.ts +55 -0
  5. package/dist/commands/form-field-linkage.d.ts.map +1 -1
  6. package/dist/commands/form-field-linkage.js +1026 -12
  7. package/dist/commands/form-field-linkage.js.map +1 -1
  8. package/dist/commands/form-formula-linkage.d.ts +36 -0
  9. package/dist/commands/form-formula-linkage.d.ts.map +1 -1
  10. package/dist/commands/form-formula-linkage.js +107 -7
  11. package/dist/commands/form-formula-linkage.js.map +1 -1
  12. package/dist/commands/form-layout-restore.d.ts +3 -0
  13. package/dist/commands/form-layout-restore.d.ts.map +1 -0
  14. package/dist/commands/form-layout-restore.js +217 -0
  15. package/dist/commands/form-layout-restore.js.map +1 -0
  16. package/dist/commands/form-layout.d.ts.map +1 -1
  17. package/dist/commands/form-layout.js +11 -1
  18. package/dist/commands/form-layout.js.map +1 -1
  19. package/dist/commands/form-obj-meta.d.ts +12 -0
  20. package/dist/commands/form-obj-meta.d.ts.map +1 -0
  21. package/dist/commands/form-obj-meta.js +116 -0
  22. package/dist/commands/form-obj-meta.js.map +1 -0
  23. package/dist/commands/form-validate.d.ts.map +1 -1
  24. package/dist/commands/form-validate.js +167 -35
  25. package/dist/commands/form-validate.js.map +1 -1
  26. package/dist/commands/form.d.ts.map +1 -1
  27. package/dist/commands/form.js +26 -2
  28. package/dist/commands/form.js.map +1 -1
  29. package/dist/commands/menu.d.ts.map +1 -1
  30. package/dist/commands/menu.js +5 -3
  31. package/dist/commands/menu.js.map +1 -1
  32. package/dist/commands/wf-form.d.ts.map +1 -1
  33. package/dist/commands/wf-form.js +215 -13
  34. package/dist/commands/wf-form.js.map +1 -1
  35. package/dist/core/client.d.ts +2 -1
  36. package/dist/core/client.d.ts.map +1 -1
  37. package/dist/core/client.js +4 -2
  38. package/dist/core/client.js.map +1 -1
  39. package/dist/index.js +2 -0
  40. package/dist/index.js.map +1 -1
  41. package/dist/services/actionflow/calendar_mapper.d.ts.map +1 -1
  42. package/dist/services/actionflow/calendar_mapper.js +34 -14
  43. package/dist/services/actionflow/calendar_mapper.js.map +1 -1
  44. package/dist/services/actionflow/components/document_actions.d.ts.map +1 -1
  45. package/dist/services/actionflow/components/document_actions.js +113 -4
  46. package/dist/services/actionflow/components/document_actions.js.map +1 -1
  47. package/dist/services/actionflow/components/eb_get_data_by_id.d.ts.map +1 -1
  48. package/dist/services/actionflow/components/eb_get_data_by_id.js +18 -1
  49. package/dist/services/actionflow/components/eb_get_data_by_id.js.map +1 -1
  50. package/dist/services/actionflow/components/index.d.ts.map +1 -1
  51. package/dist/services/actionflow/components/index.js +2 -1
  52. package/dist/services/actionflow/components/index.js.map +1 -1
  53. package/dist/services/actionflow/components/schedule_create.d.ts.map +1 -1
  54. package/dist/services/actionflow/components/schedule_create.js +22 -6
  55. package/dist/services/actionflow/components/schedule_create.js.map +1 -1
  56. package/dist/services/actionflow/components/workflow_actions.d.ts +1 -0
  57. package/dist/services/actionflow/components/workflow_actions.d.ts.map +1 -1
  58. package/dist/services/actionflow/components/workflow_actions.js +31 -6
  59. package/dist/services/actionflow/components/workflow_actions.js.map +1 -1
  60. package/dist/services/actionflow/document_source.d.ts +5 -0
  61. package/dist/services/actionflow/document_source.d.ts.map +1 -1
  62. package/dist/services/actionflow/document_source.js +16 -0
  63. package/dist/services/actionflow/document_source.js.map +1 -1
  64. package/dist/services/actionflow/formula_service.d.ts.map +1 -1
  65. package/dist/services/actionflow/formula_service.js +19 -8
  66. package/dist/services/actionflow/formula_service.js.map +1 -1
  67. package/dist/services/actionflow/preflight_service.d.ts +5 -0
  68. package/dist/services/actionflow/preflight_service.d.ts.map +1 -1
  69. package/dist/services/actionflow/preflight_service.js +127 -2
  70. package/dist/services/actionflow/preflight_service.js.map +1 -1
  71. package/dist/services/actionflow/save_workflow_draft.d.ts +7 -0
  72. package/dist/services/actionflow/save_workflow_draft.d.ts.map +1 -1
  73. package/dist/services/actionflow/save_workflow_draft.js +1 -1
  74. package/dist/services/actionflow/save_workflow_draft.js.map +1 -1
  75. package/dist/services/actionflow/workflow_compiler.d.ts.map +1 -1
  76. package/dist/services/actionflow/workflow_compiler.js +26 -0
  77. package/dist/services/actionflow/workflow_compiler.js.map +1 -1
  78. package/dist/services/form-formula-linkage.d.ts +4 -0
  79. package/dist/services/form-formula-linkage.d.ts.map +1 -1
  80. package/dist/services/form-formula-linkage.js +3 -1
  81. package/dist/services/form-formula-linkage.js.map +1 -1
  82. package/dist/services/form-layout-io.d.ts +18 -0
  83. package/dist/services/form-layout-io.d.ts.map +1 -0
  84. package/dist/services/form-layout-io.js +89 -0
  85. package/dist/services/form-layout-io.js.map +1 -0
  86. package/dist/services/form-layout-source/artifact.d.ts +8 -0
  87. package/dist/services/form-layout-source/artifact.d.ts.map +1 -0
  88. package/dist/services/form-layout-source/artifact.js +52 -0
  89. package/dist/services/form-layout-source/artifact.js.map +1 -0
  90. package/dist/services/form-layout-source/binding.d.ts +10 -0
  91. package/dist/services/form-layout-source/binding.d.ts.map +1 -0
  92. package/dist/services/form-layout-source/binding.js +43 -0
  93. package/dist/services/form-layout-source/binding.js.map +1 -0
  94. package/dist/services/form-layout-source/compile.d.ts +7 -0
  95. package/dist/services/form-layout-source/compile.d.ts.map +1 -0
  96. package/dist/services/form-layout-source/compile.js +262 -0
  97. package/dist/services/form-layout-source/compile.js.map +1 -0
  98. package/dist/services/form-layout-source/creation.d.ts +18 -0
  99. package/dist/services/form-layout-source/creation.d.ts.map +1 -0
  100. package/dist/services/form-layout-source/creation.js +42 -0
  101. package/dist/services/form-layout-source/creation.js.map +1 -0
  102. package/dist/services/form-layout-source/excel-extractor.d.ts +7 -0
  103. package/dist/services/form-layout-source/excel-extractor.d.ts.map +1 -0
  104. package/dist/services/form-layout-source/excel-extractor.js +342 -0
  105. package/dist/services/form-layout-source/excel-extractor.js.map +1 -0
  106. package/dist/services/form-layout-source/image-border.d.ts +9 -0
  107. package/dist/services/form-layout-source/image-border.d.ts.map +1 -0
  108. package/dist/services/form-layout-source/image-border.js +128 -0
  109. package/dist/services/form-layout-source/image-border.js.map +1 -0
  110. package/dist/services/form-layout-source/image-observation.d.ts +14 -0
  111. package/dist/services/form-layout-source/image-observation.d.ts.map +1 -0
  112. package/dist/services/form-layout-source/image-observation.js +90 -0
  113. package/dist/services/form-layout-source/image-observation.js.map +1 -0
  114. package/dist/services/form-layout-source/image-review.d.ts +32 -0
  115. package/dist/services/form-layout-source/image-review.d.ts.map +1 -0
  116. package/dist/services/form-layout-source/image-review.js +266 -0
  117. package/dist/services/form-layout-source/image-review.js.map +1 -0
  118. package/dist/services/form-layout-source/image-style.d.ts +16 -0
  119. package/dist/services/form-layout-source/image-style.d.ts.map +1 -0
  120. package/dist/services/form-layout-source/image-style.js +539 -0
  121. package/dist/services/form-layout-source/image-style.js.map +1 -0
  122. package/dist/services/form-layout-source/json.d.ts +3 -0
  123. package/dist/services/form-layout-source/json.d.ts.map +1 -0
  124. package/dist/services/form-layout-source/json.js +33 -0
  125. package/dist/services/form-layout-source/json.js.map +1 -0
  126. package/dist/services/form-layout-source/presentation.d.ts +23 -0
  127. package/dist/services/form-layout-source/presentation.d.ts.map +1 -0
  128. package/dist/services/form-layout-source/presentation.js +174 -0
  129. package/dist/services/form-layout-source/presentation.js.map +1 -0
  130. package/dist/services/form-layout-source/preview.d.ts +4 -0
  131. package/dist/services/form-layout-source/preview.d.ts.map +1 -0
  132. package/dist/services/form-layout-source/preview.js +49 -0
  133. package/dist/services/form-layout-source/preview.js.map +1 -0
  134. package/dist/services/form-layout-source/schema.d.ts +20 -0
  135. package/dist/services/form-layout-source/schema.d.ts.map +1 -0
  136. package/dist/services/form-layout-source/schema.js +149 -0
  137. package/dist/services/form-layout-source/schema.js.map +1 -0
  138. package/dist/services/form-layout-source/source-grid.d.ts +8 -0
  139. package/dist/services/form-layout-source/source-grid.d.ts.map +1 -0
  140. package/dist/services/form-layout-source/source-grid.js +61 -0
  141. package/dist/services/form-layout-source/source-grid.js.map +1 -0
  142. package/dist/services/form-layout-source/types.d.ts +242 -0
  143. package/dist/services/form-layout-source/types.d.ts.map +1 -0
  144. package/dist/services/form-layout-source/types.js +2 -0
  145. package/dist/services/form-layout-source/types.js.map +1 -0
  146. package/dist/services/form-layout-source/verify.d.ts +14 -0
  147. package/dist/services/form-layout-source/verify.d.ts.map +1 -0
  148. package/dist/services/form-layout-source/verify.js +226 -0
  149. package/dist/services/form-layout-source/verify.js.map +1 -0
  150. package/dist/services/form-obj-meta.d.ts +72 -0
  151. package/dist/services/form-obj-meta.d.ts.map +1 -0
  152. package/dist/services/form-obj-meta.js +103 -0
  153. package/dist/services/form-obj-meta.js.map +1 -0
  154. package/dist/services/validate-help.d.ts +25 -0
  155. package/dist/services/validate-help.d.ts.map +1 -0
  156. package/dist/services/validate-help.js +29 -0
  157. package/dist/services/validate-help.js.map +1 -0
  158. package/package.json +3 -1
  159. package/skill-docs/SKILL.md +15 -6
  160. package/skill-docs/_catalog.md +1 -0
  161. package/skill-docs/actionflows/references/components/document/DocumentSave.md +17 -17
  162. package/skill-docs/actionflows/references/components/workflow/ApproveCompletelyDelete.md +29 -0
  163. package/skill-docs/actionflows/references/components/workflow/ApproveDelete.md +1 -1
  164. package/skill-docs/assets/schemas/image-style-observation.schema.json +1355 -0
  165. package/skill-docs/references/common/guide-plan-template.md +3 -0
  166. package/skill-docs/references/common/ref-cli-commands.md +17 -4
  167. package/skill-docs/references/form/guide-create-form.md +2 -0
  168. package/skill-docs/references/form/guide-field-linkage.md +140 -55
  169. package/skill-docs/references/form/guide-form-layout-planning.md +6 -0
  170. package/skill-docs/references/form/guide-form-layout-source.md +366 -0
  171. package/skill-docs/references/form/guide-form-view.md +1 -1
  172. package/skill-docs/references/form/guide-formula-linkage.md +44 -1
@@ -0,0 +1,1355 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "E10 Image Style Observation v1",
4
+ "type": "object",
5
+ "additionalProperties": false,
6
+ "required": [
7
+ "schemaVersion",
8
+ "issues"
9
+ ],
10
+ "properties": {
11
+ "schemaVersion": {
12
+ "const": "e10.image-styles/v1"
13
+ },
14
+ "page": {
15
+ "type": "object",
16
+ "additionalProperties": false,
17
+ "required": [
18
+ "backgroundColor"
19
+ ],
20
+ "properties": {
21
+ "backgroundColor": {
22
+ "type": "string",
23
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
24
+ }
25
+ }
26
+ },
27
+ "cells": {
28
+ "type": "array",
29
+ "maxItems": 100000,
30
+ "items": {
31
+ "type": "object",
32
+ "additionalProperties": false,
33
+ "required": [
34
+ "sheet",
35
+ "row",
36
+ "col",
37
+ "style"
38
+ ],
39
+ "properties": {
40
+ "sheet": {
41
+ "type": "string",
42
+ "minLength": 1
43
+ },
44
+ "row": {
45
+ "type": "integer",
46
+ "minimum": 0,
47
+ "maximum": 1999
48
+ },
49
+ "col": {
50
+ "type": "integer",
51
+ "minimum": 0,
52
+ "maximum": 255
53
+ },
54
+ "style": {
55
+ "type": "object",
56
+ "additionalProperties": false,
57
+ "properties": {
58
+ "color": {
59
+ "type": "string",
60
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
61
+ },
62
+ "backgroundColor": {
63
+ "type": "string",
64
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
65
+ },
66
+ "fontFamily": {
67
+ "type": "string",
68
+ "minLength": 1,
69
+ "maxLength": 100
70
+ },
71
+ "fontSize": {
72
+ "type": "number",
73
+ "minimum": 1,
74
+ "maximum": 200
75
+ },
76
+ "fontUnit": {
77
+ "enum": [
78
+ "px",
79
+ "pt"
80
+ ]
81
+ },
82
+ "fontWeight": {
83
+ "enum": [
84
+ "normal",
85
+ "bold",
86
+ 100,
87
+ 200,
88
+ 300,
89
+ 400,
90
+ 500,
91
+ 600,
92
+ 700,
93
+ 800,
94
+ 900
95
+ ]
96
+ },
97
+ "bold": {
98
+ "type": "boolean",
99
+ "description": "字体粗细别名;不会转换为下划线"
100
+ },
101
+ "fontStyle": {
102
+ "enum": [
103
+ "normal",
104
+ "italic"
105
+ ]
106
+ },
107
+ "textAlign": {
108
+ "enum": [
109
+ "left",
110
+ "center",
111
+ "right"
112
+ ]
113
+ },
114
+ "align": {
115
+ "enum": [
116
+ "left",
117
+ "center",
118
+ "right"
119
+ ]
120
+ },
121
+ "verticalAlign": {
122
+ "enum": [
123
+ "top",
124
+ "middle",
125
+ "bottom"
126
+ ]
127
+ },
128
+ "wordWrap": {
129
+ "type": "boolean"
130
+ },
131
+ "underline": {
132
+ "type": "boolean"
133
+ },
134
+ "border": {
135
+ "type": "object",
136
+ "additionalProperties": false,
137
+ "required": [
138
+ "color",
139
+ "width",
140
+ "line"
141
+ ],
142
+ "properties": {
143
+ "color": {
144
+ "type": "string",
145
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
146
+ },
147
+ "width": {
148
+ "enum": [
149
+ 1,
150
+ 2,
151
+ 3
152
+ ]
153
+ },
154
+ "line": {
155
+ "enum": [
156
+ "solid",
157
+ "dashed",
158
+ "dotted",
159
+ "double"
160
+ ]
161
+ }
162
+ },
163
+ "allOf": [
164
+ {
165
+ "if": {
166
+ "properties": {
167
+ "line": {
168
+ "enum": [
169
+ "dashed",
170
+ "dotted",
171
+ "double"
172
+ ]
173
+ }
174
+ }
175
+ },
176
+ "then": {
177
+ "properties": {
178
+ "width": {
179
+ "maximum": 2
180
+ }
181
+ }
182
+ }
183
+ }
184
+ ]
185
+ },
186
+ "borderTop": {
187
+ "type": "object",
188
+ "additionalProperties": false,
189
+ "required": [
190
+ "color",
191
+ "width",
192
+ "line"
193
+ ],
194
+ "properties": {
195
+ "color": {
196
+ "type": "string",
197
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
198
+ },
199
+ "width": {
200
+ "enum": [
201
+ 1,
202
+ 2,
203
+ 3
204
+ ]
205
+ },
206
+ "line": {
207
+ "enum": [
208
+ "solid",
209
+ "dashed",
210
+ "dotted",
211
+ "double"
212
+ ]
213
+ }
214
+ },
215
+ "allOf": [
216
+ {
217
+ "if": {
218
+ "properties": {
219
+ "line": {
220
+ "enum": [
221
+ "dashed",
222
+ "dotted",
223
+ "double"
224
+ ]
225
+ }
226
+ }
227
+ },
228
+ "then": {
229
+ "properties": {
230
+ "width": {
231
+ "maximum": 2
232
+ }
233
+ }
234
+ }
235
+ }
236
+ ]
237
+ },
238
+ "borderBottom": {
239
+ "type": "object",
240
+ "additionalProperties": false,
241
+ "required": [
242
+ "color",
243
+ "width",
244
+ "line"
245
+ ],
246
+ "properties": {
247
+ "color": {
248
+ "type": "string",
249
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
250
+ },
251
+ "width": {
252
+ "enum": [
253
+ 1,
254
+ 2,
255
+ 3
256
+ ]
257
+ },
258
+ "line": {
259
+ "enum": [
260
+ "solid",
261
+ "dashed",
262
+ "dotted",
263
+ "double"
264
+ ]
265
+ }
266
+ },
267
+ "allOf": [
268
+ {
269
+ "if": {
270
+ "properties": {
271
+ "line": {
272
+ "enum": [
273
+ "dashed",
274
+ "dotted",
275
+ "double"
276
+ ]
277
+ }
278
+ }
279
+ },
280
+ "then": {
281
+ "properties": {
282
+ "width": {
283
+ "maximum": 2
284
+ }
285
+ }
286
+ }
287
+ }
288
+ ]
289
+ },
290
+ "borderLeft": {
291
+ "type": "object",
292
+ "additionalProperties": false,
293
+ "required": [
294
+ "color",
295
+ "width",
296
+ "line"
297
+ ],
298
+ "properties": {
299
+ "color": {
300
+ "type": "string",
301
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
302
+ },
303
+ "width": {
304
+ "enum": [
305
+ 1,
306
+ 2,
307
+ 3
308
+ ]
309
+ },
310
+ "line": {
311
+ "enum": [
312
+ "solid",
313
+ "dashed",
314
+ "dotted",
315
+ "double"
316
+ ]
317
+ }
318
+ },
319
+ "allOf": [
320
+ {
321
+ "if": {
322
+ "properties": {
323
+ "line": {
324
+ "enum": [
325
+ "dashed",
326
+ "dotted",
327
+ "double"
328
+ ]
329
+ }
330
+ }
331
+ },
332
+ "then": {
333
+ "properties": {
334
+ "width": {
335
+ "maximum": 2
336
+ }
337
+ }
338
+ }
339
+ }
340
+ ]
341
+ },
342
+ "borderRight": {
343
+ "type": "object",
344
+ "additionalProperties": false,
345
+ "required": [
346
+ "color",
347
+ "width",
348
+ "line"
349
+ ],
350
+ "properties": {
351
+ "color": {
352
+ "type": "string",
353
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
354
+ },
355
+ "width": {
356
+ "enum": [
357
+ 1,
358
+ 2,
359
+ 3
360
+ ]
361
+ },
362
+ "line": {
363
+ "enum": [
364
+ "solid",
365
+ "dashed",
366
+ "dotted",
367
+ "double"
368
+ ]
369
+ }
370
+ },
371
+ "allOf": [
372
+ {
373
+ "if": {
374
+ "properties": {
375
+ "line": {
376
+ "enum": [
377
+ "dashed",
378
+ "dotted",
379
+ "double"
380
+ ]
381
+ }
382
+ }
383
+ },
384
+ "then": {
385
+ "properties": {
386
+ "width": {
387
+ "maximum": 2
388
+ }
389
+ }
390
+ }
391
+ }
392
+ ]
393
+ }
394
+ }
395
+ }
396
+ }
397
+ }
398
+ },
399
+ "fields": {
400
+ "type": "array",
401
+ "maxItems": 1000,
402
+ "items": {
403
+ "type": "object",
404
+ "additionalProperties": false,
405
+ "anyOf": [
406
+ {
407
+ "required": [
408
+ "fieldId"
409
+ ]
410
+ },
411
+ {
412
+ "required": [
413
+ "fieldName"
414
+ ]
415
+ }
416
+ ],
417
+ "allOf": [
418
+ {
419
+ "anyOf": [
420
+ {
421
+ "required": [
422
+ "title"
423
+ ]
424
+ },
425
+ {
426
+ "required": [
427
+ "content"
428
+ ]
429
+ },
430
+ {
431
+ "required": [
432
+ "input"
433
+ ]
434
+ }
435
+ ]
436
+ }
437
+ ],
438
+ "properties": {
439
+ "fieldId": {
440
+ "type": "string",
441
+ "pattern": "^[1-9][0-9]*$"
442
+ },
443
+ "fieldName": {
444
+ "type": "string",
445
+ "minLength": 1
446
+ },
447
+ "subFormId": {
448
+ "type": "string",
449
+ "pattern": "^[1-9][0-9]*$"
450
+ },
451
+ "title": {
452
+ "$ref": "#/$defs/style",
453
+ "not": {
454
+ "anyOf": [
455
+ {
456
+ "required": [
457
+ "height"
458
+ ]
459
+ },
460
+ {
461
+ "required": [
462
+ "width"
463
+ ]
464
+ }
465
+ ]
466
+ }
467
+ },
468
+ "content": {
469
+ "$ref": "#/$defs/style",
470
+ "not": {
471
+ "anyOf": [
472
+ {
473
+ "required": [
474
+ "height"
475
+ ]
476
+ },
477
+ {
478
+ "required": [
479
+ "width"
480
+ ]
481
+ }
482
+ ]
483
+ }
484
+ },
485
+ "input": {
486
+ "type": "object",
487
+ "additionalProperties": false,
488
+ "properties": {
489
+ "backgroundColor": {
490
+ "type": "string",
491
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
492
+ },
493
+ "height": {
494
+ "type": "number",
495
+ "exclusiveMinimum": 0,
496
+ "maximum": 2000
497
+ },
498
+ "width": {
499
+ "type": "number",
500
+ "exclusiveMinimum": 0,
501
+ "maximum": 2000
502
+ },
503
+ "border": {
504
+ "type": "object",
505
+ "additionalProperties": false,
506
+ "required": [
507
+ "color",
508
+ "width",
509
+ "line"
510
+ ],
511
+ "properties": {
512
+ "color": {
513
+ "type": "string",
514
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
515
+ },
516
+ "width": {
517
+ "enum": [
518
+ 1,
519
+ 2,
520
+ 3
521
+ ]
522
+ },
523
+ "line": {
524
+ "enum": [
525
+ "solid",
526
+ "dashed",
527
+ "dotted",
528
+ "double"
529
+ ]
530
+ }
531
+ },
532
+ "allOf": [
533
+ {
534
+ "if": {
535
+ "properties": {
536
+ "line": {
537
+ "enum": [
538
+ "dashed",
539
+ "dotted",
540
+ "double"
541
+ ]
542
+ }
543
+ }
544
+ },
545
+ "then": {
546
+ "properties": {
547
+ "width": {
548
+ "maximum": 2
549
+ }
550
+ }
551
+ }
552
+ }
553
+ ]
554
+ }
555
+ }
556
+ },
557
+ "textArea": {
558
+ "type": "object",
559
+ "additionalProperties": false,
560
+ "required": [
561
+ "rows"
562
+ ],
563
+ "properties": {
564
+ "rows": {
565
+ "type": "integer",
566
+ "minimum": 1,
567
+ "maximum": 50
568
+ },
569
+ "fitCell": {
570
+ "type": "boolean"
571
+ },
572
+ "autoHeight": {
573
+ "type": "boolean"
574
+ }
575
+ }
576
+ },
577
+ "displayTitle": {
578
+ "type": "string",
579
+ "minLength": 1,
580
+ "maxLength": 200
581
+ },
582
+ "inputTarget": {
583
+ "enum": [
584
+ "component",
585
+ "cell"
586
+ ]
587
+ }
588
+ }
589
+ }
590
+ },
591
+ "issues": {
592
+ "type": "array",
593
+ "maxItems": 1000,
594
+ "items": {
595
+ "type": "string",
596
+ "minLength": 1
597
+ }
598
+ },
599
+ "geometry": {
600
+ "type": "object",
601
+ "additionalProperties": false,
602
+ "required": [
603
+ "imageWidth",
604
+ "imageHeight",
605
+ "sheets"
606
+ ],
607
+ "properties": {
608
+ "imageWidth": {
609
+ "type": "integer",
610
+ "minimum": 1,
611
+ "maximum": 100000
612
+ },
613
+ "imageHeight": {
614
+ "type": "integer",
615
+ "minimum": 1,
616
+ "maximum": 100000
617
+ },
618
+ "sheets": {
619
+ "type": "array",
620
+ "minItems": 1,
621
+ "maxItems": 50,
622
+ "items": {
623
+ "type": "object",
624
+ "additionalProperties": false,
625
+ "required": [
626
+ "sheet",
627
+ "xLines",
628
+ "yLines",
629
+ "regions"
630
+ ],
631
+ "properties": {
632
+ "sheet": {
633
+ "type": "string",
634
+ "minLength": 1
635
+ },
636
+ "xLines": {
637
+ "type": "array",
638
+ "minItems": 2,
639
+ "maxItems": 257,
640
+ "items": {
641
+ "type": "number",
642
+ "minimum": 0
643
+ }
644
+ },
645
+ "yLines": {
646
+ "type": "array",
647
+ "minItems": 2,
648
+ "maxItems": 2001,
649
+ "items": {
650
+ "type": "number",
651
+ "minimum": 0
652
+ }
653
+ },
654
+ "regions": {
655
+ "type": "array",
656
+ "minItems": 1,
657
+ "maxItems": 100000,
658
+ "items": {
659
+ "type": "object",
660
+ "additionalProperties": false,
661
+ "required": [
662
+ "row",
663
+ "col",
664
+ "rowCount",
665
+ "colCount"
666
+ ],
667
+ "properties": {
668
+ "row": {
669
+ "type": "integer",
670
+ "minimum": 0
671
+ },
672
+ "col": {
673
+ "type": "integer",
674
+ "minimum": 0
675
+ },
676
+ "rowCount": {
677
+ "type": "integer",
678
+ "minimum": 1
679
+ },
680
+ "colCount": {
681
+ "type": "integer",
682
+ "minimum": 1
683
+ },
684
+ "style": {
685
+ "$ref": "#/$defs/style"
686
+ }
687
+ }
688
+ }
689
+ }
690
+ }
691
+ }
692
+ }
693
+ }
694
+ },
695
+ "componentStyles": {
696
+ "enum": [
697
+ "merge",
698
+ "replace",
699
+ "workbookOnly"
700
+ ]
701
+ },
702
+ "notes": {
703
+ "type": "array",
704
+ "maxItems": 1000,
705
+ "items": {
706
+ "type": "string",
707
+ "minLength": 1
708
+ }
709
+ },
710
+ "tableBorders": {
711
+ "type": "array",
712
+ "maxItems": 1000,
713
+ "description": "逐个声明表格正文范围及四侧外框;不包含新增留白列,明确没有表格时使用空数组。缺失表示尚未观察。",
714
+ "items": {
715
+ "type": "object",
716
+ "additionalProperties": false,
717
+ "required": [
718
+ "sheet",
719
+ "row",
720
+ "col",
721
+ "rowCount",
722
+ "colCount",
723
+ "top",
724
+ "right",
725
+ "bottom",
726
+ "left"
727
+ ],
728
+ "properties": {
729
+ "sheet": {
730
+ "type": "string",
731
+ "minLength": 1
732
+ },
733
+ "row": {
734
+ "type": "integer",
735
+ "minimum": 0
736
+ },
737
+ "col": {
738
+ "type": "integer",
739
+ "minimum": 0
740
+ },
741
+ "rowCount": {
742
+ "type": "integer",
743
+ "minimum": 1
744
+ },
745
+ "colCount": {
746
+ "type": "integer",
747
+ "minimum": 1
748
+ },
749
+ "top": {
750
+ "oneOf": [
751
+ {
752
+ "type": "object",
753
+ "additionalProperties": false,
754
+ "required": [
755
+ "color",
756
+ "width",
757
+ "line"
758
+ ],
759
+ "properties": {
760
+ "color": {
761
+ "type": "string",
762
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
763
+ },
764
+ "width": {
765
+ "enum": [
766
+ 1,
767
+ 2,
768
+ 3
769
+ ]
770
+ },
771
+ "line": {
772
+ "enum": [
773
+ "solid",
774
+ "dashed",
775
+ "dotted",
776
+ "double"
777
+ ]
778
+ }
779
+ },
780
+ "allOf": [
781
+ {
782
+ "if": {
783
+ "properties": {
784
+ "line": {
785
+ "enum": [
786
+ "dashed",
787
+ "dotted",
788
+ "double"
789
+ ]
790
+ }
791
+ }
792
+ },
793
+ "then": {
794
+ "properties": {
795
+ "width": {
796
+ "maximum": 2
797
+ }
798
+ }
799
+ }
800
+ }
801
+ ]
802
+ },
803
+ {
804
+ "enum": [
805
+ "none",
806
+ "unknown"
807
+ ]
808
+ }
809
+ ]
810
+ },
811
+ "right": {
812
+ "oneOf": [
813
+ {
814
+ "type": "object",
815
+ "additionalProperties": false,
816
+ "required": [
817
+ "color",
818
+ "width",
819
+ "line"
820
+ ],
821
+ "properties": {
822
+ "color": {
823
+ "type": "string",
824
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
825
+ },
826
+ "width": {
827
+ "enum": [
828
+ 1,
829
+ 2,
830
+ 3
831
+ ]
832
+ },
833
+ "line": {
834
+ "enum": [
835
+ "solid",
836
+ "dashed",
837
+ "dotted",
838
+ "double"
839
+ ]
840
+ }
841
+ },
842
+ "allOf": [
843
+ {
844
+ "if": {
845
+ "properties": {
846
+ "line": {
847
+ "enum": [
848
+ "dashed",
849
+ "dotted",
850
+ "double"
851
+ ]
852
+ }
853
+ }
854
+ },
855
+ "then": {
856
+ "properties": {
857
+ "width": {
858
+ "maximum": 2
859
+ }
860
+ }
861
+ }
862
+ }
863
+ ]
864
+ },
865
+ {
866
+ "enum": [
867
+ "none",
868
+ "unknown"
869
+ ]
870
+ }
871
+ ]
872
+ },
873
+ "bottom": {
874
+ "oneOf": [
875
+ {
876
+ "type": "object",
877
+ "additionalProperties": false,
878
+ "required": [
879
+ "color",
880
+ "width",
881
+ "line"
882
+ ],
883
+ "properties": {
884
+ "color": {
885
+ "type": "string",
886
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
887
+ },
888
+ "width": {
889
+ "enum": [
890
+ 1,
891
+ 2,
892
+ 3
893
+ ]
894
+ },
895
+ "line": {
896
+ "enum": [
897
+ "solid",
898
+ "dashed",
899
+ "dotted",
900
+ "double"
901
+ ]
902
+ }
903
+ },
904
+ "allOf": [
905
+ {
906
+ "if": {
907
+ "properties": {
908
+ "line": {
909
+ "enum": [
910
+ "dashed",
911
+ "dotted",
912
+ "double"
913
+ ]
914
+ }
915
+ }
916
+ },
917
+ "then": {
918
+ "properties": {
919
+ "width": {
920
+ "maximum": 2
921
+ }
922
+ }
923
+ }
924
+ }
925
+ ]
926
+ },
927
+ {
928
+ "enum": [
929
+ "none",
930
+ "unknown"
931
+ ]
932
+ }
933
+ ]
934
+ },
935
+ "left": {
936
+ "oneOf": [
937
+ {
938
+ "type": "object",
939
+ "additionalProperties": false,
940
+ "required": [
941
+ "color",
942
+ "width",
943
+ "line"
944
+ ],
945
+ "properties": {
946
+ "color": {
947
+ "type": "string",
948
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
949
+ },
950
+ "width": {
951
+ "enum": [
952
+ 1,
953
+ 2,
954
+ 3
955
+ ]
956
+ },
957
+ "line": {
958
+ "enum": [
959
+ "solid",
960
+ "dashed",
961
+ "dotted",
962
+ "double"
963
+ ]
964
+ }
965
+ },
966
+ "allOf": [
967
+ {
968
+ "if": {
969
+ "properties": {
970
+ "line": {
971
+ "enum": [
972
+ "dashed",
973
+ "dotted",
974
+ "double"
975
+ ]
976
+ }
977
+ }
978
+ },
979
+ "then": {
980
+ "properties": {
981
+ "width": {
982
+ "maximum": 2
983
+ }
984
+ }
985
+ }
986
+ }
987
+ ]
988
+ },
989
+ {
990
+ "enum": [
991
+ "none",
992
+ "unknown"
993
+ ]
994
+ }
995
+ ]
996
+ }
997
+ }
998
+ }
999
+ }
1000
+ },
1001
+ "$defs": {
1002
+ "style": {
1003
+ "type": "object",
1004
+ "additionalProperties": false,
1005
+ "properties": {
1006
+ "color": {
1007
+ "type": "string",
1008
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
1009
+ },
1010
+ "backgroundColor": {
1011
+ "type": "string",
1012
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
1013
+ },
1014
+ "fontFamily": {
1015
+ "type": "string",
1016
+ "minLength": 1,
1017
+ "maxLength": 100
1018
+ },
1019
+ "fontSize": {
1020
+ "type": "number",
1021
+ "minimum": 1,
1022
+ "maximum": 200
1023
+ },
1024
+ "fontUnit": {
1025
+ "enum": [
1026
+ "px",
1027
+ "pt"
1028
+ ]
1029
+ },
1030
+ "fontWeight": {
1031
+ "enum": [
1032
+ "normal",
1033
+ "bold",
1034
+ 100,
1035
+ 200,
1036
+ 300,
1037
+ 400,
1038
+ 500,
1039
+ 600,
1040
+ 700,
1041
+ 800,
1042
+ 900
1043
+ ]
1044
+ },
1045
+ "bold": {
1046
+ "type": "boolean",
1047
+ "description": "字体粗细别名;不会转换为下划线"
1048
+ },
1049
+ "fontStyle": {
1050
+ "enum": [
1051
+ "normal",
1052
+ "italic"
1053
+ ]
1054
+ },
1055
+ "textAlign": {
1056
+ "enum": [
1057
+ "left",
1058
+ "center",
1059
+ "right"
1060
+ ]
1061
+ },
1062
+ "align": {
1063
+ "enum": [
1064
+ "left",
1065
+ "center",
1066
+ "right"
1067
+ ]
1068
+ },
1069
+ "verticalAlign": {
1070
+ "enum": [
1071
+ "top",
1072
+ "middle",
1073
+ "bottom"
1074
+ ]
1075
+ },
1076
+ "wordWrap": {
1077
+ "type": "boolean"
1078
+ },
1079
+ "underline": {
1080
+ "type": "boolean"
1081
+ },
1082
+ "height": {
1083
+ "type": "number",
1084
+ "exclusiveMinimum": 0,
1085
+ "maximum": 2000
1086
+ },
1087
+ "width": {
1088
+ "type": "number",
1089
+ "exclusiveMinimum": 0,
1090
+ "maximum": 2000
1091
+ },
1092
+ "border": {
1093
+ "type": "object",
1094
+ "additionalProperties": false,
1095
+ "required": [
1096
+ "color",
1097
+ "width",
1098
+ "line"
1099
+ ],
1100
+ "properties": {
1101
+ "color": {
1102
+ "type": "string",
1103
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
1104
+ },
1105
+ "width": {
1106
+ "enum": [
1107
+ 1,
1108
+ 2,
1109
+ 3
1110
+ ]
1111
+ },
1112
+ "line": {
1113
+ "enum": [
1114
+ "solid",
1115
+ "dashed",
1116
+ "dotted",
1117
+ "double"
1118
+ ]
1119
+ }
1120
+ },
1121
+ "allOf": [
1122
+ {
1123
+ "if": {
1124
+ "properties": {
1125
+ "line": {
1126
+ "enum": [
1127
+ "dashed",
1128
+ "dotted",
1129
+ "double"
1130
+ ]
1131
+ }
1132
+ }
1133
+ },
1134
+ "then": {
1135
+ "properties": {
1136
+ "width": {
1137
+ "maximum": 2
1138
+ }
1139
+ }
1140
+ }
1141
+ }
1142
+ ]
1143
+ },
1144
+ "borderTop": {
1145
+ "type": "object",
1146
+ "additionalProperties": false,
1147
+ "required": [
1148
+ "color",
1149
+ "width",
1150
+ "line"
1151
+ ],
1152
+ "properties": {
1153
+ "color": {
1154
+ "type": "string",
1155
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
1156
+ },
1157
+ "width": {
1158
+ "enum": [
1159
+ 1,
1160
+ 2,
1161
+ 3
1162
+ ]
1163
+ },
1164
+ "line": {
1165
+ "enum": [
1166
+ "solid",
1167
+ "dashed",
1168
+ "dotted",
1169
+ "double"
1170
+ ]
1171
+ }
1172
+ },
1173
+ "allOf": [
1174
+ {
1175
+ "if": {
1176
+ "properties": {
1177
+ "line": {
1178
+ "enum": [
1179
+ "dashed",
1180
+ "dotted",
1181
+ "double"
1182
+ ]
1183
+ }
1184
+ }
1185
+ },
1186
+ "then": {
1187
+ "properties": {
1188
+ "width": {
1189
+ "maximum": 2
1190
+ }
1191
+ }
1192
+ }
1193
+ }
1194
+ ]
1195
+ },
1196
+ "borderBottom": {
1197
+ "type": "object",
1198
+ "additionalProperties": false,
1199
+ "required": [
1200
+ "color",
1201
+ "width",
1202
+ "line"
1203
+ ],
1204
+ "properties": {
1205
+ "color": {
1206
+ "type": "string",
1207
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
1208
+ },
1209
+ "width": {
1210
+ "enum": [
1211
+ 1,
1212
+ 2,
1213
+ 3
1214
+ ]
1215
+ },
1216
+ "line": {
1217
+ "enum": [
1218
+ "solid",
1219
+ "dashed",
1220
+ "dotted",
1221
+ "double"
1222
+ ]
1223
+ }
1224
+ },
1225
+ "allOf": [
1226
+ {
1227
+ "if": {
1228
+ "properties": {
1229
+ "line": {
1230
+ "enum": [
1231
+ "dashed",
1232
+ "dotted",
1233
+ "double"
1234
+ ]
1235
+ }
1236
+ }
1237
+ },
1238
+ "then": {
1239
+ "properties": {
1240
+ "width": {
1241
+ "maximum": 2
1242
+ }
1243
+ }
1244
+ }
1245
+ }
1246
+ ]
1247
+ },
1248
+ "borderLeft": {
1249
+ "type": "object",
1250
+ "additionalProperties": false,
1251
+ "required": [
1252
+ "color",
1253
+ "width",
1254
+ "line"
1255
+ ],
1256
+ "properties": {
1257
+ "color": {
1258
+ "type": "string",
1259
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
1260
+ },
1261
+ "width": {
1262
+ "enum": [
1263
+ 1,
1264
+ 2,
1265
+ 3
1266
+ ]
1267
+ },
1268
+ "line": {
1269
+ "enum": [
1270
+ "solid",
1271
+ "dashed",
1272
+ "dotted",
1273
+ "double"
1274
+ ]
1275
+ }
1276
+ },
1277
+ "allOf": [
1278
+ {
1279
+ "if": {
1280
+ "properties": {
1281
+ "line": {
1282
+ "enum": [
1283
+ "dashed",
1284
+ "dotted",
1285
+ "double"
1286
+ ]
1287
+ }
1288
+ }
1289
+ },
1290
+ "then": {
1291
+ "properties": {
1292
+ "width": {
1293
+ "maximum": 2
1294
+ }
1295
+ }
1296
+ }
1297
+ }
1298
+ ]
1299
+ },
1300
+ "borderRight": {
1301
+ "type": "object",
1302
+ "additionalProperties": false,
1303
+ "required": [
1304
+ "color",
1305
+ "width",
1306
+ "line"
1307
+ ],
1308
+ "properties": {
1309
+ "color": {
1310
+ "type": "string",
1311
+ "description": "支持 #RGB、#RRGGBB、rgb(r,g,b) 及 red/white/black/blue/gray/grey/green"
1312
+ },
1313
+ "width": {
1314
+ "enum": [
1315
+ 1,
1316
+ 2,
1317
+ 3
1318
+ ]
1319
+ },
1320
+ "line": {
1321
+ "enum": [
1322
+ "solid",
1323
+ "dashed",
1324
+ "dotted",
1325
+ "double"
1326
+ ]
1327
+ }
1328
+ },
1329
+ "allOf": [
1330
+ {
1331
+ "if": {
1332
+ "properties": {
1333
+ "line": {
1334
+ "enum": [
1335
+ "dashed",
1336
+ "dotted",
1337
+ "double"
1338
+ ]
1339
+ }
1340
+ }
1341
+ },
1342
+ "then": {
1343
+ "properties": {
1344
+ "width": {
1345
+ "maximum": 2
1346
+ }
1347
+ }
1348
+ }
1349
+ }
1350
+ ]
1351
+ }
1352
+ }
1353
+ }
1354
+ }
1355
+ }