@dasch-swiss/dsp-js
Version:
TypeScript client library for DSP-API
70 lines • 2.49 kB
JavaScript
var SubListNodeConverter_1;
import { __decorate, __metadata } from "tslib";
import { JsonConvert, JsonConverter, JsonObject, JsonProperty, OperationMode, PropertyMatchingRule, ValueCheckingMode, } from 'json2typescript';
import { Constants } from '../Constants';
import { IdConverter } from '../custom-converters/id-converter';
import { ListNodeCommentsConverter } from '../custom-converters/list-node-comments-converter';
/**
* @category Internal
*/
let SubListNodeConverter = class SubListNodeConverter {
static { SubListNodeConverter_1 = this; }
static { this.jsonConvert = new JsonConvert(OperationMode.ENABLE, ValueCheckingMode.DISALLOW_NULL, false, PropertyMatchingRule.CASE_STRICT); }
serialize(subclasses) { }
deserialize(subnodes) {
let children;
if (Array.isArray(subnodes)) {
children = subnodes;
}
else {
children = [subnodes];
}
return children.map(child => SubListNodeConverter_1.jsonConvert.deserialize(child, ListNodeV2));
}
};
SubListNodeConverter = SubListNodeConverter_1 = __decorate([
JsonConverter
], SubListNodeConverter);
export { SubListNodeConverter };
/**
* @category Model V2
*/
let ListNodeV2 = class ListNodeV2 {
constructor() {
this.id = '';
this.label = '';
this.comments = [];
this.isRootNode = false;
this.hasRootNode = undefined;
this.children = [];
}
};
__decorate([
JsonProperty('@id', String),
__metadata("design:type", Object)
], ListNodeV2.prototype, "id", void 0);
__decorate([
JsonProperty(Constants.Label, String),
__metadata("design:type", Object)
], ListNodeV2.prototype, "label", void 0);
__decorate([
JsonProperty(Constants.Comment, ListNodeCommentsConverter, true),
__metadata("design:type", Array)
], ListNodeV2.prototype, "comments", void 0);
__decorate([
JsonProperty(Constants.IsRootNode, Boolean, true),
__metadata("design:type", Object)
], ListNodeV2.prototype, "isRootNode", void 0);
__decorate([
JsonProperty(Constants.HasRootNode, IdConverter, true),
__metadata("design:type", String)
], ListNodeV2.prototype, "hasRootNode", void 0);
__decorate([
JsonProperty(Constants.HasSubListNode, SubListNodeConverter, true),
__metadata("design:type", Array)
], ListNodeV2.prototype, "children", void 0);
ListNodeV2 = __decorate([
JsonObject('ListNodeV2')
], ListNodeV2);
export { ListNodeV2 };
//# sourceMappingURL=list-node-v2.js.map