ice-utilities
Version:
Utilities for manage arrays, breadcrumb, dom elements, dates, injectors, local storage, login, objects, router animations, router, session storage, strings and translate utilities, encryption, for angular 6+ with ECMAScript 6 - ECMAScript 2015
76 lines • 4.96 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import SimpleCrypto from 'simple-crypto-js/src/SimpleCrypto';
// @dynamic
/**
* @abstract
*/
export class EncryptUtils {
/**
* @param {?} key
* @return {?}
*/
static setKey(key) {
if (key && key !== null && key.length > 0) {
this._key = key;
this._SimpleCrypto = new SimpleCrypto(this._key);
}
}
/**
* @return {?}
*/
static hasEncryption() {
return (this._key && this._key.length > 0 && this._SimpleCrypto);
}
/**
* @param {?} data
* @return {?}
*/
static encrypt(data) {
if (this.hasEncryption() && data && data !== null) {
return this._SimpleCrypto.encrypt(data);
}
else {
return '';
}
}
/**
* @param {?} ciphered
* @return {?}
*/
static decrypt(ciphered) {
if (this.hasEncryption() && ciphered && ciphered !== null && ciphered.length > 0) {
/** @type {?} */
let val = this._SimpleCrypto.decrypt(ciphered);
try {
val = JSON.parse(val);
}
catch (e) { }
return val;
}
else {
return null;
}
}
/**
* @return {?}
*/
static generateKey() {
return SimpleCrypto.generateRandom();
}
}
if (false) {
/**
* @type {?}
* @private
*/
EncryptUtils._key;
/**
* @type {?}
* @private
*/
EncryptUtils._SimpleCrypto;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5jcnlwdFV0aWxzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vaWNlLXV0aWxpdGllcy8iLCJzb3VyY2VzIjpbImxpYi91dGlsaXRpZXMvZW5jcnlwdFV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLFlBQVksTUFBTSxtQ0FBbUMsQ0FBQzs7Ozs7QUFFN0QsTUFBTSxPQUFnQixZQUFZOzs7OztJQUdoQyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQVc7UUFDdkIsSUFBSSxHQUFHLElBQUksR0FBRyxLQUFLLElBQUksSUFBSSxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUN6QyxJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQztZQUNoQixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNsRDtJQUNILENBQUM7Ozs7SUFDRCxNQUFNLENBQUMsYUFBYTtRQUNsQixPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ25FLENBQUM7Ozs7O0lBQ0QsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFTO1FBQ3RCLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLElBQUksSUFBSSxJQUFJLEtBQUssSUFBSSxFQUFFO1lBQ2pELE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDekM7YUFBTTtZQUNMLE9BQU8sRUFBRSxDQUFDO1NBQ1g7SUFDSCxDQUFDOzs7OztJQUNELE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBZ0I7UUFDN0IsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksUUFBUSxJQUFJLFFBQVEsS0FBSyxJQUFJLElBQUksUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7O2dCQUM1RSxHQUFHLEdBQVEsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO1lBQ25ELElBQUk7Z0JBQ0YsR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDdkI7WUFBQyxPQUFPLENBQUMsRUFBRSxHQUFFO1lBQ2QsT0FBTyxHQUFHLENBQUM7U0FDWjthQUFNO1lBQ0wsT0FBTyxJQUFJLENBQUM7U0FDYjtJQUNILENBQUM7Ozs7SUFDRCxNQUFNLENBQUMsV0FBVztRQUNoQixPQUFPLFlBQVksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0NBQ0Y7Ozs7OztJQWhDQyxrQkFBNEI7Ozs7O0lBQzVCLDJCQUFrQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBTaW1wbGVDcnlwdG8gZnJvbSAnc2ltcGxlLWNyeXB0by1qcy9zcmMvU2ltcGxlQ3J5cHRvJztcclxuLy8gQGR5bmFtaWNcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEVuY3J5cHRVdGlscyB7XHJcbiAgcHJpdmF0ZSBzdGF0aWMgX2tleTogc3RyaW5nO1xyXG4gIHByaXZhdGUgc3RhdGljIF9TaW1wbGVDcnlwdG86IGFueTtcclxuICBzdGF0aWMgc2V0S2V5KGtleTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBpZiAoa2V5ICYmIGtleSAhPT0gbnVsbCAmJiBrZXkubGVuZ3RoID4gMCkge1xyXG4gICAgICB0aGlzLl9rZXkgPSBrZXk7XHJcbiAgICAgIHRoaXMuX1NpbXBsZUNyeXB0byA9IG5ldyBTaW1wbGVDcnlwdG8odGhpcy5fa2V5KTtcclxuICAgIH1cclxuICB9XHJcbiAgc3RhdGljIGhhc0VuY3J5cHRpb24oKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gKHRoaXMuX2tleSAmJiB0aGlzLl9rZXkubGVuZ3RoID4gMCAmJiB0aGlzLl9TaW1wbGVDcnlwdG8pO1xyXG4gIH1cclxuICBzdGF0aWMgZW5jcnlwdChkYXRhOiBhbnkpOiBzdHJpbmcge1xyXG4gICAgaWYgKHRoaXMuaGFzRW5jcnlwdGlvbigpICYmIGRhdGEgJiYgZGF0YSAhPT0gbnVsbCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5fU2ltcGxlQ3J5cHRvLmVuY3J5cHQoZGF0YSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gJyc7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHN0YXRpYyBkZWNyeXB0KGNpcGhlcmVkOiBzdHJpbmcpOiBhbnkge1xyXG4gICAgaWYgKHRoaXMuaGFzRW5jcnlwdGlvbigpICYmIGNpcGhlcmVkICYmIGNpcGhlcmVkICE9PSBudWxsICYmIGNpcGhlcmVkLmxlbmd0aCA+IDApIHtcclxuICAgICAgbGV0IHZhbDogYW55ID0gdGhpcy5fU2ltcGxlQ3J5cHRvLmRlY3J5cHQoY2lwaGVyZWQpO1xyXG4gICAgICB0cnkge1xyXG4gICAgICAgIHZhbCA9IEpTT04ucGFyc2UodmFsKTtcclxuICAgICAgfSBjYXRjaCAoZSkge31cclxuICAgICAgcmV0dXJuIHZhbDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuICBzdGF0aWMgZ2VuZXJhdGVLZXkoKSB7XHJcbiAgICByZXR1cm4gU2ltcGxlQ3J5cHRvLmdlbmVyYXRlUmFuZG9tKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==