@rest-hooks/normalizr
Advanced tools
Comparing version 8.0.1 to 8.0.2
@@ -6,2 +6,11 @@ # Change Log | ||
### [8.0.2](https://github.com/coinbase/rest-hooks/compare/@rest-hooks/normalizr@8.0.1...@rest-hooks/normalizr@8.0.2) (2021-09-29) | ||
### 💅 Enhancement | ||
* Detect multiple normalizr copies installed ([#1314](https://github.com/coinbase/rest-hooks/issues/1314)) ([f16ea01](https://github.com/coinbase/rest-hooks/commit/f16ea013938f7069c408ef0483fc58c09965479d)) | ||
### [8.0.1](https://github.com/coinbase/rest-hooks/compare/@rest-hooks/normalizr@8.0.0...@rest-hooks/normalizr@8.0.1) (2021-09-29) | ||
@@ -8,0 +17,0 @@ |
@@ -918,2 +918,6 @@ define(['exports'], (function (exports) { 'use strict'; | ||
if (process.env.NODE_ENV !== 'production' && typeof entity === 'symbol' && entity.toString().includes('DELETED')) { | ||
throw new Error("Unrecognized symbol detected.\nMake sure you do not have multiple versions of @rest-hooks/normalizr installed."); | ||
} | ||
if (typeof entity !== 'object' || entity === null) { | ||
@@ -920,0 +924,0 @@ return [entity, false, false]; |
@@ -919,2 +919,6 @@ var rest_hooks_normalizr = (function (exports) { | ||
if (process.env.NODE_ENV !== 'production' && typeof entity === 'symbol' && entity.toString().includes('DELETED')) { | ||
throw new Error("Unrecognized symbol detected.\nMake sure you do not have multiple versions of @rest-hooks/normalizr installed."); | ||
} | ||
if (typeof entity !== 'object' || entity === null) { | ||
@@ -921,0 +925,0 @@ return [entity, false, false]; |
@@ -1,1 +0,1 @@ | ||
function e(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t,n){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(r)return(r=r.call(t)).next.bind(r);if(Array.isArray(t)||(r=function(t,n){if(t){if("string"==typeof t)return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?e(t,n):void 0}}(t))||n&&t&&"number"==typeof t.length){r&&(t=r);var i=0;return function(){return i>=t.length?{done:!0}:{done:!1,value:t[i++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function n(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function r(e,t,r){return t&&n(e.prototype,t),r&&n(e,r),e}function i(e){return!(!e||"function"!=typeof e.hasOwnProperty||!(Object.hasOwnProperty.call(e,"__ownerID")||e._map&&Object.hasOwnProperty.call(e._map,"__ownerID")))}function o(e,t,n){var r=!0,i=!1;return[Object.keys(e).reduce((function(t,o){var s=""+o,a=n(t.get(s),e[s]),u=a[0],c=a[1],f=a[2];return c||(r=!1),f&&(i=!0),t.has(s)?t.set(s,u):t}),t),r,i]}var s=function(){function e(){}return e.toJSON=function(){return{name:this.name,schema:this.schema,key:this.key}},e.pk=function(e,t,n){return this.prototype.pk.call(e,t,n)},e.merge=function(e,t){return Object.assign({},e,t)},e.fromJS=function(e){void 0===e&&(e={});var t=new this(e);return Object.assign(t,e),t},e.process=function(e){function t(t,n,r){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e,t,n){if("production"!==process.env.NODE_ENV&&"silent"!==this.automaticValidation&&Array.isArray(e)){var r="Attempted to initialize "+this.name+" with an array, but named members were expected\n\nThis is likely due to a malformed response.\nTry inspecting the network response or fetch() return value.\nOr use debugging tools: https://resthooks.io/docs/guides/debugging\nLearn more about schemas: https://resthooks.io/docs/api/schema\nIf this is a mistake, you can disable this check by setting static automaticValidation = 'silent'\n\nFirst three members: "+JSON.stringify(e.slice(0,3),null,2);if("warn"!==this.automaticValidation){var i=new Error(r);throw i.status=400,i}console.warn(r)}return Object.assign({},e)})),e.normalize=function(e,t,n,r,i,o){var s=this;if("string"==typeof e)return e;var a=this.process(e,t,n),u=this.pk(a,t,n);if(void 0!==u&&""!==u){var c=this.key;if(c in o||(o[c]={}),u in o[c]||(o[c][u]=[]),o[c][u].some((function(t){return t===e})))return u;var f=this.validate(a);if(f){var l=new Error(f);throw l.status=400,l}return o[c][u].push(e),Object.keys(this.schema).forEach((function(e){if(Object.prototype.hasOwnProperty.call(a,e)){var t=s.schema[e];a[e]=r(a[e],a,e,t,i,o)}})),i(this,a,u),u}if("production"!==process.env.NODE_ENV){var h=new Error("Missing usable primary key when normalizing response.\n\n This is likely due to a malformed response.\n Try inspecting the network response or fetch() return value.\n Or use debugging tools: https://resthooks.io/docs/guides/debugging\n Learn more about schemas: https://resthooks.io/docs/api/schema\n\n Entity: "+this.name+"\n Value (processed): "+(a&&JSON.stringify(a,null,2))+"\n ");throw h.status=400,h}},e.validate=function(e){if("production"!==process.env.NODE_ENV&&"silent"!==this.automaticValidation){for(var n=new Set(Object.keys(this.defaults)),r=Object.keys(e),i=[[],[],[]],o=i[0],s=i[1],a=i[2],u=0,c=r;u<c.length;u++){var f=c[u];n.has(f)?o.push(f):a.push(f)}for(var l,h=t(n);!(l=h()).done;){var p=l.value;o.includes(p)||s.push(p)}if(n.size){var y=Math.max(r.length/2,1)<=a.length&&n.size>Math.max(a.length,2)&&Math.pow(o.length,1.5)/2<=a.length,d=o.length<Math.min(1,n.size/2);if(y||d){var m="",v="substantially different than expected keys";d&&(m+="\n Missing: "+s,v="no matching keys found"),y&&(m+="\n Unexpected keys: "+a,v="a large number of unexpected keys found");var g="Attempted to initialize "+this.name+" with "+v+"\n\n This is likely due to a malformed response.\n Try inspecting the network response or fetch() return value.\n Or use debugging tools: https://resthooks.io/docs/guides/debugging\n Learn more about schemas: https://resthooks.io/docs/api/schema\n If this is a mistake, you can disable this check by setting static automaticValidation = 'silent'\n\n Expected keys:\n Found: "+o+m+"\n Value (processed): "+JSON.stringify(e,null,2);if(!(o.length>=4&&y||"warn"===this.automaticValidation))return g;console.warn(g)}}}if("production"!==process.env.NODE_ENV)for(var b=0,O=Object.keys(this.schema);b<O.length;b++){var k=O[b];if(!Object.prototype.hasOwnProperty.call(e,k)&&!Object.prototype.hasOwnProperty.call(this.defaults,k))return"Schema key is missing in Entity\n\n Be sure all schema members are also part of the entity\n Or use debugging tools: https://resthooks.io/docs/guides/debugging\n Learn more about nesting schemas: https://resthooks.io/docs/guides/nested-response\n\n Entity keys: "+Object.keys(this.defaults)+"\n Schema key(missing): "+k+"\n "}},e.infer=function(e,t,n){if(e[0]){var r=this.pk(e[0],void 0,"");if(void 0!==r&&""!==r)return r;var i=function(e,t){return t?t.find((function(t){return Object.prototype.hasOwnProperty.call(e,t)})):void 0}(e[0],this.indexes);if(i&&t[this.key])return t[this.key][i][e[0][i]]}},e.expiresAt=function(e,t){return e.expiresAt},e.denormalize=function(e,t){var n=this;if(i(e)){this.validate(e.toJS()),null==t.setLocal||t.setLocal(e);var r=o(this.schema,e,t),s=r[0],a=r[1],u=r[2];return[this.fromJS(s.toObject()),a,u]}if(this.validate(e))return[void 0,!1,!0];var c=this.fromJS(e);null==t.setLocal||t.setLocal(c);var f=!1;return Object.keys(this.schema).forEach((function(r){var i=n.schema[r],o=Object.prototype.hasOwnProperty.call(e,r)?e[r]:void 0,s=t(o,i),a=s[0];!s[2]||Object.prototype.hasOwnProperty.call(e,r)&&!n.defaults[r]||(f=!0),Object.prototype.hasOwnProperty.call(e,r)&&e[r]!==a&&n.set(c,r,a)})),[c,!0,f]},e.set=function(e,t,n){e[t]=n},r(e,null,[{key:"key",get:function(){if("production"!==process.env.NODE_ENV&&(""===this.name||"Entity"===this.name||"_temp"===this.name))throw new Error("Entity classes without a name must define `static get key()`");return this.name}},{key:"defaults",get:function(){return Object.prototype.hasOwnProperty.call(this,"__defaults")||(this.__defaults=new this),this.__defaults}}]),e}();if(s.schema={},"production"!==process.env.NODE_ENV){var a=s.fromJS;s.fromJS=function(e){if(void 0===this.prototype.pk)throw new Error("cannot construct on abstract types");return a.call(this,e)}}function u(e){return null!==e&&void 0!==e.pk}var c=Symbol("ENTITY WAS DELETED");function f(e,t){return(f=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function l(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,f(e,t)}function h(e){return(h=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function p(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function y(e,t,n){return(y=p()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var i=new(Function.bind.apply(e,r));return n&&f(i,n.prototype),i}).apply(null,arguments)}function d(e){var t="function"==typeof Map?new Map:void 0;return(d=function(e){if(null===e||(n=e,-1===Function.toString.call(n).indexOf("[native code]")))return e;var n;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,r)}function r(){return y(e,arguments,h(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),f(r,e)})(e)}var m=function(){this.children=new WeakMap},v=function(e){function t(){for(var t,n=arguments.length,r=new Array(n),i=0;i<n;i++)r[i]=arguments[i];return(t=e.call.apply(e,[this].concat(r))||this).message="Keys must include at least one member",t}return l(t,e),t}(d(Error)),g=function(){function e(){this.first=new WeakMap}var t=e.prototype;return t.delete=function(e){var t=this.traverse(e);return null==t||delete t.value,!!t},t.get=function(e){var t=this.traverse(e);return null==t?void 0:t.value},t.has=function(e){var t=this.traverse(e);return!!t&&Object.prototype.hasOwnProperty.call(t,"value")},t.set=function(e,t){if(e.length<1)throw new v;for(var n,r=this.first,i=0;i<e.length;i++)r.has(e[i])?n=r.get(e[i]):(n=new m,r.set(e[i],n)),r=n.children,i===e.length-1&&(n.value=t);return this},t.traverse=function(e){for(var t,n=this.first,r=0;r<e.length;r++){if(!(t=n.get(e[r])))return;n=t.children}return t},e}(),b=function(){function e(e,t){this.schema=void 0,t&&(this._schemaAttribute="string"==typeof t?function(e){return e[t]}:t),this.define(e)}var t=e.prototype;return t.define=function(e){this.schema=e},t.getSchemaAttribute=function(e,t,n){return!this.isSingleSchema&&this._schemaAttribute(e,t,n)},t.inferSchema=function(e,t,n){if(this.isSingleSchema)return this.schema;var r=this.getSchemaAttribute(e,t,n);return this.schema[r]},t.normalizeValue=function(e,t,n,r,i,o){var s=this.inferSchema(e,t,n);if(!s){if("production"!==process.env.NODE_ENV){var a=this.getSchemaAttribute(e,t,n);console.warn("Schema attribute "+JSON.stringify(a,void 0,2)+" is not expected.\nExpected one of: "+Object.keys(this.schema).map((function(e){return'"'+e+'"'})).join(", ")+"\n\nValue: "+JSON.stringify(e,void 0,2))}return e}var u=r(e,t,n,s,i,o);return this.isSingleSchema||null==u?u:{id:u,schema:this.getSchemaAttribute(e,t,n)}},t.denormalizeValue=function(e,t){if(void 0===e)return[e,!1,!1];var n=i(e)?e.get("schema"):e.schema;return this.isSingleSchema||n?t((this.isSingleSchema?void 0:i(e)?e.get("id"):e.id)||e,this.isSingleSchema?this.schema:this.schema[n]):[e,!0,!1]},r(e,[{key:"isSingleSchema",get:function(){return!this._schemaAttribute}}]),e}(),O=function(e){if(Array.isArray(e)&&e.length>1)throw new Error("Expected schema definition to be a single schema, but found "+e.length+".");return e[0]},k=function(e){return Array.isArray(e)?e:Object.keys(e).map((function(t){return e[t]}))},w=function(e){var t=e[0],n=e[2];return void 0!==t&&!n},j=function(e,t,n,r,i,o,s){return e=O(e),k(t).map((function(t,a){return i(t,n,r,e,o,s)}))},S=function(e,t,n){e=O(e);var r=!1,i=!0;if(void 0===t&&e){var o=n(void 0,e);i=o[1],r=o[2]}return[t&&t.map?t.map((function(t){return n(t,e)})).filter(w).map((function(e){return e[0]})):t,i,r]};function E(e,t,n,r){}var _=function(e){function t(){return e.apply(this,arguments)||this}l(t,e);var n=t.prototype;return n.normalize=function(e,t,n,r,i,o){var s=this;return k(e).map((function(e,a){return s.normalizeValue(e,t,n,r,i,o)})).filter((function(e){return null!=e}))},n.denormalize=function(e,t){var n=this,r=!1,i=!0;if(void 0===e&&this.schema){var o=t(void 0,this.schema);i=o[1],r=o[2]}return[e&&e.map?e.map((function(e){return n.denormalizeValue(e,t)})).filter(w).map((function(e){return e[0]})):e,i,r]},n.infer=function(e,t,n){this.schema},t}(b),A=function(e,t,n,r,i,o,s){var a=Object.assign({},t);return Object.keys(e).forEach((function(n){var r=e[n],u=i(t[n],t,n,r,o,s);null==u?delete a[n]:a[n]=u})),a},z=function(e,t,n){if(i(t))return o(e,t,n);var r=Object.assign({},t),s=!0,a=!1;return Object.keys(e).forEach((function(t){var i=n(r[t],e[t]),o=i[0],u=i[1],c=i[2];void 0!==r[t]&&(r[t]=o),c&&(a=!0),u||(s=!1)})),[r,s,a]};function N(e,t,n,r){for(var i={},o=0,s=Object.keys(e);o<s.length;o++){var a=s[o];i[a]=r(e[a],t,n)}return i}var x=function(){function e(e){this.schema=void 0,this.define(e)}var t=e.prototype;return t.define=function(e){this.schema=Object.keys(e).reduce((function(t,n){var r,i=e[n];return Object.assign({},t,((r={})[n]=i,r))}),this.schema||{})},t.normalize=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return A.apply(void 0,[this.schema].concat(t))},t.denormalize=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return z.apply(void 0,[this.schema].concat(t))},t.infer=function(e,t,n){return N(this.schema,e,t,n)},e}(),V=Symbol("draft"),D=function(e,t,n,r,i,o,s,a){var u=r(e,t);if(u===c)return[void 0,!0,!0];if("object"!=typeof u||null===u)return[u,!1,!1];void 0===i[t.key]&&(i[t.key]={});var f=!0,l=!1;if(i[t.key][e]){if(Object.prototype.hasOwnProperty.call(i[t.key][e],V))return a.i=i[t.key][e].i,[i[t.key][e][V],f,l];s.push(u)}else{var h=s.length;s.push(u);var p=function(e){var t=e.og||e,n=function(e,n){return t(e,n)};return n.og=e,n}(n);p.setLocal=function(n){var r;return i[t.key][e]=((r={})[V]=n,r.i=h,r)};var y=function(e,t,n){e[t.key]||(e[t.key]={});e[t.key][n]||(e[t.key][n]=new g);return e[t.key][n]}(o,t,e),d=t.denormalize(u,p);i[t.key][e]=d[0],f=d[1],l=d[2];var m=s.slice(-1===a.i?h:a.i);y.has(m)?i[t.key][e]=y.get(m):y.set(m,i[t.key][e]),a.i===h&&(a.i=-1)}return[i[t.key][e],f,l]},P=function(e){var t=i(e);return function(n,r){var i,o=r.key;return"object"==typeof n?n:t?e.getIn([o,n]):null==(i=e[o])?void 0:i[n]}},J=function(e,t,n,r,i){if(void 0===r&&(r={}),void 0===i&&(i=new g),void 0===t)return[e,!0,!1,{}];if(void 0===e)return[void 0,!1,!1,{}];var o={},s=function(e,t,n,r){var i=P(e),o=[],s={i:-1};function a(e,n){if(!n)return[e,!0,!1];if(!n.denormalize||"function"!=typeof n.denormalize){if("function"==typeof n)return e instanceof n?[e,!0,!1]:[new n(e),!0,!1];if("object"==typeof n)return(Array.isArray(n)?S:z)(n,e,a)}return null===e?[e,!0,!1]:u(n)?void 0===e?[e,!1,!1]:D(e,n,a,i,r,t,o,s):"function"==typeof n.denormalize?n.denormalize(e,a):[e,!0,!1]}return function(e,t){var r=a(e,t);return Object(e)!==e?r:(o.push(e),n.has(o)?[n.get(o),r[1],r[2]]:(n.set(o,r[0]),r))}}(n,r,i,o);return[].concat(s(e,t),[o])};var I=function e(t,n,r,i,o,s){return t&&i?i.normalize&&"function"==typeof i.normalize?"object"!=typeof t?t:i.normalize(t,n,r,e,o,s):"function"==typeof i?new i(t):"object"!=typeof t||"object"!=typeof i?t:(Array.isArray(i)?j:A)(i,t,n,r,e,o,s):t};var M=function(e,n,r,i,o,s){if(void 0===r&&(r={}),void 0===i&&(i={}),void 0===o&&(o={}),void 0===s&&(s={date:Date.now(),expiresAt:1/0}),void 0===n)return{entities:r,indexes:i,result:e,entityMeta:o};var a=function(e){return["object","function"].includes(typeof e)?"object":typeof e}(n);if(null===e||typeof e!==a){if("production"!==process.env.NODE_ENV){throw"string"==typeof e&&function(e){try{return"string"!=typeof JSON.parse(e)}catch(e){return!1}}(e)?new Error('Normalizing a string, but this does match schema.\n\nParsing this input string as JSON worked. This likely indicates fetch function did not parse\nthe JSON. By default, this only happens if "content-type" header includes "json".\nSee https://resthooks.io/docs/guides/custom-networking for more information\n\n Schema: '+JSON.stringify(n,void 0,2)+'\n Input: "'+e+'"'):new Error('Unexpected input given to normalize. Expected type to be "'+a+'", found "'+(null===e?"null":typeof e)+'".\n\n Schema: '+JSON.stringify(n,void 0,2)+'\n Input: "'+e+'"')}throw new Error('Unexpected input given to normalize. Expected type to be "'+a+'", found "'+(null===e?"null":typeof e)+'".')}var u=Object.assign({},r),f=Object.assign({},i),l=Object.assign({},o),h=function(e,n,r,i,o,s){return function(a,u,f){var l=a.key;l in e||(e[l]={},r[l]=Object.assign({},r[l]),o[l]=Object.assign({},o[l]));var h=e[l][f];if(h)e[l][f]=a.merge(h,u);else{var p=a.expiresAt?a.expiresAt(s,u):s.expiresAt,y=r[l][f];if(y){var d,m,v=(null==(d=o[l][f])?void 0:d.date)>s.date;e[l][f]=typeof u!=typeof y?v?y:u:v?a.merge(u,y):a.merge(y,u),o[l][f]=(null==(m=o[l][f])?void 0:m.expiresAt)>=p?o[l][f]:{expiresAt:p,date:s.date}}else e[l][f]=u,o[l][f]={expiresAt:p,date:s.date}}if(Array.isArray(a.indexes)){var g=e[l][f];l in n||(n[l]={},i[l]=Object.assign({},i[l]));for(var b,O=t(a.indexes);!(b=O()).done;){var k=b.value;k in n[l]||(i[l][k]=n[l][k]={});var w=n[l][k];h&&delete w[h[k]],r[l]&&r[l][f]&&r[l][f][k]!==g[k]&&(w[r[l][f][k]]=c),k in g?w[g[k]]=f:"production"!==process.env.NODE_ENV&&console.warn("Index not found in entity. Indexes must be top-level members of your entity.\nIndex: "+k+"\nEntity: "+JSON.stringify(g,void 0,2))}}r[l][f]=e[l][f]}}({},{},u,f,l,s);return{entities:u,indexes:f,result:I(e,e,void 0,n,h,{}),entityMeta:l}},T=function(e){function t(t,n){if(!n)throw new Error('Expected option "schemaAttribute" not found on UnionSchema.');return e.call(this,t,n)||this}l(t,e);var n=t.prototype;return n.normalize=function(e,t,n,r,i,o){return this.normalizeValue(e,t,n,r,i,o)},n.denormalize=function(e,t){return this.denormalizeValue(e,t)},n.infer=function(e,t,n){var r=this.getSchemaAttribute(e[0],void 0,""),i=this.schema[r];if(void 0!==i)return{id:n(i,e,t),schema:r}},t}(b),L=function(e){function t(){return e.apply(this,arguments)||this}l(t,e);var n=t.prototype;return n.normalize=function(e,t,n,r,i,o){var s=this;return Object.keys(e).reduce((function(t,n,a){var u,c=e[n];return null!=c?Object.assign({},t,((u={})[n]=s.normalizeValue(c,e,n,r,i,o),u)):t}),{})},n.denormalize=function(e,t){var n=this,r=!0,i=!1;return[Object.keys(e).reduce((function(o,s){var a,u=e[s],c=n.denormalizeValue(u,t),f=c[0],l=c[1],h=c[2];return l||(r=!1),h&&(i=!0),!l||h?o:Object.assign({},o,((a={})[s]=f,a))}),{}),r,i]},n.infer=function(e,t,n){},t}(b),U=function(){function e(e){if("production"!==process.env.NODE_ENV&&!e)throw new Error('Expected option "entity" not found on DeleteSchema.');this._entity=e}var t=e.prototype;return t.normalize=function(e,t,n,r,i,o){if("string"==typeof e)return e;var s=this._entity.process(e,t,n),a=this._entity.pk(s,t,n);if("production"!==process.env.NODE_ENV&&(void 0===a||""===a)){var u,f=new Error("Missing usable primary key when normalizing response.\n\n This is likely due to a malformed response.\n Try inspecting the network response or fetch() return value.\n Or use debugging tools: https://resthooks.io/docs/guides/debugging\n Learn more about schemas: https://resthooks.io/docs/api/schema\n\n Delete(Entity): Delete("+(null!=(u=this._entity.name)?u:this._entity)+")\n Value: "+(e&&JSON.stringify(e,null,2))+"\n ");throw f.status=400,f}return i(this,c,a),a},t.infer=function(e,t,n){},t.denormalize=function(e,t){return t(e,this._entity)},t._denormalizeNullable=function(){return[]},t._normalizeNullable=function(){return[]},t.merge=function(e,t){return t},r(e,[{key:"key",get:function(){return this._entity.key}}]),e}(),R=Object.freeze({__proto__:null,Union:T,Values:L,Array:_,Object:x,Delete:U});function B(e,t,n){return function(e){return!!e&&"function"==typeof e.infer}(e)?e.infer(t,n,B):"object"==typeof e&&e?(Array.isArray(e)?E:N)(e,t,n,B):e}export{c as DELETED,s as Entity,g as WeakListMap,J as denormalize,B as inferResults,u as isEntity,M as normalize,R as schema}; | ||
function e(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function t(t,n){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(r)return(r=r.call(t)).next.bind(r);if(Array.isArray(t)||(r=function(t,n){if(t){if("string"==typeof t)return e(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?e(t,n):void 0}}(t))||n&&t&&"number"==typeof t.length){r&&(t=r);var i=0;return function(){return i>=t.length?{done:!0}:{done:!1,value:t[i++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function n(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function r(e,t,r){return t&&n(e.prototype,t),r&&n(e,r),e}function i(e){return!(!e||"function"!=typeof e.hasOwnProperty||!(Object.hasOwnProperty.call(e,"__ownerID")||e._map&&Object.hasOwnProperty.call(e._map,"__ownerID")))}function o(e,t,n){var r=!0,i=!1;return[Object.keys(e).reduce((function(t,o){var s=""+o,a=n(t.get(s),e[s]),u=a[0],c=a[1],f=a[2];return c||(r=!1),f&&(i=!0),t.has(s)?t.set(s,u):t}),t),r,i]}var s=function(){function e(){}return e.toJSON=function(){return{name:this.name,schema:this.schema,key:this.key}},e.pk=function(e,t,n){return this.prototype.pk.call(e,t,n)},e.merge=function(e,t){return Object.assign({},e,t)},e.fromJS=function(e){void 0===e&&(e={});var t=new this(e);return Object.assign(t,e),t},e.process=function(e){function t(t,n,r){return e.apply(this,arguments)}return t.toString=function(){return e.toString()},t}((function(e,t,n){if("production"!==process.env.NODE_ENV&&"silent"!==this.automaticValidation&&Array.isArray(e)){var r="Attempted to initialize "+this.name+" with an array, but named members were expected\n\nThis is likely due to a malformed response.\nTry inspecting the network response or fetch() return value.\nOr use debugging tools: https://resthooks.io/docs/guides/debugging\nLearn more about schemas: https://resthooks.io/docs/api/schema\nIf this is a mistake, you can disable this check by setting static automaticValidation = 'silent'\n\nFirst three members: "+JSON.stringify(e.slice(0,3),null,2);if("warn"!==this.automaticValidation){var i=new Error(r);throw i.status=400,i}console.warn(r)}return Object.assign({},e)})),e.normalize=function(e,t,n,r,i,o){var s=this;if("string"==typeof e)return e;var a=this.process(e,t,n),u=this.pk(a,t,n);if(void 0!==u&&""!==u){var c=this.key;if(c in o||(o[c]={}),u in o[c]||(o[c][u]=[]),o[c][u].some((function(t){return t===e})))return u;var f=this.validate(a);if(f){var l=new Error(f);throw l.status=400,l}return o[c][u].push(e),Object.keys(this.schema).forEach((function(e){if(Object.prototype.hasOwnProperty.call(a,e)){var t=s.schema[e];a[e]=r(a[e],a,e,t,i,o)}})),i(this,a,u),u}if("production"!==process.env.NODE_ENV){var h=new Error("Missing usable primary key when normalizing response.\n\n This is likely due to a malformed response.\n Try inspecting the network response or fetch() return value.\n Or use debugging tools: https://resthooks.io/docs/guides/debugging\n Learn more about schemas: https://resthooks.io/docs/api/schema\n\n Entity: "+this.name+"\n Value (processed): "+(a&&JSON.stringify(a,null,2))+"\n ");throw h.status=400,h}},e.validate=function(e){if("production"!==process.env.NODE_ENV&&"silent"!==this.automaticValidation){for(var n=new Set(Object.keys(this.defaults)),r=Object.keys(e),i=[[],[],[]],o=i[0],s=i[1],a=i[2],u=0,c=r;u<c.length;u++){var f=c[u];n.has(f)?o.push(f):a.push(f)}for(var l,h=t(n);!(l=h()).done;){var p=l.value;o.includes(p)||s.push(p)}if(n.size){var y=Math.max(r.length/2,1)<=a.length&&n.size>Math.max(a.length,2)&&Math.pow(o.length,1.5)/2<=a.length,d=o.length<Math.min(1,n.size/2);if(y||d){var m="",v="substantially different than expected keys";d&&(m+="\n Missing: "+s,v="no matching keys found"),y&&(m+="\n Unexpected keys: "+a,v="a large number of unexpected keys found");var g="Attempted to initialize "+this.name+" with "+v+"\n\n This is likely due to a malformed response.\n Try inspecting the network response or fetch() return value.\n Or use debugging tools: https://resthooks.io/docs/guides/debugging\n Learn more about schemas: https://resthooks.io/docs/api/schema\n If this is a mistake, you can disable this check by setting static automaticValidation = 'silent'\n\n Expected keys:\n Found: "+o+m+"\n Value (processed): "+JSON.stringify(e,null,2);if(!(o.length>=4&&y||"warn"===this.automaticValidation))return g;console.warn(g)}}}if("production"!==process.env.NODE_ENV)for(var b=0,O=Object.keys(this.schema);b<O.length;b++){var k=O[b];if(!Object.prototype.hasOwnProperty.call(e,k)&&!Object.prototype.hasOwnProperty.call(this.defaults,k))return"Schema key is missing in Entity\n\n Be sure all schema members are also part of the entity\n Or use debugging tools: https://resthooks.io/docs/guides/debugging\n Learn more about nesting schemas: https://resthooks.io/docs/guides/nested-response\n\n Entity keys: "+Object.keys(this.defaults)+"\n Schema key(missing): "+k+"\n "}},e.infer=function(e,t,n){if(e[0]){var r=this.pk(e[0],void 0,"");if(void 0!==r&&""!==r)return r;var i=function(e,t){return t?t.find((function(t){return Object.prototype.hasOwnProperty.call(e,t)})):void 0}(e[0],this.indexes);if(i&&t[this.key])return t[this.key][i][e[0][i]]}},e.expiresAt=function(e,t){return e.expiresAt},e.denormalize=function(e,t){var n=this;if(i(e)){this.validate(e.toJS()),null==t.setLocal||t.setLocal(e);var r=o(this.schema,e,t),s=r[0],a=r[1],u=r[2];return[this.fromJS(s.toObject()),a,u]}if(this.validate(e))return[void 0,!1,!0];var c=this.fromJS(e);null==t.setLocal||t.setLocal(c);var f=!1;return Object.keys(this.schema).forEach((function(r){var i=n.schema[r],o=Object.prototype.hasOwnProperty.call(e,r)?e[r]:void 0,s=t(o,i),a=s[0];!s[2]||Object.prototype.hasOwnProperty.call(e,r)&&!n.defaults[r]||(f=!0),Object.prototype.hasOwnProperty.call(e,r)&&e[r]!==a&&n.set(c,r,a)})),[c,!0,f]},e.set=function(e,t,n){e[t]=n},r(e,null,[{key:"key",get:function(){if("production"!==process.env.NODE_ENV&&(""===this.name||"Entity"===this.name||"_temp"===this.name))throw new Error("Entity classes without a name must define `static get key()`");return this.name}},{key:"defaults",get:function(){return Object.prototype.hasOwnProperty.call(this,"__defaults")||(this.__defaults=new this),this.__defaults}}]),e}();if(s.schema={},"production"!==process.env.NODE_ENV){var a=s.fromJS;s.fromJS=function(e){if(void 0===this.prototype.pk)throw new Error("cannot construct on abstract types");return a.call(this,e)}}function u(e){return null!==e&&void 0!==e.pk}var c=Symbol("ENTITY WAS DELETED");function f(e,t){return(f=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function l(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,f(e,t)}function h(e){return(h=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function p(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function y(e,t,n){return(y=p()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var i=new(Function.bind.apply(e,r));return n&&f(i,n.prototype),i}).apply(null,arguments)}function d(e){var t="function"==typeof Map?new Map:void 0;return(d=function(e){if(null===e||(n=e,-1===Function.toString.call(n).indexOf("[native code]")))return e;var n;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,r)}function r(){return y(e,arguments,h(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),f(r,e)})(e)}var m=function(){this.children=new WeakMap},v=function(e){function t(){for(var t,n=arguments.length,r=new Array(n),i=0;i<n;i++)r[i]=arguments[i];return(t=e.call.apply(e,[this].concat(r))||this).message="Keys must include at least one member",t}return l(t,e),t}(d(Error)),g=function(){function e(){this.first=new WeakMap}var t=e.prototype;return t.delete=function(e){var t=this.traverse(e);return null==t||delete t.value,!!t},t.get=function(e){var t=this.traverse(e);return null==t?void 0:t.value},t.has=function(e){var t=this.traverse(e);return!!t&&Object.prototype.hasOwnProperty.call(t,"value")},t.set=function(e,t){if(e.length<1)throw new v;for(var n,r=this.first,i=0;i<e.length;i++)r.has(e[i])?n=r.get(e[i]):(n=new m,r.set(e[i],n)),r=n.children,i===e.length-1&&(n.value=t);return this},t.traverse=function(e){for(var t,n=this.first,r=0;r<e.length;r++){if(!(t=n.get(e[r])))return;n=t.children}return t},e}(),b=function(){function e(e,t){this.schema=void 0,t&&(this._schemaAttribute="string"==typeof t?function(e){return e[t]}:t),this.define(e)}var t=e.prototype;return t.define=function(e){this.schema=e},t.getSchemaAttribute=function(e,t,n){return!this.isSingleSchema&&this._schemaAttribute(e,t,n)},t.inferSchema=function(e,t,n){if(this.isSingleSchema)return this.schema;var r=this.getSchemaAttribute(e,t,n);return this.schema[r]},t.normalizeValue=function(e,t,n,r,i,o){var s=this.inferSchema(e,t,n);if(!s){if("production"!==process.env.NODE_ENV){var a=this.getSchemaAttribute(e,t,n);console.warn("Schema attribute "+JSON.stringify(a,void 0,2)+" is not expected.\nExpected one of: "+Object.keys(this.schema).map((function(e){return'"'+e+'"'})).join(", ")+"\n\nValue: "+JSON.stringify(e,void 0,2))}return e}var u=r(e,t,n,s,i,o);return this.isSingleSchema||null==u?u:{id:u,schema:this.getSchemaAttribute(e,t,n)}},t.denormalizeValue=function(e,t){if(void 0===e)return[e,!1,!1];var n=i(e)?e.get("schema"):e.schema;return this.isSingleSchema||n?t((this.isSingleSchema?void 0:i(e)?e.get("id"):e.id)||e,this.isSingleSchema?this.schema:this.schema[n]):[e,!0,!1]},r(e,[{key:"isSingleSchema",get:function(){return!this._schemaAttribute}}]),e}(),O=function(e){if(Array.isArray(e)&&e.length>1)throw new Error("Expected schema definition to be a single schema, but found "+e.length+".");return e[0]},k=function(e){return Array.isArray(e)?e:Object.keys(e).map((function(t){return e[t]}))},w=function(e){var t=e[0],n=e[2];return void 0!==t&&!n},j=function(e,t,n,r,i,o,s){return e=O(e),k(t).map((function(t,a){return i(t,n,r,e,o,s)}))},E=function(e,t,n){e=O(e);var r=!1,i=!0;if(void 0===t&&e){var o=n(void 0,e);i=o[1],r=o[2]}return[t&&t.map?t.map((function(t){return n(t,e)})).filter(w).map((function(e){return e[0]})):t,i,r]};function S(e,t,n,r){}var _=function(e){function t(){return e.apply(this,arguments)||this}l(t,e);var n=t.prototype;return n.normalize=function(e,t,n,r,i,o){var s=this;return k(e).map((function(e,a){return s.normalizeValue(e,t,n,r,i,o)})).filter((function(e){return null!=e}))},n.denormalize=function(e,t){var n=this,r=!1,i=!0;if(void 0===e&&this.schema){var o=t(void 0,this.schema);i=o[1],r=o[2]}return[e&&e.map?e.map((function(e){return n.denormalizeValue(e,t)})).filter(w).map((function(e){return e[0]})):e,i,r]},n.infer=function(e,t,n){this.schema},t}(b),A=function(e,t,n,r,i,o,s){var a=Object.assign({},t);return Object.keys(e).forEach((function(n){var r=e[n],u=i(t[n],t,n,r,o,s);null==u?delete a[n]:a[n]=u})),a},z=function(e,t,n){if(i(t))return o(e,t,n);var r=Object.assign({},t),s=!0,a=!1;return Object.keys(e).forEach((function(t){var i=n(r[t],e[t]),o=i[0],u=i[1],c=i[2];void 0!==r[t]&&(r[t]=o),c&&(a=!0),u||(s=!1)})),[r,s,a]};function N(e,t,n,r){for(var i={},o=0,s=Object.keys(e);o<s.length;o++){var a=s[o];i[a]=r(e[a],t,n)}return i}var x=function(){function e(e){this.schema=void 0,this.define(e)}var t=e.prototype;return t.define=function(e){this.schema=Object.keys(e).reduce((function(t,n){var r,i=e[n];return Object.assign({},t,((r={})[n]=i,r))}),this.schema||{})},t.normalize=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return A.apply(void 0,[this.schema].concat(t))},t.denormalize=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return z.apply(void 0,[this.schema].concat(t))},t.infer=function(e,t,n){return N(this.schema,e,t,n)},e}(),V=Symbol("draft"),D=function(e,t,n,r,i,o,s,a){var u=r(e,t);if(u===c)return[void 0,!0,!0];if("production"!==process.env.NODE_ENV&&"symbol"==typeof u&&u.toString().includes("DELETED"))throw new Error("Unrecognized symbol detected.\nMake sure you do not have multiple versions of @rest-hooks/normalizr installed.");if("object"!=typeof u||null===u)return[u,!1,!1];void 0===i[t.key]&&(i[t.key]={});var f=!0,l=!1;if(i[t.key][e]){if(Object.prototype.hasOwnProperty.call(i[t.key][e],V))return a.i=i[t.key][e].i,[i[t.key][e][V],f,l];s.push(u)}else{var h=s.length;s.push(u);var p=function(e){var t=e.og||e,n=function(e,n){return t(e,n)};return n.og=e,n}(n);p.setLocal=function(n){var r;return i[t.key][e]=((r={})[V]=n,r.i=h,r)};var y=function(e,t,n){e[t.key]||(e[t.key]={});e[t.key][n]||(e[t.key][n]=new g);return e[t.key][n]}(o,t,e),d=t.denormalize(u,p);i[t.key][e]=d[0],f=d[1],l=d[2];var m=s.slice(-1===a.i?h:a.i);y.has(m)?i[t.key][e]=y.get(m):y.set(m,i[t.key][e]),a.i===h&&(a.i=-1)}return[i[t.key][e],f,l]},P=function(e){var t=i(e);return function(n,r){var i,o=r.key;return"object"==typeof n?n:t?e.getIn([o,n]):null==(i=e[o])?void 0:i[n]}},J=function(e,t,n,r,i){if(void 0===r&&(r={}),void 0===i&&(i=new g),void 0===t)return[e,!0,!1,{}];if(void 0===e)return[void 0,!1,!1,{}];var o={},s=function(e,t,n,r){var i=P(e),o=[],s={i:-1};function a(e,n){if(!n)return[e,!0,!1];if(!n.denormalize||"function"!=typeof n.denormalize){if("function"==typeof n)return e instanceof n?[e,!0,!1]:[new n(e),!0,!1];if("object"==typeof n)return(Array.isArray(n)?E:z)(n,e,a)}return null===e?[e,!0,!1]:u(n)?void 0===e?[e,!1,!1]:D(e,n,a,i,r,t,o,s):"function"==typeof n.denormalize?n.denormalize(e,a):[e,!0,!1]}return function(e,t){var r=a(e,t);return Object(e)!==e?r:(o.push(e),n.has(o)?[n.get(o),r[1],r[2]]:(n.set(o,r[0]),r))}}(n,r,i,o);return[].concat(s(e,t),[o])};var M=function e(t,n,r,i,o,s){return t&&i?i.normalize&&"function"==typeof i.normalize?"object"!=typeof t?t:i.normalize(t,n,r,e,o,s):"function"==typeof i?new i(t):"object"!=typeof t||"object"!=typeof i?t:(Array.isArray(i)?j:A)(i,t,n,r,e,o,s):t};var T=function(e,n,r,i,o,s){if(void 0===r&&(r={}),void 0===i&&(i={}),void 0===o&&(o={}),void 0===s&&(s={date:Date.now(),expiresAt:1/0}),void 0===n)return{entities:r,indexes:i,result:e,entityMeta:o};var a=function(e){return["object","function"].includes(typeof e)?"object":typeof e}(n);if(null===e||typeof e!==a){if("production"!==process.env.NODE_ENV){throw"string"==typeof e&&function(e){try{return"string"!=typeof JSON.parse(e)}catch(e){return!1}}(e)?new Error('Normalizing a string, but this does match schema.\n\nParsing this input string as JSON worked. This likely indicates fetch function did not parse\nthe JSON. By default, this only happens if "content-type" header includes "json".\nSee https://resthooks.io/docs/guides/custom-networking for more information\n\n Schema: '+JSON.stringify(n,void 0,2)+'\n Input: "'+e+'"'):new Error('Unexpected input given to normalize. Expected type to be "'+a+'", found "'+(null===e?"null":typeof e)+'".\n\n Schema: '+JSON.stringify(n,void 0,2)+'\n Input: "'+e+'"')}throw new Error('Unexpected input given to normalize. Expected type to be "'+a+'", found "'+(null===e?"null":typeof e)+'".')}var u=Object.assign({},r),f=Object.assign({},i),l=Object.assign({},o),h=function(e,n,r,i,o,s){return function(a,u,f){var l=a.key;l in e||(e[l]={},r[l]=Object.assign({},r[l]),o[l]=Object.assign({},o[l]));var h=e[l][f];if(h)e[l][f]=a.merge(h,u);else{var p=a.expiresAt?a.expiresAt(s,u):s.expiresAt,y=r[l][f];if(y){var d,m,v=(null==(d=o[l][f])?void 0:d.date)>s.date;e[l][f]=typeof u!=typeof y?v?y:u:v?a.merge(u,y):a.merge(y,u),o[l][f]=(null==(m=o[l][f])?void 0:m.expiresAt)>=p?o[l][f]:{expiresAt:p,date:s.date}}else e[l][f]=u,o[l][f]={expiresAt:p,date:s.date}}if(Array.isArray(a.indexes)){var g=e[l][f];l in n||(n[l]={},i[l]=Object.assign({},i[l]));for(var b,O=t(a.indexes);!(b=O()).done;){var k=b.value;k in n[l]||(i[l][k]=n[l][k]={});var w=n[l][k];h&&delete w[h[k]],r[l]&&r[l][f]&&r[l][f][k]!==g[k]&&(w[r[l][f][k]]=c),k in g?w[g[k]]=f:"production"!==process.env.NODE_ENV&&console.warn("Index not found in entity. Indexes must be top-level members of your entity.\nIndex: "+k+"\nEntity: "+JSON.stringify(g,void 0,2))}}r[l][f]=e[l][f]}}({},{},u,f,l,s);return{entities:u,indexes:f,result:M(e,e,void 0,n,h,{}),entityMeta:l}},I=function(e){function t(t,n){if(!n)throw new Error('Expected option "schemaAttribute" not found on UnionSchema.');return e.call(this,t,n)||this}l(t,e);var n=t.prototype;return n.normalize=function(e,t,n,r,i,o){return this.normalizeValue(e,t,n,r,i,o)},n.denormalize=function(e,t){return this.denormalizeValue(e,t)},n.infer=function(e,t,n){var r=this.getSchemaAttribute(e[0],void 0,""),i=this.schema[r];if(void 0!==i)return{id:n(i,e,t),schema:r}},t}(b),L=function(e){function t(){return e.apply(this,arguments)||this}l(t,e);var n=t.prototype;return n.normalize=function(e,t,n,r,i,o){var s=this;return Object.keys(e).reduce((function(t,n,a){var u,c=e[n];return null!=c?Object.assign({},t,((u={})[n]=s.normalizeValue(c,e,n,r,i,o),u)):t}),{})},n.denormalize=function(e,t){var n=this,r=!0,i=!1;return[Object.keys(e).reduce((function(o,s){var a,u=e[s],c=n.denormalizeValue(u,t),f=c[0],l=c[1],h=c[2];return l||(r=!1),h&&(i=!0),!l||h?o:Object.assign({},o,((a={})[s]=f,a))}),{}),r,i]},n.infer=function(e,t,n){},t}(b),U=function(){function e(e){if("production"!==process.env.NODE_ENV&&!e)throw new Error('Expected option "entity" not found on DeleteSchema.');this._entity=e}var t=e.prototype;return t.normalize=function(e,t,n,r,i,o){if("string"==typeof e)return e;var s=this._entity.process(e,t,n),a=this._entity.pk(s,t,n);if("production"!==process.env.NODE_ENV&&(void 0===a||""===a)){var u,f=new Error("Missing usable primary key when normalizing response.\n\n This is likely due to a malformed response.\n Try inspecting the network response or fetch() return value.\n Or use debugging tools: https://resthooks.io/docs/guides/debugging\n Learn more about schemas: https://resthooks.io/docs/api/schema\n\n Delete(Entity): Delete("+(null!=(u=this._entity.name)?u:this._entity)+")\n Value: "+(e&&JSON.stringify(e,null,2))+"\n ");throw f.status=400,f}return i(this,c,a),a},t.infer=function(e,t,n){},t.denormalize=function(e,t){return t(e,this._entity)},t._denormalizeNullable=function(){return[]},t._normalizeNullable=function(){return[]},t.merge=function(e,t){return t},r(e,[{key:"key",get:function(){return this._entity.key}}]),e}(),R=Object.freeze({__proto__:null,Union:I,Values:L,Array:_,Object:x,Delete:U});function B(e,t,n){return function(e){return!!e&&"function"==typeof e.infer}(e)?e.infer(t,n,B):"object"==typeof e&&e?(Array.isArray(e)?S:N)(e,t,n,B):e}export{c as DELETED,s as Entity,g as WeakListMap,J as denormalize,B as inferResults,u as isEntity,T as normalize,R as schema}; |
@@ -692,2 +692,7 @@ 'use strict'; | ||
if (process.env.NODE_ENV !== 'production' && typeof entity === 'symbol' && entity.toString().includes('DELETED')) { | ||
throw new Error(`Unrecognized symbol detected. | ||
Make sure you do not have multiple versions of @rest-hooks/normalizr installed.`); | ||
} | ||
if (typeof entity !== 'object' || entity === null) { | ||
@@ -694,0 +699,0 @@ return [entity, false, false]; |
@@ -922,2 +922,6 @@ (function (global, factory) { | ||
if (process.env.NODE_ENV !== 'production' && typeof entity === 'symbol' && entity.toString().includes('DELETED')) { | ||
throw new Error("Unrecognized symbol detected.\nMake sure you do not have multiple versions of @rest-hooks/normalizr installed."); | ||
} | ||
if (typeof entity !== 'object' || entity === null) { | ||
@@ -924,0 +928,0 @@ return [entity, false, false]; |
@@ -16,2 +16,7 @@ import { isEntity } from "./entities/Entity.js"; | ||
if (process.env.NODE_ENV !== 'production' && typeof entity === 'symbol' && entity.toString().includes('DELETED')) { | ||
throw new Error(`Unrecognized symbol detected. | ||
Make sure you do not have multiple versions of @rest-hooks/normalizr installed.`); | ||
} | ||
if (typeof entity !== 'object' || entity === null) { | ||
@@ -178,2 +183,2 @@ return [entity, false, false]; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZW5vcm1hbGl6ZS50cyJdLCJuYW1lcyI6WyJpc0VudGl0eSIsIkRFTEVURUQiLCJXZWFrTGlzdE1hcCIsImRlbm9ybWFsaXplIiwiYXJyYXlEZW5vcm1hbGl6ZSIsIm9iamVjdERlbm9ybWFsaXplIiwiaXNJbW11dGFibGUiLCJEUkFGVCIsIlN5bWJvbCIsInVudmlzaXRFbnRpdHkiLCJpZCIsInNjaGVtYSIsInVudmlzaXQiLCJnZXRFbnRpdHkiLCJsb2NhbENhY2hlIiwiZW50aXR5Q2FjaGUiLCJkZXBlbmRlbmNpZXMiLCJjeWNsZUluZGV4IiwiZW50aXR5IiwidW5kZWZpbmVkIiwia2V5IiwiZm91bmQiLCJkZWxldGVkIiwidHJhY2tpbmdJbmRleCIsImxlbmd0aCIsInB1c2giLCJ3cmFwcGVkVW52aXNpdCIsIndpdGhUcmFja2VkRW50aXRpZXMiLCJzZXRMb2NhbCIsImVudGl0eUNvcHkiLCJpIiwiZ2xvYmFsQ2FjaGVFbnRyeSIsImdldEdsb2JhbENhY2hlRW50cnkiLCJsb2NhbEtleSIsInNsaWNlIiwiaGFzIiwic2V0IiwiZ2V0IiwiT2JqZWN0IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZ2V0VW52aXNpdCIsImVudGl0aWVzIiwicmVzdWx0Q2FjaGUiLCJnZXRFbnRpdGllcyIsImlucHV0IiwibWV0aG9kIiwiQXJyYXkiLCJpc0FycmF5IiwicmV0IiwiZW50aXR5SXNJbW11dGFibGUiLCJlbnRpdHlPcklkIiwic2NoZW1hS2V5IiwiZ2V0SW4iLCJyZXNvbHZlZEVudGl0aWVzIiwiZGVub3JtYWxpemVTaW1wbGUiLCJvcmlnaW5hbFVudmlzaXQiLCJvZyJdLCJtYXBwaW5ncyI6IkFBU0EsU0FBaUJBLFFBQWpCO0FBQ0EsU0FBU0MsT0FBVDtBQUNBLE9BQU9DLFdBQVA7QUFDQSxTQUFTQyxXQUFXLElBQUlDLGdCQUF4QjtBQUNBLFNBQVNELFdBQVcsSUFBSUUsaUJBQXhCO0FBQ0EsU0FBU0MsV0FBVDtBQUVB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QVQsQ0FDRWpCLFdBREYsRUFJRUosTUFKRixFQUtFRCxFQUxGLEVBTUU7QUFDQSxNQUFJLENBQUNLLFdBQVcsQ0FBQ0osTUFBTSxDQUFDUyxHQUFSLENBQWhCLEVBQThCTCxXQUFXLENBQUNKLE1BQU0sQ0FBQ1MsR0FBUixDQUFYLEdBQTBCLEVBQTFCO0FBQzlCLE1BQUksQ0FBQ0wsV0FBVyxDQUFDSixNQUFNLENBQUNTLEdBQVIsQ0FBWCxDQUF3QlYsRUFBeEIsQ0FBTCxFQUNFSyxXQUFXLENBQUNKLE1BQU0sQ0FBQ1MsR0FBUixDQUFYLENBQXdCVixFQUF4QixJQUE4QixJQUFJUixXQUFKLEVBQTlCO0FBQ0YsU0FBT2EsV0FBVyxDQUFDSixNQUFNLENBQUNTLEdBQVIsQ0FBWCxDQUF3QlYsRUFBeEIsQ0FBUDtBQUNEOztBQUVELFNBQVNpQixtQkFBVCxDQUE2QmYsT0FBN0IsRUFBK0U7QUFDN0U7QUFDQTtBQUNBLFFBQU02QyxlQUFlLEdBQUc3QyxPQUFPLENBQUM4QyxFQUFSLElBQWM5QyxPQUF0Qzs7QUFDQSxRQUFNYyxjQUFjLEdBQUcsQ0FBQ29CLEtBQUQsRUFBYW5DLE1BQWIsS0FDckI4QyxlQUFlLENBQUNYLEtBQUQsRUFBUW5DLE1BQVIsQ0FEakI7O0FBRUFlLEVBQUFBLGNBQWMsQ0FBQ2dDLEVBQWYsR0FBb0I5QyxPQUFwQjtBQUNBLFNBQU9jLGNBQVA7QUFDRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVudGl0eUludGVyZmFjZSB9IGZyb20gJ0ByZXN0LWhvb2tzL25vcm1hbGl6ci9zY2hlbWEnO1xuaW1wb3J0ICogYXMgc2NoZW1hIGZyb20gJ0ByZXN0LWhvb2tzL25vcm1hbGl6ci9zY2hlbWEnO1xuaW1wb3J0IHtcbiAgRGVub3JtYWxpemUsXG4gIERlbm9ybWFsaXplTnVsbGFibGUsXG4gIFNjaGVtYSxcbiAgRGVub3JtYWxpemVDYWNoZSxcbiAgVW52aXNpdEZ1bmN0aW9uLFxufSBmcm9tICdAcmVzdC1ob29rcy9ub3JtYWxpenIvdHlwZXMnO1xuaW1wb3J0IEVudGl0eSwgeyBpc0VudGl0eSB9IGZyb20gJ0ByZXN0LWhvb2tzL25vcm1hbGl6ci9lbnRpdGllcy9FbnRpdHknO1xuaW1wb3J0IHsgREVMRVRFRCB9IGZyb20gJ0ByZXN0LWhvb2tzL25vcm1hbGl6ci9zcGVjaWFsJztcbmltcG9ydCBXZWFrTGlzdE1hcCBmcm9tICdAcmVzdC1ob29rcy9ub3JtYWxpenIvV2Vha0xpc3RNYXAnO1xuaW1wb3J0IHsgZGVub3JtYWxpemUgYXMgYXJyYXlEZW5vcm1hbGl6ZSB9IGZyb20gJ0ByZXN0LWhvb2tzL25vcm1hbGl6ci9zY2hlbWFzL0FycmF5JztcbmltcG9ydCB7IGRlbm9ybWFsaXplIGFzIG9iamVjdERlbm9ybWFsaXplIH0gZnJvbSAnQHJlc3QtaG9va3Mvbm9ybWFsaXpyL3NjaGVtYXMvT2JqZWN0JztcbmltcG9ydCB7IGlzSW1tdXRhYmxlIH0gZnJvbSAnQHJlc3QtaG9va3Mvbm9ybWFsaXpyL3NjaGVtYXMvSW1tdXRhYmxlVXRpbHMnO1xuXG5jb25zdCBEUkFGVCA9IFN5bWJvbCgnZHJhZnQnKTtcblxuY29uc3QgdW52aXNpdEVudGl0eSA9IChcbiAgaWQ6IGFueSxcbiAgc2NoZW1hOiBhbnksXG4gIHVudmlzaXQ6IFVudmlzaXRGdW5jdGlvbixcbiAgZ2V0RW50aXR5OiAoXG4gICAgZW50aXR5T3JJZDogUmVjb3JkPHN0cmluZywgYW55PiB8IHN0cmluZyxcbiAgICBzY2hlbWE6IHR5cGVvZiBFbnRpdHksXG4gICkgPT4gRW50aXR5SW50ZXJmYWNlIHwgdHlwZW9mIERFTEVURUQsXG4gIGxvY2FsQ2FjaGU6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGFueT4+LFxuICBlbnRpdHlDYWNoZTogRGVub3JtYWxpemVDYWNoZVsnZW50aXRpZXMnXSxcbiAgZGVwZW5kZW5jaWVzOiBvYmplY3RbXSxcbiAgY3ljbGVJbmRleDogeyBpOiBudW1iZXIgfSxcbik6IFtcbiAgZGVub3JtYWxpemVkOiBFbnRpdHlJbnRlcmZhY2UgfCB1bmRlZmluZWQsXG4gIGZvdW5kOiBib29sZWFuLFxuICBkZWxldGVkOiBib29sZWFuLFxuXSA9PiB7XG4gIGNvbnN0IGVudGl0eSA9IGdldEVudGl0eShpZCwgc2NoZW1hKTtcbiAgaWYgKGVudGl0eSA9PT0gREVMRVRFRCkge1xuICAgIHJldHVybiBbdW5kZWZpbmVkLCB0cnVlLCB0cnVlXTtcbiAgfVxuICBpZiAodHlwZW9mIGVudGl0eSAhPT0gJ29iamVjdCcgfHwgZW50aXR5ID09PSBudWxsKSB7XG4gICAgcmV0dXJuIFtlbnRpdHksIGZhbHNlLCBmYWxzZV07XG4gIH1cblxuICBpZiAobG9jYWxDYWNoZVtzY2hlbWEua2V5XSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgbG9jYWxDYWNoZVtzY2hlbWEua2V5XSA9IHt9O1xuICB9XG5cbiAgbGV0IGZvdW5kID0gdHJ1ZTtcbiAgbGV0IGRlbGV0ZWQgPSBmYWxzZTtcblxuICBpZiAoIWxvY2FsQ2FjaGVbc2NoZW1hLmtleV1baWRdKSB7XG4gICAgY29uc3QgdHJhY2tpbmdJbmRleCA9IGRlcGVuZGVuY2llcy5sZW5ndGg7XG4gICAgZGVwZW5kZW5jaWVzLnB1c2goZW50aXR5KTtcblxuICAgIGNvbnN0IHdyYXBwZWRVbnZpc2l0ID0gd2l0aFRyYWNrZWRFbnRpdGllcyh1bnZpc2l0KTtcbiAgICAvLyB7IFtEUkFGVF0gfSBtZWFucyB3ZSBhcmUgc3RpbGwgcHJvY2Vzc2luZyAtIHdoaWNoIGlmIGZvdW5kIGluZGljYXRlcyBhIGN5Y2xlXG4gICAgd3JhcHBlZFVudmlzaXQuc2V0TG9jYWwgPSBlbnRpdHlDb3B5ID0+XG4gICAgICAobG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF0gPSB7IFtEUkFGVF06IGVudGl0eUNvcHksIGk6IHRyYWNraW5nSW5kZXggfSk7XG5cbiAgICBjb25zdCBnbG9iYWxDYWNoZUVudHJ5ID0gZ2V0R2xvYmFsQ2FjaGVFbnRyeShlbnRpdHlDYWNoZSwgc2NoZW1hLCBpZCk7XG5cbiAgICBbbG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF0sIGZvdW5kLCBkZWxldGVkXSA9IHNjaGVtYS5kZW5vcm1hbGl6ZShcbiAgICAgIGVudGl0eSxcbiAgICAgIHdyYXBwZWRVbnZpc2l0LFxuICAgICk7XG5cbiAgICAvLyBpZiBpbiBjeWNsZSwgdXNlIHRoZSBzdGFydCBvZiB0aGUgY3ljbGUgdG8gdHJhY2sgYWxsIGRlcHNcbiAgICAvLyBvdGhlcndpc2UsIHdlIHVzZSBvdXIgb3duIHRyYWNraW5nSW5kZXhcbiAgICBjb25zdCBsb2NhbEtleSA9IGRlcGVuZGVuY2llcy5zbGljZShcbiAgICAgIGN5Y2xlSW5kZXguaSA9PT0gLTEgPyB0cmFja2luZ0luZGV4IDogY3ljbGVJbmRleC5pLFxuICAgICk7XG5cbiAgICBpZiAoIWdsb2JhbENhY2hlRW50cnkuaGFzKGxvY2FsS2V5KSkge1xuICAgICAgZ2xvYmFsQ2FjaGVFbnRyeS5zZXQobG9jYWxLZXksIGxvY2FsQ2FjaGVbc2NoZW1hLmtleV1baWRdKTtcbiAgICB9IGVsc2Uge1xuICAgICAgbG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF0gPSBnbG9iYWxDYWNoZUVudHJ5LmdldChsb2NhbEtleSk7XG4gICAgfVxuXG4gICAgLy8gc3RhcnQgb2YgY3ljbGUgLSByZXNldCBjeWNsZSBkZXRlY3Rpb25cbiAgICBpZiAoY3ljbGVJbmRleC5pID09PSB0cmFja2luZ0luZGV4KSB7XG4gICAgICBjeWNsZUluZGV4LmkgPSAtMTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgLy8gY3ljbGUgZGV0ZWN0ZWRcbiAgICBpZiAoXG4gICAgICBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF0sIERSQUZUKVxuICAgICkge1xuICAgICAgY3ljbGVJbmRleC5pID0gbG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF0uaTtcbiAgICAgIHJldHVybiBbbG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF1bRFJBRlRdLCBmb3VuZCwgZGVsZXRlZF07XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHdpdGggbm8gY3ljbGUsIGdsb2JhbENhY2hlRW50cnkgd2lsbCBoYXZlIGFscmVhZHkgYmVlbiBzZXRcbiAgICAgIGRlcGVuZGVuY2llcy5wdXNoKGVudGl0eSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIFtsb2NhbENhY2hlW3NjaGVtYS5rZXldW2lkXSwgZm91bmQsIGRlbGV0ZWRdO1xufTtcblxuY29uc3QgZ2V0VW52aXNpdCA9IChcbiAgZW50aXRpZXM6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGFueT4+LFxuICBlbnRpdHlDYWNoZTogRGVub3JtYWxpemVDYWNoZVsnZW50aXRpZXMnXSxcbiAgcmVzdWx0Q2FjaGU6IFdlYWtMaXN0TWFwPG9iamVjdCwgYW55PixcbiAgbG9jYWxDYWNoZTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgYW55Pj4sXG4pID0+IHtcbiAgY29uc3QgZ2V0RW50aXR5ID0gZ2V0RW50aXRpZXMoZW50aXRpZXMpO1xuICBjb25zdCBkZXBlbmRlbmNpZXM6IG9iamVjdFtdID0gW107XG4gIGNvbnN0IGN5Y2xlSW5kZXggPSB7IGk6IC0xIH07XG5cbiAgZnVuY3Rpb24gdW52aXNpdChcbiAgICBpbnB1dDogYW55LFxuICAgIHNjaGVtYTogYW55LFxuICApOiBbZGVub3JtYWxpemVkOiBhbnksIGZvdW5kOiBib29sZWFuLCBkZWxldGVkOiBib29sZWFuXSB7XG4gICAgaWYgKCFzY2hlbWEpIHJldHVybiBbaW5wdXQsIHRydWUsIGZhbHNlXTtcblxuICAgIGlmICghc2NoZW1hLmRlbm9ybWFsaXplIHx8IHR5cGVvZiBzY2hlbWEuZGVub3JtYWxpemUgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIGlmIChpbnB1dCBpbnN0YW5jZW9mIHNjaGVtYSkgcmV0dXJuIFtpbnB1dCwgdHJ1ZSwgZmFsc2VdO1xuICAgICAgICByZXR1cm4gW25ldyBzY2hlbWEoaW5wdXQpLCB0cnVlLCBmYWxzZV07XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIGNvbnN0IG1ldGhvZCA9IEFycmF5LmlzQXJyYXkoc2NoZW1hKVxuICAgICAgICAgID8gYXJyYXlEZW5vcm1hbGl6ZVxuICAgICAgICAgIDogb2JqZWN0RGVub3JtYWxpemU7XG4gICAgICAgIHJldHVybiBtZXRob2Qoc2NoZW1hLCBpbnB1dCwgdW52aXNpdCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gbnVsbCBpcyBjb25zaWRlcmVkIGludGVudGlvbmFsLCB0aHVzIGFsd2F5cyAnZm91bmQnIGFzIHRydWVcbiAgICBpZiAoaW5wdXQgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBbaW5wdXQsIHRydWUsIGZhbHNlXTtcbiAgICB9XG5cbiAgICBpZiAoaXNFbnRpdHkoc2NoZW1hKSkge1xuICAgICAgLy8gdW52aXNpdEVudGl0eSBqdXN0IGNhbid0IGhhbmRsZSB1bmRlZmluZWRcbiAgICAgIGlmIChpbnB1dCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJldHVybiBbaW5wdXQsIGZhbHNlLCBmYWxzZV07XG4gICAgICB9XG4gICAgICByZXR1cm4gdW52aXNpdEVudGl0eShcbiAgICAgICAgaW5wdXQsXG4gICAgICAgIHNjaGVtYSxcbiAgICAgICAgdW52aXNpdCxcbiAgICAgICAgZ2V0RW50aXR5LFxuICAgICAgICBsb2NhbENhY2hlLFxuICAgICAgICBlbnRpdHlDYWNoZSxcbiAgICAgICAgZGVwZW5kZW5jaWVzLFxuICAgICAgICBjeWNsZUluZGV4LFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIHNjaGVtYS5kZW5vcm1hbGl6ZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgcmV0dXJuIHNjaGVtYS5kZW5vcm1hbGl6ZShpbnB1dCwgdW52aXNpdCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIFtpbnB1dCwgdHJ1ZSwgZmFsc2VdO1xuICB9XG5cbiAgLy9jb25zdCB3cmFwcGVkVW52aXNpdCA9IHdpdGhUcmFja2VkRW50aXRpZXModW52aXNpdCwgZ2xvYmFsS2V5KTtcblxuICByZXR1cm4gKFxuICAgIGlucHV0OiBhbnksXG4gICAgc2NoZW1hOiBhbnksXG4gICk6IFtkZW5vcm1hbGl6ZWQ6IGFueSwgZm91bmQ6IGJvb2xlYW4sIGRlbGV0ZWQ6IGJvb2xlYW5dID0+IHtcbiAgICBjb25zdCByZXQgPSB1bnZpc2l0KGlucHV0LCBzY2hlbWEpO1xuICAgIC8vIGluIHRoZSBjYXNlIHdoZXJlIFdlYWtNYXAgY2Fubm90IGJlIHVzZWRcbiAgICAvLyB0aGlzIHRlc3QgZW5zdXJlcyBudWxsIGlzIHByb3Blcmx5IGV4Y2x1ZGVkIGZyb20gV2Vha01hcFxuICAgIGlmIChPYmplY3QoaW5wdXQpICE9PSBpbnB1dCkgcmV0dXJuIHJldDtcblxuICAgIGRlcGVuZGVuY2llcy5wdXNoKGlucHV0KTtcbiAgICBpZiAoIXJlc3VsdENhY2hlLmhhcyhkZXBlbmRlbmNpZXMpKSB7XG4gICAgICByZXN1bHRDYWNoZS5zZXQoZGVwZW5kZW5jaWVzLCByZXRbMF0pO1xuICAgICAgcmV0dXJuIHJldDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIFtyZXN1bHRDYWNoZS5nZXQoZGVwZW5kZW5jaWVzKSwgcmV0WzFdLCByZXRbMl1dO1xuICAgIH1cbiAgfTtcbn07XG5cbmNvbnN0IGdldEVudGl0aWVzID0gKGVudGl0aWVzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+KSA9PiB7XG4gIGNvbnN0IGVudGl0eUlzSW1tdXRhYmxlID0gaXNJbW11dGFibGUoZW50aXRpZXMpO1xuXG4gIHJldHVybiAoZW50aXR5T3JJZDogUmVjb3JkPHN0cmluZywgYW55PiB8IHN0cmluZywgc2NoZW1hOiB0eXBlb2YgRW50aXR5KSA9PiB7XG4gICAgY29uc3Qgc2NoZW1hS2V5ID0gc2NoZW1hLmtleTtcblxuICAgIGlmICh0eXBlb2YgZW50aXR5T3JJZCA9PT0gJ29iamVjdCcpIHtcbiAgICAgIHJldHVybiBlbnRpdHlPcklkO1xuICAgIH1cblxuICAgIGlmIChlbnRpdHlJc0ltbXV0YWJsZSkge1xuICAgICAgcmV0dXJuIGVudGl0aWVzLmdldEluKFtzY2hlbWFLZXksIGVudGl0eU9ySWRdKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZW50aXRpZXNbc2NoZW1hS2V5XT8uW2VudGl0eU9ySWRdO1xuICB9O1xufTtcblxudHlwZSBEZW5vcm1hbGl6ZVJldHVybjxTIGV4dGVuZHMgU2NoZW1hPiA9XG4gIHwgW1xuICAgICAgZGVub3JtYWxpemVkOiBEZW5vcm1hbGl6ZTxTPixcbiAgICAgIGZvdW5kOiB0cnVlLFxuICAgICAgZGVsZXRlZDogZmFsc2UsXG4gICAgICByZXNvbHZlZEVudGl0aWVzOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBhbnk+PixcbiAgICBdXG4gIHwgW1xuICAgICAgZGVub3JtYWxpemVkOiBEZW5vcm1hbGl6ZU51bGxhYmxlPFM+LFxuICAgICAgZm91bmQ6IGJvb2xlYW4sXG4gICAgICBkZWxldGVkOiB0cnVlLFxuICAgICAgcmVzb2x2ZWRFbnRpdGllczogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgYW55Pj4sXG4gICAgXVxuICB8IFtcbiAgICAgIGRlbm9ybWFsaXplZDogRGVub3JtYWxpemVOdWxsYWJsZTxTPixcbiAgICAgIGZvdW5kOiBmYWxzZSxcbiAgICAgIGRlbGV0ZWQ6IGJvb2xlYW4sXG4gICAgICByZXNvbHZlZEVudGl0aWVzOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBhbnk+PixcbiAgICBdO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2V4cGxpY2l0LW1vZHVsZS1ib3VuZGFyeS10eXBlc1xuZXhwb3J0IGNvbnN0IGRlbm9ybWFsaXplID0gPFMgZXh0ZW5kcyBTY2hlbWE+KFxuICBpbnB1dDogdW5rbm93bixcbiAgc2NoZW1hOiBTIHwgdW5kZWZpbmVkLFxuICBlbnRpdGllczogYW55LFxuICBlbnRpdHlDYWNoZTogRGVub3JtYWxpemVDYWNoZVsnZW50aXRpZXMnXSA9IHt9LFxuICByZXN1bHRDYWNoZTogV2Vha0xpc3RNYXA8b2JqZWN0LCBhbnk+ID0gbmV3IFdlYWtMaXN0TWFwKCksXG4pOiBEZW5vcm1hbGl6ZVJldHVybjxTPiA9PiB7XG4gIC8vIHVuZGVmaW5lZCBtZWFuIGRvbid0IGRvIGFueXRoaW5nXG4gIGlmIChzY2hlbWEgPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiBbaW5wdXQsIHRydWUsIGZhbHNlLCB7fV0gYXMgW2FueSwgYm9vbGVhbiwgYm9vbGVhbiwgYW55XTtcbiAgfVxuICBpZiAoaW5wdXQgPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiBbdW5kZWZpbmVkLCBmYWxzZSwgZmFsc2UsIHt9XSBhcyBbYW55LCBib29sZWFuLCBib29sZWFuLCBhbnldO1xuICB9XG4gIGNvbnN0IHJlc29sdmVkRW50aXRpZXM6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGFueT4+ID0ge307XG4gIGNvbnN0IHVudmlzaXQgPSBnZXRVbnZpc2l0KFxuICAgIGVudGl0aWVzLFxuICAgIGVudGl0eUNhY2hlLFxuICAgIHJlc3VsdENhY2hlLFxuICAgIHJlc29sdmVkRW50aXRpZXMsXG4gICk7XG4gIHJldHVybiBbLi4udW52aXNpdChpbnB1dCwgc2NoZW1hKSwgcmVzb2x2ZWRFbnRpdGllc10gYXMgW1xuICAgIGFueSxcbiAgICBib29sZWFuLFxuICAgIGJvb2xlYW4sXG4gICAgYW55LFxuICBdO1xufTtcblxuZXhwb3J0IGNvbnN0IGRlbm9ybWFsaXplU2ltcGxlID0gPFMgZXh0ZW5kcyBTY2hlbWE+KFxuICBpbnB1dDogYW55LFxuICBzY2hlbWE6IFMgfCB1bmRlZmluZWQsXG4gIGVudGl0aWVzOiBhbnksXG4gIGVudGl0eUNhY2hlOiBEZW5vcm1hbGl6ZUNhY2hlWydlbnRpdGllcyddID0ge30sXG4gIHJlc3VsdENhY2hlOiBXZWFrTGlzdE1hcDxvYmplY3QsIGFueT4gPSBuZXcgV2Vha0xpc3RNYXAoKSxcbik6XG4gIHwgW2Rlbm9ybWFsaXplZDogRGVub3JtYWxpemU8Uz4sIGZvdW5kOiB0cnVlLCBkZWxldGVkOiBmYWxzZV1cbiAgfCBbZGVub3JtYWxpemVkOiBEZW5vcm1hbGl6ZU51bGxhYmxlPFM+LCBmb3VuZDogYm9vbGVhbiwgZGVsZXRlZDogdHJ1ZV1cbiAgfCBbZGVub3JtYWxpemVkOiBEZW5vcm1hbGl6ZU51bGxhYmxlPFM+LCBmb3VuZDogZmFsc2UsIGRlbGV0ZWQ6IGJvb2xlYW5dID0+XG4gIGRlbm9ybWFsaXplKGlucHV0LCBzY2hlbWEsIGVudGl0aWVzLCBlbnRpdHlDYWNoZSwgcmVzdWx0Q2FjaGUpLnNsaWNlKFxuICAgIDAsXG4gICAgMyxcbiAgKSBhcyBhbnk7XG5cbmZ1bmN0aW9uIGdldEdsb2JhbENhY2hlRW50cnkoXG4gIGVudGl0eUNhY2hlOiB7XG4gICAgW2tleTogc3RyaW5nXTogeyBbcGs6IHN0cmluZ106IFdlYWtMaXN0TWFwPG9iamVjdCwgRW50aXR5SW50ZXJmYWNlPGFueT4+IH07XG4gIH0sXG4gIHNjaGVtYTogYW55LFxuICBpZDogYW55LFxuKSB7XG4gIGlmICghZW50aXR5Q2FjaGVbc2NoZW1hLmtleV0pIGVudGl0eUNhY2hlW3NjaGVtYS5rZXldID0ge307XG4gIGlmICghZW50aXR5Q2FjaGVbc2NoZW1hLmtleV1baWRdKVxuICAgIGVudGl0eUNhY2hlW3NjaGVtYS5rZXldW2lkXSA9IG5ldyBXZWFrTGlzdE1hcCgpO1xuICByZXR1cm4gZW50aXR5Q2FjaGVbc2NoZW1hLmtleV1baWRdO1xufVxuXG5mdW5jdGlvbiB3aXRoVHJhY2tlZEVudGl0aWVzKHVudmlzaXQ6IFVudmlzaXRGdW5jdGlvbik6IHNjaGVtYS5VbnZpc2l0RnVuY3Rpb24ge1xuICAvLyBldmVyeSB0aW1lIHdlIG5lc3QsIHdlIHdhbnQgdG8gdW53cmFwIGJhY2sgdG8gdGhlIHRvcC5cbiAgLy8gdGhpcyBpcyBkdWUgdG8gb25seSBuZWVkZWQgdGhlIG5leHQgbGV2ZWwgb2YgbmVzdGVkIGVudGl0aWVzIGZvciBsb29rdXBcbiAgY29uc3Qgb3JpZ2luYWxVbnZpc2l0ID0gdW52aXNpdC5vZyB8fCB1bnZpc2l0O1xuICBjb25zdCB3cmFwcGVkVW52aXNpdCA9IChpbnB1dDogYW55LCBzY2hlbWE6IGFueSkgPT5cbiAgICBvcmlnaW5hbFVudmlzaXQoaW5wdXQsIHNjaGVtYSk7XG4gIHdyYXBwZWRVbnZpc2l0Lm9nID0gdW52aXNpdDtcbiAgcmV0dXJuIHdyYXBwZWRVbnZpc2l0O1xufVxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZW5vcm1hbGl6ZS50cyJdLCJuYW1lcyI6WyJpc0VudGl0eSIsIkRFTEVURUQiLCJXZWFrTGlzdE1hcCIsImRlbm9ybWFsaXplIiwiYXJyYXlEZW5vcm1hbGl6ZSIsIm9iamVjdERlbm9ybWFsaXplIiwiaXNJbW11dGFibGUiLCJEUkFGVCIsIlN5bWJvbCIsInVudmlzaXRFbnRpdHkiLCJpZCIsInNjaGVtYSIsInVudmlzaXQiLCJnZXRFbnRpdHkiLCJsb2NhbENhY2hlIiwiZW50aXR5Q2FjaGUiLCJkZXBlbmRlbmNpZXMiLCJjeWNsZUluZGV4IiwiZW50aXR5IiwidW5kZWZpbmVkIiwicHJvY2VzcyIsImVudiIsIk5PREVfRU5WIiwidG9TdHJpbmciLCJpbmNsdWRlcyIsIkVycm9yIiwia2V5IiwiZm91bmQiLCJkZWxldGVkIiwidHJhY2tpbmdJbmRleCIsImxlbmd0aCIsInB1c2giLCJ3cmFwcGVkVW52aXNpdCIsIndpdGhUcmFja2VkRW50aXRpZXMiLCJzZXRMb2NhbCIsImVudGl0eUNvcHkiLCJpIiwiZ2xvYmFsQ2FjaGVFbnRyeSIsImdldEdsb2JhbENhY2hlRW50cnkiLCJsb2NhbEtleSIsInNsaWNlIiwiaGFzIiwic2V0IiwiZ2V0IiwiT2JqZWN0IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZ2V0VW52aXNpdCIsImVudGl0aWVzIiwicmVzdWx0Q2FjaGUiLCJnZXRFbnRpdGllcyIsImlucHV0IiwibWV0aG9kIiwiQXJyYXkiLCJpc0FycmF5IiwicmV0IiwiZW50aXR5SXNJbW11dGFibGUiLCJlbnRpdHlPcklkIiwic2NoZW1hS2V5IiwiZ2V0SW4iLCJyZXNvbHZlZEVudGl0aWVzIiwiZGVub3JtYWxpemVTaW1wbGUiLCJvcmlnaW5hbFVudmlzaXQiLCJvZyJdLCJtYXBwaW5ncyI6IkFBU0EsU0FBaUJBLFFBQWpCO0FBQ0EsU0FBU0MsT0FBVDtBQUNBLE9BQU9DLFdBQVA7QUFDQSxTQUFTQyxXQUFXLElBQUlD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b3J0IHsgRW50aXR5SW50ZXJmYWNlIH0gZnJvbSAnQHJlc3QtaG9va3Mvbm9ybWFsaXpyL3NjaGVtYSc7XG5pbXBvcnQgKiBhcyBzY2hlbWEgZnJvbSAnQHJlc3QtaG9va3Mvbm9ybWFsaXpyL3NjaGVtYSc7XG5pbXBvcnQge1xuICBEZW5vcm1hbGl6ZSxcbiAgRGVub3JtYWxpemVOdWxsYWJsZSxcbiAgU2NoZW1hLFxuICBEZW5vcm1hbGl6ZUNhY2hlLFxuICBVbnZpc2l0RnVuY3Rpb24sXG59IGZyb20gJ0ByZXN0LWhvb2tzL25vcm1hbGl6ci90eXBlcyc7XG5pbXBvcnQgRW50aXR5LCB7IGlzRW50aXR5IH0gZnJvbSAnQHJlc3QtaG9va3Mvbm9ybWFsaXpyL2VudGl0aWVzL0VudGl0eSc7XG5pbXBvcnQgeyBERUxFVEVEIH0gZnJvbSAnQHJlc3QtaG9va3Mvbm9ybWFsaXpyL3NwZWNpYWwnO1xuaW1wb3J0IFdlYWtMaXN0TWFwIGZyb20gJ0ByZXN0LWhvb2tzL25vcm1hbGl6ci9XZWFrTGlzdE1hcCc7XG5pbXBvcnQgeyBkZW5vcm1hbGl6ZSBhcyBhcnJheURlbm9ybWFsaXplIH0gZnJvbSAnQHJlc3QtaG9va3Mvbm9ybWFsaXpyL3NjaGVtYXMvQXJyYXknO1xuaW1wb3J0IHsgZGVub3JtYWxpemUgYXMgb2JqZWN0RGVub3JtYWxpemUgfSBmcm9tICdAcmVzdC1ob29rcy9ub3JtYWxpenIvc2NoZW1hcy9PYmplY3QnO1xuaW1wb3J0IHsgaXNJbW11dGFibGUgfSBmcm9tICdAcmVzdC1ob29rcy9ub3JtYWxpenIvc2NoZW1hcy9JbW11dGFibGVVdGlscyc7XG5cbmNvbnN0IERSQUZUID0gU3ltYm9sKCdkcmFmdCcpO1xuXG5jb25zdCB1bnZpc2l0RW50aXR5ID0gKFxuICBpZDogYW55LFxuICBzY2hlbWE6IGFueSxcbiAgdW52aXNpdDogVW52aXNpdEZ1bmN0aW9uLFxuICBnZXRFbnRpdHk6IChcbiAgICBlbnRpdHlPcklkOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgc3RyaW5nLFxuICAgIHNjaGVtYTogdHlwZW9mIEVudGl0eSxcbiAgKSA9PiBFbnRpdHlJbnRlcmZhY2UgfCB0eXBlb2YgREVMRVRFRCxcbiAgbG9jYWxDYWNoZTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgYW55Pj4sXG4gIGVudGl0eUNhY2hlOiBEZW5vcm1hbGl6ZUNhY2hlWydlbnRpdGllcyddLFxuICBkZXBlbmRlbmNpZXM6IG9iamVjdFtdLFxuICBjeWNsZUluZGV4OiB7IGk6IG51bWJlciB9LFxuKTogW1xuICBkZW5vcm1hbGl6ZWQ6IEVudGl0eUludGVyZmFjZSB8IHVuZGVmaW5lZCxcbiAgZm91bmQ6IGJvb2xlYW4sXG4gIGRlbGV0ZWQ6IGJvb2xlYW4sXG5dID0+IHtcbiAgY29uc3QgZW50aXR5ID0gZ2V0RW50aXR5KGlkLCBzY2hlbWEpO1xuICBpZiAoZW50aXR5ID09PSBERUxFVEVEKSB7XG4gICAgcmV0dXJuIFt1bmRlZmluZWQsIHRydWUsIHRydWVdO1xuICB9XG4gIGlmIChcbiAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgdHlwZW9mIGVudGl0eSA9PT0gJ3N5bWJvbCcgJiZcbiAgICAoZW50aXR5IGFzIHN5bWJvbCkudG9TdHJpbmcoKS5pbmNsdWRlcygnREVMRVRFRCcpXG4gICkge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIGBVbnJlY29nbml6ZWQgc3ltYm9sIGRldGVjdGVkLlxuTWFrZSBzdXJlIHlvdSBkbyBub3QgaGF2ZSBtdWx0aXBsZSB2ZXJzaW9ucyBvZiBAcmVzdC1ob29rcy9ub3JtYWxpenIgaW5zdGFsbGVkLmAsXG4gICAgKTtcbiAgfVxuICBpZiAodHlwZW9mIGVudGl0eSAhPT0gJ29iamVjdCcgfHwgZW50aXR5ID09PSBudWxsKSB7XG4gICAgcmV0dXJuIFtlbnRpdHksIGZhbHNlLCBmYWxzZV07XG4gIH1cblxuICBpZiAobG9jYWxDYWNoZVtzY2hlbWEua2V5XSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgbG9jYWxDYWNoZVtzY2hlbWEua2V5XSA9IHt9O1xuICB9XG5cbiAgbGV0IGZvdW5kID0gdHJ1ZTtcbiAgbGV0IGRlbGV0ZWQgPSBmYWxzZTtcblxuICBpZiAoIWxvY2FsQ2FjaGVbc2NoZW1hLmtleV1baWRdKSB7XG4gICAgY29uc3QgdHJhY2tpbmdJbmRleCA9IGRlcGVuZGVuY2llcy5sZW5ndGg7XG4gICAgZGVwZW5kZW5jaWVzLnB1c2goZW50aXR5KTtcblxuICAgIGNvbnN0IHdyYXBwZWRVbnZpc2l0ID0gd2l0aFRyYWNrZWRFbnRpdGllcyh1bnZpc2l0KTtcbiAgICAvLyB7IFtEUkFGVF0gfSBtZWFucyB3ZSBhcmUgc3RpbGwgcHJvY2Vzc2luZyAtIHdoaWNoIGlmIGZvdW5kIGluZGljYXRlcyBhIGN5Y2xlXG4gICAgd3JhcHBlZFVudmlzaXQuc2V0TG9jYWwgPSBlbnRpdHlDb3B5ID0+XG4gICAgICAobG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF0gPSB7IFtEUkFGVF06IGVudGl0eUNvcHksIGk6IHRyYWNraW5nSW5kZXggfSk7XG5cbiAgICBjb25zdCBnbG9iYWxDYWNoZUVudHJ5ID0gZ2V0R2xvYmFsQ2FjaGVFbnRyeShlbnRpdHlDYWNoZSwgc2NoZW1hLCBpZCk7XG5cbiAgICBbbG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF0sIGZvdW5kLCBkZWxldGVkXSA9IHNjaGVtYS5kZW5vcm1hbGl6ZShcbiAgICAgIGVudGl0eSxcbiAgICAgIHdyYXBwZWRVbnZpc2l0LFxuICAgICk7XG5cbiAgICAvLyBpZiBpbiBjeWNsZSwgdXNlIHRoZSBzdGFydCBvZiB0aGUgY3ljbGUgdG8gdHJhY2sgYWxsIGRlcHNcbiAgICAvLyBvdGhlcndpc2UsIHdlIHVzZSBvdXIgb3duIHRyYWNraW5nSW5kZXhcbiAgICBjb25zdCBsb2NhbEtleSA9IGRlcGVuZGVuY2llcy5zbGljZShcbiAgICAgIGN5Y2xlSW5kZXguaSA9PT0gLTEgPyB0cmFja2luZ0luZGV4IDogY3ljbGVJbmRleC5pLFxuICAgICk7XG5cbiAgICBpZiAoIWdsb2JhbENhY2hlRW50cnkuaGFzKGxvY2FsS2V5KSkge1xuICAgICAgZ2xvYmFsQ2FjaGVFbnRyeS5zZXQobG9jYWxLZXksIGxvY2FsQ2FjaGVbc2NoZW1hLmtleV1baWRdKTtcbiAgICB9IGVsc2Uge1xuICAgICAgbG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF0gPSBnbG9iYWxDYWNoZUVudHJ5LmdldChsb2NhbEtleSk7XG4gICAgfVxuXG4gICAgLy8gc3RhcnQgb2YgY3ljbGUgLSByZXNldCBjeWNsZSBkZXRlY3Rpb25cbiAgICBpZiAoY3ljbGVJbmRleC5pID09PSB0cmFja2luZ0luZGV4KSB7XG4gICAgICBjeWNsZUluZGV4LmkgPSAtMTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgLy8gY3ljbGUgZGV0ZWN0ZWRcbiAgICBpZiAoXG4gICAgICBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF0sIERSQUZUKVxuICAgICkge1xuICAgICAgY3ljbGVJbmRleC5pID0gbG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF0uaTtcbiAgICAgIHJldHVybiBbbG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF1bRFJBRlRdLCBmb3VuZCwgZGVsZXRlZF07XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHdpdGggbm8gY3ljbGUsIGdsb2JhbENhY2hlRW50cnkgd2lsbCBoYXZlIGFscmVhZHkgYmVlbiBzZXRcbiAgICAgIGRlcGVuZGVuY2llcy5wdXNoKGVudGl0eSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIFtsb2NhbENhY2hlW3NjaGVtYS5rZXldW2lkXSwgZm91bmQsIGRlbGV0ZWRdO1xufTtcblxuY29uc3QgZ2V0VW52aXNpdCA9IChcbiAgZW50aXRpZXM6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGFueT4+LFxuICBlbnRpdHlDYWNoZTogRGVub3JtYWxpemVDYWNoZVsnZW50aXRpZXMnXSxcbiAgcmVzdWx0Q2FjaGU6IFdlYWtMaXN0TWFwPG9iamVjdCwgYW55PixcbiAgbG9jYWxDYWNoZTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgYW55Pj4sXG4pID0+IHtcbiAgY29uc3QgZ2V0RW50aXR5ID0gZ2V0RW50aXRpZXMoZW50aXRpZXMpO1xuICBjb25zdCBkZXBlbmRlbmNpZXM6IG9iamVjdFtdID0gW107XG4gIGNvbnN0IGN5Y2xlSW5kZXggPSB7IGk6IC0xIH07XG5cbiAgZnVuY3Rpb24gdW52aXNpdChcbiAgICBpbnB1dDogYW55LFxuICAgIHNjaGVtYTogYW55LFxuICApOiBbZGVub3JtYWxpemVkOiBhbnksIGZvdW5kOiBib29sZWFuLCBkZWxldGVkOiBib29sZWFuXSB7XG4gICAgaWYgKCFzY2hlbWEpIHJldHVybiBbaW5wdXQsIHRydWUsIGZhbHNlXTtcblxuICAgIGlmICghc2NoZW1hLmRlbm9ybWFsaXplIHx8IHR5cGVvZiBzY2hlbWEuZGVub3JtYWxpemUgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIGlmIChpbnB1dCBpbnN0YW5jZW9mIHNjaGVtYSkgcmV0dXJuIFtpbnB1dCwgdHJ1ZSwgZmFsc2VdO1xuICAgICAgICByZXR1cm4gW25ldyBzY2hlbWEoaW5wdXQpLCB0cnVlLCBmYWxzZV07XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIGNvbnN0IG1ldGhvZCA9IEFycmF5LmlzQXJyYXkoc2NoZW1hKVxuICAgICAgICAgID8gYXJyYXlEZW5vcm1hbGl6ZVxuICAgICAgICAgIDogb2JqZWN0RGVub3JtYWxpemU7XG4gICAgICAgIHJldHVybiBtZXRob2Qoc2NoZW1hLCBpbnB1dCwgdW52aXNpdCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gbnVsbCBpcyBjb25zaWRlcmVkIGludGVudGlvbmFsLCB0aHVzIGFsd2F5cyAnZm91bmQnIGFzIHRydWVcbiAgICBpZiAoaW5wdXQgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBbaW5wdXQsIHRydWUsIGZhbHNlXTtcbiAgICB9XG5cbiAgICBpZiAoaXNFbnRpdHkoc2NoZW1hKSkge1xuICAgICAgLy8gdW52aXNpdEVudGl0eSBqdXN0IGNhbid0IGhhbmRsZSB1bmRlZmluZWRcbiAgICAgIGlmIChpbnB1dCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJldHVybiBbaW5wdXQsIGZhbHNlLCBmYWxzZV07XG4gICAgICB9XG4gICAgICByZXR1cm4gdW52aXNpdEVudGl0eShcbiAgICAgICAgaW5wdXQsXG4gICAgICAgIHNjaGVtYSxcbiAgICAgICAgdW52aXNpdCxcbiAgICAgICAgZ2V0RW50aXR5LFxuICAgICAgICBsb2NhbENhY2hlLFxuICAgICAgICBlbnRpdHlDYWNoZSxcbiAgICAgICAgZGVwZW5kZW5jaWVzLFxuICAgICAgICBjeWNsZUluZGV4LFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIHNjaGVtYS5kZW5vcm1hbGl6ZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgcmV0dXJuIHNjaGVtYS5kZW5vcm1hbGl6ZShpbnB1dCwgdW52aXNpdCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIFtpbnB1dCwgdHJ1ZSwgZmFsc2VdO1xuICB9XG5cbiAgLy9jb25zdCB3cmFwcGVkVW52aXNpdCA9IHdpdGhUcmFja2VkRW50aXRpZXModW52aXNpdCwgZ2xvYmFsS2V5KTtcblxuICByZXR1cm4gKFxuICAgIGlucHV0OiBhbnksXG4gICAgc2NoZW1hOiBhbnksXG4gICk6IFtkZW5vcm1hbGl6ZWQ6IGFueSwgZm91bmQ6IGJvb2xlYW4sIGRlbGV0ZWQ6IGJvb2xlYW5dID0+IHtcbiAgICBjb25zdCByZXQgPSB1bnZpc2l0KGlucHV0LCBzY2hlbWEpO1xuICAgIC8vIGluIHRoZSBjYXNlIHdoZXJlIFdlYWtNYXAgY2Fubm90IGJlIHVzZWRcbiAgICAvLyB0aGlzIHRlc3QgZW5zdXJlcyBudWxsIGlzIHByb3Blcmx5IGV4Y2x1ZGVkIGZyb20gV2Vha01hcFxuICAgIGlmIChPYmplY3QoaW5wdXQpICE9PSBpbnB1dCkgcmV0dXJuIHJldDtcblxuICAgIGRlcGVuZGVuY2llcy5wdXNoKGlucHV0KTtcbiAgICBpZiAoIXJlc3VsdENhY2hlLmhhcyhkZXBlbmRlbmNpZXMpKSB7XG4gICAgICByZXN1bHRDYWNoZS5zZXQoZGVwZW5kZW5jaWVzLCByZXRbMF0pO1xuICAgICAgcmV0dXJuIHJldDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIFtyZXN1bHRDYWNoZS5nZXQoZGVwZW5kZW5jaWVzKSwgcmV0WzFdLCByZXRbMl1dO1xuICAgIH1cbiAgfTtcbn07XG5cbmNvbnN0IGdldEVudGl0aWVzID0gKGVudGl0aWVzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+KSA9PiB7XG4gIGNvbnN0IGVudGl0eUlzSW1tdXRhYmxlID0gaXNJbW11dGFibGUoZW50aXRpZXMpO1xuXG4gIHJldHVybiAoZW50aXR5T3JJZDogUmVjb3JkPHN0cmluZywgYW55PiB8IHN0cmluZywgc2NoZW1hOiB0eXBlb2YgRW50aXR5KSA9PiB7XG4gICAgY29uc3Qgc2NoZW1hS2V5ID0gc2NoZW1hLmtleTtcblxuICAgIGlmICh0eXBlb2YgZW50aXR5T3JJZCA9PT0gJ29iamVjdCcpIHtcbiAgICAgIHJldHVybiBlbnRpdHlPcklkO1xuICAgIH1cblxuICAgIGlmIChlbnRpdHlJc0ltbXV0YWJsZSkge1xuICAgICAgcmV0dXJuIGVudGl0aWVzLmdldEluKFtzY2hlbWFLZXksIGVudGl0eU9ySWRdKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZW50aXRpZXNbc2NoZW1hS2V5XT8uW2VudGl0eU9ySWRdO1xuICB9O1xufTtcblxudHlwZSBEZW5vcm1hbGl6ZVJldHVybjxTIGV4dGVuZHMgU2NoZW1hPiA9XG4gIHwgW1xuICAgICAgZGVub3JtYWxpemVkOiBEZW5vcm1hbGl6ZTxTPixcbiAgICAgIGZvdW5kOiB0cnVlLFxuICAgICAgZGVsZXRlZDogZmFsc2UsXG4gICAgICByZXNvbHZlZEVudGl0aWVzOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBhbnk+PixcbiAgICBdXG4gIHwgW1xuICAgICAgZGVub3JtYWxpemVkOiBEZW5vcm1hbGl6ZU51bGxhYmxlPFM+LFxuICAgICAgZm91bmQ6IGJvb2xlYW4sXG4gICAgICBkZWxldGVkOiB0cnVlLFxuICAgICAgcmVzb2x2ZWRFbnRpdGllczogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgYW55Pj4sXG4gICAgXVxuICB8IFtcbiAgICAgIGRlbm9ybWFsaXplZDogRGVub3JtYWxpemVOdWxsYWJsZTxTPixcbiAgICAgIGZvdW5kOiBmYWxzZSxcbiAgICAgIGRlbGV0ZWQ6IGJvb2xlYW4sXG4gICAgICByZXNvbHZlZEVudGl0aWVzOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBhbnk+PixcbiAgICBdO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2V4cGxpY2l0LW1vZHVsZS1ib3VuZGFyeS10eXBlc1xuZXhwb3J0IGNvbnN0IGRlbm9ybWFsaXplID0gPFMgZXh0ZW5kcyBTY2hlbWE+KFxuICBpbnB1dDogdW5rbm93bixcbiAgc2NoZW1hOiBTIHwgdW5kZWZpbmVkLFxuICBlbnRpdGllczogYW55LFxuICBlbnRpdHlDYWNoZTogRGVub3JtYWxpemVDYWNoZVsnZW50aXRpZXMnXSA9IHt9LFxuICByZXN1bHRDYWNoZTogV2Vha0xpc3RNYXA8b2JqZWN0LCBhbnk+ID0gbmV3IFdlYWtMaXN0TWFwKCksXG4pOiBEZW5vcm1hbGl6ZVJldHVybjxTPiA9PiB7XG4gIC8vIHVuZGVmaW5lZCBtZWFuIGRvbid0IGRvIGFueXRoaW5nXG4gIGlmIChzY2hlbWEgPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiBbaW5wdXQsIHRydWUsIGZhbHNlLCB7fV0gYXMgW2FueSwgYm9vbGVhbiwgYm9vbGVhbiwgYW55XTtcbiAgfVxuICBpZiAoaW5wdXQgPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiBbdW5kZWZpbmVkLCBmYWxzZSwgZmFsc2UsIHt9XSBhcyBbYW55LCBib29sZWFuLCBib29sZWFuLCBhbnldO1xuICB9XG4gIGNvbnN0IHJlc29sdmVkRW50aXRpZXM6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGFueT4+ID0ge307XG4gIGNvbnN0IHVudmlzaXQgPSBnZXRVbnZpc2l0KFxuICAgIGVudGl0aWVzLFxuICAgIGVudGl0eUNhY2hlLFxuICAgIHJlc3VsdENhY2hlLFxuICAgIHJlc29sdmVkRW50aXRpZXMsXG4gICk7XG4gIHJldHVybiBbLi4udW52aXNpdChpbnB1dCwgc2NoZW1hKSwgcmVzb2x2ZWRFbnRpdGllc10gYXMgW1xuICAgIGFueSxcbiAgICBib29sZWFuLFxuICAgIGJvb2xlYW4sXG4gICAgYW55LFxuICBdO1xufTtcblxuZXhwb3J0IGNvbnN0IGRlbm9ybWFsaXplU2ltcGxlID0gPFMgZXh0ZW5kcyBTY2hlbWE+KFxuICBpbnB1dDogYW55LFxuICBzY2hlbWE6IFMgfCB1bmRlZmluZWQsXG4gIGVudGl0aWVzOiBhbnksXG4gIGVudGl0eUNhY2hlOiBEZW5vcm1hbGl6ZUNhY2hlWydlbnRpdGllcyddID0ge30sXG4gIHJlc3VsdENhY2hlOiBXZWFrTGlzdE1hcDxvYmplY3QsIGFueT4gPSBuZXcgV2Vha0xpc3RNYXAoKSxcbik6XG4gIHwgW2Rlbm9ybWFsaXplZDogRGVub3JtYWxpemU8Uz4sIGZvdW5kOiB0cnVlLCBkZWxldGVkOiBmYWxzZV1cbiAgfCBbZGVub3JtYWxpemVkOiBEZW5vcm1hbGl6ZU51bGxhYmxlPFM+LCBmb3VuZDogYm9vbGVhbiwgZGVsZXRlZDogdHJ1ZV1cbiAgfCBbZGVub3JtYWxpemVkOiBEZW5vcm1hbGl6ZU51bGxhYmxlPFM+LCBmb3VuZDogZmFsc2UsIGRlbGV0ZWQ6IGJvb2xlYW5dID0+XG4gIGRlbm9ybWFsaXplKGlucHV0LCBzY2hlbWEsIGVudGl0aWVzLCBlbnRpdHlDYWNoZSwgcmVzdWx0Q2FjaGUpLnNsaWNlKFxuICAgIDAsXG4gICAgMyxcbiAgKSBhcyBhbnk7XG5cbmZ1bmN0aW9uIGdldEdsb2JhbENhY2hlRW50cnkoXG4gIGVudGl0eUNhY2hlOiB7XG4gICAgW2tleTogc3RyaW5nXTogeyBbcGs6IHN0cmluZ106IFdlYWtMaXN0TWFwPG9iamVjdCwgRW50aXR5SW50ZXJmYWNlPGFueT4+IH07XG4gIH0sXG4gIHNjaGVtYTogYW55LFxuICBpZDogYW55LFxuKSB7XG4gIGlmICghZW50aXR5Q2FjaGVbc2NoZW1hLmtleV0pIGVudGl0eUNhY2hlW3NjaGVtYS5rZXldID0ge307XG4gIGlmICghZW50aXR5Q2FjaGVbc2NoZW1hLmtleV1baWRdKVxuICAgIGVudGl0eUNhY2hlW3NjaGVtYS5rZXldW2lkXSA9IG5ldyBXZWFrTGlzdE1hcCgpO1xuICByZXR1cm4gZW50aXR5Q2FjaGVbc2NoZW1hLmtleV1baWRdO1xufVxuXG5mdW5jdGlvbiB3aXRoVHJhY2tlZEVudGl0aWVzKHVudmlzaXQ6IFVudmlzaXRGdW5jdGlvbik6IHNjaGVtYS5VbnZpc2l0RnVuY3Rpb24ge1xuICAvLyBldmVyeSB0aW1lIHdlIG5lc3QsIHdlIHdhbnQgdG8gdW53cmFwIGJhY2sgdG8gdGhlIHRvcC5cbiAgLy8gdGhpcyBpcyBkdWUgdG8gb25seSBuZWVkZWQgdGhlIG5leHQgbGV2ZWwgb2YgbmVzdGVkIGVudGl0aWVzIGZvciBsb29rdXBcbiAgY29uc3Qgb3JpZ2luYWxVbnZpc2l0ID0gdW52aXNpdC5vZyB8fCB1bnZpc2l0O1xuICBjb25zdCB3cmFwcGVkVW52aXNpdCA9IChpbnB1dDogYW55LCBzY2hlbWE6IGFueSkgPT5cbiAgICBvcmlnaW5hbFVudmlzaXQoaW5wdXQsIHNjaGVtYSk7XG4gIHdyYXBwZWRVbnZpc2l0Lm9nID0gdW52aXNpdDtcbiAgcmV0dXJuIHdyYXBwZWRVbnZpc2l0O1xufVxuIl19 |
@@ -16,2 +16,7 @@ import { isEntity } from "./entities/Entity.js"; | ||
if (process.env.NODE_ENV !== 'production' && typeof entity === 'symbol' && entity.toString().includes('DELETED')) { | ||
throw new Error(`Unrecognized symbol detected. | ||
Make sure you do not have multiple versions of @rest-hooks/normalizr installed.`); | ||
} | ||
if (typeof entity !== 'object' || entity === null) { | ||
@@ -178,2 +183,2 @@ return [entity, false, false]; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZW5vcm1hbGl6ZS50cyJdLCJuYW1lcyI6WyJpc0VudGl0eSIsIkRFTEVURUQiLCJXZWFrTGlzdE1hcCIsImRlbm9ybWFsaXplIiwiYXJyYXlEZW5vcm1hbGl6ZSIsIm9iamVjdERlbm9ybWFsaXplIiwiaXNJbW11dGFibGUiLCJEUkFGVCIsIlN5bWJvbCIsInVudmlzaXRFbnRpdHkiLCJpZCIsInNjaGVtYSIsInVudmlzaXQiLCJnZXRFbnRpdHkiLCJsb2NhbENhY2hlIiwiZW50aXR5Q2FjaGUiLCJkZXBlbmRlbmNpZXMiLCJjeWNsZUluZGV4IiwiZW50aXR5IiwidW5kZWZpbmVkIiwia2V5IiwiZm91bmQiLCJkZWxldGVkIiwidHJhY2tpbmdJbmRleCIsImxlbmd0aCIsInB1c2giLCJ3cmFwcGVkVW52aXNpdCIsIndpdGhUcmFja2VkRW50aXRpZXMiLCJzZXRMb2NhbCIsImVudGl0eUNvcHkiLCJpIiwiZ2xvYmFsQ2FjaGVFbnRyeSIsImdldEdsb2JhbENhY2hlRW50cnkiLCJsb2NhbEtleSIsInNsaWNlIiwiaGFzIiwic2V0IiwiZ2V0IiwiT2JqZWN0IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZ2V0VW52aXNpdCIsImVudGl0aWVzIiwicmVzdWx0Q2FjaGUiLCJnZXRFbnRpdGllcyIsImlucHV0IiwibWV0aG9kIiwiQXJyYXkiLCJpc0FycmF5IiwicmV0IiwiZW50aXR5SXNJbW11dGFibGUiLCJlbnRpdHlPcklkIiwic2NoZW1hS2V5IiwiZ2V0SW4iLCJyZXNvbHZlZEVudGl0aWVzIiwiZGVub3JtYWxpemVTaW1wbGUiLCJvcmlnaW5hbFVudmlzaXQiLCJvZyJdLCJtYXBwaW5ncyI6IkFBU0EsU0FBaUJBLFFBQWpCO0FBQ0EsU0FBU0MsT0FBVDtBQUNBLE9BQU9DLFdBQVA7QUFDQSxTQUFTQyxXQUFXLElBQUlDLGdCQUF4QjtBQUNBLFNBQVNELFdBQVcsSUFBSUUsaUJBQXhCO0FBQ0EsU0FBU0MsV0FBVDtBQUVB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QVQsQ0FDRWpCLFdBREYsRUFJRUosTUFKRixFQUtFRCxFQUxGLEVBTUU7QUFDQSxNQUFJLENBQUNLLFdBQVcsQ0FBQ0osTUFBTSxDQUFDUyxHQUFSLENBQWhCLEVBQThCTCxXQUFXLENBQUNKLE1BQU0sQ0FBQ1MsR0FBUixDQUFYLEdBQTBCLEVBQTFCO0FBQzlCLE1BQUksQ0FBQ0wsV0FBVyxDQUFDSixNQUFNLENBQUNTLEdBQVIsQ0FBWCxDQUF3QlYsRUFBeEIsQ0FBTCxFQUNFSyxXQUFXLENBQUNKLE1BQU0sQ0FBQ1MsR0FBUixDQUFYLENBQXdCVixFQUF4QixJQUE4QixJQUFJUixXQUFKLEVBQTlCO0FBQ0YsU0FBT2EsV0FBVyxDQUFDSixNQUFNLENBQUNTLEdBQVIsQ0FBWCxDQUF3QlYsRUFBeEIsQ0FBUDtBQUNEOztBQUVELFNBQVNpQixtQkFBVCxDQUE2QmYsT0FBN0IsRUFBK0U7QUFDN0U7QUFDQTtBQUNBLFFBQU02QyxlQUFlLEdBQUc3QyxPQUFPLENBQUM4QyxFQUFSLElBQWM5QyxPQUF0Qzs7QUFDQSxRQUFNYyxjQUFjLEdBQUcsQ0FBQ29CLEtBQUQsRUFBYW5DLE1BQWIsS0FDckI4QyxlQUFlLENBQUNYLEtBQUQsRUFBUW5DLE1BQVIsQ0FEakI7O0FBRUFlLEVBQUFBLGNBQWMsQ0FBQ2dDLEVBQWYsR0FBb0I5QyxPQUFwQjtBQUNBLFNBQU9jLGNBQVA7QUFDRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVudGl0eUludGVyZmFjZSB9IGZyb20gJ0ByZXN0LWhvb2tzL25vcm1hbGl6ci9zY2hlbWEnO1xuaW1wb3J0ICogYXMgc2NoZW1hIGZyb20gJ0ByZXN0LWhvb2tzL25vcm1hbGl6ci9zY2hlbWEnO1xuaW1wb3J0IHtcbiAgRGVub3JtYWxpemUsXG4gIERlbm9ybWFsaXplTnVsbGFibGUsXG4gIFNjaGVtYSxcbiAgRGVub3JtYWxpemVDYWNoZSxcbiAgVW52aXNpdEZ1bmN0aW9uLFxufSBmcm9tICdAcmVzdC1ob29rcy9ub3JtYWxpenIvdHlwZXMnO1xuaW1wb3J0IEVudGl0eSwgeyBpc0VudGl0eSB9IGZyb20gJ0ByZXN0LWhvb2tzL25vcm1hbGl6ci9lbnRpdGllcy9FbnRpdHknO1xuaW1wb3J0IHsgREVMRVRFRCB9IGZyb20gJ0ByZXN0LWhvb2tzL25vcm1hbGl6ci9zcGVjaWFsJztcbmltcG9ydCBXZWFrTGlzdE1hcCBmcm9tICdAcmVzdC1ob29rcy9ub3JtYWxpenIvV2Vha0xpc3RNYXAnO1xuaW1wb3J0IHsgZGVub3JtYWxpemUgYXMgYXJyYXlEZW5vcm1hbGl6ZSB9IGZyb20gJ0ByZXN0LWhvb2tzL25vcm1hbGl6ci9zY2hlbWFzL0FycmF5JztcbmltcG9ydCB7IGRlbm9ybWFsaXplIGFzIG9iamVjdERlbm9ybWFsaXplIH0gZnJvbSAnQHJlc3QtaG9va3Mvbm9ybWFsaXpyL3NjaGVtYXMvT2JqZWN0JztcbmltcG9ydCB7IGlzSW1tdXRhYmxlIH0gZnJvbSAnQHJlc3QtaG9va3Mvbm9ybWFsaXpyL3NjaGVtYXMvSW1tdXRhYmxlVXRpbHMnO1xuXG5jb25zdCBEUkFGVCA9IFN5bWJvbCgnZHJhZnQnKTtcblxuY29uc3QgdW52aXNpdEVudGl0eSA9IChcbiAgaWQ6IGFueSxcbiAgc2NoZW1hOiBhbnksXG4gIHVudmlzaXQ6IFVudmlzaXRGdW5jdGlvbixcbiAgZ2V0RW50aXR5OiAoXG4gICAgZW50aXR5T3JJZDogUmVjb3JkPHN0cmluZywgYW55PiB8IHN0cmluZyxcbiAgICBzY2hlbWE6IHR5cGVvZiBFbnRpdHksXG4gICkgPT4gRW50aXR5SW50ZXJmYWNlIHwgdHlwZW9mIERFTEVURUQsXG4gIGxvY2FsQ2FjaGU6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGFueT4+LFxuICBlbnRpdHlDYWNoZTogRGVub3JtYWxpemVDYWNoZVsnZW50aXRpZXMnXSxcbiAgZGVwZW5kZW5jaWVzOiBvYmplY3RbXSxcbiAgY3ljbGVJbmRleDogeyBpOiBudW1iZXIgfSxcbik6IFtcbiAgZGVub3JtYWxpemVkOiBFbnRpdHlJbnRlcmZhY2UgfCB1bmRlZmluZWQsXG4gIGZvdW5kOiBib29sZWFuLFxuICBkZWxldGVkOiBib29sZWFuLFxuXSA9PiB7XG4gIGNvbnN0IGVudGl0eSA9IGdldEVudGl0eShpZCwgc2NoZW1hKTtcbiAgaWYgKGVudGl0eSA9PT0gREVMRVRFRCkge1xuICAgIHJldHVybiBbdW5kZWZpbmVkLCB0cnVlLCB0cnVlXTtcbiAgfVxuICBpZiAodHlwZW9mIGVudGl0eSAhPT0gJ29iamVjdCcgfHwgZW50aXR5ID09PSBudWxsKSB7XG4gICAgcmV0dXJuIFtlbnRpdHksIGZhbHNlLCBmYWxzZV07XG4gIH1cblxuICBpZiAobG9jYWxDYWNoZVtzY2hlbWEua2V5XSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgbG9jYWxDYWNoZVtzY2hlbWEua2V5XSA9IHt9O1xuICB9XG5cbiAgbGV0IGZvdW5kID0gdHJ1ZTtcbiAgbGV0IGRlbGV0ZWQgPSBmYWxzZTtcblxuICBpZiAoIWxvY2FsQ2FjaGVbc2NoZW1hLmtleV1baWRdKSB7XG4gICAgY29uc3QgdHJhY2tpbmdJbmRleCA9IGRlcGVuZGVuY2llcy5sZW5ndGg7XG4gICAgZGVwZW5kZW5jaWVzLnB1c2goZW50aXR5KTtcblxuICAgIGNvbnN0IHdyYXBwZWRVbnZpc2l0ID0gd2l0aFRyYWNrZWRFbnRpdGllcyh1bnZpc2l0KTtcbiAgICAvLyB7IFtEUkFGVF0gfSBtZWFucyB3ZSBhcmUgc3RpbGwgcHJvY2Vzc2luZyAtIHdoaWNoIGlmIGZvdW5kIGluZGljYXRlcyBhIGN5Y2xlXG4gICAgd3JhcHBlZFVudmlzaXQuc2V0TG9jYWwgPSBlbnRpdHlDb3B5ID0+XG4gICAgICAobG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF0gPSB7IFtEUkFGVF06IGVudGl0eUNvcHksIGk6IHRyYWNraW5nSW5kZXggfSk7XG5cbiAgICBjb25zdCBnbG9iYWxDYWNoZUVudHJ5ID0gZ2V0R2xvYmFsQ2FjaGVFbnRyeShlbnRpdHlDYWNoZSwgc2NoZW1hLCBpZCk7XG5cbiAgICBbbG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF0sIGZvdW5kLCBkZWxldGVkXSA9IHNjaGVtYS5kZW5vcm1hbGl6ZShcbiAgICAgIGVudGl0eSxcbiAgICAgIHdyYXBwZWRVbnZpc2l0LFxuICAgICk7XG5cbiAgICAvLyBpZiBpbiBjeWNsZSwgdXNlIHRoZSBzdGFydCBvZiB0aGUgY3ljbGUgdG8gdHJhY2sgYWxsIGRlcHNcbiAgICAvLyBvdGhlcndpc2UsIHdlIHVzZSBvdXIgb3duIHRyYWNraW5nSW5kZXhcbiAgICBjb25zdCBsb2NhbEtleSA9IGRlcGVuZGVuY2llcy5zbGljZShcbiAgICAgIGN5Y2xlSW5kZXguaSA9PT0gLTEgPyB0cmFja2luZ0luZGV4IDogY3ljbGVJbmRleC5pLFxuICAgICk7XG5cbiAgICBpZiAoIWdsb2JhbENhY2hlRW50cnkuaGFzKGxvY2FsS2V5KSkge1xuICAgICAgZ2xvYmFsQ2FjaGVFbnRyeS5zZXQobG9jYWxLZXksIGxvY2FsQ2FjaGVbc2NoZW1hLmtleV1baWRdKTtcbiAgICB9IGVsc2Uge1xuICAgICAgbG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF0gPSBnbG9iYWxDYWNoZUVudHJ5LmdldChsb2NhbEtleSk7XG4gICAgfVxuXG4gICAgLy8gc3RhcnQgb2YgY3ljbGUgLSByZXNldCBjeWNsZSBkZXRlY3Rpb25cbiAgICBpZiAoY3ljbGVJbmRleC5pID09PSB0cmFja2luZ0luZGV4KSB7XG4gICAgICBjeWNsZUluZGV4LmkgPSAtMTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgLy8gY3ljbGUgZGV0ZWN0ZWRcbiAgICBpZiAoXG4gICAgICBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF0sIERSQUZUKVxuICAgICkge1xuICAgICAgY3ljbGVJbmRleC5pID0gbG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF0uaTtcbiAgICAgIHJldHVybiBbbG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF1bRFJBRlRdLCBmb3VuZCwgZGVsZXRlZF07XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHdpdGggbm8gY3ljbGUsIGdsb2JhbENhY2hlRW50cnkgd2lsbCBoYXZlIGFscmVhZHkgYmVlbiBzZXRcbiAgICAgIGRlcGVuZGVuY2llcy5wdXNoKGVudGl0eSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIFtsb2NhbENhY2hlW3NjaGVtYS5rZXldW2lkXSwgZm91bmQsIGRlbGV0ZWRdO1xufTtcblxuY29uc3QgZ2V0VW52aXNpdCA9IChcbiAgZW50aXRpZXM6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGFueT4+LFxuICBlbnRpdHlDYWNoZTogRGVub3JtYWxpemVDYWNoZVsnZW50aXRpZXMnXSxcbiAgcmVzdWx0Q2FjaGU6IFdlYWtMaXN0TWFwPG9iamVjdCwgYW55PixcbiAgbG9jYWxDYWNoZTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgYW55Pj4sXG4pID0+IHtcbiAgY29uc3QgZ2V0RW50aXR5ID0gZ2V0RW50aXRpZXMoZW50aXRpZXMpO1xuICBjb25zdCBkZXBlbmRlbmNpZXM6IG9iamVjdFtdID0gW107XG4gIGNvbnN0IGN5Y2xlSW5kZXggPSB7IGk6IC0xIH07XG5cbiAgZnVuY3Rpb24gdW52aXNpdChcbiAgICBpbnB1dDogYW55LFxuICAgIHNjaGVtYTogYW55LFxuICApOiBbZGVub3JtYWxpemVkOiBhbnksIGZvdW5kOiBib29sZWFuLCBkZWxldGVkOiBib29sZWFuXSB7XG4gICAgaWYgKCFzY2hlbWEpIHJldHVybiBbaW5wdXQsIHRydWUsIGZhbHNlXTtcblxuICAgIGlmICghc2NoZW1hLmRlbm9ybWFsaXplIHx8IHR5cGVvZiBzY2hlbWEuZGVub3JtYWxpemUgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIGlmIChpbnB1dCBpbnN0YW5jZW9mIHNjaGVtYSkgcmV0dXJuIFtpbnB1dCwgdHJ1ZSwgZmFsc2VdO1xuICAgICAgICByZXR1cm4gW25ldyBzY2hlbWEoaW5wdXQpLCB0cnVlLCBmYWxzZV07XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIGNvbnN0IG1ldGhvZCA9IEFycmF5LmlzQXJyYXkoc2NoZW1hKVxuICAgICAgICAgID8gYXJyYXlEZW5vcm1hbGl6ZVxuICAgICAgICAgIDogb2JqZWN0RGVub3JtYWxpemU7XG4gICAgICAgIHJldHVybiBtZXRob2Qoc2NoZW1hLCBpbnB1dCwgdW52aXNpdCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gbnVsbCBpcyBjb25zaWRlcmVkIGludGVudGlvbmFsLCB0aHVzIGFsd2F5cyAnZm91bmQnIGFzIHRydWVcbiAgICBpZiAoaW5wdXQgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBbaW5wdXQsIHRydWUsIGZhbHNlXTtcbiAgICB9XG5cbiAgICBpZiAoaXNFbnRpdHkoc2NoZW1hKSkge1xuICAgICAgLy8gdW52aXNpdEVudGl0eSBqdXN0IGNhbid0IGhhbmRsZSB1bmRlZmluZWRcbiAgICAgIGlmIChpbnB1dCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJldHVybiBbaW5wdXQsIGZhbHNlLCBmYWxzZV07XG4gICAgICB9XG4gICAgICByZXR1cm4gdW52aXNpdEVudGl0eShcbiAgICAgICAgaW5wdXQsXG4gICAgICAgIHNjaGVtYSxcbiAgICAgICAgdW52aXNpdCxcbiAgICAgICAgZ2V0RW50aXR5LFxuICAgICAgICBsb2NhbENhY2hlLFxuICAgICAgICBlbnRpdHlDYWNoZSxcbiAgICAgICAgZGVwZW5kZW5jaWVzLFxuICAgICAgICBjeWNsZUluZGV4LFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIHNjaGVtYS5kZW5vcm1hbGl6ZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgcmV0dXJuIHNjaGVtYS5kZW5vcm1hbGl6ZShpbnB1dCwgdW52aXNpdCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIFtpbnB1dCwgdHJ1ZSwgZmFsc2VdO1xuICB9XG5cbiAgLy9jb25zdCB3cmFwcGVkVW52aXNpdCA9IHdpdGhUcmFja2VkRW50aXRpZXModW52aXNpdCwgZ2xvYmFsS2V5KTtcblxuICByZXR1cm4gKFxuICAgIGlucHV0OiBhbnksXG4gICAgc2NoZW1hOiBhbnksXG4gICk6IFtkZW5vcm1hbGl6ZWQ6IGFueSwgZm91bmQ6IGJvb2xlYW4sIGRlbGV0ZWQ6IGJvb2xlYW5dID0+IHtcbiAgICBjb25zdCByZXQgPSB1bnZpc2l0KGlucHV0LCBzY2hlbWEpO1xuICAgIC8vIGluIHRoZSBjYXNlIHdoZXJlIFdlYWtNYXAgY2Fubm90IGJlIHVzZWRcbiAgICAvLyB0aGlzIHRlc3QgZW5zdXJlcyBudWxsIGlzIHByb3Blcmx5IGV4Y2x1ZGVkIGZyb20gV2Vha01hcFxuICAgIGlmIChPYmplY3QoaW5wdXQpICE9PSBpbnB1dCkgcmV0dXJuIHJldDtcblxuICAgIGRlcGVuZGVuY2llcy5wdXNoKGlucHV0KTtcbiAgICBpZiAoIXJlc3VsdENhY2hlLmhhcyhkZXBlbmRlbmNpZXMpKSB7XG4gICAgICByZXN1bHRDYWNoZS5zZXQoZGVwZW5kZW5jaWVzLCByZXRbMF0pO1xuICAgICAgcmV0dXJuIHJldDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIFtyZXN1bHRDYWNoZS5nZXQoZGVwZW5kZW5jaWVzKSwgcmV0WzFdLCByZXRbMl1dO1xuICAgIH1cbiAgfTtcbn07XG5cbmNvbnN0IGdldEVudGl0aWVzID0gKGVudGl0aWVzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+KSA9PiB7XG4gIGNvbnN0IGVudGl0eUlzSW1tdXRhYmxlID0gaXNJbW11dGFibGUoZW50aXRpZXMpO1xuXG4gIHJldHVybiAoZW50aXR5T3JJZDogUmVjb3JkPHN0cmluZywgYW55PiB8IHN0cmluZywgc2NoZW1hOiB0eXBlb2YgRW50aXR5KSA9PiB7XG4gICAgY29uc3Qgc2NoZW1hS2V5ID0gc2NoZW1hLmtleTtcblxuICAgIGlmICh0eXBlb2YgZW50aXR5T3JJZCA9PT0gJ29iamVjdCcpIHtcbiAgICAgIHJldHVybiBlbnRpdHlPcklkO1xuICAgIH1cblxuICAgIGlmIChlbnRpdHlJc0ltbXV0YWJsZSkge1xuICAgICAgcmV0dXJuIGVudGl0aWVzLmdldEluKFtzY2hlbWFLZXksIGVudGl0eU9ySWRdKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZW50aXRpZXNbc2NoZW1hS2V5XT8uW2VudGl0eU9ySWRdO1xuICB9O1xufTtcblxudHlwZSBEZW5vcm1hbGl6ZVJldHVybjxTIGV4dGVuZHMgU2NoZW1hPiA9XG4gIHwgW1xuICAgICAgZGVub3JtYWxpemVkOiBEZW5vcm1hbGl6ZTxTPixcbiAgICAgIGZvdW5kOiB0cnVlLFxuICAgICAgZGVsZXRlZDogZmFsc2UsXG4gICAgICByZXNvbHZlZEVudGl0aWVzOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBhbnk+PixcbiAgICBdXG4gIHwgW1xuICAgICAgZGVub3JtYWxpemVkOiBEZW5vcm1hbGl6ZU51bGxhYmxlPFM+LFxuICAgICAgZm91bmQ6IGJvb2xlYW4sXG4gICAgICBkZWxldGVkOiB0cnVlLFxuICAgICAgcmVzb2x2ZWRFbnRpdGllczogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgYW55Pj4sXG4gICAgXVxuICB8IFtcbiAgICAgIGRlbm9ybWFsaXplZDogRGVub3JtYWxpemVOdWxsYWJsZTxTPixcbiAgICAgIGZvdW5kOiBmYWxzZSxcbiAgICAgIGRlbGV0ZWQ6IGJvb2xlYW4sXG4gICAgICByZXNvbHZlZEVudGl0aWVzOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBhbnk+PixcbiAgICBdO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2V4cGxpY2l0LW1vZHVsZS1ib3VuZGFyeS10eXBlc1xuZXhwb3J0IGNvbnN0IGRlbm9ybWFsaXplID0gPFMgZXh0ZW5kcyBTY2hlbWE+KFxuICBpbnB1dDogdW5rbm93bixcbiAgc2NoZW1hOiBTIHwgdW5kZWZpbmVkLFxuICBlbnRpdGllczogYW55LFxuICBlbnRpdHlDYWNoZTogRGVub3JtYWxpemVDYWNoZVsnZW50aXRpZXMnXSA9IHt9LFxuICByZXN1bHRDYWNoZTogV2Vha0xpc3RNYXA8b2JqZWN0LCBhbnk+ID0gbmV3IFdlYWtMaXN0TWFwKCksXG4pOiBEZW5vcm1hbGl6ZVJldHVybjxTPiA9PiB7XG4gIC8vIHVuZGVmaW5lZCBtZWFuIGRvbid0IGRvIGFueXRoaW5nXG4gIGlmIChzY2hlbWEgPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiBbaW5wdXQsIHRydWUsIGZhbHNlLCB7fV0gYXMgW2FueSwgYm9vbGVhbiwgYm9vbGVhbiwgYW55XTtcbiAgfVxuICBpZiAoaW5wdXQgPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiBbdW5kZWZpbmVkLCBmYWxzZSwgZmFsc2UsIHt9XSBhcyBbYW55LCBib29sZWFuLCBib29sZWFuLCBhbnldO1xuICB9XG4gIGNvbnN0IHJlc29sdmVkRW50aXRpZXM6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGFueT4+ID0ge307XG4gIGNvbnN0IHVudmlzaXQgPSBnZXRVbnZpc2l0KFxuICAgIGVudGl0aWVzLFxuICAgIGVudGl0eUNhY2hlLFxuICAgIHJlc3VsdENhY2hlLFxuICAgIHJlc29sdmVkRW50aXRpZXMsXG4gICk7XG4gIHJldHVybiBbLi4udW52aXNpdChpbnB1dCwgc2NoZW1hKSwgcmVzb2x2ZWRFbnRpdGllc10gYXMgW1xuICAgIGFueSxcbiAgICBib29sZWFuLFxuICAgIGJvb2xlYW4sXG4gICAgYW55LFxuICBdO1xufTtcblxuZXhwb3J0IGNvbnN0IGRlbm9ybWFsaXplU2ltcGxlID0gPFMgZXh0ZW5kcyBTY2hlbWE+KFxuICBpbnB1dDogYW55LFxuICBzY2hlbWE6IFMgfCB1bmRlZmluZWQsXG4gIGVudGl0aWVzOiBhbnksXG4gIGVudGl0eUNhY2hlOiBEZW5vcm1hbGl6ZUNhY2hlWydlbnRpdGllcyddID0ge30sXG4gIHJlc3VsdENhY2hlOiBXZWFrTGlzdE1hcDxvYmplY3QsIGFueT4gPSBuZXcgV2Vha0xpc3RNYXAoKSxcbik6XG4gIHwgW2Rlbm9ybWFsaXplZDogRGVub3JtYWxpemU8Uz4sIGZvdW5kOiB0cnVlLCBkZWxldGVkOiBmYWxzZV1cbiAgfCBbZGVub3JtYWxpemVkOiBEZW5vcm1hbGl6ZU51bGxhYmxlPFM+LCBmb3VuZDogYm9vbGVhbiwgZGVsZXRlZDogdHJ1ZV1cbiAgfCBbZGVub3JtYWxpemVkOiBEZW5vcm1hbGl6ZU51bGxhYmxlPFM+LCBmb3VuZDogZmFsc2UsIGRlbGV0ZWQ6IGJvb2xlYW5dID0+XG4gIGRlbm9ybWFsaXplKGlucHV0LCBzY2hlbWEsIGVudGl0aWVzLCBlbnRpdHlDYWNoZSwgcmVzdWx0Q2FjaGUpLnNsaWNlKFxuICAgIDAsXG4gICAgMyxcbiAgKSBhcyBhbnk7XG5cbmZ1bmN0aW9uIGdldEdsb2JhbENhY2hlRW50cnkoXG4gIGVudGl0eUNhY2hlOiB7XG4gICAgW2tleTogc3RyaW5nXTogeyBbcGs6IHN0cmluZ106IFdlYWtMaXN0TWFwPG9iamVjdCwgRW50aXR5SW50ZXJmYWNlPGFueT4+IH07XG4gIH0sXG4gIHNjaGVtYTogYW55LFxuICBpZDogYW55LFxuKSB7XG4gIGlmICghZW50aXR5Q2FjaGVbc2NoZW1hLmtleV0pIGVudGl0eUNhY2hlW3NjaGVtYS5rZXldID0ge307XG4gIGlmICghZW50aXR5Q2FjaGVbc2NoZW1hLmtleV1baWRdKVxuICAgIGVudGl0eUNhY2hlW3NjaGVtYS5rZXldW2lkXSA9IG5ldyBXZWFrTGlzdE1hcCgpO1xuICByZXR1cm4gZW50aXR5Q2FjaGVbc2NoZW1hLmtleV1baWRdO1xufVxuXG5mdW5jdGlvbiB3aXRoVHJhY2tlZEVudGl0aWVzKHVudmlzaXQ6IFVudmlzaXRGdW5jdGlvbik6IHNjaGVtYS5VbnZpc2l0RnVuY3Rpb24ge1xuICAvLyBldmVyeSB0aW1lIHdlIG5lc3QsIHdlIHdhbnQgdG8gdW53cmFwIGJhY2sgdG8gdGhlIHRvcC5cbiAgLy8gdGhpcyBpcyBkdWUgdG8gb25seSBuZWVkZWQgdGhlIG5leHQgbGV2ZWwgb2YgbmVzdGVkIGVudGl0aWVzIGZvciBsb29rdXBcbiAgY29uc3Qgb3JpZ2luYWxVbnZpc2l0ID0gdW52aXNpdC5vZyB8fCB1bnZpc2l0O1xuICBjb25zdCB3cmFwcGVkVW52aXNpdCA9IChpbnB1dDogYW55LCBzY2hlbWE6IGFueSkgPT5cbiAgICBvcmlnaW5hbFVudmlzaXQoaW5wdXQsIHNjaGVtYSk7XG4gIHdyYXBwZWRVbnZpc2l0Lm9nID0gdW52aXNpdDtcbiAgcmV0dXJuIHdyYXBwZWRVbnZpc2l0O1xufVxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9kZW5vcm1hbGl6ZS50cyJdLCJuYW1lcyI6WyJpc0VudGl0eSIsIkRFTEVURUQiLCJXZWFrTGlzdE1hcCIsImRlbm9ybWFsaXplIiwiYXJyYXlEZW5vcm1hbGl6ZSIsIm9iamVjdERlbm9ybWFsaXplIiwiaXNJbW11dGFibGUiLCJEUkFGVCIsIlN5bWJvbCIsInVudmlzaXRFbnRpdHkiLCJpZCIsInNjaGVtYSIsInVudmlzaXQiLCJnZXRFbnRpdHkiLCJsb2NhbENhY2hlIiwiZW50aXR5Q2FjaGUiLCJkZXBlbmRlbmNpZXMiLCJjeWNsZUluZGV4IiwiZW50aXR5IiwidW5kZWZpbmVkIiwicHJvY2VzcyIsImVudiIsIk5PREVfRU5WIiwidG9TdHJpbmciLCJpbmNsdWRlcyIsIkVycm9yIiwia2V5IiwiZm91bmQiLCJkZWxldGVkIiwidHJhY2tpbmdJbmRleCIsImxlbmd0aCIsInB1c2giLCJ3cmFwcGVkVW52aXNpdCIsIndpdGhUcmFja2VkRW50aXRpZXMiLCJzZXRMb2NhbCIsImVudGl0eUNvcHkiLCJpIiwiZ2xvYmFsQ2FjaGVFbnRyeSIsImdldEdsb2JhbENhY2hlRW50cnkiLCJsb2NhbEtleSIsInNsaWNlIiwiaGFzIiwic2V0IiwiZ2V0IiwiT2JqZWN0IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZ2V0VW52aXNpdCIsImVudGl0aWVzIiwicmVzdWx0Q2FjaGUiLCJnZXRFbnRpdGllcyIsImlucHV0IiwibWV0aG9kIiwiQXJyYXkiLCJpc0FycmF5IiwicmV0IiwiZW50aXR5SXNJbW11dGFibGUiLCJlbnRpdHlPcklkIiwic2NoZW1hS2V5IiwiZ2V0SW4iLCJyZXNvbHZlZEVudGl0aWVzIiwiZGVub3JtYWxpemVTaW1wbGUiLCJvcmlnaW5hbFVudmlzaXQiLCJvZyJdLCJtYXBwaW5ncyI6IkFBU0EsU0FBaUJBLFFBQWpCO0FBQ0EsU0FBU0MsT0FBVDtBQUNBLE9BQU9DLFdBQVA7QUFDQSxTQUFTQyxXQUFXLElBQUlD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b3J0IHsgRW50aXR5SW50ZXJmYWNlIH0gZnJvbSAnQHJlc3QtaG9va3Mvbm9ybWFsaXpyL3NjaGVtYSc7XG5pbXBvcnQgKiBhcyBzY2hlbWEgZnJvbSAnQHJlc3QtaG9va3Mvbm9ybWFsaXpyL3NjaGVtYSc7XG5pbXBvcnQge1xuICBEZW5vcm1hbGl6ZSxcbiAgRGVub3JtYWxpemVOdWxsYWJsZSxcbiAgU2NoZW1hLFxuICBEZW5vcm1hbGl6ZUNhY2hlLFxuICBVbnZpc2l0RnVuY3Rpb24sXG59IGZyb20gJ0ByZXN0LWhvb2tzL25vcm1hbGl6ci90eXBlcyc7XG5pbXBvcnQgRW50aXR5LCB7IGlzRW50aXR5IH0gZnJvbSAnQHJlc3QtaG9va3Mvbm9ybWFsaXpyL2VudGl0aWVzL0VudGl0eSc7XG5pbXBvcnQgeyBERUxFVEVEIH0gZnJvbSAnQHJlc3QtaG9va3Mvbm9ybWFsaXpyL3NwZWNpYWwnO1xuaW1wb3J0IFdlYWtMaXN0TWFwIGZyb20gJ0ByZXN0LWhvb2tzL25vcm1hbGl6ci9XZWFrTGlzdE1hcCc7XG5pbXBvcnQgeyBkZW5vcm1hbGl6ZSBhcyBhcnJheURlbm9ybWFsaXplIH0gZnJvbSAnQHJlc3QtaG9va3Mvbm9ybWFsaXpyL3NjaGVtYXMvQXJyYXknO1xuaW1wb3J0IHsgZGVub3JtYWxpemUgYXMgb2JqZWN0RGVub3JtYWxpemUgfSBmcm9tICdAcmVzdC1ob29rcy9ub3JtYWxpenIvc2NoZW1hcy9PYmplY3QnO1xuaW1wb3J0IHsgaXNJbW11dGFibGUgfSBmcm9tICdAcmVzdC1ob29rcy9ub3JtYWxpenIvc2NoZW1hcy9JbW11dGFibGVVdGlscyc7XG5cbmNvbnN0IERSQUZUID0gU3ltYm9sKCdkcmFmdCcpO1xuXG5jb25zdCB1bnZpc2l0RW50aXR5ID0gKFxuICBpZDogYW55LFxuICBzY2hlbWE6IGFueSxcbiAgdW52aXNpdDogVW52aXNpdEZ1bmN0aW9uLFxuICBnZXRFbnRpdHk6IChcbiAgICBlbnRpdHlPcklkOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgc3RyaW5nLFxuICAgIHNjaGVtYTogdHlwZW9mIEVudGl0eSxcbiAgKSA9PiBFbnRpdHlJbnRlcmZhY2UgfCB0eXBlb2YgREVMRVRFRCxcbiAgbG9jYWxDYWNoZTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgYW55Pj4sXG4gIGVudGl0eUNhY2hlOiBEZW5vcm1hbGl6ZUNhY2hlWydlbnRpdGllcyddLFxuICBkZXBlbmRlbmNpZXM6IG9iamVjdFtdLFxuICBjeWNsZUluZGV4OiB7IGk6IG51bWJlciB9LFxuKTogW1xuICBkZW5vcm1hbGl6ZWQ6IEVudGl0eUludGVyZmFjZSB8IHVuZGVmaW5lZCxcbiAgZm91bmQ6IGJvb2xlYW4sXG4gIGRlbGV0ZWQ6IGJvb2xlYW4sXG5dID0+IHtcbiAgY29uc3QgZW50aXR5ID0gZ2V0RW50aXR5KGlkLCBzY2hlbWEpO1xuICBpZiAoZW50aXR5ID09PSBERUxFVEVEKSB7XG4gICAgcmV0dXJuIFt1bmRlZmluZWQsIHRydWUsIHRydWVdO1xuICB9XG4gIGlmIChcbiAgICBwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nICYmXG4gICAgdHlwZW9mIGVudGl0eSA9PT0gJ3N5bWJvbCcgJiZcbiAgICAoZW50aXR5IGFzIHN5bWJvbCkudG9TdHJpbmcoKS5pbmNsdWRlcygnREVMRVRFRCcpXG4gICkge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIGBVbnJlY29nbml6ZWQgc3ltYm9sIGRldGVjdGVkLlxuTWFrZSBzdXJlIHlvdSBkbyBub3QgaGF2ZSBtdWx0aXBsZSB2ZXJzaW9ucyBvZiBAcmVzdC1ob29rcy9ub3JtYWxpenIgaW5zdGFsbGVkLmAsXG4gICAgKTtcbiAgfVxuICBpZiAodHlwZW9mIGVudGl0eSAhPT0gJ29iamVjdCcgfHwgZW50aXR5ID09PSBudWxsKSB7XG4gICAgcmV0dXJuIFtlbnRpdHksIGZhbHNlLCBmYWxzZV07XG4gIH1cblxuICBpZiAobG9jYWxDYWNoZVtzY2hlbWEua2V5XSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgbG9jYWxDYWNoZVtzY2hlbWEua2V5XSA9IHt9O1xuICB9XG5cbiAgbGV0IGZvdW5kID0gdHJ1ZTtcbiAgbGV0IGRlbGV0ZWQgPSBmYWxzZTtcblxuICBpZiAoIWxvY2FsQ2FjaGVbc2NoZW1hLmtleV1baWRdKSB7XG4gICAgY29uc3QgdHJhY2tpbmdJbmRleCA9IGRlcGVuZGVuY2llcy5sZW5ndGg7XG4gICAgZGVwZW5kZW5jaWVzLnB1c2goZW50aXR5KTtcblxuICAgIGNvbnN0IHdyYXBwZWRVbnZpc2l0ID0gd2l0aFRyYWNrZWRFbnRpdGllcyh1bnZpc2l0KTtcbiAgICAvLyB7IFtEUkFGVF0gfSBtZWFucyB3ZSBhcmUgc3RpbGwgcHJvY2Vzc2luZyAtIHdoaWNoIGlmIGZvdW5kIGluZGljYXRlcyBhIGN5Y2xlXG4gICAgd3JhcHBlZFVudmlzaXQuc2V0TG9jYWwgPSBlbnRpdHlDb3B5ID0+XG4gICAgICAobG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF0gPSB7IFtEUkFGVF06IGVudGl0eUNvcHksIGk6IHRyYWNraW5nSW5kZXggfSk7XG5cbiAgICBjb25zdCBnbG9iYWxDYWNoZUVudHJ5ID0gZ2V0R2xvYmFsQ2FjaGVFbnRyeShlbnRpdHlDYWNoZSwgc2NoZW1hLCBpZCk7XG5cbiAgICBbbG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF0sIGZvdW5kLCBkZWxldGVkXSA9IHNjaGVtYS5kZW5vcm1hbGl6ZShcbiAgICAgIGVudGl0eSxcbiAgICAgIHdyYXBwZWRVbnZpc2l0LFxuICAgICk7XG5cbiAgICAvLyBpZiBpbiBjeWNsZSwgdXNlIHRoZSBzdGFydCBvZiB0aGUgY3ljbGUgdG8gdHJhY2sgYWxsIGRlcHNcbiAgICAvLyBvdGhlcndpc2UsIHdlIHVzZSBvdXIgb3duIHRyYWNraW5nSW5kZXhcbiAgICBjb25zdCBsb2NhbEtleSA9IGRlcGVuZGVuY2llcy5zbGljZShcbiAgICAgIGN5Y2xlSW5kZXguaSA9PT0gLTEgPyB0cmFja2luZ0luZGV4IDogY3ljbGVJbmRleC5pLFxuICAgICk7XG5cbiAgICBpZiAoIWdsb2JhbENhY2hlRW50cnkuaGFzKGxvY2FsS2V5KSkge1xuICAgICAgZ2xvYmFsQ2FjaGVFbnRyeS5zZXQobG9jYWxLZXksIGxvY2FsQ2FjaGVbc2NoZW1hLmtleV1baWRdKTtcbiAgICB9IGVsc2Uge1xuICAgICAgbG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF0gPSBnbG9iYWxDYWNoZUVudHJ5LmdldChsb2NhbEtleSk7XG4gICAgfVxuXG4gICAgLy8gc3RhcnQgb2YgY3ljbGUgLSByZXNldCBjeWNsZSBkZXRlY3Rpb25cbiAgICBpZiAoY3ljbGVJbmRleC5pID09PSB0cmFja2luZ0luZGV4KSB7XG4gICAgICBjeWNsZUluZGV4LmkgPSAtMTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgLy8gY3ljbGUgZGV0ZWN0ZWRcbiAgICBpZiAoXG4gICAgICBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwobG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF0sIERSQUZUKVxuICAgICkge1xuICAgICAgY3ljbGVJbmRleC5pID0gbG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF0uaTtcbiAgICAgIHJldHVybiBbbG9jYWxDYWNoZVtzY2hlbWEua2V5XVtpZF1bRFJBRlRdLCBmb3VuZCwgZGVsZXRlZF07XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIHdpdGggbm8gY3ljbGUsIGdsb2JhbENhY2hlRW50cnkgd2lsbCBoYXZlIGFscmVhZHkgYmVlbiBzZXRcbiAgICAgIGRlcGVuZGVuY2llcy5wdXNoKGVudGl0eSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIFtsb2NhbENhY2hlW3NjaGVtYS5rZXldW2lkXSwgZm91bmQsIGRlbGV0ZWRdO1xufTtcblxuY29uc3QgZ2V0VW52aXNpdCA9IChcbiAgZW50aXRpZXM6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGFueT4+LFxuICBlbnRpdHlDYWNoZTogRGVub3JtYWxpemVDYWNoZVsnZW50aXRpZXMnXSxcbiAgcmVzdWx0Q2FjaGU6IFdlYWtMaXN0TWFwPG9iamVjdCwgYW55PixcbiAgbG9jYWxDYWNoZTogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgYW55Pj4sXG4pID0+IHtcbiAgY29uc3QgZ2V0RW50aXR5ID0gZ2V0RW50aXRpZXMoZW50aXRpZXMpO1xuICBjb25zdCBkZXBlbmRlbmNpZXM6IG9iamVjdFtdID0gW107XG4gIGNvbnN0IGN5Y2xlSW5kZXggPSB7IGk6IC0xIH07XG5cbiAgZnVuY3Rpb24gdW52aXNpdChcbiAgICBpbnB1dDogYW55LFxuICAgIHNjaGVtYTogYW55LFxuICApOiBbZGVub3JtYWxpemVkOiBhbnksIGZvdW5kOiBib29sZWFuLCBkZWxldGVkOiBib29sZWFuXSB7XG4gICAgaWYgKCFzY2hlbWEpIHJldHVybiBbaW5wdXQsIHRydWUsIGZhbHNlXTtcblxuICAgIGlmICghc2NoZW1hLmRlbm9ybWFsaXplIHx8IHR5cGVvZiBzY2hlbWEuZGVub3JtYWxpemUgIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGlmICh0eXBlb2Ygc2NoZW1hID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICAgIGlmIChpbnB1dCBpbnN0YW5jZW9mIHNjaGVtYSkgcmV0dXJuIFtpbnB1dCwgdHJ1ZSwgZmFsc2VdO1xuICAgICAgICByZXR1cm4gW25ldyBzY2hlbWEoaW5wdXQpLCB0cnVlLCBmYWxzZV07XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiBzY2hlbWEgPT09ICdvYmplY3QnKSB7XG4gICAgICAgIGNvbnN0IG1ldGhvZCA9IEFycmF5LmlzQXJyYXkoc2NoZW1hKVxuICAgICAgICAgID8gYXJyYXlEZW5vcm1hbGl6ZVxuICAgICAgICAgIDogb2JqZWN0RGVub3JtYWxpemU7XG4gICAgICAgIHJldHVybiBtZXRob2Qoc2NoZW1hLCBpbnB1dCwgdW52aXNpdCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gbnVsbCBpcyBjb25zaWRlcmVkIGludGVudGlvbmFsLCB0aHVzIGFsd2F5cyAnZm91bmQnIGFzIHRydWVcbiAgICBpZiAoaW5wdXQgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBbaW5wdXQsIHRydWUsIGZhbHNlXTtcbiAgICB9XG5cbiAgICBpZiAoaXNFbnRpdHkoc2NoZW1hKSkge1xuICAgICAgLy8gdW52aXNpdEVudGl0eSBqdXN0IGNhbid0IGhhbmRsZSB1bmRlZmluZWRcbiAgICAgIGlmIChpbnB1dCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJldHVybiBbaW5wdXQsIGZhbHNlLCBmYWxzZV07XG4gICAgICB9XG4gICAgICByZXR1cm4gdW52aXNpdEVudGl0eShcbiAgICAgICAgaW5wdXQsXG4gICAgICAgIHNjaGVtYSxcbiAgICAgICAgdW52aXNpdCxcbiAgICAgICAgZ2V0RW50aXR5LFxuICAgICAgICBsb2NhbENhY2hlLFxuICAgICAgICBlbnRpdHlDYWNoZSxcbiAgICAgICAgZGVwZW5kZW5jaWVzLFxuICAgICAgICBjeWNsZUluZGV4LFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIHNjaGVtYS5kZW5vcm1hbGl6ZSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgcmV0dXJuIHNjaGVtYS5kZW5vcm1hbGl6ZShpbnB1dCwgdW52aXNpdCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIFtpbnB1dCwgdHJ1ZSwgZmFsc2VdO1xuICB9XG5cbiAgLy9jb25zdCB3cmFwcGVkVW52aXNpdCA9IHdpdGhUcmFja2VkRW50aXRpZXModW52aXNpdCwgZ2xvYmFsS2V5KTtcblxuICByZXR1cm4gKFxuICAgIGlucHV0OiBhbnksXG4gICAgc2NoZW1hOiBhbnksXG4gICk6IFtkZW5vcm1hbGl6ZWQ6IGFueSwgZm91bmQ6IGJvb2xlYW4sIGRlbGV0ZWQ6IGJvb2xlYW5dID0+IHtcbiAgICBjb25zdCByZXQgPSB1bnZpc2l0KGlucHV0LCBzY2hlbWEpO1xuICAgIC8vIGluIHRoZSBjYXNlIHdoZXJlIFdlYWtNYXAgY2Fubm90IGJlIHVzZWRcbiAgICAvLyB0aGlzIHRlc3QgZW5zdXJlcyBudWxsIGlzIHByb3Blcmx5IGV4Y2x1ZGVkIGZyb20gV2Vha01hcFxuICAgIGlmIChPYmplY3QoaW5wdXQpICE9PSBpbnB1dCkgcmV0dXJuIHJldDtcblxuICAgIGRlcGVuZGVuY2llcy5wdXNoKGlucHV0KTtcbiAgICBpZiAoIXJlc3VsdENhY2hlLmhhcyhkZXBlbmRlbmNpZXMpKSB7XG4gICAgICByZXN1bHRDYWNoZS5zZXQoZGVwZW5kZW5jaWVzLCByZXRbMF0pO1xuICAgICAgcmV0dXJuIHJldDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIFtyZXN1bHRDYWNoZS5nZXQoZGVwZW5kZW5jaWVzKSwgcmV0WzFdLCByZXRbMl1dO1xuICAgIH1cbiAgfTtcbn07XG5cbmNvbnN0IGdldEVudGl0aWVzID0gKGVudGl0aWVzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+KSA9PiB7XG4gIGNvbnN0IGVudGl0eUlzSW1tdXRhYmxlID0gaXNJbW11dGFibGUoZW50aXRpZXMpO1xuXG4gIHJldHVybiAoZW50aXR5T3JJZDogUmVjb3JkPHN0cmluZywgYW55PiB8IHN0cmluZywgc2NoZW1hOiB0eXBlb2YgRW50aXR5KSA9PiB7XG4gICAgY29uc3Qgc2NoZW1hS2V5ID0gc2NoZW1hLmtleTtcblxuICAgIGlmICh0eXBlb2YgZW50aXR5T3JJZCA9PT0gJ29iamVjdCcpIHtcbiAgICAgIHJldHVybiBlbnRpdHlPcklkO1xuICAgIH1cblxuICAgIGlmIChlbnRpdHlJc0ltbXV0YWJsZSkge1xuICAgICAgcmV0dXJuIGVudGl0aWVzLmdldEluKFtzY2hlbWFLZXksIGVudGl0eU9ySWRdKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZW50aXRpZXNbc2NoZW1hS2V5XT8uW2VudGl0eU9ySWRdO1xuICB9O1xufTtcblxudHlwZSBEZW5vcm1hbGl6ZVJldHVybjxTIGV4dGVuZHMgU2NoZW1hPiA9XG4gIHwgW1xuICAgICAgZGVub3JtYWxpemVkOiBEZW5vcm1hbGl6ZTxTPixcbiAgICAgIGZvdW5kOiB0cnVlLFxuICAgICAgZGVsZXRlZDogZmFsc2UsXG4gICAgICByZXNvbHZlZEVudGl0aWVzOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBhbnk+PixcbiAgICBdXG4gIHwgW1xuICAgICAgZGVub3JtYWxpemVkOiBEZW5vcm1hbGl6ZU51bGxhYmxlPFM+LFxuICAgICAgZm91bmQ6IGJvb2xlYW4sXG4gICAgICBkZWxldGVkOiB0cnVlLFxuICAgICAgcmVzb2x2ZWRFbnRpdGllczogUmVjb3JkPHN0cmluZywgUmVjb3JkPHN0cmluZywgYW55Pj4sXG4gICAgXVxuICB8IFtcbiAgICAgIGRlbm9ybWFsaXplZDogRGVub3JtYWxpemVOdWxsYWJsZTxTPixcbiAgICAgIGZvdW5kOiBmYWxzZSxcbiAgICAgIGRlbGV0ZWQ6IGJvb2xlYW4sXG4gICAgICByZXNvbHZlZEVudGl0aWVzOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBhbnk+PixcbiAgICBdO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2V4cGxpY2l0LW1vZHVsZS1ib3VuZGFyeS10eXBlc1xuZXhwb3J0IGNvbnN0IGRlbm9ybWFsaXplID0gPFMgZXh0ZW5kcyBTY2hlbWE+KFxuICBpbnB1dDogdW5rbm93bixcbiAgc2NoZW1hOiBTIHwgdW5kZWZpbmVkLFxuICBlbnRpdGllczogYW55LFxuICBlbnRpdHlDYWNoZTogRGVub3JtYWxpemVDYWNoZVsnZW50aXRpZXMnXSA9IHt9LFxuICByZXN1bHRDYWNoZTogV2Vha0xpc3RNYXA8b2JqZWN0LCBhbnk+ID0gbmV3IFdlYWtMaXN0TWFwKCksXG4pOiBEZW5vcm1hbGl6ZVJldHVybjxTPiA9PiB7XG4gIC8vIHVuZGVmaW5lZCBtZWFuIGRvbid0IGRvIGFueXRoaW5nXG4gIGlmIChzY2hlbWEgPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiBbaW5wdXQsIHRydWUsIGZhbHNlLCB7fV0gYXMgW2FueSwgYm9vbGVhbiwgYm9vbGVhbiwgYW55XTtcbiAgfVxuICBpZiAoaW5wdXQgPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiBbdW5kZWZpbmVkLCBmYWxzZSwgZmFsc2UsIHt9XSBhcyBbYW55LCBib29sZWFuLCBib29sZWFuLCBhbnldO1xuICB9XG4gIGNvbnN0IHJlc29sdmVkRW50aXRpZXM6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGFueT4+ID0ge307XG4gIGNvbnN0IHVudmlzaXQgPSBnZXRVbnZpc2l0KFxuICAgIGVudGl0aWVzLFxuICAgIGVudGl0eUNhY2hlLFxuICAgIHJlc3VsdENhY2hlLFxuICAgIHJlc29sdmVkRW50aXRpZXMsXG4gICk7XG4gIHJldHVybiBbLi4udW52aXNpdChpbnB1dCwgc2NoZW1hKSwgcmVzb2x2ZWRFbnRpdGllc10gYXMgW1xuICAgIGFueSxcbiAgICBib29sZWFuLFxuICAgIGJvb2xlYW4sXG4gICAgYW55LFxuICBdO1xufTtcblxuZXhwb3J0IGNvbnN0IGRlbm9ybWFsaXplU2ltcGxlID0gPFMgZXh0ZW5kcyBTY2hlbWE+KFxuICBpbnB1dDogYW55LFxuICBzY2hlbWE6IFMgfCB1bmRlZmluZWQsXG4gIGVudGl0aWVzOiBhbnksXG4gIGVudGl0eUNhY2hlOiBEZW5vcm1hbGl6ZUNhY2hlWydlbnRpdGllcyddID0ge30sXG4gIHJlc3VsdENhY2hlOiBXZWFrTGlzdE1hcDxvYmplY3QsIGFueT4gPSBuZXcgV2Vha0xpc3RNYXAoKSxcbik6XG4gIHwgW2Rlbm9ybWFsaXplZDogRGVub3JtYWxpemU8Uz4sIGZvdW5kOiB0cnVlLCBkZWxldGVkOiBmYWxzZV1cbiAgfCBbZGVub3JtYWxpemVkOiBEZW5vcm1hbGl6ZU51bGxhYmxlPFM+LCBmb3VuZDogYm9vbGVhbiwgZGVsZXRlZDogdHJ1ZV1cbiAgfCBbZGVub3JtYWxpemVkOiBEZW5vcm1hbGl6ZU51bGxhYmxlPFM+LCBmb3VuZDogZmFsc2UsIGRlbGV0ZWQ6IGJvb2xlYW5dID0+XG4gIGRlbm9ybWFsaXplKGlucHV0LCBzY2hlbWEsIGVudGl0aWVzLCBlbnRpdHlDYWNoZSwgcmVzdWx0Q2FjaGUpLnNsaWNlKFxuICAgIDAsXG4gICAgMyxcbiAgKSBhcyBhbnk7XG5cbmZ1bmN0aW9uIGdldEdsb2JhbENhY2hlRW50cnkoXG4gIGVudGl0eUNhY2hlOiB7XG4gICAgW2tleTogc3RyaW5nXTogeyBbcGs6IHN0cmluZ106IFdlYWtMaXN0TWFwPG9iamVjdCwgRW50aXR5SW50ZXJmYWNlPGFueT4+IH07XG4gIH0sXG4gIHNjaGVtYTogYW55LFxuICBpZDogYW55LFxuKSB7XG4gIGlmICghZW50aXR5Q2FjaGVbc2NoZW1hLmtleV0pIGVudGl0eUNhY2hlW3NjaGVtYS5rZXldID0ge307XG4gIGlmICghZW50aXR5Q2FjaGVbc2NoZW1hLmtleV1baWRdKVxuICAgIGVudGl0eUNhY2hlW3NjaGVtYS5rZXldW2lkXSA9IG5ldyBXZWFrTGlzdE1hcCgpO1xuICByZXR1cm4gZW50aXR5Q2FjaGVbc2NoZW1hLmtleV1baWRdO1xufVxuXG5mdW5jdGlvbiB3aXRoVHJhY2tlZEVudGl0aWVzKHVudmlzaXQ6IFVudmlzaXRGdW5jdGlvbik6IHNjaGVtYS5VbnZpc2l0RnVuY3Rpb24ge1xuICAvLyBldmVyeSB0aW1lIHdlIG5lc3QsIHdlIHdhbnQgdG8gdW53cmFwIGJhY2sgdG8gdGhlIHRvcC5cbiAgLy8gdGhpcyBpcyBkdWUgdG8gb25seSBuZWVkZWQgdGhlIG5leHQgbGV2ZWwgb2YgbmVzdGVkIGVudGl0aWVzIGZvciBsb29rdXBcbiAgY29uc3Qgb3JpZ2luYWxVbnZpc2l0ID0gdW52aXNpdC5vZyB8fCB1bnZpc2l0O1xuICBjb25zdCB3cmFwcGVkVW52aXNpdCA9IChpbnB1dDogYW55LCBzY2hlbWE6IGFueSkgPT5cbiAgICBvcmlnaW5hbFVudmlzaXQoaW5wdXQsIHNjaGVtYSk7XG4gIHdyYXBwZWRVbnZpc2l0Lm9nID0gdW52aXNpdDtcbiAgcmV0dXJuIHdyYXBwZWRVbnZpc2l0O1xufVxuIl19 |
{ | ||
"name": "@rest-hooks/normalizr", | ||
"version": "8.0.1", | ||
"version": "8.0.2", | ||
"description": "Normalizes and denormalizes JSON according to schema for Redux and Flux applications", | ||
@@ -104,3 +104,3 @@ "homepage": "https://github.com/coinbase/rest-hooks/tree/master/packages/normalizr#readme", | ||
}, | ||
"gitHead": "4d2b1ad1a775cdb3358f272370e6ddeaf17df9bc" | ||
"gitHead": "b46e0d2bfb3ed7c6cbe9b351fc45ca4e99f34f78" | ||
} |
Sorry, the diff of this file is not supported yet
653470
7725
24