libey-ng-component-library 0.0.41 → 0.0.42
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/libey-ng-component-library.umd.js +81 -4
- package/bundles/libey-ng-component-library.umd.js.map +1 -1
- package/esm2015/public-api.js +2 -1
- package/esm2015/utils/NavigationState/navigation-state.js +75 -0
- package/fesm2015/libey-ng-component-library.js +80 -5
- package/fesm2015/libey-ng-component-library.js.map +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
- package/utils/NavigationState/navigation-state.d.ts +11 -0
package/esm2015/public-api.js
CHANGED
|
@@ -21,4 +21,5 @@ export { NgSelectModule } from '@ng-select/ng-select';
|
|
|
21
21
|
export { NgbModule } from '@ng-bootstrap/ng-bootstrap';
|
|
22
22
|
export * from '@popperjs/core';
|
|
23
23
|
export * from './utils/Cache/cache';
|
|
24
|
-
|
|
24
|
+
export * from './utils/NavigationState/navigation-state';
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2xpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5L3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLGlFQUFpRSxDQUFDO0FBQ2hGLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsWUFBWSxFQUFFLENBQUM7QUFDNUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN2RCxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYywwQ0FBMEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBsaWJleS1uZy1jb21wb25lbnQtbGlicmFyeVxyXG4gKi9cclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5LnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9saWJleS1uZy1jb21wb25lbnQtbGlicmFyeS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9saWJleS1uZy1jb21wb25lbnQtbGlicmFyeS5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi90YWJsZS9saWJleS1uZy10YWJsZS5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi90YWJsZS9saWJleS1uZy10YWJsZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi90YWJsZS9kaXJlY3RpdmVzL2xpYmV5LWNvbHVtbi5kaXJlY3RpdmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zaWduYXR1cmUvbGliZXktbmctc2lnbmF0dXJlLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NpZ25hdHVyZS9saWJleS1uZy1zaWduYXR1cmUvbGliZXktbmctc2lnbmF0dXJlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMvU2lnV2ViL1NpZ1dlYic7XHJcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMvQ3BtSW5kaWNhdG9yL2NwbS1pbmRpY2F0b3ItdHlwZXMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pY29ucy9pY29ucy5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pY29ucy9saWJleS1uZy1pY29ucy9saWJleS1uZy1pY29ucy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jcG0taW5kaWNhdG9yL2xpYmV5LW5nLWNwbS1pbmRpY2F0b3IubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY3BtLWluZGljYXRvci9saWJleS1uZy1jcG0taW5kaWNhdG9yLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNpZ25hdHVyZVBhZE1vZHVsZSwgU2lnbmF0dXJlUGFkIH0gZnJvbSAnYW5ndWxhcjItc2lnbmF0dXJlcGFkJztcclxuZXhwb3J0IHsgU2lnbmF0dXJlUGFkTW9kdWxlLCBTaWduYXR1cmVQYWQgfTtcclxuZXhwb3J0IHsgTmdTZWxlY3RNb2R1bGUgfSBmcm9tICdAbmctc2VsZWN0L25nLXNlbGVjdCc7XHJcbmV4cG9ydCB7IE5nYk1vZHVsZSB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcclxuZXhwb3J0ICogZnJvbSAnQHBvcHBlcmpzL2NvcmUnO1xyXG5leHBvcnQgKiBmcm9tICcuL3V0aWxzL0NhY2hlL2NhY2hlJztcclxuZXhwb3J0ICogZnJvbSAnLi91dGlscy9OYXZpZ2F0aW9uU3RhdGUvbmF2aWdhdGlvbi1zdGF0ZSc7XHJcbiJdfQ==
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
const NAVIGATION_STATE_VERSION = 1;
|
|
2
|
+
const KEY_PREFIX = 'libey:nav:';
|
|
3
|
+
const DEFAULT_TTL_MS = 60 * 1000;
|
|
4
|
+
function buildKey(name) {
|
|
5
|
+
if (!name)
|
|
6
|
+
throw new Error('navigationState: el nombre no puede estar vacio');
|
|
7
|
+
return KEY_PREFIX + name;
|
|
8
|
+
}
|
|
9
|
+
function read(key) {
|
|
10
|
+
let raw;
|
|
11
|
+
try {
|
|
12
|
+
raw = sessionStorage.getItem(key);
|
|
13
|
+
}
|
|
14
|
+
catch (_a) {
|
|
15
|
+
return null;
|
|
16
|
+
}
|
|
17
|
+
if (!raw)
|
|
18
|
+
return null;
|
|
19
|
+
try {
|
|
20
|
+
const entry = JSON.parse(raw);
|
|
21
|
+
const isOldVersion = entry.version !== NAVIGATION_STATE_VERSION;
|
|
22
|
+
const isExpired = Date.now() > entry.expiresAt;
|
|
23
|
+
if (isOldVersion || isExpired) {
|
|
24
|
+
sessionStorage.removeItem(key);
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
return entry.data;
|
|
28
|
+
}
|
|
29
|
+
catch (_b) {
|
|
30
|
+
sessionStorage.removeItem(key);
|
|
31
|
+
return null;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
function set(name, data, ttlMs = DEFAULT_TTL_MS) {
|
|
35
|
+
const entry = {
|
|
36
|
+
version: NAVIGATION_STATE_VERSION,
|
|
37
|
+
data,
|
|
38
|
+
expiresAt: Date.now() + ttlMs,
|
|
39
|
+
};
|
|
40
|
+
try {
|
|
41
|
+
sessionStorage.setItem(buildKey(name), JSON.stringify(entry));
|
|
42
|
+
}
|
|
43
|
+
catch (error) {
|
|
44
|
+
console.error(`navigationState: no se pudo guardar "${name}":`, error);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
function consume(name) {
|
|
48
|
+
const key = buildKey(name);
|
|
49
|
+
const data = read(key);
|
|
50
|
+
try {
|
|
51
|
+
sessionStorage.removeItem(key);
|
|
52
|
+
}
|
|
53
|
+
catch (_a) {
|
|
54
|
+
// sessionStorage no disponible - no hay nada que borrar
|
|
55
|
+
}
|
|
56
|
+
return data;
|
|
57
|
+
}
|
|
58
|
+
function peek(name) {
|
|
59
|
+
return read(buildKey(name));
|
|
60
|
+
}
|
|
61
|
+
function remove(name) {
|
|
62
|
+
try {
|
|
63
|
+
sessionStorage.removeItem(buildKey(name));
|
|
64
|
+
}
|
|
65
|
+
catch (_a) {
|
|
66
|
+
// sessionStorage no disponible - no hay nada que borrar
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
export const navigationState = {
|
|
70
|
+
set,
|
|
71
|
+
consume,
|
|
72
|
+
peek,
|
|
73
|
+
remove,
|
|
74
|
+
};
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi1zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5L3NyYy91dGlscy9OYXZpZ2F0aW9uU3RhdGUvbmF2aWdhdGlvbi1zdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxNQUFNLHdCQUF3QixHQUFHLENBQUMsQ0FBQztBQUNuQyxNQUFNLFVBQVUsR0FBRyxZQUFZLENBQUM7QUFDaEMsTUFBTSxjQUFjLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQztBQUVqQyxTQUFTLFFBQVEsQ0FBQyxJQUFZO0lBQzVCLElBQUksQ0FBQyxJQUFJO1FBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxpREFBaUQsQ0FBQyxDQUFDO0lBQzlFLE9BQU8sVUFBVSxHQUFHLElBQUksQ0FBQztBQUMzQixDQUFDO0FBRUQsU0FBUyxJQUFJLENBQUksR0FBVztJQUMxQixJQUFJLEdBQWtCLENBQUM7SUFDdkIsSUFBSTtRQUNGLEdBQUcsR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0tBQ25DO0lBQUMsV0FBTTtRQUNOLE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFDRCxJQUFJLENBQUMsR0FBRztRQUFFLE9BQU8sSUFBSSxDQUFDO0lBRXRCLElBQUk7UUFDRixNQUFNLEtBQUssR0FBNEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV2RCxNQUFNLFlBQVksR0FBRyxLQUFLLENBQUMsT0FBTyxLQUFLLHdCQUF3QixDQUFDO1FBQ2hFLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDO1FBRS9DLElBQUksWUFBWSxJQUFJLFNBQVMsRUFBRTtZQUM3QixjQUFjLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQy9CLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUM7S0FDbkI7SUFBQyxXQUFNO1FBQ04sY0FBYyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMvQixPQUFPLElBQUksQ0FBQztLQUNiO0FBQ0gsQ0FBQztBQUVELFNBQVMsR0FBRyxDQUFJLElBQVksRUFBRSxJQUFPLEVBQUUsUUFBZ0IsY0FBYztJQUNuRSxNQUFNLEtBQUssR0FBNEI7UUFDckMsT0FBTyxFQUFFLHdCQUF3QjtRQUNqQyxJQUFJO1FBQ0osU0FBUyxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxLQUFLO0tBQzlCLENBQUM7SUFDRixJQUFJO1FBQ0YsY0FBYyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0tBQy9EO0lBQUMsT0FBTyxLQUFLLEVBQUU7UUFDZCxPQUFPLENBQUMsS0FBSyxDQUFDLHdDQUF3QyxJQUFJLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztLQUN4RTtBQUNILENBQUM7QUFFRCxTQUFTLE9BQU8sQ0FBSSxJQUFZO0lBQzlCLE1BQU0sR0FBRyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUksR0FBRyxDQUFDLENBQUM7SUFDMUIsSUFBSTtRQUNGLGNBQWMsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7S0FDaEM7SUFBQyxXQUFNO1FBQ04sd0RBQXdEO0tBQ3pEO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQsU0FBUyxJQUFJLENBQUksSUFBWTtJQUMzQixPQUFPLElBQUksQ0FBSSxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztBQUNqQyxDQUFDO0FBRUQsU0FBUyxNQUFNLENBQUMsSUFBWTtJQUMxQixJQUFJO1FBQ0YsY0FBYyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztLQUMzQztJQUFDLFdBQU07UUFDTix3REFBd0Q7S0FDekQ7QUFDSCxDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHO0lBQzdCLEdBQUc7SUFDSCxPQUFPO0lBQ1AsSUFBSTtJQUNKLE1BQU07Q0FDUCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsidHlwZSBOYXZpZ2F0aW9uU3RhdGVFbnRyeTxUPiA9IHtcbiAgdmVyc2lvbjogbnVtYmVyO1xuICBkYXRhOiBUO1xuICBleHBpcmVzQXQ6IG51bWJlcjtcbn07XG5cbmNvbnN0IE5BVklHQVRJT05fU1RBVEVfVkVSU0lPTiA9IDE7XG5jb25zdCBLRVlfUFJFRklYID0gJ2xpYmV5Om5hdjonO1xuY29uc3QgREVGQVVMVF9UVExfTVMgPSA2MCAqIDEwMDA7XG5cbmZ1bmN0aW9uIGJ1aWxkS2V5KG5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIGlmICghbmFtZSkgdGhyb3cgbmV3IEVycm9yKCduYXZpZ2F0aW9uU3RhdGU6IGVsIG5vbWJyZSBubyBwdWVkZSBlc3RhciB2YWNpbycpO1xuICByZXR1cm4gS0VZX1BSRUZJWCArIG5hbWU7XG59XG5cbmZ1bmN0aW9uIHJlYWQ8VD4oa2V5OiBzdHJpbmcpOiBUIHwgbnVsbCB7XG4gIGxldCByYXc6IHN0cmluZyB8IG51bGw7XG4gIHRyeSB7XG4gICAgcmF3ID0gc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShrZXkpO1xuICB9IGNhdGNoIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICBpZiAoIXJhdykgcmV0dXJuIG51bGw7XG5cbiAgdHJ5IHtcbiAgICBjb25zdCBlbnRyeTogTmF2aWdhdGlvblN0YXRlRW50cnk8VD4gPSBKU09OLnBhcnNlKHJhdyk7XG5cbiAgICBjb25zdCBpc09sZFZlcnNpb24gPSBlbnRyeS52ZXJzaW9uICE9PSBOQVZJR0FUSU9OX1NUQVRFX1ZFUlNJT047XG4gICAgY29uc3QgaXNFeHBpcmVkID0gRGF0ZS5ub3coKSA+IGVudHJ5LmV4cGlyZXNBdDtcblxuICAgIGlmIChpc09sZFZlcnNpb24gfHwgaXNFeHBpcmVkKSB7XG4gICAgICBzZXNzaW9uU3RvcmFnZS5yZW1vdmVJdGVtKGtleSk7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4gZW50cnkuZGF0YTtcbiAgfSBjYXRjaCB7XG4gICAgc2Vzc2lvblN0b3JhZ2UucmVtb3ZlSXRlbShrZXkpO1xuICAgIHJldHVybiBudWxsO1xuICB9XG59XG5cbmZ1bmN0aW9uIHNldDxUPihuYW1lOiBzdHJpbmcsIGRhdGE6IFQsIHR0bE1zOiBudW1iZXIgPSBERUZBVUxUX1RUTF9NUyk6IHZvaWQge1xuICBjb25zdCBlbnRyeTogTmF2aWdhdGlvblN0YXRlRW50cnk8VD4gPSB7XG4gICAgdmVyc2lvbjogTkFWSUdBVElPTl9TVEFURV9WRVJTSU9OLFxuICAgIGRhdGEsXG4gICAgZXhwaXJlc0F0OiBEYXRlLm5vdygpICsgdHRsTXMsXG4gIH07XG4gIHRyeSB7XG4gICAgc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbShidWlsZEtleShuYW1lKSwgSlNPTi5zdHJpbmdpZnkoZW50cnkpKTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBjb25zb2xlLmVycm9yKGBuYXZpZ2F0aW9uU3RhdGU6IG5vIHNlIHB1ZG8gZ3VhcmRhciBcIiR7bmFtZX1cIjpgLCBlcnJvcik7XG4gIH1cbn1cblxuZnVuY3Rpb24gY29uc3VtZTxUPihuYW1lOiBzdHJpbmcpOiBUIHwgbnVsbCB7XG4gIGNvbnN0IGtleSA9IGJ1aWxkS2V5KG5hbWUpO1xuICBjb25zdCBkYXRhID0gcmVhZDxUPihrZXkpO1xuICB0cnkge1xuICAgIHNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0oa2V5KTtcbiAgfSBjYXRjaCB7XG4gICAgLy8gc2Vzc2lvblN0b3JhZ2Ugbm8gZGlzcG9uaWJsZSAtIG5vIGhheSBuYWRhIHF1ZSBib3JyYXJcbiAgfVxuICByZXR1cm4gZGF0YTtcbn1cblxuZnVuY3Rpb24gcGVlazxUPihuYW1lOiBzdHJpbmcpOiBUIHwgbnVsbCB7XG4gIHJldHVybiByZWFkPFQ+KGJ1aWxkS2V5KG5hbWUpKTtcbn1cblxuZnVuY3Rpb24gcmVtb3ZlKG5hbWU6IHN0cmluZyk6IHZvaWQge1xuICB0cnkge1xuICAgIHNlc3Npb25TdG9yYWdlLnJlbW92ZUl0ZW0oYnVpbGRLZXkobmFtZSkpO1xuICB9IGNhdGNoIHtcbiAgICAvLyBzZXNzaW9uU3RvcmFnZSBubyBkaXNwb25pYmxlIC0gbm8gaGF5IG5hZGEgcXVlIGJvcnJhclxuICB9XG59XG5cbmV4cG9ydCBjb25zdCBuYXZpZ2F0aW9uU3RhdGUgPSB7XG4gIHNldCxcbiAgY29uc3VtZSxcbiAgcGVlayxcbiAgcmVtb3ZlLFxufTtcbiJdfQ==
|
|
@@ -2456,16 +2456,16 @@ function onExternalInvalidate(callback) {
|
|
|
2456
2456
|
};
|
|
2457
2457
|
}
|
|
2458
2458
|
|
|
2459
|
-
const DEFAULT_TTL_MS$
|
|
2460
|
-
function getOrFetch(key, fetchFn, ttlMs = DEFAULT_TTL_MS$
|
|
2459
|
+
const DEFAULT_TTL_MS$2 = 8 * 60 * 60 * 1000; // 8 horas - red de seguridad para maestros
|
|
2460
|
+
function getOrFetch(key, fetchFn, ttlMs = DEFAULT_TTL_MS$2) {
|
|
2461
2461
|
const cached = getItem(key);
|
|
2462
2462
|
if (cached)
|
|
2463
2463
|
return of(cached);
|
|
2464
2464
|
return fetchFn().pipe(tap(data => setItem(key, data, ttlMs)));
|
|
2465
2465
|
}
|
|
2466
2466
|
|
|
2467
|
-
const DEFAULT_TTL_MS = 8 * 60 * 60 * 1000; // 8 horas - red de seguridad para maestros
|
|
2468
|
-
function Cacheable(key, ttlMs = DEFAULT_TTL_MS) {
|
|
2467
|
+
const DEFAULT_TTL_MS$1 = 8 * 60 * 60 * 1000; // 8 horas - red de seguridad para maestros
|
|
2468
|
+
function Cacheable(key, ttlMs = DEFAULT_TTL_MS$1) {
|
|
2469
2469
|
return function (target, propertyKey, descriptor) {
|
|
2470
2470
|
const originalMethod = descriptor.value;
|
|
2471
2471
|
descriptor.value = function (...args) {
|
|
@@ -2488,6 +2488,81 @@ const cache = {
|
|
|
2488
2488
|
getOrFetch,
|
|
2489
2489
|
};
|
|
2490
2490
|
|
|
2491
|
+
const NAVIGATION_STATE_VERSION = 1;
|
|
2492
|
+
const KEY_PREFIX = 'libey:nav:';
|
|
2493
|
+
const DEFAULT_TTL_MS = 60 * 1000;
|
|
2494
|
+
function buildKey(name) {
|
|
2495
|
+
if (!name)
|
|
2496
|
+
throw new Error('navigationState: el nombre no puede estar vacio');
|
|
2497
|
+
return KEY_PREFIX + name;
|
|
2498
|
+
}
|
|
2499
|
+
function read(key) {
|
|
2500
|
+
let raw;
|
|
2501
|
+
try {
|
|
2502
|
+
raw = sessionStorage.getItem(key);
|
|
2503
|
+
}
|
|
2504
|
+
catch (_a) {
|
|
2505
|
+
return null;
|
|
2506
|
+
}
|
|
2507
|
+
if (!raw)
|
|
2508
|
+
return null;
|
|
2509
|
+
try {
|
|
2510
|
+
const entry = JSON.parse(raw);
|
|
2511
|
+
const isOldVersion = entry.version !== NAVIGATION_STATE_VERSION;
|
|
2512
|
+
const isExpired = Date.now() > entry.expiresAt;
|
|
2513
|
+
if (isOldVersion || isExpired) {
|
|
2514
|
+
sessionStorage.removeItem(key);
|
|
2515
|
+
return null;
|
|
2516
|
+
}
|
|
2517
|
+
return entry.data;
|
|
2518
|
+
}
|
|
2519
|
+
catch (_b) {
|
|
2520
|
+
sessionStorage.removeItem(key);
|
|
2521
|
+
return null;
|
|
2522
|
+
}
|
|
2523
|
+
}
|
|
2524
|
+
function set(name, data, ttlMs = DEFAULT_TTL_MS) {
|
|
2525
|
+
const entry = {
|
|
2526
|
+
version: NAVIGATION_STATE_VERSION,
|
|
2527
|
+
data,
|
|
2528
|
+
expiresAt: Date.now() + ttlMs,
|
|
2529
|
+
};
|
|
2530
|
+
try {
|
|
2531
|
+
sessionStorage.setItem(buildKey(name), JSON.stringify(entry));
|
|
2532
|
+
}
|
|
2533
|
+
catch (error) {
|
|
2534
|
+
console.error(`navigationState: no se pudo guardar "${name}":`, error);
|
|
2535
|
+
}
|
|
2536
|
+
}
|
|
2537
|
+
function consume(name) {
|
|
2538
|
+
const key = buildKey(name);
|
|
2539
|
+
const data = read(key);
|
|
2540
|
+
try {
|
|
2541
|
+
sessionStorage.removeItem(key);
|
|
2542
|
+
}
|
|
2543
|
+
catch (_a) {
|
|
2544
|
+
// sessionStorage no disponible - no hay nada que borrar
|
|
2545
|
+
}
|
|
2546
|
+
return data;
|
|
2547
|
+
}
|
|
2548
|
+
function peek(name) {
|
|
2549
|
+
return read(buildKey(name));
|
|
2550
|
+
}
|
|
2551
|
+
function remove(name) {
|
|
2552
|
+
try {
|
|
2553
|
+
sessionStorage.removeItem(buildKey(name));
|
|
2554
|
+
}
|
|
2555
|
+
catch (_a) {
|
|
2556
|
+
// sessionStorage no disponible - no hay nada que borrar
|
|
2557
|
+
}
|
|
2558
|
+
}
|
|
2559
|
+
const navigationState = {
|
|
2560
|
+
set,
|
|
2561
|
+
consume,
|
|
2562
|
+
peek,
|
|
2563
|
+
remove,
|
|
2564
|
+
};
|
|
2565
|
+
|
|
2491
2566
|
/*
|
|
2492
2567
|
* Public API Surface of libey-ng-component-library
|
|
2493
2568
|
*/
|
|
@@ -2496,5 +2571,5 @@ const cache = {
|
|
|
2496
2571
|
* Generated bundle index. Do not edit.
|
|
2497
2572
|
*/
|
|
2498
2573
|
|
|
2499
|
-
export { Cacheable, CpmIndicatorMode, CpmItemType, DEFAULT_THRESHOLDS, IconsModule, LibeyColumnDirective, LibeyNgComponentLibraryComponent, LibeyNgComponentLibraryModule, LibeyNgComponentLibraryService, LibeyNgCpmIndicatorComponent, LibeyNgCpmIndicatorModule, LibeyNgIconsComponent, LibeyNgSignatureComponent, LibeyNgSignatureModule, LibeyNgTableComponent, LibeyNgTableModule, SigWebTablet, ZONE_COLORS, cache };
|
|
2574
|
+
export { Cacheable, CpmIndicatorMode, CpmItemType, DEFAULT_THRESHOLDS, IconsModule, LibeyColumnDirective, LibeyNgComponentLibraryComponent, LibeyNgComponentLibraryModule, LibeyNgComponentLibraryService, LibeyNgCpmIndicatorComponent, LibeyNgCpmIndicatorModule, LibeyNgIconsComponent, LibeyNgSignatureComponent, LibeyNgSignatureModule, LibeyNgTableComponent, LibeyNgTableModule, SigWebTablet, ZONE_COLORS, cache, navigationState };
|
|
2500
2575
|
//# sourceMappingURL=libey-ng-component-library.js.map
|