UNPKG

@umbraco/json-models-builders

Version:
107 lines 3.49 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.MediaPickerDataTypeBuilder = void 0; const dataTypeBuilder_1 = require("./dataTypeBuilder"); const mediaPickerBuilder_1 = require("./mediaPickerBuilder"); class MediaPickerDataTypeBuilder extends dataTypeBuilder_1.DataTypeBuilder { filter; multiple; minValue; maxValue; enableLocalFocalPoint; ignoreUserStartNodes; startNodeId; mediaPickerCropBuilder; constructor() { super(); this.editorAlias = "Umbraco.MediaPicker3"; this.editorUiAlias = "Umb.PropertyEditorUi.MediaPicker"; this.mediaPickerCropBuilder = []; } withFilter(filter) { this.filter = filter; return this; } withMultiple(multiple) { this.multiple = multiple; return this; } withMinValue(minValue) { this.minValue = minValue; return this; } withMaxValue(maxValue) { this.maxValue = maxValue; return this; } withEnableLocalFocalPoint(enableLocalFocalPoint) { this.enableLocalFocalPoint = enableLocalFocalPoint; return this; } withIgnoreUserStartNodes(ignoreUserStartNodes) { this.ignoreUserStartNodes = ignoreUserStartNodes; return this; } withStartNodeId(startNodeId) { this.startNodeId = startNodeId; return this; } addCrop() { const builder = new mediaPickerBuilder_1.MediaPickerCropBuilder(this); this.mediaPickerCropBuilder.push(builder); return builder; } getValues() { let values = []; if (this.filter !== undefined) { values.push({ alias: "filter", value: this.filter }); } if (this.multiple !== undefined) { values.push({ alias: "multiple", value: this.multiple !== undefined ? this.multiple : false }); } if (this.minValue !== undefined || this.maxValue !== undefined) { values.push({ alias: "validationLimit", value: { min: this.minValue !== undefined ? this.minValue : "", max: this.maxValue !== undefined ? this.maxValue : "" } }); } if (this.enableLocalFocalPoint !== undefined) { values.push({ alias: "enableLocalFocalPoint", value: this.enableLocalFocalPoint !== undefined ? this.enableLocalFocalPoint : false }); } if (this.ignoreUserStartNodes !== undefined) { values.push({ alias: "ignoreUserStartNodes", value: this.ignoreUserStartNodes !== undefined ? this.ignoreUserStartNodes : false }); } if (this.startNodeId !== undefined) { values.push({ alias: "startNodeId", value: this.startNodeId }); } if (this.mediaPickerCropBuilder && this.mediaPickerCropBuilder.length > 0) { values.push({ alias: "crops", value: this.mediaPickerCropBuilder.map((builder) => { return builder.getValues(); }) }); } return values; } } exports.MediaPickerDataTypeBuilder = MediaPickerDataTypeBuilder; //# sourceMappingURL=mediaPickerDataTypeBuilder.js.map