123456789101112131415161718192021222324252627282930313233343536 |
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- const codegen_1 = require("../../compile/codegen");
- const ucs2length_1 = require("../../compile/ucs2length");
- const error = {
- message({ keyword, schemaCode }) {
- const comp = keyword === "maxLength" ? "more" : "fewer";
- return codegen_1.str `should NOT have ${comp} than ${schemaCode} characters`;
- },
- params: ({ schemaCode }) => codegen_1._ `{limit: ${schemaCode}}`,
- };
- const def = {
- keyword: ["maxLength", "minLength"],
- type: "string",
- schemaType: "number",
- $data: true,
- error,
- code(cxt) {
- const { keyword, data, schemaCode, it } = cxt;
- const op = keyword === "maxLength" ? codegen_1.operators.GT : codegen_1.operators.LT;
- let len;
- if (it.opts.unicode === false) {
- len = codegen_1._ `${data}.length`;
- }
- else {
- const u2l = cxt.gen.scopeValue("func", {
- ref: ucs2length_1.default,
- code: codegen_1._ `require("ajv/dist/compile/ucs2length").default`,
- });
- len = codegen_1._ `${u2l}(${data})`;
- }
- cxt.fail$data(codegen_1._ `${len} ${op} ${schemaCode}`);
- },
- };
- exports.default = def;
- //# sourceMappingURL=limitLength.js.map
|