UNPKG

@slightning/anything-to-string

Version:
65 lines (64 loc) 2.27 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.MaximumArrayRule = exports.MajorArrayRule = exports.LesserArrayRule = exports.MinimumArrayRule = void 0; const utils_1 = require("../utils"); const anything_1 = require("./anything"); const object_1 = require("./object"); class MinimumArrayRule { constructor() { this.test = Array.isArray; } toString(data, __config, __context) { return `Array(${data.length})`; } } exports.MinimumArrayRule = MinimumArrayRule; class LesserArrayRule { constructor() { this.test = Array.isArray; } prepare(data, config, context) { for (const value of data) { if (value != undefined) { new anything_1.AnythingRule().prepare(value, config, context); } } } toString(data, config, context) { if (data.length == 0) { return "Array []"; } let result = "Array [\n"; result += (0 in data ? new anything_1.AnythingRule().toString(data[0], config, context) : "None").split("\n").map((line) => `${(0, utils_1.getIndentString)(config)}${line}`).join("\n"); for (let i = 1; i < data.length; i++) { result += `,\n${(i in data ? new anything_1.AnythingRule().toString(data[i], config, context) : "None").split("\n").map((line) => `${(0, utils_1.getIndentString)(config)}${line}`).join("\n")}`; } result += "\n]"; return result; } } exports.LesserArrayRule = LesserArrayRule; class MajorArrayRule { constructor() { this.test = Array.isArray; } prepare(data, config, context) { new object_1.MajorObjectRule().prepare(data, config, context); } toString(data, config, context) { return new object_1.MajorObjectRule().toString(data, config, context); } } exports.MajorArrayRule = MajorArrayRule; class MaximumArrayRule { constructor() { this.test = Array.isArray; } prepare(data, config, context) { new object_1.MaximumObjectRule().prepare(data, config, context); } toString(data, config, context) { return new object_1.MajorObjectRule().toString(data, config, context); } } exports.MaximumArrayRule = MaximumArrayRule;