Socket
Socket
Sign inDemoInstall

@convoyr/plugin-cache

Package Overview
Dependencies
Maintainers
2
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@convoyr/plugin-cache - npm Package Compare versions

Comparing version 2.2.0 to 3.0.0

6

bundles/convoyr-plugin-cache.umd.js

@@ -253,5 +253,7 @@ (function (global, factory) {

var shouldAddCacheMetadata = this._shouldAddCacheMetadata;
var fromNetwork$ = next({
var fromNetwork$ = next
.handle({
request: request,
}).pipe(operators.mergeMap(function (response) {
})
.pipe(operators.mergeMap(function (response) {
/* Return response immediately but store in cache as side effect. */

@@ -258,0 +260,0 @@ return rxjs.merge(rxjs.of(response), _this._store(request, response).pipe(operators.switchMapTo(rxjs.EMPTY)));

@@ -1,2 +0,2 @@

!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@convoyr/core"),require("rxjs"),require("rxjs/operators"),require("buffer"),require("bytes"),require("lru-cache")):"function"==typeof define&&define.amd?define("@convoyr/plugin-cache",["exports","@convoyr/core","rxjs","rxjs/operators","buffer","bytes","lru-cache"],t):t(((e=e||self).convoyr=e.convoyr||{},e.convoyr["plugin-cache"]={}),e["@convoyr/core"],e.rxjs,e.rxjs.operators,e.buffer,e.bytes,e.LRU)}(this,(function(e,t,r,a,o,n,u){"use strict";n=n&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n,u=u&&Object.prototype.hasOwnProperty.call(u,"default")?u.default:u;var i=function(){return(i=Object.assign||function(e){for(var t,r=1,a=arguments.length;r<a;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function s(e){return{createdAt:new Date(e.createdAt),response:e.response}}var c=function(){function e(e){var t=e.addCacheMetadata,r=e.storage;this._shouldAddCacheMetadata=t,this._storage=r}return e.prototype.handle=function(e){var t=this,o=e.request,n=e.next,u=this._shouldAddCacheMetadata,i=n({request:o}).pipe(a.mergeMap((function(e){return r.merge(r.of(e),t._store(o,e).pipe(a.switchMapTo(r.EMPTY)))})),a.shareReplay({refCount:!0,bufferSize:1})),s=r.defer((function(){return t._load(o)})).pipe(a.map((function(e){return t._createResponseWithOptionalMetadata({response:e.response,shouldAddCacheMetadata:u,cacheMetadata:(r=e,{createdAt:r.createdAt,isFromCache:!0})});var r})),a.takeUntil(i));return r.merge(i.pipe(a.map((function(e){return t._createResponseWithOptionalMetadata({response:e,shouldAddCacheMetadata:u,cacheMetadata:{isFromCache:!1}})}))),s)},e.prototype._store=function(e,t){var a=this;return r.defer((function(){var r=a._serializeCacheKey(e),o=s({createdAt:new Date,response:t}),n=JSON.stringify(o);return a._storage.set(r,n)}))},e.prototype._load=function(e){return this._storage.get(this._serializeCacheKey(e)).pipe(a.mergeMap((function(e){if(null==e)return r.EMPTY;var t=s(JSON.parse(e));return r.of(t)})))},e.prototype._serializeCacheKey=function(e){var t=e.params,r=Object.keys(t).length>0;return JSON.stringify({u:e.url,p:r?e.params:void 0})},e.prototype._createResponseWithOptionalMetadata=function(e){var r=e.response,a=e.cacheMetadata,o=e.shouldAddCacheMetadata?{cacheMetadata:a,data:r.body}:r.body;return t.createResponse(i(i({},r),{body:o}))},e}(),p=function(){function e(e){var t=(void 0===e?{}:e).maxSize,r=void 0===t?100:t;this._lruCache=this._createLru({maxSize:r})}return e.prototype.get=function(e){var t=this;return r.defer((function(){return r.of(t._lruCache.get(e))}))},e.prototype.set=function(e,t){var a=this;return r.defer((function(){return a._lruCache.set(e,t),r.EMPTY}))},e.prototype.delete=function(e){var t=this;return r.defer((function(){return t._lruCache.del(e),r.EMPTY}))},e.prototype._createLru=function(e){var t=e.maxSize;return new u(this._createLruOptions({maxSize:t}))},e.prototype._createLruOptions=function(e){var t=e.maxSize;return"string"==typeof t?{max:n(t),length:function(e){return o.Buffer.from(e).length}}:{max:t}},e}(),d=function(e){var t=e.request;return"GET"===t.method&&"json"===t.responseType};e.MemoryStorage=p,e.createCachePlugin=function(e){var t=void 0===e?{}:e,r=t.addCacheMetadata,a=void 0!==r&&r,o=t.storage,n=void 0===o?new p({maxSize:100}):o,u=t.shouldHandleRequest;return{shouldHandleRequest:void 0===u?d:u,handler:new c({addCacheMetadata:a,storage:n})}},e.ɵa=c,Object.defineProperty(e,"__esModule",{value:!0})}));
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@convoyr/core"),require("rxjs"),require("rxjs/operators"),require("buffer"),require("bytes"),require("lru-cache")):"function"==typeof define&&define.amd?define("@convoyr/plugin-cache",["exports","@convoyr/core","rxjs","rxjs/operators","buffer","bytes","lru-cache"],t):t(((e=e||self).convoyr=e.convoyr||{},e.convoyr["plugin-cache"]={}),e["@convoyr/core"],e.rxjs,e.rxjs.operators,e.buffer,e.bytes,e.LRU)}(this,(function(e,t,r,a,o,n,u){"use strict";n=n&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n,u=u&&Object.prototype.hasOwnProperty.call(u,"default")?u.default:u;var i=function(){return(i=Object.assign||function(e){for(var t,r=1,a=arguments.length;r<a;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function s(e){return{createdAt:new Date(e.createdAt),response:e.response}}var c=function(){function e(e){var t=e.addCacheMetadata,r=e.storage;this._shouldAddCacheMetadata=t,this._storage=r}return e.prototype.handle=function(e){var t=this,o=e.request,n=e.next,u=this._shouldAddCacheMetadata,i=n.handle({request:o}).pipe(a.mergeMap((function(e){return r.merge(r.of(e),t._store(o,e).pipe(a.switchMapTo(r.EMPTY)))})),a.shareReplay({refCount:!0,bufferSize:1})),s=r.defer((function(){return t._load(o)})).pipe(a.map((function(e){return t._createResponseWithOptionalMetadata({response:e.response,shouldAddCacheMetadata:u,cacheMetadata:(r=e,{createdAt:r.createdAt,isFromCache:!0})});var r})),a.takeUntil(i));return r.merge(i.pipe(a.map((function(e){return t._createResponseWithOptionalMetadata({response:e,shouldAddCacheMetadata:u,cacheMetadata:{isFromCache:!1}})}))),s)},e.prototype._store=function(e,t){var a=this;return r.defer((function(){var r=a._serializeCacheKey(e),o=s({createdAt:new Date,response:t}),n=JSON.stringify(o);return a._storage.set(r,n)}))},e.prototype._load=function(e){return this._storage.get(this._serializeCacheKey(e)).pipe(a.mergeMap((function(e){if(null==e)return r.EMPTY;var t=s(JSON.parse(e));return r.of(t)})))},e.prototype._serializeCacheKey=function(e){var t=e.params,r=Object.keys(t).length>0;return JSON.stringify({u:e.url,p:r?e.params:void 0})},e.prototype._createResponseWithOptionalMetadata=function(e){var r=e.response,a=e.cacheMetadata,o=e.shouldAddCacheMetadata?{cacheMetadata:a,data:r.body}:r.body;return t.createResponse(i(i({},r),{body:o}))},e}(),d=function(){function e(e){var t=(void 0===e?{}:e).maxSize,r=void 0===t?100:t;this._lruCache=this._createLru({maxSize:r})}return e.prototype.get=function(e){var t=this;return r.defer((function(){return r.of(t._lruCache.get(e))}))},e.prototype.set=function(e,t){var a=this;return r.defer((function(){return a._lruCache.set(e,t),r.EMPTY}))},e.prototype.delete=function(e){var t=this;return r.defer((function(){return t._lruCache.del(e),r.EMPTY}))},e.prototype._createLru=function(e){var t=e.maxSize;return new u(this._createLruOptions({maxSize:t}))},e.prototype._createLruOptions=function(e){var t=e.maxSize;return"string"==typeof t?{max:n(t),length:function(e){return o.Buffer.from(e).length}}:{max:t}},e}(),p=function(e){var t=e.request;return"GET"===t.method&&"json"===t.responseType};e.MemoryStorage=d,e.createCachePlugin=function(e){var t=void 0===e?{}:e,r=t.addCacheMetadata,a=void 0!==r&&r,o=t.storage,n=void 0===o?new d({maxSize:100}):o,u=t.shouldHandleRequest;return{shouldHandleRequest:void 0===u?p:u,handler:new c({addCacheMetadata:a,storage:n})}},e.ɵa=c,Object.defineProperty(e,"__esModule",{value:!0})}));
//# sourceMappingURL=convoyr-plugin-cache.umd.min.js.map

@@ -6,2 +6,19 @@ # Change Log

# [3.0.0](https://github.com/jscutlery/convoyr/compare/v2.2.0...v3.0.0) (2020-04-24)
### Features
* ✅ `NextFn` to `NextHandler` object ([530cb97](https://github.com/jscutlery/convoyr/commit/530cb97dab4404bfc9e2ad5b035a855a73b95a39))
### BREAKING CHANGES
* The `NextFn` type used for calling the next plugin and
the final HTTP handler is removed in favor of an object following the `NextHandler` interface.
# [2.2.0](https://github.com/jscutlery/convoyr/compare/v2.1.1...v2.2.0) (2020-04-23)

@@ -8,0 +25,0 @@

@@ -13,5 +13,7 @@ import { createResponse, } from '@convoyr/core';

const shouldAddCacheMetadata = this._shouldAddCacheMetadata;
const fromNetwork$ = next({
const fromNetwork$ = next
.handle({
request,
}).pipe(mergeMap((response) => {
})
.pipe(mergeMap((response) => {
/* Return response immediately but store in cache as side effect. */

@@ -80,2 +82,2 @@ return merge(of(response), this._store(request, response).pipe(switchMapTo(EMPTY)));

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUtaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb252b3lyL3BsdWdpbi1jYWNoZS8iLCJzb3VyY2VzIjpbImxpYi9jYWNoZS1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxjQUFjLEdBS2YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzRCxPQUFPLEVBQ0wsR0FBRyxFQUNILFFBQVEsRUFDUixXQUFXLEVBQ1gsV0FBVyxFQUNYLFNBQVMsR0FDVixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBYyxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBRUwsbUJBQW1CLEVBQ25CLHdCQUF3QixHQUN6QixNQUFNLGtCQUFrQixDQUFDO0FBVzFCLE1BQU0sT0FBTyxZQUFZO0lBSXZCLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxPQUFPLEVBQWtCO1FBQ3ZELElBQUksQ0FBQyx1QkFBdUIsR0FBRyxnQkFBZ0IsQ0FBQztRQUNoRCxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztJQUMxQixDQUFDO0lBRUQsTUFBTSxDQUFDLEVBQ0wsT0FBTyxFQUNQLElBQUksR0FDYztRQUNsQixNQUFNLHNCQUFzQixHQUFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQztRQUU1RCxNQUFNLFlBQVksR0FBZ0MsSUFBSSxDQUFDO1lBQ3JELE9BQU87U0FDUixDQUFDLENBQUMsSUFBSSxDQUNMLFFBQVEsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQ3BCLG9FQUFvRTtZQUNwRSxPQUFPLEtBQUssQ0FDVixFQUFFLENBQUMsUUFBUSxDQUFDLEVBQ1osSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMs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QUFRLENBQUMsSUFBSTthQUNFO1lBQ3pCLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQ2xCLE9BQU8sY0FBYyxpQ0FDaEIsUUFBUSxLQUNYLElBQUksSUFDSixDQUFDO0lBQ0wsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgY3JlYXRlUmVzcG9uc2UsXG4gIENvbnZveXJSZXF1ZXN0LFxuICBDb252b3lyUmVzcG9uc2UsXG4gIFBsdWdpbkhhbmRsZXIsXG4gIFBsdWdpbkhhbmRsZXJBcmdzLFxufSBmcm9tICdAY29udm95ci9jb3JlJztcbmltcG9ydCB7IGRlZmVyLCBFTVBUWSwgbWVyZ2UsIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBtYXAsXG4gIG1lcmdlTWFwLFxuICBzaGFyZVJlcGxheSxcbiAgc3dpdGNoTWFwVG8sXG4gIHRha2VVbnRpbCxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBDYWNoZUVudHJ5LCBjcmVhdGVDYWNoZUVudHJ5IH0gZnJvbSAnLi9jYWNoZS1lbnRyeSc7XG5pbXBvcnQge1xuICBDYWNoZU1ldGFkYXRhLFxuICBjcmVhdGVDYWNoZU1ldGFkYXRhLFxuICBjcmVhdGVFbXB0eUNhY2hlTWV0YWRhdGEsXG59IGZyb20gJy4vY2FjaGUtbWV0YWRhdGEnO1xuaW1wb3J0IHsgQ29udm95Q2FjaGVSZXNwb25zZSwgV2l0aENhY2hlTWV0YWRhdGEgfSBmcm9tICcuL2NhY2hlLXJlc3BvbnNlJztcbmltcG9ydCB7IFN0b3JhZ2UgfSBmcm9tICcuL3N0b3JhZ2VzL3N0b3JhZ2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEhhbmRsZXJPcHRpb25zIHtcbiAgYWRkQ2FjaGVNZXRhZGF0YTogYm9vbGVhbjtcbiAgc3RvcmFnZTogU3RvcmFnZTtcbn1cblxuZXhwb3J0IHR5cGUgQ2FjaGVIYW5kbGVyUmVzcG9uc2UgPSBDb252b3lyUmVzcG9uc2UgfCBDb252b3lDYWNoZVJlc3BvbnNlO1xuXG5leHBvcnQgY2xhc3MgQ2FjaGVIYW5kbGVyIGltcGxlbWVudHMgUGx1Z2luSGFuZGxlciB7XG4gIHByaXZhdGUgX3Nob3VsZEFkZENhY2hlTWV0YWRhdGE6IGJvb2xlYW47XG4gIHByaXZhdGUgX3N0b3JhZ2U6IFN0b3JhZ2U7XG5cbiAgY29uc3RydWN0b3IoeyBhZGRDYWNoZU1ldGFkYXRhLCBzdG9yYWdlIH06IEhhbmRsZXJPcHRpb25zKSB7XG4gICAgdGhpcy5fc2hvdWxkQWRkQ2FjaGVNZXRhZGF0YSA9IGFkZENhY2hlTWV0YWRhdGE7XG4gICAgdGhpcy5fc3RvcmFnZSA9IHN0b3JhZ2U7XG4gIH1cblxuICBoYW5kbGUoe1xuICAgIHJlcXVlc3QsXG4gICAgbmV4dCxcbiAgfTogUGx1Z2luSGFuZGxlckFyZ3MpOiBPYnNlcnZhYmxlPENhY2hlSGFuZGxlclJlc3BvbnNlPiB7XG4gICAgY29uc3Qgc2hvdWxkQWRkQ2FjaGVNZXRhZGF0YSA9IHRoaXMuX3Nob3VsZEFkZENhY2hlTWV0YWRhdGE7XG5cbiAgICBjb25zdCBmcm9tTmV0d29yayQ6IE9ic2VydmFibGU8Q29udm95clJlc3BvbnNlPiA9IG5leHQoe1xuICAgICAgcmVxdWVzdCxcbiAgICB9KS5waXBlKFxuICAgICAgbWVyZ2VNYXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgIC8qIFJldHVybiByZXNwb25zZSBpbW1lZGlhdGVseSBidXQgc3RvcmUgaW4gY2FjaGUgYXMgc2lkZSBlZmZlY3QuICovXG4gICAgICAgIHJldHVybiBtZXJnZShcbiAgICAgICAgICBvZihyZXNwb25zZSksXG4gICAgICAgICAgdGhpcy5fc3RvcmUocmVxdWVzdCwgcmVzcG9uc2UpLnBpcGUoc3dpdGNoTWFwVG8oRU1QVFkpKVxuICAgICAgICApO1xuICAgICAgfSksXG4gICAgICBzaGFyZVJlcGxheSh7XG4gICAgICAgIHJlZkNvdW50OiB0cnVlLFxuICAgICAgICBidWZmZXJTaXplOiAxLFxuICAgICAgfSlcbiAgICApO1xuXG4gICAgY29uc3QgZnJvbUNhY2hlJDogT2JzZXJ2YWJsZTxDb252b3lyUmVzcG9uc2U+ID0gZGVmZXIoKCkgPT5cbiAgICAgIHRoaXMuX2xvYWQocmVxdWVzdClcbiAgICApLnBpcGUoXG4gICAgICBtYXAoKGNhY2hlRW50cnkpID0+XG4gICAgICAgIHRoaXMuX2NyZWF0ZVJlc3BvbnNlV2l0aE9wdGlvbmFsTWV0YWRhdGEoe1xuICAgICAgICAgIHJlc3BvbnNlOiBjYWNoZUVudHJ5LnJlc3BvbnNlLFxuICAgICAgICAgIHNob3VsZEFkZENhY2hlTWV0YWRhdGEsXG4gICAgICAgICAgY2FjaGVNZXRhZGF0YTogY3JlYXRlQ2FjaGVNZXRhZGF0YShjYWNoZUVudHJ5KSxcbiAgICAgICAgfSlcbiAgICAgICksXG4gICAgICB0YWtlVW50aWwoZnJvbU5ldHdvcmskKVxuICAgICk7XG5cbiAgICAvKiBPcmRlciBpcyBpbXBvcnRhbnQgaGVyZSBiZWNhdXNlIGlmIHdlIHN1YnNjcmliZSB0byBmcm9tQ2FjaGUkIGZpcnN0LCBpdCB3aWxsIHN1YnNjcmliZSB0byBmcm9tTmV0d29yayRcbiAgICAgKiBhbmQgYHRha2VVbnRpbGAgd2lsbCBpbW1lZGlhdGVseSB1bnN1YnNjcmliZSBmcm9tIGl0IGJlY2F1c2UgdGhlIHJlc3VsdCBpcyBzeW5jaHJvbm91cy5cbiAgICAgKiBJZiBmcm9tTmV0d29yayQgaXMgZmlyc3QsIGl0IHdpbGwgc3Vic2NyaWJlIGFuZCB0aGUgc3Vic2NyaXB0aW9uIHdpbGwgYmUgc2hhcmVkIHdpdGggdGhlIGB0YWtlVW50aWxgXG4gICAgICogdGhhbmtzIHRvIHNoYXJlUmVwbGF5LiAqL1xuICAgIHJldHVybiBtZXJnZShcbiAgICAgIGZyb21OZXR3b3JrJC5waXBlKFxuICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PlxuICAgICAgICAgIHRoaXMuX2NyZWF0ZVJlc3BvbnNlV2l0aE9wdGlvbmFsTWV0YWRhdGEoe1xuICAgICAgICAgICAgcmVzcG9uc2UsXG4gICAgICAgICAgICBzaG91bGRBZGRDYWNoZU1ldGFkYXRhLFxuICAgICAgICAgICAgY2FjaGVNZXRhZGF0YTogY3JlYXRlRW1wdHlDYWNoZU1ldGFkYXRhKCksXG4gICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICAgKSxcbiAgICAgIGZyb21DYWNoZSRcbiAgICApO1xuICB9XG5cbiAgLyogU3RvcmUgbWV0YWRhdGEgYmVsb25nIGNhY2hlLiAqL1xuICBwcml2YXRlIF9zdG9yZShcbiAgICByZXF1ZXN0OiBDb252b3lyUmVxdWVzdCxcbiAgICByZXNwb25zZTogQ29udm95clJlc3BvbnNlXG4gICk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiBkZWZlcigoKSA9PiB7XG4gICAgICBjb25zdCBrZXkgPSB0aGlzLl9zZXJpYWxpemVDYWNoZUtleShyZXF1ZXN0KTtcbiAgICAgIGNvbnN0IGNhY2hlRW50cnkgPSBjcmVhdGVDYWNoZUVudHJ5KHtcbiAgICAgICAgY3JlYXRlZEF0OiBuZXcgRGF0ZSgpLFxuICAgICAgICByZXNwb25zZSxcbiAgICAgIH0pO1xuICAgICAgY29uc3QgY2FjaGUgPSBKU09OLnN0cmluZ2lmeShjYWNoZUVudHJ5KTtcblxuICAgICAgcmV0dXJuIHRoaXMuX3N0b3JhZ2Uuc2V0KGtleSwgY2FjaGUpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfbG9hZChyZXF1ZXN0OiBDb252b3lyUmVxdWVzdCk6IE9ic2VydmFibGU8Q2FjaGVFbnRyeT4ge1xuICAgIHJldHVybiB0aGlzLl9zdG9yYWdlLmdldCh0aGlzLl9zZXJpYWxpemVDYWNoZUtleShyZXF1ZXN0KSkucGlwZShcbiAgICAgIG1lcmdlTWFwKChyYXdDYWNoZUVudHJ5KSA9PiB7XG4gICAgICAgIC8qIFRoZXJlJ3Mgbm8gZW50cnkuICovXG4gICAgICAgIGlmIChyYXdDYWNoZUVudHJ5ID09IG51bGwpIHtcbiAgICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICAgIH1cblxuICAgICAgICAvKiBQYXJzZSB0aGUgY2FjaGUgZW50cnkuICovXG4gICAgICAgIGNvbnN0IGNhY2hlRW50cnkgPSBjcmVhdGVDYWNoZUVudHJ5KEpTT04ucGFyc2UocmF3Q2FjaGVFbnRyeSkpO1xuXG4gICAgICAgIHJldHVybiBvZihjYWNoZUVudHJ5KTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qIENyZWF0ZSBhIHVuaXF1ZSBrZXkgYnkgcmVxdWVzdCBVUkkgdG8gcmV0cmlldmUgY2FjaGUgbGF0ZXIuICovXG4gIHByaXZhdGUgX3NlcmlhbGl6ZUNhY2hlS2V5KHJlcXVlc3Q6IENvbnZveXJSZXF1ZXN0KTogc3RyaW5nIHtcbiAgICBjb25zdCB7IHBhcmFtcyB9ID0gcmVxdWVzdDtcbiAgICBjb25zdCBoYXNQYXJhbXMgPSBPYmplY3Qua2V5cyhwYXJhbXMpLmxlbmd0aCA+IDA7XG5cbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgdTogcmVxdWVzdC51cmwsXG4gICAgICBwOiBoYXNQYXJhbXMgPyByZXF1ZXN0LnBhcmFtcyA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2NyZWF0ZVJlc3BvbnNlV2l0aE9wdGlvbmFsTWV0YWRhdGEoe1xuICAgIHJlc3BvbnNlLFxuICAgIGNhY2hlTWV0YWRhdGEsXG4gICAgc2hvdWxkQWRkQ2FjaGVNZXRhZGF0YSxcbiAgfToge1xuICAgIHJlc3BvbnNlOiBDb252b3lyUmVzcG9uc2U7XG4gICAgY2FjaGVNZXRhZGF0YTogQ2FjaGVNZXRhZGF0YTtcbiAgICBzaG91bGRBZGRDYWNoZU1ldGFkYXRhOiBib29sZWFuO1xuICB9KTogQ29udm95clJlc3BvbnNlIHwgQ29udm95Q2FjaGVSZXNwb25zZSB7XG4gICAgY29uc3QgYm9keSA9IHNob3VsZEFkZENhY2hlTWV0YWRhdGFcbiAgICAgID8gKHtcbiAgICAgICAgICBjYWNoZU1ldGFkYXRhLFxuICAgICAgICAgIGRhdGE6IHJlc3BvbnNlLmJvZHksXG4gICAgICAgIH0gYXMgV2l0aENhY2hlTWV0YWRhdGEpXG4gICAgICA6IHJlc3BvbnNlLmJvZHk7XG4gICAgcmV0dXJuIGNyZWF0ZVJlc3BvbnNlKHtcbiAgICAgIC4uLnJlc3BvbnNlLFxuICAgICAgYm9keSxcbiAgICB9KTtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUtaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb252b3lyL3BsdWdpbi1jYWNoZS8iLCJzb3VyY2VzIjpbImxpYi9jYWNoZS1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxjQUFjLEdBS2YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzRCxPQUFPLEVBQ0wsR0FBRyxFQUNILFFBQVEsRUFDUixXQUFXLEVBQ1gsV0FBVyxFQUNYLFNBQVMsR0FDVixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBYyxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBRUwsbUJBQW1CLEVBQ25CLHdCQUF3QixHQUN6QixNQUFNLGtCQUFrQixDQUFDO0FBVzFCLE1BQU0sT0FBTyxZQUFZO0lBSXZCLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxPQUFPLEVBQWtCO1FBQ3ZELElBQUksQ0FBQyx1QkFBdUIsR0FBRyxnQkFBZ0IsQ0FBQztRQUNoRCxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztJQUMxQixDQUFDO0lBRUQsTUFBTSxDQUFDLEVBQ0wsT0FBTyxFQUNQLElBQUksR0FDYztRQUNsQixNQUFNLHNCQUFzQixHQUFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQztRQUU1RCxNQUFNLFlBQVksR0FBZ0MsSUFBSTthQUNuRCxNQUFNLENBQUM7WUFDTixPQUFPO1NBQ1IsQ0FBQzthQUNELElBQUksQ0FDSCxRQUFRLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNwQixvRUFBb0U7WUFDcEUsT0FBTyxLQUFLLENBQ1YsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUNaLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMs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QUFJLEVBQUUsUUFBUSxDQUFDLElBQUk7YUFDRTtZQUN6QixDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztRQUNsQixPQUFPLGNBQWMsaUNBQ2hCLFFBQVEsS0FDWCxJQUFJLElBQ0osQ0FBQztJQUNMLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGNyZWF0ZVJlc3BvbnNlLFxuICBDb252b3lyUmVxdWVzdCxcbiAgQ29udm95clJlc3BvbnNlLFxuICBQbHVnaW5IYW5kbGVyLFxuICBQbHVnaW5IYW5kbGVyQXJncyxcbn0gZnJvbSAnQGNvbnZveXIvY29yZSc7XG5pbXBvcnQgeyBkZWZlciwgRU1QVFksIG1lcmdlLCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgbWFwLFxuICBtZXJnZU1hcCxcbiAgc2hhcmVSZXBsYXksXG4gIHN3aXRjaE1hcFRvLFxuICB0YWtlVW50aWwsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgQ2FjaGVFbnRyeSwgY3JlYXRlQ2FjaGVFbnRyeSB9IGZyb20gJy4vY2FjaGUtZW50cnknO1xuaW1wb3J0IHtcbiAgQ2FjaGVNZXRhZGF0YSxcbiAgY3JlYXRlQ2FjaGVNZXRhZGF0YSxcbiAgY3JlYXRlRW1wdHlDYWNoZU1ldGFkYXRhLFxufSBmcm9tICcuL2NhY2hlLW1ldGFkYXRhJztcbmltcG9ydCB7IENvbnZveUNhY2hlUmVzcG9uc2UsIFdpdGhDYWNoZU1ldGFkYXRhIH0gZnJvbSAnLi9jYWNoZS1yZXNwb25zZSc7XG5pbXBvcnQgeyBTdG9yYWdlIH0gZnJvbSAnLi9zdG9yYWdlcy9zdG9yYWdlJztcblxuZXhwb3J0IGludGVyZmFjZSBIYW5kbGVyT3B0aW9ucyB7XG4gIGFkZENhY2hlTWV0YWRhdGE6IGJvb2xlYW47XG4gIHN0b3JhZ2U6IFN0b3JhZ2U7XG59XG5cbmV4cG9ydCB0eXBlIENhY2hlSGFuZGxlclJlc3BvbnNlID0gQ29udm95clJlc3BvbnNlIHwgQ29udm95Q2FjaGVSZXNwb25zZTtcblxuZXhwb3J0IGNsYXNzIENhY2hlSGFuZGxlciBpbXBsZW1lbnRzIFBsdWdpbkhhbmRsZXIge1xuICBwcml2YXRlIF9zaG91bGRBZGRDYWNoZU1ldGFkYXRhOiBib29sZWFuO1xuICBwcml2YXRlIF9zdG9yYWdlOiBTdG9yYWdlO1xuXG4gIGNvbnN0cnVjdG9yKHsgYWRkQ2FjaGVNZXRhZGF0YSwgc3RvcmFnZSB9OiBIYW5kbGVyT3B0aW9ucykge1xuICAgIHRoaXMuX3Nob3VsZEFkZENhY2hlTWV0YWRhdGEgPSBhZGRDYWNoZU1ldGFkYXRhO1xuICAgIHRoaXMuX3N0b3JhZ2UgPSBzdG9yYWdlO1xuICB9XG5cbiAgaGFuZGxlKHtcbiAgICByZXF1ZXN0LFxuICAgIG5leHQsXG4gIH06IFBsdWdpbkhhbmRsZXJBcmdzKTogT2JzZXJ2YWJsZTxDYWNoZUhhbmRsZXJSZXNwb25zZT4ge1xuICAgIGNvbnN0IHNob3VsZEFkZENhY2hlTWV0YWRhdGEgPSB0aGlzLl9zaG91bGRBZGRDYWNoZU1ldGFkYXRhO1xuXG4gICAgY29uc3QgZnJvbU5ldHdvcmskOiBPYnNlcnZhYmxlPENvbnZveXJSZXNwb25zZT4gPSBuZXh0XG4gICAgICAuaGFuZGxlKHtcbiAgICAgICAgcmVxdWVzdCxcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWVyZ2VNYXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgLyogUmV0dXJuIHJlc3BvbnNlIGltbWVkaWF0ZWx5IGJ1dCBzdG9yZSBpbiBjYWNoZSBhcyBzaWRlIGVmZmVjdC4gKi9cbiAgICAgICAgICByZXR1cm4gbWVyZ2UoXG4gICAgICAgICAgICBvZihyZXNwb25zZSksXG4gICAgICAgICAgICB0aGlzLl9zdG9yZShyZXF1ZXN0LCByZXNwb25zZSkucGlwZShzd2l0Y2hNYXBUbyhFTVBUWSkpXG4gICAgICAgICAgKTtcbiAgICAgICAgfSksXG4gICAgICAgIHNoYXJlUmVwbGF5KHtcbiAgICAgICAgICByZWZDb3VudDogdHJ1ZSxcbiAgICAgICAgICBidWZmZXJTaXplOiAxLFxuICAgICAgICB9KVxuICAgICAgKTtcblxuICAgIGNvbnN0IGZyb21DYWNoZSQ6IE9ic2VydmFibGU8Q29udm95clJlc3BvbnNlPiA9IGRlZmVyKCgpID0+XG4gICAgICB0aGlzLl9sb2FkKHJlcXVlc3QpXG4gICAgKS5waXBlKFxuICAgICAgbWFwKChjYWNoZUVudHJ5KSA9PlxuICAgICAgICB0aGlzLl9jcmVhdGVSZXNwb25zZVdpdGhPcHRpb25hbE1ldGFkYXRhKHtcbiAgICAgICAgICByZXNwb25zZTogY2FjaGVFbnRyeS5yZXNwb25zZSxcbiAgICAgICAgICBzaG91bGRBZGRDYWNoZU1ldGFkYXRhLFxuICAgICAgICAgIGNhY2hlTWV0YWRhdGE6IGNyZWF0ZUNhY2hlTWV0YWRhdGEoY2FjaGVFbnRyeSksXG4gICAgICAgIH0pXG4gICAgICApLFxuICAgICAgdGFrZVVudGlsKGZyb21OZXR3b3JrJClcbiAgICApO1xuXG4gICAgLyogT3JkZXIgaXMgaW1wb3J0YW50IGhlcmUgYmVjYXVzZSBpZiB3ZSBzdWJzY3JpYmUgdG8gZnJvbUNhY2hlJCBmaXJzdCwgaXQgd2lsbCBzdWJzY3JpYmUgdG8gZnJvbU5ldHdvcmskXG4gICAgICogYW5kIGB0YWtlVW50aWxgIHdpbGwgaW1tZWRpYXRlbHkgdW5zdWJzY3JpYmUgZnJvbSBpdCBiZWNhdXNlIHRoZSByZXN1bHQgaXMgc3luY2hyb25vdXMuXG4gICAgICogSWYgZnJvbU5ldHdvcmskIGlzIGZpcnN0LCBpdCB3aWxsIHN1YnNjcmliZSBhbmQgdGhlIHN1YnNjcmlwdGlvbiB3aWxsIGJlIHNoYXJlZCB3aXRoIHRoZSBgdGFrZVVudGlsYFxuICAgICAqIHRoYW5rcyB0byBzaGFyZVJlcGxheS4gKi9cbiAgICByZXR1cm4gbWVyZ2UoXG4gICAgICBmcm9tTmV0d29yayQucGlwZShcbiAgICAgICAgbWFwKChyZXNwb25zZSkgPT5cbiAgICAgICAgICB0aGlzLl9jcmVhdGVSZXNwb25zZVdpdGhPcHRpb25hbE1ldGFkYXRhKHtcbiAgICAgICAgICAgIHJlc3BvbnNlLFxuICAgICAgICAgICAgc2hvdWxkQWRkQ2FjaGVNZXRhZGF0YSxcbiAgICAgICAgICAgIGNhY2hlTWV0YWRhdGE6IGNyZWF0ZUVtcHR5Q2FjaGVNZXRhZGF0YSgpLFxuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICAgICksXG4gICAgICBmcm9tQ2FjaGUkXG4gICAgKTtcbiAgfVxuXG4gIC8qIFN0b3JlIG1ldGFkYXRhIGJlbG9uZyBjYWNoZS4gKi9cbiAgcHJpdmF0ZSBfc3RvcmUoXG4gICAgcmVxdWVzdDogQ29udm95clJlcXVlc3QsXG4gICAgcmVzcG9uc2U6IENvbnZveXJSZXNwb25zZVxuICApOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gZGVmZXIoKCkgPT4ge1xuICAgICAgY29uc3Qga2V5ID0gdGhpcy5fc2VyaWFsaXplQ2FjaGVLZXkocmVxdWVzdCk7XG4gICAgICBjb25zdCBjYWNoZUVudHJ5ID0gY3JlYXRlQ2FjaGVFbnRyeSh7XG4gICAgICAgIGNyZWF0ZWRBdDogbmV3IERhdGUoKSxcbiAgICAgICAgcmVzcG9uc2UsXG4gICAgICB9KTtcbiAgICAgIGNvbnN0IGNhY2hlID0gSlNPTi5zdHJpbmdpZnkoY2FjaGVFbnRyeSk7XG5cbiAgICAgIHJldHVybiB0aGlzLl9zdG9yYWdlLnNldChrZXksIGNhY2hlKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2xvYWQocmVxdWVzdDogQ29udm95clJlcXVlc3QpOiBPYnNlcnZhYmxlPENhY2hlRW50cnk+IHtcbiAgICByZXR1cm4gdGhpcy5fc3RvcmFnZS5nZXQodGhpcy5fc2VyaWFsaXplQ2FjaGVLZXkocmVxdWVzdCkpLnBpcGUoXG4gICAgICBtZXJnZU1hcCgocmF3Q2FjaGVFbnRyeSkgPT4ge1xuICAgICAgICAvKiBUaGVyZSdzIG5vIGVudHJ5LiAqL1xuICAgICAgICBpZiAocmF3Q2FjaGVFbnRyeSA9PSBudWxsKSB7XG4gICAgICAgICAgcmV0dXJuIEVNUFRZO1xuICAgICAgICB9XG5cbiAgICAgICAgLyogUGFyc2UgdGhlIGNhY2hlIGVudHJ5LiAqL1xuICAgICAgICBjb25zdCBjYWNoZUVudHJ5ID0gY3JlYXRlQ2FjaGVFbnRyeShKU09OLnBhcnNlKHJhd0NhY2hlRW50cnkpKTtcblxuICAgICAgICByZXR1cm4gb2YoY2FjaGVFbnRyeSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICAvKiBDcmVhdGUgYSB1bmlxdWUga2V5IGJ5IHJlcXVlc3QgVVJJIHRvIHJldHJpZXZlIGNhY2hlIGxhdGVyLiAqL1xuICBwcml2YXRlIF9zZXJpYWxpemVDYWNoZUtleShyZXF1ZXN0OiBDb252b3lyUmVxdWVzdCk6IHN0cmluZyB7XG4gICAgY29uc3QgeyBwYXJhbXMgfSA9IHJlcXVlc3Q7XG4gICAgY29uc3QgaGFzUGFyYW1zID0gT2JqZWN0LmtleXMocGFyYW1zKS5sZW5ndGggPiAwO1xuXG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHtcbiAgICAgIHU6IHJlcXVlc3QudXJsLFxuICAgICAgcDogaGFzUGFyYW1zID8gcmVxdWVzdC5wYXJhbXMgOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9jcmVhdGVSZXNwb25zZVdpdGhPcHRpb25hbE1ldGFkYXRhKHtcbiAgICByZXNwb25zZSxcbiAgICBjYWNoZU1ldGFkYXRhLFxuICAgIHNob3VsZEFkZENhY2hlTWV0YWRhdGEsXG4gIH06IHtcbiAgICByZXNwb25zZTogQ29udm95clJlc3BvbnNlO1xuICAgIGNhY2hlTWV0YWRhdGE6IENhY2hlTWV0YWRhdGE7XG4gICAgc2hvdWxkQWRkQ2FjaGVNZXRhZGF0YTogYm9vbGVhbjtcbiAgfSk6IENvbnZveXJSZXNwb25zZSB8IENvbnZveUNhY2hlUmVzcG9uc2Uge1xuICAgIGNvbnN0IGJvZHkgPSBzaG91bGRBZGRDYWNoZU1ldGFkYXRhXG4gICAgICA/ICh7XG4gICAgICAgICAgY2FjaGVNZXRhZGF0YSxcbiAgICAgICAgICBkYXRhOiByZXNwb25zZS5ib2R5LFxuICAgICAgICB9IGFzIFdpdGhDYWNoZU1ldGFkYXRhKVxuICAgICAgOiByZXNwb25zZS5ib2R5O1xuICAgIHJldHVybiBjcmVhdGVSZXNwb25zZSh7XG4gICAgICAuLi5yZXNwb25zZSxcbiAgICAgIGJvZHksXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==

@@ -17,5 +17,7 @@ import { __assign } from "tslib";

var shouldAddCacheMetadata = this._shouldAddCacheMetadata;
var fromNetwork$ = next({
var fromNetwork$ = next
.handle({
request: request,
}).pipe(mergeMap(function (response) {
})
.pipe(mergeMap(function (response) {
/* Return response immediately but store in cache as side effect. */

@@ -94,2 +96,2 @@ return merge(of(response), _this._store(request, response).pipe(switchMapTo(EMPTY)));

export { CacheHandler };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUtaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb252b3lyL3BsdWdpbi1jYWNoZS8iLCJzb3VyY2VzIjpbImxpYi9jYWNoZS1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsY0FBYyxHQUtmLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0QsT0FBTyxFQUNMLEdBQUcsRUFDSCxRQUFRLEVBQ1IsV0FBVyxFQUNYLFdBQVcsRUFDWCxTQUFTLEdBQ1YsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQWMsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUVMLG1CQUFtQixFQUNuQix3QkFBd0IsR0FDekIsTUFBTSxrQkFBa0IsQ0FBQztBQVcxQjtJQUlFLHNCQUFZLEVBQTZDO1lBQTNDLHNDQUFnQixFQUFFLG9CQUFPO1FBQ3JDLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxnQkFBZ0IsQ0FBQztRQUNoRCxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztJQUMxQixDQUFDO0lBRUQsNkJBQU0sR0FBTixVQUFPLEVBR2E7UUFIcEIsaUJBbURDO1lBbERDLG9CQUFPLEVBQ1AsY0FBSTtRQUVKLElBQU0sc0JBQXNCLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDO1FBRTVELElBQU0sWUFBWSxHQUFnQyxJQUFJLENBQUM7WUFDckQsT0FBTyxTQUFBO1NBQ1IsQ0FBQyxDQUFDLElBQUksQ0FDTCxRQUFRLENBQUMsVUFBQyxRQUFRO1lBQ2hCLG9FQUFvRTtZQUNwRSxPQUFPLEtBQUssQ0FDVixFQUFFLENBQUMsUUFBUSxDQUFDLEVBQ1osS0FBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUN4RCxDQUFDO1FBQ0osQ0FBQyxDQUFDLEVBQ0YsV0FBVyxDQUFDO1lBQ1YsUUFBUSxFQUFFLElBQUk7WUFDZCxVQUFVLEVBQUUsQ0FBQztTQUNkLENBQUMsQ0FDSCxDQUFDO1FBRUYsSUFBTSxVQUFVLEdBQWdDLEtBQUssQ0FBQztZQUNwRCxPQUFBLEtBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQW5CLENBQW1CLENBQ3BCLENBQUMsSUFBSSxDQUNKLEdBQUcsQ0FBQyxVQUFDLFVBQVU7WUFDYixPQUFBLEtBQUksQ0FBQyxtQ0FBbUMsQ0FBQztnQkFDdkMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxRQUFRO2dCQUM3QixzQkFBc0Isd0JBQUE7Z0JBQ3RCLGFBQWEsRUFBRSxtQkFBbUIsQ0FBQyxVQUFVLENBQUM7YUFDL0MsQ0FBQztRQUpGLENBSUUsQ0FDSCxFQUNELFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FDeEIsQ0FBQztRQUVGOzs7b0NBRzRCO1FBQzVCLE9BQU8sS0FBSyxDQUNWLFlBQVksQ0FBQyxJQUFJLENBQ2YsR0FBRyxDQUFDLFVBQUMsUUFBUTtZQUNYLE9BQUEsS0FBSSxDQUFDLG1DQUFtQyxDQUFDO2dCQUN2QyxRQUFRLFVBQUE7Z0JBQ1Isc0JBQXNCLHdCQUFBO2dCQUN0QixhQUFhLEVBQUUsd0JBQXdCLEVBQUU7YUFDMUMsQ0FBQztRQUpGLENBSUUsQ0FDSCxDQUNGLEVBQ0QsVUFBVSxDQUNYLENBQUM7SUFDSixDQUFDO0lBRUQsa0NBQWtDO0lBQzFCLDZCQUFNLEdBQWQsVUFDRSxPQUF1QixFQUN2QixRQUF5QjtRQUYzQixpQkFjQztRQVZDLE9BQU8sS0FBSyxDQUFDO1lBQ1gsSUFBTSxHQUFHLEdBQUcsS0FBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzdDLElBQU0sVUFBVSxHQUFHLGdCQUFnQixDQUFDO2dCQUNsQyxTQUFTLEVBQUUsSUFBSSxJQUFJLEVBQUU7Z0JBQ3JCLFFBQVEsVUFBQTthQUNULENBQUMsQ0FBQztZQUNILElBQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUM7WUFFekMsT0FBTyxLQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDdkMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sNEJBQUssR0FBYixVQUFjLE9BQXVCO1FBQ25DLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUM3RCxRQUFRLENBQUMsVUFBQyxhQUFhO1lBQ3JCLHVCQUF1QjtZQUN2QixJQUFJLGFBQWEsSUFBSSxJQUFJLEVBQUU7Z0JBQ3pCLE9BQU8sS0FBSyxDQUFDO2FBQ2Q7WUFFRCw0QkFBNEI7WUFDNUIsSUFBTSxVQUFVLEdBQUcsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO1lBRS9ELE9BQU8sRUFBRSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsaUVBQWlFO0lBQ3pELHlDQUFrQixHQUExQixVQUEyQixPQUF1QjtRQUN4QyxJQUFBLHVCQUFNLENBQWE7UUFDM0IsSUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBRWpELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUNwQixDQUFDLEVBQUUsT0FBTyxDQUFDLEdBQUc7WUFDZCxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTO1NBQzFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTywwREFBbUMsR0FBM0MsVUFBNEMsRUFRM0M7WUFQQyxzQkFBUSxFQUNSLGdDQUFhLEVBQ2Isa0RBQXNCO1FBTXRCLElBQU0sSUFBSSxHQUFHLHNCQUFzQjtZQUNqQyxDQUFDLENBQUU7Z0JBQ0MsYUFBYSxlQUFBO2dCQUNiLElBQUksRUFBRSxRQUFRLENBQUMsSUFBSTthQUNFO1lBQ3pCLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQ2xCLE9BQU8sY0FBYyx1QkFDaEIsUUFBUSxLQUNYLElBQUksTUFBQSxJQUNKLENBQUM7SUFDTCxDQUFDO0lBQ0gsbUJBQUM7QUFBRCxDQUFDLEFBOUhELElBOEhDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgY3JlYXRlUmVzcG9uc2UsXG4gIENvbnZveXJSZXF1ZXN0LFxuICBDb252b3lyUmVzcG9uc2UsXG4gIFBsdWdpbkhhbmRsZXIsXG4gIFBsdWdpbkhhbmRsZXJBcmdzLFxufSBmcm9tICdAY29udm95ci9jb3JlJztcbmltcG9ydCB7IGRlZmVyLCBFTVBUWSwgbWVyZ2UsIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBtYXAsXG4gIG1lcmdlTWFwLFxuICBzaGFyZVJlcGxheSxcbiAgc3dpdGNoTWFwVG8sXG4gIHRha2VVbnRpbCxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBDYWNoZUVudHJ5LCBjcmVhdGVDYWNoZUVudHJ5IH0gZnJvbSAnLi9jYWNoZS1lbnRyeSc7XG5pbXBvcnQge1xuICBDYWNoZU1ldGFkYXRhLFxuICBjcmVhdGVDYWNoZU1ldGFkYXRhLFxuICBjcmVhdGVFbXB0eUNhY2hlTWV0YWRhdGEsXG59IGZyb20gJy4vY2FjaGUtbWV0YWRhdGEnO1xuaW1wb3J0IHsgQ29udm95Q2FjaGVSZXNwb25zZSwgV2l0aENhY2hlTWV0YWRhdGEgfSBmcm9tICcuL2NhY2hlLXJlc3BvbnNlJztcbmltcG9ydCB7IFN0b3JhZ2UgfSBmcm9tICcuL3N0b3JhZ2VzL3N0b3JhZ2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEhhbmRsZXJPcHRpb25zIHtcbiAgYWRkQ2FjaGVNZXRhZGF0YTogYm9vbGVhbjtcbiAgc3RvcmFnZTogU3RvcmFnZTtcbn1cblxuZXhwb3J0IHR5cGUgQ2FjaGVIYW5kbGVyUmVzcG9uc2UgPSBDb252b3lyUmVzcG9uc2UgfCBDb252b3lDYWNoZVJlc3BvbnNlO1xuXG5leHBvcnQgY2xhc3MgQ2FjaGVIYW5kbGVyIGltcGxlbWVudHMgUGx1Z2luSGFuZGxlciB7XG4gIHByaXZhdGUgX3Nob3VsZEFkZENhY2hlTWV0YWRhdGE6IGJvb2xlYW47XG4gIHByaXZhdGUgX3N0b3JhZ2U6IFN0b3JhZ2U7XG5cbiAgY29uc3RydWN0b3IoeyBhZGRDYWNoZU1ldGFkYXRhLCBzdG9yYWdlIH06IEhhbmRsZXJPcHRpb25zKSB7XG4gICAgdGhpcy5fc2hvdWxkQWRkQ2FjaGVNZXRhZGF0YSA9IGFkZENhY2hlTWV0YWRhdGE7XG4gICAgdGhpcy5fc3RvcmFnZSA9IHN0b3JhZ2U7XG4gIH1cblxuICBoYW5kbGUoe1xuICAgIHJlcXVlc3QsXG4gICAgbmV4dCxcbiAgfTogUGx1Z2luSGFuZGxlckFyZ3MpOiBPYnNlcnZhYmxlPENhY2hlSGFuZGxlclJlc3BvbnNlPiB7XG4gICAgY29uc3Qgc2hvdWxkQWRkQ2FjaGVNZXRhZGF0YSA9IHRoaXMuX3Nob3VsZEFkZENhY2hlTWV0YWRhdGE7XG5cbiAgICBjb25zdCBmcm9tTmV0d29yayQ6IE9ic2VydmFibGU8Q29udm95clJlc3BvbnNlPiA9IG5leHQoe1xuICAgICAgcmVxdWVzdCxcbiAgICB9KS5waXBlKFxuICAgICAgbWVyZ2VNYXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgIC8qIFJldHVybiByZXNwb25zZSBpbW1lZGlhdGVseSBidXQgc3RvcmUgaW4gY2FjaGUgYXMgc2lkZSBlZmZlY3QuICovXG4gICAgICAgIHJldHVybiBtZXJnZShcbiAgICAgICAgICBvZihyZXNwb25zZSksXG4gICAgICAgICAgdGhpcy5fc3RvcmUocmVxdWVzdCwgcmVzcG9uc2UpLnBpcGUoc3dpdGNoTWFwVG8oRU1QVFkpKVxuICAgICAgICApO1xuICAgICAgfSksXG4gICAgICBzaGFyZVJlcGxheSh7XG4gICAgICAgIHJlZkNvdW50OiB0cnVlLFxuICAgICAgICBidWZmZXJTaXplOiAxLFxuICAgICAgfSlcbiAgICApO1xuXG4gICAgY29uc3QgZnJvbUNhY2hlJDogT2JzZXJ2YWJsZTxDb252b3lyUmVzcG9uc2U+ID0gZGVmZXIoKCkgPT5cbiAgICAgIHRoaXMuX2xvYWQocmVxdWVzdClcbiAgICApLnBpcGUoXG4gICAgICBtYXAoKGNhY2hlRW50cnkpID0+XG4gICAgICAgIHRoaXMuX2NyZWF0ZVJlc3BvbnNlV2l0aE9wdGlvbmFsTWV0YWRhdGEoe1xuICAgICAgICAgIHJlc3BvbnNlOiBjYWNoZUVudHJ5LnJlc3BvbnNlLFxuICAgICAgICAgIHNob3VsZEFkZENhY2hlTWV0YWRhdGEsXG4gICAgICAgICAgY2FjaGVNZXRhZGF0YTogY3JlYXRlQ2FjaGVNZXRhZGF0YShjYWNoZUVudHJ5KSxcbiAgICAgICAgfSlcbiAgICAgICksXG4gICAgICB0YWtlVW50aWwoZnJvbU5ldHdvcmskKVxuICAgICk7XG5cbiAgICAvKiBPcmRlciBpcyBpbXBvcnRhbnQgaGVyZSBiZWNhdXNlIGlmIHdlIHN1YnNjcmliZSB0byBmcm9tQ2FjaGUkIGZpcnN0LCBpdCB3aWxsIHN1YnNjcmliZSB0byBmcm9tTmV0d29yayRcbiAgICAgKiBhbmQgYHRha2VVbnRpbGAgd2lsbCBpbW1lZGlhdGVseSB1bnN1YnNjcmliZSBmcm9tIGl0IGJlY2F1c2UgdGhlIHJlc3VsdCBpcyBzeW5jaHJvbm91cy5cbiAgICAgKiBJZiBmcm9tTmV0d29yayQgaXMgZmlyc3QsIGl0IHdpbGwgc3Vic2NyaWJlIGFuZCB0aGUgc3Vic2NyaXB0aW9uIHdpbGwgYmUgc2hhcmVkIHdpdGggdGhlIGB0YWtlVW50aWxgXG4gICAgICogdGhhbmtzIHRvIHNoYXJlUmVwbGF5LiAqL1xuICAgIHJldHVybiBtZXJnZShcbiAgICAgIGZyb21OZXR3b3JrJC5waXBlKFxuICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PlxuICAgICAgICAgIHRoaXMuX2NyZWF0ZVJlc3BvbnNlV2l0aE9wdGlvbmFsTWV0YWRhdGEoe1xuICAgICAgICAgICAgcmVzcG9uc2UsXG4gICAgICAgICAgICBzaG91bGRBZGRDYWNoZU1ldGFkYXRhLFxuICAgICAgICAgICAgY2FjaGVNZXRhZGF0YTogY3JlYXRlRW1wdHlDYWNoZU1ldGFkYXRhKCksXG4gICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICAgKSxcbiAgICAgIGZyb21DYWNoZSRcbiAgICApO1xuICB9XG5cbiAgLyogU3RvcmUgbWV0YWRhdGEgYmVsb25nIGNhY2hlLiAqL1xuICBwcml2YXRlIF9zdG9yZShcbiAgICByZXF1ZXN0OiBDb252b3lyUmVxdWVzdCxcbiAgICByZXNwb25zZTogQ29udm95clJlc3BvbnNlXG4gICk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiBkZWZlcigoKSA9PiB7XG4gICAgICBjb25zdCBrZXkgPSB0aGlzLl9zZXJpYWxpemVDYWNoZUtleShyZXF1ZXN0KTtcbiAgICAgIGNvbnN0IGNhY2hlRW50cnkgPSBjcmVhdGVDYWNoZUVudHJ5KHtcbiAgICAgICAgY3JlYXRlZEF0OiBuZXcgRGF0ZSgpLFxuICAgICAgICByZXNwb25zZSxcbiAgICAgIH0pO1xuICAgICAgY29uc3QgY2FjaGUgPSBKU09OLnN0cmluZ2lmeShjYWNoZUVudHJ5KTtcblxuICAgICAgcmV0dXJuIHRoaXMuX3N0b3JhZ2Uuc2V0KGtleSwgY2FjaGUpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfbG9hZChyZXF1ZXN0OiBDb252b3lyUmVxdWVzdCk6IE9ic2VydmFibGU8Q2FjaGVFbnRyeT4ge1xuICAgIHJldHVybiB0aGlzLl9zdG9yYWdlLmdldCh0aGlzLl9zZXJpYWxpemVDYWNoZUtleShyZXF1ZXN0KSkucGlwZShcbiAgICAgIG1lcmdlTWFwKChyYXdDYWNoZUVudHJ5KSA9PiB7XG4gICAgICAgIC8qIFRoZXJlJ3Mgbm8gZW50cnkuICovXG4gICAgICAgIGlmIChyYXdDYWNoZUVudHJ5ID09IG51bGwpIHtcbiAgICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICAgIH1cblxuICAgICAgICAvKiBQYXJzZSB0aGUgY2FjaGUgZW50cnkuICovXG4gICAgICAgIGNvbnN0IGNhY2hlRW50cnkgPSBjcmVhdGVDYWNoZUVudHJ5KEpTT04ucGFyc2UocmF3Q2FjaGVFbnRyeSkpO1xuXG4gICAgICAgIHJldHVybiBvZihjYWNoZUVudHJ5KTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qIENyZWF0ZSBhIHVuaXF1ZSBrZXkgYnkgcmVxdWVzdCBVUkkgdG8gcmV0cmlldmUgY2FjaGUgbGF0ZXIuICovXG4gIHByaXZhdGUgX3NlcmlhbGl6ZUNhY2hlS2V5KHJlcXVlc3Q6IENvbnZveXJSZXF1ZXN0KTogc3RyaW5nIHtcbiAgICBjb25zdCB7IHBhcmFtcyB9ID0gcmVxdWVzdDtcbiAgICBjb25zdCBoYXNQYXJhbXMgPSBPYmplY3Qua2V5cyhwYXJhbXMpLmxlbmd0aCA+IDA7XG5cbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgdTogcmVxdWVzdC51cmwsXG4gICAgICBwOiBoYXNQYXJhbXMgPyByZXF1ZXN0LnBhcmFtcyA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2NyZWF0ZVJlc3BvbnNlV2l0aE9wdGlvbmFsTWV0YWRhdGEoe1xuICAgIHJlc3BvbnNlLFxuICAgIGNhY2hlTWV0YWRhdGEsXG4gICAgc2hvdWxkQWRkQ2FjaGVNZXRhZGF0YSxcbiAgfToge1xuICAgIHJlc3BvbnNlOiBDb252b3lyUmVzcG9uc2U7XG4gICAgY2FjaGVNZXRhZGF0YTogQ2FjaGVNZXRhZGF0YTtcbiAgICBzaG91bGRBZGRDYWNoZU1ldGFkYXRhOiBib29sZWFuO1xuICB9KTogQ29udm95clJlc3BvbnNlIHwgQ29udm95Q2FjaGVSZXNwb25zZSB7XG4gICAgY29uc3QgYm9keSA9IHNob3VsZEFkZENhY2hlTWV0YWRhdGFcbiAgICAgID8gKHtcbiAgICAgICAgICBjYWNoZU1ldGFkYXRhLFxuICAgICAgICAgIGRhdGE6IHJlc3BvbnNlLmJvZHksXG4gICAgICAgIH0gYXMgV2l0aENhY2hlTWV0YWRhdGEpXG4gICAgICA6IHJlc3BvbnNlLmJvZHk7XG4gICAgcmV0dXJuIGNyZWF0ZVJlc3BvbnNlKHtcbiAgICAgIC4uLnJlc3BvbnNlLFxuICAgICAgYm9keSxcbiAgICB9KTtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGUtaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0Bjb252b3lyL3BsdWdpbi1jYWNoZS8iLCJzb3VyY2VzIjpbImxpYi9jYWNoZS1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQ0wsY0FBYyxHQUtmLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0QsT0FBTyxFQUNMLEdBQUcsRUFDSCxRQUFRLEVBQ1IsV0FBVyxFQUNYLFdBQVcsRUFDWCxTQUFTLEdBQ1YsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQWMsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUVMLG1CQUFtQixFQUNuQix3QkFBd0IsR0FDekIsTUFBTSxrQkFBa0IsQ0FBQztBQVcxQjtJQUlFLHNCQUFZLEVBQTZDO1lBQTNDLHNDQUFnQixFQUFFLG9CQUFPO1FBQ3JDLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxnQkFBZ0IsQ0FBQztRQUNoRCxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztJQUMxQixDQUFDO0lBRUQsNkJBQU0sR0FBTixVQUFPLEVBR2E7UUFIcEIsaUJBcURDO1lBcERDLG9CQUFPLEVBQ1AsY0FBSTtRQUVKLElBQU0sc0JBQXNCLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDO1FBRTVELElBQU0sWUFBWSxHQUFnQyxJQUFJO2FBQ25ELE1BQU0sQ0FBQztZQUNOLE9BQU8sU0FBQTtTQUNSLENBQUM7YUFDRCxJQUFJLENBQ0gsUUFBUSxDQUFDLFVBQUMsUUFBUTtZQUNoQixvRUFBb0U7WUFDcEUsT0FBTyxLQUFLLENBQ1YsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUNaLEtBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENB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R0FBRyxzQkFBc0I7WUFDakMsQ0FBQyxDQUFFO2dCQUNDLGFBQWEsZUFBQTtnQkFDYixJQUFJLEVBQUUsUUFBUSxDQUFDLElBQUk7YUFDRTtZQUN6QixDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztRQUNsQixPQUFPLGNBQWMsdUJBQ2hCLFFBQVEsS0FDWCxJQUFJLE1BQUEsSUFDSixDQUFDO0lBQ0wsQ0FBQztJQUNILG1CQUFDO0FBQUQsQ0FBQyxBQWhJRCxJQWdJQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIGNyZWF0ZVJlc3BvbnNlLFxuICBDb252b3lyUmVxdWVzdCxcbiAgQ29udm95clJlc3BvbnNlLFxuICBQbHVnaW5IYW5kbGVyLFxuICBQbHVnaW5IYW5kbGVyQXJncyxcbn0gZnJvbSAnQGNvbnZveXIvY29yZSc7XG5pbXBvcnQgeyBkZWZlciwgRU1QVFksIG1lcmdlLCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgbWFwLFxuICBtZXJnZU1hcCxcbiAgc2hhcmVSZXBsYXksXG4gIHN3aXRjaE1hcFRvLFxuICB0YWtlVW50aWwsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgQ2FjaGVFbnRyeSwgY3JlYXRlQ2FjaGVFbnRyeSB9IGZyb20gJy4vY2FjaGUtZW50cnknO1xuaW1wb3J0IHtcbiAgQ2FjaGVNZXRhZGF0YSxcbiAgY3JlYXRlQ2FjaGVNZXRhZGF0YSxcbiAgY3JlYXRlRW1wdHlDYWNoZU1ldGFkYXRhLFxufSBmcm9tICcuL2NhY2hlLW1ldGFkYXRhJztcbmltcG9ydCB7IENvbnZveUNhY2hlUmVzcG9uc2UsIFdpdGhDYWNoZU1ldGFkYXRhIH0gZnJvbSAnLi9jYWNoZS1yZXNwb25zZSc7XG5pbXBvcnQgeyBTdG9yYWdlIH0gZnJvbSAnLi9zdG9yYWdlcy9zdG9yYWdlJztcblxuZXhwb3J0IGludGVyZmFjZSBIYW5kbGVyT3B0aW9ucyB7XG4gIGFkZENhY2hlTWV0YWRhdGE6IGJvb2xlYW47XG4gIHN0b3JhZ2U6IFN0b3JhZ2U7XG59XG5cbmV4cG9ydCB0eXBlIENhY2hlSGFuZGxlclJlc3BvbnNlID0gQ29udm95clJlc3BvbnNlIHwgQ29udm95Q2FjaGVSZXNwb25zZTtcblxuZXhwb3J0IGNsYXNzIENhY2hlSGFuZGxlciBpbXBsZW1lbnRzIFBsdWdpbkhhbmRsZXIge1xuICBwcml2YXRlIF9zaG91bGRBZGRDYWNoZU1ldGFkYXRhOiBib29sZWFuO1xuICBwcml2YXRlIF9zdG9yYWdlOiBTdG9yYWdlO1xuXG4gIGNvbnN0cnVjdG9yKHsgYWRkQ2FjaGVNZXRhZGF0YSwgc3RvcmFnZSB9OiBIYW5kbGVyT3B0aW9ucykge1xuICAgIHRoaXMuX3Nob3VsZEFkZENhY2hlTWV0YWRhdGEgPSBhZGRDYWNoZU1ldGFkYXRhO1xuICAgIHRoaXMuX3N0b3JhZ2UgPSBzdG9yYWdlO1xuICB9XG5cbiAgaGFuZGxlKHtcbiAgICByZXF1ZXN0LFxuICAgIG5leHQsXG4gIH06IFBsdWdpbkhhbmRsZXJBcmdzKTogT2JzZXJ2YWJsZTxDYWNoZUhhbmRsZXJSZXNwb25zZT4ge1xuICAgIGNvbnN0IHNob3VsZEFkZENhY2hlTWV0YWRhdGEgPSB0aGlzLl9zaG91bGRBZGRDYWNoZU1ldGFkYXRhO1xuXG4gICAgY29uc3QgZnJvbU5ldHdvcmskOiBPYnNlcnZhYmxlPENvbnZveXJSZXNwb25zZT4gPSBuZXh0XG4gICAgICAuaGFuZGxlKHtcbiAgICAgICAgcmVxdWVzdCxcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgbWVyZ2VNYXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgLyogUmV0dXJuIHJlc3BvbnNlIGltbWVkaWF0ZWx5IGJ1dCBzdG9yZSBpbiBjYWNoZSBhcyBzaWRlIGVmZmVjdC4gKi9cbiAgICAgICAgICByZXR1cm4gbWVyZ2UoXG4gICAgICAgICAgICBvZihyZXNwb25zZSksXG4gICAgICAgICAgICB0aGlzLl9zdG9yZShyZXF1ZXN0LCByZXNwb25zZSkucGlwZShzd2l0Y2hNYXBUbyhFTVBUWSkpXG4gICAgICAgICAgKTtcbiAgICAgICAgfSksXG4gICAgICAgIHNoYXJlUmVwbGF5KHtcbiAgICAgICAgICByZWZDb3VudDogdHJ1ZSxcbiAgICAgICAgICBidWZmZXJTaXplOiAxLFxuICAgICAgICB9KVxuICAgICAgKTtcblxuICAgIGNvbnN0IGZyb21DYWNoZSQ6IE9ic2VydmFibGU8Q29udm95clJlc3BvbnNlPiA9IGRlZmVyKCgpID0+XG4gICAgICB0aGlzLl9sb2FkKHJlcXVlc3QpXG4gICAgKS5waXBlKFxuICAgICAgbWFwKChjYWNoZUVudHJ5KSA9PlxuICAgICAgICB0aGlzLl9jcmVhdGVSZXNwb25zZVdpdGhPcHRpb25hbE1ldGFkYXRhKHtcbiAgICAgICAgICByZXNwb25zZTogY2FjaGVFbnRyeS5yZXNwb25zZSxcbiAgICAgICAgICBzaG91bGRBZGRDYWNoZU1ldGFkYXRhLFxuICAgICAgICAgIGNhY2hlTWV0YWRhdGE6IGNyZWF0ZUNhY2hlTWV0YWRhdGEoY2FjaGVFbnRyeSksXG4gICAgICAgIH0pXG4gICAgICApLFxuICAgICAgdGFrZVVudGlsKGZyb21OZXR3b3JrJClcbiAgICApO1xuXG4gICAgLyogT3JkZXIgaXMgaW1wb3J0YW50IGhlcmUgYmVjYXVzZSBpZiB3ZSBzdWJzY3JpYmUgdG8gZnJvbUNhY2hlJCBmaXJzdCwgaXQgd2lsbCBzdWJzY3JpYmUgdG8gZnJvbU5ldHdvcmskXG4gICAgICogYW5kIGB0YWtlVW50aWxgIHdpbGwgaW1tZWRpYXRlbHkgdW5zdWJzY3JpYmUgZnJvbSBpdCBiZWNhdXNlIHRoZSByZXN1bHQgaXMgc3luY2hyb25vdXMuXG4gICAgICogSWYgZnJvbU5ldHdvcmskIGlzIGZpcnN0LCBpdCB3aWxsIHN1YnNjcmliZSBhbmQgdGhlIHN1YnNjcmlwdGlvbiB3aWxsIGJlIHNoYXJlZCB3aXRoIHRoZSBgdGFrZVVudGlsYFxuICAgICAqIHRoYW5rcyB0byBzaGFyZVJlcGxheS4gKi9cbiAgICByZXR1cm4gbWVyZ2UoXG4gICAgICBmcm9tTmV0d29yayQucGlwZShcbiAgICAgICAgbWFwKChyZXNwb25zZSkgPT5cbiAgICAgICAgICB0aGlzLl9jcmVhdGVSZXNwb25zZVdpdGhPcHRpb25hbE1ldGFkYXRhKHtcbiAgICAgICAgICAgIHJlc3BvbnNlLFxuICAgICAgICAgICAgc2hvdWxkQWRkQ2FjaGVNZXRhZGF0YSxcbiAgICAgICAgICAgIGNhY2hlTWV0YWRhdGE6IGNyZWF0ZUVtcHR5Q2FjaGVNZXRhZGF0YSgpLFxuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICAgICksXG4gICAgICBmcm9tQ2FjaGUkXG4gICAgKTtcbiAgfVxuXG4gIC8qIFN0b3JlIG1ldGFkYXRhIGJlbG9uZyBjYWNoZS4gKi9cbiAgcHJpdmF0ZSBfc3RvcmUoXG4gICAgcmVxdWVzdDogQ29udm95clJlcXVlc3QsXG4gICAgcmVzcG9uc2U6IENvbnZveXJSZXNwb25zZVxuICApOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gZGVmZXIoKCkgPT4ge1xuICAgICAgY29uc3Qga2V5ID0gdGhpcy5fc2VyaWFsaXplQ2FjaGVLZXkocmVxdWVzdCk7XG4gICAgICBjb25zdCBjYWNoZUVudHJ5ID0gY3JlYXRlQ2FjaGVFbnRyeSh7XG4gICAgICAgIGNyZWF0ZWRBdDogbmV3IERhdGUoKSxcbiAgICAgICAgcmVzcG9uc2UsXG4gICAgICB9KTtcbiAgICAgIGNvbnN0IGNhY2hlID0gSlNPTi5zdHJpbmdpZnkoY2FjaGVFbnRyeSk7XG5cbiAgICAgIHJldHVybiB0aGlzLl9zdG9yYWdlLnNldChrZXksIGNhY2hlKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgX2xvYWQocmVxdWVzdDogQ29udm95clJlcXVlc3QpOiBPYnNlcnZhYmxlPENhY2hlRW50cnk+IHtcbiAgICByZXR1cm4gdGhpcy5fc3RvcmFnZS5nZXQodGhpcy5fc2VyaWFsaXplQ2FjaGVLZXkocmVxdWVzdCkpLnBpcGUoXG4gICAgICBtZXJnZU1hcCgocmF3Q2FjaGVFbnRyeSkgPT4ge1xuICAgICAgICAvKiBUaGVyZSdzIG5vIGVudHJ5LiAqL1xuICAgICAgICBpZiAocmF3Q2FjaGVFbnRyeSA9PSBudWxsKSB7XG4gICAgICAgICAgcmV0dXJuIEVNUFRZO1xuICAgICAgICB9XG5cbiAgICAgICAgLyogUGFyc2UgdGhlIGNhY2hlIGVudHJ5LiAqL1xuICAgICAgICBjb25zdCBjYWNoZUVudHJ5ID0gY3JlYXRlQ2FjaGVFbnRyeShKU09OLnBhcnNlKHJhd0NhY2hlRW50cnkpKTtcblxuICAgICAgICByZXR1cm4gb2YoY2FjaGVFbnRyeSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICAvKiBDcmVhdGUgYSB1bmlxdWUga2V5IGJ5IHJlcXVlc3QgVVJJIHRvIHJldHJpZXZlIGNhY2hlIGxhdGVyLiAqL1xuICBwcml2YXRlIF9zZXJpYWxpemVDYWNoZUtleShyZXF1ZXN0OiBDb252b3lyUmVxdWVzdCk6IHN0cmluZyB7XG4gICAgY29uc3QgeyBwYXJhbXMgfSA9IHJlcXVlc3Q7XG4gICAgY29uc3QgaGFzUGFyYW1zID0gT2JqZWN0LmtleXMocGFyYW1zKS5sZW5ndGggPiAwO1xuXG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHtcbiAgICAgIHU6IHJlcXVlc3QudXJsLFxuICAgICAgcDogaGFzUGFyYW1zID8gcmVxdWVzdC5wYXJhbXMgOiB1bmRlZmluZWQsXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIF9jcmVhdGVSZXNwb25zZVdpdGhPcHRpb25hbE1ldGFkYXRhKHtcbiAgICByZXNwb25zZSxcbiAgICBjYWNoZU1ldGFkYXRhLFxuICAgIHNob3VsZEFkZENhY2hlTWV0YWRhdGEsXG4gIH06IHtcbiAgICByZXNwb25zZTogQ29udm95clJlc3BvbnNlO1xuICAgIGNhY2hlTWV0YWRhdGE6IENhY2hlTWV0YWRhdGE7XG4gICAgc2hvdWxkQWRkQ2FjaGVNZXRhZGF0YTogYm9vbGVhbjtcbiAgfSk6IENvbnZveXJSZXNwb25zZSB8IENvbnZveUNhY2hlUmVzcG9uc2Uge1xuICAgIGNvbnN0IGJvZHkgPSBzaG91bGRBZGRDYWNoZU1ldGFkYXRhXG4gICAgICA/ICh7XG4gICAgICAgICAgY2FjaGVNZXRhZGF0YSxcbiAgICAgICAgICBkYXRhOiByZXNwb25zZS5ib2R5LFxuICAgICAgICB9IGFzIFdpdGhDYWNoZU1ldGFkYXRhKVxuICAgICAgOiByZXNwb25zZS5ib2R5O1xuICAgIHJldHVybiBjcmVhdGVSZXNwb25zZSh7XG4gICAgICAuLi5yZXNwb25zZSxcbiAgICAgIGJvZHksXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==

@@ -34,5 +34,7 @@ import { createResponse } from '@convoyr/core';

const shouldAddCacheMetadata = this._shouldAddCacheMetadata;
const fromNetwork$ = next({
const fromNetwork$ = next
.handle({
request,
}).pipe(mergeMap((response) => {
})
.pipe(mergeMap((response) => {
/* Return response immediately but store in cache as side effect. */

@@ -39,0 +41,0 @@ return merge(of(response), this._store(request, response).pipe(switchMapTo(EMPTY)));

@@ -38,5 +38,7 @@ import { __assign } from 'tslib';

var shouldAddCacheMetadata = this._shouldAddCacheMetadata;
var fromNetwork$ = next({
var fromNetwork$ = next
.handle({
request: request,
}).pipe(mergeMap(function (response) {
})
.pipe(mergeMap(function (response) {
/* Return response immediately but store in cache as side effect. */

@@ -43,0 +45,0 @@ return merge(of(response), _this._store(request, response).pipe(switchMapTo(EMPTY)));

{
"name": "@convoyr/plugin-cache",
"version": "2.2.0",
"version": "3.0.0",
"license": "MIT",

@@ -17,2 +17,3 @@ "private": false,

},
"gitHead": "0adb173e1e6bb447ca5a492f6d9c78b22a6c6fc5",
"main": "bundles/convoyr-plugin-cache.umd.js",

@@ -19,0 +20,0 @@ "module": "fesm5/convoyr-plugin-cache.js",

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc