ngx-croppie
Version:
Simple angular wrapper around croppie (WIP)
153 lines (145 loc) • 10.4 kB
JavaScript
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('croppie'), require('@angular/common')) :
typeof define === 'function' && define.amd ? define('ngx-croppie', ['exports', '@angular/core', 'croppie', '@angular/common'], factory) :
(factory((global['ngx-croppie'] = {}),global.ng.core,null,global.ng.common));
}(this, (function (exports,core,Croppie,common) { 'use strict';
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
var NgxCroppieComponent = /** @class */ (function () {
function NgxCroppieComponent() {
this.outputFormatOptions = { type: 'base64', size: 'viewport' };
this.defaultZoom = 0;
this.result = new core.EventEmitter();
}
Object.defineProperty(NgxCroppieComponent.prototype, "imageUrl", {
get: /**
* @return {?}
*/ function () {
return this.imgUrl;
},
set: /**
* @param {?} url
* @return {?}
*/ function (url) {
if (this.imgUrl === url) {
return;
}
this.imgUrl = url;
if (this._croppie) {
this.bindToCroppie(this.imageUrl, this.points, this.defaultZoom);
}
},
enumerable: true,
configurable: true
});
/**
* @return {?}
*/
NgxCroppieComponent.prototype.ngOnInit = /**
* @return {?}
*/
function () {
this._croppie = new Croppie(this.imageEdit.nativeElement, this.croppieOptions);
this.bindToCroppie(this.imageUrl, this.points, this.defaultZoom);
};
/**
* @param {?} url
* @param {?} points
* @param {?} zoom
* @return {?}
*/
NgxCroppieComponent.prototype.bindToCroppie = /**
* @param {?} url
* @param {?} points
* @param {?} zoom
* @return {?}
*/
function (url, points, zoom) {
this._croppie.bind({ url: url, points: points, zoom: zoom });
};
/**
* @return {?}
*/
NgxCroppieComponent.prototype.newResult = /**
* @return {?}
*/
function () {
var _this = this;
this._croppie.result(this.outputFormatOptions).then(function (res) {
_this.result.emit(res);
});
};
/**
* @param {?} degrees
* @return {?}
*/
NgxCroppieComponent.prototype.rotate = /**
* @param {?} degrees
* @return {?}
*/
function (degrees) {
this._croppie.rotate(degrees);
};
/**
* @return {?}
*/
NgxCroppieComponent.prototype.get = /**
* @return {?}
*/
function () {
return this._croppie.get();
};
NgxCroppieComponent.decorators = [
{ type: core.Component, args: [{
// tslint:disable-next-line:component-selector
selector: 'ngx-croppie',
template: "<div #imageEdit (update)=\"newResult()\"></div>"
},] },
];
/** @nocollapse */
NgxCroppieComponent.propDecorators = {
"imageEdit": [{ type: core.ViewChild, args: ['imageEdit',] },],
"croppieOptions": [{ type: core.Input },],
"points": [{ type: core.Input },],
"outputFormatOptions": [{ type: core.Input },],
"defaultZoom": [{ type: core.Input },],
"result": [{ type: core.Output },],
"imageUrl": [{ type: core.Input },],
};
return NgxCroppieComponent;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
var NgxCroppieModule = /** @class */ (function () {
function NgxCroppieModule() {
}
NgxCroppieModule.decorators = [
{ type: core.NgModule, args: [{
imports: [
common.CommonModule
],
declarations: [NgxCroppieComponent],
exports: [
NgxCroppieComponent
]
},] },
];
return NgxCroppieModule;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
exports.NgxCroppieComponent = NgxCroppieComponent;
exports.NgxCroppieModule = NgxCroppieModule;
Object.defineProperty(exports, '__esModule', { value: true });
})));
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWNyb3BwaWUudW1kLmpzLm1hcCIsInNvdXJjZXMiOlsibmc6Ly9uZ3gtY3JvcHBpZS9zcmMvYXBwL21vZHVsZXMvbmd4LWNyb3BwaWUvbmd4LWNyb3BwaWUuY29tcG9uZW50LnRzIiwibmc6Ly9uZ3gtY3JvcHBpZS9zcmMvYXBwL21vZHVsZXMvbmd4LWNyb3BwaWUvbmd4LWNyb3BwaWUubW9kdWxlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgRXZlbnRFbWl0dGVyLCBPdXRwdXQsIFZpZXdDaGlsZCwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgKiBhcyBDcm9wcGllIGZyb20gJ2Nyb3BwaWUnO1xuaW1wb3J0IHsgQ3JvcHBpZU9wdGlvbnMsIFJlc3VsdE9wdGlvbnMsIENyb3BEYXRhIH0gZnJvbSAnY3JvcHBpZSc7XG5cbmV4cG9ydCB0eXBlIFR5cGUgPSAnY2FudmFzJyB8ICdiYXNlNjQnIHwgJ2h0bWwnIHwgJ2Jsb2InIHwgJ3Jhd2NhbnZhcyc7XG5cbkBDb21wb25lbnQoe1xuXHQvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6Y29tcG9uZW50LXNlbGVjdG9yXG5cdHNlbGVjdG9yOiAnbmd4LWNyb3BwaWUnLFxuXHR0ZW1wbGF0ZTogYDxkaXYgI2ltYWdlRWRpdCAodXBkYXRlKT1cIm5ld1Jlc3VsdCgpXCI+PC9kaXY+YFxufSlcbmV4cG9ydCBjbGFzcyBOZ3hDcm9wcGllQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblx0QFZpZXdDaGlsZCgnaW1hZ2VFZGl0JykgaW1hZ2VFZGl0OiBFbGVtZW50UmVmO1xuXHRASW5wdXQoKSBjcm9wcGllT3B0aW9uczogQ3JvcHBpZU9wdGlvbnM7XG5cdEBJbnB1dCgpIHBvaW50czogbnVtYmVyW107XG5cdEBJbnB1dCgpIG91dHB1dEZvcm1hdE9wdGlvbnM6IFJlc3VsdE9wdGlvbnMgPSB7IHR5cGU6ICdiYXNlNjQnLCBzaXplOiAndmlld3BvcnQnIH07XG5cdEBJbnB1dCgpIGRlZmF1bHRab29tID0gMDtcblx0QE91dHB1dCgpIHJlc3VsdDogRXZlbnRFbWl0dGVyPHN0cmluZyB8IEhUTUxFbGVtZW50IHwgQmxvYiB8IEhUTUxDYW52YXNFbGVtZW50PlxuXHRcdD0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmcgfCBIVE1MRWxlbWVudCB8IEJsb2IgfCBIVE1MQ2FudmFzRWxlbWVudD4oKTtcblx0cHJpdmF0ZSBfY3JvcHBpZTogQ3JvcHBpZTtcblx0cHJpdmF0ZSBpbWdVcmw6IHN0cmluZztcblx0Z2V0IGltYWdlVXJsKCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIHRoaXMuaW1nVXJsO1xuXHR9XG5cdEBJbnB1dCgpIHNldCBpbWFnZVVybCh1cmw6IHN0cmluZykge1xuXHRcdGlmKHRoaXMuaW1nVXJsID09PSB1cmwpIHsgcmV0dXJuOyB9XG5cdFx0dGhpcy5pbWdVcmwgPSB1cmw7XG5cdFx0aWYgKHRoaXMuX2Nyb3BwaWUpIHtcblx0XHRcdHRoaXMuYmluZFRvQ3JvcHBpZSh0aGlzLmltYWdlVXJsLCB0aGlzLnBvaW50cywgdGhpcy5kZWZhdWx0Wm9vbSk7XG5cdFx0fVxuXHR9XG5cblx0bmdPbkluaXQoKTogdm9pZCB7XG5cdFx0dGhpcy5fY3JvcHBpZSA9IG5ldyBDcm9wcGllKHRoaXMuaW1hZ2VFZGl0Lm5hdGl2ZUVsZW1lbnQsIHRoaXMuY3JvcHBpZU9wdGlvbnMpO1xuXHRcdHRoaXMuYmluZFRvQ3JvcHBpZSh0aGlzLmltYWdlVXJsLCB0aGlzLnBvaW50cywgdGhpcy5kZWZhdWx0Wm9vbSk7XG5cdH1cblxuXHRwcml2YXRlIGJpbmRUb0Nyb3BwaWUodXJsOiBzdHJpbmcsIHBvaW50czogbnVtYmVyW10sIHpvb206IG51bWJlcil7XG5cdFx0dGhpcy5fY3JvcHBpZS5iaW5kKHsgdXJsLCBwb2ludHMsIHpvb20gfSk7XG5cdH1cblxuXHRuZXdSZXN1bHQoKSB7XG5cdFx0dGhpcy5fY3JvcHBpZS5yZXN1bHQodGhpcy5vdXRwdXRGb3JtYXRPcHRpb25zKS50aGVuKChyZXMpID0+IHtcblx0XHRcdHRoaXMucmVzdWx0LmVtaXQocmVzKTtcblx0XHR9KTtcblx0fVxuXG5cdHJvdGF0ZShkZWdyZWVzOiA5MCB8IDE4MCB8IDI3MCB8IC05MCB8IC0xODAgfCAtMjcwKSB7XG5cdFx0dGhpcy5fY3JvcHBpZS5yb3RhdGUoZGVncmVlcyk7XG5cdH1cblxuXHRnZXQoKTogQ3JvcERhdGEge1xuXHRcdHJldHVybiB0aGlzLl9jcm9wcGllLmdldCgpO1xuXHR9XG5cbn1cbiIsImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmd4Q3JvcHBpZUNvbXBvbmVudCB9IGZyb20gJy4vbmd4LWNyb3BwaWUuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZVxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtOZ3hDcm9wcGllQ29tcG9uZW50XSxcbiAgZXhwb3J0czogW1xuICAgIE5neENyb3BwaWVDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBOZ3hDcm9wcGllTW9kdWxlIHsgfVxuIl0sIm5hbWVzIjpbIkV2ZW50RW1pdHRlciIsIkNvbXBvbmVudCIsIlZpZXdDaGlsZCIsIklucHV0IiwiT3V0cHV0IiwiTmdNb2R1bGUiLCJDb21tb25Nb2R1bGUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQTs7dUNBZ0IrQyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTsrQkFDM0QsQ0FBQzswQkFFckIsSUFBSUEsaUJBQVksRUFBbUQ7O1FBR3RFLHNCQUFJLHlDQUFROzs7Z0JBQVo7Z0JBQ0MsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO2FBQ25COzs7OzBCQUNxQixHQUFXO2dCQUNoQyxJQUFHLElBQUksQ0FBQyxNQUFNLEtBQUssR0FBRyxFQUFFO29CQUFFLE9BQU87aUJBQUU7Z0JBQ25DLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDO2dCQUNsQixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7b0JBQ2xCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztpQkFDakU7Ozs7V0FORDs7OztRQVNELHNDQUFROzs7WUFBUjtnQkFDQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztnQkFDL0UsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2FBQ2pFOzs7Ozs7O1FBRU8sMkNBQWE7Ozs7OztzQkFBQyxHQUFXLEVBQUUsTUFBZ0IsRUFBRSxJQUFZO2dCQUNoRSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsS0FBQSxFQUFFLE1BQU0sUUFBQSxFQUFFLElBQUksTUFBQSxFQUFFLENBQUMsQ0FBQzs7Ozs7UUFHM0MsdUNBQVM7OztZQUFUO2dCQUFBLGlCQUlDO2dCQUhBLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFDLEdBQUc7b0JBQ3ZELEtBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2lCQUN0QixDQUFDLENBQUM7YUFDSDs7Ozs7UUFFRCxvQ0FBTTs7OztZQUFOLFVBQU8sT0FBMkM7Z0JBQ2pELElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQzlCOzs7O1FBRUQsaUNBQUc7OztZQUFIO2dCQUNDLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQzthQUMzQjs7b0JBL0NEQyxjQUFTLFNBQUM7O3dCQUVWLFFBQVEsRUFBRSxhQUFhO3dCQUN2QixRQUFRLEVBQUUsaURBQStDO3FCQUN6RDs7OztrQ0FFQ0MsY0FBUyxTQUFDLFdBQVc7dUNBQ3JCQyxVQUFLOytCQUNMQSxVQUFLOzRDQUNMQSxVQUFLO29DQUNMQSxVQUFLOytCQUNMQyxXQUFNO2lDQU9ORCxVQUFLOztrQ0F6QlA7Ozs7Ozs7QUNBQTs7OztvQkFJQ0UsYUFBUSxTQUFDO3dCQUNSLE9BQU8sRUFBRTs0QkFDUEMsbUJBQVk7eUJBQ2I7d0JBQ0QsWUFBWSxFQUFFLENBQUMsbUJBQW1CLENBQUM7d0JBQ25DLE9BQU8sRUFBRTs0QkFDUCxtQkFBbUI7eUJBQ3BCO3FCQUNGOzsrQkFaRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OyJ9