@merkur/plugin-http-cache 0.32.0 → 0.34.0

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/lib/index.cjs CHANGED
@@ -78,14 +78,11 @@ function httpCachePlugin() {
78
78
  async setup(widget) {
79
79
  if (ENV === DEV && !widget.$in.httpClient) {
80
80
  throw new Error(
81
- 'You must setup plugin @merkur/plugin-http-client before @merkur/plugin-http-cache'
81
+ 'You must setup plugin @merkur/plugin-http-client before @merkur/plugin-http-cache',
82
82
  );
83
83
  }
84
84
 
85
- widget = {
86
- ...httpCacheAPI(),
87
- ...widget,
88
- };
85
+ core.assignMissingKeys(widget, httpCacheAPI());
89
86
 
90
87
  widget.$in.httpClient.cache = new Map();
91
88
 
@@ -170,7 +167,7 @@ function httpCacheAPI() {
170
167
 
171
168
  return JSON.stringify(serializedData).replace(
172
169
  /<\/script/gi,
173
- '<\\/script'
170
+ '<\\/script',
174
171
  );
175
172
  },
176
173
 
package/lib/index.es9.cjs CHANGED
@@ -77,10 +77,7 @@ function httpCachePlugin() {
77
77
  if (ENV === DEV && !widget.$in.httpClient) {
78
78
  throw new Error('You must setup plugin @merkur/plugin-http-client before @merkur/plugin-http-cache');
79
79
  }
80
- widget = {
81
- ...httpCacheAPI(),
82
- ...widget
83
- };
80
+ core.assignMissingKeys(widget, httpCacheAPI());
84
81
  widget.$in.httpClient.cache = new Map();
85
82
  return widget;
86
83
  },
package/lib/index.es9.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { bindWidgetToFunctions, hookMethod } from '@merkur/core';
1
+ import { assignMissingKeys, bindWidgetToFunctions, hookMethod } from '@merkur/core';
2
2
  import { setDefaultConfig, copyResponse } from '@merkur/plugin-http-client';
3
3
 
4
4
  /**
@@ -75,10 +75,7 @@ function httpCachePlugin() {
75
75
  if (ENV === DEV && !widget.$in.httpClient) {
76
76
  throw new Error('You must setup plugin @merkur/plugin-http-client before @merkur/plugin-http-cache');
77
77
  }
78
- widget = {
79
- ...httpCacheAPI(),
80
- ...widget
81
- };
78
+ assignMissingKeys(widget, httpCacheAPI());
82
79
  widget.$in.httpClient.cache = new Map();
83
80
  return widget;
84
81
  },
package/lib/index.js CHANGED
@@ -78,14 +78,11 @@ function httpCachePlugin() {
78
78
  async setup(widget) {
79
79
  if (ENV === DEV && !widget.$in.httpClient) {
80
80
  throw new Error(
81
- 'You must setup plugin @merkur/plugin-http-client before @merkur/plugin-http-cache'
81
+ 'You must setup plugin @merkur/plugin-http-client before @merkur/plugin-http-cache',
82
82
  );
83
83
  }
84
84
 
85
- widget = {
86
- ...httpCacheAPI(),
87
- ...widget,
88
- };
85
+ core.assignMissingKeys(widget, httpCacheAPI());
89
86
 
90
87
  widget.$in.httpClient.cache = new Map();
91
88
 
@@ -170,7 +167,7 @@ function httpCacheAPI() {
170
167
 
171
168
  return JSON.stringify(serializedData).replace(
172
169
  /<\/script/gi,
173
- '<\\/script'
170
+ '<\\/script',
174
171
  );
175
172
  },
176
173
 
package/lib/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- import { bindWidgetToFunctions, hookMethod } from '@merkur/core';
1
+ import { assignMissingKeys, bindWidgetToFunctions, hookMethod } from '@merkur/core';
2
2
  import { setDefaultConfig, copyResponse } from '@merkur/plugin-http-client';
3
3
 
4
4
  /**
@@ -76,14 +76,11 @@ function httpCachePlugin() {
76
76
  async setup(widget) {
77
77
  if (ENV === DEV && !widget.$in.httpClient) {
78
78
  throw new Error(
79
- 'You must setup plugin @merkur/plugin-http-client before @merkur/plugin-http-cache'
79
+ 'You must setup plugin @merkur/plugin-http-client before @merkur/plugin-http-cache',
80
80
  );
81
81
  }
82
82
 
83
- widget = {
84
- ...httpCacheAPI(),
85
- ...widget,
86
- };
83
+ assignMissingKeys(widget, httpCacheAPI());
87
84
 
88
85
  widget.$in.httpClient.cache = new Map();
89
86
 
@@ -168,7 +165,7 @@ function httpCacheAPI() {
168
165
 
169
166
  return JSON.stringify(serializedData).replace(
170
167
  /<\/script/gi,
171
- '<\\/script'
168
+ '<\\/script',
172
169
  );
173
170
  },
174
171
 
package/lib/index.umd.js CHANGED
@@ -1 +1 @@
1
- !function(e,t){if("function"==typeof define&&define.amd)define("@merkur/plugin-http-cache",["exports","@merkur/core","@merkur/plugin-http-client"],t);else if("undefined"!=typeof exports)t(exports,require("@merkur/core"),require("@merkur/plugin-http-client"));else{var r={exports:{}};t(r.exports,e.Merkur.Core,e.Merkur.Plugin.Httpclient),e.merkurPluginHttpCache=r.exports}}("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:this,(function(e,t,r){function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function o(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i(Object(r),!0).forEach((function(t){u(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function u(e,t,r){return(t=s(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function c(e,t,r,n,i,o,u){try{var c=e[o](u),a=c.value}catch(e){return void r(e)}c.done?t(a):Promise.resolve(a).then(n,i)}function a(e){return function(){var t=this,r=arguments;return new Promise((function(n,i){var o=e.apply(t,r);function u(e){c(o,n,i,u,a,"next",e)}function a(e){c(o,n,i,u,a,"throw",e)}u(void 0)}))}}function l(e){return l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l(e)}function f(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,s(n.key),n)}}function s(e){var t=function(e,t){if("object"!==l(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==l(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===l(t)?t:String(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.cacheInTransformer=function(){return{transformResponse:function(e,t,n){return a((function*(){if(t.useCache&&!n.cached){var i=e.$in.httpClient.cache,o=new p((0,r.copyResponse)(n),t.ttl);i.set(v(t),o)}return[t,n]}))()}}},e.cacheOutTransformer=function(){return{transformRequest:function(e,t,r){return a((function*(){if(t.useCache){var n=e.httpCache.get(v(t));if(n)return[t,o(o({},n),{},{cached:!0})]}return[t,r]}))()}}},e.getCacheKey=v,e.httpCachePlugin=function(){return{setup:function(e){return a((function*(){if(y===h&&!e.$in.httpClient)throw new Error("You must setup plugin @merkur/plugin-http-client before @merkur/plugin-http-cache");return(e=o(o({},{httpCache:{get:function(e,t){var n=e.$in.httpClient.cache.get(t);return n&&!n.isExpired()?(0,r.copyResponse)(n.value):null},serialize:function(e){var t,r=e.$in.httpClient.cache,i={},o=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return n(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?n(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var i=0,o=function(){};return{s:o,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var u,c=!0,a=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return c=e.done,e},e:function(e){a=!0,u=e},f:function(){try{c||null==r.return||r.return()}finally{if(a)throw u}}}}(r.keys());try{for(o.s();!(t=o.n()).done;){var u=t.value,c=r.get(u);c instanceof p&&(i[u]=c.serialize())}}catch(e){o.e(e)}finally{o.f()}return JSON.stringify(i).replace(/<\/script/gi,"<\\/script")},deserialize:function(e,t){var r=e.$in.httpClient.cache,n={};try{n=JSON.parse(t)}catch(e){console.warn("Failed to parse http cache data",e)}for(var i=0,o=Object.keys(n);i<o.length;i++){var u=o[i],c=n[u],a=c.value,l=c.ttl;"Infinity"===l&&(l=1/0),r.set(u,new p(a,l))}}}}),e)).$in.httpClient.cache=new Map,e}))()},create:function(e){return a((function*(){var n=e.$in.httpClient.defaultConfig,i=n.useCache,o=n.transferServerCache,u=n.ttl;return(0,t.bindWidgetToFunctions)(e,e.httpCache),(0,r.setDefaultConfig)(e,{useCache:null==i||i,transferServerCache:null!=o&&o,ttl:null!=u?u:6e4}),o&&((0,t.hookMethod)(e,"info",d),e.$httpCache&&e.httpCache.deserialize(e.$httpCache)),e}))()}}};var p=function(){function e(t,r){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this._value=t,this._ttl=r,this._created=Date.now()}var t,r,n;return t=e,(r=[{key:"value",get:function(){return this._value}},{key:"isExpired",value:function(){return Date.now()>this._created+this._ttl}},{key:"serialize",value:function(){return{value:this.value,ttl:this._ttl===1/0?"Infinity":this._ttl}}}])&&f(t.prototype,r),n&&f(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}(),h="development",y="undefined"!=typeof process&&process&&process.env?process.env.NODE_ENV:h;function v(e){var t=e.method,r=e.url,n=e.body,i=e.query,o=~["GET","HEAD"].indexOf(t)?i:n,u="";if(o)try{u=JSON.stringify(o).replace(/<\/script/gi,"<\\/script")}catch(e){console.warn("The provided data does not have valid JSON format",o)}return"".concat(t,":").concat(r,"?").concat(u)}function d(e,t){return b.apply(this,arguments)}function b(){return b=a((function*(e,t){for(var r=arguments.length,n=new Array(r>2?r-2:0),i=2;i<r;i++)n[i-2]=arguments[i];return o(o({},yield t.apply(void 0,n)),{},{$httpCache:e.httpCache.serialize()})})),b.apply(this,arguments)}}));
1
+ !function(e,t){if("function"==typeof define&&define.amd)define("@merkur/plugin-http-cache",["exports","@merkur/core","@merkur/plugin-http-client"],t);else if("undefined"!=typeof exports)t(exports,require("@merkur/core"),require("@merkur/plugin-http-client"));else{var r={exports:{}};t(r.exports,e.Merkur.Core,e.Merkur.Plugin.Httpclient),e.merkurPluginHttpCache=r.exports}}("undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:this,(function(e,t,r){function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function o(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i(Object(r),!0).forEach((function(t){u(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function u(e,t,r){return(t=s(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function c(e,t,r,n,i,o,u){try{var c=e[o](u),a=c.value}catch(e){return void r(e)}c.done?t(a):Promise.resolve(a).then(n,i)}function a(e){return function(){var t=this,r=arguments;return new Promise((function(n,i){var o=e.apply(t,r);function u(e){c(o,n,i,u,a,"next",e)}function a(e){c(o,n,i,u,a,"throw",e)}u(void 0)}))}}function l(e){return l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l(e)}function f(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,s(n.key),n)}}function s(e){var t=function(e,t){if("object"!==l(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==l(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===l(t)?t:String(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.cacheInTransformer=function(){return{transformResponse:function(e,t,n){return a((function*(){if(t.useCache&&!n.cached){var i=e.$in.httpClient.cache,o=new p((0,r.copyResponse)(n),t.ttl);i.set(v(t),o)}return[t,n]}))()}}},e.cacheOutTransformer=function(){return{transformRequest:function(e,t,r){return a((function*(){if(t.useCache){var n=e.httpCache.get(v(t));if(n)return[t,o(o({},n),{},{cached:!0})]}return[t,r]}))()}}},e.getCacheKey=v,e.httpCachePlugin=function(){return{setup:function(e){return a((function*(){if(y===h&&!e.$in.httpClient)throw new Error("You must setup plugin @merkur/plugin-http-client before @merkur/plugin-http-cache");return(0,t.assignMissingKeys)(e,{httpCache:{get:function(e,t){var n=e.$in.httpClient.cache.get(t);return n&&!n.isExpired()?(0,r.copyResponse)(n.value):null},serialize:function(e){var t,r=e.$in.httpClient.cache,i={},o=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return n(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?n(e,t):void 0}}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var i=0,o=function(){};return{s:o,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var u,c=!0,a=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return c=e.done,e},e:function(e){a=!0,u=e},f:function(){try{c||null==r.return||r.return()}finally{if(a)throw u}}}}(r.keys());try{for(o.s();!(t=o.n()).done;){var u=t.value,c=r.get(u);c instanceof p&&(i[u]=c.serialize())}}catch(e){o.e(e)}finally{o.f()}return JSON.stringify(i).replace(/<\/script/gi,"<\\/script")},deserialize:function(e,t){var r=e.$in.httpClient.cache,n={};try{n=JSON.parse(t)}catch(e){console.warn("Failed to parse http cache data",e)}for(var i=0,o=Object.keys(n);i<o.length;i++){var u=o[i],c=n[u],a=c.value,l=c.ttl;"Infinity"===l&&(l=1/0),r.set(u,new p(a,l))}}}}),e.$in.httpClient.cache=new Map,e}))()},create:function(e){return a((function*(){var n=e.$in.httpClient.defaultConfig,i=n.useCache,o=n.transferServerCache,u=n.ttl;return(0,t.bindWidgetToFunctions)(e,e.httpCache),(0,r.setDefaultConfig)(e,{useCache:null==i||i,transferServerCache:null!=o&&o,ttl:null!=u?u:6e4}),o&&((0,t.hookMethod)(e,"info",d),e.$httpCache&&e.httpCache.deserialize(e.$httpCache)),e}))()}}};var p=function(){function e(t,r){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this._value=t,this._ttl=r,this._created=Date.now()}var t,r,n;return t=e,(r=[{key:"value",get:function(){return this._value}},{key:"isExpired",value:function(){return Date.now()>this._created+this._ttl}},{key:"serialize",value:function(){return{value:this.value,ttl:this._ttl===1/0?"Infinity":this._ttl}}}])&&f(t.prototype,r),n&&f(t,n),Object.defineProperty(t,"prototype",{writable:!1}),e}(),h="development",y="undefined"!=typeof process&&process&&process.env?process.env.NODE_ENV:h;function v(e){var t=e.method,r=e.url,n=e.body,i=e.query,o=~["GET","HEAD"].indexOf(t)?i:n,u="";if(o)try{u=JSON.stringify(o).replace(/<\/script/gi,"<\\/script")}catch(e){console.warn("The provided data does not have valid JSON format",o)}return"".concat(t,":").concat(r,"?").concat(u)}function d(e,t){return b.apply(this,arguments)}function b(){return b=a((function*(e,t){for(var r=arguments.length,n=new Array(r>2?r-2:0),i=2;i<r;i++)n[i-2]=arguments[i];return o(o({},yield t.apply(void 0,n)),{},{$httpCache:e.httpCache.serialize()})})),b.apply(this,arguments)}}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@merkur/plugin-http-cache",
3
- "version": "0.32.0",
3
+ "version": "0.34.0",
4
4
  "description": "Merkur plugin for maintaining http requests cache.",
5
5
  "main": "lib/index",
6
6
  "module": "lib/index",
@@ -48,13 +48,13 @@
48
48
  },
49
49
  "homepage": "https://merkur.js.org/",
50
50
  "devDependencies": {
51
- "@merkur/core": "^0.32.0",
52
- "@merkur/plugin-component": "^0.32.0",
53
- "@merkur/plugin-http-client": "^0.32.0"
51
+ "@merkur/core": "^0.34.0",
52
+ "@merkur/plugin-component": "^0.34.0",
53
+ "@merkur/plugin-http-client": "^0.34.0"
54
54
  },
55
55
  "peerDependencies": {
56
56
  "@merkur/core": "*",
57
57
  "@merkur/plugin-http-client": "*"
58
58
  },
59
- "gitHead": "c45ffe12725e3c4afcf7f13869a25a96f6807055"
59
+ "gitHead": "3bc4a1efb8f8d5cee6bcf5f1454809747904153c"
60
60
  }