Buckets:
| ; | |
| var __importDefault = (this && this.__importDefault) || function (mod) { | |
| return (mod && mod.__esModule) ? mod : { "default": mod }; | |
| }; | |
| Object.defineProperty(exports, "__esModule", { value: true }); | |
| exports.isAsync = exports.isValid = exports.isDirty = exports.isAborted = exports.OK = exports.DIRTY = exports.INVALID = exports.ParseStatus = exports.EMPTY_PATH = exports.makeIssue = void 0; | |
| exports.addIssueToContext = addIssueToContext; | |
| const errors_js_1 = require("../errors.cjs"); | |
| const en_js_1 = __importDefault(require("../locales/en.cjs")); | |
| const makeIssue = (params) => { | |
| const { data, path, errorMaps, issueData } = params; | |
| const fullPath = [...path, ...(issueData.path || [])]; | |
| const fullIssue = { | |
| ...issueData, | |
| path: fullPath, | |
| }; | |
| if (issueData.message !== undefined) { | |
| return { | |
| ...issueData, | |
| path: fullPath, | |
| message: issueData.message, | |
| }; | |
| } | |
| let errorMessage = ""; | |
| const maps = errorMaps | |
| .filter((m) => !!m) | |
| .slice() | |
| .reverse(); | |
| for (const map of maps) { | |
| errorMessage = map(fullIssue, { data, defaultError: errorMessage }).message; | |
| } | |
| return { | |
| ...issueData, | |
| path: fullPath, | |
| message: errorMessage, | |
| }; | |
| }; | |
| exports.makeIssue = makeIssue; | |
| exports.EMPTY_PATH = []; | |
| function addIssueToContext(ctx, issueData) { | |
| const overrideMap = (0, errors_js_1.getErrorMap)(); | |
| const issue = (0, exports.makeIssue)({ | |
| issueData: issueData, | |
| data: ctx.data, | |
| path: ctx.path, | |
| errorMaps: [ | |
| ctx.common.contextualErrorMap, // contextual error map is first priority | |
| ctx.schemaErrorMap, // then schema-bound map if available | |
| overrideMap, // then global override map | |
| overrideMap === en_js_1.default ? undefined : en_js_1.default, // then global default map | |
| ].filter((x) => !!x), | |
| }); | |
| ctx.common.issues.push(issue); | |
| } | |
| class ParseStatus { | |
| constructor() { | |
| this.value = "valid"; | |
| } | |
| dirty() { | |
| if (this.value === "valid") | |
| this.value = "dirty"; | |
| } | |
| abort() { | |
| if (this.value !== "aborted") | |
| this.value = "aborted"; | |
| } | |
| static mergeArray(status, results) { | |
| const arrayValue = []; | |
| for (const s of results) { | |
| if (s.status === "aborted") | |
| return exports.INVALID; | |
| if (s.status === "dirty") | |
| status.dirty(); | |
| arrayValue.push(s.value); | |
| } | |
| return { status: status.value, value: arrayValue }; | |
| } | |
| static async mergeObjectAsync(status, pairs) { | |
| const syncPairs = []; | |
| for (const pair of pairs) { | |
| const key = await pair.key; | |
| const value = await pair.value; | |
| syncPairs.push({ | |
| key, | |
| value, | |
| }); | |
| } | |
| return ParseStatus.mergeObjectSync(status, syncPairs); | |
| } | |
| static mergeObjectSync(status, pairs) { | |
| const finalObject = {}; | |
| for (const pair of pairs) { | |
| const { key, value } = pair; | |
| if (key.status === "aborted") | |
| return exports.INVALID; | |
| if (value.status === "aborted") | |
| return exports.INVALID; | |
| if (key.status === "dirty") | |
| status.dirty(); | |
| if (value.status === "dirty") | |
| status.dirty(); | |
| if (key.value !== "__proto__" && (typeof value.value !== "undefined" || pair.alwaysSet)) { | |
| finalObject[key.value] = value.value; | |
| } | |
| } | |
| return { status: status.value, value: finalObject }; | |
| } | |
| } | |
| exports.ParseStatus = ParseStatus; | |
| exports.INVALID = Object.freeze({ | |
| status: "aborted", | |
| }); | |
| const DIRTY = (value) => ({ status: "dirty", value }); | |
| exports.DIRTY = DIRTY; | |
| const OK = (value) => ({ status: "valid", value }); | |
| exports.OK = OK; | |
| const isAborted = (x) => x.status === "aborted"; | |
| exports.isAborted = isAborted; | |
| const isDirty = (x) => x.status === "dirty"; | |
| exports.isDirty = isDirty; | |
| const isValid = (x) => x.status === "valid"; | |
| exports.isValid = isValid; | |
| const isAsync = (x) => typeof Promise !== "undefined" && x instanceof Promise; | |
| exports.isAsync = isAsync; | |
Xet Storage Details
- Size:
- 4.27 kB
- Xet hash:
- b50b08c4b01660cdf99b43ce441e8753d1f3f6e0b775d9fd93b177a4291cbe27
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.