@umbraco/json-models-builders
Version:
Builders and models for Umbraco Sites
70 lines • 2.39 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.MultiNodeTreePickerDataTypeBuilder = void 0;
const dataTypeBuilder_1 = require("./dataTypeBuilder");
const multiNodeTreePickerStartNodeBuilder_1 = require("./multiNodeTreePickerBuilder/multiNodeTreePickerStartNodeBuilder");
class MultiNodeTreePickerDataTypeBuilder extends dataTypeBuilder_1.DataTypeBuilder {
minNumber;
maxNumber;
ignoreUserStartNodes;
filterIds;
multiNodeTreePickerStartNodeBuilder;
constructor() {
super();
this.editorAlias = 'Umbraco.MultiNodeTreePicker';
this.editorUiAlias = 'Umb.PropertyEditorUi.ContentPicker';
}
withMinNumber(minNumber) {
this.minNumber = minNumber;
return this;
}
withMaxNumber(maxNumber) {
this.maxNumber = maxNumber;
return this;
}
withIgnoreUserStartNodes(ignoreUserStartNodes) {
this.ignoreUserStartNodes = ignoreUserStartNodes;
return this;
}
withFilterIds(filterIds) {
this.filterIds = filterIds;
return this;
}
addStartNode() {
const builder = new multiNodeTreePickerStartNodeBuilder_1.MultiNodeTreePickerStartNodeBuilder(this);
this.multiNodeTreePickerStartNodeBuilder = builder;
return builder;
}
getValues() {
let values = [];
values.push({
alias: 'minNumber',
value: this.minNumber !== undefined ? this.minNumber : 0
});
values.push({
alias: 'maxNumber',
value: this.maxNumber !== undefined ? this.maxNumber : 0
});
if (this.ignoreUserStartNodes !== undefined) {
values.push({
alias: 'ignoreUserStartNodes',
value: this.ignoreUserStartNodes
});
}
if (this.filterIds !== undefined) {
values.push({
alias: 'filter',
value: this.filterIds
});
}
if (this.multiNodeTreePickerStartNodeBuilder) {
values.push({
alias: 'startNode',
value: this.multiNodeTreePickerStartNodeBuilder.getValues()
});
}
return values;
}
}
exports.MultiNodeTreePickerDataTypeBuilder = MultiNodeTreePickerDataTypeBuilder;
//# sourceMappingURL=multiNodeTreePickerDataTypeBuilder.js.map