openxiangda-contracts 2.0.0-alpha.39 → 2.0.0-alpha.40
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/ai.d.ts.map +1 -1
- package/dist/ai.js +65 -5
- package/dist/ai.js.map +1 -1
- package/dist/data-field-validation.d.ts +7 -0
- package/dist/data-field-validation.d.ts.map +1 -0
- package/dist/data-field-validation.js +346 -0
- package/dist/data-field-validation.js.map +1 -0
- package/dist/data-query-validation.d.ts +15 -0
- package/dist/data-query-validation.d.ts.map +1 -0
- package/dist/data-query-validation.js +219 -0
- package/dist/data-query-validation.js.map +1 -0
- package/dist/field-value-schemas.d.ts +1418 -0
- package/dist/field-value-schemas.d.ts.map +1 -0
- package/dist/field-value-schemas.js +224 -0
- package/dist/field-value-schemas.js.map +1 -0
- package/dist/field-values.d.ts +59 -21
- package/dist/field-values.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/native.d.ts +1 -1
- package/dist/native.d.ts.map +1 -1
- package/dist/references.d.ts +20 -12
- package/dist/references.d.ts.map +1 -1
- package/dist/schemas.d.ts +3531 -1301
- package/dist/schemas.d.ts.map +1 -1
- package/dist/schemas.js +456 -218
- package/dist/schemas.js.map +1 -1
- package/dist/surface.d.ts +24 -7
- package/dist/surface.d.ts.map +1 -1
- package/dist/types.d.ts +81 -48
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +27 -5
- package/dist/types.js.map +1 -1
- package/dist/validation-common.d.ts +7 -0
- package/dist/validation-common.d.ts.map +1 -0
- package/dist/validation-common.js +26 -0
- package/dist/validation-common.js.map +1 -0
- package/dist/validation.d.ts +7 -4
- package/dist/validation.d.ts.map +1 -1
- package/dist/validation.js +72 -157
- package/dist/validation.js.map +1 -1
- package/package.json +1 -1
package/dist/ai.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,KAAK,aAAa,EAClB,KAAK,UAAU,EAChB,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEnD,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG,cAAc,CAAC;AAEhE,MAAM,MAAM,qBAAqB,GAC7B,OAAO,GACP,KAAK,GACL,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,QAAQ,CAAC;AAEb,MAAM,MAAM,gBAAgB,GACxB,MAAM,GACN,OAAO,GACP,aAAa,GACb,UAAU,CAAC;AAEf,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,UAAU,CAAC;AACvD,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,UAAU,CAAC;AACtD,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,UAAU,CAAC;AAEtD,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,gBAAgB,CAAC;IACvB,SAAS,EAAE,qBAAqB,CAAC;IACjC,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,EAAE,YAAY,CAAC;IAC1B,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE;QACb,YAAY,EAAE,MAAM,EAAE,CAAC;KACxB,CAAC;IACF,IAAI,EAAE,gBAAgB,CAAC;IACvB,YAAY,EAAE,oBAAoB,CAAC;IACnC,WAAW,EAAE,mBAAmB,CAAC;IACjC,WAAW,EAAE,mBAAmB,CAAC;IACjC,MAAM,EAAE,kBAAkB,CAAC;IAC3B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,aAAa,CAAC,EAAE;QACd,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,OAAO,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;KACrD,CAAC;IACF,OAAO,CAAC,EAAE;QACR,IAAI,EAAE,SAAS,CAAC;QAChB,aAAa,EAAE,MAAM,CAAC;QACtB,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;QACpD,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,OAAO,eAAe,CAAC,mBAAmB,CAAC;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,YAAY,EAAE,CAAC;CAC9B;AAqCD,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,EAAE,CA4QxE;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,IAAI,mBAAmB,CAOtC;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,aAAa,GAAG,YAAY,
|
|
1
|
+
{"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,KAAK,aAAa,EAClB,KAAK,UAAU,EAChB,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEnD,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG,cAAc,CAAC;AAEhE,MAAM,MAAM,qBAAqB,GAC7B,OAAO,GACP,KAAK,GACL,QAAQ,GACR,QAAQ,GACR,QAAQ,GACR,QAAQ,CAAC;AAEb,MAAM,MAAM,gBAAgB,GACxB,MAAM,GACN,OAAO,GACP,aAAa,GACb,UAAU,CAAC;AAEf,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,UAAU,CAAC;AACvD,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,UAAU,CAAC;AACtD,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,UAAU,CAAC;AAEtD,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,gBAAgB,CAAC;IACvB,SAAS,EAAE,qBAAqB,CAAC;IACjC,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,EAAE,YAAY,CAAC;IAC1B,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE;QACb,YAAY,EAAE,MAAM,EAAE,CAAC;KACxB,CAAC;IACF,IAAI,EAAE,gBAAgB,CAAC;IACvB,YAAY,EAAE,oBAAoB,CAAC;IACnC,WAAW,EAAE,mBAAmB,CAAC;IACjC,WAAW,EAAE,mBAAmB,CAAC;IACjC,MAAM,EAAE,kBAAkB,CAAC;IAC3B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,aAAa,CAAC,EAAE;QACd,YAAY,EAAE,MAAM,CAAC;QACrB,SAAS,EAAE,OAAO,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;KACrD,CAAC;IACF,OAAO,CAAC,EAAE;QACR,IAAI,EAAE,SAAS,CAAC;QAChB,aAAa,EAAE,MAAM,CAAC;QACtB,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;QACpD,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,OAAO,eAAe,CAAC,mBAAmB,CAAC;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,YAAY,EAAE,CAAC;CAC9B;AAqCD,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,EAAE,CA4QxE;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,KAAK,IAAI,mBAAmB,CAOtC;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,aAAa,GAAG,YAAY,CAiFtE;AAED,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiH5B,CAAC"}
|
package/dist/ai.js
CHANGED
|
@@ -169,23 +169,83 @@ export function assertAiCapabilityCatalog(value) {
|
|
|
169
169
|
}
|
|
170
170
|
}
|
|
171
171
|
export function aiJsonSchemaForField(type) {
|
|
172
|
+
const labeledValue = {
|
|
173
|
+
type: "object",
|
|
174
|
+
additionalProperties: true,
|
|
175
|
+
required: ["label", "value"],
|
|
176
|
+
properties: {
|
|
177
|
+
label: { type: "string" },
|
|
178
|
+
value: { type: "string" },
|
|
179
|
+
},
|
|
180
|
+
};
|
|
181
|
+
const labeledValues = { type: "array", items: labeledValue };
|
|
182
|
+
const fileValue = {
|
|
183
|
+
type: "object",
|
|
184
|
+
additionalProperties: true,
|
|
185
|
+
required: ["schemaVersion", "id", "name", "size", "contentType"],
|
|
186
|
+
properties: {
|
|
187
|
+
schemaVersion: { const: SCHEMA_VERSIONS.dataFileRef },
|
|
188
|
+
id: { type: "string" },
|
|
189
|
+
name: { type: "string" },
|
|
190
|
+
size: { type: "integer" },
|
|
191
|
+
contentType: { type: "string" },
|
|
192
|
+
},
|
|
193
|
+
};
|
|
172
194
|
switch (type) {
|
|
173
|
-
case "integer":
|
|
195
|
+
case "number.integer":
|
|
174
196
|
return { type: "integer" };
|
|
175
|
-
case "decimal":
|
|
197
|
+
case "number.decimal":
|
|
176
198
|
return { type: "number" };
|
|
177
199
|
case "boolean":
|
|
178
200
|
return { type: "boolean" };
|
|
179
201
|
case "date":
|
|
180
202
|
return { type: "string", format: "date" };
|
|
203
|
+
case "time":
|
|
204
|
+
return { type: "string", format: "time" };
|
|
181
205
|
case "datetime":
|
|
182
206
|
return { type: "string", format: "date-time" };
|
|
207
|
+
case "date-range":
|
|
208
|
+
case "datetime-range":
|
|
209
|
+
return {
|
|
210
|
+
type: "object",
|
|
211
|
+
additionalProperties: false,
|
|
212
|
+
required: ["start", "end"],
|
|
213
|
+
properties: {
|
|
214
|
+
start: { type: "string" },
|
|
215
|
+
end: { type: "string" },
|
|
216
|
+
},
|
|
217
|
+
};
|
|
218
|
+
case "option.single":
|
|
219
|
+
case "user.single":
|
|
220
|
+
case "department.single":
|
|
221
|
+
case "resource-ref.single":
|
|
222
|
+
return labeledValue;
|
|
223
|
+
case "option.multiple":
|
|
224
|
+
case "user.multiple":
|
|
225
|
+
case "department.multiple":
|
|
226
|
+
case "resource-ref.multiple":
|
|
227
|
+
return labeledValues;
|
|
228
|
+
case "cascade.single":
|
|
229
|
+
return labeledValues;
|
|
230
|
+
case "cascade.multiple":
|
|
231
|
+
return { type: "array", items: labeledValues };
|
|
232
|
+
case "file":
|
|
233
|
+
case "image":
|
|
234
|
+
return { type: "array", items: fileValue };
|
|
235
|
+
case "signature":
|
|
236
|
+
case "address":
|
|
237
|
+
case "location":
|
|
238
|
+
return { type: "object" };
|
|
239
|
+
case "subtable":
|
|
240
|
+
return { type: "array", items: { type: "object" } };
|
|
183
241
|
case "uuid":
|
|
184
242
|
return { type: "string", format: "uuid" };
|
|
185
243
|
case "json":
|
|
186
|
-
return {
|
|
187
|
-
case "
|
|
188
|
-
case "text":
|
|
244
|
+
return {};
|
|
245
|
+
case "text.short":
|
|
246
|
+
case "text.long":
|
|
247
|
+
case "text.rich":
|
|
248
|
+
case "serial-number":
|
|
189
249
|
default:
|
|
190
250
|
return { type: "string" };
|
|
191
251
|
}
|
package/dist/ai.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ai.js","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ai.js","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type Diagnostic } from './types.js';
|
|
2
|
+
export declare const DATA_MULTI_FIELD_TYPES: Set<string>;
|
|
3
|
+
/** Resources use the same lower kebab-case convention as app codes. */
|
|
4
|
+
export declare const RESOURCE_CODE_PATTERN: RegExp;
|
|
5
|
+
export declare function isCanonicalResourceCode(value: string): boolean;
|
|
6
|
+
export declare function validateDataFieldDefinition(field: Record<string, unknown>, path: string, diagnostics: Diagnostic[]): void;
|
|
7
|
+
//# sourceMappingURL=data-field-validation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-field-validation.d.ts","sourceRoot":"","sources":["../src/data-field-validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,UAAU,EAChB,MAAM,YAAY,CAAC;AAUpB,eAAO,MAAM,sBAAsB,aASjC,CAAC;AA8BH,uEAAuE;AACvE,eAAO,MAAM,qBAAqB,QAAoC,CAAC;AAEvE,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,WAEpD;AAED,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,UAAU,EAAE,QAiD1B"}
|
|
@@ -0,0 +1,346 @@
|
|
|
1
|
+
import { DATA_FIELD_TYPES, } from './types.js';
|
|
2
|
+
import { diagnostic, isDataFieldCode, isRecord, requireString, } from './validation-common.js';
|
|
3
|
+
const DATA_FIELD_TYPE_SET = new Set(DATA_FIELD_TYPES);
|
|
4
|
+
export const DATA_MULTI_FIELD_TYPES = new Set([
|
|
5
|
+
'option.multiple',
|
|
6
|
+
'cascade.multiple',
|
|
7
|
+
'user.multiple',
|
|
8
|
+
'department.multiple',
|
|
9
|
+
'resource-ref.multiple',
|
|
10
|
+
'file',
|
|
11
|
+
'image',
|
|
12
|
+
'subtable',
|
|
13
|
+
]);
|
|
14
|
+
const DATA_OPTION_FIELD_TYPES = new Set([
|
|
15
|
+
'option.single',
|
|
16
|
+
'option.multiple',
|
|
17
|
+
'cascade.single',
|
|
18
|
+
'cascade.multiple',
|
|
19
|
+
]);
|
|
20
|
+
const DATA_RESOURCE_REFERENCE_FIELD_TYPES = new Set([
|
|
21
|
+
'resource-ref.single',
|
|
22
|
+
'resource-ref.multiple',
|
|
23
|
+
]);
|
|
24
|
+
const DATA_FIELD_PROPERTIES = new Set([
|
|
25
|
+
'code',
|
|
26
|
+
'type',
|
|
27
|
+
'nullable',
|
|
28
|
+
'indexed',
|
|
29
|
+
'options',
|
|
30
|
+
'source',
|
|
31
|
+
'maxLength',
|
|
32
|
+
'precision',
|
|
33
|
+
'scale',
|
|
34
|
+
'timePrecision',
|
|
35
|
+
'file',
|
|
36
|
+
'serial',
|
|
37
|
+
'subtable',
|
|
38
|
+
]);
|
|
39
|
+
/** Resources use the same lower kebab-case convention as app codes. */
|
|
40
|
+
export const RESOURCE_CODE_PATTERN = /^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/;
|
|
41
|
+
export function isCanonicalResourceCode(value) {
|
|
42
|
+
return RESOURCE_CODE_PATTERN.test(value);
|
|
43
|
+
}
|
|
44
|
+
export function validateDataFieldDefinition(field, path, diagnostics) {
|
|
45
|
+
for (const key of Object.keys(field)) {
|
|
46
|
+
if (!DATA_FIELD_PROPERTIES.has(key)) {
|
|
47
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_PROPERTY_UNKNOWN', `${path}.${key} 不是受支持的字段属性`, `${path}.${key}`));
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
for (const key of ['nullable', 'indexed']) {
|
|
51
|
+
if (field[key] !== undefined && typeof field[key] !== 'boolean') {
|
|
52
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_BOOLEAN_INVALID', `${path}.${key} 必须为 boolean`, `${path}.${key}`));
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
const type = String(field.type || '');
|
|
56
|
+
if (!DATA_FIELD_TYPE_SET.has(type)) {
|
|
57
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_TYPE_UNSUPPORTED', `${path}.type 不受支持`, `${path}.type`));
|
|
58
|
+
}
|
|
59
|
+
if (field.nullable === true && DATA_MULTI_FIELD_TYPES.has(type)) {
|
|
60
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_MULTI_FIELD_NULLABLE_INVALID', `${path} 是多值字段,空值必须使用 [],不能声明 nullable`, `${path}.nullable`));
|
|
61
|
+
}
|
|
62
|
+
validateOptions(field, path, diagnostics);
|
|
63
|
+
validateSource(field, path, diagnostics);
|
|
64
|
+
validateScalarConfig(field, path, diagnostics);
|
|
65
|
+
validateFileConfig(field, path, diagnostics);
|
|
66
|
+
validateSerialConfig(field, path, diagnostics);
|
|
67
|
+
validateSubtableConfig(field, path, diagnostics);
|
|
68
|
+
}
|
|
69
|
+
function validateOptions(field, path, diagnostics) {
|
|
70
|
+
const type = String(field.type || '');
|
|
71
|
+
if (field.options === undefined) {
|
|
72
|
+
if (DATA_OPTION_FIELD_TYPES.has(type)) {
|
|
73
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_OPTIONS_REQUIRED', `${path}.options 是静态选项字段的必填协议`, `${path}.options`));
|
|
74
|
+
}
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
if (!DATA_OPTION_FIELD_TYPES.has(type)) {
|
|
78
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_OPTIONS_TYPE_INVALID', `${path}.options 只能用于 option.* 或 cascade.* 字段`, `${path}.options`));
|
|
79
|
+
return;
|
|
80
|
+
}
|
|
81
|
+
if (!Array.isArray(field.options) ||
|
|
82
|
+
field.options.length < 1 ||
|
|
83
|
+
field.options.length > 100) {
|
|
84
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_OPTIONS_INVALID', `${path}.options 必须包含 1 到 100 个选项`, `${path}.options`));
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
let total = 0;
|
|
88
|
+
const visit = (items, itemPath, depth) => {
|
|
89
|
+
if (depth > 5) {
|
|
90
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_OPTIONS_DEPTH_EXCEEDED', `${itemPath} 级联选项深度不能超过 5`, itemPath));
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
const siblingValues = new Set();
|
|
94
|
+
items.forEach((item, index) => {
|
|
95
|
+
total += 1;
|
|
96
|
+
const currentPath = `${itemPath}[${index}]`;
|
|
97
|
+
if (total > 1000)
|
|
98
|
+
return;
|
|
99
|
+
if (!isRecord(item)) {
|
|
100
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_OPTION_INVALID', `${currentPath} 必须是对象`, currentPath));
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
for (const key of Object.keys(item)) {
|
|
104
|
+
if (!['label', 'value', 'description', 'color', 'children'].includes(key)) {
|
|
105
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_OPTION_PROPERTY_UNKNOWN', `${currentPath}.${key} 不受支持`, `${currentPath}.${key}`));
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
const validLabel = requireString(item.label, `${currentPath}.label`, diagnostics);
|
|
109
|
+
const validValue = requireString(item.value, `${currentPath}.value`, diagnostics);
|
|
110
|
+
if (validLabel && String(item.label).length > 500) {
|
|
111
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_OPTION_LABEL_TOO_LONG', `${currentPath}.label 最长 500 个字符`, `${currentPath}.label`));
|
|
112
|
+
}
|
|
113
|
+
if (validValue) {
|
|
114
|
+
if (String(item.value).length > 500 ||
|
|
115
|
+
siblingValues.has(String(item.value))) {
|
|
116
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_OPTION_VALUE_INVALID', `${currentPath}.value 过长或同级重复`, `${currentPath}.value`));
|
|
117
|
+
}
|
|
118
|
+
siblingValues.add(String(item.value));
|
|
119
|
+
}
|
|
120
|
+
if (item.children === undefined)
|
|
121
|
+
return;
|
|
122
|
+
if (!type.startsWith('cascade.')) {
|
|
123
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_OPTION_CHILDREN_INVALID', `${currentPath}.children 只能用于级联字段`, `${currentPath}.children`));
|
|
124
|
+
}
|
|
125
|
+
else if (!Array.isArray(item.children) ||
|
|
126
|
+
item.children.length < 1 ||
|
|
127
|
+
item.children.length > 100) {
|
|
128
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_OPTION_CHILDREN_INVALID', `${currentPath}.children 必须包含 1 到 100 个选项`, `${currentPath}.children`));
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
visit(item.children, `${currentPath}.children`, depth + 1);
|
|
132
|
+
}
|
|
133
|
+
});
|
|
134
|
+
};
|
|
135
|
+
visit(field.options, `${path}.options`, 1);
|
|
136
|
+
if (total > 1000) {
|
|
137
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_OPTIONS_COUNT_EXCEEDED', `${path}.options 总数不能超过 1000`, `${path}.options`));
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
function validateSource(field, path, diagnostics) {
|
|
141
|
+
const type = String(field.type || '');
|
|
142
|
+
if (field.source === undefined) {
|
|
143
|
+
if (DATA_RESOURCE_REFERENCE_FIELD_TYPES.has(type)) {
|
|
144
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SOURCE_REQUIRED', `${path}.source 是动态资源引用的必填协议`, `${path}.source`));
|
|
145
|
+
}
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
if (!DATA_RESOURCE_REFERENCE_FIELD_TYPES.has(type) || !isRecord(field.source)) {
|
|
149
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SOURCE_INVALID', `${path}.source 只能用于 resource-ref.* 且必须是对象`, `${path}.source`));
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
152
|
+
const source = field.source;
|
|
153
|
+
const allowed = new Set([
|
|
154
|
+
'kind',
|
|
155
|
+
'resourceCode',
|
|
156
|
+
'labelField',
|
|
157
|
+
'searchFields',
|
|
158
|
+
'descriptionFields',
|
|
159
|
+
'snapshotFields',
|
|
160
|
+
'filters',
|
|
161
|
+
'pageSize',
|
|
162
|
+
'loadMode',
|
|
163
|
+
]);
|
|
164
|
+
for (const key of Object.keys(source)) {
|
|
165
|
+
if (!allowed.has(key)) {
|
|
166
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SOURCE_PROPERTY_UNKNOWN', `${path}.source.${key} 不受支持`, `${path}.source.${key}`));
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
if (source.kind !== 'resource' ||
|
|
170
|
+
!isCanonicalResourceCode(String(source.resourceCode || '')) ||
|
|
171
|
+
!isDataFieldCode(source.labelField)) {
|
|
172
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SOURCE_TARGET_INVALID', `${path}.source 必须声明有效的 resourceCode 和 labelField`, `${path}.source`));
|
|
173
|
+
}
|
|
174
|
+
for (const key of ['searchFields', 'descriptionFields', 'snapshotFields']) {
|
|
175
|
+
if (source[key] === undefined)
|
|
176
|
+
continue;
|
|
177
|
+
const limit = key === 'snapshotFields' ? 50 : 10;
|
|
178
|
+
const items = Array.isArray(source[key]) ? source[key] : [];
|
|
179
|
+
if (!Array.isArray(source[key]) ||
|
|
180
|
+
items.length > limit ||
|
|
181
|
+
items.some(item => !isDataFieldCode(item)) ||
|
|
182
|
+
new Set(items).size !== items.length) {
|
|
183
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SOURCE_FIELDS_INVALID', `${path}.source.${key} 必须为最多 ${limit} 个不重复字段代码`, `${path}.source.${key}`));
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
if (source.pageSize !== undefined &&
|
|
187
|
+
(!Number.isInteger(source.pageSize) ||
|
|
188
|
+
Number(source.pageSize) < 1 ||
|
|
189
|
+
Number(source.pageSize) > 100)) {
|
|
190
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SOURCE_PAGE_SIZE_INVALID', `${path}.source.pageSize 必须为 1 到 100`, `${path}.source.pageSize`));
|
|
191
|
+
}
|
|
192
|
+
if (source.loadMode !== undefined &&
|
|
193
|
+
!['search', 'all'].includes(String(source.loadMode))) {
|
|
194
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SOURCE_LOAD_MODE_INVALID', `${path}.source.loadMode 只支持 search/all`, `${path}.source.loadMode`));
|
|
195
|
+
}
|
|
196
|
+
const filters = source.filters === undefined
|
|
197
|
+
? []
|
|
198
|
+
: Array.isArray(source.filters)
|
|
199
|
+
? source.filters
|
|
200
|
+
: [];
|
|
201
|
+
if (source.filters !== undefined &&
|
|
202
|
+
(!Array.isArray(source.filters) || filters.length > 20)) {
|
|
203
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SOURCE_FILTERS_INVALID', `${path}.source.filters 最多包含 20 项`, `${path}.source.filters`));
|
|
204
|
+
}
|
|
205
|
+
filters.forEach((filter, index) => {
|
|
206
|
+
const filterPath = `${path}.source.filters[${index}]`;
|
|
207
|
+
if (!isRecord(filter) ||
|
|
208
|
+
!isDataFieldCode(filter.field) ||
|
|
209
|
+
!['eq', 'in'].includes(String(filter.operator))) {
|
|
210
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SOURCE_FILTER_INVALID', `${filterPath} 必须声明字段和 eq/in`, filterPath));
|
|
211
|
+
return;
|
|
212
|
+
}
|
|
213
|
+
const hasValue = Object.prototype.hasOwnProperty.call(filter, 'value');
|
|
214
|
+
const binding = isRecord(filter.binding) ? filter.binding : null;
|
|
215
|
+
const hasBinding = binding?.kind === 'field' && isDataFieldCode(binding.field);
|
|
216
|
+
if (hasValue === hasBinding) {
|
|
217
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SOURCE_FILTER_VALUE_INVALID', `${filterPath} 必须且只能声明 value 或 field binding`, filterPath));
|
|
218
|
+
}
|
|
219
|
+
});
|
|
220
|
+
}
|
|
221
|
+
function validateScalarConfig(field, path, diagnostics) {
|
|
222
|
+
const type = String(field.type || '');
|
|
223
|
+
if (field.maxLength !== undefined &&
|
|
224
|
+
(!['text.short', 'text.long', 'text.rich'].includes(type) ||
|
|
225
|
+
!Number.isInteger(field.maxLength) ||
|
|
226
|
+
Number(field.maxLength) < 1 ||
|
|
227
|
+
Number(field.maxLength) > 1_000_000)) {
|
|
228
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_MAX_LENGTH_INVALID', `${path}.maxLength 只能用于文本且范围为 1 到 1000000`, `${path}.maxLength`));
|
|
229
|
+
}
|
|
230
|
+
if (field.precision !== undefined || field.scale !== undefined) {
|
|
231
|
+
const precision = Number(field.precision);
|
|
232
|
+
const scale = Number(field.scale ?? 0);
|
|
233
|
+
if (type !== 'number.decimal' ||
|
|
234
|
+
!Number.isInteger(precision) ||
|
|
235
|
+
precision < 1 ||
|
|
236
|
+
precision > 1000 ||
|
|
237
|
+
!Number.isInteger(scale) ||
|
|
238
|
+
scale < 0 ||
|
|
239
|
+
scale > precision) {
|
|
240
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_DECIMAL_CONFIG_INVALID', `${path}.precision/scale 必须是合法的 decimal 精度`, path));
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
if (field.timePrecision !== undefined &&
|
|
244
|
+
(type !== 'time' || !['minute', 'second'].includes(String(field.timePrecision)))) {
|
|
245
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_TIME_PRECISION_INVALID', `${path}.timePrecision 只能用于 time`, `${path}.timePrecision`));
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
function validateFileConfig(field, path, diagnostics) {
|
|
249
|
+
if (field.file === undefined)
|
|
250
|
+
return;
|
|
251
|
+
if (!['file', 'image', 'signature'].includes(String(field.type)) ||
|
|
252
|
+
!isRecord(field.file)) {
|
|
253
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_FILE_INVALID', `${path}.file 只能用于 file、image 或 signature 且必须是对象`, `${path}.file`));
|
|
254
|
+
return;
|
|
255
|
+
}
|
|
256
|
+
const file = field.file;
|
|
257
|
+
for (const key of Object.keys(file)) {
|
|
258
|
+
if (!['maxCount', 'maxSizeMb', 'accept'].includes(key)) {
|
|
259
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_FILE_PROPERTY_UNKNOWN', `${path}.file.${key} 不受支持`, `${path}.file.${key}`));
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
if (file.maxCount !== undefined &&
|
|
263
|
+
(!Number.isInteger(file.maxCount) ||
|
|
264
|
+
Number(file.maxCount) < 1 ||
|
|
265
|
+
Number(file.maxCount) > 100)) {
|
|
266
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_FILE_COUNT_INVALID', `${path}.file.maxCount 必须为 1 到 100`, `${path}.file.maxCount`));
|
|
267
|
+
}
|
|
268
|
+
if (file.maxSizeMb !== undefined &&
|
|
269
|
+
(!Number.isInteger(file.maxSizeMb) ||
|
|
270
|
+
Number(file.maxSizeMb) < 1 ||
|
|
271
|
+
Number(file.maxSizeMb) > 1024)) {
|
|
272
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_FILE_SIZE_INVALID', `${path}.file.maxSizeMb 必须为 1 到 1024`, `${path}.file.maxSizeMb`));
|
|
273
|
+
}
|
|
274
|
+
if (file.accept !== undefined) {
|
|
275
|
+
const accept = Array.isArray(file.accept) ? file.accept : [];
|
|
276
|
+
if (!Array.isArray(file.accept) ||
|
|
277
|
+
accept.length > 50 ||
|
|
278
|
+
accept.some(item => typeof item !== 'string' || !item) ||
|
|
279
|
+
new Set(accept).size !== accept.length) {
|
|
280
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_FILE_ACCEPT_INVALID', `${path}.file.accept 必须为最多 50 个不重复非空字符串`, `${path}.file.accept`));
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
if (['image', 'signature'].includes(String(field.type)) &&
|
|
284
|
+
file.maxCount !== undefined &&
|
|
285
|
+
Number(file.maxCount) !== 1 &&
|
|
286
|
+
field.type === 'signature') {
|
|
287
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SIGNATURE_COUNT_INVALID', `${path}.file.maxCount 对签名必须为 1`, `${path}.file.maxCount`));
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
function validateSerialConfig(field, path, diagnostics) {
|
|
291
|
+
if (field.serial === undefined) {
|
|
292
|
+
if (field.type === 'serial-number') {
|
|
293
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SERIAL_REQUIRED', `${path}.serial 是流水号字段的必填协议`, `${path}.serial`));
|
|
294
|
+
}
|
|
295
|
+
return;
|
|
296
|
+
}
|
|
297
|
+
if (field.type !== 'serial-number' || !isRecord(field.serial)) {
|
|
298
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SERIAL_INVALID', `${path}.serial 只能用于 serial-number`, `${path}.serial`));
|
|
299
|
+
return;
|
|
300
|
+
}
|
|
301
|
+
const serial = field.serial;
|
|
302
|
+
for (const key of Object.keys(serial)) {
|
|
303
|
+
if (!['prefix', 'digits', 'start'].includes(key)) {
|
|
304
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SERIAL_PROPERTY_UNKNOWN', `${path}.serial.${key} 不受支持`, `${path}.serial.${key}`));
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
if (serial.prefix !== undefined &&
|
|
308
|
+
(typeof serial.prefix !== 'string' || serial.prefix.length > 64)) {
|
|
309
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SERIAL_PREFIX_INVALID', `${path}.serial.prefix 最长 64 个字符`, `${path}.serial.prefix`));
|
|
310
|
+
}
|
|
311
|
+
if (serial.digits !== undefined &&
|
|
312
|
+
(!Number.isInteger(serial.digits) ||
|
|
313
|
+
Number(serial.digits) < 1 ||
|
|
314
|
+
Number(serial.digits) > 32)) {
|
|
315
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SERIAL_DIGITS_INVALID', `${path}.serial.digits 必须为 1 到 32`, `${path}.serial.digits`));
|
|
316
|
+
}
|
|
317
|
+
if (serial.start !== undefined &&
|
|
318
|
+
(!Number.isSafeInteger(serial.start) || Number(serial.start) < 0)) {
|
|
319
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SERIAL_START_INVALID', `${path}.serial.start 必须为非负安全整数`, `${path}.serial.start`));
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
function validateSubtableConfig(field, path, diagnostics) {
|
|
323
|
+
if (field.subtable === undefined) {
|
|
324
|
+
if (field.type === 'subtable') {
|
|
325
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SUBTABLE_REQUIRED', `${path}.subtable 是子表字段的必填协议`, `${path}.subtable`));
|
|
326
|
+
}
|
|
327
|
+
return;
|
|
328
|
+
}
|
|
329
|
+
if (field.type !== 'subtable' || !isRecord(field.subtable)) {
|
|
330
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SUBTABLE_INVALID', `${path}.subtable 只能用于 subtable`, `${path}.subtable`));
|
|
331
|
+
return;
|
|
332
|
+
}
|
|
333
|
+
const subtable = field.subtable;
|
|
334
|
+
if (!isCanonicalResourceCode(String(subtable.resourceCode || '')) ||
|
|
335
|
+
!isDataFieldCode(subtable.foreignKey) ||
|
|
336
|
+
!isDataFieldCode(subtable.orderField)) {
|
|
337
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SUBTABLE_TARGET_INVALID', `${path}.subtable 必须声明有效子资源、外键和排序字段`, `${path}.subtable`));
|
|
338
|
+
}
|
|
339
|
+
if (subtable.maxRows !== undefined &&
|
|
340
|
+
(!Number.isInteger(subtable.maxRows) ||
|
|
341
|
+
Number(subtable.maxRows) < 1 ||
|
|
342
|
+
Number(subtable.maxRows) > 49)) {
|
|
343
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SUBTABLE_MAX_ROWS_INVALID', `${path}.subtable.maxRows 必须为 1 到 49`, `${path}.subtable.maxRows`));
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
//# sourceMappingURL=data-field-validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-field-validation.js","sourceRoot":"","sources":["../src/data-field-validation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type DataExportRequest, type DataQuery, type Diagnostic } from './types.js';
|
|
2
|
+
export declare const DATA_QUERY_OPERATORS: Set<string>;
|
|
3
|
+
export declare const DATA_QUERY_EMPTY_OPERATORS: Set<string>;
|
|
4
|
+
export interface DataWhereValidationLimits {
|
|
5
|
+
maxDepth?: number;
|
|
6
|
+
maxPredicates?: number;
|
|
7
|
+
maxArrayValues?: number;
|
|
8
|
+
maxValueBytes?: number;
|
|
9
|
+
}
|
|
10
|
+
export declare function appendDataWhereDiagnostics(value: unknown, path: string, diagnostics: Diagnostic[], limits?: DataWhereValidationLimits): void;
|
|
11
|
+
export declare function validateDataQuery(value: unknown): Diagnostic[];
|
|
12
|
+
export declare function isDataQuery(value: unknown): value is DataQuery;
|
|
13
|
+
export declare function validateDataExportRequest(value: unknown): Diagnostic[];
|
|
14
|
+
export declare function isDataExportRequest(value: unknown): value is DataExportRequest;
|
|
15
|
+
//# sourceMappingURL=data-query-validation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-query-validation.d.ts","sourceRoot":"","sources":["../src/data-query-validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,KAAK,UAAU,EAChB,MAAM,YAAY,CAAC;AAOpB,eAAO,MAAM,oBAAoB,aAoB/B,CAAC;AAEH,eAAO,MAAM,0BAA0B,aAAqC,CAAC;AAY7E,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,UAAU,EAAE,EACzB,MAAM,GAAE,yBAA8B,QAsLvC;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,EAAE,CA0H9D;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,SAAS,CAE9D;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,EAAE,CAoCtE;AAED,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,iBAAiB,CAE5B"}
|