123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- const CONSTRUCTORS = {
- Object,
- Array,
- Function,
- Number,
- String,
- Date,
- RegExp,
- };
- /* istanbul ignore else */
- if (typeof Buffer != "undefined")
- CONSTRUCTORS.Buffer = Buffer;
- /* istanbul ignore else */
- if (typeof Promise != "undefined")
- CONSTRUCTORS.Promise = Promise;
- const getDef = Object.assign(_getDef, { CONSTRUCTORS });
- function _getDef() {
- return {
- keyword: "instanceof",
- schemaType: ["string", "array"],
- compile(schema) {
- if (typeof schema == "string") {
- const C = getConstructor(schema);
- return (data) => data instanceof C;
- }
- if (Array.isArray(schema)) {
- const constructors = schema.map(getConstructor);
- return (data) => {
- for (const C of constructors) {
- if (data instanceof C)
- return true;
- }
- return false;
- };
- }
- /* istanbul ignore next */
- throw new Error("ajv implementation error");
- },
- metaSchema: {
- anyOf: [{ type: "string" }, { type: "array", items: { type: "string" } }],
- },
- };
- }
- function getConstructor(c) {
- const C = CONSTRUCTORS[c];
- if (C)
- return C;
- throw new Error(`invalid "instanceof" keyword value ${c}`);
- }
- exports.default = getDef;
- module.exports = getDef;
- //# sourceMappingURL=instanceof.js.map
|