libey-ng-component-library 0.0.39 → 0.0.41

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.
@@ -20,4 +20,5 @@ export { SignaturePadModule, SignaturePad };
20
20
  export { NgSelectModule } from '@ng-select/ng-select';
21
21
  export { NgbModule } from '@ng-bootstrap/ng-bootstrap';
22
22
  export * from '@popperjs/core';
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2xpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5L3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLGlFQUFpRSxDQUFDO0FBQ2hGLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsWUFBWSxFQUFFLENBQUM7QUFDNUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN2RCxjQUFjLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGxpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5XHJcbiAqL1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbGliZXktbmctY29tcG9uZW50LWxpYnJhcnkuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2xpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5Lm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RhYmxlL2xpYmV5LW5nLXRhYmxlLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RhYmxlL2xpYmV5LW5nLXRhYmxlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RhYmxlL2RpcmVjdGl2ZXMvbGliZXktY29sdW1uLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NpZ25hdHVyZS9saWJleS1uZy1zaWduYXR1cmUubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2lnbmF0dXJlL2xpYmV5LW5nLXNpZ25hdHVyZS9saWJleS1uZy1zaWduYXR1cmUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi91dGlscy9TaWdXZWIvU2lnV2ViJztcclxuZXhwb3J0ICogZnJvbSAnLi91dGlscy9DcG1JbmRpY2F0b3IvY3BtLWluZGljYXRvci10eXBlcyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ljb25zL2ljb25zLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ljb25zL2xpYmV5LW5nLWljb25zL2xpYmV5LW5nLWljb25zLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NwbS1pbmRpY2F0b3IvbGliZXktbmctY3BtLWluZGljYXRvci5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jcG0taW5kaWNhdG9yL2xpYmV5LW5nLWNwbS1pbmRpY2F0b3IuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2lnbmF0dXJlUGFkTW9kdWxlLCBTaWduYXR1cmVQYWQgfSBmcm9tICdhbmd1bGFyMi1zaWduYXR1cmVwYWQnO1xyXG5leHBvcnQgeyBTaWduYXR1cmVQYWRNb2R1bGUsIFNpZ25hdHVyZVBhZCB9O1xyXG5leHBvcnQgeyBOZ1NlbGVjdE1vZHVsZSB9IGZyb20gJ0BuZy1zZWxlY3Qvbmctc2VsZWN0JztcclxuZXhwb3J0IHsgTmdiTW9kdWxlIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xyXG5leHBvcnQgKiBmcm9tICdAcG9wcGVyanMvY29yZSc7XHJcbiJdfQ==
23
+ export * from './utils/Cache/cache';
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2xpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5L3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLGlFQUFpRSxDQUFDO0FBQ2hGLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLHNEQUFzRCxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsWUFBWSxFQUFFLENBQUM7QUFDNUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN2RCxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgbGliZXktbmctY29tcG9uZW50LWxpYnJhcnlcclxuICovXHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9saWJleS1uZy1jb21wb25lbnQtbGlicmFyeS5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbGliZXktbmctY29tcG9uZW50LWxpYnJhcnkuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvbGliZXktbmctY29tcG9uZW50LWxpYnJhcnkubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdGFibGUvbGliZXktbmctdGFibGUubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdGFibGUvbGliZXktbmctdGFibGUuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvdGFibGUvZGlyZWN0aXZlcy9saWJleS1jb2x1bW4uZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2lnbmF0dXJlL2xpYmV5LW5nLXNpZ25hdHVyZS5tb2R1bGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zaWduYXR1cmUvbGliZXktbmctc2lnbmF0dXJlL2xpYmV5LW5nLXNpZ25hdHVyZS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3V0aWxzL1NpZ1dlYi9TaWdXZWInO1xyXG5leHBvcnQgKiBmcm9tICcuL3V0aWxzL0NwbUluZGljYXRvci9jcG0taW5kaWNhdG9yLXR5cGVzJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaWNvbnMvaWNvbnMubW9kdWxlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvaWNvbnMvbGliZXktbmctaWNvbnMvbGliZXktbmctaWNvbnMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY3BtLWluZGljYXRvci9saWJleS1uZy1jcG0taW5kaWNhdG9yLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NwbS1pbmRpY2F0b3IvbGliZXktbmctY3BtLWluZGljYXRvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTaWduYXR1cmVQYWRNb2R1bGUsIFNpZ25hdHVyZVBhZCB9IGZyb20gJ2FuZ3VsYXIyLXNpZ25hdHVyZXBhZCc7XHJcbmV4cG9ydCB7IFNpZ25hdHVyZVBhZE1vZHVsZSwgU2lnbmF0dXJlUGFkIH07XHJcbmV4cG9ydCB7IE5nU2VsZWN0TW9kdWxlIH0gZnJvbSAnQG5nLXNlbGVjdC9uZy1zZWxlY3QnO1xyXG5leHBvcnQgeyBOZ2JNb2R1bGUgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XHJcbmV4cG9ydCAqIGZyb20gJ0Bwb3BwZXJqcy9jb3JlJztcclxuZXhwb3J0ICogZnJvbSAnLi91dGlscy9DYWNoZS9jYWNoZSc7XHJcbiJdfQ==
@@ -0,0 +1,13 @@
1
+ import { getOrFetch } from './cache-helpers';
2
+ const DEFAULT_TTL_MS = 8 * 60 * 60 * 1000; // 8 horas - red de seguridad para maestros
3
+ export function Cacheable(key, ttlMs = DEFAULT_TTL_MS) {
4
+ return function (target, propertyKey, descriptor) {
5
+ const originalMethod = descriptor.value;
6
+ descriptor.value = function (...args) {
7
+ const resolvedKey = typeof key === 'function' ? key(...args) : key;
8
+ return getOrFetch(resolvedKey, () => originalMethod.apply(this, args), ttlMs);
9
+ };
10
+ return descriptor;
11
+ };
12
+ }
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUtZGVjb3JhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliZXktbmctY29tcG9uZW50LWxpYnJhcnkvc3JjL3V0aWxzL0NhY2hlL2NhY2hlLWRlY29yYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFN0MsTUFBTSxjQUFjLEdBQUcsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUMsMkNBQTJDO0FBSXRGLE1BQU0sVUFBVSxTQUFTLENBQUMsR0FBeUIsRUFBRSxRQUFnQixjQUFjO0lBQ2pGLE9BQU8sVUFBVSxNQUFXLEVBQUUsV0FBbUIsRUFBRSxVQUE4QjtRQUMvRSxNQUFNLGNBQWMsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDO1FBRXhDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsVUFBVSxHQUFHLElBQVc7WUFDekMsTUFBTSxXQUFXLEdBQUcsT0FBTyxHQUFHLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO1lBQ25FLE9BQU8sVUFBVSxDQUFDLFdBQVcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNoRixDQUFDLENBQUM7UUFFRixPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBnZXRPckZldGNoIH0gZnJvbSAnLi9jYWNoZS1oZWxwZXJzJztcclxuXHJcbmNvbnN0IERFRkFVTFRfVFRMX01TID0gOCAqIDYwICogNjAgKiAxMDAwOyAvLyA4IGhvcmFzIC0gcmVkIGRlIHNlZ3VyaWRhZCBwYXJhIG1hZXN0cm9zXHJcblxyXG50eXBlIEtleVJlc29sdmVyID0gKC4uLmFyZ3M6IGFueVtdKSA9PiBzdHJpbmc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gQ2FjaGVhYmxlKGtleTogc3RyaW5nIHwgS2V5UmVzb2x2ZXIsIHR0bE1zOiBudW1iZXIgPSBERUZBVUxUX1RUTF9NUykge1xyXG4gIHJldHVybiBmdW5jdGlvbiAodGFyZ2V0OiBhbnksIHByb3BlcnR5S2V5OiBzdHJpbmcsIGRlc2NyaXB0b3I6IFByb3BlcnR5RGVzY3JpcHRvcikge1xyXG4gICAgY29uc3Qgb3JpZ2luYWxNZXRob2QgPSBkZXNjcmlwdG9yLnZhbHVlO1xyXG5cclxuICAgIGRlc2NyaXB0b3IudmFsdWUgPSBmdW5jdGlvbiAoLi4uYXJnczogYW55W10pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgICBjb25zdCByZXNvbHZlZEtleSA9IHR5cGVvZiBrZXkgPT09ICdmdW5jdGlvbicgPyBrZXkoLi4uYXJncykgOiBrZXk7XHJcbiAgICAgIHJldHVybiBnZXRPckZldGNoKHJlc29sdmVkS2V5LCAoKSA9PiBvcmlnaW5hbE1ldGhvZC5hcHBseSh0aGlzLCBhcmdzKSwgdHRsTXMpO1xyXG4gICAgfTtcclxuXHJcbiAgICByZXR1cm4gZGVzY3JpcHRvcjtcclxuICB9O1xyXG59XHJcbiJdfQ==
@@ -0,0 +1,11 @@
1
+ import { of } from 'rxjs';
2
+ import { tap } from 'rxjs/operators';
3
+ import { getItem, setItem } from './cache-storage';
4
+ const DEFAULT_TTL_MS = 8 * 60 * 60 * 1000; // 8 horas - red de seguridad para maestros
5
+ export function getOrFetch(key, fetchFn, ttlMs = DEFAULT_TTL_MS) {
6
+ const cached = getItem(key);
7
+ if (cached)
8
+ return of(cached);
9
+ return fetchFn().pipe(tap(data => setItem(key, data, ttlMs)));
10
+ }
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUtaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5L3NyYy91dGlscy9DYWNoZS9jYWNoZS1oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFbkQsTUFBTSxjQUFjLEdBQUcsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUMsMkNBQTJDO0FBRXRGLE1BQU0sVUFBVSxVQUFVLENBQ3hCLEdBQVcsRUFDWCxPQUE0QixFQUM1QixRQUFnQixjQUFjO0lBRTlCLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBSSxHQUFHLENBQUMsQ0FBQztJQUMvQixJQUFJLE1BQU07UUFBRSxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUU5QixPQUFPLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FDbkIsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FDdkMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IGdldEl0ZW0sIHNldEl0ZW0gfSBmcm9tICcuL2NhY2hlLXN0b3JhZ2UnO1xyXG5cclxuY29uc3QgREVGQVVMVF9UVExfTVMgPSA4ICogNjAgKiA2MCAqIDEwMDA7IC8vIDggaG9yYXMgLSByZWQgZGUgc2VndXJpZGFkIHBhcmEgbWFlc3Ryb3NcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRPckZldGNoPFQ+KFxyXG4gIGtleTogc3RyaW5nLFxyXG4gIGZldGNoRm46ICgpID0+IE9ic2VydmFibGU8VD4sXHJcbiAgdHRsTXM6IG51bWJlciA9IERFRkFVTFRfVFRMX01TXHJcbik6IE9ic2VydmFibGU8VD4ge1xyXG4gIGNvbnN0IGNhY2hlZCA9IGdldEl0ZW08VD4oa2V5KTtcclxuICBpZiAoY2FjaGVkKSByZXR1cm4gb2YoY2FjaGVkKTtcclxuXHJcbiAgcmV0dXJuIGZldGNoRm4oKS5waXBlKFxyXG4gICAgdGFwKGRhdGEgPT4gc2V0SXRlbShrZXksIGRhdGEsIHR0bE1zKSlcclxuICApO1xyXG59XHJcbiJdfQ==
@@ -0,0 +1,32 @@
1
+ const CACHE_VERSION = 1;
2
+ export function setItem(key, value, ttlMs) {
3
+ const entry = {
4
+ version: CACHE_VERSION,
5
+ data: value,
6
+ expiresAt: Date.now() + ttlMs,
7
+ };
8
+ localStorage.setItem(key, JSON.stringify(entry));
9
+ }
10
+ export function getItem(key) {
11
+ const raw = localStorage.getItem(key);
12
+ if (!raw)
13
+ return null;
14
+ try {
15
+ const entry = JSON.parse(raw);
16
+ const isOldVersion = entry.version !== CACHE_VERSION;
17
+ const isExpired = Date.now() > entry.expiresAt;
18
+ if (isOldVersion || isExpired) {
19
+ localStorage.removeItem(key);
20
+ return null;
21
+ }
22
+ return entry.data;
23
+ }
24
+ catch (_a) {
25
+ localStorage.removeItem(key);
26
+ return null;
27
+ }
28
+ }
29
+ export function removeItem(key) {
30
+ localStorage.removeItem(key);
31
+ }
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUtc3RvcmFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5L3NyYy91dGlscy9DYWNoZS9jYWNoZS1zdG9yYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sYUFBYSxHQUFHLENBQUMsQ0FBQztBQUV4QixNQUFNLFVBQVUsT0FBTyxDQUFJLEdBQVcsRUFBRSxLQUFRLEVBQUUsS0FBYTtJQUM3RCxNQUFNLEtBQUssR0FBa0I7UUFDM0IsT0FBTyxFQUFFLGFBQWE7UUFDdEIsSUFBSSxFQUFFLEtBQUs7UUFDWCxTQUFTLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLEtBQUs7S0FDOUIsQ0FBQztJQUNGLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztBQUNuRCxDQUFDO0FBRUQsTUFBTSxVQUFVLE9BQU8sQ0FBSSxHQUFXO0lBQ3BDLE1BQU0sR0FBRyxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdEMsSUFBSSxDQUFDLEdBQUc7UUFBRSxPQUFPLElBQUksQ0FBQztJQUV0QixJQUFJO1FBQ0YsTUFBTSxLQUFLLEdBQWtCLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFN0MsTUFBTSxZQUFZLEdBQUcsS0FBSyxDQUFDLE9BQU8sS0FBSyxhQUFhLENBQUM7UUFDckQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUM7UUFFL0MsSUFBSSxZQUFZLElBQUksU0FBUyxFQUFFO1lBQzdCLFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDN0IsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQztLQUNuQjtJQUFDLFdBQU07UUFDTixZQUFZLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzdCLE9BQU8sSUFBSSxDQUFDO0tBQ2I7QUFDSCxDQUFDO0FBRUQsTUFBTSxVQUFVLFVBQVUsQ0FBQyxHQUFXO0lBQ3BDLFlBQVksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDL0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENhY2hlRW50cnkgfSBmcm9tICcuL2NhY2hlLXR5cGVzJztcclxuXHJcbmNvbnN0IENBQ0hFX1ZFUlNJT04gPSAxO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNldEl0ZW08VD4oa2V5OiBzdHJpbmcsIHZhbHVlOiBULCB0dGxNczogbnVtYmVyKTogdm9pZCB7XHJcbiAgY29uc3QgZW50cnk6IENhY2hlRW50cnk8VD4gPSB7XHJcbiAgICB2ZXJzaW9uOiBDQUNIRV9WRVJTSU9OLFxyXG4gICAgZGF0YTogdmFsdWUsXHJcbiAgICBleHBpcmVzQXQ6IERhdGUubm93KCkgKyB0dGxNcyxcclxuICB9O1xyXG4gIGxvY2FsU3RvcmFnZS5zZXRJdGVtKGtleSwgSlNPTi5zdHJpbmdpZnkoZW50cnkpKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldEl0ZW08VD4oa2V5OiBzdHJpbmcpOiBUIHwgbnVsbCB7XHJcbiAgY29uc3QgcmF3ID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oa2V5KTtcclxuICBpZiAoIXJhdykgcmV0dXJuIG51bGw7XHJcblxyXG4gIHRyeSB7XHJcbiAgICBjb25zdCBlbnRyeTogQ2FjaGVFbnRyeTxUPiA9IEpTT04ucGFyc2UocmF3KTtcclxuXHJcbiAgICBjb25zdCBpc09sZFZlcnNpb24gPSBlbnRyeS52ZXJzaW9uICE9PSBDQUNIRV9WRVJTSU9OO1xyXG4gICAgY29uc3QgaXNFeHBpcmVkID0gRGF0ZS5ub3coKSA+IGVudHJ5LmV4cGlyZXNBdDtcclxuXHJcbiAgICBpZiAoaXNPbGRWZXJzaW9uIHx8IGlzRXhwaXJlZCkge1xyXG4gICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShrZXkpO1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZW50cnkuZGF0YTtcclxuICB9IGNhdGNoIHtcclxuICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGtleSk7XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVJdGVtKGtleTogc3RyaW5nKTogdm9pZCB7XHJcbiAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oa2V5KTtcclxufVxyXG4iXX0=
@@ -0,0 +1,19 @@
1
+ const CHANNEL_NAME = 'libey-cache-sync';
2
+ let channel = null;
3
+ function getChannel() {
4
+ if (!channel) {
5
+ channel = new BroadcastChannel(CHANNEL_NAME);
6
+ }
7
+ return channel;
8
+ }
9
+ export function broadcastInvalidate(key) {
10
+ getChannel().postMessage({ type: 'invalidate', key });
11
+ }
12
+ export function onExternalInvalidate(callback) {
13
+ getChannel().onmessage = (event) => {
14
+ if (event.data.type === 'invalidate') {
15
+ callback(event.data.key);
16
+ }
17
+ };
18
+ }
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUtc3luYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpYmV5LW5nLWNvbXBvbmVudC1saWJyYXJ5L3NyYy91dGlscy9DYWNoZS9jYWNoZS1zeW5jLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sWUFBWSxHQUFHLGtCQUFrQixDQUFDO0FBQ3hDLElBQUksT0FBTyxHQUE0QixJQUFJLENBQUM7QUFFNUMsU0FBUyxVQUFVO0lBQ2pCLElBQUksQ0FBQyxPQUFPLEVBQUU7UUFDWixPQUFPLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztLQUM5QztJQUNELE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUM7QUFFRCxNQUFNLFVBQVUsbUJBQW1CLENBQUMsR0FBVztJQUM3QyxVQUFVLEVBQUUsQ0FBQyxXQUFXLENBQUMsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLEdBQUcsRUFBaUIsQ0FBQyxDQUFDO0FBQ3ZFLENBQUM7QUFFRCxNQUFNLFVBQVUsb0JBQW9CLENBQUMsUUFBK0I7SUFDbEUsVUFBVSxFQUFFLENBQUMsU0FBUyxHQUFHLENBQUMsS0FBZ0MsRUFBRSxFQUFFO1FBQzVELElBQUksS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssWUFBWSxFQUFFO1lBQ3BDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQzFCO0lBQ0gsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbInR5cGUgU3luY01lc3NhZ2UgPSB7IHR5cGU6ICdpbnZhbGlkYXRlJzsga2V5OiBzdHJpbmcgfTtcclxuXHJcbmNvbnN0IENIQU5ORUxfTkFNRSA9ICdsaWJleS1jYWNoZS1zeW5jJztcclxubGV0IGNoYW5uZWw6IEJyb2FkY2FzdENoYW5uZWwgfCBudWxsID0gbnVsbDtcclxuXHJcbmZ1bmN0aW9uIGdldENoYW5uZWwoKTogQnJvYWRjYXN0Q2hhbm5lbCB7XHJcbiAgaWYgKCFjaGFubmVsKSB7XHJcbiAgICBjaGFubmVsID0gbmV3IEJyb2FkY2FzdENoYW5uZWwoQ0hBTk5FTF9OQU1FKTtcclxuICB9XHJcbiAgcmV0dXJuIGNoYW5uZWw7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBicm9hZGNhc3RJbnZhbGlkYXRlKGtleTogc3RyaW5nKTogdm9pZCB7XHJcbiAgZ2V0Q2hhbm5lbCgpLnBvc3RNZXNzYWdlKHsgdHlwZTogJ2ludmFsaWRhdGUnLCBrZXkgfSBhcyBTeW5jTWVzc2FnZSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBvbkV4dGVybmFsSW52YWxpZGF0ZShjYWxsYmFjazogKGtleTogc3RyaW5nKSA9PiB2b2lkKTogdm9pZCB7XHJcbiAgZ2V0Q2hhbm5lbCgpLm9ubWVzc2FnZSA9IChldmVudDogTWVzc2FnZUV2ZW50PFN5bmNNZXNzYWdlPikgPT4ge1xyXG4gICAgaWYgKGV2ZW50LmRhdGEudHlwZSA9PT0gJ2ludmFsaWRhdGUnKSB7XHJcbiAgICAgIGNhbGxiYWNrKGV2ZW50LmRhdGEua2V5KTtcclxuICAgIH1cclxuICB9O1xyXG59XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUtdHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saWJleS1uZy1jb21wb25lbnQtbGlicmFyeS9zcmMvdXRpbHMvQ2FjaGUvY2FjaGUtdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgQ2FjaGVFbnRyeTxUPiB7XHJcbiAgdmVyc2lvbjogbnVtYmVyO1xyXG4gIGRhdGE6IFQ7XHJcbiAgZXhwaXJlc0F0OiBudW1iZXI7XHJcbn1cclxuIl19
@@ -0,0 +1,17 @@
1
+ import { setItem, getItem, removeItem } from './cache-storage';
2
+ import { broadcastInvalidate, onExternalInvalidate } from './cache-sync';
3
+ import { getOrFetch } from './cache-helpers';
4
+ function invalidate(key) {
5
+ removeItem(key);
6
+ broadcastInvalidate(key);
7
+ }
8
+ onExternalInvalidate((key) => removeItem(key));
9
+ export const cache = {
10
+ get: getItem,
11
+ set: setItem,
12
+ invalidate,
13
+ getOrFetch,
14
+ };
15
+ export * from './cache-types';
16
+ export * from './cache-decorator'; // exporta el decorador @Cacheable
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saWJleS1uZy1jb21wb25lbnQtbGlicmFyeS9zcmMvdXRpbHMvQ2FjaGUvY2FjaGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU3QyxTQUFTLFVBQVUsQ0FBQyxHQUFXO0lBQzdCLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNoQixtQkFBbUIsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUMzQixDQUFDO0FBRUQsb0JBQW9CLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0FBRS9DLE1BQU0sQ0FBQyxNQUFNLEtBQUssR0FBRztJQUNuQixHQUFHLEVBQUUsT0FBTztJQUNaLEdBQUcsRUFBRSxPQUFPO0lBQ1osVUFBVTtJQUNWLFVBQVU7Q0FDWCxDQUFDO0FBRUYsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxtQkFBbUIsQ0FBQyxDQUFDLGtDQUFrQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNldEl0ZW0sIGdldEl0ZW0sIHJlbW92ZUl0ZW0gfSBmcm9tICcuL2NhY2hlLXN0b3JhZ2UnO1xyXG5pbXBvcnQgeyBicm9hZGNhc3RJbnZhbGlkYXRlLCBvbkV4dGVybmFsSW52YWxpZGF0ZSB9IGZyb20gJy4vY2FjaGUtc3luYyc7XHJcbmltcG9ydCB7IGdldE9yRmV0Y2ggfSBmcm9tICcuL2NhY2hlLWhlbHBlcnMnO1xyXG5cclxuZnVuY3Rpb24gaW52YWxpZGF0ZShrZXk6IHN0cmluZyk6IHZvaWQge1xyXG4gIHJlbW92ZUl0ZW0oa2V5KTtcclxuICBicm9hZGNhc3RJbnZhbGlkYXRlKGtleSk7XHJcbn1cclxuXHJcbm9uRXh0ZXJuYWxJbnZhbGlkYXRlKChrZXkpID0+IHJlbW92ZUl0ZW0oa2V5KSk7XHJcblxyXG5leHBvcnQgY29uc3QgY2FjaGUgPSB7XHJcbiAgZ2V0OiBnZXRJdGVtLFxyXG4gIHNldDogc2V0SXRlbSxcclxuICBpbnZhbGlkYXRlLFxyXG4gIGdldE9yRmV0Y2gsXHJcbn07XHJcblxyXG5leHBvcnQgKiBmcm9tICcuL2NhY2hlLXR5cGVzJztcclxuZXhwb3J0ICogZnJvbSAnLi9jYWNoZS1kZWNvcmF0b3InOyAvLyBleHBvcnRhIGVsIGRlY29yYWRvciBAQ2FjaGVhYmxlXHJcbiJdfQ==