UNPKG

@backland/schema

Version:

TypeScript schema declaration and validation library with static type inference

42 lines (41 loc) 957 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.IDField = void 0; var _utils = require("@backland/utils"); var _CircularDeps = require("../CircularDeps"); var _FieldType = require("./FieldType"); class IDField extends _FieldType.FieldType { constructor(def = {}) { super({ def: def, name: 'ID' }); const { autoCreate } = def; const createId = _CircularDeps.CircularDeps.ulid({ autoCreate: true }).parse; this.parse = this.applyParser({ parse(input) { (0, _utils.expectedType)({ value: input }, 'string'); return input; }, preParse(input) { if (autoCreate && input === undefined) { return createId(undefined); } return input; } }); } static create = (def = {}) => { return new IDField(def); }; } exports.IDField = IDField; //# sourceMappingURL=IDField.js.map