openxiangda-contracts 2.11.0 → 2.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/data-field-validation.js +23 -11
- package/dist/data-field-validation.js.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-compiler/compiler.js +211 -8
- package/dist/native-compiler/compiler.js.map +1 -1
- package/dist/native-compiler/index.cjs +3 -3
- package/dist/native-compiler/index.js +3 -3
- package/dist/native.d.ts +35 -1
- package/dist/native.d.ts.map +1 -1
- package/dist/native.js.map +1 -1
- package/dist/schemas.d.ts +532 -40
- package/dist/schemas.d.ts.map +1 -1
- package/dist/schemas.js +87 -5
- package/dist/schemas.js.map +1 -1
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
|
@@ -156,7 +156,7 @@ function validateSource(field, path, diagnostics) {
|
|
|
156
156
|
const type = String(field.type || '');
|
|
157
157
|
if (field.source === undefined) {
|
|
158
158
|
if (DATA_RESOURCE_REFERENCE_FIELD_TYPES.has(type)) {
|
|
159
|
-
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SOURCE_REQUIRED', `${path}.source 是动态资源引用的必填协议`, `${path}.source`));
|
|
159
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_SOURCE_REQUIRED', `${path}.source 是动态资源引用的必填协议`, `${path}.source`, `resource-ref 字段必须声明来源协议,例如 source: { kind: 'resource', resourceCode: '目标资源', labelField: '标题字段', searchFields: ['标题字段'], pageSize: 20, loadMode: 'search' };labelField 必须指向目标的 text.short/text.long 字段`));
|
|
160
160
|
}
|
|
161
161
|
return;
|
|
162
162
|
}
|
|
@@ -243,16 +243,28 @@ function validateScalarConfig(field, path, diagnostics) {
|
|
|
243
243
|
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_MAX_LENGTH_INVALID', `${path}.maxLength 只能用于文本且范围为 1 到 1000000`, `${path}.maxLength`));
|
|
244
244
|
}
|
|
245
245
|
if (field.precision !== undefined || field.scale !== undefined) {
|
|
246
|
-
const precision = Number(field.precision);
|
|
247
|
-
const scale = Number(field.scale
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
!
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
246
|
+
const precision = field.precision === undefined ? undefined : Number(field.precision);
|
|
247
|
+
const scale = field.scale === undefined ? undefined : Number(field.scale);
|
|
248
|
+
const precisionValid = precision === undefined ||
|
|
249
|
+
(Number.isInteger(precision) && precision >= 1 && precision <= 1000);
|
|
250
|
+
if (type === 'number.integer') {
|
|
251
|
+
// 整数可声明可选 precision(数字位数);不允许小数位。
|
|
252
|
+
if (!precisionValid || (scale !== undefined && scale !== 0)) {
|
|
253
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_DECIMAL_CONFIG_INVALID', `${path}.precision 必须是 1-1000 的整数位数;number.integer 不支持 scale 小数位`, `${path}.precision`));
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
else if (type === 'number.decimal') {
|
|
257
|
+
const scaleValue = Number(field.scale ?? 0);
|
|
258
|
+
if (field.precision === undefined ||
|
|
259
|
+
!precisionValid ||
|
|
260
|
+
!Number.isInteger(scaleValue) ||
|
|
261
|
+
scaleValue < 0 ||
|
|
262
|
+
scaleValue > Number(precision)) {
|
|
263
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_DECIMAL_CONFIG_INVALID', `${path}.precision/scale 必须是合法的 decimal 精度(precision 1-1000 必填,scale 0 到 precision),例如 { precision: 12, scale: 2 }`, `${path}.precision`));
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
else {
|
|
267
|
+
diagnostics.push(diagnostic('DATA_RESOURCE_FIELD_DECIMAL_CONFIG_INVALID', `${path}.precision/scale 只能用于 number.integer / number.decimal 字段`, path));
|
|
256
268
|
}
|
|
257
269
|
}
|
|
258
270
|
if (field.min !== undefined || field.max !== undefined) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-field-validation.js","sourceRoot":"","sources":["../src/data-field-validation.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"data-field-validation.js","sourceRoot":"","sources":["../src/data-field-validation.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -16,4 +16,5 @@ export * from './workflow-detail.js';
|
|
|
16
16
|
export * from './validation.js';
|
|
17
17
|
export * from './workflow-correction.js';
|
|
18
18
|
export * from './native-compiler/workflow-instance-policy.js';
|
|
19
|
+
export { validateDataFieldDefinition } from './data-field-validation.js';
|
|
19
20
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wCAAwC,CAAC;AACvD,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,+CAA+C,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wCAAwC,CAAC;AACvD,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,+CAA+C,CAAC;AAC9D,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -16,4 +16,5 @@ export * from './workflow-detail.js';
|
|
|
16
16
|
export * from './validation.js';
|
|
17
17
|
export * from './workflow-correction.js';
|
|
18
18
|
export * from './native-compiler/workflow-instance-policy.js';
|
|
19
|
+
export { validateDataFieldDefinition } from './data-field-validation.js';
|
|
19
20
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wCAAwC,CAAC;AACvD,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,+CAA+C,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wCAAwC,CAAC;AACvD,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,+CAA+C,CAAC;AAC9D,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC"}
|
|
@@ -1632,6 +1632,8 @@ const ANONYMOUS_PUBLIC_OPERATIONS = new Set([
|
|
|
1632
1632
|
'create',
|
|
1633
1633
|
'own.list',
|
|
1634
1634
|
'own.read',
|
|
1635
|
+
'public.list',
|
|
1636
|
+
'public.read',
|
|
1635
1637
|
]);
|
|
1636
1638
|
function validateAnonymousPublicAccess(value, config, pointer) {
|
|
1637
1639
|
const access = object(value, pointer);
|
|
@@ -1645,19 +1647,26 @@ function validateAnonymousPublicAccess(value, config, pointer) {
|
|
|
1645
1647
|
resource,
|
|
1646
1648
|
]));
|
|
1647
1649
|
const policyCodes = new Set();
|
|
1648
|
-
const
|
|
1650
|
+
const declaredPolicyCodes = new Set(policies.map((rawPolicy) => String(rawPolicy?.code || '')));
|
|
1649
1651
|
policies.forEach((rawPolicy, index) => {
|
|
1650
1652
|
const policyPointer = `${pointer}/policies/${index}`;
|
|
1651
1653
|
const policy = object(rawPolicy, policyPointer);
|
|
1652
|
-
exactKeys(policy, ['code', 'routeCode', 'mode', 'resourceCode', 'operations', 'fields'], policyPointer, [
|
|
1654
|
+
exactKeys(policy, ['code', 'routeCode', 'mode', 'resourceCode', 'operations', 'fields'], policyPointer, [
|
|
1655
|
+
'requiredFields',
|
|
1656
|
+
'ownRecordFields',
|
|
1657
|
+
'publicRecordFields',
|
|
1658
|
+
'publicFilters',
|
|
1659
|
+
'serverGeneratedFields',
|
|
1660
|
+
'schedule',
|
|
1661
|
+
'publicSubtableFields',
|
|
1662
|
+
'draft',
|
|
1663
|
+
'validations',
|
|
1664
|
+
]);
|
|
1653
1665
|
const code = stableCode(policy.code, `${policyPointer}/code`);
|
|
1654
1666
|
if (policyCodes.has(code)) {
|
|
1655
1667
|
fail('NATIVE_PUBLIC_POLICY_DUPLICATE', `${policyPointer}/code`);
|
|
1656
1668
|
}
|
|
1657
1669
|
const routeCode = stableCode(policy.routeCode, `${policyPointer}/routeCode`);
|
|
1658
|
-
if (routeCodes.has(routeCode)) {
|
|
1659
|
-
fail('NATIVE_PUBLIC_ROUTE_DUPLICATE', `${policyPointer}/routeCode`);
|
|
1660
|
-
}
|
|
1661
1670
|
const route = routes.get(routeCode);
|
|
1662
1671
|
if (!route ||
|
|
1663
1672
|
route.surface !== 'user' ||
|
|
@@ -1676,7 +1685,7 @@ function validateAnonymousPublicAccess(value, config, pointer) {
|
|
|
1676
1685
|
String(field.code),
|
|
1677
1686
|
String(field.type),
|
|
1678
1687
|
]));
|
|
1679
|
-
const operations = uniqueStrings(policy.operations, `${policyPointer}/operations`,
|
|
1688
|
+
const operations = uniqueStrings(policy.operations, `${policyPointer}/operations`, 8);
|
|
1680
1689
|
if (operations.length < 1 ||
|
|
1681
1690
|
operations.some(operation => !ANONYMOUS_PUBLIC_OPERATIONS.has(operation))) {
|
|
1682
1691
|
fail('NATIVE_PUBLIC_OPERATION_INVALID', `${policyPointer}/operations`);
|
|
@@ -1688,7 +1697,11 @@ function validateAnonymousPublicAccess(value, config, pointer) {
|
|
|
1688
1697
|
if (fields.length < 1 || fields.some(field => !declaredFields.has(field))) {
|
|
1689
1698
|
fail('NATIVE_PUBLIC_FIELD_INVALID', `${policyPointer}/fields`);
|
|
1690
1699
|
}
|
|
1691
|
-
for (const optionalFieldSet of [
|
|
1700
|
+
for (const optionalFieldSet of [
|
|
1701
|
+
'requiredFields',
|
|
1702
|
+
'ownRecordFields',
|
|
1703
|
+
'publicRecordFields',
|
|
1704
|
+
]) {
|
|
1692
1705
|
if (!Object.prototype.hasOwnProperty.call(policy, optionalFieldSet))
|
|
1693
1706
|
continue;
|
|
1694
1707
|
const selected = uniqueStrings(policy[optionalFieldSet], `${policyPointer}/${optionalFieldSet}`, 64);
|
|
@@ -1696,6 +1709,137 @@ function validateAnonymousPublicAccess(value, config, pointer) {
|
|
|
1696
1709
|
fail('NATIVE_PUBLIC_FIELD_SCOPE_INVALID', `${policyPointer}/${optionalFieldSet}`);
|
|
1697
1710
|
}
|
|
1698
1711
|
}
|
|
1712
|
+
const serverGeneratedFields = Object.prototype.hasOwnProperty.call(policy, 'serverGeneratedFields')
|
|
1713
|
+
? boundedArray(policy.serverGeneratedFields, `${policyPointer}/serverGeneratedFields`, 16)
|
|
1714
|
+
: [];
|
|
1715
|
+
const generatedFieldCodes = new Set();
|
|
1716
|
+
serverGeneratedFields.forEach((rawGenerated, generatedIndex) => {
|
|
1717
|
+
const generatedPointer = `${policyPointer}/serverGeneratedFields/${generatedIndex}`;
|
|
1718
|
+
const generated = object(rawGenerated, generatedPointer);
|
|
1719
|
+
exactKeys(generated, ['field', 'kind'], generatedPointer);
|
|
1720
|
+
const field = fieldCodeValue(generated.field, `${generatedPointer}/field`);
|
|
1721
|
+
if (generatedFieldCodes.has(field) ||
|
|
1722
|
+
!declaredFields.has(field) ||
|
|
1723
|
+
fields.includes(field) ||
|
|
1724
|
+
(declaredFields.get(field) !== 'text.short' &&
|
|
1725
|
+
declaredFields.get(field) !== 'text.long')) {
|
|
1726
|
+
fail('NATIVE_PUBLIC_SERVER_GENERATED_FIELD_INVALID', `${generatedPointer}/field`);
|
|
1727
|
+
}
|
|
1728
|
+
equal(generated.kind, 'random-token', `${generatedPointer}/kind`);
|
|
1729
|
+
generatedFieldCodes.add(field);
|
|
1730
|
+
});
|
|
1731
|
+
const schedule = Object.prototype.hasOwnProperty.call(policy, 'schedule')
|
|
1732
|
+
? object(policy.schedule, `${policyPointer}/schedule`)
|
|
1733
|
+
: null;
|
|
1734
|
+
if (schedule) {
|
|
1735
|
+
const scheduleKeys = [
|
|
1736
|
+
'campusPolicyCode',
|
|
1737
|
+
'rulePolicyCode',
|
|
1738
|
+
'campusField',
|
|
1739
|
+
'ruleCampusField',
|
|
1740
|
+
'ruleWeekdaysField',
|
|
1741
|
+
'ruleOpenAtField',
|
|
1742
|
+
'ruleCloseAtField',
|
|
1743
|
+
'ruleSlotMinutesField',
|
|
1744
|
+
'ruleAdvanceHoursField',
|
|
1745
|
+
'ruleAdvanceDaysField',
|
|
1746
|
+
'campusEnabledField',
|
|
1747
|
+
'ruleEnabledField',
|
|
1748
|
+
'dateField',
|
|
1749
|
+
'timeField',
|
|
1750
|
+
];
|
|
1751
|
+
exactKeys(schedule, scheduleKeys, `${policyPointer}/schedule`);
|
|
1752
|
+
for (const key of ['campusPolicyCode', 'rulePolicyCode']) {
|
|
1753
|
+
stableCode(schedule[key], `${policyPointer}/schedule/${key}`);
|
|
1754
|
+
}
|
|
1755
|
+
for (const key of scheduleKeys.filter(key => !['campusPolicyCode', 'rulePolicyCode'].includes(key))) {
|
|
1756
|
+
fieldCodeValue(schedule[key], `${policyPointer}/schedule/${key}`);
|
|
1757
|
+
}
|
|
1758
|
+
for (const field of [schedule.campusField, schedule.dateField, schedule.timeField]) {
|
|
1759
|
+
if (!fields.includes(String(field))) {
|
|
1760
|
+
fail('NATIVE_PUBLIC_SCHEDULE_FIELD_INVALID', `${policyPointer}/schedule`);
|
|
1761
|
+
}
|
|
1762
|
+
}
|
|
1763
|
+
if (!declaredPolicyCodes.has(String(schedule.campusPolicyCode)) ||
|
|
1764
|
+
!declaredPolicyCodes.has(String(schedule.rulePolicyCode))) {
|
|
1765
|
+
fail('NATIVE_PUBLIC_SCHEDULE_POLICY_INVALID', `${policyPointer}/schedule`);
|
|
1766
|
+
}
|
|
1767
|
+
}
|
|
1768
|
+
const publicFilters = Object.prototype.hasOwnProperty.call(policy, 'publicFilters')
|
|
1769
|
+
? boundedArray(policy.publicFilters, `${policyPointer}/publicFilters`, 16)
|
|
1770
|
+
: [];
|
|
1771
|
+
const filterFields = new Set();
|
|
1772
|
+
publicFilters.forEach((rawFilter, filterIndex) => {
|
|
1773
|
+
const filterPointer = `${policyPointer}/publicFilters/${filterIndex}`;
|
|
1774
|
+
const filter = object(rawFilter, filterPointer);
|
|
1775
|
+
exactKeys(filter, ['field', 'operator', 'value'], filterPointer);
|
|
1776
|
+
const field = fieldCodeValue(filter.field, `${filterPointer}/field`);
|
|
1777
|
+
if (filterFields.has(field)) {
|
|
1778
|
+
fail('NATIVE_PUBLIC_FILTER_DUPLICATE', `${filterPointer}/field`);
|
|
1779
|
+
}
|
|
1780
|
+
if (!fields.includes(field)) {
|
|
1781
|
+
fail('NATIVE_PUBLIC_FILTER_FIELD_INVALID', `${filterPointer}/field`);
|
|
1782
|
+
}
|
|
1783
|
+
equal(filter.operator, 'eq', `${filterPointer}/operator`);
|
|
1784
|
+
if (![
|
|
1785
|
+
'boolean',
|
|
1786
|
+
'text.short',
|
|
1787
|
+
'text.long',
|
|
1788
|
+
'number.integer',
|
|
1789
|
+
'number.decimal',
|
|
1790
|
+
'date',
|
|
1791
|
+
'time',
|
|
1792
|
+
].includes(declaredFields.get(field) || '')) {
|
|
1793
|
+
fail('NATIVE_PUBLIC_FILTER_FIELD_INVALID', `${filterPointer}/field`);
|
|
1794
|
+
}
|
|
1795
|
+
if (filter.value !== null &&
|
|
1796
|
+
typeof filter.value !== 'string' &&
|
|
1797
|
+
typeof filter.value !== 'number' &&
|
|
1798
|
+
typeof filter.value !== 'boolean') {
|
|
1799
|
+
fail('NATIVE_PUBLIC_FILTER_VALUE_INVALID', `${filterPointer}/value`);
|
|
1800
|
+
}
|
|
1801
|
+
filterFields.add(field);
|
|
1802
|
+
});
|
|
1803
|
+
const publicSubtableFields = Object.prototype.hasOwnProperty.call(policy, 'publicSubtableFields')
|
|
1804
|
+
? object(policy.publicSubtableFields, `${policyPointer}/publicSubtableFields`)
|
|
1805
|
+
: null;
|
|
1806
|
+
if (publicSubtableFields) {
|
|
1807
|
+
if (Object.keys(publicSubtableFields).length > 64) {
|
|
1808
|
+
fail('NATIVE_PUBLIC_SUBTABLE_FIELDS_INVALID', `${policyPointer}/publicSubtableFields`);
|
|
1809
|
+
}
|
|
1810
|
+
for (const [parentFieldCode, rawChildFields] of Object.entries(publicSubtableFields)) {
|
|
1811
|
+
const parentField = resource.schema.fields.find((field) => String(field.code) === parentFieldCode);
|
|
1812
|
+
const childResourceCode = String(parentField?.subtable?.resourceCode || '');
|
|
1813
|
+
const childResource = resources.get(childResourceCode);
|
|
1814
|
+
const childFieldTypes = new Map((childResource?.schema?.fields || []).map((field) => [
|
|
1815
|
+
String(field.code),
|
|
1816
|
+
String(field.type),
|
|
1817
|
+
]));
|
|
1818
|
+
const selected = uniqueStrings(rawChildFields, `${policyPointer}/publicSubtableFields/${parentFieldCode}`, 64);
|
|
1819
|
+
if (!fields.includes(parentFieldCode) ||
|
|
1820
|
+
declaredFields.get(parentFieldCode) !== 'subtable' ||
|
|
1821
|
+
!childResource ||
|
|
1822
|
+
selected.length < 1 ||
|
|
1823
|
+
selected.some(field => !childFieldTypes.has(field)) ||
|
|
1824
|
+
selected.some(field => childFieldTypes.get(field) === 'subtable') ||
|
|
1825
|
+
selected.some(field => childFieldTypes.get(field) === 'signature')) {
|
|
1826
|
+
fail('NATIVE_PUBLIC_SUBTABLE_FIELDS_INVALID', `${policyPointer}/publicSubtableFields/${parentFieldCode}`);
|
|
1827
|
+
}
|
|
1828
|
+
}
|
|
1829
|
+
}
|
|
1830
|
+
if (operations.some(operation => operation.startsWith('public.'))) {
|
|
1831
|
+
if (!Object.prototype.hasOwnProperty.call(policy, 'publicRecordFields')) {
|
|
1832
|
+
fail('NATIVE_PUBLIC_RECORD_FIELDS_REQUIRED', `${policyPointer}/publicRecordFields`);
|
|
1833
|
+
}
|
|
1834
|
+
const publicRecordFields = uniqueStrings(policy.publicRecordFields, `${policyPointer}/publicRecordFields`, 64);
|
|
1835
|
+
if (publicRecordFields.length < 1 ||
|
|
1836
|
+
publicRecordFields.some(field => !fields.includes(field)) ||
|
|
1837
|
+
publicRecordFields.some(field => declaredFields.get(field) === 'signature' ||
|
|
1838
|
+
(declaredFields.get(field) === 'subtable' &&
|
|
1839
|
+
!publicSubtableFields?.[field]))) {
|
|
1840
|
+
fail('NATIVE_PUBLIC_RECORD_FIELDS_INVALID', `${policyPointer}/publicRecordFields`);
|
|
1841
|
+
}
|
|
1842
|
+
}
|
|
1699
1843
|
const requiredFields = Object.prototype.hasOwnProperty.call(policy, 'requiredFields')
|
|
1700
1844
|
? uniqueStrings(policy.requiredFields, `${policyPointer}/requiredFields`, 64)
|
|
1701
1845
|
: [];
|
|
@@ -1709,6 +1853,10 @@ function validateAnonymousPublicAccess(value, config, pointer) {
|
|
|
1709
1853
|
if (operations.includes('create') && !nativeCreate) {
|
|
1710
1854
|
fail('NATIVE_PUBLIC_CREATE_FIELDS_INCOMPLETE', `${policyPointer}/fields`);
|
|
1711
1855
|
}
|
|
1856
|
+
if (operations.includes('create') &&
|
|
1857
|
+
!Object.prototype.hasOwnProperty.call(policy, 'draft')) {
|
|
1858
|
+
fail('NATIVE_PUBLIC_DRAFT_REQUIRED', `${policyPointer}/draft`);
|
|
1859
|
+
}
|
|
1712
1860
|
if (operations.includes('create')) {
|
|
1713
1861
|
for (const fieldCode of requiredCreateFields) {
|
|
1714
1862
|
const missingSet = !fields.includes(fieldCode)
|
|
@@ -1752,7 +1900,6 @@ function validateAnonymousPublicAccess(value, config, pointer) {
|
|
|
1752
1900
|
validationCodes.add(validationCode);
|
|
1753
1901
|
});
|
|
1754
1902
|
policyCodes.add(code);
|
|
1755
|
-
routeCodes.add(routeCode);
|
|
1756
1903
|
});
|
|
1757
1904
|
}
|
|
1758
1905
|
function validateAnonymousPublicAccessContract(value, pointer) {
|
|
@@ -1777,6 +1924,62 @@ function compileAnonymousPublicAccess(config) {
|
|
|
1777
1924
|
...(policy.ownRecordFields
|
|
1778
1925
|
? { ownRecordFields: uniqueSorted(policy.ownRecordFields) }
|
|
1779
1926
|
: {}),
|
|
1927
|
+
...(policy.publicRecordFields
|
|
1928
|
+
? { publicRecordFields: uniqueSorted(policy.publicRecordFields) }
|
|
1929
|
+
: {}),
|
|
1930
|
+
...(policy.publicFilters
|
|
1931
|
+
? {
|
|
1932
|
+
publicFilters: policy.publicFilters
|
|
1933
|
+
.map((filter) => ({
|
|
1934
|
+
field: filter.field,
|
|
1935
|
+
operator: filter.operator,
|
|
1936
|
+
value: filter.value,
|
|
1937
|
+
}))
|
|
1938
|
+
.sort((left, right) => compareText(left.field, right.field)),
|
|
1939
|
+
}
|
|
1940
|
+
: {}),
|
|
1941
|
+
...(policy.publicSubtableFields
|
|
1942
|
+
? {
|
|
1943
|
+
publicSubtableFields: Object.fromEntries(Object.entries(policy.publicSubtableFields)
|
|
1944
|
+
.sort(([left], [right]) => left.localeCompare(right))
|
|
1945
|
+
.map(([field, childFields]) => [
|
|
1946
|
+
field,
|
|
1947
|
+
uniqueSorted(Array.isArray(childFields)
|
|
1948
|
+
? childFields.map(String)
|
|
1949
|
+
: []),
|
|
1950
|
+
])),
|
|
1951
|
+
}
|
|
1952
|
+
: {}),
|
|
1953
|
+
...(policy.serverGeneratedFields
|
|
1954
|
+
? {
|
|
1955
|
+
serverGeneratedFields: policy.serverGeneratedFields
|
|
1956
|
+
.map((generated) => ({
|
|
1957
|
+
field: generated.field,
|
|
1958
|
+
kind: generated.kind,
|
|
1959
|
+
}))
|
|
1960
|
+
.sort((left, right) => compareText(left.field, right.field)),
|
|
1961
|
+
}
|
|
1962
|
+
: {}),
|
|
1963
|
+
...(policy.schedule
|
|
1964
|
+
? {
|
|
1965
|
+
schedule: {
|
|
1966
|
+
campusPolicyCode: policy.schedule.campusPolicyCode,
|
|
1967
|
+
rulePolicyCode: policy.schedule.rulePolicyCode,
|
|
1968
|
+
campusField: policy.schedule.campusField,
|
|
1969
|
+
ruleCampusField: policy.schedule.ruleCampusField,
|
|
1970
|
+
ruleWeekdaysField: policy.schedule.ruleWeekdaysField,
|
|
1971
|
+
ruleOpenAtField: policy.schedule.ruleOpenAtField,
|
|
1972
|
+
ruleCloseAtField: policy.schedule.ruleCloseAtField,
|
|
1973
|
+
ruleSlotMinutesField: policy.schedule.ruleSlotMinutesField,
|
|
1974
|
+
ruleAdvanceHoursField: policy.schedule.ruleAdvanceHoursField,
|
|
1975
|
+
ruleAdvanceDaysField: policy.schedule.ruleAdvanceDaysField,
|
|
1976
|
+
campusEnabledField: policy.schedule.campusEnabledField,
|
|
1977
|
+
ruleEnabledField: policy.schedule.ruleEnabledField,
|
|
1978
|
+
dateField: policy.schedule.dateField,
|
|
1979
|
+
timeField: policy.schedule.timeField,
|
|
1980
|
+
},
|
|
1981
|
+
}
|
|
1982
|
+
: {}),
|
|
1780
1983
|
...(policy.draft ? { draft: { ...policy.draft } } : {}),
|
|
1781
1984
|
...(policy.validations
|
|
1782
1985
|
? {
|