UNPKG

@datorama/akita

Version:

State Management Tailored-Made for JS Applications

28 lines 2.03 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { EMPTY } from 'rxjs'; /** * * Helper function for checking if we have data in cache * * export class ProductsService { * constructor(private productsStore: ProductsStore) {} * get(): Observable<void> { * const request = this.http.get().pipe( * tap(this.productsStore.set(response)) * ); * * return cacheable(this.productsStore, request); * } * } * @template T * @param {?} store * @param {?} request$ * @return {?} */ export function cacheable(store, request$) { return store._cache().value ? EMPTY : request$; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGVhYmxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGRhdG9yYW1hL2FraXRhLyIsInNvdXJjZXMiOlsic3JjL2NhY2hlYWJsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLEtBQUssRUFBYyxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFtQnpDLE1BQU0sVUFBVSxTQUFTLENBQUksS0FBWSxFQUFFLFFBQXVCO0lBQ2hFLE9BQU8sS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7QUFDakQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVNUFRZLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJy4vc3RvcmUnO1xuXG4vKipcbiAqIFxuICogSGVscGVyIGZ1bmN0aW9uIGZvciBjaGVja2luZyBpZiB3ZSBoYXZlIGRhdGEgaW4gY2FjaGVcbiAqIFxuICogZXhwb3J0IGNsYXNzIFByb2R1Y3RzU2VydmljZSB7XG4gKiAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcHJvZHVjdHNTdG9yZTogUHJvZHVjdHNTdG9yZSkge31cblxuICogICBnZXQoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gKiAgICAgY29uc3QgcmVxdWVzdCA9IHRoaXMuaHR0cC5nZXQoKS5waXBlKFxuICogICAgICAgdGFwKHRoaXMucHJvZHVjdHNTdG9yZS5zZXQocmVzcG9uc2UpKVxuICogICAgICk7XG4gKlxuICogICAgIHJldHVybiBjYWNoZWFibGUodGhpcy5wcm9kdWN0c1N0b3JlLCByZXF1ZXN0KTtcbiAqICAgfVxuICogfVxuICovXG5leHBvcnQgZnVuY3Rpb24gY2FjaGVhYmxlPFQ+KHN0b3JlOiBTdG9yZSwgcmVxdWVzdCQ6IE9ic2VydmFibGU8VD4pIHtcbiAgcmV0dXJuIHN0b3JlLl9jYWNoZSgpLnZhbHVlID8gRU1QVFkgOiByZXF1ZXN0JDtcbn1cbiJdfQ==