ngx-webstorage
Version:
### Local and session storage - Angular service This library provides an easy to use service to manage the web storages (local and session) from your Angular application. It provides also two decorators to synchronize the component attributes and the web
32 lines • 4.57 kB
JavaScript
import { DefaultIsCaseSensitive, DefaultPrefix, DefaultSeparator } from '../constants/config';
class StorageKeyManager {
static { this.prefix = DefaultPrefix; }
static { this.separator = DefaultSeparator; }
static { this.isCaseSensitive = DefaultIsCaseSensitive; }
static normalize(raw) {
raw = StorageKeyManager.isCaseSensitive ? raw : raw.toLowerCase();
return `${StorageKeyManager.prefix}${StorageKeyManager.separator}${raw}`;
}
static isNormalizedKey(key) {
return key.indexOf(StorageKeyManager.prefix + StorageKeyManager.separator) === 0;
}
static setPrefix(prefix) {
StorageKeyManager.prefix = prefix;
}
static setSeparator(separator) {
StorageKeyManager.separator = separator;
}
static setCaseSensitive(enable) {
StorageKeyManager.isCaseSensitive = enable;
}
static consumeConfiguration(config) {
if ('prefix' in config)
this.setPrefix(config.prefix);
if ('separator' in config)
this.setSeparator(config.separator);
if ('caseSensitive' in config)
this.setCaseSensitive(config.caseSensitive);
}
}
export { StorageKeyManager };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZUtleU1hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtd2Vic3RvcmFnZS9zcmMvbGliL2hlbHBlcnMvc3RvcmFnZUtleU1hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHNCQUFzQixFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBRzVGLE1BQU0saUJBQWlCO2FBRWYsV0FBTSxHQUFHLGFBQWEsQ0FBQzthQUN2QixjQUFTLEdBQUcsZ0JBQWdCLENBQUM7YUFDN0Isb0JBQWUsR0FBRyxzQkFBc0IsQ0FBQztJQUVoRCxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQVc7UUFDM0IsR0FBRyxHQUFHLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDbEUsT0FBTyxHQUFHLGlCQUFpQixDQUFDLE1BQU0sR0FBRyxpQkFBaUIsQ0FBQyxTQUFTLEdBQUcsR0FBRyxFQUFFLENBQUM7SUFDMUUsQ0FBQztJQUVELE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBVztRQUNqQyxPQUFPLEdBQUcsQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsTUFBTSxHQUFHLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsRixDQUFDO0lBRUQsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFjO1FBQzlCLGlCQUFpQixDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7SUFDbkMsQ0FBQztJQUVELE1BQU0sQ0FBQyxZQUFZLENBQUMsU0FBaUI7UUFDcEMsaUJBQWlCLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsTUFBTSxDQUFDLGdCQUFnQixDQUFDLE1BQWU7UUFDdEMsaUJBQWlCLENBQUMsZUFBZSxHQUFHLE1BQU0sQ0FBQztJQUM1QyxDQUFDO0lBRUQsTUFBTSxDQUFDLG9CQUFvQixDQUFDLE1BQWtDO1FBQzdELElBQUksUUFBUSxJQUFJLE1BQU07WUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN0RCxJQUFJLFdBQVcsSUFBSSxNQUFNO1lBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDL0QsSUFBSSxlQUFlLElBQUksTUFBTTtZQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDNUUsQ0FBQzs7QUFHRixPQUFPLEVBQUMsaUJBQWlCLEVBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGVmYXVsdElzQ2FzZVNlbnNpdGl2ZSwgRGVmYXVsdFByZWZpeCwgRGVmYXVsdFNlcGFyYXRvcn0gZnJvbSAnLi4vY29uc3RhbnRzL2NvbmZpZyc7XG5pbXBvcnQge05neFdlYnN0b3JhZ2VDb25maWd1cmF0aW9ufSBmcm9tICcuLi9jb25maWcnO1xuXG5jbGFzcyBTdG9yYWdlS2V5TWFuYWdlciB7XG5cblx0c3RhdGljIHByZWZpeCA9IERlZmF1bHRQcmVmaXg7XG5cdHN0YXRpYyBzZXBhcmF0b3IgPSBEZWZhdWx0U2VwYXJhdG9yO1xuXHRzdGF0aWMgaXNDYXNlU2Vuc2l0aXZlID0gRGVmYXVsdElzQ2FzZVNlbnNpdGl2ZTtcblxuXHRzdGF0aWMgbm9ybWFsaXplKHJhdzogc3RyaW5nKSB7XG5cdFx0cmF3ID0gU3RvcmFnZUtleU1hbmFnZXIuaXNDYXNlU2Vuc2l0aXZlID8gcmF3IDogcmF3LnRvTG93ZXJDYXNlKCk7XG5cdFx0cmV0dXJuIGAke1N0b3JhZ2VLZXlNYW5hZ2VyLnByZWZpeH0ke1N0b3JhZ2VLZXlNYW5hZ2VyLnNlcGFyYXRvcn0ke3Jhd31gO1xuXHR9XG5cblx0c3RhdGljIGlzTm9ybWFsaXplZEtleShrZXk6IHN0cmluZykge1xuXHRcdHJldHVybiBrZXkuaW5kZXhPZihTdG9yYWdlS2V5TWFuYWdlci5wcmVmaXggKyBTdG9yYWdlS2V5TWFuYWdlci5zZXBhcmF0b3IpID09PSAwO1xuXHR9XG5cblx0c3RhdGljIHNldFByZWZpeChwcmVmaXg6IHN0cmluZykge1xuXHRcdFN0b3JhZ2VLZXlNYW5hZ2VyLnByZWZpeCA9IHByZWZpeDtcblx0fVxuXG5cdHN0YXRpYyBzZXRTZXBhcmF0b3Ioc2VwYXJhdG9yOiBzdHJpbmcpIHtcblx0XHRTdG9yYWdlS2V5TWFuYWdlci5zZXBhcmF0b3IgPSBzZXBhcmF0b3I7XG5cdH1cblxuXHRzdGF0aWMgc2V0Q2FzZVNlbnNpdGl2ZShlbmFibGU6IGJvb2xlYW4pIHtcblx0XHRTdG9yYWdlS2V5TWFuYWdlci5pc0Nhc2VTZW5zaXRpdmUgPSBlbmFibGU7XG5cdH1cblxuXHRzdGF0aWMgY29uc3VtZUNvbmZpZ3VyYXRpb24oY29uZmlnOiBOZ3hXZWJzdG9yYWdlQ29uZmlndXJhdGlvbikge1xuXHRcdGlmICgncHJlZml4JyBpbiBjb25maWcpIHRoaXMuc2V0UHJlZml4KGNvbmZpZy5wcmVmaXgpO1xuXHRcdGlmICgnc2VwYXJhdG9yJyBpbiBjb25maWcpIHRoaXMuc2V0U2VwYXJhdG9yKGNvbmZpZy5zZXBhcmF0b3IpO1xuXHRcdGlmICgnY2FzZVNlbnNpdGl2ZScgaW4gY29uZmlnKSB0aGlzLnNldENhc2VTZW5zaXRpdmUoY29uZmlnLmNhc2VTZW5zaXRpdmUpO1xuXHR9XG59XG5cbmV4cG9ydCB7U3RvcmFnZUtleU1hbmFnZXJ9O1xuIl19