UNPKG

ngx-pluto

Version:
187 lines 13.9 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Observable } from "rxjs/internal/Observable"; /** * @ignore */ // @dynamic var /** * @ignore */ // @dynamic Utils = /** @class */ (function () { function Utils() { } /** * @param {?} hex * @return {?} */ Utils.hexToRgb = /** * @param {?} hex * @return {?} */ function (hex) { /** @type {?} */ var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex); return result ? { r: parseInt(result[1], 16), g: parseInt(result[2], 16), b: parseInt(result[3], 16) } : null; }; /** * @return {?} */ Utils.ID = /** * @return {?} */ function () { // Math.random should be unique because of its seeding algorithm. // Convert it to base 36 (numbers + letters), and grab the first 9 characters // after the decimal. return '_' + Math.random().toString(36).substr(2, 9); }; /** * @param {?} a * @param {?} b * @return {?} */ Utils.objEqual = /** * @param {?} a * @param {?} b * @return {?} */ function (a, b) { // Create arrays of property names /** @type {?} */ var aProps = Object.getOwnPropertyNames(a); /** @type {?} */ var bProps = Object.getOwnPropertyNames(b); // If number of properties is different, // objects are not equivalent if (aProps.length != bProps.length) { return false; } for (var i = 0; i < aProps.length; i++) { /** @type {?} */ var propName = aProps[i]; // If values of same property are not equal, // objects are not equivalent if (a[propName] !== b[propName]) { return false; } } // If we made it this far, objects // are considered equivalent return true; }; /** * @param {?} value * @return {?} */ Utils.toBoolean = /** * @param {?} value * @return {?} */ function (value) { return value != null && "" + value !== 'false'; }; /** * @param {?} file * @param {?} maxWidth * @param {?} maxHeight * @return {?} */ Utils.checkImgWidthAndHeight = /** * @param {?} file * @param {?} maxWidth * @param {?} maxHeight * @return {?} */ function (file, maxWidth, maxHeight) { return Observable.create((/** * @param {?} observer * @return {?} */ function (observer) { /** @type {?} */ var isAllow = false; if (file) { /** @type {?} */ var reader = new FileReader(); reader.onload = (/** * @param {?} e * @return {?} */ function (e) { /** @type {?} */ var data = e.target.result; /** @type {?} */ var image = new Image(); image.onload = (/** * @return {?} */ function () { /** @type {?} */ var width = image.width; /** @type {?} */ var height = image.height; isAllow = width === maxWidth && height === maxHeight; observer.next(isAllow); observer.complete(); }); image.src = data; }); reader.readAsDataURL(file); } })); }; /** * @param {?} key * @param {?=} order * @return {?} */ Utils.compareValues = /** * @param {?} key * @param {?=} order * @return {?} */ function (key, order) { if (order === void 0) { order = 'asc'; } return (/** * @param {?} a * @param {?} b * @return {?} */ function innerSort(a, b) { if (!a.hasOwnProperty(key) || !b.hasOwnProperty(key)) { // property doesn't exist on either object return 0; } /** @type {?} */ var varA = (typeof a[key] === 'string') ? a[key].toUpperCase() : a[key]; /** @type {?} */ var varB = (typeof b[key] === 'string') ? b[key].toUpperCase() : b[key]; /** @type {?} */ var comparison = 0; if (varA > varB) { comparison = 1; } else if (varA < varB) { comparison = -1; } return ((order === 'desc') ? (comparison * -1) : comparison); }); }; return Utils; }()); /** * @ignore */ // @dynamic export { Utils }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtcGx1dG8vIiwic291cmNlcyI6WyJsaWIvY29tbW9uL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7O0FBTXREOzs7OztJQUFBO0lBNkZBLENBQUM7Ozs7O0lBNUZVLGNBQVE7Ozs7SUFBZixVQUFnQixHQUFHOztZQUNYLE1BQU0sR0FBRywyQ0FBMkMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO1FBQ2xFLE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQztZQUNaLENBQUMsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUMxQixDQUFDLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDMUIsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO1NBQzdCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNiLENBQUM7Ozs7SUFFTSxRQUFFOzs7SUFBVDtRQUNJLGlFQUFpRTtRQUNqRSw2RUFBNkU7UUFDN0UscUJBQXFCO1FBQ3JCLE9BQU8sR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN6RCxDQUFDOzs7Ozs7SUFFTSxjQUFROzs7OztJQUFmLFVBQWdCLENBQU0sRUFBRSxDQUFNOzs7WUFFdEIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUM7O1lBQ3RDLE1BQU0sR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDO1FBRTFDLHdDQUF3QztRQUN4Qyw2QkFBNkI7UUFDN0IsSUFBSSxNQUFNLENBQUMsTUFBTSxJQUFJLE1BQU0sQ0FBQyxNQUFNLEVBQUU7WUFDaEMsT0FBTyxLQUFLLENBQUM7U0FDaEI7UUFFRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTs7Z0JBQ2hDLFFBQVEsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDO1lBRXhCLDRDQUE0QztZQUM1Qyw2QkFBNkI7WUFDN0IsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFO2dCQUM3QixPQUFPLEtBQUssQ0FBQzthQUNoQjtTQUNKO1FBRUQsa0NBQWtDO1FBQ2xDLDRCQUE0QjtRQUM1QixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDOzs7OztJQUVNLGVBQVM7Ozs7SUFBaEIsVUFBaUIsS0FBVTtRQUN2QixPQUFPLEtBQUssSUFBSSxJQUFJLElBQUksS0FBRyxLQUFPLEtBQUssT0FBTyxDQUFDO0lBQ25ELENBQUM7Ozs7Ozs7SUFFTSw0QkFBc0I7Ozs7OztJQUE3QixVQUE4QixJQUFTLEVBQUUsUUFBZ0IsRUFBRSxTQUFpQjtRQUN4RSxPQUFPLFVBQVUsQ0FBQyxNQUFNOzs7O1FBQUMsVUFBQyxRQUFhOztnQkFDL0IsT0FBTyxHQUFHLEtBQUs7WUFDbkIsSUFBSSxJQUFJLEVBQUU7O29CQUNGLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBRTtnQkFDN0IsTUFBTSxDQUFDLE1BQU07Ozs7Z0JBQUcsVUFBQyxDQUFNOzt3QkFDZixJQUFJLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNOzt3QkFDdEIsS0FBSyxHQUFHLElBQUksS0FBSyxFQUFFO29CQUN2QixLQUFLLENBQUMsTUFBTTs7O29CQUFHOzs0QkFDUCxLQUFLLEdBQUcsS0FBSyxDQUFDLEtBQUs7OzRCQUNuQixNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU07d0JBQ3pCLE9BQU8sR0FBRyxLQUFLLEtBQUssUUFBUSxJQUFJLE1BQU0sS0FBSyxTQUFTLENBQUM7d0JBQ3JELFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7d0JBQ3ZCLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztvQkFDeEIsQ0FBQyxDQUFBLENBQUM7b0JBQ0YsS0FBSyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUM7Z0JBQ3JCLENBQUMsQ0FBQSxDQUFDO2dCQUVGLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDOUI7UUFDTCxDQUFDLEVBQUMsQ0FBQztJQUNQLENBQUM7Ozs7OztJQUVNLG1CQUFhOzs7OztJQUFwQixVQUFxQixHQUFXLEVBQUUsS0FBNkI7UUFBN0Isc0JBQUEsRUFBQSxhQUE2QjtRQUMzRDs7Ozs7UUFBTyxTQUFTLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ2xELDBDQUEwQztnQkFDMUMsT0FBTyxDQUFDLENBQUM7YUFDWjs7Z0JBRUssSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssUUFBUSxDQUFDO2dCQUNyQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDOztnQkFDN0IsSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssUUFBUSxDQUFDO2dCQUNyQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDOztnQkFFL0IsVUFBVSxHQUFHLENBQUM7WUFDbEIsSUFBSSxJQUFJLEdBQUcsSUFBSSxFQUFFO2dCQUNiLFVBQVUsR0FBRyxDQUFDLENBQUM7YUFDbEI7aUJBQU0sSUFBSSxJQUFJLEdBQUcsSUFBSSxFQUFFO2dCQUNwQixVQUFVLEdBQUcsQ0FBQyxDQUFDLENBQUM7YUFDbkI7WUFDRCxPQUFPLENBQ0gsQ0FBQyxLQUFLLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FDdEQsQ0FBQztRQUNOLENBQUMsRUFBQztJQUNOLENBQUM7SUFDTCxZQUFDO0FBQUQsQ0FBQyxBQTdGRCxJQTZGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tIFwicnhqcy9pbnRlcm5hbC9PYnNlcnZhYmxlXCI7XHJcblxyXG4vKipcclxuICogQGlnbm9yZVxyXG4gKi9cclxuLy8gQGR5bmFtaWNcclxuZXhwb3J0IGNsYXNzIFV0aWxzIHtcclxuICAgIHN0YXRpYyBoZXhUb1JnYihoZXgpIHtcclxuICAgICAgICB2YXIgcmVzdWx0ID0gL14jPyhbYS1mXFxkXXsyfSkoW2EtZlxcZF17Mn0pKFthLWZcXGRdezJ9KSQvaS5leGVjKGhleCk7XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdCA/IHtcclxuICAgICAgICAgICAgcjogcGFyc2VJbnQocmVzdWx0WzFdLCAxNiksXHJcbiAgICAgICAgICAgIGc6IHBhcnNlSW50KHJlc3VsdFsyXSwgMTYpLFxyXG4gICAgICAgICAgICBiOiBwYXJzZUludChyZXN1bHRbM10sIDE2KVxyXG4gICAgICAgIH0gOiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyBJRCgpIHtcclxuICAgICAgICAvLyBNYXRoLnJhbmRvbSBzaG91bGQgYmUgdW5pcXVlIGJlY2F1c2Ugb2YgaXRzIHNlZWRpbmcgYWxnb3JpdGhtLlxyXG4gICAgICAgIC8vIENvbnZlcnQgaXQgdG8gYmFzZSAzNiAobnVtYmVycyArIGxldHRlcnMpLCBhbmQgZ3JhYiB0aGUgZmlyc3QgOSBjaGFyYWN0ZXJzXHJcbiAgICAgICAgLy8gYWZ0ZXIgdGhlIGRlY2ltYWwuXHJcbiAgICAgICAgcmV0dXJuICdfJyArIE1hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cigyLCA5KTtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgb2JqRXF1YWwoYTogYW55LCBiOiBhbnkpIHtcclxuICAgICAgICAvLyBDcmVhdGUgYXJyYXlzIG9mIHByb3BlcnR5IG5hbWVzXHJcbiAgICAgICAgdmFyIGFQcm9wcyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKGEpO1xyXG4gICAgICAgIHZhciBiUHJvcHMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhiKTtcclxuXHJcbiAgICAgICAgLy8gSWYgbnVtYmVyIG9mIHByb3BlcnRpZXMgaXMgZGlmZmVyZW50LFxyXG4gICAgICAgIC8vIG9iamVjdHMgYXJlIG5vdCBlcXVpdmFsZW50XHJcbiAgICAgICAgaWYgKGFQcm9wcy5sZW5ndGggIT0gYlByb3BzLmxlbmd0aCkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFQcm9wcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICB2YXIgcHJvcE5hbWUgPSBhUHJvcHNbaV07XHJcblxyXG4gICAgICAgICAgICAvLyBJZiB2YWx1ZXMgb2Ygc2FtZSBwcm9wZXJ0eSBhcmUgbm90IGVxdWFsLFxyXG4gICAgICAgICAgICAvLyBvYmplY3RzIGFyZSBub3QgZXF1aXZhbGVudFxyXG4gICAgICAgICAgICBpZiAoYVtwcm9wTmFtZV0gIT09IGJbcHJvcE5hbWVdKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIElmIHdlIG1hZGUgaXQgdGhpcyBmYXIsIG9iamVjdHNcclxuICAgICAgICAvLyBhcmUgY29uc2lkZXJlZCBlcXVpdmFsZW50XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIHRvQm9vbGVhbih2YWx1ZTogYW55KTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHZhbHVlICE9IG51bGwgJiYgYCR7dmFsdWV9YCAhPT0gJ2ZhbHNlJztcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgY2hlY2tJbWdXaWR0aEFuZEhlaWdodChmaWxlOiBhbnksIG1heFdpZHRoOiBudW1iZXIsIG1heEhlaWdodDogbnVtYmVyKSB7XHJcbiAgICAgICAgcmV0dXJuIE9ic2VydmFibGUuY3JlYXRlKChvYnNlcnZlcjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIGxldCBpc0FsbG93ID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGlmIChmaWxlKSB7XHJcbiAgICAgICAgICAgICAgICBsZXQgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcclxuICAgICAgICAgICAgICAgIHJlYWRlci5vbmxvYWQgPSAoZTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGRhdGEgPSBlLnRhcmdldC5yZXN1bHQ7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGltYWdlID0gbmV3IEltYWdlKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaW1hZ2Uub25sb2FkID0gKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgd2lkdGggPSBpbWFnZS53aWR0aDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGhlaWdodCA9IGltYWdlLmhlaWdodDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXNBbGxvdyA9IHdpZHRoID09PSBtYXhXaWR0aCAmJiBoZWlnaHQgPT09IG1heEhlaWdodDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dChpc0FsbG93KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcclxuICAgICAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgICAgIGltYWdlLnNyYyA9IGRhdGE7XHJcbiAgICAgICAgICAgICAgICB9O1xyXG5cclxuICAgICAgICAgICAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGNvbXBhcmVWYWx1ZXMoa2V5OiBzdHJpbmcsIG9yZGVyOiAnYXNjJyB8ICdkZXNjJyA9ICdhc2MnKSB7XHJcbiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIGlubmVyU29ydChhLCBiKSB7XHJcbiAgICAgICAgICAgIGlmICghYS5oYXNPd25Qcm9wZXJ0eShrZXkpIHx8ICFiLmhhc093blByb3BlcnR5KGtleSkpIHtcclxuICAgICAgICAgICAgICAgIC8vIHByb3BlcnR5IGRvZXNuJ3QgZXhpc3Qgb24gZWl0aGVyIG9iamVjdFxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGNvbnN0IHZhckEgPSAodHlwZW9mIGFba2V5XSA9PT0gJ3N0cmluZycpXHJcbiAgICAgICAgICAgICAgICA/IGFba2V5XS50b1VwcGVyQ2FzZSgpIDogYVtrZXldO1xyXG4gICAgICAgICAgICBjb25zdCB2YXJCID0gKHR5cGVvZiBiW2tleV0gPT09ICdzdHJpbmcnKVxyXG4gICAgICAgICAgICAgICAgPyBiW2tleV0udG9VcHBlckNhc2UoKSA6IGJba2V5XTtcclxuXHJcbiAgICAgICAgICAgIGxldCBjb21wYXJpc29uID0gMDtcclxuICAgICAgICAgICAgaWYgKHZhckEgPiB2YXJCKSB7XHJcbiAgICAgICAgICAgICAgICBjb21wYXJpc29uID0gMTtcclxuICAgICAgICAgICAgfSBlbHNlIGlmICh2YXJBIDwgdmFyQikge1xyXG4gICAgICAgICAgICAgICAgY29tcGFyaXNvbiA9IC0xO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgICAgICAob3JkZXIgPT09ICdkZXNjJykgPyAoY29tcGFyaXNvbiAqIC0xKSA6IGNvbXBhcmlzb25cclxuICAgICAgICAgICAgKTtcclxuICAgICAgICB9O1xyXG4gICAgfVxyXG59Il19