@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.
- package/lib/dts/src/index.d.ts +36 -13
- package/lib/index.esm.js +1259 -0
- package/lib/index.esm.js.map +1 -0
- package/lib/index.js +1253 -1288
- package/lib/index.js.map +1 -1
- package/package.json +24 -19
- package/src/index.ts +3 -1
- package/src/util/requestIdleCallback.ts +31 -0
- package/src/validateDocument.test.ts +14 -86
- package/src/validateDocument.ts +121 -55
- package/src/validators/slugValidator.ts +18 -4
- package/dist/tsconfig.tsbuildinfo +0 -1
- package/lib/dts/src/Rule.d.ts +0 -4
- package/lib/dts/src/Rule.d.ts.map +0 -1
- package/lib/dts/src/Rule.js +0 -336
- package/lib/dts/src/Rule.js.map +0 -1
- package/lib/dts/src/ValidationError.d.ts +0 -4
- package/lib/dts/src/ValidationError.d.ts.map +0 -1
- package/lib/dts/src/ValidationError.js +0 -18
- package/lib/dts/src/ValidationError.js.map +0 -1
- package/lib/dts/src/index.d.ts.map +0 -1
- package/lib/dts/src/index.js +0 -7
- package/lib/dts/src/index.js.map +0 -1
- package/lib/dts/src/inferFromSchema.d.ts +0 -4
- package/lib/dts/src/inferFromSchema.d.ts.map +0 -1
- package/lib/dts/src/inferFromSchema.js +0 -14
- package/lib/dts/src/inferFromSchema.js.map +0 -1
- package/lib/dts/src/inferFromSchemaType.d.ts +0 -5
- package/lib/dts/src/inferFromSchemaType.d.ts.map +0 -1
- package/lib/dts/src/inferFromSchemaType.js +0 -33
- package/lib/dts/src/inferFromSchemaType.js.map +0 -1
- package/lib/dts/src/util/convertToValidationMarker.d.ts +0 -6
- package/lib/dts/src/util/convertToValidationMarker.d.ts.map +0 -1
- package/lib/dts/src/util/convertToValidationMarker.js +0 -51
- package/lib/dts/src/util/convertToValidationMarker.js.map +0 -1
- package/lib/dts/src/util/deepEquals.d.ts +0 -6
- package/lib/dts/src/util/deepEquals.d.ts.map +0 -1
- package/lib/dts/src/util/deepEquals.js +0 -65
- package/lib/dts/src/util/deepEquals.js.map +0 -1
- package/lib/dts/src/util/escapeRegex.d.ts +0 -3
- package/lib/dts/src/util/escapeRegex.d.ts.map +0 -1
- package/lib/dts/src/util/escapeRegex.js +0 -6
- package/lib/dts/src/util/escapeRegex.js.map +0 -1
- package/lib/dts/src/util/normalizeValidationRules.d.ts +0 -6
- package/lib/dts/src/util/normalizeValidationRules.d.ts.map +0 -1
- package/lib/dts/src/util/normalizeValidationRules.js +0 -104
- package/lib/dts/src/util/normalizeValidationRules.js.map +0 -1
- package/lib/dts/src/util/normalizeValidationRules.test.d.ts +0 -2
- package/lib/dts/src/util/normalizeValidationRules.test.d.ts.map +0 -1
- package/lib/dts/src/util/normalizeValidationRules.test.js +0 -150
- package/lib/dts/src/util/normalizeValidationRules.test.js.map +0 -1
- package/lib/dts/src/util/pathToString.d.ts +0 -3
- package/lib/dts/src/util/pathToString.d.ts.map +0 -1
- package/lib/dts/src/util/pathToString.js +0 -18
- package/lib/dts/src/util/pathToString.js.map +0 -1
- package/lib/dts/src/util/typeString.d.ts +0 -2
- package/lib/dts/src/util/typeString.d.ts.map +0 -1
- package/lib/dts/src/util/typeString.js +0 -23
- package/lib/dts/src/util/typeString.js.map +0 -1
- package/lib/dts/src/util/typeString.test.d.ts +0 -2
- package/lib/dts/src/util/typeString.test.d.ts.map +0 -1
- package/lib/dts/src/util/typeString.test.js +0 -24
- package/lib/dts/src/util/typeString.test.js.map +0 -1
- package/lib/dts/src/validateDocument.d.ts +0 -23
- package/lib/dts/src/validateDocument.d.ts.map +0 -1
- package/lib/dts/src/validateDocument.js +0 -143
- package/lib/dts/src/validateDocument.js.map +0 -1
- package/lib/dts/src/validateDocument.test.d.ts +0 -2
- package/lib/dts/src/validateDocument.test.d.ts.map +0 -1
- package/lib/dts/src/validateDocument.test.js +0 -710
- package/lib/dts/src/validateDocument.test.js.map +0 -1
- package/lib/dts/src/validators/arrayValidator.d.ts +0 -4
- package/lib/dts/src/validators/arrayValidator.d.ts.map +0 -1
- package/lib/dts/src/validators/arrayValidator.js +0 -79
- package/lib/dts/src/validators/arrayValidator.js.map +0 -1
- package/lib/dts/src/validators/booleanValidator.d.ts +0 -4
- package/lib/dts/src/validators/booleanValidator.d.ts.map +0 -1
- package/lib/dts/src/validators/booleanValidator.js +0 -12
- package/lib/dts/src/validators/booleanValidator.js.map +0 -1
- package/lib/dts/src/validators/dateValidator.d.ts +0 -5
- package/lib/dts/src/validators/dateValidator.d.ts.map +0 -1
- package/lib/dts/src/validators/dateValidator.js +0 -83
- package/lib/dts/src/validators/dateValidator.js.map +0 -1
- package/lib/dts/src/validators/genericValidator.d.ts +0 -4
- package/lib/dts/src/validators/genericValidator.d.ts.map +0 -1
- package/lib/dts/src/validators/genericValidator.js +0 -93
- package/lib/dts/src/validators/genericValidator.js.map +0 -1
- package/lib/dts/src/validators/numberValidator.d.ts +0 -4
- package/lib/dts/src/validators/numberValidator.d.ts.map +0 -1
- package/lib/dts/src/validators/numberValidator.js +0 -47
- package/lib/dts/src/validators/numberValidator.js.map +0 -1
- package/lib/dts/src/validators/objectValidator.d.ts +0 -4
- package/lib/dts/src/validators/objectValidator.d.ts.map +0 -1
- package/lib/dts/src/validators/objectValidator.js +0 -48
- package/lib/dts/src/validators/objectValidator.js.map +0 -1
- package/lib/dts/src/validators/slugValidator.d.ts +0 -9
- package/lib/dts/src/validators/slugValidator.d.ts.map +0 -1
- package/lib/dts/src/validators/slugValidator.js +0 -83
- package/lib/dts/src/validators/slugValidator.js.map +0 -1
- package/lib/dts/src/validators/stringValidator.d.ts +0 -4
- package/lib/dts/src/validators/stringValidator.d.ts.map +0 -1
- package/lib/dts/src/validators/stringValidator.js +0 -94
- package/lib/dts/src/validators/stringValidator.js.map +0 -1
- package/lib/dts/test/array.test.d.ts +0 -2
- package/lib/dts/test/array.test.d.ts.map +0 -1
- package/lib/dts/test/array.test.js +0 -55
- package/lib/dts/test/array.test.js.map +0 -1
- package/lib/dts/test/children.test.d.ts +0 -2
- package/lib/dts/test/children.test.d.ts.map +0 -1
- package/lib/dts/test/children.test.js +0 -70
- package/lib/dts/test/children.test.js.map +0 -1
- package/lib/dts/test/createSchema.d.ts +0 -6
- package/lib/dts/test/createSchema.d.ts.map +0 -1
- package/lib/dts/test/createSchema.js +0 -19
- package/lib/dts/test/createSchema.js.map +0 -1
- package/lib/dts/test/generics.test.d.ts +0 -2
- package/lib/dts/test/generics.test.d.ts.map +0 -1
- package/lib/dts/test/generics.test.js +0 -60
- package/lib/dts/test/generics.test.js.map +0 -1
- package/lib/dts/test/infer.test.d.ts +0 -2
- package/lib/dts/test/infer.test.d.ts.map +0 -1
- package/lib/dts/test/infer.test.js +0 -243
- package/lib/dts/test/infer.test.js.map +0 -1
- package/lib/dts/test/mocks/mockSanityClient.d.ts +0 -6
- package/lib/dts/test/mocks/mockSanityClient.d.ts.map +0 -1
- package/lib/dts/test/mocks/mockSanityClient.js +0 -8
- package/lib/dts/test/mocks/mockSanityClient.js.map +0 -1
- package/lib/dts/test/nullExport.d.ts +0 -3
- package/lib/dts/test/nullExport.d.ts.map +0 -1
- package/lib/dts/test/nullExport.js +0 -4
- package/lib/dts/test/nullExport.js.map +0 -1
- package/lib/dts/test/numbers.test.d.ts +0 -2
- package/lib/dts/test/numbers.test.d.ts.map +0 -1
- package/lib/dts/test/numbers.test.js +0 -57
- package/lib/dts/test/numbers.test.js.map +0 -1
- package/lib/dts/test/strings.test.d.ts +0 -2
- package/lib/dts/test/strings.test.d.ts.map +0 -1
- package/lib/dts/test/strings.test.js +0 -100
- package/lib/dts/test/strings.test.js.map +0 -1
- package/lib/dts/tsconfig.lib.tsbuildinfo +0 -1
- package/lib/dts/tsconfig.tsbuildinfo +0 -1
- package/lib/index.cjs +0 -1319
- package/lib/index.cjs.map +0 -1
- package/tsconfig.tsbuildinfo +0 -1
package/lib/index.cjs.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","sources":["../src/ValidationError.ts","../src/util/escapeRegex.ts","../src/util/pathToString.ts","../src/util/convertToValidationMarker.ts","../src/util/typeString.ts","../src/util/deepEquals.ts","../src/validators/genericValidator.ts","../src/validators/booleanValidator.ts","../src/validators/numberValidator.ts","../src/validators/stringValidator.ts","../src/validators/arrayValidator.ts","../src/validators/objectValidator.ts","../src/validators/dateValidator.ts","../src/Rule.ts","../src/validators/slugValidator.ts","../src/util/normalizeValidationRules.ts","../src/validateDocument.ts","../src/inferFromSchemaType.ts","../src/inferFromSchema.ts","../src/index.ts"],"sourcesContent":["import {\n Path,\n ValidationMarker,\n ValidationError as IValidationError,\n ValidationErrorOptions,\n ValidationErrorClass,\n} from '@sanity/types'\n\n// Follows the same pattern as Rule and RuleClass. @see Rule\nconst ValidationError: ValidationErrorClass = class ValidationError implements IValidationError {\n message: string\n paths: Path[]\n children: ValidationMarker[] | undefined\n operation: 'AND' | 'OR' | undefined\n\n constructor(message: string, options: ValidationErrorOptions = {}) {\n this.message = message\n this.paths = options.paths || []\n this.children = options.children\n this.operation = options.operation\n }\n\n cloneWithMessage(msg: string): ValidationError {\n return new ValidationError(msg, {\n paths: this.paths,\n children: this.children,\n operation: this.operation,\n })\n }\n}\n\nexport default ValidationError\n","/* eslint-disable no-useless-escape */\nexport default (string: string): string => {\n // Escape ^$.*+-?=!:|\\/()[]{},\n return string.replace(/[\\^\\$\\.\\*\\+\\-\\?\\=\\!\\:\\|\\\\\\/\\(\\)\\[\\]\\{\\}\\,]/g, '\\\\$&')\n}\n","import {Path, isKeyedObject} from '@sanity/types'\n\nexport default function pathToString(path: Path | undefined = []): string {\n return path.reduce<string>((target, segment, i) => {\n const segmentType = typeof segment\n if (segmentType === 'number') {\n return `${target}[${segment}]`\n }\n\n if (segmentType === 'string') {\n const separator = i === 0 ? '' : '.'\n return `${target}${separator}${segment}`\n }\n\n if (isKeyedObject(segment)) {\n return `${target}[_key==\"${segment._key}\"]`\n }\n\n throw new Error(`Unsupported path segment \"${segment}\"`)\n }, '')\n}\n","import {ValidationMarker, ValidationError, ValidationContext} from '@sanity/types'\nimport ValidationErrorClass from '../ValidationError'\nimport pathToString from '../util/pathToString'\n\ntype ValidationErrorLike = Pick<ValidationError, 'message'> & Partial<ValidationError>\n\nexport function isNonNullable<T>(t: T): t is NonNullable<T> {\n return t !== null || t !== undefined\n}\n\nexport function convertToValidationMarker(\n validatorResult:\n | true\n | true[]\n | string\n | string[]\n | ValidationError\n | ValidationError[]\n | ValidationErrorLike\n | ValidationErrorLike[],\n level: 'error' | 'warning' | 'info' | undefined,\n context: ValidationContext\n): ValidationMarker[] {\n if (!context) {\n throw new Error('missing context')\n }\n\n if (validatorResult === true) return []\n\n if (Array.isArray(validatorResult)) {\n return validatorResult\n .flatMap((child) => convertToValidationMarker(child, level, context))\n .filter(isNonNullable)\n }\n\n if (typeof validatorResult === 'string') {\n return convertToValidationMarker(new ValidationErrorClass(validatorResult), level, context)\n }\n\n if (!(validatorResult instanceof ValidationErrorClass)) {\n // in order to accept the `ValidationErrorLike`, it at least needs to have\n // a `message` in the object\n if (typeof validatorResult?.message !== 'string') {\n throw new Error(\n `${pathToString(\n context.path\n )}: Validator must return 'true' if valid or an error message as a string on errors`\n )\n }\n\n // this is the occurs when an object is returned that wasn't created with the\n // `ValidationErrorClass`. in this case, we want to convert it to a class\n return convertToValidationMarker(\n new ValidationErrorClass(validatorResult.message, validatorResult),\n level,\n context\n )\n }\n\n const results: ValidationMarker[] = []\n\n // the validator result does not include any item-level relative paths,\n // then just return the top-level path with the validation result\n if (!validatorResult.paths?.length) {\n return [\n {\n level: level || 'error',\n item: validatorResult,\n path: context.path || [],\n },\n ]\n }\n\n // if the validator result did include item-level relative paths, then for\n // each item-level relative path, create a validation marker that concatenates\n // the relative path with the path from the validation context\n return results.concat(\n validatorResult.paths.map((path) => ({\n path: (context.path || []).concat(path),\n level: level || 'error',\n item: validatorResult,\n }))\n )\n}\n","// this file was adapted from a previous dependency `type-of-is`\n// https://github.com/stephenhandley/type-of-is/blob/7138a7e79f5af7c286bf8123f60843a91aaebf38/index.js\nconst _toString = {}.toString\n\nconst builtIns = [Object, Function, Array, String, Boolean, Number, Date, RegExp, Error]\n\nfunction isBuiltIn(_constructor: unknown) {\n for (let i = 0; i < builtIns.length; i++) {\n if (builtIns[i] === _constructor) return true\n }\n return false\n}\n\nexport default function typeString(obj: unknown): string {\n // [object Blah] -> Blah\n const stringType = _toString.call(obj).slice(8, -1)\n if (obj === null || obj === undefined) return stringType.toLowerCase()\n\n // eslint-disable-next-line @typescript-eslint/ban-types\n const constructorType = (obj as object).constructor\n if (constructorType && !isBuiltIn(constructorType)) return constructorType.name\n return stringType\n}\n","/**\n * Modified version of fast-deep-equal (https://github.com/epoberezkin/fast-deep-equal)\n * MIT-licensed, copyright (c) 2017 Evgeny Poberezkin\n **/\n\n// NOTE: when converting to typescript, some of the checks were inlined (vs\n// having them in a variable) because the type predicate type narrowing only\n// works when type predicate is called inline in the condition that starts the\n// control flow branch.\n// see here: https://www.typescriptlang.org/docs/handbook/2/narrowing.html\nexport default function deepEquals(a: unknown, b: unknown): boolean {\n if (a === b) {\n return true\n }\n\n if (Array.isArray(a) && Array.isArray(b)) {\n if (a.length != b.length) return false\n for (let i = 0; i < a.length; i++) {\n if (!deepEquals(a[i], b[i])) {\n return false\n }\n }\n return true\n }\n\n if (Array.isArray(a) != Array.isArray(b)) {\n return false\n }\n\n if (a && b && typeof a === 'object' && typeof b === 'object') {\n const keys = Object.keys(a)\n if (keys.length !== Object.keys(b).length) {\n return false\n }\n\n if (a instanceof Date && b instanceof Date) {\n return a.getTime() === b.getTime()\n }\n\n if (a instanceof Date != b instanceof Date) {\n return false\n }\n\n if (a instanceof RegExp && b instanceof RegExp) {\n return a.toString() == b.toString()\n }\n\n if (a instanceof RegExp != b instanceof RegExp) {\n return false\n }\n\n for (let i = 0; i < keys.length; i++) {\n if (keys[i] === '_key') {\n continue\n }\n\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) {\n return false\n }\n }\n\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i] as keyof typeof a\n if (key === '_key') {\n continue\n }\n\n if (!deepEquals(a[key], b[key])) {\n return false\n }\n }\n\n return true\n }\n\n return false\n}\n","import {ValidationMarker, Validators} from '@sanity/types'\nimport typeString from '../util/typeString'\nimport deepEquals from '../util/deepEquals'\nimport pathToString from '../util/pathToString'\nimport ValidationErrorClass from '../ValidationError'\n\nconst SLOW_VALIDATOR_TIMEOUT = 5000\n\nconst formatValidationErrors = (options: {\n message: string | undefined\n results: ValidationMarker[]\n operation: 'AND' | 'OR'\n}) => {\n let message\n\n if (options.message) {\n message = options.message\n } else if (options.results.length === 1) {\n message = options.results[0]?.item.message\n } else {\n message = `[${options.results\n .map((err) => err.item.message)\n .join(` - ${options.operation} - `)}]`\n }\n\n return new ValidationErrorClass(message, {\n children: options.results.length > 1 ? options.results : undefined,\n operation: options.operation,\n })\n}\n\nconst genericValidators: Validators = {\n type: (expected, value, message) => {\n const actualType = typeString(value)\n if (actualType !== expected && actualType !== 'undefined') {\n return message || `Expected type \"${expected}\", got \"${actualType}\"`\n }\n\n return true\n },\n\n presence: (expected, value, message) => {\n if (value === undefined && expected === 'required') {\n return message || 'Value is required'\n }\n\n return true\n },\n\n all: async (children, value, message, context) => {\n const resolved = await Promise.all(children.map((child) => child.validate(value, context)))\n const results = resolved.flat()\n\n if (!results.length) return true\n\n return formatValidationErrors({\n message,\n results,\n operation: 'AND',\n })\n },\n\n either: async (children, value, message, context) => {\n const resolved = await Promise.all(children.map((child) => child.validate(value, context)))\n const results = resolved.flat()\n\n // Read: There is at least one rule that matched\n if (results.length < children.length) return true\n\n return formatValidationErrors({\n message,\n results,\n operation: 'OR',\n })\n },\n\n valid: (allowedValues, actual, message) => {\n const valueType = typeof actual\n if (valueType === 'undefined') {\n return true\n }\n\n const value = (valueType === 'number' || valueType === 'string') && `${actual}`\n const strValue = value && value.length > 30 ? `${value.slice(0, 30)}…` : value\n\n const defaultMessage = value\n ? `Value \"${strValue}\" did not match any allowed values`\n : 'Value did not match any allowed values'\n\n return allowedValues.some((expected) => deepEquals(expected, actual))\n ? true\n : message || defaultMessage\n },\n\n custom: async (fn, value, message, context) => {\n const slowTimer = setTimeout(() => {\n // eslint-disable-next-line no-console\n console.warn(\n `Custom validator at ${pathToString(\n context.path\n )} has taken more than ${SLOW_VALIDATOR_TIMEOUT}ms to respond`\n )\n }, SLOW_VALIDATOR_TIMEOUT)\n\n let result\n try {\n result = await fn(value, context)\n } finally {\n clearTimeout(slowTimer)\n }\n\n if (typeof result === 'string') return message || result\n return result\n },\n}\n\nexport default genericValidators\n","import {Validators} from '@sanity/types'\nimport genericValidator from './genericValidator'\n\nconst booleanValidators: Validators = {\n ...genericValidator,\n\n presence: (flag, value, message) => {\n if (flag === 'required' && typeof value !== 'boolean') {\n return message || 'Required'\n }\n\n return true\n },\n}\n\nexport default booleanValidators\n","import {Validators} from '@sanity/types'\nimport genericValidator from './genericValidator'\n\nconst precisionRx = /(?:\\.(\\d+))?(?:[eE]([+-]?\\d+))?$/\n\nconst numberValidators: Validators = {\n ...genericValidator,\n\n integer: (_unused, value, message) => {\n if (!Number.isInteger(value)) {\n return message || 'Must be an integer'\n }\n\n return true\n },\n\n precision: (limit, value, message) => {\n if (value === undefined) return true\n\n const places = value.toString().match(precisionRx)\n const decimals = Math.max(\n (places[1] ? places[1].length : 0) - (places[2] ? parseInt(places[2], 10) : 0),\n 0\n )\n\n if (decimals > limit) {\n return message || `Max precision is ${limit}`\n }\n\n return true\n },\n\n min: (minNum, value, message) => {\n if (value >= minNum) {\n return true\n }\n\n return message || `Must be greater than or equal ${minNum}`\n },\n\n max: (maxNum, value, message) => {\n if (value <= maxNum) {\n return true\n }\n\n return message || `Must be less than or equal ${maxNum}`\n },\n\n greaterThan: (num, value, message) => {\n if (value > num) {\n return true\n }\n\n return message || `Must be greater than ${num}`\n },\n\n lessThan: (maxNum, value, message) => {\n if (value < maxNum) {\n return true\n }\n\n return message || `Must be less than ${maxNum}`\n },\n}\n\nexport default numberValidators\n","import {Validators} from '@sanity/types'\nimport genericValidator from './genericValidator'\n\nconst DUMMY_ORIGIN = 'http://sanity'\nconst emailRegex =\n /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/\nconst isRelativeUrl = (url: string) => /^\\.*\\//.test(url)\n\nconst stringValidators: Validators = {\n ...genericValidator,\n\n min: (minLength, value, message) => {\n if (!value || value.length >= minLength) {\n return true\n }\n\n return message || `Must be at least ${minLength} characters long`\n },\n\n max: (maxLength, value, message) => {\n if (!value || value.length <= maxLength) {\n return true\n }\n\n return message || `Must be at most ${maxLength} characters long`\n },\n\n length: (wantedLength, value, message) => {\n const strValue = value || ''\n if (strValue.length === wantedLength) {\n return true\n }\n\n return message || `Must be exactly ${wantedLength} characters long`\n },\n\n uri: (constraints, value, message) => {\n const strValue = value || ''\n const {options} = constraints\n const {allowCredentials, relativeOnly} = options\n const allowRelative = options.allowRelative || relativeOnly\n\n let url\n try {\n // WARNING: Safari checks for a given `base` param by looking at the length of arguments passed\n // to new URL(str, base), and will fail if invoked with new URL(strValue, undefined)\n url = allowRelative ? new URL(strValue, DUMMY_ORIGIN) : new URL(strValue)\n } catch (err) {\n return message || 'Not a valid URL'\n }\n\n if (relativeOnly && url.origin !== DUMMY_ORIGIN) {\n return message || 'Only relative URLs are allowed'\n }\n\n if (!allowRelative && url.origin === DUMMY_ORIGIN && isRelativeUrl(strValue)) {\n return message || 'Relative URLs are not allowed'\n }\n\n if (!allowCredentials && (url.username || url.password)) {\n return message || `Username/password not allowed`\n }\n\n const urlScheme = url.protocol.replace(/:$/, '')\n const matchesAllowedScheme = options.scheme.some((scheme) => scheme.test(urlScheme))\n if (!matchesAllowedScheme) {\n return message || 'Does not match allowed protocols/schemes'\n }\n\n return true\n },\n\n stringCasing: (casing, value, message) => {\n const strValue = value || ''\n if (casing === 'uppercase' && strValue !== strValue.toLocaleUpperCase()) {\n return message || `Must be all uppercase letters`\n }\n\n if (casing === 'lowercase' && strValue !== strValue.toLocaleLowerCase()) {\n return message || `Must be all lowercase letters`\n }\n\n return true\n },\n\n presence: (flag, value, message) => {\n if (flag === 'required' && !value) {\n return message || 'Required'\n }\n\n return true\n },\n\n regex: (options, value, message) => {\n const {pattern, name, invert} = options\n const regName = name || `\"${pattern.toString()}\"`\n const strValue = value || ''\n const matches = pattern.test(strValue)\n if ((!invert && !matches) || (invert && matches)) {\n const defaultMessage = invert\n ? `Should not match ${regName}-pattern`\n : `Does not match ${regName}-pattern`\n\n return message || defaultMessage\n }\n\n return true\n },\n\n email: (_unused, value, message) => {\n const strValue = `${value || ''}`.trim()\n if (!strValue || emailRegex.test(strValue)) {\n return true\n }\n\n return message || 'Must be a valid email address'\n },\n}\n\nexport default stringValidators\n","import {Path, PathSegment, Validators} from '@sanity/types'\nimport deepEquals from '../util/deepEquals'\nimport ValidationErrorClass from '../ValidationError'\nimport genericValidator from './genericValidator'\n\nconst arrayValidators: Validators = {\n ...genericValidator,\n\n min: (minLength, value, message) => {\n if (!value || value.length >= minLength) {\n return true\n }\n\n return message || `Must have at least ${minLength} items`\n },\n\n max: (maxLength, value, message) => {\n if (!value || value.length <= maxLength) {\n return true\n }\n\n return message || `Must have at most ${maxLength} items`\n },\n\n length: (wantedLength, value, message) => {\n if (!value || value.length === wantedLength) {\n return true\n }\n\n return message || `Must have exactly ${wantedLength} items`\n },\n\n presence: (flag, value, message) => {\n if (flag === 'required' && !value) {\n return message || 'Required'\n }\n\n return true\n },\n\n valid: (allowedValues, values, message) => {\n const valueType = typeof values\n if (valueType === 'undefined') {\n return true\n }\n\n const paths: Path[] = []\n for (let i = 0; i < values.length; i++) {\n const value = values[i]\n if (allowedValues.some((expected) => deepEquals(expected, value))) {\n continue\n }\n\n const pathSegment: PathSegment = value && value._key ? {_key: value._key} : i\n paths.push([pathSegment])\n }\n\n return paths.length === 0\n ? true\n : new ValidationErrorClass(message || 'Value did not match any allowed values', {paths})\n },\n\n unique: (_unused, value, message) => {\n const dupeIndices = []\n if (!value) {\n return true\n }\n\n for (let x = 0; x < value.length; x++) {\n for (let y = x + 1; y < value.length; y++) {\n const itemA = value[x]\n const itemB = value[y]\n\n if (!deepEquals(itemA, itemB)) {\n continue\n }\n\n if (dupeIndices.indexOf(x) === -1) {\n dupeIndices.push(x)\n }\n\n if (dupeIndices.indexOf(y) === -1) {\n dupeIndices.push(y)\n }\n }\n }\n\n const paths = dupeIndices.map((idx) => {\n const item = value[idx]\n const pathSegment = item && item._key ? {_key: item._key} : idx\n return [pathSegment]\n })\n\n return dupeIndices.length > 0\n ? new ValidationErrorClass(message || `Can't be a duplicate`, {paths})\n : true\n },\n}\n\nexport default arrayValidators\n","import {Validators, isReference} from '@sanity/types'\nimport genericValidator from './genericValidator'\n\nconst metaKeys = ['_key', '_type', '_weak']\n\nconst objectValidators: Validators = {\n ...genericValidator,\n\n presence: (expected, value, message) => {\n if (expected !== 'required') {\n return true\n }\n\n const keys = value && Object.keys(value).filter((key) => !metaKeys.includes(key))\n\n if (value === undefined || (keys && keys.length === 0)) {\n return message || 'Required'\n }\n\n return true\n },\n\n reference: async (_unused, value: unknown, message, context) => {\n if (!value) {\n return true\n }\n\n if (!isReference(value)) {\n return message || true\n }\n\n const {type, getDocumentExists} = context\n\n if (!type) {\n throw new Error(`\\`type\\` was not provided in validation context`)\n }\n\n if ('weak' in type && type.weak) {\n return true\n }\n\n if (!getDocumentExists) {\n throw new Error(`\\`getDocumentExists\\` was not provided in validation context`)\n }\n\n const exists = await getDocumentExists({id: value._ref})\n if (!exists) {\n return 'This reference must be published'\n }\n\n return true\n },\n\n assetRequired: (flag, value, message) => {\n if (!value || !value.asset || !value.asset._ref) {\n const assetType = flag.assetType || 'Asset'\n return message || `${assetType} required`\n }\n\n return true\n },\n}\n\nexport default objectValidators\n","import {Validators} from '@sanity/types'\nimport formatDate from 'date-fns/format'\nimport genericValidator from './genericValidator'\n\nexport function isRecord(obj: unknown): obj is Record<string, unknown> {\n return typeof obj === 'object' && obj !== null && !Array.isArray(obj)\n}\n\nconst isoDate =\n /^(?:[-+]\\d{2})?(?:\\d{4}(?!\\d{2}\\b))(?:(-?)(?:(?:0[1-9]|1[0-2])(?:\\1(?:[12]\\d|0[1-9]|3[01]))?|W(?:[0-4]\\d|5[0-2])(?:-?[1-7])?|(?:00[1-9]|0[1-9]\\d|[12]\\d{2}|3(?:[0-5]\\d|6[1-6])))(?![T]$|[T][\\d]+Z$)(?:[T\\s](?:(?:(?:[01]\\d|2[0-3])(?:(:?)[0-5]\\d)?|24:?00)(?:[.,]\\d+(?!:))?)(?:\\2[0-5]\\d(?:[.,]\\d+)?)?(?:[Z]|(?:[+-])(?:[01]\\d|2[0-3])(?::?[0-5]\\d)?)?)?)?$/\n\n// eslint-disable-next-line no-warning-comments\n// TODO (eventually): move these to schema type package\ninterface DateTimeOptions {\n dateFormat?: string\n timeFormat?: string\n}\n\nconst getFormattedDate = (type = '', value: string | number | Date, options?: DateTimeOptions) => {\n let format = 'yyyy-MM-dd'\n if (options && options.dateFormat) {\n format = options.dateFormat\n }\n\n if (type === 'date') {\n // If the type is date only\n return formatDate(new Date(value), format)\n }\n\n // If the type is datetime\n if (options && options.timeFormat) {\n format += ` ${options.timeFormat}`\n } else {\n format += ' HH:mm'\n }\n\n return formatDate(new Date(value), format)\n}\n\nfunction parseDate(date: unknown): Date | null\nfunction parseDate(date: unknown, throwOnError: true): Date\nfunction parseDate(date: unknown, throwOnError = false): Date | null {\n if (!date) return null\n if (date === 'now') return new Date()\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const parsed = new Date(date as any)\n const isInvalid = isNaN(parsed.getTime())\n if (isInvalid && throwOnError) {\n throw new Error(`Unable to parse \"${date}\" to a date`)\n }\n\n return isInvalid ? null : parsed\n}\n\nconst dateValidators: Validators = {\n ...genericValidator,\n\n type: (_unused, value, message) => {\n const strVal = `${value}`\n if (!strVal || isoDate.test(value)) {\n return true\n }\n\n return message || 'Must be a valid ISO-8601 formatted date string'\n },\n\n min: (minDate, value, message, context) => {\n const dateVal = parseDate(value)\n if (!dateVal) {\n return true // `type()` should catch parse errors\n }\n\n if (!value || dateVal >= parseDate(minDate, true)) {\n return true\n }\n if (!context.type) {\n throw new Error(`\\`type\\` was not provided in validation context.`)\n }\n\n const dateTimeOptions: DateTimeOptions = isRecord(context.type.options)\n ? (context.type.options as DateTimeOptions)\n : {}\n\n const date = getFormattedDate(context.type.name, minDate, dateTimeOptions)\n\n return message || `Must be at or after ${date}`\n },\n\n max: (maxDate, value, message, context) => {\n const dateVal = parseDate(value)\n if (!dateVal) {\n return true // `type()` should catch parse errors\n }\n\n if (!value || dateVal <= parseDate(maxDate, true)) {\n return true\n }\n\n if (!context.type) {\n throw new Error(`\\`type\\` was not provided in validation context.`)\n }\n\n const dateTimeOptions: DateTimeOptions = isRecord(context.type.options)\n ? (context.type.options as DateTimeOptions)\n : {}\n\n const date = getFormattedDate(context.type.name, maxDate, dateTimeOptions)\n return message || `Must be at or before ${date}`\n },\n}\n\nexport default dateValidators\n","import {\n SchemaType,\n Rule as IRule,\n RuleClass,\n CustomValidator,\n RuleSpecConstraint,\n FieldRules,\n ValidationContext,\n RuleSpec,\n ValidationMarker,\n RuleTypeConstraint,\n Validator,\n Block,\n} from '@sanity/types'\nimport {cloneDeep, get} from 'lodash'\nimport ValidationErrorClass from './ValidationError'\nimport escapeRegex from './util/escapeRegex'\nimport {convertToValidationMarker} from './util/convertToValidationMarker'\nimport pathToString from './util/pathToString'\nimport genericValidator from './validators/genericValidator'\nimport booleanValidator from './validators/booleanValidator'\nimport numberValidator from './validators/numberValidator'\nimport stringValidator from './validators/stringValidator'\nimport arrayValidator from './validators/arrayValidator'\nimport objectValidator from './validators/objectValidator'\nimport dateValidator from './validators/dateValidator'\n\nconst typeValidators = {\n Boolean: booleanValidator,\n Number: numberValidator,\n String: stringValidator,\n Array: arrayValidator,\n Object: objectValidator,\n Date: dateValidator,\n}\n\nconst getBaseType = (type: SchemaType | undefined): SchemaType | undefined => {\n return type && type.type ? getBaseType(type.type) : type\n}\n\nconst isFieldRef = (constraint: unknown): constraint is {type: symbol; path: string | string[]} => {\n if (typeof constraint !== 'object' || !constraint) return false\n return (constraint as Record<string, unknown>).type === Rule.FIELD_REF\n}\n\nconst EMPTY_ARRAY: unknown[] = []\nconst FIELD_REF = Symbol('FIELD_REF')\nconst ruleConstraintTypes: RuleTypeConstraint[] = [\n 'Array',\n 'Boolean',\n 'Date',\n 'Number',\n 'Object',\n 'String',\n]\n\n// Note: `RuleClass` and `Rule` are split to fit the current `@sanity/types`\n// setup. Classes are a bit weird in the `@sanity/types` package because classes\n// create an actual javascript class while simultaneously creating a type\n// definition.\n//\n// This implicitly creates two types:\n// 1. the instance type — `Rule` and\n// 2. the static/class type - `RuleClass`\n//\n// The `RuleClass` type contains the static methods and the `Rule` instance\n// contains the instance methods.\n//\n// This package exports the RuleClass as a value without implicitly exporting\n// an instance definition. This should help reminder downstream users to import\n// from the `@sanity/types` package.\nconst Rule: RuleClass = class Rule implements IRule {\n static readonly FIELD_REF = FIELD_REF\n static array = (def?: SchemaType): Rule => new Rule(def).type('Array')\n static object = (def?: SchemaType): Rule => new Rule(def).type('Object')\n static string = (def?: SchemaType): Rule => new Rule(def).type('String')\n static number = (def?: SchemaType): Rule => new Rule(def).type('Number')\n static boolean = (def?: SchemaType): Rule => new Rule(def).type('Boolean')\n static dateTime = (def?: SchemaType): Rule => new Rule(def).type('Date')\n static valueOfField = (path: string | string[]): {type: symbol; path: string | string[]} => ({\n type: FIELD_REF,\n path,\n })\n\n _type: RuleTypeConstraint | undefined = undefined\n _level: 'error' | 'warning' | 'info' | undefined = undefined\n _required: 'required' | 'optional' | undefined = undefined\n _typeDef: SchemaType | undefined = undefined\n _message: string | undefined = undefined\n _rules: RuleSpec[] = []\n _fieldRules: FieldRules | undefined = undefined\n\n constructor(typeDef?: SchemaType) {\n this._typeDef = typeDef\n this.reset()\n }\n\n private _mergeRequired(next: Rule) {\n if (this._required === 'required' || next._required === 'required') return 'required'\n if (this._required === 'optional' || next._required === 'optional') return 'optional'\n return undefined\n }\n\n // Alias to static method, since we often have access to an _instance_ of a rule but not the actual Rule class\n valueOfField = Rule.valueOfField.bind(Rule)\n\n error(message?: string): Rule {\n const rule = this.clone()\n rule._level = 'error'\n rule._message = message || undefined\n return rule\n }\n\n warning(message?: string): Rule {\n const rule = this.clone()\n rule._level = 'warning'\n rule._message = message || undefined\n return rule\n }\n\n info(message?: string): Rule {\n const rule = this.clone()\n rule._level = 'info'\n rule._message = message || undefined\n return rule\n }\n\n reset(): this {\n this._type = this._type || undefined\n this._rules = (this._rules || []).filter((rule) => rule.flag === 'type')\n this._message = undefined\n this._required = undefined\n this._level = 'error'\n this._fieldRules = undefined\n return this\n }\n\n isRequired(): boolean {\n return this._required === 'required'\n }\n\n clone(): Rule {\n const rule = new Rule()\n rule._type = this._type\n rule._message = this._message\n rule._required = this._required\n rule._rules = cloneDeep(this._rules)\n rule._level = this._level\n rule._fieldRules = this._fieldRules\n rule._typeDef = this._typeDef\n return rule\n }\n\n cloneWithRules(rules: RuleSpec[]): Rule {\n const rule = this.clone()\n const newRules = new Set()\n rules.forEach((curr) => {\n if (curr.flag === 'type') {\n rule._type = curr.constraint\n }\n\n newRules.add(curr.flag)\n })\n\n rule._rules = rule._rules\n .filter((curr) => {\n const disallowDuplicate = ['type', 'uri', 'email'].includes(curr.flag)\n const isDuplicate = newRules.has(curr.flag)\n return !(disallowDuplicate && isDuplicate)\n })\n .concat(rules)\n\n return rule\n }\n\n merge(rule: Rule): Rule {\n if (this._type && rule._type && this._type !== rule._type) {\n throw new Error('merge() failed: conflicting types')\n }\n\n const newRule = this.cloneWithRules(rule._rules)\n newRule._type = this._type || rule._type\n newRule._message = this._message || rule._message\n newRule._required = this._mergeRequired(rule)\n newRule._level = this._level === 'error' ? rule._level : this._level\n return newRule\n }\n\n // Validation flag setters\n type(targetType: RuleTypeConstraint | Lowercase<RuleTypeConstraint>): Rule {\n const type = `${targetType.slice(0, 1).toUpperCase()}${targetType.slice(1)}` as Capitalize<\n typeof targetType\n >\n\n if (!ruleConstraintTypes.includes(type)) {\n throw new Error(`Unknown type \"${targetType}\"`)\n }\n\n const rule = this.cloneWithRules([{flag: 'type', constraint: type}])\n rule._type = type\n return rule\n }\n\n all(children: Rule[]): Rule {\n return this.cloneWithRules([{flag: 'all', constraint: children}])\n }\n\n either(children: Rule[]): Rule {\n return this.cloneWithRules([{flag: 'either', constraint: children}])\n }\n\n // Shared rules\n optional(): Rule {\n const rule = this.cloneWithRules([{flag: 'presence', constraint: 'optional'}])\n rule._required = 'optional'\n return rule\n }\n\n required(): Rule {\n const rule = this.cloneWithRules([{flag: 'presence', constraint: 'required'}])\n rule._required = 'required'\n return rule\n }\n\n custom<T = unknown>(fn: CustomValidator<T>): Rule {\n return this.cloneWithRules([{flag: 'custom', constraint: fn as CustomValidator}])\n }\n\n /**\n * @deprecated use `Rule.custom` instead\n */\n block(fn: CustomValidator<Block>): Rule {\n return this.cloneWithRules([{flag: 'custom', constraint: fn as CustomValidator}])\n }\n\n min(len: number): Rule {\n return this.cloneWithRules([{flag: 'min', constraint: len}])\n }\n\n max(len: number): Rule {\n return this.cloneWithRules([{flag: 'max', constraint: len}])\n }\n\n length(len: number): Rule {\n return this.cloneWithRules([{flag: 'length', constraint: len}])\n }\n\n valid(value: unknown | unknown[]): Rule {\n const values = Array.isArray(value) ? value : [value]\n return this.cloneWithRules([{flag: 'valid', constraint: values}])\n }\n\n // Numbers only\n integer(): Rule {\n return this.cloneWithRules([{flag: 'integer'}])\n }\n\n precision(limit: number): Rule {\n return this.cloneWithRules([{flag: 'precision', constraint: limit}])\n }\n\n positive(): Rule {\n return this.cloneWithRules([{flag: 'min', constraint: 0}])\n }\n\n negative(): Rule {\n return this.cloneWithRules([{flag: 'lessThan', constraint: 0}])\n }\n\n greaterThan(num: number): Rule {\n return this.cloneWithRules([{flag: 'greaterThan', constraint: num}])\n }\n\n lessThan(num: number): Rule {\n return this.cloneWithRules([{flag: 'lessThan', constraint: num}])\n }\n\n // String only\n uppercase(): Rule {\n return this.cloneWithRules([{flag: 'stringCasing', constraint: 'uppercase'}])\n }\n\n lowercase(): Rule {\n return this.cloneWithRules([{flag: 'stringCasing', constraint: 'lowercase'}])\n }\n\n regex(pattern: RegExp, name: string, options: {name?: string; invert?: boolean}): Rule\n regex(pattern: RegExp, options: {name?: string; invert?: boolean}): Rule\n regex(pattern: RegExp, name: string): Rule\n regex(pattern: RegExp): Rule\n regex(\n pattern: RegExp,\n a?: string | {name?: string; invert?: boolean},\n b?: {name?: string; invert?: boolean}\n ): Rule {\n const name = typeof a === 'string' ? a : a?.name ?? b?.name\n const invert = typeof a === 'string' ? false : a?.invert ?? b?.invert\n\n const constraint: RuleSpecConstraint<'regex'> = {\n pattern,\n name,\n invert: invert || false,\n }\n\n return this.cloneWithRules([{flag: 'regex', constraint}])\n }\n\n email(): Rule {\n return this.cloneWithRules([{flag: 'email'}])\n }\n\n uri(opts?: {\n scheme?: (string | RegExp) | Array<string | RegExp>\n allowRelative?: boolean\n relativeOnly?: boolean\n allowCredentials?: boolean\n }): Rule {\n const optsScheme = opts?.scheme || ['http', 'https']\n const schemes = Array.isArray(optsScheme) ? optsScheme : [optsScheme]\n\n if (!schemes.length) {\n throw new Error('scheme must have at least 1 scheme specified')\n }\n\n const constraint: RuleSpecConstraint<'uri'> = {\n options: {\n scheme: schemes.map((scheme) => {\n if (!(scheme instanceof RegExp) && typeof scheme !== 'string') {\n throw new Error('scheme must be a RegExp or a String')\n }\n\n return typeof scheme === 'string' ? new RegExp(`^${escapeRegex(scheme)}$`) : scheme\n }),\n allowRelative: opts?.allowRelative || false,\n relativeOnly: opts?.relativeOnly || false,\n allowCredentials: opts?.allowCredentials || false,\n },\n }\n\n return this.cloneWithRules([{flag: 'uri', constraint}])\n }\n\n // Array only\n unique(): Rule {\n return this.cloneWithRules([{flag: 'unique'}])\n }\n\n // Objects only\n reference(): Rule {\n return this.cloneWithRules([{flag: 'reference'}])\n }\n\n fields(rules: FieldRules): Rule {\n if (this._type !== 'Object') {\n throw new Error('fields() can only be called on an object type')\n }\n\n const rule = this.cloneWithRules([])\n rule._fieldRules = rules\n return rule\n }\n\n assetRequired(): Rule {\n const base = getBaseType(this._typeDef)\n let assetType: 'Asset' | 'Image' | 'File'\n if (base && ['image', 'file'].includes(base.name)) {\n assetType = base.name === 'image' ? 'Image' : 'File'\n } else {\n assetType = 'Asset'\n }\n\n return this.cloneWithRules([{flag: 'assetRequired', constraint: {assetType}}])\n }\n\n async validate(value: unknown, context: ValidationContext): Promise<ValidationMarker[]> {\n if (!context) {\n throw new Error('missing context')\n }\n\n const valueIsEmpty = value === null || value === undefined\n\n // Short-circuit on optional, empty fields\n if (valueIsEmpty && this._required === 'optional') {\n return EMPTY_ARRAY as ValidationMarker[]\n }\n\n const rules =\n // Run only the _custom_ functions if the rule is not set to required or optional\n this._required === undefined && valueIsEmpty\n ? this._rules.filter((curr) => curr.flag === 'custom')\n : this._rules\n\n const validators = (this._type && typeValidators[this._type]) || genericValidator\n\n const results = await Promise.all(\n rules.map(async (curr) => {\n if (curr.flag === undefined) {\n throw new Error('Invalid rule, did not contain \"flag\"-property')\n }\n\n const validator: Validator | undefined = validators[curr.flag]\n if (!validator) {\n const forType = this._type ? `type \"${this._type}\"` : 'rule without declared type'\n throw new Error(`Validator for flag \"${curr.flag}\" not found for ${forType}`)\n }\n\n let specConstraint = 'constraint' in curr ? curr.constraint : null\n if (isFieldRef(specConstraint)) {\n specConstraint = get(context.parent, specConstraint.path)\n }\n\n let result\n try {\n result = await validator(specConstraint, value, this._message, context)\n } catch (err) {\n const errorFromException = new ValidationErrorClass(\n `${pathToString(context.path)}: Exception occurred while validating value: ${\n err.message\n }`\n )\n return convertToValidationMarker(errorFromException, 'error', context)\n }\n\n return convertToValidationMarker(result, this._level, context)\n })\n )\n\n return results.flat()\n }\n}\n\nexport default Rule\n","import {SlugIsUniqueValidator, Path, CustomValidator, isKeyedObject} from '@sanity/types'\nimport {memoize} from 'lodash'\n// import getClient from '../getClient'\n\nconst memoizedWarnOnArraySlug = memoize(warnOnArraySlug)\n\nfunction getDocumentIds(id: string) {\n const isDraft = id.indexOf('drafts.') === 0\n return {\n published: isDraft ? id.slice('drafts.'.length) : id,\n draft: isDraft ? id : `drafts.${id}`,\n }\n}\n\nfunction serializePath(path: Path): string {\n return path.reduce<string>((target, part, i) => {\n const isIndex = typeof part === 'number'\n const isKey = isKeyedObject(part)\n const separator = i === 0 ? '' : '.'\n const add = isIndex || isKey ? '[]' : `${separator}${part}`\n return `${target}${add}`\n }, '')\n}\n\nconst defaultIsUnique: SlugIsUniqueValidator = (slug, context) => {\n const {client, document, path, type} = context\n const schemaOptions = type?.options as {disableArrayWarning?: boolean} | undefined\n\n if (!document) {\n throw new Error(`\\`document\\` was not provided in validation context.`)\n }\n if (!path) {\n throw new Error(`\\`path\\` was not provided in validation context.`)\n }\n\n const disableArrayWarning = schemaOptions?.disableArrayWarning || false\n const {published, draft} = getDocumentIds(document._id)\n const docType = document._type\n const atPath = serializePath(path.concat('current'))\n\n if (!disableArrayWarning && atPath.includes('[]')) {\n memoizedWarnOnArraySlug(serializePath(path))\n }\n\n const constraints = [\n '_type == $docType',\n `!(_id in [$draft, $published])`,\n `${atPath} == $slug`,\n ].join(' && ')\n\n return client.fetch<boolean>(\n `!defined(*[${constraints}][0]._id)`,\n {\n docType,\n draft,\n published,\n slug,\n },\n {tag: 'validation.slug-is-unique'}\n )\n}\n\nfunction warnOnArraySlug(serializedPath: string) {\n /* eslint-disable no-console */\n console.warn(\n [\n `Slug field at path ${serializedPath} is within an array and cannot be automatically checked for uniqueness`,\n `If you need to check for uniqueness, provide your own \"isUnique\" method`,\n `To disable this message, set \\`disableArrayWarning: true\\` on the slug \\`options\\` field`,\n ].join('\\n')\n )\n /* eslint-enable no-console */\n}\n\n/**\n * Validates slugs values by querying for uniqueness from the client.\n *\n * This is a custom rule implementation (e.g. `Rule.custom(slugValidator)`)\n * that's populated in `inferFromSchemaType` when the type name is `slug`\n */\nexport const slugValidator: CustomValidator = async (value, context) => {\n if (!value) {\n return true\n }\n if (typeof value !== 'object') {\n return 'Slug must be an object'\n }\n\n const slugValue = (value as {current?: string}).current\n if (!slugValue) {\n return 'Slug must have a value'\n }\n\n const options = context?.type?.options as {isUnique?: SlugIsUniqueValidator} | undefined\n const isUnique = options?.isUnique || defaultIsUnique\n\n const wasUnique = await isUnique(slugValue, {...context, defaultIsUnique})\n if (wasUnique) {\n return true\n }\n\n return 'Slug is already in use'\n}\n","import {SchemaType, Rule, RuleTypeConstraint} from '@sanity/types'\nimport RuleClass from '../Rule'\nimport {slugValidator} from '../validators/slugValidator'\n\nconst ruleConstraintTypes: {[P in Lowercase<RuleTypeConstraint>]: true} = {\n array: true,\n boolean: true,\n date: true,\n number: true,\n object: true,\n string: true,\n}\n\nconst isRuleConstraint = (typeString: string): typeString is Lowercase<RuleTypeConstraint> =>\n typeString in ruleConstraintTypes\n\nfunction getTypeChain(type: SchemaType | undefined, visited: Set<SchemaType>): SchemaType[] {\n if (!type) return []\n if (visited.has(type)) return []\n\n visited.add(type)\n\n const next = type.type ? getTypeChain(type.type, visited) : []\n return [...next, type]\n}\n\nfunction baseRuleReducer(inputRule: Rule, type: SchemaType) {\n let baseRule = inputRule\n\n if (isRuleConstraint(type.jsonType)) {\n baseRule = baseRule.type(type.jsonType)\n }\n\n const typeOptionsList =\n // if type.options is truthy\n type?.options &&\n // and type.options is an object (non-null from the previous)\n typeof type.options === 'object' &&\n // and if `list` is in options\n 'list' in type.options &&\n // then finally access the list\n type.options.list\n\n if (Array.isArray(typeOptionsList)) {\n baseRule = baseRule.valid(\n typeOptionsList.map((option) => extractValueFromListOption(option, type))\n )\n }\n\n if (type.name === 'datetime') return baseRule.type('Date')\n if (type.name === 'date') return baseRule.type('Date')\n if (type.name === 'url') return baseRule.uri()\n if (type.name === 'slug') return baseRule.custom(slugValidator)\n if (type.name === 'reference') return baseRule.reference()\n if (type.name === 'email') return baseRule.email()\n return baseRule\n}\n\nfunction hasValueField(typeDef: SchemaType | undefined): boolean {\n if (!typeDef) return false\n if (!('fields' in typeDef) && typeDef.type) return hasValueField(typeDef.type)\n if (!('fields' in typeDef)) return false\n if (!Array.isArray(typeDef.fields)) return false\n return typeDef.fields.some((field) => field.name === 'value')\n}\n\nfunction extractValueFromListOption(option: unknown, typeDef: SchemaType): unknown {\n // If you define a `list` option with object items, where the item has a `value` field,\n // we don't want to treat that as the value but rather the surrounding object\n // This differs from the case where you have a title/value pair setup for a string/number, for instance\n if (typeDef.jsonType === 'object' && hasValueField(typeDef)) return option\n\n return (option as Record<string, unknown>).value === undefined\n ? option\n : (option as Record<string, unknown>).value\n}\n\n/**\n * Takes in `SchemaValidationValue` and returns an array of `Rule` instances.\n */\nexport default function normalizeValidationRules(typeDef: SchemaType | undefined): Rule[] {\n if (!typeDef) {\n return []\n }\n\n const validation = typeDef.validation\n\n if (Array.isArray(validation)) {\n return validation.flatMap((i) =>\n normalizeValidationRules({\n ...typeDef,\n validation: i,\n })\n )\n }\n\n if (validation instanceof RuleClass) {\n return [validation]\n }\n\n const baseRule =\n // using an object + Object.values to de-dupe the type chain by type name\n Object.values(\n getTypeChain(typeDef, new Set()).reduce<Record<string, SchemaType>>((acc, type) => {\n acc[type.name] = type\n return acc\n }, {})\n ).reduce(baseRuleReducer, new RuleClass(typeDef))\n\n if (!validation) {\n return [baseRule]\n }\n\n return normalizeValidationRules({\n ...typeDef,\n validation: validation(baseRule),\n })\n}\n","import {\n SanityDocument,\n Schema,\n SchemaType,\n ValidationContext,\n ValidationMarker,\n isKeyedObject,\n isTypedObject,\n isBlock,\n isBlockSchemaType,\n isSpanSchemaType,\n} from '@sanity/types'\nimport {uniqBy} from 'lodash'\nimport {SanityClient} from '@sanity/client'\nimport typeString from './util/typeString'\nimport ValidationErrorClass from './ValidationError'\nimport normalizeValidationRules from './util/normalizeValidationRules'\n\nconst isRecord = (maybeRecord: unknown): maybeRecord is Record<string, unknown> =>\n typeof maybeRecord === 'object' && maybeRecord !== null && !Array.isArray(maybeRecord)\n\nconst isNonNullable = <T>(value: T): value is NonNullable<T> =>\n value !== null && value !== undefined\n\n/**\n * @internal\n */\nexport function resolveTypeForArrayItem(\n item: unknown,\n candidates: SchemaType[]\n): SchemaType | undefined {\n // if there is only one type available, assume that it's the correct one\n if (candidates.length === 1) return candidates[0]\n\n const itemType = isTypedObject(item) && item._type\n const primitive =\n item === undefined || item === null || (!itemType && typeString(item).toLowerCase())\n\n if (primitive && primitive !== 'object') {\n return candidates.find((candidate) => candidate.jsonType === primitive)\n }\n\n return (\n candidates.find((candidate) => candidate.type?.name === itemType) ||\n candidates.find((candidate) => candidate.name === itemType) ||\n candidates.find((candidate) => candidate.name === 'object' && primitive === 'object')\n )\n}\n\nexport default async function validateDocument(\n client: SanityClient,\n doc: SanityDocument,\n schema: Schema,\n context?: Pick<ValidationContext, 'getDocumentExists'>\n): Promise<ValidationMarker[]> {\n const documentType = schema.get(doc._type)\n if (!documentType) {\n console.warn('Schema type for object type \"%s\" not found, skipping validation', doc._type)\n return []\n }\n\n try {\n return await validateItem({\n client,\n schema,\n parent: undefined,\n value: doc,\n path: [],\n document: doc,\n type: documentType,\n getDocumentExists: context?.getDocumentExists,\n })\n } catch (err) {\n console.error(err)\n return [\n {\n level: 'error',\n path: [],\n item: new ValidationErrorClass(err?.message),\n },\n ]\n }\n}\n\n/**\n * this is used make optional properties required by replacing optionals with\n * `T[P] | undefined`. this is used to prevent errors in `validateItem` where\n * an option from a previous invocation would be incorrectly passed down.\n *\n * https://medium.com/terria/typescript-transforming-optional-properties-to-required-properties-that-may-be-undefined-7482cb4e1585\n */\ntype ExplicitUndefined<T> = {\n [P in keyof Required<T>]: Pick<T, P> extends Required<Pick<T, P>> ? T[P] : T[P] | undefined\n}\n\ntype ValidateItemOptions = {\n value: unknown\n} & ExplicitUndefined<ValidationContext>\n\nexport async function validateItem({\n value,\n type,\n path = [],\n parent,\n ...restOfContext\n}: ValidateItemOptions): Promise<ValidationMarker[]> {\n const rules = normalizeValidationRules(type)\n\n // run validation for the current value\n const selfChecks = rules.map((rule) =>\n rule.validate(value, {\n ...restOfContext,\n parent,\n path,\n type,\n })\n )\n\n // run validation for nested values (conditionally)\n let nestedChecks: Array<Promise<ValidationMarker[]>> = []\n\n const selfIsRequired = rules.some((rule) => rule.isRequired())\n const shouldRunNestedObjectValidation =\n // run nested validation for objects\n type?.jsonType === 'object' &&\n // if the value is truthy\n (!!value || // or\n // (the value is null or undefined) and the top-level value is required\n ((value === null || value === undefined) && selfIsRequired))\n\n if (shouldRunNestedObjectValidation) {\n const fieldTypes = type.fields.reduce<Record<string, SchemaType>>((acc, field) => {\n acc[field.name] = field.type\n return acc\n }, {})\n\n // Validation for rules set at the object level with `Rule.fields({/* ... */})`\n nestedChecks = nestedChecks.concat(\n rules\n .map((rule) => rule._fieldRules)\n .filter(isNonNullable)\n .flatMap((fieldResults) => Object.entries(fieldResults))\n .flatMap(([name, validation]) => {\n const fieldType = fieldTypes[name]\n return normalizeValidationRules({...fieldType, validation}).map((subRule) => {\n const nestedValue = isRecord(value) ? value[name] : undefined\n return subRule.validate(nestedValue, {\n ...restOfContext,\n parent: value,\n path: path.concat(name),\n type: fieldType,\n })\n })\n })\n )\n\n // Validation from each field's schema `validation: Rule => {/* ... */}` function\n nestedChecks = nestedChecks.concat(\n type.fields.map((field) =>\n validateItem({\n ...restOfContext,\n parent: value,\n value: isRecord(value) ? value[field.name] : undefined,\n path: path.concat(field.name),\n type: field.type,\n })\n )\n )\n }\n\n // note: unlike objects, arrays should not run nested validation for undefined\n // values because we won't have a valid path to put a marker (i.e. missing the\n // key or index in the path) and the downstream form builder won't have a\n // valid target component\n const shouldRunNestedValidationForArrays = type?.jsonType === 'array' && Array.isArray(value)\n\n if (shouldRunNestedValidationForArrays) {\n nestedChecks = nestedChecks.concat(\n value.map((item) =>\n validateItem({\n ...restOfContext,\n parent: value,\n value: item,\n path: path.concat(isKeyedObject(item) ? {_key: item._key} : value.indexOf(item)),\n type: resolveTypeForArrayItem(item, type.of),\n })\n )\n )\n }\n\n // markDefs also do no run nested validation if the parent object is undefined\n // for a similar reason to arrays\n const shouldRunNestedValidationForMarkDefs =\n isBlock(value) && value.markDefs.length && isBlockSchemaType(type)\n\n if (shouldRunNestedValidationForMarkDefs) {\n const [spanChildrenField] = type.fields\n const spanType = spanChildrenField.type.of.find(isSpanSchemaType)\n\n const annotations = (spanType?.annotations || []).reduce<Map<string, SchemaType>>(\n (map, annotationType) => {\n map.set(annotationType.name, annotationType)\n return map\n },\n new Map()\n )\n\n nestedChecks = nestedChecks.concat(\n value.markDefs.map((markDef) =>\n validateItem({\n ...restOfContext,\n parent: value,\n value: markDef,\n path: path.concat(['markDefs', {_key: markDef._key}]),\n type: annotations.get(markDef._type),\n })\n )\n )\n }\n\n const results = (await Promise.all([...selfChecks, ...nestedChecks])).flat()\n\n // run `uniqBy` if `_fieldRules` are present because they can\n // cause repeat markers\n if (rules.some((rule) => rule._fieldRules)) {\n return uniqBy(results, (rule) => JSON.stringify(rule))\n }\n\n return results\n}\n","import {Schema, SchemaType} from '@sanity/types'\nimport normalizeValidationRules from './util/normalizeValidationRules'\n\nfunction traverse(typeDef: SchemaType, visited: Set<SchemaType>) {\n if (visited.has(typeDef)) {\n return\n }\n\n visited.add(typeDef)\n\n typeDef.validation = normalizeValidationRules(typeDef)\n\n if ('fields' in typeDef) {\n for (const field of typeDef.fields) {\n traverse(field.type, visited)\n }\n }\n\n if ('of' in typeDef) {\n for (const candidate of typeDef.of) {\n traverse(candidate, visited)\n }\n }\n\n // eslint-disable-next-line no-warning-comments\n // @ts-expect-error TODO (eventually): `annotations` does not exist on the SchemaType yet\n if (typeDef.annotations) {\n // eslint-disable-next-line no-warning-comments\n // @ts-expect-error TODO (eventually): `annotations` does not exist on the SchemaType yet\n for (const annotation of typeDef.annotations) {\n traverse(annotation, visited)\n }\n }\n}\n\n// NOTE: this overload is for TS API compatibility with a previous implementation\nfunction inferFromSchemaType(\n typeDef: SchemaType,\n // these are intentionally unused\n _schema: Schema,\n _visited?: Set<SchemaType>\n): SchemaType\n// note: this seemingly redundant overload is required\nfunction inferFromSchemaType(typeDef: SchemaType): SchemaType\nfunction inferFromSchemaType(typeDef: SchemaType): SchemaType {\n traverse(typeDef, new Set())\n return typeDef\n}\n\nexport default inferFromSchemaType\n","import {Schema} from '@sanity/types'\nimport inferFromSchemaType from './inferFromSchemaType'\n\n// Note: Mutates schema. Refactor when @sanity/schema supports middlewares\nfunction inferFromSchema(schema: Schema): Schema {\n const typeNames = schema.getTypeNames()\n\n typeNames.forEach((typeName) => {\n const schemaType = schema.get(typeName)\n\n if (schemaType) {\n inferFromSchemaType(schemaType)\n }\n })\n\n return schema\n}\n\nexport default inferFromSchema\n","import RuleClass from './Rule'\nimport validateDocument from './validateDocument'\nimport inferFromSchema from './inferFromSchema'\nimport inferFromSchemaType from './inferFromSchemaType'\n\nexport default {Rule: RuleClass, validateDocument, inferFromSchema, inferFromSchemaType}\nexport {RuleClass as Rule, validateDocument, inferFromSchema, inferFromSchemaType}\n"],"names":["isKeyedObject","isNonNullable","ValidationErrorClass","genericValidator","isReference","isRecord","formatDate","booleanValidator","numberValidator","stringValidator","arrayValidator","objectValidator","dateValidator","ruleConstraintTypes","cloneDeep","get","memoize","RuleClass","isTypedObject","isBlock","isBlockSchemaType","isSpanSchemaType","uniqBy"],"mappings":"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"}
|
package/tsconfig.tsbuildinfo
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"program":{"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","./src/util/escapeRegex.js","../../../node_modules/@types/lodash/common/common.d.ts","../../../node_modules/@types/lodash/common/array.d.ts","../../../node_modules/@types/lodash/common/collection.d.ts","../../../node_modules/@types/lodash/common/date.d.ts","../../../node_modules/@types/lodash/common/function.d.ts","../../../node_modules/@types/lodash/common/lang.d.ts","../../../node_modules/@types/lodash/common/math.d.ts","../../../node_modules/@types/lodash/common/number.d.ts","../../../node_modules/@types/lodash/common/object.d.ts","../../../node_modules/@types/lodash/common/seq.d.ts","../../../node_modules/@types/lodash/common/string.d.ts","../../../node_modules/@types/lodash/common/util.d.ts","../../../node_modules/@types/lodash/index.d.ts","../../../node_modules/es6-error/typings/index.d.ts","./src/ValidationError.js","./src/util/deepEquals.js","./src/util/pathToString.js","./src/util/handleValidationResult.js","./src/validators/genericValidator.js","./src/validators/booleanValidator.js","./src/validators/numberValidator.js","./src/validators/stringValidator.js","./src/validators/arrayValidator.js","./src/validators/objectValidator.js","../../../node_modules/date-fns/typings.d.ts","./src/validators/dateValidator.js","./src/validate.js","./src/Rule.js","./src/getClient.js","./src/validateDocument.js","./src/validators/slugValidator.js","./src/validators/blockValidator.js","./src/inferFromSchemaType.js","./src/inferFromSchema.js","./src/index.js","./src/util/prefixPaths.js","../types/parts/all:part:@sanity/index.d.ts","../types/parts/config:@sanity/index.d.ts","../types/parts/config:sanity/index.d.ts","../types/parts/part:@sanity/base/icons.d.ts","../types/parts/part:@sanity/base/datastore.d.ts","../types/parts/part:@sanity/base/theme.d.ts","../../../node_modules/@types/react/global.d.ts","../../../node_modules/csstype/index.d.ts","../../../node_modules/@types/prop-types/index.d.ts","../../../node_modules/@types/scheduler/tracing.d.ts","../../../node_modules/@types/react/index.d.ts","../../../node_modules/rxjs/internal/Subscription.d.ts","../../../node_modules/rxjs/internal/types.d.ts","../../../node_modules/rxjs/internal/Subscriber.d.ts","../../../node_modules/rxjs/internal/Operator.d.ts","../../../node_modules/rxjs/internal/observable/iif.d.ts","../../../node_modules/rxjs/internal/observable/throwError.d.ts","../../../node_modules/rxjs/internal/Observable.d.ts","../../../node_modules/rxjs/internal/Subject.d.ts","../../../node_modules/rxjs/internal/observable/ConnectableObservable.d.ts","../../../node_modules/rxjs/internal/operators/groupBy.d.ts","../../../node_modules/rxjs/internal/symbol/observable.d.ts","../../../node_modules/rxjs/internal/BehaviorSubject.d.ts","../../../node_modules/rxjs/internal/ReplaySubject.d.ts","../../../node_modules/rxjs/internal/AsyncSubject.d.ts","../../../node_modules/rxjs/internal/Scheduler.d.ts","../../../node_modules/rxjs/internal/scheduler/Action.d.ts","../../../node_modules/rxjs/internal/scheduler/AsyncScheduler.d.ts","../../../node_modules/rxjs/internal/scheduler/AsyncAction.d.ts","../../../node_modules/rxjs/internal/scheduler/AsapScheduler.d.ts","../../../node_modules/rxjs/internal/scheduler/asap.d.ts","../../../node_modules/rxjs/internal/scheduler/async.d.ts","../../../node_modules/rxjs/internal/scheduler/QueueScheduler.d.ts","../../../node_modules/rxjs/internal/scheduler/queue.d.ts","../../../node_modules/rxjs/internal/scheduler/AnimationFrameScheduler.d.ts","../../../node_modules/rxjs/internal/scheduler/animationFrame.d.ts","../../../node_modules/rxjs/internal/scheduler/VirtualTimeScheduler.d.ts","../../../node_modules/rxjs/internal/Notification.d.ts","../../../node_modules/rxjs/internal/util/pipe.d.ts","../../../node_modules/rxjs/internal/util/noop.d.ts","../../../node_modules/rxjs/internal/util/identity.d.ts","../../../node_modules/rxjs/internal/util/isObservable.d.ts","../../../node_modules/rxjs/internal/util/ArgumentOutOfRangeError.d.ts","../../../node_modules/rxjs/internal/util/EmptyError.d.ts","../../../node_modules/rxjs/internal/util/ObjectUnsubscribedError.d.ts","../../../node_modules/rxjs/internal/util/UnsubscriptionError.d.ts","../../../node_modules/rxjs/internal/util/TimeoutError.d.ts","../../../node_modules/rxjs/internal/observable/bindCallback.d.ts","../../../node_modules/rxjs/internal/observable/bindNodeCallback.d.ts","../../../node_modules/rxjs/internal/InnerSubscriber.d.ts","../../../node_modules/rxjs/internal/OuterSubscriber.d.ts","../../../node_modules/rxjs/internal/observable/combineLatest.d.ts","../../../node_modules/rxjs/internal/observable/concat.d.ts","../../../node_modules/rxjs/internal/observable/defer.d.ts","../../../node_modules/rxjs/internal/observable/empty.d.ts","../../../node_modules/rxjs/internal/observable/forkJoin.d.ts","../../../node_modules/rxjs/internal/observable/from.d.ts","../../../node_modules/rxjs/internal/observable/fromEvent.d.ts","../../../node_modules/rxjs/internal/observable/fromEventPattern.d.ts","../../../node_modules/rxjs/internal/observable/generate.d.ts","../../../node_modules/rxjs/internal/observable/interval.d.ts","../../../node_modules/rxjs/internal/observable/merge.d.ts","../../../node_modules/rxjs/internal/observable/never.d.ts","../../../node_modules/rxjs/internal/observable/of.d.ts","../../../node_modules/rxjs/internal/observable/onErrorResumeNext.d.ts","../../../node_modules/rxjs/internal/observable/pairs.d.ts","../../../node_modules/rxjs/internal/observable/partition.d.ts","../../../node_modules/rxjs/internal/observable/race.d.ts","../../../node_modules/rxjs/internal/observable/range.d.ts","../../../node_modules/rxjs/internal/observable/timer.d.ts","../../../node_modules/rxjs/internal/observable/using.d.ts","../../../node_modules/rxjs/internal/observable/zip.d.ts","../../../node_modules/rxjs/internal/scheduled/scheduled.d.ts","../../../node_modules/rxjs/internal/config.d.ts","../../../node_modules/rxjs/index.d.ts","../../../node_modules/@sanity/observable/minimal.d.ts","../client/sanityClient.d.ts","../../../node_modules/@sanity/types/dist/dts/paths/types.d.ts","../../../node_modules/@sanity/types/dist/dts/paths/asserters.d.ts","../../../node_modules/@sanity/types/dist/dts/paths/index.d.ts","../../../node_modules/@sanity/types/dist/dts/documents/types.d.ts","../../../node_modules/@sanity/types/dist/dts/documents/asserters.d.ts","../../../node_modules/@sanity/types/dist/dts/documents/index.d.ts","../../../node_modules/@sanity/types/dist/dts/markers/types.d.ts","../../../node_modules/@sanity/types/dist/dts/markers/asserters.d.ts","../../../node_modules/@sanity/types/dist/dts/markers/index.d.ts","../../../node_modules/@sanity/types/dist/dts/validation/types.d.ts","../../../node_modules/@sanity/types/dist/dts/validation/index.d.ts","../../../node_modules/@sanity/types/dist/dts/reference/types.d.ts","../../../node_modules/@sanity/types/dist/dts/reference/asserters.d.ts","../../../node_modules/@sanity/types/dist/dts/reference/index.d.ts","../../../node_modules/@sanity/types/dist/dts/assets/types.d.ts","../../../node_modules/@sanity/types/dist/dts/assets/index.d.ts","../../../node_modules/@sanity/types/dist/dts/user/types.d.ts","../../../node_modules/@sanity/types/dist/dts/user/index.d.ts","../../../node_modules/@sanity/types/dist/dts/schema/types.d.ts","../../../node_modules/@sanity/types/dist/dts/schema/asserters.d.ts","../../../node_modules/@sanity/types/dist/dts/schema/index.d.ts","../../../node_modules/@sanity/types/dist/dts/slug/types.d.ts","../../../node_modules/@sanity/types/dist/dts/slug/index.d.ts","../../../node_modules/@sanity/types/dist/dts/portableText/types.d.ts","../../../node_modules/@sanity/types/dist/dts/portableText/index.d.ts","../../../node_modules/@sanity/types/dist/dts/mutations/types.d.ts","../../../node_modules/@sanity/types/dist/dts/mutations/index.d.ts","../../../node_modules/@sanity/types/dist/dts/images/types.d.ts","../../../node_modules/@sanity/types/dist/dts/images/index.d.ts","../../../node_modules/@sanity/types/dist/dts/index.d.ts","../types/parts/part:@sanity/base/other.d.ts","../types/parts/part:@sanity/base/index.d.ts","../types/parts/part:@sanity/components/components.d.ts","../types/parts/part:@sanity/components/styles.d.ts","../types/parts/part:@sanity/components/index.d.ts","../types/parts/part:@sanity/dashboard/dashboard.d.ts","../types/parts/part:@sanity/dashboard/index.d.ts","../types/parts/part:@sanity/default-layout/default-layout.d.ts","../types/parts/part:@sanity/default-layout/index.d.ts","../types/parts/part:@sanity/desk-tool/desk-tool.d.ts","../types/parts/part:@sanity/desk-tool/index.d.ts","../types/parts/part:@sanity/form-builder/form-builder.d.ts","../types/parts/part:@sanity/form-builder/index.d.ts","../types/parts/part:@sanity/storybook.d.ts","../types/parts/part:@sanity/data-aspects.d.ts","../types/parts/part:@sanity/language-filter.d.ts","../types/parts/part:@sanity/production-preview.d.ts","../types/parts/part:@sanity/server.d.ts","../types/parts/part:@sanity/transitional.d.ts","../types/parts/part:@sanity/index.d.ts","../types/parts/sanity:css-custom-properties/index.d.ts","../types/parts/sanity:versions/index.d.ts","../../../node_modules/@types/aria-query/index.d.ts","../../../node_modules/@babel/types/lib/index.d.ts","../../../node_modules/@types/babel__generator/index.d.ts","../../../node_modules/@babel/parser/typings/babel-parser.d.ts","../../../node_modules/@types/babel__template/index.d.ts","../../../node_modules/@types/babel__traverse/index.d.ts","../../../node_modules/@types/babel__core/index.d.ts","../../../node_modules/@types/chance/index.d.ts","../../../node_modules/@types/ms/index.d.ts","../../../node_modules/@types/debug/index.d.ts","../../../node_modules/@types/diff-match-patch/index.d.ts","../../../node_modules/@types/element-resize-detector/index.d.ts","../../../node_modules/@types/esrever/index.d.ts","../../../node_modules/@types/estree/index.d.ts","../../../node_modules/@types/node/assert.d.ts","../../../node_modules/@types/node/globals.d.ts","../../../node_modules/@types/node/async_hooks.d.ts","../../../node_modules/@types/node/buffer.d.ts","../../../node_modules/@types/node/child_process.d.ts","../../../node_modules/@types/node/cluster.d.ts","../../../node_modules/@types/node/console.d.ts","../../../node_modules/@types/node/constants.d.ts","../../../node_modules/@types/node/crypto.d.ts","../../../node_modules/@types/node/dgram.d.ts","../../../node_modules/@types/node/dns.d.ts","../../../node_modules/@types/node/domain.d.ts","../../../node_modules/@types/node/events.d.ts","../../../node_modules/@types/node/fs.d.ts","../../../node_modules/@types/node/fs/promises.d.ts","../../../node_modules/@types/node/http.d.ts","../../../node_modules/@types/node/http2.d.ts","../../../node_modules/@types/node/https.d.ts","../../../node_modules/@types/node/inspector.d.ts","../../../node_modules/@types/node/module.d.ts","../../../node_modules/@types/node/net.d.ts","../../../node_modules/@types/node/os.d.ts","../../../node_modules/@types/node/path.d.ts","../../../node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/@types/node/process.d.ts","../../../node_modules/@types/node/punycode.d.ts","../../../node_modules/@types/node/querystring.d.ts","../../../node_modules/@types/node/readline.d.ts","../../../node_modules/@types/node/repl.d.ts","../../../node_modules/@types/node/stream.d.ts","../../../node_modules/@types/node/string_decoder.d.ts","../../../node_modules/@types/node/timers.d.ts","../../../node_modules/@types/node/tls.d.ts","../../../node_modules/@types/node/trace_events.d.ts","../../../node_modules/@types/node/tty.d.ts","../../../node_modules/@types/node/url.d.ts","../../../node_modules/@types/node/util.d.ts","../../../node_modules/@types/node/v8.d.ts","../../../node_modules/@types/node/vm.d.ts","../../../node_modules/@types/node/wasi.d.ts","../../../node_modules/@types/node/worker_threads.d.ts","../../../node_modules/@types/node/zlib.d.ts","../../../node_modules/@types/node/globals.global.d.ts","../../../node_modules/@types/node/index.d.ts","../../../node_modules/@types/minimatch/index.d.ts","../../../node_modules/@types/glob/index.d.ts","../../../node_modules/@types/googlemaps/style-reference.d.ts","../../../node_modules/@types/googlemaps/reference/map.d.ts","../../../node_modules/@types/googlemaps/reference/coordinates.d.ts","../../../node_modules/@types/googlemaps/reference/event.d.ts","../../../node_modules/@types/googlemaps/reference/control.d.ts","../../../node_modules/@types/googlemaps/reference/geometry.d.ts","../../../node_modules/@types/googlemaps/reference/marker.d.ts","../../../node_modules/@types/googlemaps/reference/info-window.d.ts","../../../node_modules/@types/googlemaps/reference/polygon.d.ts","../../../node_modules/@types/googlemaps/reference/data.d.ts","../../../node_modules/@types/googlemaps/reference/overlay-view.d.ts","../../../node_modules/@types/googlemaps/reference/kml.d.ts","../../../node_modules/@types/googlemaps/reference/image-overlay.d.ts","../../../node_modules/@types/googlemaps/reference/drawing.d.ts","../../../node_modules/@types/googlemaps/reference/visualization.d.ts","../../../node_modules/@types/googlemaps/reference/max-zoom.d.ts","../../../node_modules/@types/googlemaps/reference/street-view.d.ts","../../../node_modules/@types/googlemaps/reference/street-view-service.d.ts","../../../node_modules/@types/googlemaps/reference/places-widget.d.ts","../../../node_modules/@types/googlemaps/reference/places-service.d.ts","../../../node_modules/@types/googlemaps/reference/places-autocomplete-service.d.ts","../../../node_modules/@types/googlemaps/reference/geocoder.d.ts","../../../node_modules/@types/googlemaps/reference/directions.d.ts","../../../node_modules/@types/googlemaps/reference/distance-matrix.d.ts","../../../node_modules/@types/googlemaps/reference/elevation.d.ts","../../../node_modules/@types/googlemaps/index.d.ts","../../../node_modules/@types/graceful-fs/index.d.ts","../../../node_modules/@types/unist/index.d.ts","../../../node_modules/@types/hast/index.d.ts","../../../node_modules/@types/hoist-non-react-statics/index.d.ts","../../../node_modules/@types/is-hotkey/index.d.ts","../../../node_modules/@types/istanbul-lib-coverage/index.d.ts","../../../node_modules/@types/istanbul-lib-report/index.d.ts","../../../node_modules/@types/istanbul-reports/index.d.ts","../../../node_modules/jest-diff/build/cleanupSemantic.d.ts","../../../node_modules/jest-diff/build/types.d.ts","../../../node_modules/jest-diff/build/diffLines.d.ts","../../../node_modules/jest-diff/build/printDiffs.d.ts","../../../node_modules/jest-diff/build/index.d.ts","../../../node_modules/pretty-format/build/types.d.ts","../../../node_modules/pretty-format/build/index.d.ts","../../../node_modules/@types/jest/index.d.ts","../../../node_modules/@types/json-schema/index.d.ts","../../../node_modules/@types/json5/index.d.ts","../../../node_modules/@types/mdast/index.d.ts","../../../node_modules/@types/memoize-one/index.d.ts","../../../node_modules/@types/minimist/index.d.ts","../../../node_modules/moment/ts3.1-typings/moment.d.ts","../../../node_modules/@types/normalize-package-data/index.d.ts","../../../node_modules/@types/parse-json/index.d.ts","../../../node_modules/@types/prettier/index.d.ts","../../../node_modules/@types/prismjs/index.d.ts","../../../node_modules/@types/puppeteer/index.d.ts","../../../node_modules/@types/q/index.d.ts","../../../node_modules/@types/refractor/core.d.ts","../../../node_modules/@types/refractor/index.d.ts","../../../node_modules/@types/resize-observer-browser/index.d.ts","../../../node_modules/@types/scheduler/index.d.ts","../../../node_modules/@types/shallow-equals/index.d.ts","../../../node_modules/@types/sinonjs__fake-timers/index.d.ts","../../../node_modules/@types/sizzle/index.d.ts","../../../node_modules/@types/stack-utils/index.d.ts","../../../node_modules/@types/strip-bom/index.d.ts","../../../node_modules/@types/strip-json-comments/index.d.ts","../../../node_modules/@types/styled-components/index.d.ts","../../../node_modules/@types/testing-library__jest-dom/index.d.ts","../../../node_modules/@types/uuid/index.d.ts","../../../node_modules/@types/warning/index.d.ts","../../../node_modules/@types/yargs-parser/index.d.ts","../../../node_modules/@types/yargs/index.d.ts","../../../node_modules/@types/yauzl/index.d.ts"],"fileInfos":[{"version":"aa9fb4c70f369237c2f45f9d969c9a59e0eae9a192962eb48581fe864aa609db","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06",{"version":"e54c8715a4954cfdc66cd69489f2b725c09ebf37492dbd91cff0a1688b1159e8","affectsGlobalScope":true},{"version":"51b8b27c21c066bf877646e320bf6a722b80d1ade65e686923cd9d4494aef1ca","affectsGlobalScope":true},{"version":"43fb1d932e4966a39a41b464a12a81899d9ae5f2c829063f5571b6b87e6d2f9c","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"2c8c5ee58f30e7c944e04ab1fb5506fdbb4dd507c9efa6972cf4b91cec90c503","affectsGlobalScope":true},{"version":"2bb4b3927299434052b37851a47bf5c39764f2ba88a888a107b32262e9292b7c","affectsGlobalScope":true},{"version":"810627a82ac06fb5166da5ada4159c4ec11978dfbb0805fe804c86406dab8357","affectsGlobalScope":true},{"version":"62d80405c46c3f4c527ee657ae9d43fda65a0bf582292429aea1e69144a522a6","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"12a310447c5d23c7d0d5ca2af606e3bd08afda69100166730ab92c62999ebb9d","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"df9c8a72ca8b0ed62f5470b41208a0587f0f73f0a7db28e5a1272cf92537518e","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"1b3fe904465430e030c93239a348f05e1be80640d91f2f004c3512c2c2c89f34","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"4632665b87204bb1caa8b44d165bce0c50dfab177df5b561b345a567cabacf9a","affectsGlobalScope":true},"8ac79f53a7cd7a9ec48df6995845e7741b0e99805b250de4a62573d3742d336d","675e702f2032766a91eeadee64f51014c64688525da99dccd8178f0c599f13a8","438284c7c455a29b9c0e2d1e72abc62ee93d9a163029ffe918a34c5db3b92da2","0c75b204aed9cf6ff1c7b4bed87a3ece0d9d6fc857a6350c0c95ed0c38c814e8","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","c24ad9be9adf28f0927e3d9d9e9cec1c677022356f241ccbbfb97bfe8fb3d1a1","0ec0998e2d085e8ea54266f547976ae152c9dd6cdb9ac4d8a520a230f5ebae84","9364c7566b0be2f7b70ff5285eb34686f83ccb01bda529b82d23b2a844653bfb","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","82251920b05f30981c9a4109cb5f3169dce4b477effc845c6d781044a30e7672","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","3e59f00ab03c33717b3130066d4debb272da90eeded4935ff0604c2bc25a5cae","9fa6b83a35e897f340858995ca5d77e901d89fd18644cd4c9e8a4afe0b2e6363",{"version":"0714e2046df66c0e93c3330d30dbc0565b3e8cd3ee302cf99e4ede6220e5fec8","affectsGlobalScope":true},"87dc4aa712e5fc14d93d1a91919b0105aac5dc6c04259fcb28a5d57a1347fba3","98349f6b8d7cdb645127668c770d158c3473e4fbbd6050262aea9711f3854a49","db790ae4972bbb00856ff5340fc31e54d0a267c72d35e23ae5b0e25baf743827","2215af2da239b30e589a67e0139b4d2c99321fa0bc005ece0a7e603be408cf4a","ced2120e46fe309b7e9908b21b1e2ab17f515421d8b0493b93cada244f837251","7cf028346d22b4d609b09dc39a5b805913416a68a4b4dbc2dbbd47cde36362b5","7b91781b5a5cb8ff62fa6e17617f2c3859c717dba2c9063f8980f8b0b6e2d290","6573d8aa9185aa683d58e80132cd29c3989975447463a275b9bf39d243ff3a05","7bb13c72720fc32a5d9298ea96fcc81f3cf2a51ba74b086daa8ca574e3541f9e","3b9d79ccc39b2f86be9ad14604ac6198a0cbb8cab2cfdc66110b3e2e8f1cd9fe","119b6159fb2a58c2855b6ac20b86fd6adcd61a731e07d76416a406e0d22e9b7d",{"version":"9f419a932b85464226b5b8dae5d29d721dd893424e22198924019eaa155e4c97","affectsGlobalScope":true},"f8cab667b97513dadfba030fd17e11e376a90924b7053df62ecf5be3f3f1d582","84f3680d0617202dbf7e6c12cc994ac8577b23a78c4ca195ec15a9033020a669","7697fb3db24e98815a773a1fbfde431b894d62c038df8b8390d6f76c8b748ea6","f11ce86afb511a305be3e2f4d83363d005b5a82b2a8a1dc99101b55ec37a7ebd","c04f46c0861cf7998633b418d30cf2855d724c72ab00b24549275b3ec3acfe3e","c61651ea5a9a88bdb724c0433e2f3af25394e1ec8d1e629e1e56398d6931ff5b","e1a4d462e347cc7436dc5ed1c798db3468fa7a1ee162d3dd2e6ac0cfc580c413","57c21203301d8c631f3b97185b7185e477c9f809df3c5561be66df245b0be9fc","98db700d6188b7b17ff413e657aaa8525c3f15d6275ab7de7a62d94c1014b3f3","5bd9fc2d8d2cb237e23da4e6f93da9f340ccafa9c6b09f4dd41fa6038ee4d317","0d87f85dd7f232811284759cc8b6e5e15bf784e087654d902b620b27161bb9cb","3f9c78523f5b634131b1018dbef5bf9d3d02d3709d7ce3589299ef2f0e722088","a9d1c1e764916a99ced55db6dd565a9871352d5fbb5da3cbeb1ee3b1bf99cba0","157951412f37b917f29d405b8bba291bd3289d05f46402ca32324d8f18061392","d4e8cbaf209eecd73f20710ea0b1bb6c02ee27d213c9fce3f96762ab7e0ac422","8335f5c3fbef7cd50b7462ff56b0ee3df01e6022a8307c953bd6367d3af29de3","d415a4bbcd379698af1c62adb70e81e3cc4ed9d3d238a384ffa69db10c492f17",{"version":"ecf78e637f710f340ec08d5d92b3f31b134a46a4fcf2e758690d8c46ce62cba6","affectsGlobalScope":true},"4ee363f83d7be2202f34fcd84c44da71bf3a9329fee8a05f976f75083a52ea94","f7b46d22a307739c145e5fddf537818038fdfffd580d79ed717f4d4d37249380","f5a8b384f182b3851cec3596ccc96cb7464f8d3469f48c74bf2befb782a19de5",{"version":"2612ddb9dec0fdb148b20bff58d3737fe467e01b8662b4dc5f1304f792a87706","affectsGlobalScope":true},"6cb35d83d21a7e72bd00398c93302749bcd38349d0cc5e76ff3a90c6d1498a4d",{"version":"369dd7668d0e6c91550bce0c325f37ce6402e5dd40ecfca66fbb5283e23e559d","affectsGlobalScope":true},"2632057d8b983ee33295566088c080384d7d69a492bc60b008d6a6dfd3508d6b","4bf71cf2a94492fc71e97800bdf2bcb0a9a0fa5fce921c8fe42c67060780cbfa","0996ff06f64cb05b6dac158a6ada2e16f8c2ccd20f9ff6f3c3e871f1ba5fb6d9","5c492d01a19fea5ebfff9d27e786bc533e5078909521ca17ae41236f16f9686a","a6ee930b81c65ec79aca49025b797817dde6f2d2e9b0e0106f0844e18e2cc819","84fce15473e993e6b656db9dd3c9196b80f545647458e6621675e840fd700d29","7d5336ee766aa72dffb1cc2a515f61d18a4fb61b7a2757cbccfb7b286b783dfb","63e96248ab63f6e7a86e31aa3e654ed6de1c3f99e3b668e04800df05874e8b77","80da0f61195385d22b666408f6cccbc261c066d401611a286f07dfddf7764017","06a20cc7d937074863861ea1159ac783ff97b13952b4b5d1811c7d8ab5c94776","ab6de4af0e293eae73b67dad251af097d7bcc0b8b62de84e3674e831514cb056","18cbd79079af97af66c9c07c61b481fce14a4e7282eca078c474b40c970ba1d0","e7b45405689d87e745a217b648d3646fb47a6aaba9c8d775204de90c7ea9ff35","669b754ec246dd7471e19b655b73bda6c2ca5bb7ccb1a4dff44a9ae45b6a716a","bcfaca4a8ff50f57fd36df91fba5d34056883f213baff7192cbfc4d3805d2084","76a564b360b267502219a89514953058494713ee0923a63b2024e542c18b40e5","8f62cbd3afbd6a07bb8c934294b6bfbe437021b89e53a4da7de2648ecfc7af25","a20629551ed7923f35f7556c4c15d0c8b2ebe7afaa68ceaab079a1707ba64be2","d6de66600c97cd499526ddecea6e12166ab1c0e8d9bf36fb2339fd39c8b3372a","8e7a5b8f867b99cc8763c0b024068fb58e09f7da2c4810c12833e1ca6eb11c4f","a8932876de2e3138a5a27f9426b225a4d27f0ba0a1e2764ba20930b4c3faf4b9","df877050b04c29b9f8409aa10278d586825f511f0841d1ec41b6554f8362092b","027d600e00c5f5e1816c207854285d736f2f5fa28276e2829db746d5d6811ba1","5443113a16ef378446e08d6500bb48b35de582426459abdb5c9704f5c7d327d9","0fb581ecb53304a3c95bb930160b4fa610537470cce850371cbaad5a458ca0d9","7da4e290c009d7967343a7f8c3f145a3d2c157c62483362183ba9f637a536489","eb21ddc3a8136a12e69176531197def71dc28ffaf357b74d4bf83407bd845991","914560d0c4c6aa947cfe7489fe970c94ba25383c414bbe0168b44fd20dbf0df4","4fb3405055b54566dea2135845c3a776339e7e170d692401d97fd41ad9a20e5d","8d607832a6ef0eac30657173441367dd76c96bf7800d77193428b922e060c3af","20ff7207f0bb5cdde5fee8e83315ade7e5b8100cfa2087d20d39069a3d7d06f4","7ca4c534eab7cff43d81327e369a23464bc37ef38ce5337ceff24a42c6c84eb2","5252dec18a34078398be4e321dee884dc7f47930e5225262543a799b591b36d2","23caed4dff98bd28157d2b798b43f1dfefe727f18641648c01ce4e0e929a1630","f67e013d5374826596d7c23dbae1cdb14375a27cd72e16c5fb46a4b445059329","ea3401b70e2302683bbf4c18b69ef2292b60f4d8f8e6d920413b81fb7bde0f65","71afe26642c0fb86b9f8b1af4af5deb5181b43b6542a3ff2314871b53d04c749","0d7f01634e6234d84cf0106508efdb8ae00e5ed126eff9606d37b031ac1de654","f8d209086bad78af6bd7fef063c1ed449c815e6f8d36058115f222d9f788b848","3ad003278d569d1953779e2f838f7798f02e793f6a1eceac8e0065f1a202669b","fb2c5eceffcd918dbb86332afa0199f5e7b6cf6ee42809e930a827b28ef25afe","f664aaff6a981eeca68f1ff2d9fd21b6664f47bf45f3ae19874df5a6683a8d8a","ce066f85d73e09e9adbd0049bcf6471c7eefbfc2ec4b5692b5bcef1e36babd2a","09d302513cacfbcc54b67088739bd8ac1c3c57917f83f510b2d1adcb99fd7d2a","3faa54e978b92a6f726440c13fe3ab35993dc74d697c7709681dc1764a25219f","2bd0489e968925eb0c4c0fb12ef090be5165c86bd088e1e803102c38d4a717d8","88924207132b9ba339c1adb1ed3ea07e47b3149ff8a2e21a3ea1f91cee68589d","b8800b93d8ab532f8915be73f8195b9d4ef06376d8a82e8cdc17c400553172d6","d7d469703b78beba76d511957f8c8b534c3bbb02bea7ab4705c65ef573532fb8","74c8c3057669c03264263d911d0f82e876cef50b05be21c54fef23c900de0420","b303eda2ff2d582a9c3c5ecb708fb57355cdc25e8c8197a9f66d4d1bf09fda19","4e5dc89fa22ff43da3dee1db97d5add0591ebaff9e4adef6c8b6f0b41f0f60f0","ec4e82cb42a902fe83dc13153c7a260bee95684541f8d7ef26cb0629a2f4ca31","5f36e24cd92b0ff3e2a243685a8a780c9413941c36739f04b428cc4e15de629d","40a26494e6ab10a91851791169582ab77fed4fbd799518968177e7eefe08c7a9","208e125b45bc561765a74f6f1019d88e44e94678769824cf93726e1bac457961","b3985971de086ef3aa698ef19009a53527b72e65851b782dc188ac341a1e1390","c81d421aabb6113cd98b9d4f11e9a03273b363b841f294b457f37c15d513151d","30063e3a184ff31254bbafa782c78a2d6636943dfe59e1a34f451827fd7a68dc","c05d4cae0bceed02c9d013360d3e65658297acb1b7a90252fe366f2bf4f9ccc9","6f14b92848889abba03a474e0750f7350cc91fc190c107408ca48679a03975ae","a588d0765b1d18bf00a498b75a83e095aef75a9300b6c1e91cbf39e408f2fe2f","a40614305dee810cffd4a0cf1500ecd350d78ec9e6ec0189106ce62d0cb3cfaf","78aabf2a68c402b42b05141e2f0f82567b98dc28d82bed9524b9211458bd00bd","d142e6f9c0ac9d75ea6155bc4e7c4ec8d5400c54931e2e759f06d0d2e7217d9f","9cb1e0066a4aa05c36a1373c8208b595a45f05319ba8437c995e6f162a31e401","af216694b072fb0c44a370fb30723a9d1a29561163af2dcab09973bdd7a1c9f3","86269d0b78338ea8935c05ef52d03da29785b5c803440503b05040e3340d312d","3687ed879657d6dd8f01e4d8efbcf3182da0c58b96e187f6b3958080edeca163","af216694b072fb0c44a370fb30723a9d1a29561163af2dcab09973bdd7a1c9f3","472dac65f4493e9cbbfce363e31bad7db2efb94e2701fe1608238b575d259951","671c7e09d28fa28fa35c0243ce45da63f334350fcdbe63f020d197c8fdbe0be0","a2fd8f008678abeb1215586adbeb223b5e80e3407768c6f72c4f735eaee673a1","b07fed41009c90fc66222e0762e36e7018f7911a7ccfb7abc2c1705f32825eda","890a7b9f3c26aeef94edf002dc96de63877bdbc4aa35d9a3b7ad47c89146d926","0eb8ec99a41041c829b61f596f3f001421089e67eef51e9de86406cf259f8e5b","ca6fd6a2e2d09e2a4863795466941df0bb2a899ab0552b3304484e6536778ac5","a2fd8f008678abeb1215586adbeb223b5e80e3407768c6f72c4f735eaee673a1","f2b671a80c8428cc4adbc8c22aaa5930670c7defdf82b1389747b4d995657ec3","890a7b9f3c26aeef94edf002dc96de63877bdbc4aa35d9a3b7ad47c89146d926","c77b8485c16a531c1d7029b179e86bf76872987cbb922fcdda0d6cf38ad26f7b","890a7b9f3c26aeef94edf002dc96de63877bdbc4aa35d9a3b7ad47c89146d926","b192ce182cb385e1a18f396fddc62ff1c1411a240f2d67dbab9d4ed3a7e96a84","e6a4cd98838756377776ecdfa2d6d6ee259634915076960d951029821e813ef5","af216694b072fb0c44a370fb30723a9d1a29561163af2dcab09973bdd7a1c9f3","f12ec9fea06fe909df643d5507a7e9398bd0587b32bb274613fe368f622090ef","890a7b9f3c26aeef94edf002dc96de63877bdbc4aa35d9a3b7ad47c89146d926","8a755d335e77f99a63c21084923009ddb2d1e03f69bc65c42840dfc4be478a88","890a7b9f3c26aeef94edf002dc96de63877bdbc4aa35d9a3b7ad47c89146d926","fc0f9361b7067952a60be675473f152d5234d9bc64e02ead8304a9e66f63677a","890a7b9f3c26aeef94edf002dc96de63877bdbc4aa35d9a3b7ad47c89146d926","fa5e1a501f8e434646785e48a53d3df33e0b28edf86288d37972d8238e91ef94","890a7b9f3c26aeef94edf002dc96de63877bdbc4aa35d9a3b7ad47c89146d926","a8195b3b6029800610e5f25efcd996e4f1a5aadde81c4fe18364bc32378136fb","c745441926a410ed090cd2c4a1c9f20e5e273d1d02ea5e8d2329972bc717359c","26c5195e992cd08e1bb22374810e13019d55af731ca9609e0dbc4eb61750a6fb","5f5e433833325f35c11d13a260165f5a808cc840d76f9bd81409d959249297ff",{"version":"f5f648048c2a96bed5f92dd3938408ab68f294a20831d5a6864443caef8651a3","affectsGlobalScope":true},"0e7a74a3e9aa0abd9dadfbc0a28a4b65173dd885fe56eff61d246a24dd216101","740d421d2e73ead44d18ec3621fcf5a417bb045e38d90423ea7fae87b1907701","c24d294ceead4ec0cc485fcd144dc21ea1ce5be727aae1286491260066e11163","967fc9c7414894a398db71dc3f3fe74ea5f932c59bc9435edc2b90febe9632d0","bd4fceee792ec5e836158b5dcc393239a6d909e8133e5c59891b401506685d65","a0bcd804ec1f01470755d7adb4550835960bb358440ce644540b4f3b12d3967e","685c508cdca8564daf5b8114e668fd96b47ecbd8a99dc8da87737299ff77eb93","87012de861186c3816ceedf38f80b04945d1529a5ad508b2246ce5f13e3c88a9","bf8d10d595cfd5ebc6ea0dedc837d2823776bb8c3df88095a141ae99af0587e2","a1da340b59a34235642f08ea4f5e620febea70721e1a1fb880569c452110bd37","bd8dfc4a30d6ff8b289252358843aaa89b8dcf6dbb615eaec445701c85cb75b8","e3025fde503c32466eb0cdf28f70481746207733e5ae76bf5cbc5565c2066d1f","75ba397fb50033b2a065fae8125e67e7f27e2b7b17b04241fa3dba1c9a1a5338","5ab619b0890ac8997d6bfa272b5180e0a46b1af94c1ad3188ef9835905678e22","7a69f8c63ad10d05a89ffb0a97bc45a9b37046874c0de3b139c07a0d95124958","f7f0eb2f1c45c35c33e8c15365d0c5a7511519a3240a551507a6c9314fa56054","8c011c64e927359c0ae39966192fb32974aa9493f23db8cf69086de5c6781a3f","7e87cf2a7ef0383613d779f937fc38ce15e991aeab3b0a45f87be5fbe24beae5","5024433f8da3a7968f6d12cffd32f2cefae4442a9ad1c965fa2d23342338b700","f82348f8ac4f637d6ad76ef5d45577ccc0c59fbd25d8c44d55349a71a90e195a","8dfed5c91ad36e69e6da6b7e49be929d4e19666db2b651aa839c485170a2902c","4aaf84a5ac87bad3211f041fab85de5cc42e5954c3ed56842faf6f08167e6202","93de1c6dab503f053efe8d304cb522bb3a89feab8c98f307a674a4fae04773e9","3b043cf9a81854a72963fdb57d1884fc4da1cf5be69b5e0a4c5b751e58cb6d88","71c56bdaa82d7ce75a72d3c06c04fe10becec09bd9c4ef21776a2a055d3f428e",{"version":"8f61ce98de9b42c0196fe17eae81d18cfac3fa0c3fd22421beda62a8b22d73d4","affectsGlobalScope":true},"6a9c5127096b35264eb7cd21b2417bfc1d42cceca9ba4ce2bb0c3410b7816042","78828b06c0d3b586954015e9ebde5480b009e166c71244763bda328ec0920f41","2162be1440304b1e3aceefee72d3e9d27fe6801229409140074d606c7f28374d","5fca79e315eb7f8a82a1e7758ec492f88bfd5f353233a2b861513b28232c8cf8","2846d38d136dc1db85dc7cb4010cda22711f03219816355b4f2978a62b842eae","9f3554130bc117f19a9d4186bd83a97145c71818c1b1c51424967e0f607324d5","d555cd63a3fc837840db192596273fdf52fb28092b0a33bec98e89a0334b3a4c",{"version":"3e432cdf56538889e5742d388cdf03d670bfb17f4547dbbb1daf90701ec790d5","affectsGlobalScope":true},"85d545d430795d54a8b2896f67f9aeb7bf19fd74a1469ae0627311eb72f0dfa2","a473cf45c3d9809518f8af913312139d9f4db6887dc554e0d06d0f4e52722e6b","10b3076ac94d93d107062c0874fcc02305d8b915961cf848df17778535774f39","3d68ecf05475492f041c88395372c3a01b30351619bebcd38287ab185be7f7e4",{"version":"36c956a3a6dc279f1e6b77aa4b97b7b229b7d828102573ef5002de456ff5e1d9","affectsGlobalScope":true},"45ac321f2e15d268fd74a90ddaa6467dcaaff2c5b13f95b4b85831520fb7a491","6e8b894365ab993dbb55c58542598d1548fdda072c974f98b89c218891e2ba09","ddd6169dff8e5263397a9399ba7ba92521d3959f8f9dcdc27f24403dc7b751ba","508e1e25ca40ea6cde332d3232c826fcd82f456f45ae535d817754684f048f9e",{"version":"2866a528b2708aa272ec3eaafd3c980abb23aec1ef831cfc5eb2186b98c37ce5","affectsGlobalScope":true},{"version":"8f8f6ee2a0c94077f79439f51640a625ac7e2f5dd6866bd3b5a41705c836adfc","affectsGlobalScope":true},"ee97aed5b4667a5c3003a1da4b108827fc64b888391417617d89b02ff134de9a","839421b494b57cd2bc0074e914130277051850eba6def6c25870056e6652640b","e18a4b529c9a05593e612130554d93a2b78b949cf1cf48c0b183071258f0e95a","88587b5c94b0c4f5d78026e4beeb93383b3933c860d9840b55d6bf47d7b632bb","a473ecd14d9bafbd6a33105524b033237bbf1d6ce2cd81eb71cc54bec2d83d55","9e8947666e44137405fd378f3a8a0515a492e967e552406c02b991c98c78fc61","0cff7901aedfe78e314f7d44088f07e2afa1b6e4f0473a4169b8456ca2fb245d","7a2a3ff87ffd4313a6a2f3b012e801dd249ee58152cedf90c8718dcd2c811fe3","69640cc2e76dad52daeb9914e6b70c5c9a5591a3a65190a2d3ea432cf0015e16","a39a4c527b7a2dc7a2661b711a534c10c76852c5ad6ae320767d3f7d2621b67d","1bb5c9857b2ee32c199dd85bc0f4c0299112485d6e5dc91428eabfdee0dbd68c",{"version":"5daba568741c8ed283d67bf370c626a91e09fdfbc6d4abe22a7f93e2cf5138b9","affectsGlobalScope":true},"7f77304372efe3c9967e5f9ea2061f1b4bf41dc3cda3c83cdd676f2e5af6b7e6","662661bbf9ccd869f3bca82d34234b2abdc95c657e2187c35352d42dddb24c2d","5caa645cc390a0a8d5a031072b6b4e49218c17017cd80a63bd2557b19be13c5f","4c4334eb5d8fae83416a361d787b55a5743916aed8af812a909898bc7333e709","6feb6f75a3e4e017f8e6e12740cf06f18eefcf829284fa310da6c7f4d44fb2eb","4fd3c4debadce3e9ab9dec3eb45f7f5e2e3d4ad65cf975a6d938d883cfb25a50","0953427f9c2498f71dd912fdd8a81b19cf6925de3e1ad67ab9a77b9a0f79bf0b","b709ff1f6d6235f5e9c8dcbce3e683ff24ec35046b232d5a281af083026018d1","7df562288f949945cf69c21cd912100c2afedeeb7cdb219085f7f4b46cb7dde4","9d16690485ff1eb4f6fc57aebe237728fd8e03130c460919da3a35f4d9bd97f5","40c6ed5dc58e1c6afa7dcd23b1697bf290cc5b1170c63d0a4dd12f52aa39291c","71d6da3b0150ecdcd16c08b3b546fe4cc7f53df642eccfeb03c813ee788fae0c","a364b4a8a015ae377052fa4fac94204d79a69d879567f444c7ceff1b7a18482d","c5ec3b97d9db756c689cd11f4a11eaa9e6077b2768e3e9b54ff727a93c03a909","c14e9e86f18189c7d32b5dd03b4cf3f40bed68f0509dec06d75d41b82c065fe2","bdb07038733b2d74a75ba9c381dcb92774cd6f161ee125bfa921eae7d883ccc9","ad93e960a3a07dff7394bf0c8a558006a9ff2d0725ab28fc33dec227d4cb251e",{"version":"2708349d5a11a5c2e5f3a0765259ebe7ee00cdcc8161cb9990cb4910328442a1","affectsGlobalScope":true},"1d4ac8cbd56a1d3b2077d1503afa0a82c608efd7a7afe393e0c8ec525c6e1cd7","8841e2aa774b89bd23302dede20663306dc1b9902431ac64b24be8b8d0e3f649","725b884357ba84171341a8e4cc08edf11417854fd069842ca6d22afb2e340e45",{"version":"d71666cec33cc3064f416a42525311e1492fb8d2e5d4b3b55d6549b8fb14a4c8","affectsGlobalScope":true},{"version":"e7db7e32ff6a56ce4638a7d169e20b994308ff1defdf37e8ee31e80cb0af0191","affectsGlobalScope":true},{"version":"3c6c93910866e1a3564e76a484388be11ea3ce3ae6bad06df09cea00218cf106","affectsGlobalScope":true},{"version":"878d6562d4c54379317c708b364bbeb9a5508ce8574db1f484d0d6a0d43b8cdb","affectsGlobalScope":true},{"version":"a06bdd6c54f4ef8be4456c97c0376f8cc5b1fe5e1b18224ff400bd3d74a44c41","affectsGlobalScope":true},{"version":"b611f55c940fc9378507f3be5267a7d8f6345db5dd751d84ff06a810b6857592","affectsGlobalScope":true},{"version":"1876c0cff57f95318c77fb48fd7cd5cc645ea4c7bbf22978c10d5bc6d3a82dd8","affectsGlobalScope":true},{"version":"a424f9740946e7a58997924edaa6c1eb84da174217c88924cd515559bb156a19","affectsGlobalScope":true},{"version":"95c97d175b2907c9e3d86b69094c891222c5fd046d9dc935c7eeff96042d95ff","affectsGlobalScope":true},{"version":"50a781ae5ce905c88b1fbbf88baf98fc23d94229bb2f2b88a98c20cac216e6b6","affectsGlobalScope":true},{"version":"3783422fa957b07b9e396113fbe9d56c2369189ffd742abd7386f118983d1d3a","affectsGlobalScope":true},{"version":"e0be32a9c5c42ff3c1412340ce1cd93573f759078e64ff8e79e370d269c2812c","affectsGlobalScope":true},{"version":"5ae6c86b886ed3eb32d085974a8f2e54e4d817e16e57215b5f8d793a95566711","affectsGlobalScope":true},{"version":"7b36f6f3526fcf9bb9bec49343f91e8b863dea677d19f69a03d5104959d08bd2","affectsGlobalScope":true},{"version":"2ab8ec723248f3b10b9cb869139742b7b4deace31da55f3dd640703d54fa4b42","affectsGlobalScope":true},{"version":"e127f251a0ec444ad6742ee3248d5b49594acb70f1b387fd39adf7561027f35a","affectsGlobalScope":true},{"version":"1f7369a15a2cd1435f6a701f79e4deae6b6ca226744b5ab92b51962d6998f7c4","affectsGlobalScope":true},{"version":"b010a408fc193fd8438c7df32e5fa3eecdc8f0e8983ed469d066b0971500ad6f","affectsGlobalScope":true},{"version":"b56ee16152836323779fb45fcbf8018968c03ea5b1cba0cd4f449b5b7e70676b","affectsGlobalScope":true},{"version":"3239117c14159055a72c8f6ed374c8fb656265262261b5b963d14dc07cb2bc63","affectsGlobalScope":true},{"version":"120de417659ec12c957c167ad6825686fb354a69772381d9fbb36784628a8d72","affectsGlobalScope":true},{"version":"a64b788498f72bb31f01da1fabdca6c72fd08daaf8537d2e9393fb3d3608e668","affectsGlobalScope":true},{"version":"bed005e068c6cbd2bc22a4961434b91c393120a1d336b308e4c0dd2c2dcd43df","affectsGlobalScope":true},{"version":"d11bece84ef9c124d6dc305018438a8dcc3e47ba8575ee4597b1c63ec86d7ed3","affectsGlobalScope":true},{"version":"0cdc52e2c3766f000b79c2dece6426d66d02f33567dc1746b856d9d5dfa5332f","affectsGlobalScope":true},{"version":"a2d6d88d124bf8058c1b90591844e5649e20fc5cb0b35670d79d72b3921a2119","affectsGlobalScope":true},"3ebae8c00411116a66fca65b08228ea0cf0b72724701f9b854442100aab55aba","cddf5c26907c0b8378bc05543161c11637b830da9fadf59e02a11e675d11e180","3d2cd8f3047fff04a71e7037a6a4cb9f4accb28dbd8c0d83164d414811025af0","bfe1b52cf71aea9bf8815810cc5d9490fa9617313e3d3c2ee3809a28b80d0bb4","077b139efd1a6318805a8b24f05e7af37946d9bf9426bcb4866b45b61e6aac90","de18acda71730bac52f4b256ce7511bb56cc21f6f114c59c46782eff2f632857","7eb06594824ada538b1d8b48c3925a83e7db792f47a081a62cf3e5c4e23cf0ee","029769d13d9917e3284cb2356ed28a6576e8b07ae6a06ee1e672518adf21a102","d8aab31ba8e618cc3eea10b0945de81cb93b7e8150a013a482332263b9305322","69da61a7b5093dac77fa3bec8be95dcf9a74c95a0e9161edb98bb24e30e439d2","561eca7a381b96d6ccac6e4061e6d2ae53f5bc44203f3fd9f5b26864c32ae6e9","62ea38627e3ebab429f7616812a9394d327c2bc271003dfba985de9b4137369f","b4439890c168d646357928431100daac5cbdee1d345a34e6bf6eca9f3abe22bc","5d72971a459517c44c1379dab9ed248e87a61ba0a1e0f25c9d67e1e640cd9a09","02d734976af36f4273d930bea88b3e62adf6b078cf120c1c63d49aa8d8427c5c",{"version":"516a426e3960379f310107635b8f3a7e8c307c6c665080b128039d9299ec4087","affectsGlobalScope":true},"0359682c54e487c4cab2b53b2b4d35cc8dea4d9914bc6abcdb5701f8b8e745a4","96d14f21b7652903852eef49379d04dbda28c16ed36468f8c9fa08f7c14c9538","2a2e2c6463bcf3c59f31bc9ab4b6ef963bbf7dffb049cd017e2c1834e3adca63","b67f1e6e51a54c2c6f016d37df30f82452afcac45b8bc4857727573c64ccf3d7","209e814e8e71aec74f69686a9506dd7610b97ab59dcee9446266446f72a76d05","f97edc4d3b4dd0b32766e9633086497565c37657fb591cc84a35864db4bc2fc5","6fa0008bf91a4cc9c8963bace4bba0bd6865cbfa29c3e3ccc461155660fb113a","2b8264b2fefd7367e0f20e2c04eed5d3038831fe00f5efbc110ff0131aab899b","65455ea1b00bae7bd26d3c8c2401eb3d10401c09c55192d6f3b8b2275eda20c2","f142847486040d476276933f02f4fe18b50196d14d8774be7c4bc221dad4d90b","a2289e2e21b5402112c5eb34d60880bbf703c48af56671503da93f67f3e8582f","62b931417104c7cb35d0725e1869f51d52d7b18462fd58f32f846a314a42ba10","711135ec07ce37e918d8dcdaeddcf1ec071efc945d452810a1fc095dbe729e12","c452d91b6056bd08dfafde85090d6e9bf09178c94ad5ad5a1c554b037203ff5c",{"version":"ceaa29121f3dea4fca85ecc9ca6d278c844de9c77226fc8a63143d16df8eb94a","affectsGlobalScope":true},"74b0245c42990ed8a849df955db3f4362c81b13f799ebc981b7bec2d5b414a57","937e376609adaec7164e65ba9a714e1c2babd6cd761480fc9048885a0ba059d2","8109b2ef3ab54c7c855d7ec37074aab0574a2c20e9dd4c6d642f65edc51d1e84","ec89427601297d439c961528832a75017d9356bec2ee42c1d16f2274590d9330","41422586881bcd739b4e62d9b91cd29909f8572aa3e3cdf316b7c50f14708d49","4006c872e38a2c4e09c593bc0cdd32b7b4f5c4843910bea0def631c483fff6c5","ab6aa3a65d473871ee093e3b7b71ed0f9c69e07d1d4295f45c9efd91a771241d",{"version":"af9332cdd78688171d145f6b08594200952450645efbb23301f6c5a8487fdef2","affectsGlobalScope":true},{"version":"40bbeaccf39d6ad00da30e96553f0c4aa1b8a87535393c7fdf939170b639c95d","affectsGlobalScope":true},"fab58e600970e66547644a44bc9918e3223aa2cbd9e8763cec004b2cfb48827e","abd79d61be476addd783d0e0bace2e3c02bb3e38ec23bdfd236adc421b038939","f7e133b20ee2669b6c0e5d7f0cd510868c57cd64b283e68c7f598e30ce9d76d2","d9f5e2cb6bce0d05a252e991b33e051f6385299b0dd18d842fc863b59173a18e","b2d70a269840a9528db473ac7565442434333a05c1f66801a7a672e82beb903e"],"options":{"composite":true,"declaration":true,"declarationMap":true,"emitDeclarationOnly":true,"esModuleInterop":true,"jsx":2,"module":1,"outDir":"./lib","preserveConstEnums":true,"removeComments":false,"rootDir":"./src","skipLibCheck":true,"sourceMap":true,"strict":true,"target":3},"fileIdsList":[[55,68,69,197],[55,68,69],[55,68,69,141],[55,68,69,158],[55,68,69,77,149,157],[55,68,69,147],[55,68,69,147,148],[55,68,69,171],[55,68,69,146,149,152,154,157,159,161,164,166,168,170,172],[55,68,69,150],[55,68,69,150,151],[55,68,69,146,154],[55,68,69,169],[55,68,69,144],[55,68,69,144,145],[55,68,69,167],[55,68,69,155],[55,68,69,155,156],[55,68,69,146,149],[55,68,69,162],[55,68,69,162,163],[55,68,69,77,149,154,157,159,161,166],[55,68,69,165],[55,68,69,146,149,164],[55,68,69,160],[55,68,69,153],[55,68,69,146,149,152,164],[55,68,69,197,198,199,200,201],[55,68,69,197,199],[55,68,69,204],[55,68,69,222,253,254],[55,68,69,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280],[55,68,69,223,253],[55,68,69,283],[55,68,69,77],[55,68,69,287],[55,68,69,287,288],[55,68,69,294,296],[31,33,34,35,36,37,38,39,40,41,42,43,55,68,69],[31,32,34,35,36,37,38,39,40,41,42,43,55,68,69],[32,33,34,35,36,37,38,39,40,41,42,43,55,68,69],[31,32,33,35,36,37,38,39,40,41,42,43,55,68,69],[31,32,33,34,36,37,38,39,40,41,42,43,55,68,69],[31,32,33,34,35,37,38,39,40,41,42,43,55,68,69],[31,32,33,34,35,36,38,39,40,41,42,43,55,68,69],[31,32,33,34,35,36,37,39,40,41,42,43,55,68,69],[31,32,33,34,35,36,37,38,40,41,42,43,55,68,69],[31,32,33,34,35,36,37,38,39,41,42,43,55,68,69],[31,32,33,34,35,36,37,38,39,40,42,43,55,68,69],[31,32,33,34,35,36,37,38,39,40,41,43,55,68,69],[31,32,33,34,35,36,37,38,39,40,41,42,55,68,69],[55,68,69,222,223,230,239],[55,68,69,214,222,230],[55,68,69,246],[55,68,69,218,223,231],[55,68,69,239],[55,68,69,220,222,230],[55,68,69,222],[55,68,69,222,224,239,245],[55,68,69,223],[55,68,69,230,239,245],[55,68,69,222,223,225,230,239,242,245],[55,68,69,225,239,242,245],[55,68,69,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252],[55,68,69,245],[55,68,69,220,222,239],[55,68,69,212],[55,68,69,244],[55,68,69,237,246,248],[55,68,69,230],[55,68,69,236],[55,68,69,222,224,239,245,248],[55,68,69,214,253],[55,68,69,73,74,75,76],[55,68,69,307],[55,68,69,310],[55,68,69,74,77,285],[55,68,69,297],[55,68,69,324],[55,68,69,222,239,253],[55,68,69,290,291],[55,68,69,290,291,292,293],[55,68,69,295],[55,68,69,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,97,98,100,102,103,104,105,106,107,108,109,110,111,112,113,114,115,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140],[55,68,69,78,80,85],[55,68,69,80,117],[55,68,69,79,84],[55,68,69,78,79,80,81,82,83],[55,68,69,79,80],[55,68,69,80,116],[55,68,69,78,79,80,85],[55,68,69,78,79,93],[55,68,69,78,79,80,81,84],[55,68,69,78,79],[55,68,69,79],[55,68,69,78,80,84,85],[55,68,69,79,80,81,84,117],[55,68,69,84],[55,68,69,84,124],[55,68,69,78,79,80,84],[55,68,69,79,80,81,84],[55,68,69,78,79,80,84,85],[55,68,69,78,79,92],[55,68,69,94,95],[55,68,69,78,79,93,94],[55,68,69,78,79,92,93,95],[55,68,69,94],[55,68,69,78,79,94,95],[55,68,69,101],[55,68,69,96],[55,68,69,99],[55,68,69,78,84],[55,68,69,142],[55,69],[55,68],[55,68,69,77,141,143,173,174],[55,68,69,175,178,180,182,184,186],[30,55,57,68,69],[44,55,68,69],[55,68,69,174],[55,58,60,63,64,68,69],[55,63,68,69],[55,58,61,62,68,69],[45,47,55,68,69],[43,45,49,50,51,52,53,54,55,56,68,69],[43,45,55,68,69],[45,46,49,55,68,69],[43,55,60,68,69],[45,49,55,68,69],[43,45,46,47,48,55,57,68,69],[45,47,48,49,55,68,69],[43,55,59,68,69]],"referencedMap":[[199,1],[197,2],[142,3],[159,4],[158,5],[148,6],[149,7],[147,2],[172,8],[171,2],[173,9],[151,10],[152,11],[150,12],[170,13],[169,2],[145,14],[146,15],[144,2],[168,16],[167,2],[156,17],[157,18],[155,19],[163,20],[164,21],[162,22],[166,23],[165,24],[161,25],[160,2],[154,26],[153,27],[196,2],[202,28],[198,1],[200,29],[201,1],[203,2],[205,30],[206,2],[207,2],[208,2],[209,2],[255,31],[281,32],[260,2],[258,2],[265,2],[278,2],[279,2],[269,2],[280,2],[259,2],[277,2],[261,2],[268,2],[263,2],[267,2],[257,2],[262,2],[271,2],[266,2],[276,2],[275,2],[274,2],[264,2],[273,2],[272,2],[270,2],[256,2],[282,33],[284,34],[285,35],[286,2],[287,2],[288,36],[289,37],[297,38],[298,2],[299,2],[32,39],[33,40],[31,41],[34,42],[35,43],[36,44],[37,45],[38,46],[39,47],[40,48],[41,49],[42,50],[43,51],[300,34],[301,2],[254,2],[302,2],[204,2],[210,2],[212,2],[213,2],[214,52],[215,53],[216,54],[217,55],[218,56],[219,57],[220,2],[221,58],[222,58],[223,59],[224,60],[211,2],[252,2],[225,61],[226,62],[227,63],[253,64],[228,58],[229,65],[230,66],[231,2],[232,2],[233,67],[234,68],[235,2],[236,2],[237,58],[238,69],[239,58],[240,2],[241,2],[242,70],[243,2],[244,70],[245,71],[246,2],[247,56],[248,2],[249,2],[250,72],[251,56],[304,2],[305,2],[306,2],[307,2],[75,2],[308,73],[309,2],[73,2],[77,74],[310,75],[311,76],[312,2],[313,2],[76,2],[314,2],[315,2],[316,2],[317,2],[318,2],[319,2],[320,77],[321,78],[283,2],[322,2],[323,2],[324,2],[325,79],[326,80],[74,2],[55,2],[44,2],[290,2],[292,81],[294,82],[293,81],[291,2],[303,2],[296,83],[295,2],[141,84],[91,85],[89,85],[116,86],[104,87],[84,88],[81,89],[117,90],[90,91],[92,92],[85,93],[80,94],[78,95],[140,2],[86,96],[114,87],[115,87],[118,97],[119,87],[120,87],[121,87],[122,87],[123,87],[124,98],[125,99],[126,87],[82,87],[127,87],[128,87],[129,98],[130,87],[131,87],[132,100],[133,87],[134,97],[135,87],[83,87],[136,87],[137,87],[138,101],[87,102],[139,3],[93,103],[101,104],[96,104],[95,105],[94,106],[99,107],[103,108],[102,109],[97,110],[98,107],[100,111],[88,2],[79,112],[109,2],[110,2],[111,2],[113,2],[112,2],[107,2],[108,98],[106,2],[105,95],[6,2],[8,2],[7,2],[2,2],[9,2],[10,2],[11,2],[12,2],[13,2],[14,2],[15,2],[16,2],[3,2],[4,2],[20,2],[17,2],[18,2],[19,2],[21,2],[22,2],[23,2],[5,2],[24,2],[25,2],[26,2],[27,2],[28,2],[1,2],[29,2],[143,113],[67,2],[68,114],[69,115],[71,2],[70,2],[175,2],[174,116],[72,2],[176,35],[178,2],[177,2],[179,2],[180,2],[188,2],[181,2],[182,2],[183,2],[184,2],[185,2],[186,2],[193,117],[189,2],[190,2],[191,2],[187,2],[192,2],[194,2],[195,2],[58,118],[45,119],[59,120],[65,121],[64,122],[63,123],[46,2],[30,2],[48,124],[47,2],[66,2],[57,125],[60,126],[53,127],[62,128],[50,129],[56,129],[49,130],[51,129],[54,131],[61,132],[52,129]],"exportedModulesMap":[[199,1],[197,2],[142,3],[159,4],[158,5],[148,6],[149,7],[147,2],[172,8],[171,2],[173,9],[151,10],[152,11],[150,12],[170,13],[169,2],[145,14],[146,15],[144,2],[168,16],[167,2],[156,17],[157,18],[155,19],[163,20],[164,21],[162,22],[166,23],[165,24],[161,25],[160,2],[154,26],[153,27],[196,2],[202,28],[198,1],[200,29],[201,1],[203,2],[205,30],[206,2],[207,2],[208,2],[209,2],[255,31],[281,32],[260,2],[258,2],[265,2],[278,2],[279,2],[269,2],[280,2],[259,2],[277,2],[261,2],[268,2],[263,2],[267,2],[257,2],[262,2],[271,2],[266,2],[276,2],[275,2],[274,2],[264,2],[273,2],[272,2],[270,2],[256,2],[282,33],[284,34],[285,35],[286,2],[287,2],[288,36],[289,37],[297,38],[298,2],[299,2],[32,39],[33,40],[31,41],[34,42],[35,43],[36,44],[37,45],[38,46],[39,47],[40,48],[41,49],[42,50],[43,51],[300,34],[301,2],[254,2],[302,2],[204,2],[210,2],[212,2],[213,2],[214,52],[215,53],[216,54],[217,55],[218,56],[219,57],[220,2],[221,58],[222,58],[223,59],[224,60],[211,2],[252,2],[225,61],[226,62],[227,63],[253,64],[228,58],[229,65],[230,66],[231,2],[232,2],[233,67],[234,68],[235,2],[236,2],[237,58],[238,69],[239,58],[240,2],[241,2],[242,70],[243,2],[244,70],[245,71],[246,2],[247,56],[248,2],[249,2],[250,72],[251,56],[304,2],[305,2],[306,2],[307,2],[75,2],[308,73],[309,2],[73,2],[77,74],[310,75],[311,76],[312,2],[313,2],[76,2],[314,2],[315,2],[316,2],[317,2],[318,2],[319,2],[320,77],[321,78],[283,2],[322,2],[323,2],[324,2],[325,79],[326,80],[74,2],[55,2],[44,2],[290,2],[292,81],[294,82],[293,81],[291,2],[303,2],[296,83],[295,2],[141,84],[91,85],[89,85],[116,86],[104,87],[84,88],[81,89],[117,90],[90,91],[92,92],[85,93],[80,94],[78,95],[140,2],[86,96],[114,87],[115,87],[118,97],[119,87],[120,87],[121,87],[122,87],[123,87],[124,98],[125,99],[126,87],[82,87],[127,87],[128,87],[129,98],[130,87],[131,87],[132,100],[133,87],[134,97],[135,87],[83,87],[136,87],[137,87],[138,101],[87,102],[139,3],[93,103],[101,104],[96,104],[95,105],[94,106],[99,107],[103,108],[102,109],[97,110],[98,107],[100,111],[88,2],[79,112],[109,2],[110,2],[111,2],[113,2],[112,2],[107,2],[108,98],[106,2],[105,95],[6,2],[8,2],[7,2],[2,2],[9,2],[10,2],[11,2],[12,2],[13,2],[14,2],[15,2],[16,2],[3,2],[4,2],[20,2],[17,2],[18,2],[19,2],[21,2],[22,2],[23,2],[5,2],[24,2],[25,2],[26,2],[27,2],[28,2],[1,2],[29,2],[143,113],[67,2],[68,114],[69,115],[71,2],[70,2],[175,2],[174,116],[72,2],[176,35],[178,2],[177,2],[179,2],[180,2],[188,2],[181,2],[182,2],[183,2],[184,2],[185,2],[186,2],[193,117],[189,2],[190,2],[191,2],[187,2],[192,2],[194,2],[195,2],[58,118],[45,119],[59,120],[65,121],[64,122],[63,123],[46,2],[30,2],[48,124],[47,2],[66,2],[57,125],[60,126],[53,127],[62,128],[50,129],[56,129],[49,130],[51,129],[54,131],[61,132],[52,129]],"semanticDiagnosticsPerFile":[199,197,142,159,158,148,149,147,172,171,173,151,152,150,170,169,145,146,144,168,167,156,157,155,163,164,162,166,165,161,160,154,153,196,202,198,200,201,203,205,206,207,208,209,255,281,260,258,265,278,279,269,280,259,277,261,268,263,267,257,262,271,266,276,275,274,264,273,272,270,256,282,284,285,286,287,288,289,297,298,299,32,33,31,34,35,36,37,38,39,40,41,42,43,300,301,254,302,204,210,212,213,214,215,216,217,218,219,220,221,222,223,224,211,252,225,226,227,253,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,304,305,306,307,75,308,309,73,77,310,311,312,313,76,314,315,316,317,318,319,320,321,283,322,323,324,325,326,74,55,44,290,292,294,293,291,303,296,295,141,91,89,116,104,84,81,117,90,92,85,80,78,140,86,114,115,118,119,120,121,122,123,124,125,126,82,127,128,129,130,131,132,133,134,135,83,136,137,138,87,139,93,101,96,95,94,99,103,102,97,98,100,88,79,109,110,111,113,112,107,108,106,105,6,8,7,2,9,10,11,12,13,14,15,16,3,4,20,17,18,19,21,22,23,5,24,25,26,27,28,1,29,143,67,68,69,71,70,175,174,72,176,178,177,179,180,188,181,182,183,184,185,186,193,189,190,191,187,192,194,195,58,45,59,65,64,63,46,30,48,47,66,57,60,53,62,50,56,49,51,54,61,52]},"version":"4.4.2"}
|