@asoftwareworld/form-builder
Version:
ASW Form Builder helps you with rapid development and designed web forms which includes several controls. The key feature of Form Builder is to make your content attractive and effective. We can customize our control at run time and preview the same befor
56 lines • 6.64 kB
JavaScript
/**
* @license
* Copyright ASW (A Software World) All Rights Reserved.
*
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file
*/
export class CropperSettings {
// From options
format = 'png';
maintainAspectRatio = true;
transform = {};
aspectRatio = 1;
resizeToWidth = 0;
resizeToHeight = 0;
cropperMinWidth = 0;
cropperMinHeight = 0;
cropperMaxHeight = 0;
cropperMaxWidth = 0;
cropperStaticWidth = 0;
cropperStaticHeight = 0;
canvasRotation = 0;
initialStepSize = 3;
roundCropper = false;
onlyScaleDown = false;
imageQuality = 92;
autoCrop = true;
backgroundColor = null;
containWithinAspectRatio = false;
hideResizeSquares = false;
alignImage = 'center';
// Internal
cropperScaledMinWidth = 20;
cropperScaledMinHeight = 20;
cropperScaledMaxWidth = 20;
cropperScaledMaxHeight = 20;
stepSize = this.initialStepSize;
setOptions(options) {
Object.keys(options)
.filter((k) => k in this)
.forEach((k) => this[k] = options[k]);
this.validateOptions();
}
setOptionsFromChanges(changes) {
Object.keys(changes)
.filter((k) => k in this)
.forEach((k) => this[k] = changes[k].currentValue);
this.validateOptions();
}
validateOptions() {
if (this.maintainAspectRatio && !this.aspectRatio) {
throw new Error('`aspectRatio` should > 0 when `maintainAspectRatio` is enabled');
}
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JvcHBlci5zZXR0aW5ncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2ltYWdlLWNyb3AvaW50ZXJmYWNlcy9jcm9wcGVyLnNldHRpbmdzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQU1ILE1BQU0sT0FBTyxlQUFlO0lBRXhCLGVBQWU7SUFDZixNQUFNLEdBQWlCLEtBQUssQ0FBQztJQUM3QixtQkFBbUIsR0FBRyxJQUFJLENBQUM7SUFDM0IsU0FBUyxHQUFtQixFQUFFLENBQUM7SUFDL0IsV0FBVyxHQUFHLENBQUMsQ0FBQztJQUNoQixhQUFhLEdBQUcsQ0FBQyxDQUFDO0lBQ2xCLGNBQWMsR0FBRyxDQUFDLENBQUM7SUFDbkIsZUFBZSxHQUFHLENBQUMsQ0FBQztJQUNwQixnQkFBZ0IsR0FBRyxDQUFDLENBQUM7SUFDckIsZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDO0lBQ3JCLGVBQWUsR0FBRyxDQUFDLENBQUM7SUFDcEIsa0JBQWtCLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZCLG1CQUFtQixHQUFHLENBQUMsQ0FBQztJQUN4QixjQUFjLEdBQUcsQ0FBQyxDQUFDO0lBQ25CLGVBQWUsR0FBRyxDQUFDLENBQUM7SUFDcEIsWUFBWSxHQUFHLEtBQUssQ0FBQztJQUNyQixhQUFhLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLFlBQVksR0FBRyxFQUFFLENBQUM7SUFDbEIsUUFBUSxHQUFHLElBQUksQ0FBQztJQUNoQixlQUFlLEdBQWtCLElBQUksQ0FBQztJQUN0Qyx3QkFBd0IsR0FBRyxLQUFLLENBQUM7SUFDakMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO0lBQzFCLFVBQVUsR0FBc0IsUUFBUSxDQUFDO0lBRXpDLFdBQVc7SUFDWCxxQkFBcUIsR0FBRyxFQUFFLENBQUM7SUFDM0Isc0JBQXNCLEdBQUcsRUFBRSxDQUFDO0lBQzVCLHFCQUFxQixHQUFHLEVBQUUsQ0FBQztJQUMzQixzQkFBc0IsR0FBRyxFQUFFLENBQUM7SUFDNUIsUUFBUSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7SUFFaEMsVUFBVSxDQUFDLE9BQWdDO1FBQ3ZDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO2FBQ2YsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDO2FBQ3hCLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUUsSUFBWSxDQUFDLENBQUMsQ0FBQyxHQUFJLE9BQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQscUJBQXFCLENBQUMsT0FBc0I7UUFDeEMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7YUFDZixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUM7YUFDeEIsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBRSxJQUFZLENBQUMsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ2hFLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRU8sZUFBZTtRQUNuQixJQUFJLElBQUksQ0FBQyxtQkFBbUIsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNoRCxNQUFNLElBQUksS0FBSyxDQUFDLGdFQUFnRSxDQUFDLENBQUM7UUFDdEYsQ0FBQztJQUNMLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBAbGljZW5zZVxyXG4gKiBDb3B5cmlnaHQgQVNXIChBIFNvZnR3YXJlIFdvcmxkKSBBbGwgUmlnaHRzIFJlc2VydmVkLlxyXG4gKlxyXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxyXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlXHJcbiAqL1xyXG5cclxuaW1wb3J0IHsgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDcm9wcGVyT3B0aW9ucywgT3V0cHV0Rm9ybWF0IH0gZnJvbSAnLi9jcm9wcGVyLW9wdGlvbnMuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgSW1hZ2VUcmFuc2Zvcm0gfSBmcm9tICcuL2ltYWdlLXRyYW5zZm9ybS5pbnRlcmZhY2UnO1xyXG5cclxuZXhwb3J0IGNsYXNzIENyb3BwZXJTZXR0aW5ncyB7XHJcblxyXG4gICAgLy8gRnJvbSBvcHRpb25zXHJcbiAgICBmb3JtYXQ6IE91dHB1dEZvcm1hdCA9ICdwbmcnO1xyXG4gICAgbWFpbnRhaW5Bc3BlY3RSYXRpbyA9IHRydWU7XHJcbiAgICB0cmFuc2Zvcm06IEltYWdlVHJhbnNmb3JtID0ge307XHJcbiAgICBhc3BlY3RSYXRpbyA9IDE7XHJcbiAgICByZXNpemVUb1dpZHRoID0gMDtcclxuICAgIHJlc2l6ZVRvSGVpZ2h0ID0gMDtcclxuICAgIGNyb3BwZXJNaW5XaWR0aCA9IDA7XHJcbiAgICBjcm9wcGVyTWluSGVpZ2h0ID0gMDtcclxuICAgIGNyb3BwZXJNYXhIZWlnaHQgPSAwO1xyXG4gICAgY3JvcHBlck1heFdpZHRoID0gMDtcclxuICAgIGNyb3BwZXJTdGF0aWNXaWR0aCA9IDA7XHJcbiAgICBjcm9wcGVyU3RhdGljSGVpZ2h0ID0gMDtcclxuICAgIGNhbnZhc1JvdGF0aW9uID0gMDtcclxuICAgIGluaXRpYWxTdGVwU2l6ZSA9IDM7XHJcbiAgICByb3VuZENyb3BwZXIgPSBmYWxzZTtcclxuICAgIG9ubHlTY2FsZURvd24gPSBmYWxzZTtcclxuICAgIGltYWdlUXVhbGl0eSA9IDkyO1xyXG4gICAgYXV0b0Nyb3AgPSB0cnVlO1xyXG4gICAgYmFja2dyb3VuZENvbG9yOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcclxuICAgIGNvbnRhaW5XaXRoaW5Bc3BlY3RSYXRpbyA9IGZhbHNlO1xyXG4gICAgaGlkZVJlc2l6ZVNxdWFyZXMgPSBmYWxzZTtcclxuICAgIGFsaWduSW1hZ2U6ICdsZWZ0JyB8ICdjZW50ZXInID0gJ2NlbnRlcic7XHJcblxyXG4gICAgLy8gSW50ZXJuYWxcclxuICAgIGNyb3BwZXJTY2FsZWRNaW5XaWR0aCA9IDIwO1xyXG4gICAgY3JvcHBlclNjYWxlZE1pbkhlaWdodCA9IDIwO1xyXG4gICAgY3JvcHBlclNjYWxlZE1heFdpZHRoID0gMjA7XHJcbiAgICBjcm9wcGVyU2NhbGVkTWF4SGVpZ2h0ID0gMjA7XHJcbiAgICBzdGVwU2l6ZSA9IHRoaXMuaW5pdGlhbFN0ZXBTaXplO1xyXG5cclxuICAgIHNldE9wdGlvbnMob3B0aW9uczogUGFydGlhbDxDcm9wcGVyT3B0aW9ucz4pOiB2b2lkIHtcclxuICAgICAgICBPYmplY3Qua2V5cyhvcHRpb25zKVxyXG4gICAgICAgICAgICAuZmlsdGVyKChrKSA9PiBrIGluIHRoaXMpXHJcbiAgICAgICAgICAgIC5mb3JFYWNoKChrKSA9PiAodGhpcyBhcyBhbnkpW2tdID0gKG9wdGlvbnMgYXMgYW55KVtrXSk7XHJcbiAgICAgICAgdGhpcy52YWxpZGF0ZU9wdGlvbnMoKTtcclxuICAgIH1cclxuXHJcbiAgICBzZXRPcHRpb25zRnJvbUNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgICAgIE9iamVjdC5rZXlzKGNoYW5nZXMpXHJcbiAgICAgICAgICAgIC5maWx0ZXIoKGspID0+IGsgaW4gdGhpcylcclxuICAgICAgICAgICAgLmZvckVhY2goKGspID0+ICh0aGlzIGFzIGFueSlba10gPSBjaGFuZ2VzW2tdLmN1cnJlbnRWYWx1ZSk7XHJcbiAgICAgICAgdGhpcy52YWxpZGF0ZU9wdGlvbnMoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIHZhbGlkYXRlT3B0aW9ucygpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5tYWludGFpbkFzcGVjdFJhdGlvICYmICF0aGlzLmFzcGVjdFJhdGlvKSB7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignYGFzcGVjdFJhdGlvYCBzaG91bGQgPiAwIHdoZW4gYG1haW50YWluQXNwZWN0UmF0aW9gIGlzIGVuYWJsZWQnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19