@slightning/anything-to-string
Version:
Converts anything to a string.
65 lines (64 loc) • 2.27 kB
JavaScript
;
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;