ngx-pluto
Version:
187 lines • 13.9 kB
JavaScript
/**
* @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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtcGx1dG8vIiwic291cmNlcyI6WyJsaWIvY29tbW9uL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7O0FBTXREOzs7OztJQUFBO0lBNkZBLENBQUM7Ozs7O0lBNUZVLGNBQVE7Ozs7SUFBZixVQUFnQixHQUFHOztZQUNYLE1BQU0sR0FBRywyQ0FBMkMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO1FBQ2xFLE9BQU8sTUFBTSxDQUFDLENBQUMsQ0FBQztZQUNaLENBQUMsRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUMxQixDQUFDLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDMUIsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO1NBQzdCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUNiLENBQUM7Ozs7SUFFTSxRQUFFOzs7SUFBVDtRQUNJLGlFQUFpRTtRQUNqRSw2RUFBNkU7UUFDN0UscUJBQXFCO1FBQ3JCLE9BQU8sR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN6RCxDQUFDOzs7Ozs7SUFFTSxjQUFROzs7OztJQUFmLFVBQWdCLENBQU0sRUFBRSxDQUFNOzs7WUFFdEIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUM7O1lBQ3RDLE1BQU0sR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDO1FBRTFDLHdDQUF3QztRQUN4Qyw2QkFBNkI7UUFDN0IsSUFBSSxNQUFNLENBQUMsTUFB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QixVQUFVLEdBQUcsQ0FBQyxDQUFDLENBQUM7YUFDbkI7WUFDRCxPQUFPLENBQ0gsQ0FBQyxLQUFLLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FDdEQsQ0FBQztRQUNOLENBQUMsRUFBQztJQUNOLENBQUM7SUFDTCxZQUFDO0FBQUQsQ0FBQyxBQTdGRCxJQTZGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tIFwicnhqcy9pbnRlcm5hbC9PYnNlcnZhYmxlXCI7XHJcblxyXG4vKipcclxuICogQGlnbm9yZVxyXG4gKi9cclxuLy8gQGR5bmFtaWNcclxuZXhwb3J0IGNsYXNzIFV0aWxzIHtcclxuICAgIHN0YXRpYyBoZXhUb1JnYihoZXgpIHtcclxuICAgICAgICB2YXIgcmVzdWx0ID0gL14jPyhbYS1mXFxkXXsyfSkoW2EtZlxcZF17Mn0pKFthLWZcXGRdezJ9KSQvaS5leGVjKGhleCk7XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdCA/IHtcclxuICAgICAgICAgICAgcjogcGFyc2VJbnQocmVzdWx0WzFdLCAxNiksXHJcbiAgICAgICAgICAgIGc6IHBhcnNlSW50KHJlc3VsdFsyXSwgMTYpLFxyXG4gICAgICAgICAgICBiOiBwYXJzZUludChyZXN1bHRbM10sIDE2KVxyXG4gICAgICAgIH0gOiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyBJRCgpIHtcclxuICAgICAgICAvLyBNYXRoLnJhbmRvbSBzaG91bGQgYmUgdW5pcXVlIGJlY2F1c2Ugb2YgaXRzIHNlZWRpbmcgYWxnb3JpdGhtLlxyXG4gICAgICAgIC8vIENvbnZlcnQgaXQgdG8gYmFzZSAzNiAobnVtYmVycyArIGxldHRlcnMpLCBhbmQgZ3JhYiB0aGUgZmlyc3QgOSBjaGFyYWN0ZXJzXHJcbiAgICAgICAgLy8gYWZ0ZXIgdGhlIGRlY2ltYWwuXHJcbiAgICAgICAgcmV0dXJuICdfJyArIE1hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cigyLCA5KTtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgb2JqRXF1YWwoYTogYW55LCBiOiBhbnkpIHtcclxuICAgICAgICAvLyBDcmVhdGUgYXJyYXlzIG9mIHByb3BlcnR5IG5hbWVzXHJcbiAgICAgICAgdmFyIGFQcm9wcyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKGEpO1xyXG4gICAgICAgIHZhciBiUHJvcHMgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhiKTtcclxuXHJcbiAgICAgICAgLy8gSWYgbnVtYmVyIG9mIHByb3BlcnRpZXMgaXMgZGlmZmVyZW50LFxyXG4gICAgICAgIC8vIG9iamVjdHMgYXJlIG5vdCBlcXVpdmFsZW50XHJcbiAgICAgICAgaWYgKGFQcm9wcy5sZW5ndGggIT0gYlByb3BzLmxlbmd0aCkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFQcm9wcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICB2YXIgcHJvcE5hbWUgPSBhUHJvcHNbaV07XHJcblxyXG4gICAgICAgICAgICAvLyBJZiB2YWx1ZXMgb2Ygc2FtZSBwcm9wZXJ0eSBhcmUgbm90IGVxdWFsLFxyXG4gICAgICAgICAgICAvLyBvYmplY3RzIGFyZSBub3QgZXF1aXZhbGVudFxyXG4gICAgICAgICAgICBpZiAoYVtwcm9wTmFtZV0gIT09IGJbcHJvcE5hbWVdKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIElmIHdlIG1hZGUgaXQgdGhpcyBmYXIsIG9iamVjdHNcclxuICAgICAgICAvLyBhcmUgY29uc2lkZXJlZCBlcXVpdmFsZW50XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIHRvQm9vbGVhbih2YWx1ZTogYW55KTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHZhbHVlICE9IG51bGwgJiYgYCR7dmFsdWV9YCAhPT0gJ2ZhbHNlJztcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgY2hlY2tJbWdXaWR0aEFuZEhlaWdodChmaWxlOiBhbnksIG1heFdpZHRoOiBudW1iZXIsIG1heEhlaWdodDogbnVtYmVyKSB7XHJcbiAgICAgICAgcmV0dXJuIE9ic2VydmFibGUuY3JlYXRlKChvYnNlcnZlcjogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIGxldCBpc0FsbG93ID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGlmIChmaWxlKSB7XHJcbiAgICAgICAgICAgICAgICBsZXQgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcclxuICAgICAgICAgICAgICAgIHJlYWRlci5vbmxvYWQgPSAoZTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGRhdGEgPSBlLnRhcmdldC5yZXN1bHQ7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGltYWdlID0gbmV3IEltYWdlKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgaW1hZ2Uub25sb2FkID0gKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgd2lkdGggPSBpbWFnZS53aWR0aDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGhlaWdodCA9IGltYWdlLmhlaWdodDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXNBbGxvdyA9IHdpZHRoID09PSBtYXhXaWR0aCAmJiBoZWlnaHQgPT09IG1heEhlaWdodDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dChpc0FsbG93KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcclxuICAgICAgICAgICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICAgICAgICAgIGltYWdlLnNyYyA9IGRhdGE7XHJcbiAgICAgICAgICAgICAgICB9O1xyXG5cclxuICAgICAgICAgICAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKGZpbGUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGNvbXBhcmVWYWx1ZXMoa2V5OiBzdHJpbmcsIG9yZGVyOiAnYXNjJyB8ICdkZXNjJyA9ICdhc2MnKSB7XHJcbiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIGlubmVyU29ydChhLCBiKSB7XHJcbiAgICAgICAgICAgIGlmICghYS5oYXNPd25Qcm9wZXJ0eShrZXkpIHx8ICFiLmhhc093blByb3BlcnR5KGtleSkpIHtcclxuICAgICAgICAgICAgICAgIC8vIHByb3BlcnR5IGRvZXNuJ3QgZXhpc3Qgb24gZWl0aGVyIG9iamVjdFxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGNvbnN0IHZhckEgPSAodHlwZW9mIGFba2V5XSA9PT0gJ3N0cmluZycpXHJcbiAgICAgICAgICAgICAgICA/IGFba2V5XS50b1VwcGVyQ2FzZSgpIDogYVtrZXldO1xyXG4gICAgICAgICAgICBjb25zdCB2YXJCID0gKHR5cGVvZiBiW2tleV0gPT09ICdzdHJpbmcnKVxyXG4gICAgICAgICAgICAgICAgPyBiW2tleV0udG9VcHBlckNhc2UoKSA6IGJba2V5XTtcclxuXHJcbiAgICAgICAgICAgIGxldCBjb21wYXJpc29uID0gMDtcclxuICAgICAgICAgICAgaWYgKHZhckEgPiB2YXJCKSB7XHJcbiAgICAgICAgICAgICAgICBjb21wYXJpc29uID0gMTtcclxuICAgICAgICAgICAgfSBlbHNlIGlmICh2YXJBIDwgdmFyQikge1xyXG4gICAgICAgICAgICAgICAgY29tcGFyaXNvbiA9IC0xO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgICAgICAob3JkZXIgPT09ICdkZXNjJykgPyAoY29tcGFyaXNvbiAqIC0xKSA6IGNvbXBhcmlzb25cclxuICAgICAgICAgICAgKTtcclxuICAgICAgICB9O1xyXG4gICAgfVxyXG59Il19