UNPKG

@ant-basement/core

Version:

Ant Basement JavaScript SDK Core

94 lines 6.43 kB
(function (factory) { if (typeof module === "object" && typeof module.exports === "object") { var v = factory(require, exports); if (v !== undefined) module.exports = v; } else if (typeof define === "function" && define.amd) { define(["require", "exports", "../../constant"], factory); } })(function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const constant_1 = require("../../constant"); function ruleOfField(_, value) { function validateField(name) { if (/[\.\$]/.test(name)) { return constant_1.ErrorMessages.ILLEGAL; } } if (Array.isArray(value)) { return undefined; } if (typeof value === 'string') { return validateField(value); } let result = null; for (const key of Object.keys(value)) { result = validateField(key); if (typeof result === 'string') { return result; } if (typeof value[key] === 'object') { return ruleOfField(_, value[key]); } } if (result === null) { return constant_1.ErrorMessages.INVALID_TYPE; } } exports.ruleOfField = ruleOfField; function ruleOfFields(_, value) { if (!Array.isArray(value)) { return constant_1.ErrorMessages.NOT_ARRAY; } let err; let i = 0; while (!err && i < value.length) { err = ruleOfField(null, value[i]); i++; } return err; } exports.ruleOfFields = ruleOfFields; function ruleOfDatabaseName(_, value) { if (typeof value !== 'string') { return constant_1.ErrorMessages.NOT_STRING; } if (value.trim().length === 0) { return constant_1.ErrorMessages.NOT_EMPTY; } if (value.length > constant_1.MAX_DB_NAME_LENGTH) { return constant_1.ErrorMessages.TOO_LONG; } if (/[\/\\\.\ \"\$]/.test(value)) { return constant_1.ErrorMessages.ILLEGAL; } if (constant_1.INVALID_DB_NAMES.indexOf(value) > -1) { return constant_1.ErrorMessages.SYSTEM; } } exports.ruleOfDatabaseName = ruleOfDatabaseName; function ruleOfCollectionName(_, value) { if (typeof value !== 'string') { return constant_1.ErrorMessages.NOT_STRING; } if (value.trim().length === 0) { return constant_1.ErrorMessages.NOT_EMPTY; } if (value.length > constant_1.MAX_ID_NAME_LENGTH) { return constant_1.ErrorMessages.TOO_LONG; } if (value.indexOf('$') > -1) { return constant_1.ErrorMessages.ILLEGAL; } const namespace = value.split('.').shift(); if (constant_1.INVALID_COLL_NAMES.indexOf(namespace) >= 0) { return constant_1.ErrorMessages.ILLEGAL; } if (!/^[_a-z]/i.test(value)) { return constant_1.ErrorMessages.ILLEGAL; } } exports.ruleOfCollectionName = ruleOfCollectionName; }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9uZ28uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdXRpbGl0eS9ydWxlcy9tb25nby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztJQUNBLDZDQU13QjtJQVF4QixTQUFnQixXQUFXLENBQUMsQ0FBQyxFQUFFLEtBQUs7UUFDbEMsU0FBUyxhQUFhLENBQUMsSUFBWTtZQUNqQyxJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ3ZCLE9BQU8sd0JBQWEsQ0FBQyxPQUFPLENBQUM7YUFDOUI7UUFDSCxDQUFDO1FBRUQsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3hCLE9BQU8sU0FBUyxDQUFDO1NBQ2xCO1FBQ0QsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUU7WUFDN0IsT0FBTyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDN0I7UUFFRCxJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDbEIsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3BDLE1BQU0sR0FBRyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7WUFFNUIsSUFBSSxPQUFPLE1BQU0sS0FBSyxRQUFRLEVBQUU7Z0JBQzlCLE9BQU8sTUFBTSxDQUFDO2FBQ2Y7WUFDRCxJQUFJLE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLFFBQVEsRUFBRTtnQkFDbEMsT0FBTyxXQUFXLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2FBQ25DO1NBQ0Y7UUFFRCxJQUFJLE1BQU0sS0FBSyxJQUFJLEVBQUU7WUFDbkIsT0FBTyx3QkFBYSxDQUFDLFlBQVksQ0FBQztTQUNuQztJQUNILENBQUM7SUE3QkQsa0NBNkJDO0lBUUQsU0FBZ0IsWUFBWSxDQUFDLENBQUMsRUFBRSxLQUFLO1FBQ25DLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3pCLE9BQU8sd0JBQWEsQ0FBQyxTQUFTLENBQUM7U0FDaEM7UUFFRCxJQUFJLEdBQUcsQ0FBQztRQUNSLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNWLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDL0IsR0FBRyxHQUFHLFdBQVcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDbEMsQ0FBQyxFQUFFLENBQUM7U0FDTDtRQUVELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQWJELG9DQWFDO0lBUUQsU0FBZ0Isa0JBQWtCLENBQUMsQ0FBQyxFQUFFLEtBQUs7UUFHekMsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUU7WUFDN0IsT0FBTyx3QkFBYSxDQUFDLFVBQVUsQ0FBQztTQUNqQztRQUVELElBQUksS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDN0IsT0FBTyx3QkFBYSxDQUFDLFNBQVMsQ0FBQztTQUNoQztRQUVELElBQUksS0FBSyxDQUFDLE1BQU0sR0FBRyw2QkFBa0IsRUFBRTtZQUNyQyxPQUFPLHdCQUFhLENBQUMsUUFBUSxDQUFDO1NBQy9CO1FBR0QsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDaEMsT0FBTyx3QkFBYSxDQUFDLE9BQU8sQ0FBQztTQUM5QjtRQUVELElBQUksMkJBQWdCLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFO1lBQ3hDLE9BQU8sd0JBQWEsQ0FBQyxNQUFNLENBQUM7U0FDN0I7SUFDSCxDQUFDO0lBdkJELGdEQXVCQztJQVFELFNBQWdCLG9CQUFvQixDQUFDLENBQUMsRUFBRSxLQUFLO1FBRzNDLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFO1lBQzdCLE9BQU8sd0JBQWEsQ0FBQyxVQUFVLENBQUM7U0FDakM7UUFFRCxJQUFJLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQzdCLE9BQU8sd0JBQWEsQ0FBQyxTQUFTLENBQUM7U0FDaEM7UUFFRCxJQUFJLEtBQUssQ0FBQyxNQUFNLEdBQUcsNkJBQWtCLEVBQUU7WUFDckMsT0FBTyx3QkFBYSxDQUFDLFFBQVEsQ0FBQztTQUMvQjtRQUVELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRTtZQUMzQixPQUFPLHdCQUFhLENBQUMsT0FBTyxDQUFDO1NBQzlCO1FBRUQsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQyxJQUFJLDZCQUFrQixDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDOUMsT0FBTyx3QkFBYSxDQUFDLE9BQU8sQ0FBQztTQUM5QjtRQUVELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzNCLE9BQU8sd0JBQWEsQ0FBQyxPQUFPLENBQUM7U0FDOUI7SUFDSCxDQUFDO0lBM0JELG9EQTJCQyJ9