UNPKG

diffusion

Version:

Diffusion JavaScript client

77 lines (76 loc) 2.1 kB
"use strict"; /** * @module diffusion.datatypes.RecordV2 */ Object.defineProperty(exports, "__esModule", { value: true }); exports.RecordV2BuilderImpl = void 0; var recordv2_impl_1 = require("./../../data/record/recordv2-impl"); var RecordV2Writer = require("./../../data/record/recordv2-writer"); /** * Implementation of {@link RecordV2Builder} */ var RecordV2BuilderImpl = /** @class */ (function () { function RecordV2BuilderImpl() { /** * The record data */ this.records = []; } /** * @inheritdoc */ RecordV2BuilderImpl.prototype.addFields = function (field) { var fields = []; for (var _i = 1; _i < arguments.length; _i++) { fields[_i - 1] = arguments[_i]; } if (arguments.length > 1) { fields.unshift(field); } else { fields = field; } if (fields) { var current = this.records.length ? this.records[this.records.length - 1] : []; this.records[Math.max(this.records.length - 1, 0)] = current.concat(fields); } return this; }; /** * @inheritdoc */ RecordV2BuilderImpl.prototype.addRecord = function (field) { var fields = []; for (var _i = 1; _i < arguments.length; _i++) { fields[_i - 1] = arguments[_i]; } if (arguments.length > 1) { fields.unshift(field); } else { fields = field; } if (fields) { this.records.push([].concat(fields)); } else { this.records.push([]); } return this; }; /** * @inheritdoc */ RecordV2BuilderImpl.prototype.clear = function () { this.records = []; return this; }; /** * @inheritdoc */ RecordV2BuilderImpl.prototype.build = function () { return new recordv2_impl_1.RecordV2Impl(RecordV2Writer.toBuffer(this.records)); }; return RecordV2BuilderImpl; }()); exports.RecordV2BuilderImpl = RecordV2BuilderImpl;