@sanity/validation 3.0.0-v3-pte.87 → 3.0.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.
Files changed (144) hide show
  1. package/lib/dts/src/index.d.ts +36 -13
  2. package/lib/index.esm.js +1259 -0
  3. package/lib/index.esm.js.map +1 -0
  4. package/lib/index.js +1253 -1288
  5. package/lib/index.js.map +1 -1
  6. package/package.json +24 -19
  7. package/src/index.ts +3 -1
  8. package/src/util/requestIdleCallback.ts +31 -0
  9. package/src/validateDocument.test.ts +14 -86
  10. package/src/validateDocument.ts +121 -55
  11. package/src/validators/slugValidator.ts +18 -4
  12. package/dist/tsconfig.tsbuildinfo +0 -1
  13. package/lib/dts/src/Rule.d.ts +0 -4
  14. package/lib/dts/src/Rule.d.ts.map +0 -1
  15. package/lib/dts/src/Rule.js +0 -336
  16. package/lib/dts/src/Rule.js.map +0 -1
  17. package/lib/dts/src/ValidationError.d.ts +0 -4
  18. package/lib/dts/src/ValidationError.d.ts.map +0 -1
  19. package/lib/dts/src/ValidationError.js +0 -18
  20. package/lib/dts/src/ValidationError.js.map +0 -1
  21. package/lib/dts/src/index.d.ts.map +0 -1
  22. package/lib/dts/src/index.js +0 -7
  23. package/lib/dts/src/index.js.map +0 -1
  24. package/lib/dts/src/inferFromSchema.d.ts +0 -4
  25. package/lib/dts/src/inferFromSchema.d.ts.map +0 -1
  26. package/lib/dts/src/inferFromSchema.js +0 -14
  27. package/lib/dts/src/inferFromSchema.js.map +0 -1
  28. package/lib/dts/src/inferFromSchemaType.d.ts +0 -5
  29. package/lib/dts/src/inferFromSchemaType.d.ts.map +0 -1
  30. package/lib/dts/src/inferFromSchemaType.js +0 -33
  31. package/lib/dts/src/inferFromSchemaType.js.map +0 -1
  32. package/lib/dts/src/util/convertToValidationMarker.d.ts +0 -6
  33. package/lib/dts/src/util/convertToValidationMarker.d.ts.map +0 -1
  34. package/lib/dts/src/util/convertToValidationMarker.js +0 -51
  35. package/lib/dts/src/util/convertToValidationMarker.js.map +0 -1
  36. package/lib/dts/src/util/deepEquals.d.ts +0 -6
  37. package/lib/dts/src/util/deepEquals.d.ts.map +0 -1
  38. package/lib/dts/src/util/deepEquals.js +0 -65
  39. package/lib/dts/src/util/deepEquals.js.map +0 -1
  40. package/lib/dts/src/util/escapeRegex.d.ts +0 -3
  41. package/lib/dts/src/util/escapeRegex.d.ts.map +0 -1
  42. package/lib/dts/src/util/escapeRegex.js +0 -6
  43. package/lib/dts/src/util/escapeRegex.js.map +0 -1
  44. package/lib/dts/src/util/normalizeValidationRules.d.ts +0 -6
  45. package/lib/dts/src/util/normalizeValidationRules.d.ts.map +0 -1
  46. package/lib/dts/src/util/normalizeValidationRules.js +0 -104
  47. package/lib/dts/src/util/normalizeValidationRules.js.map +0 -1
  48. package/lib/dts/src/util/normalizeValidationRules.test.d.ts +0 -2
  49. package/lib/dts/src/util/normalizeValidationRules.test.d.ts.map +0 -1
  50. package/lib/dts/src/util/normalizeValidationRules.test.js +0 -150
  51. package/lib/dts/src/util/normalizeValidationRules.test.js.map +0 -1
  52. package/lib/dts/src/util/pathToString.d.ts +0 -3
  53. package/lib/dts/src/util/pathToString.d.ts.map +0 -1
  54. package/lib/dts/src/util/pathToString.js +0 -18
  55. package/lib/dts/src/util/pathToString.js.map +0 -1
  56. package/lib/dts/src/util/typeString.d.ts +0 -2
  57. package/lib/dts/src/util/typeString.d.ts.map +0 -1
  58. package/lib/dts/src/util/typeString.js +0 -23
  59. package/lib/dts/src/util/typeString.js.map +0 -1
  60. package/lib/dts/src/util/typeString.test.d.ts +0 -2
  61. package/lib/dts/src/util/typeString.test.d.ts.map +0 -1
  62. package/lib/dts/src/util/typeString.test.js +0 -24
  63. package/lib/dts/src/util/typeString.test.js.map +0 -1
  64. package/lib/dts/src/validateDocument.d.ts +0 -23
  65. package/lib/dts/src/validateDocument.d.ts.map +0 -1
  66. package/lib/dts/src/validateDocument.js +0 -143
  67. package/lib/dts/src/validateDocument.js.map +0 -1
  68. package/lib/dts/src/validateDocument.test.d.ts +0 -2
  69. package/lib/dts/src/validateDocument.test.d.ts.map +0 -1
  70. package/lib/dts/src/validateDocument.test.js +0 -710
  71. package/lib/dts/src/validateDocument.test.js.map +0 -1
  72. package/lib/dts/src/validators/arrayValidator.d.ts +0 -4
  73. package/lib/dts/src/validators/arrayValidator.d.ts.map +0 -1
  74. package/lib/dts/src/validators/arrayValidator.js +0 -79
  75. package/lib/dts/src/validators/arrayValidator.js.map +0 -1
  76. package/lib/dts/src/validators/booleanValidator.d.ts +0 -4
  77. package/lib/dts/src/validators/booleanValidator.d.ts.map +0 -1
  78. package/lib/dts/src/validators/booleanValidator.js +0 -12
  79. package/lib/dts/src/validators/booleanValidator.js.map +0 -1
  80. package/lib/dts/src/validators/dateValidator.d.ts +0 -5
  81. package/lib/dts/src/validators/dateValidator.d.ts.map +0 -1
  82. package/lib/dts/src/validators/dateValidator.js +0 -83
  83. package/lib/dts/src/validators/dateValidator.js.map +0 -1
  84. package/lib/dts/src/validators/genericValidator.d.ts +0 -4
  85. package/lib/dts/src/validators/genericValidator.d.ts.map +0 -1
  86. package/lib/dts/src/validators/genericValidator.js +0 -93
  87. package/lib/dts/src/validators/genericValidator.js.map +0 -1
  88. package/lib/dts/src/validators/numberValidator.d.ts +0 -4
  89. package/lib/dts/src/validators/numberValidator.d.ts.map +0 -1
  90. package/lib/dts/src/validators/numberValidator.js +0 -47
  91. package/lib/dts/src/validators/numberValidator.js.map +0 -1
  92. package/lib/dts/src/validators/objectValidator.d.ts +0 -4
  93. package/lib/dts/src/validators/objectValidator.d.ts.map +0 -1
  94. package/lib/dts/src/validators/objectValidator.js +0 -48
  95. package/lib/dts/src/validators/objectValidator.js.map +0 -1
  96. package/lib/dts/src/validators/slugValidator.d.ts +0 -9
  97. package/lib/dts/src/validators/slugValidator.d.ts.map +0 -1
  98. package/lib/dts/src/validators/slugValidator.js +0 -83
  99. package/lib/dts/src/validators/slugValidator.js.map +0 -1
  100. package/lib/dts/src/validators/stringValidator.d.ts +0 -4
  101. package/lib/dts/src/validators/stringValidator.d.ts.map +0 -1
  102. package/lib/dts/src/validators/stringValidator.js +0 -94
  103. package/lib/dts/src/validators/stringValidator.js.map +0 -1
  104. package/lib/dts/test/array.test.d.ts +0 -2
  105. package/lib/dts/test/array.test.d.ts.map +0 -1
  106. package/lib/dts/test/array.test.js +0 -55
  107. package/lib/dts/test/array.test.js.map +0 -1
  108. package/lib/dts/test/children.test.d.ts +0 -2
  109. package/lib/dts/test/children.test.d.ts.map +0 -1
  110. package/lib/dts/test/children.test.js +0 -70
  111. package/lib/dts/test/children.test.js.map +0 -1
  112. package/lib/dts/test/createSchema.d.ts +0 -6
  113. package/lib/dts/test/createSchema.d.ts.map +0 -1
  114. package/lib/dts/test/createSchema.js +0 -19
  115. package/lib/dts/test/createSchema.js.map +0 -1
  116. package/lib/dts/test/generics.test.d.ts +0 -2
  117. package/lib/dts/test/generics.test.d.ts.map +0 -1
  118. package/lib/dts/test/generics.test.js +0 -60
  119. package/lib/dts/test/generics.test.js.map +0 -1
  120. package/lib/dts/test/infer.test.d.ts +0 -2
  121. package/lib/dts/test/infer.test.d.ts.map +0 -1
  122. package/lib/dts/test/infer.test.js +0 -243
  123. package/lib/dts/test/infer.test.js.map +0 -1
  124. package/lib/dts/test/mocks/mockSanityClient.d.ts +0 -6
  125. package/lib/dts/test/mocks/mockSanityClient.d.ts.map +0 -1
  126. package/lib/dts/test/mocks/mockSanityClient.js +0 -8
  127. package/lib/dts/test/mocks/mockSanityClient.js.map +0 -1
  128. package/lib/dts/test/nullExport.d.ts +0 -3
  129. package/lib/dts/test/nullExport.d.ts.map +0 -1
  130. package/lib/dts/test/nullExport.js +0 -4
  131. package/lib/dts/test/nullExport.js.map +0 -1
  132. package/lib/dts/test/numbers.test.d.ts +0 -2
  133. package/lib/dts/test/numbers.test.d.ts.map +0 -1
  134. package/lib/dts/test/numbers.test.js +0 -57
  135. package/lib/dts/test/numbers.test.js.map +0 -1
  136. package/lib/dts/test/strings.test.d.ts +0 -2
  137. package/lib/dts/test/strings.test.d.ts.map +0 -1
  138. package/lib/dts/test/strings.test.js +0 -100
  139. package/lib/dts/test/strings.test.js.map +0 -1
  140. package/lib/dts/tsconfig.lib.tsbuildinfo +0 -1
  141. package/lib/dts/tsconfig.tsbuildinfo +0 -1
  142. package/lib/index.cjs +0 -1319
  143. package/lib/index.cjs.map +0 -1
  144. package/tsconfig.tsbuildinfo +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"typeString.test.js","sourceRoot":"","sources":["../../../../src/util/typeString.test.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,cAAc,CAAA;AAErC,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACrC,MAAM,CACJ,UAAU,CAAC;YACT,sBAAsB;QACxB,CAAC,CAAC,CACH,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAClB,MAAM,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACzC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAChD,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACzC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACpC,MAAM,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC7C,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC5D,MAAM,YAAY;SAAG;QACrB,MAAM,CAAC,UAAU,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;IAC7D,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACrC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IACjD,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,23 +0,0 @@
1
- import { SanityDocument, Schema, SchemaType, ValidationContext, ValidationMarker } from '@sanity/types';
2
- import { SanityClient } from '@sanity/client';
3
- /**
4
- * @internal
5
- */
6
- export declare function resolveTypeForArrayItem(item: unknown, candidates: SchemaType[]): SchemaType | undefined;
7
- export default function validateDocument(client: SanityClient, doc: SanityDocument, schema: Schema, context?: Pick<ValidationContext, 'getDocumentExists'>): Promise<ValidationMarker[]>;
8
- /**
9
- * this is used make optional properties required by replacing optionals with
10
- * `T[P] | undefined`. this is used to prevent errors in `validateItem` where
11
- * an option from a previous invocation would be incorrectly passed down.
12
- *
13
- * https://medium.com/terria/typescript-transforming-optional-properties-to-required-properties-that-may-be-undefined-7482cb4e1585
14
- */
15
- declare type ExplicitUndefined<T> = {
16
- [P in keyof Required<T>]: Pick<T, P> extends Required<Pick<T, P>> ? T[P] : T[P] | undefined;
17
- };
18
- declare type ValidateItemOptions = {
19
- value: unknown;
20
- } & ExplicitUndefined<ValidationContext>;
21
- export declare function validateItem({ value, type, path, parent, ...restOfContext }: ValidateItemOptions): Promise<ValidationMarker[]>;
22
- export {};
23
- //# sourceMappingURL=validateDocument.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validateDocument.d.ts","sourceRoot":"","sources":["../../../src/validateDocument.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,MAAM,EACN,UAAU,EACV,iBAAiB,EACjB,gBAAgB,EAMjB,MAAM,eAAe,CAAA;AAEtB,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAA;AAW3C;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,OAAO,EACb,UAAU,EAAE,UAAU,EAAE,GACvB,UAAU,GAAG,SAAS,CAiBxB;AAED,wBAA8B,gBAAgB,CAC5C,MAAM,EAAE,YAAY,EACpB,GAAG,EAAE,cAAc,EACnB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,mBAAmB,CAAC,GACrD,OAAO,CAAC,gBAAgB,EAAE,CAAC,CA4B7B;AAED;;;;;;GAMG;AACH,aAAK,iBAAiB,CAAC,CAAC,IAAI;KACzB,CAAC,IAAI,MAAM,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS;CAC5F,CAAA;AAED,aAAK,mBAAmB,GAAG;IACzB,KAAK,EAAE,OAAO,CAAA;CACf,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,CAAA;AAExC,wBAAsB,YAAY,CAAC,EACjC,KAAK,EACL,IAAI,EACJ,IAAS,EACT,MAAM,EACN,GAAG,aAAa,EACjB,EAAE,mBAAmB,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CA4HnD"}
@@ -1,143 +0,0 @@
1
- import { isKeyedObject, isTypedObject, isBlock, isBlockSchemaType, isSpanSchemaType, } from '@sanity/types';
2
- import { uniqBy } from 'lodash';
3
- import typeString from './util/typeString';
4
- import ValidationErrorClass from './ValidationError';
5
- import normalizeValidationRules from './util/normalizeValidationRules';
6
- const isRecord = (maybeRecord) => typeof maybeRecord === 'object' && maybeRecord !== null && !Array.isArray(maybeRecord);
7
- const isNonNullable = (value) => value !== null && value !== undefined;
8
- /**
9
- * @internal
10
- */
11
- export function resolveTypeForArrayItem(item, candidates) {
12
- // if there is only one type available, assume that it's the correct one
13
- if (candidates.length === 1)
14
- return candidates[0];
15
- const itemType = isTypedObject(item) && item._type;
16
- const primitive = item === undefined || item === null || (!itemType && typeString(item).toLowerCase());
17
- if (primitive && primitive !== 'object') {
18
- return candidates.find((candidate) => candidate.jsonType === primitive);
19
- }
20
- return (candidates.find((candidate) => candidate.type?.name === itemType) ||
21
- candidates.find((candidate) => candidate.name === itemType) ||
22
- candidates.find((candidate) => candidate.name === 'object' && primitive === 'object'));
23
- }
24
- export default async function validateDocument(client, doc, schema, context) {
25
- const documentType = schema.get(doc._type);
26
- if (!documentType) {
27
- console.warn('Schema type for object type "%s" not found, skipping validation', doc._type);
28
- return [];
29
- }
30
- try {
31
- return await validateItem({
32
- client,
33
- schema,
34
- parent: undefined,
35
- value: doc,
36
- path: [],
37
- document: doc,
38
- type: documentType,
39
- getDocumentExists: context?.getDocumentExists,
40
- });
41
- }
42
- catch (err) {
43
- console.error(err);
44
- return [
45
- {
46
- level: 'error',
47
- path: [],
48
- item: new ValidationErrorClass(err?.message),
49
- },
50
- ];
51
- }
52
- }
53
- export async function validateItem({ value, type, path = [], parent, ...restOfContext }) {
54
- const rules = normalizeValidationRules(type);
55
- // run validation for the current value
56
- const selfChecks = rules.map((rule) => rule.validate(value, {
57
- ...restOfContext,
58
- parent,
59
- path,
60
- type,
61
- }));
62
- // run validation for nested values (conditionally)
63
- let nestedChecks = [];
64
- const selfIsRequired = rules.some((rule) => rule.isRequired());
65
- const shouldRunNestedObjectValidation =
66
- // run nested validation for objects
67
- type?.jsonType === 'object' &&
68
- // if the value is truthy
69
- (!!value || // or
70
- // (the value is null or undefined) and the top-level value is required
71
- ((value === null || value === undefined) && selfIsRequired));
72
- if (shouldRunNestedObjectValidation) {
73
- const fieldTypes = type.fields.reduce((acc, field) => {
74
- acc[field.name] = field.type;
75
- return acc;
76
- }, {});
77
- // Validation for rules set at the object level with `Rule.fields({/* ... */})`
78
- nestedChecks = nestedChecks.concat(rules
79
- .map((rule) => rule._fieldRules)
80
- .filter(isNonNullable)
81
- .flatMap((fieldResults) => Object.entries(fieldResults))
82
- .flatMap(([name, validation]) => {
83
- const fieldType = fieldTypes[name];
84
- return normalizeValidationRules({ ...fieldType, validation }).map((subRule) => {
85
- const nestedValue = isRecord(value) ? value[name] : undefined;
86
- return subRule.validate(nestedValue, {
87
- ...restOfContext,
88
- parent: value,
89
- path: path.concat(name),
90
- type: fieldType,
91
- });
92
- });
93
- }));
94
- // Validation from each field's schema `validation: Rule => {/* ... */}` function
95
- nestedChecks = nestedChecks.concat(type.fields.map((field) => validateItem({
96
- ...restOfContext,
97
- parent: value,
98
- value: isRecord(value) ? value[field.name] : undefined,
99
- path: path.concat(field.name),
100
- type: field.type,
101
- })));
102
- }
103
- // note: unlike objects, arrays should not run nested validation for undefined
104
- // values because we won't have a valid path to put a marker (i.e. missing the
105
- // key or index in the path) and the downstream form builder won't have a
106
- // valid target component
107
- const shouldRunNestedValidationForArrays = type?.jsonType === 'array' && Array.isArray(value);
108
- if (shouldRunNestedValidationForArrays) {
109
- nestedChecks = nestedChecks.concat(value.map((item) => validateItem({
110
- ...restOfContext,
111
- parent: value,
112
- value: item,
113
- path: path.concat(isKeyedObject(item) ? { _key: item._key } : value.indexOf(item)),
114
- type: resolveTypeForArrayItem(item, type.of),
115
- })));
116
- }
117
- // markDefs also do no run nested validation if the parent object is undefined
118
- // for a similar reason to arrays
119
- const shouldRunNestedValidationForMarkDefs = isBlock(value) && value.markDefs.length && isBlockSchemaType(type);
120
- if (shouldRunNestedValidationForMarkDefs) {
121
- const [spanChildrenField] = type.fields;
122
- const spanType = spanChildrenField.type.of.find(isSpanSchemaType);
123
- const annotations = (spanType?.annotations || []).reduce((map, annotationType) => {
124
- map.set(annotationType.name, annotationType);
125
- return map;
126
- }, new Map());
127
- nestedChecks = nestedChecks.concat(value.markDefs.map((markDef) => validateItem({
128
- ...restOfContext,
129
- parent: value,
130
- value: markDef,
131
- path: path.concat(['markDefs', { _key: markDef._key }]),
132
- type: annotations.get(markDef._type),
133
- })));
134
- }
135
- const results = (await Promise.all([...selfChecks, ...nestedChecks])).flat();
136
- // run `uniqBy` if `_fieldRules` are present because they can
137
- // cause repeat markers
138
- if (rules.some((rule) => rule._fieldRules)) {
139
- return uniqBy(results, (rule) => JSON.stringify(rule));
140
- }
141
- return results;
142
- }
143
- //# sourceMappingURL=validateDocument.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validateDocument.js","sourceRoot":"","sources":["../../../src/validateDocument.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=validateDocument.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validateDocument.test.d.ts","sourceRoot":"","sources":["../../../src/validateDocument.test.ts"],"names":[],"mappings":""}