potion-client
Advanced tools
Comparing version 1.4.0 to 1.5.0
@@ -19,3 +19,3 @@ "use strict"; | ||
var core_2 = require("../core"); | ||
var utils_1 = require("../utils"); | ||
var utils_1 = require("../core/utils"); | ||
/** | ||
@@ -74,3 +74,3 @@ * Angular 2 Potion resources interface. | ||
// `type` can be a tuple with resource type and a configuration for the resource type | ||
if (utils_1.isArray(type)) { | ||
if (Array.isArray(type)) { | ||
var resource = type[0], config = type[1]; | ||
@@ -184,2 +184,2 @@ this.register(uri, resource, config); | ||
}; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9AYW5ndWxhci9wb3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHVDQUFDOzs7Ozs7Ozs7Ozs7QUFFRCxzQ0FPdUI7QUFDdkIsc0NBU3VCO0FBR3ZCLGlDQUErQjtBQUMvQix1Q0FBcUM7QUFFckMsZ0NBTWlCO0FBRWpCLGtDQUF1RDtBQUd2RDs7R0FFRztBQUNVLFFBQUEsZ0JBQUEsR0FBbUIsSUFBSSxxQkFBQSxDQUErQixrQkFBRSxDQUFrQixDQUFDO0FBTXhGOztHQUVHO0FBQ1UsUUFBQSxhQUFBLEdBQWdCLElBQUkscUJBQUEsQ0FBNEIsZUFBRSxDQUFlLENBQUM7QUFJL0U7OztHQUdHO0FBQ1UsUUFBQSxXQUFBLEdBQWMsSUFBSSxxQkFBQSxDQUEwQixhQUFFLENBQWEsQ0FBQztBQU16RTs7R0FFRztBQUNIO0lBQXdDLHNDQUFZO0lBQXBEOztJQVVBLENBQUM7SUFUQSxzQ0FBUyxHQUFULFVBQVUsR0FBVztRQUNwQixNQUFNLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELHdDQUFXLEdBQVgsVUFBWSxLQUFhO1FBQ3hCLE1BQU0sQ0FBQyxrQkFBa0IsQ0FDeEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FDckIsQ0FBQztJQUNILENBQUM7SUFDRix5QkFBQztBQUFELENBVkEsQUFVQyxDQVZ1QyxtQkFBWSxHQVVuRDtBQVZZLGdEQUFrQjtBQWEvQjs7R0FFRztBQUVIO0lBQTRCLDBCQUFVO0lBR3JDLGdCQUNDLElBQVU7UUFDViwwRUFBMEU7UUFDeEUsTUFBVyxFQUNYLFVBQWU7UUFKbEIsWUFNQyxrQkFBTSxNQUFNLElBQUksRUFBRSxDQUFDLFNBSW5CO1FBSEEscUNBQXFDO1FBQ3JDLHNDQUFzQztRQUN0QyxLQUFJLENBQUMsSUFBSSxHQUFHLFVBQVUsSUFBSSxJQUFJLENBQUM7O0lBQ2hDLENBQUM7SUFFRCxxQ0FBb0IsR0FBcEIsVUFBcUIsU0FBNEI7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Q0FDRCxDQVRDIiwiZmlsZSI6InBvdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0c2xpbnQ6ZGlzYWJsZTogbWF4LWNsYXNzZXMtcGVyLWZpbGVcblxuaW1wb3J0IHtcblx0SW5qZWN0LFxuXHRJbmplY3RhYmxlLFxuXHRJbmplY3Rpb25Ub2tlbixcblx0T3B0aW9uYWwsXG5cdFByb3ZpZGVyLFxuXHRTa2lwU2VsZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG5cdEhlYWRlcnMsXG5cdEh0dHAsXG5cdFF1ZXJ5RW5jb2Rlcixcblx0UmVxdWVzdCxcblx0UmVxdWVzdE9wdGlvbnMsXG5cdFJlcXVlc3RPcHRpb25zQXJncyxcblx0UmVzcG9uc2UsXG5cdFVSTFNlYXJjaFBhcmFtc1xufSBmcm9tICdAYW5ndWxhci9odHRwJztcblxuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzL09ic2VydmFibGUnO1xuaW1wb3J0ICdyeGpzL2FkZC9vcGVyYXRvci9tYXAnO1xuaW1wb3J0ICdyeGpzL2FkZC9vcGVyYXRvci90b1Byb21pc2UnO1xuXG5pbXBvcnQge1xuXHRJdGVtLFxuXHRJdGVtT3B0aW9ucyxcblx0UG90aW9uQmFzZSxcblx0UG90aW9uT3B0aW9ucyxcblx0UmVxdWVzdE9wdGlvbnMgYXMgUG90aW9uUmVxdWVzdE9wdGlvbnNcbn0gZnJvbSAnLi4vY29yZSc7XG5cbmltcG9ydCB7aXNBcnJheSwgaXNPYmplY3RFbXB0eSwgbWVyZ2V9IGZyb20gJy4uL3V0aWxzJztcblxuXG4vKipcbiAqIEFuZ3VsYXIgMiBQb3Rpb24gcmVzb3VyY2VzIGludGVyZmFjZS5cbiAqL1xuZXhwb3J0IGNvbnN0IFBPVElPTl9SRVNPVVJDRVMgPSBuZXcgSW5qZWN0aW9uVG9rZW48UG90aW9uUmVzb3VyY2VzPignUE9USU9OX1JFU09VUkNFUycpO1xuZXhwb3J0IGludGVyZmFjZSBQb3Rpb25SZXNvdXJjZXMge1xuXHRba2V5OiBzdHJpbmddOiB0eXBlb2YgSXRlbSB8IFt0eXBlb2YgSXRlbSwgSXRlbU9wdGlvbnNdO1xufVxuXG5cbi8qKlxuICogUHJvdmlkZSBhIHdheSB0byBjb25maWd1cmUgUG90aW9uIGluIEFuZ3VsYXIgMi5cbiAqL1xuZXhwb3J0IGNvbnN0IFBPVElPTl9DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48UG90aW9uQ29uZmlnPignUE9USU9OX0NPTkZJRycpO1xuZXhwb3J0IGludGVyZmFjZSBQb3Rpb25Db25maWcgZXh0ZW5kcyBQb3Rpb25PcHRpb25zIHt9IC8vIHRzbGludDpkaXNhYmxlLWxpbmU6bm8tZW1wdHktaW50ZXJmYWNlXG5cblxuLyoqXG4gKiBQb3Rpb24gY2FuIGFsc28gYmUgY29uZmlndXJlZCB0byB1c2UgdmFyaW91cyBBbmd1bGFyIDIgSHR0cCBpbXBsZW1lbnRhdGlvbnMuXG4gKiBUaGlzIGlzIHVzZWZ1bCB3aGVuIHRoZXJlIGlzIGEgd3JhcHBlciBhcm91bmQgdGhlIGNvcmUgQW5ndWxhciAyIEh0dHAgbW9kdWxlIChtb3N0bHkgbmVlZGVkIHdoZW4gY3JlYXRpbmcgaW50ZXJjZXB0b3JzKS5cbiAqL1xuZXhwb3J0IGNvbnN0IFBPVElPTl9IVFRQID0gbmV3IEluamVjdGlvblRva2VuPFBvdGlvbkh0dHA+KCdQT1RJT05fSFRUUCcpO1xuZXhwb3J0IGludGVyZmFjZSBQb3Rpb25IdHRwIHtcblx0cmVxdWVzdCh1cmw6IHN0cmluZyB8IFJlcXVlc3QsIG9wdGlvbnM/OiBSZXF1ZXN0T3B0aW9uc0FyZ3MpOiBPYnNlcnZhYmxlPFJlc3BvbnNlPjtcbn1cblxuXG4vKipcbiAqIFBvdGlvbiBxdWVyaWVzIG5lZWQgc3BlY2lhbCBlbmNvZGluZyAoc29tZSBxdWVyaWVzIGhhdmUgSlNPTiBvYmplY3RzIGFzIHZhbHVlcyBmb3Iga2V5cykuXG4gKi9cbmV4cG9ydCBjbGFzcyBQb3Rpb25RdWVyeUVuY29kZXIgZXh0ZW5kcyBRdWVyeUVuY29kZXIge1xuXHRlbmNvZGVLZXkoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xuXHRcdHJldHVybiBlbmNvZGVVUklDb21wb25lbnQoa2V5KTtcblx0fVxuXG5cdGVuY29kZVZhbHVlKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRcdHJldHVybiBlbmNvZGVVUklDb21wb25lbnQoXG5cdFx0XHRKU09OLnN0cmluZ2lmeSh2YWx1ZSlcblx0XHQpO1xuXHR9XG59XG5cblxuLyoqXG4gKiBBbmd1bGFyIDIgUG90aW9uIHByb3ZpZGVyLlxuICovXG5cbmV4cG9ydCBjbGFzcyBQb3Rpb24gZXh0ZW5kcyBQb3Rpb25CYXNlIHtcblx0cHJpdmF0ZSBodHRwOiBQb3Rpb25IdHRwO1xuXG5cdGNvbnN0cnVjdG9yKFxuXHRcdGh0dHA6IEh0dHAsXG5cdFx0Ly8gVE9ETzogZml4IHdoZW4gaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvMTI2MzEgaXMgZml4ZWRcblx0XHQgIGNvbmZpZzogYW55LFxuXHRcdCAgY3VzdG9tSHR0cDogYW55XG5cdCkge1xuXHRcdHN1cGVyKGNvbmZpZyB8fCB7fSk7XG5cdFx0Ly8gVXNlIGN1c3RvbSBIdHRwIGNsYXNzIGlmIHByb3ZpZGVkLFxuXHRcdC8vIGZhbGxiYWNrIHRvIEFuZ3VsYXIgSHR0cCBvdGhlcndpc2UuXG5cdFx0dGhpcy5odHRwID0gY3VzdG9tSHR0cCB8fCBodHRwO1xuXHR9XG5cblx0cmVnaXN0ZXJGcm9tUHJvdmlkZXIocmVzb3VyY2VzOiBQb3Rpb25SZXNvdXJjZXNbXSk6IHZvaWQge1xuXHRcdC8vIFJlbW92ZSBhbnkgdmFsdWVzIHRoYXQgY29udGFpbiBubyByZXNvdXJjZXMuXG5cdFx0cmVzb3VyY2VzID0gbWVyZ2UoLi4ucmVzb3VyY2VzLmZpbHRlcihpdGVtID0+ICFpc09iamVjdEVtcHR5KGl0ZW0pKSk7XG5cblx0XHRpZiAoIWlzT2JqZWN0RW1wdHkocmVzb3VyY2VzKSkge1xuXHRcdFx0Zm9yIChjb25zdCBbdXJpLCB0eXBlXSBvZiBPYmplY3QuZW50cmllcyhyZXNvdXJjZXMpKSB7XG5cdFx0XHRcdC8vIE5PVEU6IFNraXAgcmVnaXN0cmF0aW9uIG9mIGV4aXN0aW5nIHJlc291cmNlcy5cblx0XHRcdFx0aWYgKCF0aGlzLnJlc291cmNlcy5oYXNPd25Qcm9wZXJ0eSh1cmkpKSB7XG5cdFx0XHRcdFx0Ly8gYHR5cGVgIGNhbiBiZSBhIHR1cGxlIHdpdGggcmVzb3VyY2UgdHlwZSBhbmQgYSBjb25maWd1cmF0aW9uIGZvciB0aGUgcmVzb3VyY2UgdHlwZVxuXHRcdFx0XHRcdGlmIChpc0FycmF5KHR5cGUpKSB7XG5cdFx0XHRcdFx0XHRjb25zdCBbcmVzb3VyY2UsIGNvbmZpZ10gPSB0eXBlO1xuXHRcdFx0XHRcdFx0dGhpcy5yZWdpc3Rlcih1cmksIHJlc291cmNlLCBjb25maWcpO1xuXHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHR0aGlzLnJlZ2lzdGVyKHVyaSwgdHlwZSk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0cHJvdGVjdGVkIHJlcXVlc3QodXJpOiBzdHJpbmcsIHttZXRob2QgPSAnR0VUJywgc2VhcmNoLCBkYXRhfTogUG90aW9uUmVxdWVzdE9wdGlvbnMgPSB7fSk6IFByb21pc2U8YW55PiB7XG5cdFx0bGV0IHJlcXVlc3RPcHRpb25zID0gbmV3IFJlcXVlc3RPcHRpb25zKHtcblx0XHRcdG1ldGhvZDogbWV0aG9kIGFzIHN0cmluZyxcblx0XHRcdHVybDogdXJpXG5cdFx0fSk7XG5cblx0XHQvLyBXZSBuZWVkIHRvIGNvbnZlcnQgdGhlIHtib2R5fSB0byBwcm9wZXIgSlNPTiB3aGVuIG1ha2luZyBQT1NUIHJlcXVlc3RzLlxuXHRcdGlmIChkYXRhKSB7XG5cdFx0XHRjb25zdCBoZWFkZXJzID0gbmV3IEhlYWRlcnMoKTtcblx0XHRcdC8vIFBvdGlvbiBhbHNvIGV4cGVjdHMgYWxsIHJlcXVlc3RzIHRvIGhhdmUgY29udGVudCB0eXBlIHNldCB0byAnYXBwbGljYXRpb24vanNvbicuXG5cdFx0XHRoZWFkZXJzLnNldCgnQ29udGVudC1UeXBlJywgJ2FwcGxpY2F0aW9uL2pzb247IGNoYXJzZXQ9dXRmLTgnKTtcblx0XHRcdHJlcXVlc3RPcHRpb25zID0gcmVxdWVzdE9wdGlvbnMubWVyZ2Uoe1xuXHRcdFx0XHRib2R5OiBKU09OLnN0cmluZ2lmeShkYXRhKSxcblx0XHRcdFx0aGVhZGVyc1xuXHRcdFx0fSk7XG5cdFx0fVxuXG5cdFx0Ly8gQ29udmVydCB7c2VhcmNofSB0byBVUkxTZWFyY2hQYXJhbXMuXG5cdFx0aWYgKHNlYXJjaCkge1xuXHRcdFx0Y29uc3QgcGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcygnJywgbmV3IFBvdGlvblF1ZXJ5RW5jb2RlcigpKTtcblxuXHRcdFx0Zm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgKE9iamVjdCBhcyBhbnkpLmVudHJpZXMoc2VhcmNoKSkge1xuXHRcdFx0XHQvLyBXZSBuZWVkIHRvIGBlbmNvZGVVUklDb21wb25lbnQoKWAgd2hlbiB3ZSBoYXZlIGNvbXBsZXggc2VhcmNoIHF1ZXJpZXMuXG5cdFx0XHRcdC8vIEUuZy4gYHNlYXJjaDoge3doZXJlOiB7Zm9vOiAxLCBiYXI6IDJ9fWAsIHdoZW4gVVJMU2VhcmNoUGFyYW1zIHdpbGwgYmUgc2VudCB3aXRoIHRoZSByZXF1ZXN0LFxuXHRcdFx0XHQvLyBpdCB3aWxsIGVuZCB1cCBhcyBgW29iamVjdCBPYmplY3RdYCwgdGh1cywgd2UgbmVlZCB0byBlbmNvZGUgdGhlIHZhbHVlLlxuXHRcdFx0XHRwYXJhbXMuYXBwZW5kKGtleSwgdmFsdWUpO1xuXHRcdFx0fVxuXG5cdFx0XHRyZXF1ZXN0T3B0aW9ucyA9IHJlcXVlc3RPcHRpb25zLm1lcmdlKHtcblx0XHRcdFx0c2VhcmNoOiBwYXJhbXNcblx0XHRcdH0pO1xuXHRcdH1cblxuXHRcdHJldHVybiB0aGlzLmh0dHAucmVxdWVzdCh1cmksIHJlcXVlc3RPcHRpb25zKVxuXHRcdFx0Lm1hcCgocmVzcG9uc2U6IGFueSkgPT4ge1xuXHRcdFx0XHRsZXQgaGVhZGVycyA9IHt9O1xuXHRcdFx0XHRsZXQgZGF0YTtcblxuXHRcdFx0XHQvLyBJZiBgcmVzcG9uc2VgIGlzIGEgUmVzcG9uc2Ugb2JqZWN0LFxuXHRcdFx0XHQvLyB3ZSBtaWdodCBhbHNvIGhhdmUgYSBIZWFkZXJzIGluc3RhbmNlIHdoaWNoIHdlIG5lZWQgdG8gY29udmVydCBpbnRvIGFuIG9iamVjdC5cblx0XHRcdFx0Ly8gTk9URTogcmVzcG9uc2UgY2FuIGFsc28gYmUgbnVsbC5cblx0XHRcdFx0aWYgKHJlc3BvbnNlIGluc3RhbmNlb2YgUmVzcG9uc2UpIHtcblx0XHRcdFx0XHRpZiAocmVzcG9uc2UuaGVhZGVycyBpbnN0YW5jZW9mIEhlYWRlcnMpIHtcblx0XHRcdFx0XHRcdGZvciAoY29uc3Qga2V5IG9mIHJlc3BvbnNlLmhlYWRlcnMua2V5cygpKSB7XG5cdFx0XHRcdFx0XHRcdC8vIEFuZ3VsYXIgMiBkb2VzIG5vdCB5ZXQgbG93ZXJjYXNlIGhlYWRlcnMuXG5cdFx0XHRcdFx0XHRcdC8vIE1ha2Ugc3VyZSB3ZSBnZXQgdGhlIGZpcnN0IHN0cmluZyB2YWx1ZSBvZiB0aGUgaGVhZGVyIGluc3RlYWQgb2YgdGhlIGFycmF5IG9mIHZhbHVlcy5cblx0XHRcdFx0XHRcdFx0aGVhZGVyc1trZXkudG9Mb3dlckNhc2UoKV0gPSByZXNwb25zZS5oZWFkZXJzLmdldChrZXkpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHQvLyBOT1RFOiBoZWFkZXJzIG11c3QgYmUgYW4gb2JqZWN0LFxuXHRcdFx0XHRcdFx0Ly8gdGh1cyB0aGUgZmFsbGJhY2suXG5cdFx0XHRcdFx0XHRoZWFkZXJzID0gcmVzcG9uc2UuaGVhZGVycyB8fCB7fTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0Ly8gV2UgY2Fubm90IHBhcnNlIGFzIEpTT04gd2hlbiB0aGVyZSBpcyBhIHJlc3BvbnNlIHdpdGggZW1wdHkgdGV4dCAoZS5nLiAyMDQgTk8gQ09OVEVOVCksXG5cdFx0XHRcdFx0Ly8gdGhlcmVmb3JlLCB3ZSBzZXQgdGhlIGRhdGEgdG8gbnVsbCB0byBhdm9pZCBleGNlcHRpb25zIGJlaW5nIHRocm93bi5cblx0XHRcdFx0XHRpZiAocmVzcG9uc2UudGV4dCgpLmxlbmd0aCkge1xuXHRcdFx0XHRcdFx0ZGF0YSA9IHJlc3BvbnNlLmpzb24oKTtcblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0ZGF0YSA9IG51bGw7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdGRhdGEgPSByZXNwb25zZTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdHJldHVybiB7XG5cdFx0XHRcdFx0aGVhZGVycyxcblx0XHRcdFx0XHRkYXRhXG5cdFx0XHRcdH07XG5cdFx0XHR9KVxuXHRcdFx0LnRvUHJvbWlzZSgpO1xuXHR9XG5zdGF0aWMgZGVjb3JhdG9yczogRGVjb3JhdG9ySW52b2NhdGlvbltdID0gW1xueyB0eXBlOiBJbmplY3RhYmxlIH0sXG5dO1xuLyoqIEBub2NvbGxhcHNlICovXG5zdGF0aWMgY3RvclBhcmFtZXRlcnM6ICgpID0+ICh7dHlwZTogYW55LCBkZWNvcmF0b3JzPzogRGVjb3JhdG9ySW52b2NhdGlvbltdfXxudWxsKVtdID0gKCkgPT4gW1xue3R5cGU6IEh0dHAsIH0sXG57dHlwZTogdW5kZWZpbmVkLCBkZWNvcmF0b3JzOiBbeyB0eXBlOiBPcHRpb25hbCB9LCB7IHR5cGU6IEluamVjdCwgYXJnczogW1BPVElPTl9DT05GSUcsIF0gfSwgXX0sXG57dHlwZTogdW5kZWZpbmVkLCBkZWNvcmF0b3JzOiBbeyB0eXBlOiBPcHRpb25hbCB9LCB7IHR5cGU6IEluamVjdCwgYXJnczogW1BPVElPTl9IVFRQLCBdIH0sIF19LFxuXTtcbn1cblxuXG5leHBvcnQgZnVuY3Rpb24gUE9USU9OX1BST1ZJREVSX0ZBQ1RPUlkocGFyZW50RmFjdG9yeTogUG90aW9uLCBodHRwOiBIdHRwLCBjb25maWc6IFBvdGlvbkNvbmZpZywgY3VzdG9tSHR0cDogUG90aW9uSHR0cCk6IFBvdGlvbiB7XG5cdHJldHVybiBwYXJlbnRGYWN0b3J5IHx8IG5ldyBQb3Rpb24oaHR0cCwgY29uZmlnLCBjdXN0b21IdHRwKTtcbn1cblxuZXhwb3J0IGNvbnN0IFBPVElPTl9QUk9WSURFUjogUHJvdmlkZXIgPSB7XG5cdC8vIElmIHRoZXJlIGlzIGFscmVhZHkgYSBQb3Rpb24gYXZhaWxhYmxlLCB1c2UgdGhhdC5cblx0Ly8gT3RoZXJ3aXNlLCBwcm92aWRlIGEgbmV3IG9uZS5cblx0cHJvdmlkZTogUG90aW9uLFxuXHR1c2VGYWN0b3J5OiBQT1RJT05fUFJPVklERVJfRkFDVE9SWSxcblx0ZGVwczogW1xuXHRcdFtuZXcgT3B0aW9uYWwoKSwgbmV3IFNraXBTZWxmKCksIFBvdGlvbl0sXG5cdFx0SHR0cCxcblx0XHRbbmV3IE9wdGlvbmFsKCksIG5ldyBJbmplY3QoUE9USU9OX0NPTkZJRyldLFxuXHRcdFtuZXcgT3B0aW9uYWwoKSwgbmV3IEluamVjdChQT1RJT05fSFRUUCldXG5cdF1cbn07XG5cbmludGVyZmFjZSBEZWNvcmF0b3JJbnZvY2F0aW9uIHtcbiAgdHlwZTogRnVuY3Rpb247XG4gIGFyZ3M/OiBhbnlbXTtcbn1cbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9AYW5ndWxhci9wb3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHVDQUFDOzs7Ozs7Ozs7Ozs7QUFFRCxzQ0FPdUI7QUFDdkIsc0NBU3VCO0FBR3ZCLGlDQUErQjtBQUMvQix1Q0FBcUM7QUFFckMsZ0NBTWlCO0FBRWpCLHVDQUFtRDtBQUduRDs7R0FFRztBQUNVLFFBQUEsZ0JBQUEsR0FBbUIsSUFBSSxxQkFBQSxDQUErQixrQkFBRSxDQUFrQixDQUFDO0FBTXhGOztHQUVHO0FBQ1UsUUFBQSxhQUFBLEdBQWdCLElBQUkscUJBQUEsQ0FBNEIsZUFBRSxDQUFlLENBQUM7QUFJL0U7OztHQUdHO0FBQ1UsUUFBQSxXQUFBLEdBQWMsSUFBSSxxQkFBQSxDQUEwQixhQUFFLENBQWEsQ0FBQztBQU16RTs7R0FFRztBQUNIO0lBQXdDLHNDQUFZO0lBQXBEOztJQVVBLENBQUM7SUFUQSxzQ0FBUyxHQUFULFVBQVUsR0FBVztRQUNwQixNQUFNLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELHdDQUFXLEdBQVgsVUFBWSxLQUFhO1FBQ3hCLE1BQU0sQ0FBQyxrQkFBa0IsQ0FDeEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FDckIsQ0FBQztJQUNILENBQUM7SUFDRix5QkFBQztBQUFELENBVkEsQUFVQyxDQVZ1QyxtQkFBWSxHQVVuRDtBQVZZLGdEQUFrQjtBQWEvQjs7R0FFRztBQUVIO0lBQTRCLDBCQUFVO0lBR3JDLGdCQUNDLElBQVU7UUFDViwwRUFBMEU7UUFDeEUsTUFBVyxFQUNYLFVBQWU7UUFKbEIsWUFNQyxrQkFBTSxNQUFNLElBQUksRUFBRSxDQUFDLFNBSW5CO1FBSEEscUNBQXFDO1FBQ3JDLHNDQUFzQztRQUN0QyxLQUFJLENBQUMsSUFBSSxHQUFHLFVBQVUsSUFBSSxJQUFJLENBQUM7O0lBQ2hDLENBQUM7SUFFRCxxQ0FBb0IsR0FBcEIsVUFBcUIsU0FBNEI7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Q0FBQztLQVV6QztDQUNELENBVEMiLCJmaWxlIjoicG90aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8vIHRzbGludDpkaXNhYmxlOiBtYXgtY2xhc3Nlcy1wZXItZmlsZVxuXG5pbXBvcnQge1xuXHRJbmplY3QsXG5cdEluamVjdGFibGUsXG5cdEluamVjdGlvblRva2VuLFxuXHRPcHRpb25hbCxcblx0UHJvdmlkZXIsXG5cdFNraXBTZWxmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcblx0SGVhZGVycyxcblx0SHR0cCxcblx0UXVlcnlFbmNvZGVyLFxuXHRSZXF1ZXN0LFxuXHRSZXF1ZXN0T3B0aW9ucyxcblx0UmVxdWVzdE9wdGlvbnNBcmdzLFxuXHRSZXNwb25zZSxcblx0VVJMU2VhcmNoUGFyYW1zXG59IGZyb20gJ0Bhbmd1bGFyL2h0dHAnO1xuXG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMvT2JzZXJ2YWJsZSc7XG5pbXBvcnQgJ3J4anMvYWRkL29wZXJhdG9yL21hcCc7XG5pbXBvcnQgJ3J4anMvYWRkL29wZXJhdG9yL3RvUHJvbWlzZSc7XG5cbmltcG9ydCB7XG5cdEl0ZW0sXG5cdEl0ZW1PcHRpb25zLFxuXHRQb3Rpb25CYXNlLFxuXHRQb3Rpb25PcHRpb25zLFxuXHRSZXF1ZXN0T3B0aW9ucyBhcyBQb3Rpb25SZXF1ZXN0T3B0aW9uc1xufSBmcm9tICcuLi9jb3JlJztcblxuaW1wb3J0IHtpc09iamVjdEVtcHR5LCBtZXJnZX0gZnJvbSAnLi4vY29yZS91dGlscyc7XG5cblxuLyoqXG4gKiBBbmd1bGFyIDIgUG90aW9uIHJlc291cmNlcyBpbnRlcmZhY2UuXG4gKi9cbmV4cG9ydCBjb25zdCBQT1RJT05fUkVTT1VSQ0VTID0gbmV3IEluamVjdGlvblRva2VuPFBvdGlvblJlc291cmNlcz4oJ1BPVElPTl9SRVNPVVJDRVMnKTtcbmV4cG9ydCBpbnRlcmZhY2UgUG90aW9uUmVzb3VyY2VzIHtcblx0W2tleTogc3RyaW5nXTogdHlwZW9mIEl0ZW0gfCBbdHlwZW9mIEl0ZW0sIEl0ZW1PcHRpb25zXTtcbn1cblxuXG4vKipcbiAqIFByb3ZpZGUgYSB3YXkgdG8gY29uZmlndXJlIFBvdGlvbiBpbiBBbmd1bGFyIDIuXG4gKi9cbmV4cG9ydCBjb25zdCBQT1RJT05fQ09ORklHID0gbmV3IEluamVjdGlvblRva2VuPFBvdGlvbkNvbmZpZz4oJ1BPVElPTl9DT05GSUcnKTtcbmV4cG9ydCBpbnRlcmZhY2UgUG90aW9uQ29uZmlnIGV4dGVuZHMgUG90aW9uT3B0aW9ucyB7fSAvLyB0c2xpbnQ6ZGlzYWJsZS1saW5lOm5vLWVtcHR5LWludGVyZmFjZVxuXG5cbi8qKlxuICogUG90aW9uIGNhbiBhbHNvIGJlIGNvbmZpZ3VyZWQgdG8gdXNlIHZhcmlvdXMgQW5ndWxhciAyIEh0dHAgaW1wbGVtZW50YXRpb25zLlxuICogVGhpcyBpcyB1c2VmdWwgd2hlbiB0aGVyZSBpcyBhIHdyYXBwZXIgYXJvdW5kIHRoZSBjb3JlIEFuZ3VsYXIgMiBIdHRwIG1vZHVsZSAobW9zdGx5IG5lZWRlZCB3aGVuIGNyZWF0aW5nIGludGVyY2VwdG9ycykuXG4gKi9cbmV4cG9ydCBjb25zdCBQT1RJT05fSFRUUCA9IG5ldyBJbmplY3Rpb25Ub2tlbjxQb3Rpb25IdHRwPignUE9USU9OX0hUVFAnKTtcbmV4cG9ydCBpbnRlcmZhY2UgUG90aW9uSHR0cCB7XG5cdHJlcXVlc3QodXJsOiBzdHJpbmcgfCBSZXF1ZXN0LCBvcHRpb25zPzogUmVxdWVzdE9wdGlvbnNBcmdzKTogT2JzZXJ2YWJsZTxSZXNwb25zZT47XG59XG5cblxuLyoqXG4gKiBQb3Rpb24gcXVlcmllcyBuZWVkIHNwZWNpYWwgZW5jb2RpbmcgKHNvbWUgcXVlcmllcyBoYXZlIEpTT04gb2JqZWN0cyBhcyB2YWx1ZXMgZm9yIGtleXMpLlxuICovXG5leHBvcnQgY2xhc3MgUG90aW9uUXVlcnlFbmNvZGVyIGV4dGVuZHMgUXVlcnlFbmNvZGVyIHtcblx0ZW5jb2RlS2V5KGtleTogc3RyaW5nKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KGtleSk7XG5cdH1cblxuXHRlbmNvZGVWYWx1ZSh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcblx0XHRyZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KFxuXHRcdFx0SlNPTi5zdHJpbmdpZnkodmFsdWUpXG5cdFx0KTtcblx0fVxufVxuXG5cbi8qKlxuICogQW5ndWxhciAyIFBvdGlvbiBwcm92aWRlci5cbiAqL1xuXG5leHBvcnQgY2xhc3MgUG90aW9uIGV4dGVuZHMgUG90aW9uQmFzZSB7XG5cdHByaXZhdGUgaHR0cDogUG90aW9uSHR0cDtcblxuXHRjb25zdHJ1Y3Rvcihcblx0XHRodHRwOiBIdHRwLFxuXHRcdC8vIFRPRE86IGZpeCB3aGVuIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIvaXNzdWVzLzEyNjMxIGlzIGZpeGVkXG5cdFx0ICBjb25maWc6IGFueSxcblx0XHQgIGN1c3RvbUh0dHA6IGFueVxuXHQpIHtcblx0XHRzdXBlcihjb25maWcgfHwge30pO1xuXHRcdC8vIFVzZSBjdXN0b20gSHR0cCBjbGFzcyBpZiBwcm92aWRlZCxcblx0XHQvLyBmYWxsYmFjayB0byBBbmd1bGFyIEh0dHAgb3RoZXJ3aXNlLlxuXHRcdHRoaXMuaHR0cCA9IGN1c3RvbUh0dHAgfHwgaHR0cDtcblx0fVxuXG5cdHJlZ2lzdGVyRnJvbVByb3ZpZGVyKHJlc291cmNlczogUG90aW9uUmVzb3VyY2VzW10pOiB2b2lkIHtcblx0XHQvLyBSZW1vdmUgYW55IHZhbHVlcyB0aGF0IGNvbnRhaW4gbm8gcmVzb3VyY2VzLlxuXHRcdHJlc291cmNlcyA9IG1lcmdlKC4uLnJlc291cmNlcy5maWx0ZXIoaXRlbSA9PiAhaXNPYmplY3RFbXB0eShpdGVtKSkpO1xuXG5cdFx0aWYgKCFpc09iamVjdEVtcHR5KHJlc291cmNlcykpIHtcblx0XHRcdGZvciAoY29uc3QgW3VyaSwgdHlwZV0gb2YgT2JqZWN0LmVudHJpZXMocmVzb3VyY2VzKSkge1xuXHRcdFx0XHQvLyBOT1RFOiBTa2lwIHJlZ2lzdHJhdGlvbiBvZiBleGlzdGluZyByZXNvdXJjZXMuXG5cdFx0XHRcdGlmICghdGhpcy5yZXNvdXJjZXMuaGFzT3duUHJvcGVydHkodXJpKSkge1xuXHRcdFx0XHRcdC8vIGB0eXBlYCBjYW4gYmUgYSB0dXBsZSB3aXRoIHJlc291cmNlIHR5cGUgYW5kIGEgY29uZmlndXJhdGlvbiBmb3IgdGhlIHJlc291cmNlIHR5cGVcblx0XHRcdFx0XHRpZiAoQXJyYXkuaXNBcnJheSh0eXBlKSkge1xuXHRcdFx0XHRcdFx0Y29uc3QgW3Jlc291cmNlLCBjb25maWddID0gdHlwZTtcblx0XHRcdFx0XHRcdHRoaXMucmVnaXN0ZXIodXJpLCByZXNvdXJjZSwgY29uZmlnKTtcblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0dGhpcy5yZWdpc3Rlcih1cmksIHR5cGUpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdHByb3RlY3RlZCByZXF1ZXN0KHVyaTogc3RyaW5nLCB7bWV0aG9kID0gJ0dFVCcsIHNlYXJjaCwgZGF0YX06IFBvdGlvblJlcXVlc3RPcHRpb25zID0ge30pOiBQcm9taXNlPGFueT4ge1xuXHRcdGxldCByZXF1ZXN0T3B0aW9ucyA9IG5ldyBSZXF1ZXN0T3B0aW9ucyh7XG5cdFx0XHRtZXRob2Q6IG1ldGhvZCBhcyBzdHJpbmcsXG5cdFx0XHR1cmw6IHVyaVxuXHRcdH0pO1xuXG5cdFx0Ly8gV2UgbmVlZCB0byBjb252ZXJ0IHRoZSB7Ym9keX0gdG8gcHJvcGVyIEpTT04gd2hlbiBtYWtpbmcgUE9TVCByZXF1ZXN0cy5cblx0XHRpZiAoZGF0YSkge1xuXHRcdFx0Y29uc3QgaGVhZGVycyA9IG5ldyBIZWFkZXJzKCk7XG5cdFx0XHQvLyBQb3Rpb24gYWxzbyBleHBlY3RzIGFsbCByZXF1ZXN0cyB0byBoYXZlIGNvbnRlbnQgdHlwZSBzZXQgdG8gJ2FwcGxpY2F0aW9uL2pzb24nLlxuXHRcdFx0aGVhZGVycy5zZXQoJ0NvbnRlbnQtVHlwZScsICdhcHBsaWNhdGlvbi9qc29uOyBjaGFyc2V0PXV0Zi04Jyk7XG5cdFx0XHRyZXF1ZXN0T3B0aW9ucyA9IHJlcXVlc3RPcHRpb25zLm1lcmdlKHtcblx0XHRcdFx0Ym9keTogSlNPTi5zdHJpbmdpZnkoZGF0YSksXG5cdFx0XHRcdGhlYWRlcnNcblx0XHRcdH0pO1xuXHRcdH1cblxuXHRcdC8vIENvbnZlcnQge3NlYXJjaH0gdG8gVVJMU2VhcmNoUGFyYW1zLlxuXHRcdGlmIChzZWFyY2gpIHtcblx0XHRcdGNvbnN0IHBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXMoJycsIG5ldyBQb3Rpb25RdWVyeUVuY29kZXIoKSk7XG5cblx0XHRcdGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIChPYmplY3QgYXMgYW55KS5lbnRyaWVzKHNlYXJjaCkpIHtcblx0XHRcdFx0Ly8gV2UgbmVlZCB0byBgZW5jb2RlVVJJQ29tcG9uZW50KClgIHdoZW4gd2UgaGF2ZSBjb21wbGV4IHNlYXJjaCBxdWVyaWVzLlxuXHRcdFx0XHQvLyBFLmcuIGBzZWFyY2g6IHt3aGVyZToge2ZvbzogMSwgYmFyOiAyfX1gLCB3aGVuIFVSTFNlYXJjaFBhcmFtcyB3aWxsIGJlIHNlbnQgd2l0aCB0aGUgcmVxdWVzdCxcblx0XHRcdFx0Ly8gaXQgd2lsbCBlbmQgdXAgYXMgYFtvYmplY3QgT2JqZWN0XWAsIHRodXMsIHdlIG5lZWQgdG8gZW5jb2RlIHRoZSB2YWx1ZS5cblx0XHRcdFx0cGFyYW1zLmFwcGVuZChrZXksIHZhbHVlKTtcblx0XHRcdH1cblxuXHRcdFx0cmVxdWVzdE9wdGlvbnMgPSByZXF1ZXN0T3B0aW9ucy5tZXJnZSh7XG5cdFx0XHRcdHNlYXJjaDogcGFyYW1zXG5cdFx0XHR9KTtcblx0XHR9XG5cblx0XHRyZXR1cm4gdGhpcy5odHRwLnJlcXVlc3QodXJpLCByZXF1ZXN0T3B0aW9ucylcblx0XHRcdC5tYXAoKHJlc3BvbnNlOiBhbnkpID0+IHtcblx0XHRcdFx0bGV0IGhlYWRlcnMgPSB7fTtcblx0XHRcdFx0bGV0IGRhdGE7XG5cblx0XHRcdFx0Ly8gSWYgYHJlc3BvbnNlYCBpcyBhIFJlc3BvbnNlIG9iamVjdCxcblx0XHRcdFx0Ly8gd2UgbWlnaHQgYWxzbyBoYXZlIGEgSGVhZGVycyBpbnN0YW5jZSB3aGljaCB3ZSBuZWVkIHRvIGNvbnZlcnQgaW50byBhbiBvYmplY3QuXG5cdFx0XHRcdC8vIE5PVEU6IHJlc3BvbnNlIGNhbiBhbHNvIGJlIG51bGwuXG5cdFx0XHRcdGlmIChyZXNwb25zZSBpbnN0YW5jZW9mIFJlc3BvbnNlKSB7XG5cdFx0XHRcdFx0aWYgKHJlc3BvbnNlLmhlYWRlcnMgaW5zdGFuY2VvZiBIZWFkZXJzKSB7XG5cdFx0XHRcdFx0XHRmb3IgKGNvbnN0IGtleSBvZiByZXNwb25zZS5oZWFkZXJzLmtleXMoKSkge1xuXHRcdFx0XHRcdFx0XHQvLyBBbmd1bGFyIDIgZG9lcyBub3QgeWV0IGxvd2VyY2FzZSBoZWFkZXJzLlxuXHRcdFx0XHRcdFx0XHQvLyBNYWtlIHN1cmUgd2UgZ2V0IHRoZSBmaXJzdCBzdHJpbmcgdmFsdWUgb2YgdGhlIGhlYWRlciBpbnN0ZWFkIG9mIHRoZSBhcnJheSBvZiB2YWx1ZXMuXG5cdFx0XHRcdFx0XHRcdGhlYWRlcnNba2V5LnRvTG93ZXJDYXNlKCldID0gcmVzcG9uc2UuaGVhZGVycy5nZXQoa2V5KTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0Ly8gTk9URTogaGVhZGVycyBtdXN0IGJlIGFuIG9iamVjdCxcblx0XHRcdFx0XHRcdC8vIHRodXMgdGhlIGZhbGxiYWNrLlxuXHRcdFx0XHRcdFx0aGVhZGVycyA9IHJlc3BvbnNlLmhlYWRlcnMgfHwge307XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC8vIFdlIGNhbm5vdCBwYXJzZSBhcyBKU09OIHdoZW4gdGhlcmUgaXMgYSByZXNwb25zZSB3aXRoIGVtcHR5IHRleHQgKGUuZy4gMjA0IE5PIENPTlRFTlQpLFxuXHRcdFx0XHRcdC8vIHRoZXJlZm9yZSwgd2Ugc2V0IHRoZSBkYXRhIHRvIG51bGwgdG8gYXZvaWQgZXhjZXB0aW9ucyBiZWluZyB0aHJvd24uXG5cdFx0XHRcdFx0aWYgKHJlc3BvbnNlLnRleHQoKS5sZW5ndGgpIHtcblx0XHRcdFx0XHRcdGRhdGEgPSByZXNwb25zZS5qc29uKCk7XG5cdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdGRhdGEgPSBudWxsO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRkYXRhID0gcmVzcG9uc2U7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRyZXR1cm4ge1xuXHRcdFx0XHRcdGhlYWRlcnMsXG5cdFx0XHRcdFx0ZGF0YVxuXHRcdFx0XHR9O1xuXHRcdFx0fSlcblx0XHRcdC50b1Byb21pc2UoKTtcblx0fVxuc3RhdGljIGRlY29yYXRvcnM6IERlY29yYXRvckludm9jYXRpb25bXSA9IFtcbnsgdHlwZTogSW5qZWN0YWJsZSB9LFxuXTtcbi8qKiBAbm9jb2xsYXBzZSAqL1xuc3RhdGljIGN0b3JQYXJhbWV0ZXJzOiAoKSA9PiAoe3R5cGU6IGFueSwgZGVjb3JhdG9ycz86IERlY29yYXRvckludm9jYXRpb25bXX18bnVsbClbXSA9ICgpID0+IFtcbnt0eXBlOiBIdHRwLCB9LFxue3R5cGU6IHVuZGVmaW5lZCwgZGVjb3JhdG9yczogW3sgdHlwZTogT3B0aW9uYWwgfSwgeyB0eXBlOiBJbmplY3QsIGFyZ3M6IFtQT1RJT05fQ09ORklHLCBdIH0sIF19LFxue3R5cGU6IHVuZGVmaW5lZCwgZGVjb3JhdG9yczogW3sgdHlwZTogT3B0aW9uYWwgfSwgeyB0eXBlOiBJbmplY3QsIGFyZ3M6IFtQT1RJT05fSFRUUCwgXSB9LCBdfSxcbl07XG59XG5cblxuZXhwb3J0IGZ1bmN0aW9uIFBPVElPTl9QUk9WSURFUl9GQUNUT1JZKHBhcmVudEZhY3Rvcnk6IFBvdGlvbiwgaHR0cDogSHR0cCwgY29uZmlnOiBQb3Rpb25Db25maWcsIGN1c3RvbUh0dHA6IFBvdGlvbkh0dHApOiBQb3Rpb24ge1xuXHRyZXR1cm4gcGFyZW50RmFjdG9yeSB8fCBuZXcgUG90aW9uKGh0dHAsIGNvbmZpZywgY3VzdG9tSHR0cCk7XG59XG5cbmV4cG9ydCBjb25zdCBQT1RJT05fUFJPVklERVI6IFByb3ZpZGVyID0ge1xuXHQvLyBJZiB0aGVyZSBpcyBhbHJlYWR5IGEgUG90aW9uIGF2YWlsYWJsZSwgdXNlIHRoYXQuXG5cdC8vIE90aGVyd2lzZSwgcHJvdmlkZSBhIG5ldyBvbmUuXG5cdHByb3ZpZGU6IFBvdGlvbixcblx0dXNlRmFjdG9yeTogUE9USU9OX1BST1ZJREVSX0ZBQ1RPUlksXG5cdGRlcHM6IFtcblx0XHRbbmV3IE9wdGlvbmFsKCksIG5ldyBTa2lwU2VsZigpLCBQb3Rpb25dLFxuXHRcdEh0dHAsXG5cdFx0W25ldyBPcHRpb25hbCgpLCBuZXcgSW5qZWN0KFBPVElPTl9DT05GSUcpXSxcblx0XHRbbmV3IE9wdGlvbmFsKCksIG5ldyBJbmplY3QoUE9USU9OX0hUVFApXVxuXHRdXG59O1xuXG5pbnRlcmZhY2UgRGVjb3JhdG9ySW52b2NhdGlvbiB7XG4gIHR5cGU6IEZ1bmN0aW9uO1xuICBhcmdzPzogYW55W107XG59XG4iXX0= |
@@ -13,2 +13,3 @@ "use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
// tslint:disable: max-classes-per-file | ||
var angular = require("angular"); | ||
@@ -58,2 +59,20 @@ var core_1 = require("./core"); | ||
}(core_1.PotionBase)); | ||
var AngularJsCache = (function () { | ||
function AngularJsCache() { | ||
} | ||
AngularJsCache.prototype.has = function (key) { | ||
return cache.get(key) !== undefined; | ||
}; | ||
AngularJsCache.prototype.get = function (key) { | ||
return cache.get(key); | ||
}; | ||
AngularJsCache.prototype.put = function (key, item) { | ||
cache.put(key, item); | ||
return cache.get(key); | ||
}; | ||
AngularJsCache.prototype.remove = function (key) { | ||
cache.remove(key); | ||
}; | ||
return AngularJsCache; | ||
}()); | ||
// Make sure Potion uses $q as the Promise implementation. | ||
@@ -65,3 +84,3 @@ // NOTE: This is necessary due to the nature of AngularJS change detection system. | ||
return new Potion(Object.assign({ | ||
cache: cache | ||
cache: new AngularJsCache() | ||
}, options)); | ||
@@ -72,2 +91,2 @@ }]; | ||
} | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9hbmd1bGFyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBLGlDQUFtQztBQUNuQywrQkFLZ0I7QUFDaEIsNENBQWlEO0FBR2pELCtCQUE2QztBQUFyQyxzQkFBQSxJQUFJLENBQUE7QUFBRSx1QkFBQSxLQUFLLENBQUE7QUFBRSwwQkFBQSxRQUFRLENBQUE7QUFHN0IsSUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDO0tBQ3pDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsY0FBYyxDQUFDLENBQUM7QUFpRDdCLHdCQUFNO0FBOUNkO0lBQ0MsSUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDO0lBRW5CLDRDQUE0QztJQUM1QyxJQUFJLENBQUMsTUFBTSxHQUFHLFVBQUMsTUFBcUI7UUFDbkMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUNaLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN2QyxDQUFDO1FBQUMsSUFBSSxDQUFDLENBQUM7WUFDUCxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQ2hCLENBQUM7SUFDRixDQUFDLENBQUM7SUFFRiw0Q0FBNEM7SUFDNUMsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLGVBQWUsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLFVBQUMsYUFBMkMsRUFBRSxFQUFxQixFQUFFLEtBQTJCO1lBQzVJLElBQU0sS0FBSyxHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBRXJFO2dCQUFxQiwwQkFBVTtnQkFBL0I7O2dCQVlBLENBQUM7Z0JBWEEsd0RBQXdEO2dCQUM5Qyx3QkFBTyxHQUFqQixVQUFrQixHQUFXLEVBQUUsRUFBaUU7d0JBQWpFLDRCQUFpRSxFQUFoRSxjQUFjLEVBQWQsbUNBQWMsRUFBRSxrQkFBTSxFQUFFLGNBQUksRUFBRSxhQUFZLEVBQVosaUNBQVk7b0JBQ3pFLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFDLEdBQUcsS0FBQSxFQUFFLE1BQU0sUUFBQSxFQUFFLElBQUksTUFBQSxFQUFFLEtBQUssT0FBQSxFQUFDLEVBQUUsRUFBQyxNQUFNLEVBQUUsTUFBTSxFQUFDLENBQUMsQ0FBQzt5QkFDdkUsSUFBSSxDQUFDLFVBQUMsRUFBZTs0QkFBZCxvQkFBTyxFQUFFLGNBQUk7d0JBQ3BCLElBQU0sUUFBUSxHQUFRLEVBQUMsSUFBSSxNQUFBLEVBQUMsQ0FBQzt3QkFDN0IsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQzs0QkFDYixRQUFRLENBQUMsT0FBTyxHQUFHLE9BQU8sRUFBRSxDQUFDO3dCQUM5QixDQUFDO3dCQUNELE1BQU0sQ0FBQyxRQUFRLENBQUM7b0JBQ2pCLENBQUMsQ0FBUSxDQUFDO2dCQUNaLENBQUM7Z0JBQ0YsYUFBQztZQUFELENBWkEsQUFZQyxDQVpvQixpQkFBVSxHQVk5QjtZQUVELDBEQUEwRDtZQUMxRCxrRkFBa0Y7WUFDbEYsMkJBQWdCLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBRTdCLDBEQUEwRDtZQUMxRCwyQkFBMkI7WUFDM0IsTUFBTSxDQUFDLElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7Z0JBQy9CLEtBQUssT0FBQTthQUNMLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUNkLENBQUMsQ0FBQyxDQUFDO0lBRUgsNENBQTRDO0lBQzVDLE1BQU0sQ0FBQyxJQUFJLENBQUM7QUFDYixDQUFDIiwiZmlsZSI6ImFuZ3VsYXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYW5ndWxhciBmcm9tICdhbmd1bGFyJztcbmltcG9ydCB7XG5cdFBvdGlvbkJhc2UsXG5cdFBvdGlvbk9wdGlvbnMsXG5cdFBvdGlvblJlc3BvbnNlLFxuXHRSZXF1ZXN0T3B0aW9uc1xufSBmcm9tICcuL2NvcmUnO1xuaW1wb3J0IHtzZXRQb3Rpb25Qcm9taXNlfSBmcm9tICcuL2NvcmUvbWV0YWRhdGEnO1xuXG5cbmV4cG9ydCB7SXRlbSwgUm91dGUsIHJlYWRvbmx5fSBmcm9tICcuL2NvcmUnO1xuXG5cbmNvbnN0IHBvdGlvbiA9IGFuZ3VsYXIubW9kdWxlKCdwb3Rpb24nLCBbXSlcblx0LnByb3ZpZGVyKCdwb3Rpb24nLCBwb3Rpb25Qcm92aWRlcik7XG5cblxuZnVuY3Rpb24gcG90aW9uUHJvdmlkZXIoKTogYW55IHtcblx0Y29uc3Qgb3B0aW9ucyA9IHt9O1xuXG5cdC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8taW52YWxpZC10aGlzXG5cdHRoaXMuY29uZmlnID0gKGNvbmZpZzogUG90aW9uT3B0aW9ucykgPT4ge1xuXHRcdGlmIChjb25maWcpIHtcblx0XHRcdHJldHVybiBPYmplY3QuYXNzaWduKG9wdGlvbnMsIGNvbmZpZyk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHJldHVybiBvcHRpb25zO1xuXHRcdH1cblx0fTtcblxuXHQvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLWludmFsaWQtdGhpc1xuXHR0aGlzLiRnZXQgPSBbJyRjYWNoZUZhY3RvcnknLCAnJHEnLCAnJGh0dHAnLCAoJGNhY2hlRmFjdG9yeTogYW5ndWxhci5JQ2FjaGVGYWN0b3J5U2VydmljZSwgJHE6IGFuZ3VsYXIuSVFTZXJ2aWNlLCAkaHR0cDogYW5ndWxhci5JSHR0cFNlcnZpY2UpOiBhbnkgPT4ge1xuXHRcdGNvbnN0IGNhY2hlID0gJGNhY2hlRmFjdG9yeS5nZXQoJ3BvdGlvbicpIHx8ICRjYWNoZUZhY3RvcnkoJ3BvdGlvbicpO1xuXG5cdFx0Y2xhc3MgUG90aW9uIGV4dGVuZHMgUG90aW9uQmFzZSB7XG5cdFx0XHQvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IHByZWZlci1mdW5jdGlvbi1vdmVyLW1ldGhvZFxuXHRcdFx0cHJvdGVjdGVkIHJlcXVlc3QodXJsOiBzdHJpbmcsIHttZXRob2QgPSAnR0VUJywgc2VhcmNoLCBkYXRhLCBjYWNoZSA9IHRydWV9OiBSZXF1ZXN0T3B0aW9ucyA9IHt9KTogUHJvbWlzZTxQb3Rpb25SZXNwb25zZT4ge1xuXHRcdFx0XHRyZXR1cm4gJGh0dHAoT2JqZWN0LmFzc2lnbih7dXJsLCBtZXRob2QsIGRhdGEsIGNhY2hlfSwge3BhcmFtczogc2VhcmNofSkpXG5cdFx0XHRcdFx0LnRoZW4oKHtoZWFkZXJzLCBkYXRhfSkgPT4ge1xuXHRcdFx0XHRcdFx0Y29uc3QgcmVzcG9uc2U6IGFueSA9IHtkYXRhfTtcblx0XHRcdFx0XHRcdGlmIChoZWFkZXJzKSB7XG5cdFx0XHRcdFx0XHRcdHJlc3BvbnNlLmhlYWRlcnMgPSBoZWFkZXJzKCk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRyZXR1cm4gcmVzcG9uc2U7XG5cdFx0XHRcdFx0fSkgYXMgYW55O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIE1ha2Ugc3VyZSBQb3Rpb24gdXNlcyAkcSBhcyB0aGUgUHJvbWlzZSBpbXBsZW1lbnRhdGlvbi5cblx0XHQvLyBOT1RFOiBUaGlzIGlzIG5lY2Vzc2FyeSBkdWUgdG8gdGhlIG5hdHVyZSBvZiBBbmd1bGFySlMgY2hhbmdlIGRldGVjdGlvbiBzeXN0ZW0uXG5cdFx0c2V0UG90aW9uUHJvbWlzZShQb3Rpb24sICRxKTtcblxuXHRcdC8vIFVzZSB0aGUgJGNhY2hlRmFjdG9yeSBhbmQgYWxsb3cgdXNlciB0byBvdmVycmlkZSBjYWNoZS5cblx0XHQvKiB0c2xpbnQ6ZGlzYWJsZTogYWxpZ24gKi9cblx0XHRyZXR1cm4gbmV3IFBvdGlvbihPYmplY3QuYXNzaWduKHtcblx0XHRcdGNhY2hlXG5cdFx0fSwgb3B0aW9ucykpO1xuXHR9XTtcblxuXHQvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLWludmFsaWQtdGhpc1xuXHRyZXR1cm4gdGhpcztcbn1cblxuXG5leHBvcnQge3BvdGlvbn07XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,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Q0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ25CLENBQUM7Z0JBQ0YscUJBQUM7WUFBRCxDQWZBLEFBZUMsSUFBQTtZQUVELDBEQUEwRDtZQUMxRCxrRkFBa0Y7WUFDbEYsMkJBQWdCLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBRTdCLDBEQUEwRDtZQUMxRCwyQkFBMkI7WUFDM0IsTUFBTSxDQUFDLElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUM7Z0JBQy9CLEtBQUssRUFBRSxJQUFJLGNBQWMsRUFBRTthQUMzQixFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDZCxDQUFDLENBQUMsQ0FBQztJQUVILDRDQUE0QztJQUM1QyxNQUFNLENBQUMsSUFBSSxDQUFDO0FBQ2IsQ0FBQyIsImZpbGUiOiJhbmd1bGFyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8vIHRzbGludDpkaXNhYmxlOiBtYXgtY2xhc3Nlcy1wZXItZmlsZVxuaW1wb3J0ICogYXMgYW5ndWxhciBmcm9tICdhbmd1bGFyJztcbmltcG9ydCB7XG5cdFBvdGlvbkJhc2UsXG5cdFBvdGlvbk9wdGlvbnMsXG5cdFBvdGlvblJlc3BvbnNlLFxuXHRSZXF1ZXN0T3B0aW9uc1xufSBmcm9tICcuL2NvcmUnO1xuaW1wb3J0IHtzZXRQb3Rpb25Qcm9taXNlfSBmcm9tICcuL2NvcmUvbWV0YWRhdGEnO1xuaW1wb3J0IHtJdGVtQ2FjaGV9IGZyb20gJy4vY29yZS9wb3Rpb24nO1xuaW1wb3J0IHtJdGVtfSBmcm9tICcuL2NvcmUvaXRlbSc7XG5cblxuZXhwb3J0IHtJdGVtLCBSb3V0ZSwgcmVhZG9ubHl9IGZyb20gJy4vY29yZSc7XG5cblxuY29uc3QgcG90aW9uID0gYW5ndWxhci5tb2R1bGUoJ3BvdGlvbicsIFtdKVxuXHQucHJvdmlkZXIoJ3BvdGlvbicsIHBvdGlvblByb3ZpZGVyKTtcblxuXG5mdW5jdGlvbiBwb3Rpb25Qcm92aWRlcigpOiBhbnkge1xuXHRjb25zdCBvcHRpb25zID0ge307XG5cblx0Ly8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1pbnZhbGlkLXRoaXNcblx0dGhpcy5jb25maWcgPSAoY29uZmlnOiBQb3Rpb25PcHRpb25zKSA9PiB7XG5cdFx0aWYgKGNvbmZpZykge1xuXHRcdFx0cmV0dXJuIE9iamVjdC5hc3NpZ24ob3B0aW9ucywgY29uZmlnKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0cmV0dXJuIG9wdGlvbnM7XG5cdFx0fVxuXHR9O1xuXG5cdC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8taW52YWxpZC10aGlzXG5cdHRoaXMuJGdldCA9IFsnJGNhY2hlRmFjdG9yeScsICckcScsICckaHR0cCcsICgkY2FjaGVGYWN0b3J5OiBhbmd1bGFyLklDYWNoZUZhY3RvcnlTZXJ2aWNlLCAkcTogYW5ndWxhci5JUVNlcnZpY2UsICRodHRwOiBhbmd1bGFyLklIdHRwU2VydmljZSk6IGFueSA9PiB7XG5cdFx0Y29uc3QgY2FjaGUgPSAkY2FjaGVGYWN0b3J5LmdldCgncG90aW9uJykgfHwgJGNhY2hlRmFjdG9yeSgncG90aW9uJyk7XG5cblx0XHRjbGFzcyBQb3Rpb24gZXh0ZW5kcyBQb3Rpb25CYXNlIHtcblx0XHRcdC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogcHJlZmVyLWZ1bmN0aW9uLW92ZXItbWV0aG9kXG5cdFx0XHRwcm90ZWN0ZWQgcmVxdWVzdCh1cmw6IHN0cmluZywge21ldGhvZCA9ICdHRVQnLCBzZWFyY2gsIGRhdGEsIGNhY2hlID0gdHJ1ZX06IFJlcXVlc3RPcHRpb25zID0ge30pOiBQcm9taXNlPFBvdGlvblJlc3BvbnNlPiB7XG5cdFx0XHRcdHJldHVybiAkaHR0cChPYmplY3QuYXNzaWduKHt1cmwsIG1ldGhvZCwgZGF0YSwgY2FjaGV9LCB7cGFyYW1zOiBzZWFyY2h9KSlcblx0XHRcdFx0XHQudGhlbigoe2hlYWRlcnMsIGRhdGF9KSA9PiB7XG5cdFx0XHRcdFx0XHRjb25zdCByZXNwb25zZTogYW55ID0ge2RhdGF9O1xuXHRcdFx0XHRcdFx0aWYgKGhlYWRlcnMpIHtcblx0XHRcdFx0XHRcdFx0cmVzcG9uc2UuaGVhZGVycyA9IGhlYWRlcnMoKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdHJldHVybiByZXNwb25zZTtcblx0XHRcdFx0XHR9KSBhcyBhbnk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Y2xhc3MgQW5ndWxhckpzQ2FjaGU8VCBleHRlbmRzIEl0ZW0+IGltcGxlbWVudHMgSXRlbUNhY2hlPFQ+IHtcblx0XHRcdGhhcyhrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRcdFx0XHRyZXR1cm4gY2FjaGUuZ2V0KGtleSkgIT09IHVuZGVmaW5lZDtcblx0XHRcdH1cblx0XHRcdGdldChrZXk6IHN0cmluZyk6IFByb21pc2U8VD4ge1xuXHRcdFx0XHRyZXR1cm4gY2FjaGUuZ2V0PFByb21pc2U8VD4+KGtleSk7XG5cdFx0XHR9XG5cdFx0XHRwdXQoa2V5OiBzdHJpbmcsIGl0ZW06IFByb21pc2U8VD4pOiBQcm9taXNlPFQ+IHtcblx0XHRcdFx0Y2FjaGUucHV0KGtleSwgaXRlbSk7XG5cdFx0XHRcdHJldHVybiBjYWNoZS5nZXQ8UHJvbWlzZTxUPj4oa2V5KTtcblx0XHRcdH1cblxuXHRcdFx0cmVtb3ZlKGtleTogc3RyaW5nKTogdm9pZCB7XG5cdFx0XHRcdGNhY2hlLnJlbW92ZShrZXkpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8vIE1ha2Ugc3VyZSBQb3Rpb24gdXNlcyAkcSBhcyB0aGUgUHJvbWlzZSBpbXBsZW1lbnRhdGlvbi5cblx0XHQvLyBOT1RFOiBUaGlzIGlzIG5lY2Vzc2FyeSBkdWUgdG8gdGhlIG5hdHVyZSBvZiBBbmd1bGFySlMgY2hhbmdlIGRldGVjdGlvbiBzeXN0ZW0uXG5cdFx0c2V0UG90aW9uUHJvbWlzZShQb3Rpb24sICRxKTtcblxuXHRcdC8vIFVzZSB0aGUgJGNhY2hlRmFjdG9yeSBhbmQgYWxsb3cgdXNlciB0byBvdmVycmlkZSBjYWNoZS5cblx0XHQvKiB0c2xpbnQ6ZGlzYWJsZTogYWxpZ24gKi9cblx0XHRyZXR1cm4gbmV3IFBvdGlvbihPYmplY3QuYXNzaWduKHtcblx0XHRcdGNhY2hlOiBuZXcgQW5ndWxhckpzQ2FjaGUoKVxuXHRcdH0sIG9wdGlvbnMpKTtcblx0fV07XG5cblx0Ly8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1pbnZhbGlkLXRoaXNcblx0cmV0dXJuIHRoaXM7XG59XG5cblxuZXhwb3J0IHtwb3Rpb259O1xuIl19 |
@@ -1,1 +0,1 @@ | ||
[{"__symbolic":"module","version":3,"metadata":{"potion":{"__symbolic":"error","message":"Reference to a non-exported function","line":17,"character":9,"context":{"name":"potionProvider"}}},"exports":[{"from":"./core","export":["Item","Route","readonly"]}]},{"__symbolic":"module","version":1,"metadata":{"potion":{"__symbolic":"error","message":"Reference to a non-exported function","line":17,"character":9,"context":{"name":"potionProvider"}}},"exports":[{"from":"./core","export":["Item","Route","readonly"]}]}] | ||
[{"__symbolic":"module","version":3,"metadata":{"potion":{"__symbolic":"error","message":"Reference to a non-exported function","line":20,"character":9,"context":{"name":"potionProvider"}}},"exports":[{"from":"./core","export":["Item","Route","readonly"]}]},{"__symbolic":"module","version":1,"metadata":{"potion":{"__symbolic":"error","message":"Reference to a non-exported function","line":20,"character":9,"context":{"name":"potionProvider"}}},"exports":[{"from":"./core","export":["Item","Route","readonly"]}]}] |
@@ -6,2 +6,2 @@ export { ItemOptions, Item } from './core/item'; | ||
export { Route, route } from './core/route'; | ||
export { isArray, isJsObject, isObjectEmpty, KeyMapper, omap, mapToObject, merge, toSnakeCase, toCamelCase, ValueMapper } from './utils'; | ||
export { isAPotionItem, isDate, isFunction, isJsObject, isObjectEmpty, KeyMapper, omap, mapToObject, merge, toCamelCase, toPotionJSON, toSnakeCase, ValueMapper } from './core/utils'; |
11
core.js
@@ -14,4 +14,6 @@ "use strict"; | ||
exports.route = route_1.route; | ||
var utils_1 = require("./utils"); | ||
exports.isArray = utils_1.isArray; | ||
var utils_1 = require("./core/utils"); | ||
exports.isAPotionItem = utils_1.isAPotionItem; | ||
exports.isDate = utils_1.isDate; | ||
exports.isFunction = utils_1.isFunction; | ||
exports.isJsObject = utils_1.isJsObject; | ||
@@ -22,4 +24,5 @@ exports.isObjectEmpty = utils_1.isObjectEmpty; | ||
exports.merge = utils_1.merge; | ||
exports.toCamelCase = utils_1.toCamelCase; | ||
exports.toPotionJSON = utils_1.toPotionJSON; | ||
exports.toSnakeCase = utils_1.toSnakeCase; | ||
exports.toCamelCase = utils_1.toCamelCase; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsb0NBQThDO0FBQXpCLHNCQUFBLElBQUksQ0FBQTtBQUN6Qiw0Q0FBeUM7QUFBakMsOEJBQUEsUUFBUSxDQUFBO0FBQ2hCLGdEQUFnRTtBQUFyQyxrQ0FBQSxVQUFVLENBQUE7QUFDckMsd0NBU3VCO0FBRHRCLDhCQUFBLFVBQVUsQ0FBQTtBQUVYLHNDQUEwQztBQUFsQyx3QkFBQSxLQUFLLENBQUE7QUFBRSx3QkFBQSxLQUFLLENBQUE7QUFDcEIsaUNBV2lCO0FBVmhCLDBCQUFBLE9BQU8sQ0FBQTtBQUNQLDZCQUFBLFVBQVUsQ0FBQTtBQUNWLGdDQUFBLGFBQWEsQ0FBQTtBQUViLHVCQUFBLElBQUksQ0FBQTtBQUNKLDhCQUFBLFdBQVcsQ0FBQTtBQUNYLHdCQUFBLEtBQUssQ0FBQTtBQUNMLDhCQUFBLFdBQVcsQ0FBQTtBQUNYLDhCQUFBLFdBQVcsQ0FBQSIsImZpbGUiOiJjb3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7SXRlbU9wdGlvbnMsIEl0ZW19IGZyb20gJy4vY29yZS9pdGVtJztcbmV4cG9ydCB7cmVhZG9ubHl9IGZyb20gJy4vY29yZS9tZXRhZGF0YSc7XG5leHBvcnQge1BhZ2luYXRpb25PcHRpb25zLCBQYWdpbmF0aW9ufSBmcm9tICcuL2NvcmUvcGFnaW5hdGlvbic7XG5leHBvcnQge1xuXHRJdGVtQ2FjaGUsXG5cdFVSTFNlYXJjaFBhcmFtcyxcblx0UmVxdWVzdE9wdGlvbnMsXG5cdEZldGNoT3B0aW9ucyxcblx0UXVlcnlPcHRpb25zLFxuXHRQb3Rpb25PcHRpb25zLFxuXHRQb3Rpb25SZXNwb25zZSxcblx0UG90aW9uQmFzZVxufSBmcm9tICcuL2NvcmUvcG90aW9uJztcbmV4cG9ydCB7Um91dGUsIHJvdXRlfSBmcm9tICcuL2NvcmUvcm91dGUnO1xuZXhwb3J0IHtcblx0aXNBcnJheSxcblx0aXNKc09iamVjdCxcblx0aXNPYmplY3RFbXB0eSxcblx0S2V5TWFwcGVyLFxuXHRvbWFwLFxuXHRtYXBUb09iamVjdCxcblx0bWVyZ2UsXG5cdHRvU25ha2VDYXNlLFxuXHR0b0NhbWVsQ2FzZSxcblx0VmFsdWVNYXBwZXJcbn0gZnJvbSAnLi91dGlscyc7XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsb0NBQThDO0FBQXpCLHNCQUFBLElBQUksQ0FBQTtBQUN6Qiw0Q0FBeUM7QUFBakMsOEJBQUEsUUFBUSxDQUFBO0FBQ2hCLGdEQUFnRTtBQUFyQyxrQ0FBQSxVQUFVLENBQUE7QUFDckMsd0NBU3VCO0FBRHRCLDhCQUFBLFVBQVUsQ0FBQTtBQUVYLHNDQUEwQztBQUFsQyx3QkFBQSxLQUFLLENBQUE7QUFBRSx3QkFBQSxLQUFLLENBQUE7QUFDcEIsc0NBY3NCO0FBYnJCLGdDQUFBLGFBQWEsQ0FBQTtBQUNiLHlCQUFBLE1BQU0sQ0FBQTtBQUNOLDZCQUFBLFVBQVUsQ0FBQTtBQUNWLDZCQUFBLFVBQVUsQ0FBQTtBQUNWLGdDQUFBLGFBQWEsQ0FBQTtBQUViLHVCQUFBLElBQUksQ0FBQTtBQUNKLDhCQUFBLFdBQVcsQ0FBQTtBQUNYLHdCQUFBLEtBQUssQ0FBQTtBQUNMLDhCQUFBLFdBQVcsQ0FBQTtBQUNYLCtCQUFBLFlBQVksQ0FBQTtBQUNaLDhCQUFBLFdBQVcsQ0FBQSIsImZpbGUiOiJjb3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7SXRlbU9wdGlvbnMsIEl0ZW19IGZyb20gJy4vY29yZS9pdGVtJztcbmV4cG9ydCB7cmVhZG9ubHl9IGZyb20gJy4vY29yZS9tZXRhZGF0YSc7XG5leHBvcnQge1BhZ2luYXRpb25PcHRpb25zLCBQYWdpbmF0aW9ufSBmcm9tICcuL2NvcmUvcGFnaW5hdGlvbic7XG5leHBvcnQge1xuXHRJdGVtQ2FjaGUsXG5cdFVSTFNlYXJjaFBhcmFtcyxcblx0UmVxdWVzdE9wdGlvbnMsXG5cdEZldGNoT3B0aW9ucyxcblx0UXVlcnlPcHRpb25zLFxuXHRQb3Rpb25PcHRpb25zLFxuXHRQb3Rpb25SZXNwb25zZSxcblx0UG90aW9uQmFzZVxufSBmcm9tICcuL2NvcmUvcG90aW9uJztcbmV4cG9ydCB7Um91dGUsIHJvdXRlfSBmcm9tICcuL2NvcmUvcm91dGUnO1xuZXhwb3J0IHtcblx0aXNBUG90aW9uSXRlbSxcblx0aXNEYXRlLFxuXHRpc0Z1bmN0aW9uLFxuXHRpc0pzT2JqZWN0LFxuXHRpc09iamVjdEVtcHR5LFxuXHRLZXlNYXBwZXIsXG5cdG9tYXAsXG5cdG1hcFRvT2JqZWN0LFxuXHRtZXJnZSxcblx0dG9DYW1lbENhc2UsXG5cdHRvUG90aW9uSlNPTixcblx0dG9TbmFrZUNhc2UsXG5cdFZhbHVlTWFwcGVyXG59IGZyb20gJy4vY29yZS91dGlscyc7XG4iXX0= |
@@ -1,1 +0,1 @@ | ||
[{"__symbolic":"module","version":3,"metadata":{},"exports":[{"from":"./core/item","export":["ItemOptions","Item"]},{"from":"./core/metadata","export":["readonly"]},{"from":"./core/pagination","export":["PaginationOptions","Pagination"]},{"from":"./core/potion","export":["ItemCache","URLSearchParams","RequestOptions","FetchOptions","QueryOptions","PotionOptions","PotionResponse","PotionBase"]},{"from":"./core/route","export":["Route","route"]},{"from":"./utils","export":["isArray","isJsObject","isObjectEmpty","KeyMapper","omap","mapToObject","merge","toSnakeCase","toCamelCase","ValueMapper"]}]},{"__symbolic":"module","version":1,"metadata":{},"exports":[{"from":"./core/item","export":["ItemOptions","Item"]},{"from":"./core/metadata","export":["readonly"]},{"from":"./core/pagination","export":["PaginationOptions","Pagination"]},{"from":"./core/potion","export":["ItemCache","URLSearchParams","RequestOptions","FetchOptions","QueryOptions","PotionOptions","PotionResponse","PotionBase"]},{"from":"./core/route","export":["Route","route"]},{"from":"./utils","export":["isArray","isJsObject","isObjectEmpty","KeyMapper","omap","mapToObject","merge","toSnakeCase","toCamelCase","ValueMapper"]}]}] | ||
[{"__symbolic":"module","version":3,"metadata":{},"exports":[{"from":"./core/item","export":["ItemOptions","Item"]},{"from":"./core/metadata","export":["readonly"]},{"from":"./core/pagination","export":["PaginationOptions","Pagination"]},{"from":"./core/potion","export":["ItemCache","URLSearchParams","RequestOptions","FetchOptions","QueryOptions","PotionOptions","PotionResponse","PotionBase"]},{"from":"./core/route","export":["Route","route"]},{"from":"./core/utils","export":["isAPotionItem","isDate","isFunction","isJsObject","isObjectEmpty","KeyMapper","omap","mapToObject","merge","toCamelCase","toPotionJSON","toSnakeCase","ValueMapper"]}]},{"__symbolic":"module","version":1,"metadata":{},"exports":[{"from":"./core/item","export":["ItemOptions","Item"]},{"from":"./core/metadata","export":["readonly"]},{"from":"./core/pagination","export":["PaginationOptions","Pagination"]},{"from":"./core/potion","export":["ItemCache","URLSearchParams","RequestOptions","FetchOptions","QueryOptions","PotionOptions","PotionResponse","PotionBase"]},{"from":"./core/route","export":["Route","route"]},{"from":"./core/utils","export":["isAPotionItem","isDate","isFunction","isJsObject","isObjectEmpty","KeyMapper","omap","mapToObject","merge","toCamelCase","toPotionJSON","toSnakeCase","ValueMapper"]}]}] |
@@ -52,3 +52,2 @@ import { FetchOptions, QueryOptions } from './potion'; | ||
private $id; | ||
private potion; | ||
/** | ||
@@ -55,0 +54,0 @@ * Create an instance of the class that extended the Item. |
@@ -37,3 +37,2 @@ "use strict"; | ||
this.$id = null; | ||
this.potion = metadata_1.potionInstance(this.constructor); | ||
Object.assign(this, properties); | ||
@@ -112,3 +111,3 @@ } | ||
Object.keys(this) | ||
.filter(function (key) { return !key.startsWith('$') && key !== 'potion' && !metadata_1.isReadonly(_this.constructor, key); }) | ||
.filter(function (key) { return !key.startsWith('$') && !metadata_1.isReadonly(_this.constructor, key); }) | ||
.forEach(function (key) { | ||
@@ -126,3 +125,5 @@ properties[key] = _this[key]; | ||
} | ||
return this.potion.fetch(metadata_1.potionURI(this.constructor), { | ||
var ctor = this.constructor; | ||
return metadata_1.potionInstance(ctor) | ||
.fetch(metadata_1.potionURI(ctor), { | ||
method: 'POST', | ||
@@ -139,3 +140,4 @@ data: this.toJSON(), | ||
if (data === void 0) { data = {}; } | ||
return this.potion.fetch(this.uri, { | ||
return metadata_1.potionInstance(this.constructor) | ||
.fetch(this.uri, { | ||
cache: true, | ||
@@ -151,4 +153,5 @@ method: 'PATCH', | ||
var uri = this.uri; | ||
var cache = this.potion.cache; | ||
return this.potion.fetch(uri, { method: 'DELETE' }) | ||
var potion = metadata_1.potionInstance(this.constructor); | ||
var cache = potion.cache; | ||
return potion.fetch(uri, { method: 'DELETE' }) | ||
.then(clearCache); | ||
@@ -165,2 +168,2 @@ function clearCache() { | ||
exports.Item = Item; | ||
//# sourceMappingURL=data:application/json;base64,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LEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNwQixLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ25CLENBQUM7UUFDRixDQUFDO0lBQ0YsQ0FBQztJQUNGLFdBQUM7QUFBRCxDQWpJQSxBQWlJQyxJQUFBO0FBaklxQixvQkFBSSIsImZpbGUiOiJpdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7aXNSZWFkb25seSwgcG90aW9uSW5zdGFuY2UsIHBvdGlvblVSSX0gZnJvbSAnLi9tZXRhZGF0YSc7XG5pbXBvcnQge0ZldGNoT3B0aW9ucywgUG90aW9uQmFzZSwgUXVlcnlPcHRpb25zfSBmcm9tICcuL3BvdGlvbic7XG5pbXBvcnQge1BhZ2luYXRpb259IGZyb20gJy4vcGFnaW5hdGlvbic7XG5cblxuZXhwb3J0IGludGVyZmFjZSBJdGVtT3B0aW9ucyB7XG5cdCdyZWFkb25seSc/OiBzdHJpbmdbXTtcbn1cblxuXG4vKipcbiAqIEJhc2UgcmVzb3VyY2UgY2xhc3MgZm9yIEFQSSByZXNvdXJjZXMuXG4gKiBFeHRlbmRpbmcgdGhpcyBjbGFzcyB3aWxsIG1ha2UgYWxsIHJlc291cmNlIG9wZXJhdGlvbnMgYXZhaWxhYmxlIG9uIHRoZSBjaGlsZCBjbGFzc2VzLlxuICogTk9URTogVGhpcyBpcyBhbiBhYnN0cmFjdCBjbGFzcyBhbmQgY2Fubm90IGJlIGRpcmVjdGx5IGluaXRpYXRlZC5cbiAqXG4gKiBAZXhhbXBsZVxuICogY2xhc3MgVXNlciBleHRlbmRzIEl0ZW0ge31cbiAqXG4gKiBVc2VyLmZldGNoKDEpLnRoZW4oKHVzZXIpID0+IHtcbiAqICAgICB1c2VyLnVwZGF0ZSh7bmFtZTogJ0pvaG4gRG9lJ30pO1xuICogfSk7XG4gKlxuICogY29uc3QgZnJlZCA9IG5ldyBVc2VyKHtuYW1lOiAnRnJlZCd9KTtcbiAqIGZyZWQuc2F2ZSgpO1xuICpcbiAqIGNvbnN0IGphbmUgPSBVc2VyLmZldGNoKDEpO1xuICogamFuZS50aGVuKChqYW5lKSA9PiB7XG4gKiAgICAgamFuZS5hbGlhcyA9ICdKb2UnO1xuICogICAgIGphbmUuc2F2ZSgpO1xuICogfSk7XG4gKlxuICogVXNlci5xdWVyeSgpLnRoZW4oKHVzZXJzKSA9PiB7XG4gKiAgICAgdXNlcnNbMF0uZGVzdHJveSgpO1xuICogfSk7XG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBJdGVtIHtcblx0LyoqXG5cdCAqIEdldCBhIHJlc291cmNlIGJ5IGlkLlxuXHQgKiBAcGFyYW0ge051bWJlcnxTdHJpbmd9IGlkXG5cdCAqIEBwYXJhbSB7Ym9vbGVhbn0ge2NhY2hlfSAtIFNldHRpbmcgaXQgdG8gYHRydWVgIHdpbGwgZW5zdXJlIHRoYXQgdGhlIGl0ZW0gd2lsbCBiZSBmZXRjaGVkIGZyb20gY2FjaGUgaWYgaXQgZXhpc3RzIGFuZCB0aGUgSFRUUCByZXF1ZXN0IGlzIGNhY2hlZC5cblx0ICovXG5cdHN0YXRpYyBmZXRjaDxUIGV4dGVuZHMgSXRlbT4oaWQ6IG51bWJlciB8IHN0cmluZywge2NhY2hlID0gdHJ1ZX06IEZldGNoT3B0aW9ucyA9IHt9KTogUHJvbWlzZTxUPiB7XG5cdFx0Y29uc3QgdXJpOiBzdHJpbmcgPSBwb3Rpb25VUkkodGhpcyk7XG5cdFx0cmV0dXJuIHBvdGlvbkluc3RhbmNlKHRoaXMpLmZldGNoKGAke3VyaX0vJHtpZH1gLCB7XG5cdFx0XHRtZXRob2Q6ICdHRVQnLFxuXHRcdFx0Y2FjaGVcblx0XHR9KTtcblx0fVxuXG5cdC8qKlxuXHQgKiBRdWVyeSByZXNvdXJjZXMuXG5cdCAqIEBwYXJhbSB7UXVlcnlPcHRpb25zfG51bGx9IHF1ZXJ5T3B0aW9ucyAtIENhbiBiZSB1c2VkIHRvIG1hbmlwdWxhdGUgdGhlIHBhZ2luYXRpb24gd2l0aCB7cGFnZTogbnVtYmVyLCBwZXJQYWdlOiBudW1iZXJ9LFxuXHQgKiBidXQgaXQgY2FuIGFsc28gYmUgdXNlZCB0byBmdXJ0aGVyIGZpbHRlciB0aGUgcmVzdWx0cyB3aXRoIHtzb3J0OiBhbnksIHdoZXJlOiBhbnl9LlxuXHQgKiBAcGFyYW0ge2Jvb2xlYW59IHtwYWdpbmF0ZX0gLSBTZXR0aW5nIHtwYWdpbmF0ZTogdHJ1ZX0gd2lsbCByZXN1bHQgaW4gdGhlIHJldHVybiB2YWx1ZSB0byBiZSBhIFBhZ2luYXRpb24gb2JqZWN0LlxuXHQgKiBAcGFyYW0ge2Jvb2xlYW59IHtjYWNoZX0gLSBDYWNoZSB0aGUgSFRUUCByZXF1ZXN0LlxuXHQgKi9cblx0c3RhdGljIHF1ZXJ5PFQgZXh0ZW5kcyBJdGVtPihxdWVyeU9wdGlvbnM/OiBRdWVyeU9wdGlvbnMgfCBudWxsLCB7cGFnaW5hdGUgPSBmYWxzZSwgY2FjaGUgPSB0cnVlfTogRmV0Y2hPcHRpb25zID0ge30pOiBQcm9taXNlPFRbXSB8IFBhZ2luYXRpb248VD4+IHtcblx0XHRjb25zdCB1cmk6IHN0cmluZyA9IHBvdGlvblVSSSh0aGlzKTtcblx0XHRyZXR1cm4gcG90aW9uSW5zdGFuY2UodGhpcykuZmV0Y2godXJpLCB7XG5cdFx0XHRtZXRob2Q6ICdHRVQnLFxuXHRcdFx0c2VhcmNoOiBxdWVyeU9wdGlvbnMsXG5cdFx0XHRwYWdpbmF0ZSxcblx0XHRcdGNhY2hlXG5cdFx0fSk7XG5cdH1cblxuXHQvKipcblx0ICogR2V0IHRoZSBmaXJzdCBpdGVtLlxuXHQgKi9cblx0c3RhdGljIGZpcnN0PFQgZXh0ZW5kcyBJdGVtPihxdWVyeU9wdGlvbnM/OiBRdWVyeU9wdGlvbnMpOiBQcm9taXNlPFQ+IHtcblx0XHRyZXR1cm4gdGhpcy5xdWVyeShxdWVyeU9wdGlvbnMpXG5cdFx0XHQudGhlbihmaXJzdCk7XG5cdFx0ZnVuY3Rpb24gZmlyc3QoaXRlbXM6IFRbXSk6IFQge1xuXHRcdFx0cmV0dXJuIGl0ZW1zWzBdO1xuXHRcdH1cblx0fVxuXG5cdHByaXZhdGUgJHVyaTogc3RyaW5nO1xuXHRwcml2YXRlICRpZDogbnVtYmVyIHwgc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cdHByaXZhdGUgcG90aW9uOiBQb3Rpb25CYXNlO1xuXG5cdC8qKlxuXHQgKiBDcmVhdGUgYW4gaW5zdGFuY2Ugb2YgdGhlIGNsYXNzIHRoYXQgZXh0ZW5kZWQgdGhlIEl0ZW0uXG5cdCAqIEBwYXJhbSB7T2JqZWN0fSBwcm9wZXJ0aWVzIC0gQW4gb2JqZWN0IHdpdGggYW55IHByb3BlcnRpZXMgdGhhdCB3aWxsIGJlIGFkZGVkIGFuZCBhY2Nlc3NpYmxlIG9uIHRoZSByZXNvdXJjZS5cblx0ICovXG5cdGNvbnN0cnVjdG9yKHByb3BlcnRpZXM6IGFueSA9IHt9KSB7XG5cdFx0dGhpcy5wb3Rpb24gPSBwb3Rpb25JbnN0YW5jZSh0aGlzLmNvbnN0cnVjdG9yIGFzIHR5cGVvZiBJdGVtKTtcblx0XHRPYmplY3QuYXNzaWduKHRoaXMsIHByb3BlcnRpZXMpO1xuXHR9XG5cblx0Z2V0IHVyaSgpOiBzdHJpbmcge1xuXHRcdHJldHVybiB0aGlzLiR1cmk7XG5cdH1cblx0Z2V0IGlkKCk6IG51bWJlciB8IHN0cmluZyB8IG51bGwge1xuXHRcdHJldHVybiB0aGlzLiRpZDtcblx0fVxuXG5cdC8qKlxuXHQgKiBDb21wYXJlIGN1cnJlbnQgcmVzb3VyY2Ugd2l0aCBhbm90aGVyIG9iamVjdC5cblx0ICogQHBhcmFtIHtPYmplY3R9IHJlc291cmNlXG5cdCAqL1xuXHRlcXVhbHMocmVzb3VyY2U6IGFueSk6IGJvb2xlYW4ge1xuXHRcdGlmIChyZXNvdXJjZSBpbnN0YW5jZW9mIEl0ZW0pIHtcblx0XHRcdHJldHVybiB0aGlzLmlkID09PSByZXNvdXJjZS5pZCAmJiB0aGlzLmNvbnN0cnVjdG9yLm5hbWUgPT09IHJlc291cmNlLmNvbnN0cnVjdG9yLm5hbWU7XG5cdFx0fVxuXHRcdHJldHVybiBmYWxzZTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZXQgdGhlIEpTT04gcmVwci4gb2YgdGhpcyBpdGVtLlxuXHQgKi9cblx0dG9KU09OKCk6IGFueSB7XG5cdFx0Y29uc3QgcHJvcGVydGllcyA9IHt9O1xuXG5cdFx0T2JqZWN0LmtleXModGhpcylcblx0XHRcdC5maWx0ZXIoa2V5ID0+ICFrZXkuc3RhcnRzV2l0aCgnJCcpICYmIGtleSAhPT0gJ3BvdGlvbicgJiYgIWlzUmVhZG9ubHkodGhpcy5jb25zdHJ1Y3Rvciwga2V5KSlcblx0XHRcdC5mb3JFYWNoKGtleSA9PiB7XG5cdFx0XHRcdHByb3BlcnRpZXNba2V5XSA9IHRoaXNba2V5XTtcblx0XHRcdH0pO1xuXG5cdFx0cmV0dXJuIHByb3BlcnRpZXM7XG5cdH1cblxuXHQvKipcblx0ICogU2F2ZSB0aGUgY3VycmVudCBpdGVtLlxuXHQgKi9cblx0c2F2ZSgpOiBQcm9taXNlPHRoaXM+IHtcblx0XHRpZiAodGhpcy51cmkgfHwgdGhpcy5pZCkge1xuXHRcdFx0cmV0dXJuIHRoaXMudXBkYXRlKHRoaXMudG9KU09OKCkpO1xuXHRcdH1cblx0XHRyZXR1cm4gdGhpcy5wb3Rpb24uZmV0Y2gocG90aW9uVVJJKHRoaXMuY29uc3RydWN0b3IgYXMgdHlwZW9mIEl0ZW0pLCB7XG5cdFx0XHRtZXRob2Q6ICdQT1NUJyxcblx0XHRcdGRhdGE6IHRoaXMudG9KU09OKCksXG5cdFx0XHRjYWNoZTogdHJ1ZVxuXHRcdH0pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFVwZGF0ZSB0aGUgcmVzb3VyY2UuXG5cdCAqIEBwYXJhbSB7T2JqZWN0fSBkYXRhIC0gQW4gb2JqZWN0IHdpdGggYW55IHByb3BlcnRpZXMgdG8gdXBkYXRlLlxuXHQgKi9cblx0dXBkYXRlKGRhdGE6IGFueSA9IHt9KTogUHJvbWlzZTx0aGlzPiB7XG5cdFx0cmV0dXJuIHRoaXMucG90aW9uLmZldGNoKHRoaXMudXJpLCB7XG5cdFx0XHRjYWNoZTogdHJ1ZSxcblx0XHRcdG1ldGhvZDogJ1BBVENIJyxcblx0XHRcdGRhdGFcblx0XHR9KTtcblx0fVxuXG5cdC8qKlxuXHQgKiBEZXN0cm95IHRoZSBjdXJyZW50IGl0ZW0uXG5cdCAqL1xuXHRkZXN0cm95KCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdGNvbnN0IHt1cml9ID0gdGhpcztcblx0XHRjb25zdCBjYWNoZSA9IHRoaXMucG90aW9uLmNhY2hlO1xuXHRcdHJldHVybiB0aGlzLnBvdGlvbi5mZXRjaCh1cmksIHttZXRob2Q6ICdERUxFVEUnfSlcblx0XHRcdC50aGVuKGNsZWFyQ2FjaGUpO1xuXHRcdGZ1bmN0aW9uIGNsZWFyQ2FjaGUoKTogdm9pZCB7XG5cdFx0XHQvLyBDbGVhciB0aGUgaXRlbSBmcm9tIGNhY2hlIGlmIGV4aXN0c1xuXHRcdFx0aWYgKGNhY2hlLmdldCh1cmkpKSB7XG5cdFx0XHRcdGNhY2hlLnJlbW92ZSh1cmkpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,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Q0FBc0M7WUFDdEMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3BCLEtBQUssQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDbkIsQ0FBQztRQUNGLENBQUM7SUFDRixDQUFDO0lBQ0YsV0FBQztBQUFELENBbklBLEFBbUlDLElBQUE7QUFuSXFCLG9CQUFJIiwiZmlsZSI6Iml0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtpc1JlYWRvbmx5LCBwb3Rpb25JbnN0YW5jZSwgcG90aW9uVVJJfSBmcm9tICcuL21ldGFkYXRhJztcbmltcG9ydCB7RmV0Y2hPcHRpb25zLCBRdWVyeU9wdGlvbnN9IGZyb20gJy4vcG90aW9uJztcbmltcG9ydCB7UGFnaW5hdGlvbn0gZnJvbSAnLi9wYWdpbmF0aW9uJztcblxuXG5leHBvcnQgaW50ZXJmYWNlIEl0ZW1PcHRpb25zIHtcblx0J3JlYWRvbmx5Jz86IHN0cmluZ1tdO1xufVxuXG5cbi8qKlxuICogQmFzZSByZXNvdXJjZSBjbGFzcyBmb3IgQVBJIHJlc291cmNlcy5cbiAqIEV4dGVuZGluZyB0aGlzIGNsYXNzIHdpbGwgbWFrZSBhbGwgcmVzb3VyY2Ugb3BlcmF0aW9ucyBhdmFpbGFibGUgb24gdGhlIGNoaWxkIGNsYXNzZXMuXG4gKiBOT1RFOiBUaGlzIGlzIGFuIGFic3RyYWN0IGNsYXNzIGFuZCBjYW5ub3QgYmUgZGlyZWN0bHkgaW5pdGlhdGVkLlxuICpcbiAqIEBleGFtcGxlXG4gKiBjbGFzcyBVc2VyIGV4dGVuZHMgSXRlbSB7fVxuICpcbiAqIFVzZXIuZmV0Y2goMSkudGhlbigodXNlcikgPT4ge1xuICogICAgIHVzZXIudXBkYXRlKHtuYW1lOiAnSm9obiBEb2UnfSk7XG4gKiB9KTtcbiAqXG4gKiBjb25zdCBmcmVkID0gbmV3IFVzZXIoe25hbWU6ICdGcmVkJ30pO1xuICogZnJlZC5zYXZlKCk7XG4gKlxuICogY29uc3QgamFuZSA9IFVzZXIuZmV0Y2goMSk7XG4gKiBqYW5lLnRoZW4oKGphbmUpID0+IHtcbiAqICAgICBqYW5lLmFsaWFzID0gJ0pvZSc7XG4gKiAgICAgamFuZS5zYXZlKCk7XG4gKiB9KTtcbiAqXG4gKiBVc2VyLnF1ZXJ5KCkudGhlbigodXNlcnMpID0+IHtcbiAqICAgICB1c2Vyc1swXS5kZXN0cm95KCk7XG4gKiB9KTtcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEl0ZW0ge1xuXHQvKipcblx0ICogR2V0IGEgcmVzb3VyY2UgYnkgaWQuXG5cdCAqIEBwYXJhbSB7TnVtYmVyfFN0cmluZ30gaWRcblx0ICogQHBhcmFtIHtib29sZWFufSB7Y2FjaGV9IC0gU2V0dGluZyBpdCB0byBgdHJ1ZWAgd2lsbCBlbnN1cmUgdGhhdCB0aGUgaXRlbSB3aWxsIGJlIGZldGNoZWQgZnJvbSBjYWNoZSBpZiBpdCBleGlzdHMgYW5kIHRoZSBIVFRQIHJlcXVlc3QgaXMgY2FjaGVkLlxuXHQgKi9cblx0c3RhdGljIGZldGNoPFQgZXh0ZW5kcyBJdGVtPihpZDogbnVtYmVyIHwgc3RyaW5nLCB7Y2FjaGUgPSB0cnVlfTogRmV0Y2hPcHRpb25zID0ge30pOiBQcm9taXNlPFQ+IHtcblx0XHRjb25zdCB1cmk6IHN0cmluZyA9IHBvdGlvblVSSSh0aGlzKTtcblx0XHRyZXR1cm4gcG90aW9uSW5zdGFuY2UodGhpcykuZmV0Y2goYCR7dXJpfS8ke2lkfWAsIHtcblx0XHRcdG1ldGhvZDogJ0dFVCcsXG5cdFx0XHRjYWNoZVxuXHRcdH0pO1xuXHR9XG5cblx0LyoqXG5cdCAqIFF1ZXJ5IHJlc291cmNlcy5cblx0ICogQHBhcmFtIHtRdWVyeU9wdGlvbnN8bnVsbH0gcXVlcnlPcHRpb25zIC0gQ2FuIGJlIHVzZWQgdG8gbWFuaXB1bGF0ZSB0aGUgcGFnaW5hdGlvbiB3aXRoIHtwYWdlOiBudW1iZXIsIHBlclBhZ2U6IG51bWJlcn0sXG5cdCAqIGJ1dCBpdCBjYW4gYWxzbyBiZSB1c2VkIHRvIGZ1cnRoZXIgZmlsdGVyIHRoZSByZXN1bHRzIHdpdGgge3NvcnQ6IGFueSwgd2hlcmU6IGFueX0uXG5cdCAqIEBwYXJhbSB7Ym9vbGVhbn0ge3BhZ2luYXRlfSAtIFNldHRpbmcge3BhZ2luYXRlOiB0cnVlfSB3aWxsIHJlc3VsdCBpbiB0aGUgcmV0dXJuIHZhbHVlIHRvIGJlIGEgUGFnaW5hdGlvbiBvYmplY3QuXG5cdCAqIEBwYXJhbSB7Ym9vbGVhbn0ge2NhY2hlfSAtIENhY2hlIHRoZSBIVFRQIHJlcXVlc3QuXG5cdCAqL1xuXHRzdGF0aWMgcXVlcnk8VCBleHRlbmRzIEl0ZW0+KHF1ZXJ5T3B0aW9ucz86IFF1ZXJ5T3B0aW9ucyB8IG51bGwsIHtwYWdpbmF0ZSA9IGZhbHNlLCBjYWNoZSA9IHRydWV9OiBGZXRjaE9wdGlvbnMgPSB7fSk6IFByb21pc2U8VFtdIHwgUGFnaW5hdGlvbjxUPj4ge1xuXHRcdGNvbnN0IHVyaTogc3RyaW5nID0gcG90aW9uVVJJKHRoaXMpO1xuXHRcdHJldHVybiBwb3Rpb25JbnN0YW5jZSh0aGlzKS5mZXRjaCh1cmksIHtcblx0XHRcdG1ldGhvZDogJ0dFVCcsXG5cdFx0XHRzZWFyY2g6IHF1ZXJ5T3B0aW9ucyxcblx0XHRcdHBhZ2luYXRlLFxuXHRcdFx0Y2FjaGVcblx0XHR9KTtcblx0fVxuXG5cdC8qKlxuXHQgKiBHZXQgdGhlIGZpcnN0IGl0ZW0uXG5cdCAqL1xuXHRzdGF0aWMgZmlyc3Q8VCBleHRlbmRzIEl0ZW0+KHF1ZXJ5T3B0aW9ucz86IFF1ZXJ5T3B0aW9ucyk6IFByb21pc2U8VD4ge1xuXHRcdHJldHVybiB0aGlzLnF1ZXJ5KHF1ZXJ5T3B0aW9ucylcblx0XHRcdC50aGVuKGZpcnN0KTtcblx0XHRmdW5jdGlvbiBmaXJzdChpdGVtczogVFtdKTogVCB7XG5cdFx0XHRyZXR1cm4gaXRlbXNbMF07XG5cdFx0fVxuXHR9XG5cblx0cHJpdmF0ZSAkdXJpOiBzdHJpbmc7XG5cdHByaXZhdGUgJGlkOiBudW1iZXIgfCBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuXHQvKipcblx0ICogQ3JlYXRlIGFuIGluc3RhbmNlIG9mIHRoZSBjbGFzcyB0aGF0IGV4dGVuZGVkIHRoZSBJdGVtLlxuXHQgKiBAcGFyYW0ge09iamVjdH0gcHJvcGVydGllcyAtIEFuIG9iamVjdCB3aXRoIGFueSBwcm9wZXJ0aWVzIHRoYXQgd2lsbCBiZSBhZGRlZCBhbmQgYWNjZXNzaWJsZSBvbiB0aGUgcmVzb3VyY2UuXG5cdCAqL1xuXHRjb25zdHJ1Y3Rvcihwcm9wZXJ0aWVzOiBhbnkgPSB7fSkge1xuXHRcdE9iamVjdC5hc3NpZ24odGhpcywgcHJvcGVydGllcyk7XG5cdH1cblxuXHRnZXQgdXJpKCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIHRoaXMuJHVyaTtcblx0fVxuXHRnZXQgaWQoKTogbnVtYmVyIHwgc3RyaW5nIHwgbnVsbCB7XG5cdFx0cmV0dXJuIHRoaXMuJGlkO1xuXHR9XG5cblx0LyoqXG5cdCAqIENvbXBhcmUgY3VycmVudCByZXNvdXJjZSB3aXRoIGFub3RoZXIgb2JqZWN0LlxuXHQgKiBAcGFyYW0ge09iamVjdH0gcmVzb3VyY2Vcblx0ICovXG5cdGVxdWFscyhyZXNvdXJjZTogYW55KTogYm9vbGVhbiB7XG5cdFx0aWYgKHJlc291cmNlIGluc3RhbmNlb2YgSXRlbSkge1xuXHRcdFx0cmV0dXJuIHRoaXMuaWQgPT09IHJlc291cmNlLmlkICYmIHRoaXMuY29uc3RydWN0b3IubmFtZSA9PT0gcmVzb3VyY2UuY29uc3RydWN0b3IubmFtZTtcblx0XHR9XG5cdFx0cmV0dXJuIGZhbHNlO1xuXHR9XG5cblx0LyoqXG5cdCAqIEdldCB0aGUgSlNPTiByZXByLiBvZiB0aGlzIGl0ZW0uXG5cdCAqL1xuXHR0b0pTT04oKTogYW55IHtcblx0XHRjb25zdCBwcm9wZXJ0aWVzID0ge307XG5cblx0XHRPYmplY3Qua2V5cyh0aGlzKVxuXHRcdFx0LmZpbHRlcihrZXkgPT4gIWtleS5zdGFydHNXaXRoKCckJykgJiYgIWlzUmVhZG9ubHkodGhpcy5jb25zdHJ1Y3Rvciwga2V5KSlcblx0XHRcdC5mb3JFYWNoKGtleSA9PiB7XG5cdFx0XHRcdHByb3BlcnRpZXNba2V5XSA9IHRoaXNba2V5XTtcblx0XHRcdH0pO1xuXG5cdFx0cmV0dXJuIHByb3BlcnRpZXM7XG5cdH1cblxuXHQvKipcblx0ICogU2F2ZSB0aGUgY3VycmVudCBpdGVtLlxuXHQgKi9cblx0c2F2ZSgpOiBQcm9taXNlPHRoaXM+IHtcblx0XHRpZiAodGhpcy51cmkgfHwgdGhpcy5pZCkge1xuXHRcdFx0cmV0dXJuIHRoaXMudXBkYXRlKHRoaXMudG9KU09OKCkpO1xuXHRcdH1cblx0XHRjb25zdCBjdG9yID0gdGhpcy5jb25zdHJ1Y3RvciBhcyB0eXBlb2YgSXRlbTtcblx0XHRyZXR1cm4gcG90aW9uSW5zdGFuY2UoY3Rvcilcblx0XHRcdC5mZXRjaChwb3Rpb25VUkkoY3RvciksIHtcblx0XHRcdG1ldGhvZDogJ1BPU1QnLFxuXHRcdFx0ZGF0YTogdGhpcy50b0pTT04oKSxcblx0XHRcdGNhY2hlOiB0cnVlXG5cdFx0fSk7XG5cdH1cblxuXHQvKipcblx0ICogVXBkYXRlIHRoZSByZXNvdXJjZS5cblx0ICogQHBhcmFtIHtPYmplY3R9IGRhdGEgLSBBbiBvYmplY3Qgd2l0aCBhbnkgcHJvcGVydGllcyB0byB1cGRhdGUuXG5cdCAqL1xuXHR1cGRhdGUoZGF0YTogYW55ID0ge30pOiBQcm9taXNlPHRoaXM+IHtcblx0XHRyZXR1cm4gcG90aW9uSW5zdGFuY2UodGhpcy5jb25zdHJ1Y3RvciBhcyB0eXBlb2YgSXRlbSlcblx0XHRcdC5mZXRjaCh0aGlzLnVyaSwge1xuXHRcdFx0Y2FjaGU6IHRydWUsXG5cdFx0XHRtZXRob2Q6ICdQQVRDSCcsXG5cdFx0XHRkYXRhXG5cdFx0fSk7XG5cdH1cblxuXHQvKipcblx0ICogRGVzdHJveSB0aGUgY3VycmVudCBpdGVtLlxuXHQgKi9cblx0ZGVzdHJveSgpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRjb25zdCB7dXJpfSA9IHRoaXM7XG5cdFx0Y29uc3QgcG90aW9uID0gcG90aW9uSW5zdGFuY2UodGhpcy5jb25zdHJ1Y3RvciBhcyB0eXBlb2YgSXRlbSk7XG5cdFx0Y29uc3QgY2FjaGUgPSBwb3Rpb24uY2FjaGU7XG5cdFx0cmV0dXJuIHBvdGlvbi5mZXRjaCh1cmksIHttZXRob2Q6ICdERUxFVEUnfSlcblx0XHRcdC50aGVuKGNsZWFyQ2FjaGUpO1xuXHRcdGZ1bmN0aW9uIGNsZWFyQ2FjaGUoKTogdm9pZCB7XG5cdFx0XHQvLyBDbGVhciB0aGUgaXRlbSBmcm9tIGNhY2hlIGlmIGV4aXN0c1xuXHRcdFx0aWYgKGNhY2hlLmdldCh1cmkpKSB7XG5cdFx0XHRcdGNhY2hlLnJlbW92ZSh1cmkpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIl19 |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
var utils_1 = require("./utils"); | ||
var Reflect = window.Reflect; // tslint:disable-line:variable-name | ||
@@ -65,5 +66,5 @@ // Make sure Reflect API is available, | ||
function readonly(target, property) { | ||
var constructor = typeof target === 'function' | ||
var constructor = utils_1.isFunction(target) | ||
? target | ||
: typeof target.constructor === 'function' | ||
: utils_1.isFunction(target.constructor) | ||
? target.constructor | ||
@@ -81,2 +82,2 @@ : null; | ||
exports.readonly = readonly; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb3JlL21ldGFkYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBSUEsSUFBTSxPQUFPLEdBQUksTUFBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLG9DQUFvQztBQUU3RSxzQ0FBc0M7QUFDdEMsNEJBQTRCO0FBQzVCLHlJQUF5STtBQUN6SSxnREFBZ0Q7QUFDaEQsQ0FBQztJQUNBLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN2QyxNQUFNLElBQUksS0FBSyxDQUFDLG9GQUFvRixDQUFDLENBQUM7SUFDdkcsQ0FBQztBQUNGLENBQUMsQ0FBQyxFQUFFLENBQUM7QUFHTCxJQUFNLG1CQUFtQixHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUM3Qyx3QkFBK0IsSUFBaUI7SUFDL0MsTUFBTSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDMUQsQ0FBQztBQUZELHdDQUVDO0FBQ0Qsd0NBQStDLElBQWlCLEVBQUUsUUFBYTtJQUM5RSxPQUFPLENBQUMsY0FBYyxDQUFDLG1CQUFtQixFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztBQUM3RCxDQUFDO0FBRkQsd0VBRUM7QUFHRCxJQUFNLHVCQUF1QixHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztBQUNyRCxtQkFBMEIsSUFBaUI7SUFDMUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsdUJBQXVCLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDOUQsQ0FBQztBQUZELDhCQUVDO0FBQ0QsbUNBQTBDLElBQWlCLEVBQUUsR0FBVztJQUN2RSxPQUFPLENBQUMsY0FBYyxDQUFDLHVCQUF1QixFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztBQUM1RCxDQUFDO0FBRkQsOERBRUM7QUFHRDs7Ozs7Ozs7R0FRRztBQUNILElBQU0sMkJBQTJCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFDN0QsdUJBQThCLE1BQWtCO0lBQy9DLE1BQU0sQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLDJCQUEyQixFQUFFLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxPQUFPLENBQUM7QUFDM0YsQ0FBQztBQUZELHNDQUVDO0FBQ0QsMEJBQWlDLElBQXVCLEVBQUUsT0FBWTtJQUNyRSxPQUFPLENBQUMsY0FBYyxDQUFDLDJCQUEyQixFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztBQUNwRSxDQUFDO0FBRkQsNENBRUM7QUFHRCxJQUFNLHFCQUFxQixHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0FBQ3hELG9CQUEyQixJQUFTLEVBQUUsR0FBVztJQUNoRCxJQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsY0FBYyxDQUFDLHFCQUFxQixFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3JFLE1BQU0sQ0FBQyxRQUFRLElBQUksUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ2xDLENBQUM7QUFIRCxnQ0FHQztBQUVEOzs7Ozs7OztHQVFHO0FBQ0gsa0JBQXlCLE1BQVcsRUFBRSxRQUFnQjtJQUNyRCxJQUFNLFdBQVcsR0FBRyxPQUFPLE1BQU0sS0FBSyxVQUFVO1VBQzdDLE1BQU07VUFDTixPQUFPLE1BQU0sQ0FBQyxXQUFXLEtBQUssVUFBVTtjQUN2QyxNQUFNLENBQUMsV0FBVztjQUNsQixJQUFJLENBQUM7SUFFVCxFQUFFLENBQUMsQ0FBQyxXQUFXLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMxQixrQ0FBa0M7UUFDbEMsTUFBTSxDQUFDO0lBQ1IsQ0FBQztJQUVELE9BQU8sQ0FBQyxjQUFjLENBQ3JCLHFCQUFxQixFQUNyQixNQUFNLENBQUMsTUFBTSxDQUNaLE9BQU8sQ0FBQyxjQUFjLENBQUMscUJBQXFCLEVBQUUsV0FBVyxDQUFDLElBQUksRUFBRTtRQUUvRCxHQUFDLFFBQVEsSUFBRyxJQUFJO1lBRWpCLEVBQ0QsV0FBVyxDQUNYLENBQUM7O0FBQ0gsQ0FBQztBQXRCRCw0QkFzQkMiLCJmaWxlIjoibWV0YWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtQb3Rpb25CYXNlfSBmcm9tICcuL3BvdGlvbic7XG5pbXBvcnQge0l0ZW19IGZyb20gJy4vaXRlbSc7XG5cblxuY29uc3QgUmVmbGVjdCA9ICh3aW5kb3cgYXMgYW55KS5SZWZsZWN0OyAvLyB0c2xpbnQ6ZGlzYWJsZS1saW5lOnZhcmlhYmxlLW5hbWVcblxuLy8gTWFrZSBzdXJlIFJlZmxlY3QgQVBJIGlzIGF2YWlsYWJsZSxcbi8vIG90aGVyd2lzZSB0aHJvdyBhbiBlcnJvci5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2Jsb2IvNjA3MjdjNGQyYmExZTRiMGI5NDU1Yzc2N2QwZWYxNTJiY2VkYzdjMi9tb2R1bGVzL2FuZ3VsYXIyL3NyYy9jb3JlL3V0aWwvZGVjb3JhdG9ycy50cyNMMjQzXG4vLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6b25seS1hcnJvdy1mdW5jdGlvbnNcbihmdW5jdGlvbiBjaGVja1JlZmxlY3QoKTogdm9pZCB7XG5cdGlmICghKFJlZmxlY3QgJiYgUmVmbGVjdC5nZXRNZXRhZGF0YSkpIHtcblx0XHR0aHJvdyBuZXcgRXJyb3IoJ0RlcGVuZGVuY3kgZXJyb3IuIHJlZmxlY3QtbWV0YWRhdGEgc2hpbSBpcyByZXF1aXJlZCB3aGVuIHVzaW5nIHBvdGlvbi1ub2RlIGxpYnJhcnknKTtcblx0fVxufSkoKTtcblxuXG5jb25zdCBQT1RJT05fTUVUQURBVEFfS0VZID0gU3ltYm9sKCdwb3Rpb24nKTtcbmV4cG9ydCBmdW5jdGlvbiBwb3Rpb25JbnN0YW5jZShjdG9yOiB0eXBlb2YgSXRlbSk6IFBvdGlvbkJhc2Uge1xuXHRyZXR1cm4gUmVmbGVjdC5nZXRPd25NZXRhZGF0YShQT1RJT05fTUVUQURBVEFfS0VZLCBjdG9yKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBkZWNvcmF0ZUN0b3JXaXRoUG90aW9uSW5zdGFuY2UoY3RvcjogdHlwZW9mIEl0ZW0sIGluc3RhbmNlOiBhbnkpOiB2b2lkIHtcblx0UmVmbGVjdC5kZWZpbmVNZXRhZGF0YShQT1RJT05fTUVUQURBVEFfS0VZLCBpbnN0YW5jZSwgY3Rvcik7XG59XG5cblxuY29uc3QgUE9USU9OX1VSSV9NRVRBREFUQV9LRVkgPSBTeW1ib2woJ3BvdGlvbjp1cmknKTtcbmV4cG9ydCBmdW5jdGlvbiBwb3Rpb25VUkkoY3RvcjogdHlwZW9mIEl0ZW0pOiBzdHJpbmcge1xuXHRyZXR1cm4gUmVmbGVjdC5nZXRPd25NZXRhZGF0YShQT1RJT05fVVJJX01FVEFEQVRBX0tFWSwgY3Rvcik7XG59XG5leHBvcnQgZnVuY3Rpb24gZGVjb3JhdGVDdG9yV2l0aFBvdGlvblVSSShjdG9yOiB0eXBlb2YgSXRlbSwgdXJpOiBzdHJpbmcpOiB2b2lkIHtcblx0UmVmbGVjdC5kZWZpbmVNZXRhZGF0YShQT1RJT05fVVJJX01FVEFEQVRBX0tFWSwgdXJpLCBjdG9yKTtcbn1cblxuXG4vKipcbiAqIEdldC9TZXQgdGhlIFByb21pc2UgaW1wbGVtZW50YXRpb24gdGhhdCBzaG91bGQgYmUgdXNlZCBieSBQb3Rpb24uXG4gKiBOT1RFOiBJZiBpdCBpcyBuZXZlciBzZXQsIGl0IHdpbGwgZmFsbGJhY2sgdG8gdXNpbmcgdGhlIG5hdGl2ZSBpbXBsZW1lbnRhdGlvbiBvZiBQcm9taXNlLlxuICogQGV4YW1wbGVcbiAqIGNsYXNzIFBvdGlvbiBleHRlbmRzIFBvdGlvbkJhc2Uge1xuICogICAgIC4uLlxuICogfVxuICogc2V0UG90aW9uUHJvbWlzZShQb3Rpb24sIC4uLiBzb21lIGltcGwuIG9mIGEgUHJvbWlzZSk7XG4gKi9cbmNvbnN0IFBPVElPTl9QUk9NSVNFX01FVEFEQVRBX0tFWSA9IFN5bWJvbCgncG90aW9uOnByb21pc2UnKTtcbmV4cG9ydCBmdW5jdGlvbiBwb3Rpb25Qcm9taXNlKHBvdGlvbjogUG90aW9uQmFzZSk6IHR5cGVvZiBQcm9taXNlIHtcblx0cmV0dXJuIFJlZmxlY3QuZ2V0T3duTWV0YWRhdGEoUE9USU9OX1BST01JU0VfTUVUQURBVEFfS0VZLCBwb3Rpb24uY29uc3RydWN0b3IpIHx8IFByb21pc2U7XG59XG5leHBvcnQgZnVuY3Rpb24gc2V0UG90aW9uUHJvbWlzZShjdG9yOiB0eXBlb2YgUG90aW9uQmFzZSwgcHJvbWlzZTogYW55KTogdm9pZCB7XG5cdFJlZmxlY3QuZGVmaW5lTWV0YWRhdGEoUE9USU9OX1BST01JU0VfTUVUQURBVEFfS0VZLCBwcm9taXNlLCBjdG9yKTtcbn1cblxuXG5jb25zdCBSRUFET05MWV9NRVRBREFUQV9LRVkgPSBTeW1ib2woJ3BvdGlvbjpyZWFkb25seScpO1xuZXhwb3J0IGZ1bmN0aW9uIGlzUmVhZG9ubHkoY3RvcjogYW55LCBrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuXHRjb25zdCBtZXRhZGF0YSA9IFJlZmxlY3QuZ2V0T3duTWV0YWRhdGEoUkVBRE9OTFlfTUVUQURBVEFfS0VZLCBjdG9yKTtcblx0cmV0dXJuIG1ldGFkYXRhICYmIG1ldGFkYXRhW2tleV07XG59XG5cbi8qKlxuICogTWFyayBhIHJlc291cmNlIHByb3BlcnR5IGFzIHJlYWRvbmx5IGFuZCBvbWl0IHdoZW4gc2F2ZWQuXG4gKlxuICogQGV4YW1wbGVcbiAqIGNsYXNzIFVzZXIgZXh0ZW5kcyBJdGVtIHtcbiAqICAgICBAcmVhZG9ubHlcbiAqICAgICBhZ2U7XG4gKiB9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWFkb25seSh0YXJnZXQ6IGFueSwgcHJvcGVydHk6IHN0cmluZyk6IHZvaWQge1xuXHRjb25zdCBjb25zdHJ1Y3RvciA9IHR5cGVvZiB0YXJnZXQgPT09ICdmdW5jdGlvbidcblx0XHQ/IHRhcmdldFxuXHRcdDogdHlwZW9mIHRhcmdldC5jb25zdHJ1Y3RvciA9PT0gJ2Z1bmN0aW9uJ1xuXHRcdFx0PyB0YXJnZXQuY29uc3RydWN0b3Jcblx0XHRcdDogbnVsbDtcblxuXHRpZiAoY29uc3RydWN0b3IgPT09IG51bGwpIHtcblx0XHQvLyBUT0RPOiBtYXliZSB0aHJvdyBhbiBlcnJvciBoZXJlXG5cdFx0cmV0dXJuO1xuXHR9XG5cblx0UmVmbGVjdC5kZWZpbmVNZXRhZGF0YShcblx0XHRSRUFET05MWV9NRVRBREFUQV9LRVksXG5cdFx0T2JqZWN0LmFzc2lnbihcblx0XHRcdFJlZmxlY3QuZ2V0T3duTWV0YWRhdGEoUkVBRE9OTFlfTUVUQURBVEFfS0VZLCBjb25zdHJ1Y3RvcikgfHwge30sXG5cdFx0XHR7XG5cdFx0XHRcdFtwcm9wZXJ0eV06IHRydWVcblx0XHRcdH1cblx0XHQpLFxuXHRcdGNvbnN0cnVjdG9yXG5cdCk7XG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb3JlL21ldGFkYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsaUNBQW1DO0FBS25DLElBQU0sT0FBTyxHQUFJLE1BQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxvQ0FBb0M7QUFFN0Usc0NBQXNDO0FBQ3RDLDRCQUE0QjtBQUM1Qix5SUFBeUk7QUFDekksZ0RBQWdEO0FBQ2hELENBQUM7SUFDQSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvRkFBb0YsQ0FBQyxDQUFDO0lBQ3ZHLENBQUM7QUFDRixDQUFDLENBQUMsRUFBRSxDQUFDO0FBR0wsSUFBTSxtQkFBbUIsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDN0Msd0JBQStCLElBQWlCO0lBQy9DLE1BQU0sQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLG1CQUFtQixFQUFFLElBQUksQ0FBQyxDQUFDO0FBQzFELENBQUM7QUFGRCx3Q0FFQztBQUNELHdDQUErQyxJQUFpQixFQUFFLFFBQWE7SUFDOUUsT0FBTyxDQUFDLGNBQWMsQ0FBQyxtQkFBbUIsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDN0QsQ0FBQztBQUZELHdFQUVDO0FBR0QsSUFBTSx1QkFBdUIsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7QUFDckQsbUJBQTBCLElBQWlCO0lBQzFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLHVCQUF1QixFQUFFLElBQUksQ0FBQyxDQUFDO0FBQzlELENBQUM7QUFGRCw4QkFFQztBQUNELG1DQUEwQyxJQUFpQixFQUFFLEdBQVc7SUFDdkUsT0FBTyxDQUFDLGNBQWMsQ0FBQyx1QkFBdUIsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDNUQsQ0FBQztBQUZELDhEQUVDO0FBR0Q7Ozs7Ozs7O0dBUUc7QUFDSCxJQUFNLDJCQUEyQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0FBQzdELHVCQUE4QixNQUFrQjtJQUMvQyxNQUFNLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQywyQkFBMkIsRUFBRSxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksT0FBTyxDQUFDO0FBQzNGLENBQUM7QUFGRCxzQ0FFQztBQUNELDBCQUFpQyxJQUF1QixFQUFFLE9BQVk7SUFDckUsT0FBTyxDQUFDLGNBQWMsQ0FBQywyQkFBMkIsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDcEUsQ0FBQztBQUZELDRDQUVDO0FBR0QsSUFBTSxxQkFBcUIsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztBQUN4RCxvQkFBMkIsSUFBUyxFQUFFLEdBQVc7SUFDaEQsSUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDLGNBQWMsQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNyRSxNQUFNLENBQUMsUUFBUSxJQUFJLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNsQyxDQUFDO0FBSEQsZ0NBR0M7QUFFRDs7Ozs7Ozs7R0FRRztBQUNILGtCQUF5QixNQUFXLEVBQUUsUUFBZ0I7SUFDckQsSUFBTSxXQUFXLEdBQUcsa0JBQVUsQ0FBQyxNQUFNLENBQUM7VUFDbkMsTUFBTTtVQUNOLGtCQUFVLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQztjQUM3QixNQUFNLENBQUMsV0FBVztjQUNsQixJQUFJLENBQUM7SUFFVCxFQUFFLENBQUMsQ0FBQyxXQUFXLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMxQixrQ0FBa0M7UUFDbEMsTUFBTSxDQUFDO0lBQ1IsQ0FBQztJQUVELE9BQU8sQ0FBQyxjQUFjLENBQ3JCLHFCQUFxQixFQUNyQixNQUFNLENBQUMsTUFBTSxDQUNaLE9BQU8sQ0FBQyxjQUFjLENBQUMscUJBQXFCLEVBQUUsV0FBVyxDQUFDLElBQUksRUFBRTtRQUUvRCxHQUFDLFFBQVEsSUFBRyxJQUFJO1lBRWpCLEVBQ0QsV0FBVyxDQUNYLENBQUM7O0FBQ0gsQ0FBQztBQXRCRCw0QkFzQkMiLCJmaWxlIjoibWV0YWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtpc0Z1bmN0aW9ufSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7UG90aW9uQmFzZX0gZnJvbSAnLi9wb3Rpb24nO1xuaW1wb3J0IHtJdGVtfSBmcm9tICcuL2l0ZW0nO1xuXG5cbmNvbnN0IFJlZmxlY3QgPSAod2luZG93IGFzIGFueSkuUmVmbGVjdDsgLy8gdHNsaW50OmRpc2FibGUtbGluZTp2YXJpYWJsZS1uYW1lXG5cbi8vIE1ha2Ugc3VyZSBSZWZsZWN0IEFQSSBpcyBhdmFpbGFibGUsXG4vLyBvdGhlcndpc2UgdGhyb3cgYW4gZXJyb3IuXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9ibG9iLzYwNzI3YzRkMmJhMWU0YjBiOTQ1NWM3NjdkMGVmMTUyYmNlZGM3YzIvbW9kdWxlcy9hbmd1bGFyMi9zcmMvY29yZS91dGlsL2RlY29yYXRvcnMudHMjTDI0M1xuLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm9ubHktYXJyb3ctZnVuY3Rpb25zXG4oZnVuY3Rpb24gY2hlY2tSZWZsZWN0KCk6IHZvaWQge1xuXHRpZiAoIShSZWZsZWN0ICYmIFJlZmxlY3QuZ2V0TWV0YWRhdGEpKSB7XG5cdFx0dGhyb3cgbmV3IEVycm9yKCdEZXBlbmRlbmN5IGVycm9yLiByZWZsZWN0LW1ldGFkYXRhIHNoaW0gaXMgcmVxdWlyZWQgd2hlbiB1c2luZyBwb3Rpb24tbm9kZSBsaWJyYXJ5Jyk7XG5cdH1cbn0pKCk7XG5cblxuY29uc3QgUE9USU9OX01FVEFEQVRBX0tFWSA9IFN5bWJvbCgncG90aW9uJyk7XG5leHBvcnQgZnVuY3Rpb24gcG90aW9uSW5zdGFuY2UoY3RvcjogdHlwZW9mIEl0ZW0pOiBQb3Rpb25CYXNlIHtcblx0cmV0dXJuIFJlZmxlY3QuZ2V0T3duTWV0YWRhdGEoUE9USU9OX01FVEFEQVRBX0tFWSwgY3Rvcik7XG59XG5leHBvcnQgZnVuY3Rpb24gZGVjb3JhdGVDdG9yV2l0aFBvdGlvbkluc3RhbmNlKGN0b3I6IHR5cGVvZiBJdGVtLCBpbnN0YW5jZTogYW55KTogdm9pZCB7XG5cdFJlZmxlY3QuZGVmaW5lTWV0YWRhdGEoUE9USU9OX01FVEFEQVRBX0tFWSwgaW5zdGFuY2UsIGN0b3IpO1xufVxuXG5cbmNvbnN0IFBPVElPTl9VUklfTUVUQURBVEFfS0VZID0gU3ltYm9sKCdwb3Rpb246dXJpJyk7XG5leHBvcnQgZnVuY3Rpb24gcG90aW9uVVJJKGN0b3I6IHR5cGVvZiBJdGVtKTogc3RyaW5nIHtcblx0cmV0dXJuIFJlZmxlY3QuZ2V0T3duTWV0YWRhdGEoUE9USU9OX1VSSV9NRVRBREFUQV9LRVksIGN0b3IpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGRlY29yYXRlQ3RvcldpdGhQb3Rpb25VUkkoY3RvcjogdHlwZW9mIEl0ZW0sIHVyaTogc3RyaW5nKTogdm9pZCB7XG5cdFJlZmxlY3QuZGVmaW5lTWV0YWRhdGEoUE9USU9OX1VSSV9NRVRBREFUQV9LRVksIHVyaSwgY3Rvcik7XG59XG5cblxuLyoqXG4gKiBHZXQvU2V0IHRoZSBQcm9taXNlIGltcGxlbWVudGF0aW9uIHRoYXQgc2hvdWxkIGJlIHVzZWQgYnkgUG90aW9uLlxuICogTk9URTogSWYgaXQgaXMgbmV2ZXIgc2V0LCBpdCB3aWxsIGZhbGxiYWNrIHRvIHVzaW5nIHRoZSBuYXRpdmUgaW1wbGVtZW50YXRpb24gb2YgUHJvbWlzZS5cbiAqIEBleGFtcGxlXG4gKiBjbGFzcyBQb3Rpb24gZXh0ZW5kcyBQb3Rpb25CYXNlIHtcbiAqICAgICAuLi5cbiAqIH1cbiAqIHNldFBvdGlvblByb21pc2UoUG90aW9uLCAuLi4gc29tZSBpbXBsLiBvZiBhIFByb21pc2UpO1xuICovXG5jb25zdCBQT1RJT05fUFJPTUlTRV9NRVRBREFUQV9LRVkgPSBTeW1ib2woJ3BvdGlvbjpwcm9taXNlJyk7XG5leHBvcnQgZnVuY3Rpb24gcG90aW9uUHJvbWlzZShwb3Rpb246IFBvdGlvbkJhc2UpOiB0eXBlb2YgUHJvbWlzZSB7XG5cdHJldHVybiBSZWZsZWN0LmdldE93bk1ldGFkYXRhKFBPVElPTl9QUk9NSVNFX01FVEFEQVRBX0tFWSwgcG90aW9uLmNvbnN0cnVjdG9yKSB8fCBQcm9taXNlO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHNldFBvdGlvblByb21pc2UoY3RvcjogdHlwZW9mIFBvdGlvbkJhc2UsIHByb21pc2U6IGFueSk6IHZvaWQge1xuXHRSZWZsZWN0LmRlZmluZU1ldGFkYXRhKFBPVElPTl9QUk9NSVNFX01FVEFEQVRBX0tFWSwgcHJvbWlzZSwgY3Rvcik7XG59XG5cblxuY29uc3QgUkVBRE9OTFlfTUVUQURBVEFfS0VZID0gU3ltYm9sKCdwb3Rpb246cmVhZG9ubHknKTtcbmV4cG9ydCBmdW5jdGlvbiBpc1JlYWRvbmx5KGN0b3I6IGFueSwga2V5OiBzdHJpbmcpOiBib29sZWFuIHtcblx0Y29uc3QgbWV0YWRhdGEgPSBSZWZsZWN0LmdldE93bk1ldGFkYXRhKFJFQURPTkxZX01FVEFEQVRBX0tFWSwgY3Rvcik7XG5cdHJldHVybiBtZXRhZGF0YSAmJiBtZXRhZGF0YVtrZXldO1xufVxuXG4vKipcbiAqIE1hcmsgYSByZXNvdXJjZSBwcm9wZXJ0eSBhcyByZWFkb25seSBhbmQgb21pdCB3aGVuIHNhdmVkLlxuICpcbiAqIEBleGFtcGxlXG4gKiBjbGFzcyBVc2VyIGV4dGVuZHMgSXRlbSB7XG4gKiAgICAgQHJlYWRvbmx5XG4gKiAgICAgYWdlO1xuICogfVxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVhZG9ubHkodGFyZ2V0OiBhbnksIHByb3BlcnR5OiBzdHJpbmcpOiB2b2lkIHtcblx0Y29uc3QgY29uc3RydWN0b3IgPSBpc0Z1bmN0aW9uKHRhcmdldClcblx0XHQ/IHRhcmdldFxuXHRcdDogaXNGdW5jdGlvbih0YXJnZXQuY29uc3RydWN0b3IpXG5cdFx0XHQ/IHRhcmdldC5jb25zdHJ1Y3RvclxuXHRcdFx0OiBudWxsO1xuXG5cdGlmIChjb25zdHJ1Y3RvciA9PT0gbnVsbCkge1xuXHRcdC8vIFRPRE86IG1heWJlIHRocm93IGFuIGVycm9yIGhlcmVcblx0XHRyZXR1cm47XG5cdH1cblxuXHRSZWZsZWN0LmRlZmluZU1ldGFkYXRhKFxuXHRcdFJFQURPTkxZX01FVEFEQVRBX0tFWSxcblx0XHRPYmplY3QuYXNzaWduKFxuXHRcdFx0UmVmbGVjdC5nZXRPd25NZXRhZGF0YShSRUFET05MWV9NRVRBREFUQV9LRVksIGNvbnN0cnVjdG9yKSB8fCB7fSxcblx0XHRcdHtcblx0XHRcdFx0W3Byb3BlcnR5XTogdHJ1ZVxuXHRcdFx0fVxuXHRcdCksXG5cdFx0Y29uc3RydWN0b3Jcblx0KTtcbn1cbiJdfQ== |
@@ -1,1 +0,1 @@ | ||
[{"__symbolic":"module","version":3,"metadata":{"potionInstance":{"__symbolic":"function","parameters":["ctor"],"value":{"__symbolic":"error","message":"Reference to a local symbol","line":4,"character":6,"context":{"name":"Reflect"}}},"decorateCtorWithPotionInstance":{"__symbolic":"function"},"potionURI":{"__symbolic":"function","parameters":["ctor"],"value":{"__symbolic":"error","message":"Reference to a local symbol","line":4,"character":6,"context":{"name":"Reflect"}}},"decorateCtorWithPotionURI":{"__symbolic":"function"},"potionPromise":{"__symbolic":"function","parameters":["potion"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"error","message":"Reference to a local symbol","line":4,"character":6,"context":{"name":"Reflect"}},"right":{"__symbolic":"reference","name":"Promise"}}},"setPotionPromise":{"__symbolic":"function"},"isReadonly":{"__symbolic":"function"},"readonly":{"__symbolic":"function"}}},{"__symbolic":"module","version":1,"metadata":{"potionInstance":{"__symbolic":"function","parameters":["ctor"],"value":{"__symbolic":"error","message":"Reference to a local symbol","line":4,"character":6,"context":{"name":"Reflect"}}},"decorateCtorWithPotionInstance":{"__symbolic":"function"},"potionURI":{"__symbolic":"function","parameters":["ctor"],"value":{"__symbolic":"error","message":"Reference to a local symbol","line":4,"character":6,"context":{"name":"Reflect"}}},"decorateCtorWithPotionURI":{"__symbolic":"function"},"potionPromise":{"__symbolic":"function","parameters":["potion"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"error","message":"Reference to a local symbol","line":4,"character":6,"context":{"name":"Reflect"}},"right":{"__symbolic":"reference","name":"Promise"}}},"setPotionPromise":{"__symbolic":"function"},"isReadonly":{"__symbolic":"function"},"readonly":{"__symbolic":"function"}}}] | ||
[{"__symbolic":"module","version":3,"metadata":{"potionInstance":{"__symbolic":"function","parameters":["ctor"],"value":{"__symbolic":"error","message":"Reference to a local symbol","line":5,"character":6,"context":{"name":"Reflect"}}},"decorateCtorWithPotionInstance":{"__symbolic":"function"},"potionURI":{"__symbolic":"function","parameters":["ctor"],"value":{"__symbolic":"error","message":"Reference to a local symbol","line":5,"character":6,"context":{"name":"Reflect"}}},"decorateCtorWithPotionURI":{"__symbolic":"function"},"potionPromise":{"__symbolic":"function","parameters":["potion"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"error","message":"Reference to a local symbol","line":5,"character":6,"context":{"name":"Reflect"}},"right":{"__symbolic":"reference","name":"Promise"}}},"setPotionPromise":{"__symbolic":"function"},"isReadonly":{"__symbolic":"function"},"readonly":{"__symbolic":"function"}}},{"__symbolic":"module","version":1,"metadata":{"potionInstance":{"__symbolic":"function","parameters":["ctor"],"value":{"__symbolic":"error","message":"Reference to a local symbol","line":5,"character":6,"context":{"name":"Reflect"}}},"decorateCtorWithPotionInstance":{"__symbolic":"function"},"potionURI":{"__symbolic":"function","parameters":["ctor"],"value":{"__symbolic":"error","message":"Reference to a local symbol","line":5,"character":6,"context":{"name":"Reflect"}}},"decorateCtorWithPotionURI":{"__symbolic":"function"},"potionPromise":{"__symbolic":"function","parameters":["potion"],"value":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"error","message":"Reference to a local symbol","line":5,"character":6,"context":{"name":"Reflect"}},"right":{"__symbolic":"reference","name":"Promise"}}},"setPotionPromise":{"__symbolic":"function"},"isReadonly":{"__symbolic":"function"},"readonly":{"__symbolic":"function"}}}] |
@@ -10,3 +10,2 @@ import { FetchOptions, PotionBase } from './potion'; | ||
* The class is returned when the {paginate} option is set to `true` when a query is made. | ||
* It implements the [Iterator](https://basarat.gitbooks.io/typescript/content/docs/iterators.html) which means that `for..of` and `.next()` can be used to iterate over the items. | ||
* | ||
@@ -13,0 +12,0 @@ * @example |
@@ -16,3 +16,2 @@ "use strict"; | ||
* The class is returned when the {paginate} option is set to `true` when a query is made. | ||
* It implements the [Iterator](https://basarat.gitbooks.io/typescript/content/docs/iterators.html) which means that `for..of` and `.next()` can be used to iterate over the items. | ||
* | ||
@@ -107,2 +106,2 @@ * @example | ||
exports.Pagination = Pagination; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb3JlL3BhZ2luYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBVUE7Ozs7Ozs7Ozs7Ozs7R0FhRztBQUNIO0lBQWdELDhCQUFRO0lBYXZELG9CQUFZLEVBQWdELEVBQUUsS0FBVSxFQUFFLEtBQWEsRUFBRSxPQUFzQjtZQUFsRyxrQkFBTSxFQUFFLFlBQUc7UUFBeEIsK0JBQ1UsS0FBSyxVQWVkO1FBZEEsZ0NBQWdDO1FBQ2hDLDBKQUEwSjtRQUMxSiwrR0FBK0c7UUFDL0csTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUFJLEVBQUUsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRWxELEtBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLEtBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO1FBQ2YsS0FBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLElBQUksRUFBRSxDQUFDO1FBRTdCLDRDQUE0QztRQUN0QyxJQUFBLCtCQUF5RCxFQUF4RCxZQUFRLEVBQVIsNkJBQVEsRUFBRSxlQUFZLEVBQVosaUNBQVksQ0FBbUM7UUFDaEUsS0FBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDbEIsS0FBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUM7UUFDeEIsS0FBSSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDOztJQUNuQyxDQUFDO0lBNUJELHNCQUFXLFlBQUMsTUFBTSxDQUFDLE9BQVE7YUFBM0I7WUFDQyxNQUFNLENBQUMsVUFBVSxDQUFDO1FBQ25CLENBQUM7OztPQUFBO0lBNEJELHNCQUFJLDRCQUFJO2FBQVI7WUFDQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUNuQixDQUFDO1FBQ0Qsa0VBQWtFO2FBQ2xFLFVBQVMsSUFBWTtZQUNwQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pCLENBQUM7OztPQUpBO0lBTUQsc0JBQUksK0JBQU87YUFBWDtZQUNDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQ3RCLENBQUM7OztPQUFBO0lBRUQsc0JBQUksNkJBQUs7YUFBVDtZQUNDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQy9DLENBQUM7OztPQUFBO0lBRUQsc0JBQUksNkJBQUs7YUFBVDtZQUNDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQ3BCLENBQUM7OztPQUFBO0lBRUQsaUNBQVksR0FBWixVQUFhLElBQVk7UUFDdkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFjLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUN6QyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRCwyQkFBTSxHQUFOLFVBQU8sS0FBVSxFQUFFLEtBQWE7UUFDL0IsSUFBSSxDQUFDLE1BQU0sT0FBWCxJQUFJLEdBQVEsQ0FBQyxFQUFFLElBQUksQ0FBQyxNQUFNLFNBQUssS0FBSyxHQUFFO1FBQ3RDLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFDYixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsb0JBQW9CO0lBQ3BCLDRCQUFPLEdBQVA7UUFDQyxNQUFNLENBQUMsSUFBSSxDQUFDO0lBQ2IsQ0FBQztJQUNGLGlCQUFDO0FBQUQsQ0F2RUEsQUF1RUMsQ0F2RStDLEtBQUssR0F1RXBEO0FBdkVZLGdDQUFVIiwiZmlsZSI6InBhZ2luYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtGZXRjaE9wdGlvbnMsIFBvdGlvbkJhc2V9IGZyb20gJy4vcG90aW9uJztcbmltcG9ydCB7SXRlbX0gZnJvbSAnLi9pdGVtJztcblxuXG5leHBvcnQgaW50ZXJmYWNlIFBhZ2luYXRpb25PcHRpb25zIHtcblx0cGFnZT86IG51bWJlcjtcblx0cGVyUGFnZT86IG51bWJlcjtcbn1cblxuXG4vKipcbiAqIEFycmF5IGxpa2UgY2xhc3Mgd2l0aCByZXNvdXJjZXMuXG4gKiBUaGUgY2xhc3MgaXMgcmV0dXJuZWQgd2hlbiB0aGUge3BhZ2luYXRlfSBvcHRpb24gaXMgc2V0IHRvIGB0cnVlYCB3aGVuIGEgcXVlcnkgaXMgbWFkZS5cbiAqIEl0IGltcGxlbWVudHMgdGhlIFtJdGVyYXRvcl0oaHR0cHM6Ly9iYXNhcmF0LmdpdGJvb2tzLmlvL3R5cGVzY3JpcHQvY29udGVudC9kb2NzL2l0ZXJhdG9ycy5odG1sKSB3aGljaCBtZWFucyB0aGF0IGBmb3IuLm9mYCBhbmQgYC5uZXh0KClgIGNhbiBiZSB1c2VkIHRvIGl0ZXJhdGUgb3ZlciB0aGUgaXRlbXMuXG4gKlxuICogQGV4YW1wbGVcbiAqIGNsYXNzIFVzZXIgZXh0ZW5kcyBJdGVtIHt9XG4gKlxuICogVXNlci5xdWVyeShudWxsLCB7cGFnaW5hdGU6IHRydWV9KS50aGVuKCh1c2VycykgPT4ge1xuICogICAgIGZvciAobGV0IHVzZXIgb2YgdXNlcnMpIHtcbiAqICAgICAgICAgY29uc29sZS5sb2codXNlcik7XG4gKiAgICAgfVxuICogfSk7XG4gKi9cbmV4cG9ydCBjbGFzcyBQYWdpbmF0aW9uPFQgZXh0ZW5kcyBJdGVtPiBleHRlbmRzIEFycmF5PFQ+IHtcblx0c3RhdGljIGdldCBbU3ltYm9sLnNwZWNpZXNdKCkge1xuXHRcdHJldHVybiBQYWdpbmF0aW9uO1xuXHR9XG5cblx0cHJpdmF0ZSBwb3Rpb246IFBvdGlvbkJhc2U7XG5cdHByaXZhdGUgdXJpOiBzdHJpbmc7XG5cdHByaXZhdGUgb3B0aW9uczogRmV0Y2hPcHRpb25zO1xuXG5cdHByaXZhdGUgJHBhZ2U6IG51bWJlcjtcblx0cHJpdmF0ZSAkcGVyUGFnZTogbnVtYmVyO1xuXHRwcml2YXRlICR0b3RhbDogbnVtYmVyO1xuXG5cdGNvbnN0cnVjdG9yKHtwb3Rpb24sIHVyaX06IHtwb3Rpb246IFBvdGlvbkJhc2UsIHVyaTogc3RyaW5nfSwgaXRlbXM6IFRbXSwgY291bnQ6IHN0cmluZywgb3B0aW9ucz86IEZldGNoT3B0aW9ucykge1xuXHRcdHN1cGVyKC4uLml0ZW1zKTtcblx0XHQvLyBTZXQgdGhlIHByb3RvdHlwZSBleHBsaWNpdGx5LlxuXHRcdC8vIE5PVEU6IFRoaXMgaXMgbmVjZXNzYXJ5IGFuZCByZWNvbW1lbmRlZDogaHR0cHM6Ly9naXRodWIuY29tL01pY3Jvc29mdC9UeXBlU2NyaXB0L3dpa2kvRkFRI3doeS1kb2VzbnQtZXh0ZW5kaW5nLWJ1aWx0LWlucy1saWtlLWVycm9yLWFycmF5LWFuZC1tYXAtd29yay5cblx0XHQvLyBEb2NzOiBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9PYmplY3Qvc2V0UHJvdG90eXBlT2Zcblx0XHRPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcywgUGFnaW5hdGlvbi5wcm90b3R5cGUpO1xuXG5cdFx0dGhpcy5wb3Rpb24gPSBwb3Rpb247XG5cdFx0dGhpcy51cmkgPSB1cmk7XG5cdFx0dGhpcy5vcHRpb25zID0gb3B0aW9ucyB8fCB7fTtcblxuXHRcdC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpuby1tYWdpYy1udW1iZXJzXG5cdFx0Y29uc3Qge3BhZ2UgPSAxLCBwZXJQYWdlID0gMjV9OiBhbnkgPSB0aGlzLm9wdGlvbnMuc2VhcmNoIHx8IHt9O1xuXHRcdHRoaXMuJHBhZ2UgPSBwYWdlO1xuXHRcdHRoaXMuJHBlclBhZ2UgPSBwZXJQYWdlO1xuXHRcdHRoaXMuJHRvdGFsID0gcGFyc2VJbnQoY291bnQsIDEwKTtcblx0fVxuXG5cdGdldCBwYWdlKCk6IG51bWJlciB7XG5cdFx0cmV0dXJuIHRoaXMuJHBhZ2U7XG5cdH1cblx0Ly8gU2V0dGluZyB0aGUgcGFnZSB3aWxsIHRyaWdnZXIgYSBuZXcgcXVlcnkgYW5kIHVwZGF0ZSB0aGUgaXRlbXMuXG5cdHNldCBwYWdlKHBhZ2U6IG51bWJlcikge1xuXHRcdHRoaXMuY2hhbmdlUGFnZVRvKHBhZ2UpO1xuXHR9XG5cblx0Z2V0IHBlclBhZ2UoKTogbnVtYmVyIHtcblx0XHRyZXR1cm4gdGhpcy4kcGVyUGFnZTtcblx0fVxuXG5cdGdldCBwYWdlcygpOiBudW1iZXIge1xuXHRcdHJldHVybiBNYXRoLmNlaWwodGhpcy4kdG90YWwgLyB0aGlzLiRwZXJQYWdlKTtcblx0fVxuXG5cdGdldCB0b3RhbCgpOiBudW1iZXIge1xuXHRcdHJldHVybiB0aGlzLiR0b3RhbDtcblx0fVxuXG5cdGNoYW5nZVBhZ2VUbyhwYWdlOiBudW1iZXIpOiBQcm9taXNlPFQgfCBUW10gfCBQYWdpbmF0aW9uPFQ+IHwgYW55PiB7XG5cdFx0KHRoaXMub3B0aW9ucy5zZWFyY2ggYXMgYW55KS5wYWdlID0gcGFnZTtcblx0XHR0aGlzLiRwYWdlID0gcGFnZTtcblx0XHRyZXR1cm4gdGhpcy5wb3Rpb24uZmV0Y2godGhpcy51cmksIHRoaXMub3B0aW9ucywgdGhpcyk7XG5cdH1cblxuXHR1cGRhdGUoaXRlbXM6IFRbXSwgY291bnQ6IG51bWJlcik6IHRoaXMge1xuXHRcdHRoaXMuc3BsaWNlKDAsIHRoaXMubGVuZ3RoLCAuLi5pdGVtcyk7XG5cdFx0dGhpcy4kdG90YWwgPSBjb3VudDtcblx0XHRyZXR1cm4gdGhpcztcblx0fVxuXG5cdC8qKlxuXHQgKiBUaGlzIHdpbGwgYmUgcmVtb3ZlZCBhcyB0aGlzIGNsYXNzIGlzIGl0ZXJhYmxlLlxuXHQgKiBAZGVwcmVjYXRlZFxuXHQgKi9cblx0Ly8gVE9ETzogUmVtb3ZlIHRoaXNcblx0dG9BcnJheSgpOiBUW10ge1xuXHRcdHJldHVybiB0aGlzO1xuXHR9XG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb3JlL3BhZ2luYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBVUE7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0g7SUFBZ0QsOEJBQVE7SUFhdkQsb0JBQVksRUFBZ0QsRUFBRSxLQUFVLEVBQUUsS0FBYSxFQUFFLE9BQXNCO1lBQWxHLGtCQUFNLEVBQUUsWUFBRztRQUF4QiwrQkFDVSxLQUFLLFVBZWQ7UUFkQSxnQ0FBZ0M7UUFDaEMsMEpBQTBKO1FBQzFKLCtHQUErRztRQUMvRyxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQUksRUFBRSxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFbEQsS0FBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsS0FBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDZixLQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFFN0IsNENBQTRDO1FBQ3RDLElBQUEsK0JBQXlELEVBQXhELFlBQVEsRUFBUiw2QkFBUSxFQUFFLGVBQVksRUFBWixpQ0FBWSxDQUFtQztRQUNoRSxLQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztRQUNsQixLQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztRQUN4QixLQUFJLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7O0lBQ25DLENBQUM7SUE1QkQsc0JBQVcsWUFBQyxNQUFNLENBQUMsT0FBUTthQUEzQjtZQUNDLE1BQU0sQ0FBQyxVQUFVLENBQUM7UUFDbkIsQ0FBQzs7O09BQUE7SUE0QkQsc0JBQUksNEJBQUk7YUFBUjtZQUNDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ25CLENBQUM7UUFDRCxrRUFBa0U7YUFDbEUsVUFBUyxJQUFZO1lBQ3BCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekIsQ0FBQzs7O09BSkE7SUFNRCxzQkFBSSwrQkFBTzthQUFYO1lBQ0MsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDdEIsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSw2QkFBSzthQUFUO1lBQ0MsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDL0MsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSw2QkFBSzthQUFUO1lBQ0MsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDcEIsQ0FBQzs7O09BQUE7SUFFRCxpQ0FBWSxHQUFaLFVBQWEsSUFBWTtRQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQWMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ3pDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBQ2xCLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELDJCQUFNLEdBQU4sVUFBTyxLQUFVLEVBQUUsS0FBYTtRQUMvQixJQUFJLENBQUMsTUFBTSxPQUFYLElBQUksR0FBUSxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sU0FBSyxLQUFLLEdBQUU7UUFDdEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7UUFDcEIsTUFBTSxDQUFDLElBQUksQ0FBQztJQUNiLENBQUM7SUFFRDs7O09BR0c7SUFDSCxvQkFBb0I7SUFDcEIsNEJBQU8sR0FBUDtRQUNDLE1BQU0sQ0FBQyxJQUFJLENBQUM7SUFDYixDQUFDO0lBQ0YsaUJBQUM7QUFBRCxDQXZFQSxBQXVFQyxDQXZFK0MsS0FBSyxHQXVFcEQ7QUF2RVksZ0NBQVUiLCJmaWxlIjoicGFnaW5hdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0ZldGNoT3B0aW9ucywgUG90aW9uQmFzZX0gZnJvbSAnLi9wb3Rpb24nO1xuaW1wb3J0IHtJdGVtfSBmcm9tICcuL2l0ZW0nO1xuXG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFnaW5hdGlvbk9wdGlvbnMge1xuXHRwYWdlPzogbnVtYmVyO1xuXHRwZXJQYWdlPzogbnVtYmVyO1xufVxuXG5cbi8qKlxuICogQXJyYXkgbGlrZSBjbGFzcyB3aXRoIHJlc291cmNlcy5cbiAqIFRoZSBjbGFzcyBpcyByZXR1cm5lZCB3aGVuIHRoZSB7cGFnaW5hdGV9IG9wdGlvbiBpcyBzZXQgdG8gYHRydWVgIHdoZW4gYSBxdWVyeSBpcyBtYWRlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBjbGFzcyBVc2VyIGV4dGVuZHMgSXRlbSB7fVxuICpcbiAqIFVzZXIucXVlcnkobnVsbCwge3BhZ2luYXRlOiB0cnVlfSkudGhlbigodXNlcnMpID0+IHtcbiAqICAgICBmb3IgKGxldCB1c2VyIG9mIHVzZXJzKSB7XG4gKiAgICAgICAgIGNvbnNvbGUubG9nKHVzZXIpO1xuICogICAgIH1cbiAqIH0pO1xuICovXG5leHBvcnQgY2xhc3MgUGFnaW5hdGlvbjxUIGV4dGVuZHMgSXRlbT4gZXh0ZW5kcyBBcnJheTxUPiB7XG5cdHN0YXRpYyBnZXQgW1N5bWJvbC5zcGVjaWVzXSgpIHtcblx0XHRyZXR1cm4gUGFnaW5hdGlvbjtcblx0fVxuXG5cdHByaXZhdGUgcG90aW9uOiBQb3Rpb25CYXNlO1xuXHRwcml2YXRlIHVyaTogc3RyaW5nO1xuXHRwcml2YXRlIG9wdGlvbnM6IEZldGNoT3B0aW9ucztcblxuXHRwcml2YXRlICRwYWdlOiBudW1iZXI7XG5cdHByaXZhdGUgJHBlclBhZ2U6IG51bWJlcjtcblx0cHJpdmF0ZSAkdG90YWw6IG51bWJlcjtcblxuXHRjb25zdHJ1Y3Rvcih7cG90aW9uLCB1cml9OiB7cG90aW9uOiBQb3Rpb25CYXNlLCB1cmk6IHN0cmluZ30sIGl0ZW1zOiBUW10sIGNvdW50OiBzdHJpbmcsIG9wdGlvbnM/OiBGZXRjaE9wdGlvbnMpIHtcblx0XHRzdXBlciguLi5pdGVtcyk7XG5cdFx0Ly8gU2V0IHRoZSBwcm90b3R5cGUgZXhwbGljaXRseS5cblx0XHQvLyBOT1RFOiBUaGlzIGlzIG5lY2Vzc2FyeSBhbmQgcmVjb21tZW5kZWQ6IGh0dHBzOi8vZ2l0aHViLmNvbS9NaWNyb3NvZnQvVHlwZVNjcmlwdC93aWtpL0ZBUSN3aHktZG9lc250LWV4dGVuZGluZy1idWlsdC1pbnMtbGlrZS1lcnJvci1hcnJheS1hbmQtbWFwLXdvcmsuXG5cdFx0Ly8gRG9jczogaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSmF2YVNjcmlwdC9SZWZlcmVuY2UvR2xvYmFsX09iamVjdHMvT2JqZWN0L3NldFByb3RvdHlwZU9mXG5cdFx0T2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsIFBhZ2luYXRpb24ucHJvdG90eXBlKTtcblxuXHRcdHRoaXMucG90aW9uID0gcG90aW9uO1xuXHRcdHRoaXMudXJpID0gdXJpO1xuXHRcdHRoaXMub3B0aW9ucyA9IG9wdGlvbnMgfHwge307XG5cblx0XHQvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tbWFnaWMtbnVtYmVyc1xuXHRcdGNvbnN0IHtwYWdlID0gMSwgcGVyUGFnZSA9IDI1fTogYW55ID0gdGhpcy5vcHRpb25zLnNlYXJjaCB8fCB7fTtcblx0XHR0aGlzLiRwYWdlID0gcGFnZTtcblx0XHR0aGlzLiRwZXJQYWdlID0gcGVyUGFnZTtcblx0XHR0aGlzLiR0b3RhbCA9IHBhcnNlSW50KGNvdW50LCAxMCk7XG5cdH1cblxuXHRnZXQgcGFnZSgpOiBudW1iZXIge1xuXHRcdHJldHVybiB0aGlzLiRwYWdlO1xuXHR9XG5cdC8vIFNldHRpbmcgdGhlIHBhZ2Ugd2lsbCB0cmlnZ2VyIGEgbmV3IHF1ZXJ5IGFuZCB1cGRhdGUgdGhlIGl0ZW1zLlxuXHRzZXQgcGFnZShwYWdlOiBudW1iZXIpIHtcblx0XHR0aGlzLmNoYW5nZVBhZ2VUbyhwYWdlKTtcblx0fVxuXG5cdGdldCBwZXJQYWdlKCk6IG51bWJlciB7XG5cdFx0cmV0dXJuIHRoaXMuJHBlclBhZ2U7XG5cdH1cblxuXHRnZXQgcGFnZXMoKTogbnVtYmVyIHtcblx0XHRyZXR1cm4gTWF0aC5jZWlsKHRoaXMuJHRvdGFsIC8gdGhpcy4kcGVyUGFnZSk7XG5cdH1cblxuXHRnZXQgdG90YWwoKTogbnVtYmVyIHtcblx0XHRyZXR1cm4gdGhpcy4kdG90YWw7XG5cdH1cblxuXHRjaGFuZ2VQYWdlVG8ocGFnZTogbnVtYmVyKTogUHJvbWlzZTxUIHwgVFtdIHwgUGFnaW5hdGlvbjxUPiB8IGFueT4ge1xuXHRcdCh0aGlzLm9wdGlvbnMuc2VhcmNoIGFzIGFueSkucGFnZSA9IHBhZ2U7XG5cdFx0dGhpcy4kcGFnZSA9IHBhZ2U7XG5cdFx0cmV0dXJuIHRoaXMucG90aW9uLmZldGNoKHRoaXMudXJpLCB0aGlzLm9wdGlvbnMsIHRoaXMpO1xuXHR9XG5cblx0dXBkYXRlKGl0ZW1zOiBUW10sIGNvdW50OiBudW1iZXIpOiB0aGlzIHtcblx0XHR0aGlzLnNwbGljZSgwLCB0aGlzLmxlbmd0aCwgLi4uaXRlbXMpO1xuXHRcdHRoaXMuJHRvdGFsID0gY291bnQ7XG5cdFx0cmV0dXJuIHRoaXM7XG5cdH1cblxuXHQvKipcblx0ICogVGhpcyB3aWxsIGJlIHJlbW92ZWQgYXMgdGhpcyBjbGFzcyBpcyBpdGVyYWJsZS5cblx0ICogQGRlcHJlY2F0ZWRcblx0ICovXG5cdC8vIFRPRE86IFJlbW92ZSB0aGlzXG5cdHRvQXJyYXkoKTogVFtdIHtcblx0XHRyZXR1cm4gdGhpcztcblx0fVxufVxuIl19 |
@@ -1,1 +0,1 @@ | ||
[{"__symbolic":"module","version":3,"metadata":{"PaginationOptions":{"__symbolic":"interface"},"Pagination":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"Array"},"arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":37,"character":28},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":37,"character":70,"context":{"typeName":"T"}}]},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","module":"./potion","name":"FetchOptions"}]}],"changePageTo":[{"__symbolic":"method"}],"update":[{"__symbolic":"method"}],"toArray":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"PaginationOptions":{"__symbolic":"interface"},"Pagination":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"Array"},"arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":37,"character":28},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":37,"character":70,"context":{"typeName":"T"}}]},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","module":"./potion","name":"FetchOptions"}]}],"changePageTo":[{"__symbolic":"method"}],"update":[{"__symbolic":"method"}],"toArray":[{"__symbolic":"method"}]}}}}] | ||
[{"__symbolic":"module","version":3,"metadata":{"PaginationOptions":{"__symbolic":"interface"},"Pagination":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"Array"},"arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":36,"character":28},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":36,"character":70,"context":{"typeName":"T"}}]},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","module":"./potion","name":"FetchOptions"}]}],"changePageTo":[{"__symbolic":"method"}],"update":[{"__symbolic":"method"}],"toArray":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"PaginationOptions":{"__symbolic":"interface"},"Pagination":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"Array"},"arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":36,"character":28},{"__symbolic":"reference","name":"Array","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":36,"character":70,"context":{"typeName":"T"}}]},{"__symbolic":"reference","name":"string"},{"__symbolic":"reference","module":"./potion","name":"FetchOptions"}]}],"changePageTo":[{"__symbolic":"method"}],"update":[{"__symbolic":"method"}],"toArray":[{"__symbolic":"method"}]}}}}] |
@@ -8,4 +8,5 @@ import { Item, ItemOptions } from './item'; | ||
export interface ItemCache<T extends Item> { | ||
get(key: string): T; | ||
put(key: string, item: T): T; | ||
has(key: string): boolean; | ||
get(key: string): Promise<T>; | ||
put(key: string, item: Promise<T>): Promise<T>; | ||
remove(key: string): void; | ||
@@ -17,5 +18,5 @@ } | ||
export interface ParsedURI { | ||
resource: typeof Item; | ||
id: string | number; | ||
uri: string; | ||
resource: Item; | ||
params: string[]; | ||
} | ||
@@ -47,2 +48,11 @@ export interface URLSearchParams { | ||
} | ||
export declare function getErrorMessage(error: any, uri: string): string; | ||
export declare function canAggregateURI({$type, $id}: { | ||
[key: string]: any; | ||
}): boolean; | ||
export declare function getURI({$uri, $ref, $type, $id}: { | ||
[key: string]: any; | ||
}): string; | ||
export declare function removePrefix(uri: string, prefix: string): string; | ||
export declare function parseID(id: any): string | number | null; | ||
/** | ||
@@ -96,6 +106,7 @@ * This class contains the main logic for interacting with the Flask Potion backend. | ||
protected abstract request(uri: string, options?: RequestOptions): Promise<PotionResponse>; | ||
private parseURI(uri); | ||
private toPotionJSON(json); | ||
private deserialize({data, headers}); | ||
private serialize(options); | ||
private deserialize({data, headers}, uri, options, pagination?); | ||
private fromPotionJSON(json); | ||
private parseURI({$ref, $uri, $type, $id}); | ||
private parsePotionJSONProperties(json, properties?); | ||
} |
@@ -13,5 +13,50 @@ "use strict"; | ||
var metadata_1 = require("./metadata"); | ||
var item_1 = require("./item"); | ||
var pagination_1 = require("./pagination"); | ||
var utils_1 = require("../utils"); | ||
var utils_1 = require("./utils"); | ||
function getErrorMessage(error, uri) { | ||
if (error instanceof Error) { | ||
return error.message; | ||
} | ||
else if (typeof error === 'string') { | ||
return error; | ||
} | ||
return "An error occurred while Potion tried to retrieve a resource from '" + uri + "'."; | ||
} | ||
exports.getErrorMessage = getErrorMessage; | ||
function canAggregateURI(_a) { | ||
var $type = _a.$type, $id = _a.$id; | ||
return (typeof $id === 'string' || Number.isInteger($id)) && typeof $type === 'string'; | ||
} | ||
exports.canAggregateURI = canAggregateURI; | ||
function getURI(_a) { | ||
var $uri = _a.$uri, $ref = _a.$ref, $type = _a.$type, $id = _a.$id; | ||
if (typeof $uri === 'string') { | ||
return decodeURIComponent($uri); | ||
} | ||
else if (typeof $ref === 'string') { | ||
return decodeURIComponent($ref); | ||
} | ||
else if (canAggregateURI({ $type: $type, $id: $id })) { | ||
return "/" + $type + "/" + $id; | ||
} | ||
return ''; | ||
} | ||
exports.getURI = getURI; | ||
function removePrefix(uri, prefix) { | ||
if (uri.indexOf(prefix) === 0) { | ||
return uri.substring(prefix.length); | ||
} | ||
return uri; | ||
} | ||
exports.removePrefix = removePrefix; | ||
function parseID(id) { | ||
if (typeof id === 'string') { | ||
return /^\d+$/.test(id) ? parseInt(id, 10) : id; | ||
} | ||
else if (Number.isInteger(id)) { | ||
return id; | ||
} | ||
return null; | ||
} | ||
exports.parseID = parseID; | ||
/** | ||
@@ -43,4 +88,3 @@ * This class contains the main logic for interacting with the Flask Potion backend. | ||
var options = __assign({}, fetchOptions); | ||
var method = options.method, cache = options.cache, paginate = options.paginate, data = options.data; | ||
var search = options.search; | ||
var method = options.method, cache = options.cache, paginate = options.paginate, search = options.search; | ||
var key = uri; | ||
@@ -53,62 +97,28 @@ var Promise = this.Promise; | ||
} | ||
if (paginate) { | ||
// If no page was provided set to first | ||
// Default to 25 items per page | ||
search = options.search = Object.assign({ page: 1, perPage: 25 }, search); | ||
} | ||
// Convert the {data, search} object props to snake case. | ||
// Serialize all values to Potion JSON. | ||
var fetch = function () { return _this.request("" + _this.host + uri, __assign({}, options, { | ||
search: _this.toPotionJSON(search), | ||
data: _this.toPotionJSON(data) | ||
})) | ||
.then(function (response) { return _this.deserialize(response); }) | ||
.then(function (_a) { | ||
var headers = _a.headers, data = _a.data; | ||
// Return or update Pagination | ||
if (paginate) { | ||
var count = headers['x-total-count'] || data.length; | ||
if (!pagination) { | ||
return new pagination_1.Pagination({ uri: uri, potion: _this }, data, count, options); | ||
} | ||
else { | ||
return pagination.update(data, count); | ||
} | ||
// Serialize request to Potion JSON. | ||
var fetch = function () { return _this.request("" + _this.host + uri, _this.serialize(options)) | ||
.then(function (response) { return _this.deserialize(response, uri, options, pagination); }); }; | ||
// TODO: Cache requests for queries with params as well, | ||
// we just need to create a hash key for the request (uri + search params). | ||
if (method === 'GET' && !paginate && !search) { | ||
// If a GET request was made and {cache: true} return the item from cache (if it exists). | ||
// NOTE: Queries are not cached. | ||
if (cache && this.cache.has(key)) { | ||
return this.cache.get(key); | ||
} | ||
return data; | ||
}); }; | ||
if (method === 'GET' && !search) { | ||
// If a GET request and {cache: true}, | ||
// try to get item from cache, | ||
// and return a resolved promise with the cached item. | ||
// Note that queries are not cached. | ||
if (cache) { | ||
var item = this.cache.get(key); | ||
if (item) { | ||
return Promise.resolve(item); | ||
} | ||
// Cache the request so that further requests for the same resource will not make an aditional XHR. | ||
if (!this.pendingGETRequests.has(uri)) { | ||
this.pendingGETRequests.set(uri, fetch().then(function (data) { | ||
_this.pendingGETRequests.delete(uri); | ||
return data; | ||
}, function (err) { | ||
// If request fails, | ||
// make sure to remove the pending request so further requests can be made, | ||
// but fail the pipeline. | ||
_this.pendingGETRequests.delete(uri); | ||
var message = getErrorMessage(err, uri); | ||
return Promise.reject(message); | ||
})); | ||
} | ||
// If we already asked for the resource, | ||
// return the exiting pending request promise. | ||
if (this.pendingGETRequests.has(uri)) { | ||
return this.pendingGETRequests.get(uri); | ||
} | ||
var request = fetch(); | ||
// Save pending request | ||
this.pendingGETRequests.set(uri, request); | ||
return request.then(function (data) { | ||
_this.pendingGETRequests.delete(uri); | ||
return data; | ||
}, function (err) { | ||
// If request fails, | ||
// make sure to remove the pending request so further requests can be made. | ||
// Return is necessary. | ||
_this.pendingGETRequests.delete(uri); | ||
var message = err instanceof Error | ||
? err.message | ||
: typeof err === 'string' | ||
? err | ||
: "An error occurred while Potion tried to retrieve a resource from '" + uri + "'."; | ||
return Promise.reject(message); | ||
}); | ||
return this.pendingGETRequests.get(uri); | ||
} | ||
@@ -128,3 +138,3 @@ else { | ||
metadata_1.decorateCtorWithPotionURI(resource, uri); | ||
if (options && utils_1.isArray(options.readonly)) { | ||
if (options && Array.isArray(options.readonly)) { | ||
options.readonly.forEach(function (property) { return metadata_1.readonly(resource, property); }); | ||
@@ -151,49 +161,29 @@ } | ||
}; | ||
PotionBase.prototype.parseURI = function (uri) { | ||
uri = decodeURIComponent(uri); | ||
if (uri.indexOf(this.prefix) === 0) { | ||
uri = uri.substring(this.prefix.length); | ||
} | ||
for (var _i = 0, _a = utils_1.entries(this.resources); _i < _a.length; _i++) { | ||
var _b = _a[_i], resourceURI = _b[0], resource = _b[1]; | ||
if (uri.indexOf(resourceURI + "/") === 0) { | ||
return { | ||
uri: uri, | ||
resource: resource, | ||
params: uri.substring(resourceURI.length + 1) | ||
.split('/') | ||
}; | ||
} | ||
} | ||
throw new Error("URI '" + uri + "' is an uninterpretable or unknown potion resource."); | ||
PotionBase.prototype.serialize = function (options) { | ||
var prefix = this.prefix; | ||
var search = options.search; | ||
return __assign({}, options, { | ||
search: utils_1.toPotionJSON(options.paginate ? __assign({ page: 1, perPage: 25 }, search) : search, prefix), | ||
data: utils_1.toPotionJSON(options.data, prefix) | ||
}); | ||
}; | ||
PotionBase.prototype.toPotionJSON = function (json) { | ||
PotionBase.prototype.deserialize = function (_a, uri, options, pagination) { | ||
var _this = this; | ||
// console.log(json) | ||
if (typeof json === 'object' && json !== null) { | ||
if (json instanceof item_1.Item && typeof json.uri === 'string') { | ||
return { $ref: "" + this.prefix + json.uri }; | ||
var data = _a.data, headers = _a.headers; | ||
return this.fromPotionJSON(data) | ||
.then(function (json) { | ||
// Return or update Pagination | ||
// TODO: Refactor this, looks messy (pagination logic should be handled in the Pagination class) | ||
if (options.paginate) { | ||
var count = headers['x-total-count'] || json.length; | ||
if (!pagination) { | ||
return new pagination_1.Pagination({ uri: uri, potion: _this }, json, count, options); | ||
} | ||
else { | ||
return pagination.update(json, count); | ||
} | ||
} | ||
else if (json instanceof Date) { | ||
return { $date: json.getTime() }; | ||
} | ||
else if (utils_1.isArray(json)) { | ||
return json.map(function (item) { return _this.toPotionJSON(item); }); | ||
} | ||
else { | ||
return utils_1.omap(json, function (key) { return utils_1.toSnakeCase(key); }, function (value) { return _this.toPotionJSON(value); }, this); | ||
} | ||
} | ||
else { | ||
return json; | ||
} | ||
}); | ||
}; | ||
PotionBase.prototype.deserialize = function (_a) { | ||
var data = _a.data, headers = _a.headers; | ||
return this.fromPotionJSON(data) | ||
.then(function (json) { return ({ | ||
headers: headers, | ||
data: json | ||
}); }); | ||
}; | ||
PotionBase.prototype.fromPotionJSON = function (json) { | ||
@@ -203,64 +193,30 @@ var _this = this; | ||
if (typeof json === 'object' && json !== null) { | ||
if (utils_1.isArray(json)) { | ||
if (Array.isArray(json)) { | ||
return Promise.all(json.map(function (item) { return _this.fromPotionJSON(item); })); | ||
} | ||
else if (typeof json.$uri === 'string') { | ||
// TODO: the json may also have {$type, $id} that can be used to recognize a resource | ||
// If neither combination is provided, it should throw and let the user now Flask Potion needs to be configured with one of these two strategies. | ||
// Try to parse the URI, | ||
// otherwise reject with the exception thrown from parseURI. | ||
var resource_1; | ||
var params = void 0; | ||
var uri_1; | ||
try { | ||
var parsedURI = this.parseURI(json.$uri); | ||
resource_1 = parsedURI.resource; | ||
params = parsedURI.params; | ||
uri_1 = parsedURI.uri; | ||
} | ||
catch (parseURIError) { | ||
return Promise.reject(parseURIError); | ||
} | ||
var properties_1 = new Map(); | ||
var promises_1 = new Map(); | ||
// Cache the resource if it does not exist, | ||
// but do it before resolving any possible references (to other resources) on it. | ||
if (!this.cache.get(uri_1)) { | ||
this.cache.put(uri_1, Reflect.construct(resource_1, [])); | ||
} | ||
var _loop_1 = function (key, value) { | ||
if (key === '$uri') { | ||
properties_1.set(key, uri_1); | ||
else if (typeof json.$uri === 'string' || canAggregateURI(json)) { | ||
// NOTE: The json may also have {$type, $id} that can be used to recognize a resource instead of {$uri}. | ||
// If neither combination is provided it will throw. | ||
return this.parseURI(json) | ||
.then(function (_a) { | ||
var resource = _a.resource, id = _a.id, uri = _a.uri; | ||
var properties = new Map(); | ||
// NOTE: {id} | ||
properties.set('$id', id); | ||
properties.set('$uri', uri); | ||
var unpack = _this.parsePotionJSONProperties(json, properties); | ||
// Create and cache the resource if it does not exist. | ||
if (!_this.cache.has(uri)) { | ||
return _this.cache.put(uri, unpack.then(function (properties) { return Reflect.construct(resource, [properties]); })); | ||
} | ||
else { | ||
var k_1 = utils_1.toCamelCase(key); | ||
promises_1.set(k_1, this_1.fromPotionJSON(value).then(function (value) { | ||
properties_1.set(k_1, value); | ||
return value; | ||
})); | ||
// If the resource already exists, | ||
// update it with new properties. | ||
return Promise.all([unpack, _this.cache.get(uri)]) | ||
.then(function (_a) { | ||
var properties = _a[0], item = _a[1]; | ||
Object.assign(item, properties); | ||
return item; | ||
}); | ||
} | ||
}; | ||
var this_1 = this; | ||
// Resolve possible references | ||
for (var _i = 0, _a = utils_1.entries(json); _i < _a.length; _i++) { | ||
var _b = _a[_i], key = _b[0], value = _b[1]; | ||
_loop_1(key, value); | ||
} | ||
// Set the id | ||
var id = params[0]; | ||
properties_1.set('$id', Number.isInteger(id) || /^\d+$/.test(id) ? parseInt(id, 10) : id); | ||
return Promise.all(Array.from(promises_1.values())) | ||
.then(function () { | ||
// Try to get existing entry from cache | ||
var item = _this.cache.get(uri_1); | ||
if (item) { | ||
// Update existing entry with new properties | ||
Object.assign(item, utils_1.mapToObject(properties_1)); | ||
} | ||
else { | ||
// Create a new entry | ||
item = Reflect.construct(resource_1, [utils_1.mapToObject(properties_1)]); | ||
_this.cache.put(uri_1, item); | ||
} | ||
return item; | ||
}); | ||
@@ -281,15 +237,9 @@ } | ||
} | ||
// Try to parse the URI, | ||
// otherwise reject with the exception thrown from parseURI. | ||
var uri = void 0; | ||
try { | ||
var parsedURI = this.parseURI(json.$ref); | ||
uri = parsedURI.uri; | ||
} | ||
catch (parseURIError) { | ||
return Promise.reject(parseURIError); | ||
} | ||
return this.fetch(uri, { | ||
cache: true, | ||
method: 'GET' | ||
return this.parseURI(json) | ||
.then(function (_a) { | ||
var uri = _a.uri; | ||
return _this.fetch(uri, { | ||
cache: true, | ||
method: 'GET' | ||
}); | ||
}); | ||
@@ -302,18 +252,3 @@ } | ||
} | ||
var properties_2 = new Map(); | ||
var promises = new Map(); | ||
var _loop_2 = function (key, value) { | ||
var k = utils_1.toCamelCase(key); | ||
promises.set(k, this_2.fromPotionJSON(value).then(function (value) { | ||
properties_2.set(k, value); | ||
return value; | ||
})); | ||
}; | ||
var this_2 = this; | ||
for (var _c = 0, _d = utils_1.entries(json); _c < _d.length; _c++) { | ||
var _e = _d[_c], key = _e[0], value = _e[1]; | ||
_loop_2(key, value); | ||
} | ||
return Promise.all(Array.from(promises.values())) | ||
.then(function () { return utils_1.mapToObject(properties_2); }); | ||
return this.parsePotionJSONProperties(json); | ||
} | ||
@@ -324,5 +259,54 @@ else { | ||
}; | ||
// Try to parse a Potion URI and find the associated resource for it, | ||
// otherwise return a rejected promise. | ||
PotionBase.prototype.parseURI = function (_a) { | ||
var $ref = _a.$ref, $uri = _a.$uri, $type = _a.$type, $id = _a.$id; | ||
var Promise = this.Promise; | ||
var uri = removePrefix(getURI({ $ref: $ref, $uri: $uri, $type: $type, $id: $id }), this.prefix); | ||
var entry = utils_1.entries(this.resources) | ||
.find(function (_a) { | ||
var resourceURI = _a[0]; | ||
return uri.indexOf(resourceURI + "/") === 0; | ||
}); | ||
if (!entry) { | ||
return Promise.reject(new Error("URI '" + uri + "' is an uninterpretable or unknown Potion resource.")); | ||
} | ||
else { | ||
var resourceURI = entry[0], resource = entry[1]; | ||
var params = { resource: resource, uri: uri }; | ||
var id = parseID($id); | ||
if (id !== null) { | ||
Object.assign(params, { id: id }); | ||
} | ||
else { | ||
var part = uri.substring(resourceURI.length + 1) | ||
.split('/')[0]; | ||
Object.assign(params, { | ||
id: parseID(part) | ||
}); | ||
} | ||
return Promise.resolve(params); | ||
} | ||
}; | ||
PotionBase.prototype.parsePotionJSONProperties = function (json, properties) { | ||
if (properties === void 0) { properties = new Map(); } | ||
var Promise = this.Promise; | ||
var promises = []; | ||
var _loop_1 = function (key, value) { | ||
promises.push(this_1.fromPotionJSON(value).then(function (value) { | ||
properties.set(utils_1.toCamelCase(key), value); | ||
return value; | ||
})); | ||
}; | ||
var this_1 = this; | ||
for (var _i = 0, _a = utils_1.entries(json); _i < _a.length; _i++) { | ||
var _b = _a[_i], key = _b[0], value = _b[1]; | ||
_loop_1(key, value); | ||
} | ||
return Promise.all(promises) | ||
.then(function () { return utils_1.mapToObject(properties); }); | ||
}; | ||
return PotionBase; | ||
}()); | ||
exports.PotionBase = PotionBase; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb3JlL3BvdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUEsd0NBQXdDO0FBQ3hDLHVDQUtvQjtBQUNwQiwrQkFBeUM7QUFDekMsMkNBQTJEO0FBQzNELGtDQVFrQjtBQXlEbEI7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0g7SUFTQyxvQkFBWSxFQUFtRDtZQUFuRCw0QkFBbUQsRUFBbEQsWUFBUyxFQUFULDhCQUFTLEVBQUUsY0FBVyxFQUFYLGdDQUFXLEVBQUUsZ0JBQUs7UUFSakMsY0FBUyxHQUEwQixFQUFFLENBQUM7UUFLOUIsWUFBTyxHQUFtQix3QkFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsOERBQThEO1FBQ3RILHVCQUFrQixHQUFxQixJQUFJLEdBQUcsRUFBRSxDQUFDO1FBR3hELElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxJQUFJLElBQUksZ0JBQVEsRUFBRSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQ3RCLENBQUM7SUFFRCwwQkFBSyxHQUFMLFVBQU0sR0FBVyxFQUFFLFlBQTJCLEVBQUUsVUFBNEI7UUFBNUUsaUJBZ0ZDO1FBL0VBLElBQU0sT0FBTyxnQkFBcUIsWUFBWSxDQUFDLENBQUM7UUFDekMsSUFBQSx1QkFBTSxFQUFFLHFCQUFLLEVBQUUsMkJBQVEsRUFBRSxtQkFBSSxDQUFZO1FBQzNDLElBQUEsdUJBQU0sQ0FBWTtRQUN2QixJQUFNLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDVCxJQUFBLHNCQUFPLENBQVM7UUFFdkIsb0NBQW9DO1FBQzdCLElBQUEsb0JBQU0sQ0FBUztRQUN0QixFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNoQyxHQUFHLEdBQUcsS0FBRyxNQUFNLEdBQUcsR0FB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QUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlCLENBQUM7SUFDRixDQUFDO0lBQ0YsaUJBQUM7QUFBRCxDQTNTQSxBQTJTQyxJQUFBO0FBM1NxQixnQ0FBVSIsImZpbGUiOiJwb3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyogdHNsaW50OmRpc2FibGU6bWF4LWZpbGUtbGluZS1jb3VudCAqL1xuaW1wb3J0IHtcblx0ZGVjb3JhdGVDdG9yV2l0aFBvdGlvbkluc3RhbmNlLFxuXHRkZWNvcmF0ZUN0b3JXaXRoUG90aW9uVVJJLFxuXHRwb3Rpb25Qcm9taXNlLFxuXHRyZWFkb25seVxufSBmcm9tICcuL21ldGFkYXRhJztcbmltcG9ydCB7SXRlbSwgSXRlbU9wdGlvbnN9IGZyb20gJy4vaXRlbSc7XG5pbXBvcnQge1BhZ2luYXRpb24sIFBhZ2luYXRpb25PcHRpb25zfSBmcm9tICcuL3BhZ2luYXRpb24nO1xuaW1wb3J0IHtcblx0ZW50cmllcyxcblx0aXNBcnJheSxcblx0bWFwVG9PYmplY3QsXG5cdE1lbUNhY2hlLFxuXHRvbWFwLFxuXHR0b0NhbWVsQ2FzZSxcblx0dG9TbmFrZUNhc2Vcbn0gZnJvbSAnLi4vdXRpbHMnO1xuXG5cbi8qKlxuICogSXRlbSBjYWNoZS5cbiAqIERpY3RhdGVzIHRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgaXRlbSBjYWNoZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJdGVtQ2FjaGU8VCBleHRlbmRzIEl0ZW0+IHtcblx0Z2V0KGtleTogc3RyaW5nKTogVDtcblx0cHV0KGtleTogc3RyaW5nLCBpdGVtOiBUKTogVDtcblx0cmVtb3ZlKGtleTogc3RyaW5nKTogdm9pZDtcbn1cblxuXG4vKipcbiAqIENvbW1vbiBpbnRlcmZhY2VzLlxuICovXG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFyc2VkVVJJIHtcblx0dXJpOiBzdHJpbmc7XG5cdHJlc291cmNlOiBJdGVtO1xuXHRwYXJhbXM6IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVSTFNlYXJjaFBhcmFtcyB7XG5cdFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXF1ZXN0T3B0aW9ucyB7XG5cdG1ldGhvZD86IHN0cmluZztcblx0c2VhcmNoPzogVVJMU2VhcmNoUGFyYW1zIHwgbnVsbDtcblx0ZGF0YT86IGFueTtcblx0Y2FjaGU/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZldGNoT3B0aW9ucyBleHRlbmRzIFJlcXVlc3RPcHRpb25zIHtcblx0cGFnaW5hdGU/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFF1ZXJ5T3B0aW9ucyBleHRlbmRzIFBhZ2luYXRpb25PcHRpb25zIHtcblx0d2hlcmU/OiBhbnk7XG5cdHNvcnQ/OiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG90aW9uUmVzcG9uc2Uge1xuXHRkYXRhOiBhbnk7XG5cdGhlYWRlcnM6IGFueTtcbn1cblxuXG5leHBvcnQgaW50ZXJmYWNlIFBvdGlvbk9wdGlvbnMge1xuXHRob3N0Pzogc3RyaW5nO1xuXHRwcmVmaXg/OiBzdHJpbmc7XG5cdGNhY2hlPzogSXRlbUNhY2hlPEl0ZW0+O1xufVxuXG5cbi8qKlxuICogVGhpcyBjbGFzcyBjb250YWlucyB0aGUgbWFpbiBsb2dpYyBmb3IgaW50ZXJhY3Rpbmcgd2l0aCB0aGUgRmxhc2sgUG90aW9uIGJhY2tlbmQuXG4gKiBOb3RlIHRoYXQgdGhpcyBjbGFzcyBkb2VzIG5vdCBjb250YWluIHRoZSBsb2dpYyBmb3IgbWFraW5nIHRoZSBIVFRQIHJlcXVlc3RzLFxuICogaXQgaXMgdXAgdG8gdGhlIGNoaWxkIGNsYXNzIHRvIGltcGxlbWVudCB0aGUgbG9naWMgZm9yIHRoYXQgdGhyb3VnaCB0aGUgYHJlcXVlc3RgIG1ldGhvZC5cbiAqIEZ1cnRoZXJtb3JlLCB0aGUgY2hpbGQgY2xhc3MgYWxzbyBuZWVkcyB0byBwcm92aWRlIHRoZSBQcm9taXNlIGNsYXNzL2ZuIGFzIHRoaXMgY2xhc3MgaXMgc2V0IHRvIHVzZSB0aGUgbmF0aXZlIFByb21pc2Ugb25seSBhdmFpbGFibGUgZnJvbSBFUzYuXG4gKlxuICogQGV4YW1wbGVcbiAqIGNsYXNzIFBvdGlvbiBleHRlbmRzIFBvdGlvbkJhc2Uge1xuICogICAgIHByb3RlY3RlZCByZXF1ZXN0KHVyaSwgb3B0aW9ucz86IFJlcXVlc3RPcHRpb25zKTogUHJvbWlzZTxhbnk+IHtcbiAqICAgICAgICAgLy8gSGVyZSB3ZSBuZWVkIHRvIGltcGxlbWVudCB0aGUgYWN0dWFsIEhUVFAgcmVxdWVzdFxuICogICAgIH07XG4gKiB9XG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBQb3Rpb25CYXNlIHtcblx0cmVhZG9ubHkgcmVzb3VyY2VzOiB7W2tleTogc3RyaW5nXTogSXRlbX0gPSB7fTtcblx0cmVhZG9ubHkgY2FjaGU6IEl0ZW1DYWNoZTxJdGVtPjtcblx0aG9zdDogc3RyaW5nO1xuXHRyZWFkb25seSBwcmVmaXg6IHN0cmluZztcblxuXHRwcml2YXRlIHJlYWRvbmx5IFByb21pc2U6IHR5cGVvZiBQcm9taXNlID0gcG90aW9uUHJvbWlzZSh0aGlzKTsgLy8gTk9URTogVGhpcyBpcyBuZWVkZWQgb25seSB0byBwcm92aWRlIHN1cHBvcnQgZm9yIEFuZ3VsYXJKUy5cblx0cHJpdmF0ZSBwZW5kaW5nR0VUUmVxdWVzdHM6IE1hcDxzdHJpbmcsIGFueT4gPSBuZXcgTWFwKCk7XG5cblx0Y29uc3RydWN0b3Ioe2hvc3QgPSAnJywgcHJlZml4ID0gJycsIGNhY2hlfTogUG90aW9uT3B0aW9ucyA9IHt9KSB7XG5cdFx0dGhpcy5jYWNoZSA9IGNhY2hlIHx8IG5ldyBNZW1DYWNoZSgpO1xuXHRcdHRoaXMuaG9zdCA9IGhvc3Q7XG5cdFx0dGhpcy5wcmVmaXggPSBwcmVmaXg7XG5cdH1cblxuXHRmZXRjaCh1cmk6IHN0cmluZywgZmV0Y2hPcHRpb25zPzogRmV0Y2hPcHRpb25zLCBwYWdpbmF0aW9uPzogUGFnaW5hdGlvbjxhbnk+KTogUHJvbWlzZTxJdGVtIHwgSXRlbVtdIHwgUGFnaW5hdGlvbjxJdGVtPiB8IGFueT4ge1xuXHRcdGNvbnN0IG9wdGlvbnM6IEZldGNoT3B0aW9ucyA9IHsuLi5mZXRjaE9wdGlvbnN9O1xuXHRcdGNvbnN0IHttZXRob2QsIGNhY2hlLCBwYWdpbmF0ZSwgZGF0YX0gPSBvcHRpb25zO1xuXHRcdGxldCB7c2VhcmNofSA9IG9wdGlvbnM7XG5cdFx0Y29uc3Qga2V5ID0gdXJpO1xuXHRcdGNvbnN0IHtQcm9taXNlfSA9IHRoaXM7XG5cblx0XHQvLyBBZGQgdGhlIEFQSSBwcmVmaXggaWYgbm90IHByZXNlbnRcblx0XHRjb25zdCB7cHJlZml4fSA9IHRoaXM7XG5cdFx0aWYgKHVyaS5pbmRleE9mKHByZWZpeCkgPT09IC0xKSB7XG5cdFx0XHR1cmkgPSBgJHtwcmVmaXh9JHt1cml9YDtcblx0XHR9XG5cblx0XHRpZiAocGFnaW5hdGUpIHtcblx0XHRcdC8vIElmIG5vIHBhZ2Ugd2FzIHByb3ZpZGVkIHNldCB0byBmaXJzdFxuXHRcdFx0Ly8gRGVmYXVsdCB0byAyNSBpdGVtcyBwZXIgcGFnZVxuXHRcdFx0c2VhcmNoID0gb3B0aW9ucy5zZWFyY2ggPSBPYmplY3QuYXNzaWduKHtwYWdlOiAxLCBwZXJQYWdlOiAyNX0sIHNlYXJjaCk7XG5cdFx0fVxuXG5cdFx0Ly8gQ29udmVydCB0aGUge2RhdGEsIHNlYXJjaH0gb2JqZWN0IHByb3BzIHRvIHNuYWtlIGNhc2UuXG5cdFx0Ly8gU2VyaWFsaXplIGFsbCB2YWx1ZXMgdG8gUG90aW9uIEpTT04uXG5cdFx0Y29uc3QgZmV0Y2ggPSAoKSA9PiB0aGlzLnJlcXVlc3QoYCR7dGhpcy5ob3N0fSR7dXJpfWAsIHsuLi5vcHRpb25zLCAuLi57XG5cdFx0XHRcdHNlYXJjaDogdGhpcy50b1BvdGlvbkpTT04oc2VhcmNoKSxcblx0XHRcdFx0ZGF0YTogdGhpcy50b1BvdGlvbkpTT04oZGF0YSlcblx0XHRcdH19KVxuXHRcdFx0Ly8gQ29udmVydCB0aGUgZGF0YSB0byBQb3Rpb24gSlNPTlxuXHRcdFx0LnRoZW4ocmVzcG9uc2UgPT4gdGhpcy5kZXNlcmlhbGl6ZShyZXNwb25zZSkpXG5cdFx0XHQudGhlbigoe2hlYWRlcnMsIGRhdGF9KSA9PiB7XG5cdFx0XHRcdC8vIFJldHVybiBvciB1cGRhdGUgUGFnaW5hdGlvblxuXHRcdFx0XHRpZiAocGFnaW5hdGUpIHtcblx0XHRcdFx0XHRjb25zdCBjb3VudCA9IGhlYWRlcnNbJ3gtdG90YWwtY291bnQnXSB8fCBkYXRhLmxlbmd0aDtcblx0XHRcdFx0XHRpZiAoIXBhZ2luYXRpb24pIHtcblx0XHRcdFx0XHRcdHJldHVybiBuZXcgUGFnaW5hdGlvbjxJdGVtPih7dXJpLCBwb3Rpb246IHRoaXN9LCBkYXRhLCBjb3VudCwgb3B0aW9ucyk7XG5cdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdHJldHVybiBwYWdpbmF0aW9uLnVwZGF0ZShkYXRhLCBjb3VudCk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdHJldHVybiBkYXRhO1xuXHRcdFx0fSk7XG5cblx0XHRpZiAobWV0aG9kID09PSAnR0VUJyAmJiAhc2VhcmNoKSB7XG5cdFx0XHQvLyBJZiBhIEdFVCByZXF1ZXN0IGFuZCB7Y2FjaGU6IHRydWV9LFxuXHRcdFx0Ly8gdHJ5IHRvIGdldCBpdGVtIGZyb20gY2FjaGUsXG5cdFx0XHQvLyBhbmQgcmV0dXJuIGEgcmVzb2x2ZWQgcHJvbWlzZSB3aXRoIHRoZSBjYWNoZWQgaXRlbS5cblx0XHRcdC8vIE5vdGUgdGhhdCBxdWVyaWVzIGFyZSBub3QgY2FjaGVkLlxuXHRcdFx0aWYgIChjYWNoZSkge1xuXHRcdFx0XHRjb25zdCBpdGVtID0gdGhpcy5jYWNoZS5nZXQoa2V5KTtcblx0XHRcdFx0aWYgKGl0ZW0pIHtcblx0XHRcdFx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGl0ZW0pO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC8vIElmIHdlIGFscmVhZHkgYXNrZWQgZm9yIHRoZSByZXNvdXJjZSxcblx0XHRcdC8vIHJldHVybiB0aGUgZXhpdGluZyBwZW5kaW5nIHJlcXVlc3QgcHJvbWlzZS5cblx0XHRcdGlmICh0aGlzLnBlbmRpbmdHRVRSZXF1ZXN0cy5oYXModXJpKSkge1xuXHRcdFx0XHRyZXR1cm4gdGhpcy5wZW5kaW5nR0VUUmVxdWVzdHMuZ2V0KHVyaSk7XG5cdFx0XHR9XG5cblx0XHRcdGNvbnN0IHJlcXVlc3QgPSBmZXRjaCgpO1xuXHRcdFx0Ly8gU2F2ZSBwZW5kaW5nIHJlcXVlc3Rcblx0XHRcdHRoaXMucGVuZGluZ0dFVFJlcXVlc3RzLnNldCh1cmksIHJlcXVlc3QpO1xuXG5cdFx0XHRyZXR1cm4gcmVxdWVzdC50aGVuKGRhdGEgPT4ge1xuXHRcdFx0XHR0aGlzLnBlbmRpbmdHRVRSZXF1ZXN0cy5kZWxldGUodXJpKTtcblx0XHRcdFx0cmV0dXJuIGRhdGE7XG5cdFx0XHR9LCBlcnIgPT4ge1xuXHRcdFx0XHQvLyBJZiByZXF1ZXN0IGZhaWxzLFxuXHRcdFx0XHQvLyBtYWtlIHN1cmUgdG8gcmVtb3ZlIHRoZSBwZW5kaW5nIHJlcXVlc3Qgc28gZnVydGhlciByZXF1ZXN0cyBjYW4gYmUgbWFkZS5cblx0XHRcdFx0Ly8gUmV0dXJuIGlzIG5lY2Vzc2FyeS5cblx0XHRcdFx0dGhpcy5wZW5kaW5nR0VUUmVxdWVzdHMuZGVsZXRlKHVyaSk7XG5cdFx0XHRcdGNvbnN0IG1lc3NhZ2UgPSBlcnIgaW5zdGFuY2VvZiBFcnJvclxuXHRcdFx0XHRcdD8gZXJyLm1lc3NhZ2Vcblx0XHRcdFx0XHQ6IHR5cGVvZiBlcnIgPT09ICdzdHJpbmcnXG5cdFx0XHRcdFx0XHQ/IGVyclxuXHRcdFx0XHRcdFx0OiBgQW4gZXJyb3Igb2NjdXJyZWQgd2hpbGUgUG90aW9uIHRyaWVkIHRvIHJldHJpZXZlIGEgcmVzb3VyY2UgZnJvbSAnJHt1cml9Jy5gO1xuXHRcdFx0XHRyZXR1cm4gUHJvbWlzZS5yZWplY3QobWVzc2FnZSk7XG5cdFx0XHRcdH0pO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRyZXR1cm4gZmV0Y2goKTtcblx0XHR9XG5cdH1cblxuXHQvKipcblx0ICogUmVnaXN0ZXIgYSByZXNvdXJjZS5cblx0ICogQHBhcmFtIHtTdHJpbmd9IHVyaSAtIFBhdGggb24gd2hpY2ggdGhlIHJlc291cmNlIGlzIHJlZ2lzdGVyZWQuXG5cdCAqIEBwYXJhbSB7SXRlbX0gcmVzb3VyY2Vcblx0ICogQHBhcmFtIHtJdGVtT3B0aW9uc30gb3B0aW9ucyAtIFNldCB0aGUgcHJvcGVydHkgb3B0aW9ucyBmb3IgYW55IGluc3RhbmNlIG9mIHRoZSByZXNvdXJjZSAoc2V0dGluZyBhIHByb3BlcnR5IHRvIHJlYWRvbmx5IGZvciBpbnN0YW5jZSkuXG5cdCAqL1xuXHRyZWdpc3Rlcih1cmk6IHN0cmluZywgcmVzb3VyY2U6IGFueSwgb3B0aW9ucz86IEl0ZW1PcHRpb25zKTogSXRlbSB7XG5cdFx0ZGVjb3JhdGVDdG9yV2l0aFBvdGlvbkluc3RhbmNlKHJlc291cmNlLCB0aGlzKTtcblx0XHRkZWNvcmF0ZUN0b3JXaXRoUG90aW9uVVJJKHJlc291cmNlLCB1cmkpO1xuXG5cdFx0aWYgKG9wdGlvbnMgJiYgaXNBcnJheShvcHRpb25zLnJlYWRvbmx5KSkge1xuXHRcdFx0b3B0aW9ucy5yZWFkb25seS5mb3JFYWNoKHByb3BlcnR5ID0+IHJlYWRvbmx5KHJlc291cmNlLCBwcm9wZXJ0eSkpO1xuXHRcdH1cblx0XHR0aGlzLnJlc291cmNlc1t1cmldID0gcmVzb3VyY2U7XG5cblx0XHRyZXR1cm4gcmVzb3VyY2U7XG5cdH1cblxuXHQvKipcblx0ICogUmVnaXN0ZXIgYSByZXNvdXJjZS5cblx0ICogQHBhcmFtIHtTdHJpbmd9IHVyaSAtIFBhdGggb24gd2hpY2ggdGhlIHJlc291cmNlIGlzIHJlZ2lzdGVyZWQuXG5cdCAqIEBwYXJhbSB7SXRlbU9wdGlvbnN9IG9wdGlvbnMgLSBTZXQgdGhlIHByb3BlcnR5IG9wdGlvbnMgZm9yIGFueSBpbnN0YW5jZSBvZiB0aGUgcmVzb3VyY2UgKHNldHRpbmcgYSBwcm9wZXJ0eSB0byByZWFkb25seSBmb3IgaW5zdGFuY2UpLlxuXHQgKlxuXHQgKiBAZXhhbXBsZVxuXHQgKiBAcG90aW9uLnJlZ2lzdGVyQXMoJy91c2VyJylcblx0ICogY2xhc3MgVXNlciBleHRlbmRzIEl0ZW0ge31cblx0ICovXG5cdHJlZ2lzdGVyQXModXJpOiBzdHJpbmcsIG9wdGlvbnM/OiBJdGVtT3B0aW9ucyk6IENsYXNzRGVjb3JhdG9yIHtcblx0XHRyZXR1cm4gKHRhcmdldDogYW55KSA9PiB7XG5cdFx0XHR0aGlzLnJlZ2lzdGVyKHVyaSwgdGFyZ2V0LCBvcHRpb25zKTtcblx0XHRcdHJldHVybiB0YXJnZXQ7XG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBNYWtlIGEgSFRUUCByZXF1ZXN0LlxuXHQgKiBAcGFyYW0ge3N0cmluZ30gdXJpXG5cdCAqIEBwYXJhbSB7UmVxdWVzdE9wdGlvbnN9IG9wdGlvbnNcblx0ICogQHJldHVybnMge1BvdGlvblJlc3BvbnNlfSBBbiBvYmplY3Qgd2l0aCB7ZGF0YSwgaGVhZGVyc30gd2hlcmUge2RhdGF9IGNhbiBiZSBhbnl0aGluZyBhbmQge2hlYWRlcnN9IGlzIGFuIG9iamVjdCB3aXRoIHRoZSByZXNwb25zZSBoZWFkZXJzIGZyb20gdGhlIEhUVFAgcmVxdWVzdC5cblx0ICovXG5cdHByb3RlY3RlZCBhYnN0cmFjdCByZXF1ZXN0KHVyaTogc3RyaW5nLCBvcHRpb25zPzogUmVxdWVzdE9wdGlvbnMpOiBQcm9taXNlPFBvdGlvblJlc3BvbnNlPjsgLy8gdHNsaW50OmRpc2FibGUtbGluZTogcHJlZmVyLWZ1bmN0aW9uLW92ZXItbWV0aG9kXG5cblx0cHJpdmF0ZSBwYXJzZVVSSSh1cmk6IHN0cmluZyk6IFBhcnNlZFVSSSB7XG5cdFx0dXJpID0gZGVjb2RlVVJJQ29tcG9uZW50KHVyaSk7XG5cblx0XHRpZiAodXJpLmluZGV4T2YodGhpcy5wcmVmaXgpID09PSAwKSB7XG5cdFx0XHR1cmkgPSB1cmkuc3Vic3RyaW5nKHRoaXMucHJlZml4Lmxlbmd0aCk7XG5cdFx0fVxuXG5cdFx0Zm9yIChjb25zdCBbcmVzb3VyY2VVUkksIHJlc291cmNlXSBvZiBlbnRyaWVzPHN0cmluZywgYW55Pih0aGlzLnJlc291cmNlcykpIHtcblx0XHRcdGlmICh1cmkuaW5kZXhPZihgJHtyZXNvdXJjZVVSSX0vYCkgPT09IDApIHtcblx0XHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0XHR1cmksXG5cdFx0XHRcdFx0cmVzb3VyY2UsXG5cdFx0XHRcdFx0cGFyYW1zOiB1cmkuc3Vic3RyaW5nKHJlc291cmNlVVJJLmxlbmd0aCArIDEpXG5cdFx0XHRcdFx0XHQuc3BsaXQoJy8nKVxuXHRcdFx0XHR9O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHRocm93IG5ldyBFcnJvcihgVVJJICcke3VyaX0nIGlzIGFuIHVuaW50ZXJwcmV0YWJsZSBvciB1bmtub3duIHBvdGlvbiByZXNvdXJjZS5gKTtcblx0fVxuXG5cdHByaXZhdGUgdG9Qb3Rpb25KU09OKGpzb246IGFueSk6IHtba2V5OiBzdHJpbmddOiBhbnl9IHtcblx0XHQvLyBjb25zb2xlLmxvZyhqc29uKVxuXHRcdGlmICh0eXBlb2YganNvbiA9PT0gJ29iamVjdCcgJiYganNvbiAhPT0gbnVsbCkge1xuXHRcdFx0aWYgKGpzb24gaW5zdGFuY2VvZiBJdGVtICYmIHR5cGVvZiBqc29uLnVyaSA9PT0gJ3N0cmluZycpIHtcblx0XHRcdFx0cmV0dXJuIHskcmVmOiBgJHt0aGlzLnByZWZpeH0ke2pzb24udXJpfWB9O1xuXHRcdFx0fSBlbHNlIGlmIChqc29uIGluc3RhbmNlb2YgRGF0ZSkge1xuXHRcdFx0XHRyZXR1cm4geyRkYXRlOiBqc29uLmdldFRpbWUoKX07XG5cdFx0XHR9IGVsc2UgaWYgKGlzQXJyYXkoanNvbikpIHtcblx0XHRcdFx0cmV0dXJuIGpzb24ubWFwKGl0ZW0gPT4gdGhpcy50b1BvdGlvbkpTT04oaXRlbSkpO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0cmV0dXJuIG9tYXAoanNvbiwga2V5ID0+IHRvU25ha2VDYXNlKGtleSksIHZhbHVlID0+IHRoaXMudG9Qb3Rpb25KU09OKHZhbHVlKSwgdGhpcyk7XG5cdFx0XHR9XG5cdFx0fSBlbHNlIHtcblx0XHRcdHJldHVybiBqc29uO1xuXHRcdH1cblx0fVxuXG5cdHByaXZhdGUgZGVzZXJpYWxpemUoe2RhdGEsIGhlYWRlcnN9OiBQb3Rpb25SZXNwb25zZSk6IFByb21pc2U8UG90aW9uUmVzcG9uc2U+IHtcblx0XHRyZXR1cm4gdGhpcy5mcm9tUG90aW9uSlNPTihkYXRhKVxuXHRcdFx0LnRoZW4oanNvbiA9PiAoe1xuXHRcdFx0XHRoZWFkZXJzLFxuXHRcdFx0XHRkYXRhOiBqc29uXG5cdFx0XHR9KSk7XG5cdH1cblxuXHRwcml2YXRlIGZyb21Qb3Rpb25KU09OKGpzb246IGFueSk6IFByb21pc2U8e1trZXk6IHN0cmluZ106IGFueX0+IHtcblx0XHRjb25zdCB7UHJvbWlzZX0gPSB0aGlzO1xuXHRcdGlmICh0eXBlb2YganNvbiA9PT0gJ29iamVjdCcgJiYganNvbiAhPT0gbnVsbCkge1xuXHRcdFx0aWYgKGlzQXJyYXkoanNvbikpIHtcblx0XHRcdFx0cmV0dXJuIFByb21pc2UuYWxsKGpzb24ubWFwKGl0ZW0gPT4gdGhpcy5mcm9tUG90aW9uSlNPTihpdGVtKSkpO1xuXHRcdFx0fSBlbHNlIGlmICh0eXBlb2YganNvbi4kdXJpID09PSAnc3RyaW5nJykge1xuXHRcdFx0XHQvLyBUT0RPOiB0aGUganNvbiBtYXkgYWxzbyBoYXZlIHskdHlwZSwgJGlkfSB0aGF0IGNhbiBiZSB1c2VkIHRvIHJlY29nbml6ZSBhIHJlc291cmNlXG5cdFx0XHRcdC8vIElmIG5laXRoZXIgY29tYmluYXRpb24gaXMgcHJvdmlkZWQsIGl0IHNob3VsZCB0aHJvdyBhbmQgbGV0IHRoZSB1c2VyIG5vdyBGbGFzayBQb3Rpb24gbmVlZHMgdG8gYmUgY29uZmlndXJlZCB3aXRoIG9uZSBvZiB0aGVzZSB0d28gc3RyYXRlZ2llcy5cblxuXHRcdFx0XHQvLyBUcnkgdG8gcGFyc2UgdGhlIFVSSSxcblx0XHRcdFx0Ly8gb3RoZXJ3aXNlIHJlamVjdCB3aXRoIHRoZSBleGNlcHRpb24gdGhyb3duIGZyb20gcGFyc2VVUkkuXG5cdFx0XHRcdGxldCByZXNvdXJjZTtcblx0XHRcdFx0bGV0IHBhcmFtcztcblx0XHRcdFx0bGV0IHVyaTtcblx0XHRcdFx0dHJ5IHtcblx0XHRcdFx0XHRjb25zdCBwYXJzZWRVUkkgPSB0aGlzLnBhcnNlVVJJKGpzb24uJHVyaSk7XG5cdFx0XHRcdFx0cmVzb3VyY2UgPSBwYXJzZWRVUkkucmVzb3VyY2U7XG5cdFx0XHRcdFx0cGFyYW1zID0gcGFyc2VkVVJJLnBhcmFtcztcblx0XHRcdFx0XHR1cmkgPSBwYXJzZWRVUkkudXJpO1xuXHRcdFx0XHR9IGNhdGNoIChwYXJzZVVSSUVycm9yKSB7XG5cdFx0XHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KHBhcnNlVVJJRXJyb3IpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Y29uc3QgcHJvcGVydGllczogTWFwPHN0cmluZywgYW55PiA9IG5ldyBNYXAoKTtcblx0XHRcdFx0Y29uc3QgcHJvbWlzZXM6IE1hcDxzdHJpbmcsIFByb21pc2U8YW55Pj4gPSBuZXcgTWFwKCk7XG5cblx0XHRcdFx0Ly8gQ2FjaGUgdGhlIHJlc291cmNlIGlmIGl0IGRvZXMgbm90IGV4aXN0LFxuXHRcdFx0XHQvLyBidXQgZG8gaXQgYmVmb3JlIHJlc29sdmluZyBhbnkgcG9zc2libGUgcmVmZXJlbmNlcyAodG8gb3RoZXIgcmVzb3VyY2VzKSBvbiBpdC5cblx0XHRcdFx0aWYgKCF0aGlzLmNhY2hlLmdldCh1cmkpKSB7XG5cdFx0XHRcdFx0dGhpcy5jYWNoZS5wdXQodXJpLCBSZWZsZWN0LmNvbnN0cnVjdChyZXNvdXJjZSwgW10pKTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8vIFJlc29sdmUgcG9zc2libGUgcmVmZXJlbmNlc1xuXHRcdFx0XHRmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBlbnRyaWVzPHN0cmluZywgYW55Pihqc29uKSkge1xuXHRcdFx0XHRcdGlmIChrZXkgPT09ICckdXJpJykge1xuXHRcdFx0XHRcdFx0cHJvcGVydGllcy5zZXQoa2V5LCB1cmkpO1xuXHRcdFx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdFx0XHRjb25zdCBrID0gdG9DYW1lbENhc2Uoa2V5KTtcblx0XHRcdFx0XHRcdHByb21pc2VzLnNldChrLCB0aGlzLmZyb21Qb3Rpb25KU09OKHZhbHVlKS50aGVuKHZhbHVlID0+IHtcblx0XHRcdFx0XHRcdFx0cHJvcGVydGllcy5zZXQoaywgdmFsdWUpO1xuXHRcdFx0XHRcdFx0XHRyZXR1cm4gdmFsdWU7XG5cdFx0XHRcdFx0XHR9KSk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ly8gU2V0IHRoZSBpZFxuXHRcdFx0XHRjb25zdCBbaWRdID0gcGFyYW1zO1xuXHRcdFx0XHRwcm9wZXJ0aWVzLnNldCgnJGlkJywgTnVtYmVyLmlzSW50ZWdlcihpZCkgfHwgL15cXGQrJC8udGVzdChpZCkgPyBwYXJzZUludChpZCwgMTApIDogaWQpO1xuXG5cdFx0XHRcdHJldHVybiBQcm9taXNlLmFsbChBcnJheS5mcm9tKHByb21pc2VzLnZhbHVlcygpKSlcblx0XHRcdFx0XHQudGhlbigoKSA9PiB7XG5cdFx0XHRcdFx0XHQvLyBUcnkgdG8gZ2V0IGV4aXN0aW5nIGVudHJ5IGZyb20gY2FjaGVcblx0XHRcdFx0XHRcdGxldCBpdGVtID0gdGhpcy5jYWNoZS5nZXQodXJpKTtcblx0XHRcdFx0XHRcdGlmIChpdGVtKSB7XG5cdFx0XHRcdFx0XHRcdC8vIFVwZGF0ZSBleGlzdGluZyBlbnRyeSB3aXRoIG5ldyBwcm9wZXJ0aWVzXG5cdFx0XHRcdFx0XHRcdE9iamVjdC5hc3NpZ24oaXRlbSwgbWFwVG9PYmplY3QocHJvcGVydGllcykpO1xuXHRcdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdFx0Ly8gQ3JlYXRlIGEgbmV3IGVudHJ5XG5cdFx0XHRcdFx0XHRcdGl0ZW0gPSBSZWZsZWN0LmNvbnN0cnVjdChyZXNvdXJjZSwgW21hcFRvT2JqZWN0KHByb3BlcnRpZXMpXSk7XG5cdFx0XHRcdFx0XHRcdHRoaXMuY2FjaGUucHV0KHVyaSwgaXRlbSk7XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdHJldHVybiBpdGVtO1xuXHRcdFx0XHRcdH0pO1xuXHRcdFx0fSBlbHNlIGlmICh0eXBlb2YganNvbi4kc2NoZW1hID09PSAnc3RyaW5nJykge1xuXHRcdFx0XHQvLyBJZiB3ZSBoYXZlIGEgc2NoZW1hIG9iamVjdCxcblx0XHRcdFx0Ly8gd2Ugd2FudCB0byByZXNvbHZlIGl0IGFzIGl0IGlzIGFuZCBub3QgdHJ5IHRvIHJlc29sdmUgcmVmZXJlbmNlcyBvciBkbyBhbnkgY29udmVyc2lvbnMuXG5cdFx0XHRcdC8vIFRob3VnaCwgd2Ugd2FudCB0byBjb252ZXJ0IHNuYWtlIGNhc2UgdG8gY2FtZWwgY2FzZS5cblx0XHRcdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZShvbWFwKGpzb24sIGtleSA9PiB0b0NhbWVsQ2FzZShrZXkpKSk7XG5cdFx0XHR9IGVsc2UgaWYgKE9iamVjdC5rZXlzKGpzb24pLmxlbmd0aCA9PT0gMSkge1xuXHRcdFx0XHRpZiAodHlwZW9mIGpzb24uJHJlZiA9PT0gJ3N0cmluZycpIHtcblx0XHRcdFx0XHQvLyBIYWNrIHRvIG5vdCB0cnkgdG8gcmVzb2x2ZSBzZWxmIHJlZmVyZW5jZXMuXG5cdFx0XHRcdFx0Ly8gVE9ETzogSW1wbGVtZW50IHJlc29sdmluZyBzZWxmLXJlZmVyZW5jZXNcblx0XHRcdFx0XHRpZiAoanNvbi4kcmVmID09PSAnIycpIHtcblx0XHRcdFx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoanNvbi4kcmVmKTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQvLyBUcnkgdG8gcGFyc2UgdGhlIFVSSSxcblx0XHRcdFx0XHQvLyBvdGhlcndpc2UgcmVqZWN0IHdpdGggdGhlIGV4Y2VwdGlvbiB0aHJvd24gZnJvbSBwYXJzZVVSSS5cblx0XHRcdFx0XHRsZXQgdXJpO1xuXHRcdFx0XHRcdHRyeSB7XG5cdFx0XHRcdFx0XHRjb25zdCBwYXJzZWRVUkkgPSB0aGlzLnBhcnNlVVJJKGpzb24uJHJlZik7XG5cdFx0XHRcdFx0XHR1cmkgPSBwYXJzZWRVUkkudXJpO1xuXHRcdFx0XHRcdH0gY2F0Y2ggKHBhcnNlVVJJRXJyb3IpIHtcblx0XHRcdFx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChwYXJzZVVSSUVycm9yKTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRyZXR1cm4gdGhpcy5mZXRjaCh1cmksIHtcblx0XHRcdFx0XHRcdGNhY2hlOiB0cnVlLFxuXHRcdFx0XHRcdFx0bWV0aG9kOiAnR0VUJ1xuXHRcdFx0XHRcdH0pO1xuXHRcdFx0XHR9IGVsc2UgaWYgKHR5cGVvZiBqc29uLiRkYXRlICE9PSAndW5kZWZpbmVkJykge1xuXHRcdFx0XHRcdC8vIFBhcnNlIFBvdGlvbiBkYXRlXG5cdFx0XHRcdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZShuZXcgRGF0ZShqc29uLiRkYXRlKSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Y29uc3QgcHJvcGVydGllczogTWFwPHN0cmluZywgYW55PiA9IG5ldyBNYXAoKTtcblx0XHRcdGNvbnN0IHByb21pc2VzOiBNYXA8c3RyaW5nLCBQcm9taXNlPGFueT4+ID0gbmV3IE1hcCgpO1xuXG5cdFx0XHRmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBlbnRyaWVzPHN0cmluZywgYW55Pihqc29uKSkge1xuXHRcdFx0XHRjb25zdCBrID0gdG9DYW1lbENhc2Uoa2V5KTtcblx0XHRcdFx0cHJvbWlzZXMuc2V0KGssIHRoaXMuZnJvbVBvdGlvbkpTT04odmFsdWUpLnRoZW4odmFsdWUgPT4ge1xuXHRcdFx0XHRcdHByb3BlcnRpZXMuc2V0KGssIHZhbHVlKTtcblx0XHRcdFx0XHRyZXR1cm4gdmFsdWU7XG5cdFx0XHRcdH0pKTtcblx0XHRcdH1cblxuXHRcdFx0cmV0dXJuIFByb21pc2UuYWxsKEFycmF5LmZyb20ocHJvbWlzZXMudmFsdWVzKCkpKVxuXHRcdFx0XHQudGhlbigoKSA9PiBtYXBUb09iamVjdChwcm9wZXJ0aWVzKSk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoanNvbik7XG5cdFx0fVxuXHR9XG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,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LE9BQUssY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFBLEtBQUs7Z0JBQ2xELFVBQVUsQ0FBQyxHQUFHLENBQUMsbUJBQVcsQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDeEMsTUFBTSxDQUFDLEtBQUssQ0FBQztZQUNkLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDOztRQUxELEdBQUcsQ0FBQyxDQUF1QixVQUEwQixFQUExQixLQUFBLGVBQU8sQ0FBYyxJQUFJLENBQUMsRUFBMUIsY0FBMEIsRUFBMUIsSUFBMEI7WUFBMUMsSUFBQSxXQUFZLEVBQVgsV0FBRyxFQUFFLGFBQUs7b0JBQVYsR0FBRyxFQUFFLEtBQUs7U0FLckI7UUFFRCxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUM7YUFDMUIsSUFBSSxDQUFDLGNBQU0sT0FBQSxtQkFBVyxDQUFDLFVBQVUsQ0FBQyxFQUF2QixDQUF1QixDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUNGLGlCQUFDO0FBQUQsQ0EzT0EsQUEyT0MsSUFBQTtBQTNPcUIsZ0NBQVUiLCJmaWxlIjoicG90aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qIHRzbGludDpkaXNhYmxlOm1heC1maWxlLWxpbmUtY291bnQgKi9cbmltcG9ydCB7XG5cdGRlY29yYXRlQ3RvcldpdGhQb3Rpb25JbnN0YW5jZSxcblx0ZGVjb3JhdGVDdG9yV2l0aFBvdGlvblVSSSxcblx0cG90aW9uUHJvbWlzZSxcblx0cmVhZG9ubHlcbn0gZnJvbSAnLi9tZXRhZGF0YSc7XG5pbXBvcnQge0l0ZW0sIEl0ZW1PcHRpb25zfSBmcm9tICcuL2l0ZW0nO1xuaW1wb3J0IHtQYWdpbmF0aW9uLCBQYWdpbmF0aW9uT3B0aW9uc30gZnJvbSAnLi9wYWdpbmF0aW9uJztcbmltcG9ydCB7XG5cdGVudHJpZXMsXG5cdG1hcFRvT2JqZWN0LFxuXHRNZW1DYWNoZSxcblx0b21hcCxcblx0dG9DYW1lbENhc2UsXG5cdHRvUG90aW9uSlNPTlxufSBmcm9tICcuL3V0aWxzJztcblxuXG4vKipcbiAqIEl0ZW0gY2FjaGUuXG4gKiBEaWN0YXRlcyB0aGUgaW1wbGVtZW50YXRpb24gb2YgdGhlIGl0ZW0gY2FjaGUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSXRlbUNhY2hlPFQgZXh0ZW5kcyBJdGVtPiB7XG5cdGhhcyhrZXk6IHN0cmluZyk6IGJvb2xlYW47XG5cdGdldChrZXk6IHN0cmluZyk6IFByb21pc2U8VD47XG5cdHB1dChrZXk6IHN0cmluZywgaXRlbTogUHJvbWlzZTxUPik6IFByb21pc2U8VD47XG5cdHJlbW92ZShrZXk6IHN0cmluZyk6IHZvaWQ7XG59XG5cblxuLyoqXG4gKiBDb21tb24gaW50ZXJmYWNlcy5cbiAqL1xuXG5leHBvcnQgaW50ZXJmYWNlIFBhcnNlZFVSSSB7XG5cdHJlc291cmNlOiB0eXBlb2YgSXRlbTtcblx0aWQ6IHN0cmluZyB8IG51bWJlcjtcblx0dXJpOiBzdHJpbmc7XG59XG5cbi8vIFRPRE86IFN0YXJ0IHVzaW5nIGEgbW9yZSBzdGFuZGFyZCBpbXBsLiBvZiB0aGVzZSBpbnRlcmZhY2VzIChlaXRoZXIgY3JlYXRlIHByb3BlciBjbGFzc2VzIGZvciBzb21lIG9yIHVzZSB0aGUgbmF0aXZlIFJlcXVlc3QsIGV0Yy4pXG5leHBvcnQgaW50ZXJmYWNlIFVSTFNlYXJjaFBhcmFtcyB7XG5cdFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXF1ZXN0T3B0aW9ucyB7XG5cdG1ldGhvZD86IHN0cmluZztcblx0c2VhcmNoPzogVVJMU2VhcmNoUGFyYW1zIHwgbnVsbDtcblx0ZGF0YT86IGFueTtcblx0Y2FjaGU/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZldGNoT3B0aW9ucyBleHRlbmRzIFJlcXVlc3RPcHRpb25zIHtcblx0cGFnaW5hdGU/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFF1ZXJ5T3B0aW9ucyBleHRlbmRzIFBhZ2luYXRpb25PcHRpb25zIHtcblx0d2hlcmU/OiBhbnk7XG5cdHNvcnQ/OiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG90aW9uUmVzcG9uc2Uge1xuXHRkYXRhOiBhbnk7XG5cdGhlYWRlcnM6IGFueTtcbn1cblxuXG5leHBvcnQgaW50ZXJmYWNlIFBvdGlvbk9wdGlvbnMge1xuXHRob3N0Pzogc3RyaW5nO1xuXHRwcmVmaXg/OiBzdHJpbmc7XG5cdGNhY2hlPzogSXRlbUNhY2hlPEl0ZW0+O1xufVxuXG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRFcnJvck1lc3NhZ2UoZXJyb3I6IGFueSwgdXJpOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRpZiAoZXJyb3IgaW5zdGFuY2VvZiBFcnJvcikge1xuXHRcdHJldHVybiBlcnJvci5tZXNzYWdlO1xuXHR9IGVsc2UgaWYgKHR5cGVvZiBlcnJvciA9PT0gJ3N0cmluZycpIHtcblx0XHRyZXR1cm4gZXJyb3I7XG5cdH1cblx0cmV0dXJuIGBBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSBQb3Rpb24gdHJpZWQgdG8gcmV0cmlldmUgYSByZXNvdXJjZSBmcm9tICcke3VyaX0nLmA7XG59XG5cblxuZXhwb3J0IGZ1bmN0aW9uIGNhbkFnZ3JlZ2F0ZVVSSSh7JHR5cGUsICRpZH06IHtba2V5OiBzdHJpbmddOiBhbnl9KTogYm9vbGVhbiB7XG5cdHJldHVybiAodHlwZW9mICRpZCA9PT0gJ3N0cmluZycgfHwgTnVtYmVyLmlzSW50ZWdlcigkaWQpKSAmJiB0eXBlb2YgJHR5cGUgPT09ICdzdHJpbmcnO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VVJJKHskdXJpLCAkcmVmLCAkdHlwZSwgJGlkfToge1trZXk6IHN0cmluZ106IGFueX0pOiBzdHJpbmcge1xuXHRpZiAodHlwZW9mICR1cmkgPT09ICdzdHJpbmcnKSB7XG5cdFx0cmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudCgkdXJpKTtcblx0fSBlbHNlIGlmICh0eXBlb2YgJHJlZiA9PT0gJ3N0cmluZycpIHtcblx0XHRyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KCRyZWYpO1xuXHR9IGVsc2UgaWYgKGNhbkFnZ3JlZ2F0ZVVSSSh7JHR5cGUsICRpZH0pKSB7XG5cdFx0cmV0dXJuIGAvJHskdHlwZX0vJHskaWR9YDtcblx0fVxuXHRyZXR1cm4gJyc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVQcmVmaXgodXJpOiBzdHJpbmcsIHByZWZpeDogc3RyaW5nKTogc3RyaW5nIHtcblx0aWYgKHVyaS5pbmRleE9mKHByZWZpeCkgPT09IDApIHtcblx0XHRyZXR1cm4gdXJpLnN1YnN0cmluZyhwcmVmaXgubGVuZ3RoKTtcblx0fVxuXHRyZXR1cm4gdXJpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VJRChpZDogYW55KTogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbCB7XG5cdGlmICh0eXBlb2YgaWQgPT09ICdzdHJpbmcnKSB7XG5cdFx0cmV0dXJuIC9eXFxkKyQvLnRlc3QoaWQpID8gcGFyc2VJbnQoaWQsIDEwKSA6IGlkO1xuXHR9IGVsc2UgaWYgKE51bWJlci5pc0ludGVnZXIoaWQpKSB7XG5cdFx0cmV0dXJuIGlkO1xuXHR9XG5cdHJldHVybiBudWxsO1xufVxuXG5cbi8qKlxuICogVGhpcyBjbGFzcyBjb250YWlucyB0aGUgbWFpbiBsb2dpYyBmb3IgaW50ZXJhY3Rpbmcgd2l0aCB0aGUgRmxhc2sgUG90aW9uIGJhY2tlbmQuXG4gKiBOb3RlIHRoYXQgdGhpcyBjbGFzcyBkb2VzIG5vdCBjb250YWluIHRoZSBsb2dpYyBmb3IgbWFraW5nIHRoZSBIVFRQIHJlcXVlc3RzLFxuICogaXQgaXMgdXAgdG8gdGhlIGNoaWxkIGNsYXNzIHRvIGltcGxlbWVudCB0aGUgbG9naWMgZm9yIHRoYXQgdGhyb3VnaCB0aGUgYHJlcXVlc3RgIG1ldGhvZC5cbiAqIEZ1cnRoZXJtb3JlLCB0aGUgY2hpbGQgY2xhc3MgYWxzbyBuZWVkcyB0byBwcm92aWRlIHRoZSBQcm9taXNlIGNsYXNzL2ZuIGFzIHRoaXMgY2xhc3MgaXMgc2V0IHRvIHVzZSB0aGUgbmF0aXZlIFByb21pc2Ugb25seSBhdmFpbGFibGUgZnJvbSBFUzYuXG4gKlxuICogQGV4YW1wbGVcbiAqIGNsYXNzIFBvdGlvbiBleHRlbmRzIFBvdGlvbkJhc2Uge1xuICogICAgIHByb3RlY3RlZCByZXF1ZXN0KHVyaSwgb3B0aW9ucz86IFJlcXVlc3RPcHRpb25zKTogUHJvbWlzZTxhbnk+IHtcbiAqICAgICAgICAgLy8gSGVyZSB3ZSBuZWVkIHRvIGltcGxlbWVudCB0aGUgYWN0dWFsIEhUVFAgcmVxdWVzdFxuICogICAgIH07XG4gKiB9XG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBQb3Rpb25CYXNlIHtcblx0cmVhZG9ubHkgcmVzb3VyY2VzOiB7W2tleTogc3RyaW5nXTogSXRlbX0gPSB7fTtcblx0cmVhZG9ubHkgY2FjaGU6IEl0ZW1DYWNoZTxJdGVtPjtcblx0aG9zdDogc3RyaW5nO1xuXHRyZWFkb25seSBwcmVmaXg6IHN0cmluZztcblxuXHRwcml2YXRlIHJlYWRvbmx5IFByb21pc2U6IHR5cGVvZiBQcm9taXNlID0gcG90aW9uUHJvbWlzZSh0aGlzKTsgLy8gTk9URTogVGhpcyBpcyBuZWVkZWQgb25seSB0byBwcm92aWRlIHN1cHBvcnQgZm9yIEFuZ3VsYXJKUy5cblx0cHJpdmF0ZSBwZW5kaW5nR0VUUmVxdWVzdHM6IE1hcDxzdHJpbmcsIGFueT4gPSBuZXcgTWFwKCk7XG5cblx0Y29uc3RydWN0b3Ioe2hvc3QgPSAnJywgcHJlZml4ID0gJycsIGNhY2hlfTogUG90aW9uT3B0aW9ucyA9IHt9KSB7XG5cdFx0dGhpcy5jYWNoZSA9IGNhY2hlIHx8IG5ldyBNZW1DYWNoZSgpO1xuXHRcdHRoaXMuaG9zdCA9IGhvc3Q7XG5cdFx0dGhpcy5wcmVmaXggPSBwcmVmaXg7XG5cdH1cblxuXHRmZXRjaCh1cmk6IHN0cmluZywgZmV0Y2hPcHRpb25zPzogRmV0Y2hPcHRpb25zLCBwYWdpbmF0aW9uPzogUGFnaW5hdGlvbjxhbnk+KTogUHJvbWlzZTxJdGVtIHwgSXRlbVtdIHwgUGFnaW5hdGlvbjxJdGVtPiB8IGFueT4ge1xuXHRcdGNvbnN0IG9wdGlvbnM6IEZldGNoT3B0aW9ucyA9IHsuLi5mZXRjaE9wdGlvbnN9O1xuXHRcdGNvbnN0IHttZXRob2QsIGNhY2hlLCBwYWdpbmF0ZSwgc2VhcmNofSA9IG9wdGlvbnM7XG5cdFx0Y29uc3Qga2V5ID0gdXJpO1xuXHRcdGNvbnN0IHtQcm9taXNlfSA9IHRoaXM7XG5cblx0XHQvLyBBZGQgdGhlIEFQSSBwcmVmaXggaWYgbm90IHByZXNlbnRcblx0XHRjb25zdCB7cHJlZml4fSA9IHRoaXM7XG5cdFx0aWYgKHVyaS5pbmRleE9mKHByZWZpeCkgPT09IC0xKSB7XG5cdFx0XHR1cmkgPSBgJHtwcmVmaXh9JHt1cml9YDtcblx0XHR9XG5cblx0XHQvLyBTZXJpYWxpemUgcmVxdWVzdCB0byBQb3Rpb24gSlNPTi5cblx0XHRjb25zdCBmZXRjaCA9ICgpID0+IHRoaXMucmVxdWVzdChgJHt0aGlzLmhvc3R9JHt1cml9YCwgdGhpcy5zZXJpYWxpemUob3B0aW9ucykpXG5cdFx0XHQvLyBEZXNlcmlhbGl6ZSB0aGUgUG90aW9uIEpTT04uXG5cdFx0XHQudGhlbihyZXNwb25zZSA9PiB0aGlzLmRlc2VyaWFsaXplKHJlc3BvbnNlLCB1cmksIG9wdGlvbnMsIHBhZ2luYXRpb24pKTtcblxuXHRcdC8vIFRPRE86IENhY2hlIHJlcXVlc3RzIGZvciBxdWVyaWVzIHdpdGggcGFyYW1zIGFzIHdlbGwsXG5cdFx0Ly8gd2UganVzdCBuZWVkIHRvIGNyZWF0ZSBhIGhhc2gga2V5IGZvciB0aGUgcmVxdWVzdCAodXJpICsgc2VhcmNoIHBhcmFtcykuXG5cdFx0aWYgKG1ldGhvZCA9PT0gJ0dFVCcgJiYgIXBhZ2luYXRlICYmICFzZWFyY2gpIHtcblx0XHRcdC8vIElmIGEgR0VUIHJlcXVlc3Qgd2FzIG1hZGUgYW5kIHtjYWNoZTogdHJ1ZX0gcmV0dXJuIHRoZSBpdGVtIGZyb20gY2FjaGUgKGlmIGl0IGV4aXN0cykuXG5cdFx0XHQvLyBOT1RFOiBRdWVyaWVzIGFyZSBub3QgY2FjaGVkLlxuXHRcdFx0aWYgIChjYWNoZSAmJiB0aGlzLmNhY2hlLmhhcyhrZXkpKSB7XG5cdFx0XHRcdHJldHVybiB0aGlzLmNhY2hlLmdldChrZXkpO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBDYWNoZSB0aGUgcmVxdWVzdCBzbyB0aGF0IGZ1cnRoZXIgcmVxdWVzdHMgZm9yIHRoZSBzYW1lIHJlc291cmNlIHdpbGwgbm90IG1ha2UgYW4gYWRpdGlvbmFsIFhIUi5cblx0XHRcdGlmICghdGhpcy5wZW5kaW5nR0VUUmVxdWVzdHMuaGFzKHVyaSkpIHtcblx0XHRcdFx0dGhpcy5wZW5kaW5nR0VUUmVxdWVzdHMuc2V0KHVyaSwgZmV0Y2goKS50aGVuKGRhdGEgPT4ge1xuXHRcdFx0XHRcdHRoaXMucGVuZGluZ0dFVFJlcXVlc3RzLmRlbGV0ZSh1cmkpO1xuXHRcdFx0XHRcdHJldHVybiBkYXRhO1xuXHRcdFx0XHR9LCBlcnIgPT4ge1xuXHRcdFx0XHRcdC8vIElmIHJlcXVlc3QgZmFpbHMsXG5cdFx0XHRcdFx0Ly8gbWFrZSBzdXJlIHRvIHJlbW92ZSB0aGUgcGVuZGluZyByZXF1ZXN0IHNvIGZ1cnRoZXIgcmVxdWVzdHMgY2FuIGJlIG1hZGUsXG5cdFx0XHRcdFx0Ly8gYnV0IGZhaWwgdGhlIHBpcGVsaW5lLlxuXHRcdFx0XHRcdHRoaXMucGVuZGluZ0dFVFJlcXVlc3RzLmRlbGV0ZSh1cmkpO1xuXHRcdFx0XHRcdGNvbnN0IG1lc3NhZ2UgPSBnZXRFcnJvck1lc3NhZ2UoZXJyLCB1cmkpO1xuXHRcdFx0XHRcdHJldHVybiBQcm9taXNlLnJlamVjdChtZXNzYWdlKTtcblx0XHRcdFx0fSkpO1xuXHRcdFx0fVxuXG5cdFx0XHRyZXR1cm4gdGhpcy5wZW5kaW5nR0VUUmVxdWVzdHMuZ2V0KHVyaSk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHJldHVybiBmZXRjaCgpO1xuXHRcdH1cblx0fVxuXG5cdC8qKlxuXHQgKiBSZWdpc3RlciBhIHJlc291cmNlLlxuXHQgKiBAcGFyYW0ge1N0cmluZ30gdXJpIC0gUGF0aCBvbiB3aGljaCB0aGUgcmVzb3VyY2UgaXMgcmVnaXN0ZXJlZC5cblx0ICogQHBhcmFtIHtJdGVtfSByZXNvdXJjZVxuXHQgKiBAcGFyYW0ge0l0ZW1PcHRpb25zfSBvcHRpb25zIC0gU2V0IHRoZSBwcm9wZXJ0eSBvcHRpb25zIGZvciBhbnkgaW5zdGFuY2Ugb2YgdGhlIHJlc291cmNlIChzZXR0aW5nIGEgcHJvcGVydHkgdG8gcmVhZG9ubHkgZm9yIGluc3RhbmNlKS5cblx0ICovXG5cdHJlZ2lzdGVyKHVyaTogc3RyaW5nLCByZXNvdXJjZTogYW55LCBvcHRpb25zPzogSXRlbU9wdGlvbnMpOiBJdGVtIHtcblx0XHRkZWNvcmF0ZUN0b3JXaXRoUG90aW9uSW5zdGFuY2UocmVzb3VyY2UsIHRoaXMpO1xuXHRcdGRlY29yYXRlQ3RvcldpdGhQb3Rpb25VUkkocmVzb3VyY2UsIHVyaSk7XG5cblx0XHRpZiAob3B0aW9ucyAmJiBBcnJheS5pc0FycmF5KG9wdGlvbnMucmVhZG9ubHkpKSB7XG5cdFx0XHRvcHRpb25zLnJlYWRvbmx5LmZvckVhY2gocHJvcGVydHkgPT4gcmVhZG9ubHkocmVzb3VyY2UsIHByb3BlcnR5KSk7XG5cdFx0fVxuXHRcdHRoaXMucmVzb3VyY2VzW3VyaV0gPSByZXNvdXJjZTtcblxuXHRcdHJldHVybiByZXNvdXJjZTtcblx0fVxuXG5cdC8qKlxuXHQgKiBSZWdpc3RlciBhIHJlc291cmNlLlxuXHQgKiBAcGFyYW0ge1N0cmluZ30gdXJpIC0gUGF0aCBvbiB3aGljaCB0aGUgcmVzb3VyY2UgaXMgcmVnaXN0ZXJlZC5cblx0ICogQHBhcmFtIHtJdGVtT3B0aW9uc30gb3B0aW9ucyAtIFNldCB0aGUgcHJvcGVydHkgb3B0aW9ucyBmb3IgYW55IGluc3RhbmNlIG9mIHRoZSByZXNvdXJjZSAoc2V0dGluZyBhIHByb3BlcnR5IHRvIHJlYWRvbmx5IGZvciBpbnN0YW5jZSkuXG5cdCAqXG5cdCAqIEBleGFtcGxlXG5cdCAqIEBwb3Rpb24ucmVnaXN0ZXJBcygnL3VzZXInKVxuXHQgKiBjbGFzcyBVc2VyIGV4dGVuZHMgSXRlbSB7fVxuXHQgKi9cblx0cmVnaXN0ZXJBcyh1cmk6IHN0cmluZywgb3B0aW9ucz86IEl0ZW1PcHRpb25zKTogQ2xhc3NEZWNvcmF0b3Ige1xuXHRcdHJldHVybiAodGFyZ2V0OiBhbnkpID0+IHtcblx0XHRcdHRoaXMucmVnaXN0ZXIodXJpLCB0YXJnZXQsIG9wdGlvbnMpO1xuXHRcdFx0cmV0dXJuIHRhcmdldDtcblx0XHR9O1xuXHR9XG5cblx0LyoqXG5cdCAqIE1ha2UgYSBIVFRQIHJlcXVlc3QuXG5cdCAqIEBwYXJhbSB7c3RyaW5nfSB1cmlcblx0ICogQHBhcmFtIHtSZXF1ZXN0T3B0aW9uc30gb3B0aW9uc1xuXHQgKiBAcmV0dXJucyB7UG90aW9uUmVzcG9uc2V9IEFuIG9iamVjdCB3aXRoIHtkYXRhLCBoZWFkZXJzfSB3aGVyZSB7ZGF0YX0gY2FuIGJlIGFueXRoaW5nIGFuZCB7aGVhZGVyc30gaXMgYW4gb2JqZWN0IHdpdGggdGhlIHJlc3BvbnNlIGhlYWRlcnMgZnJvbSB0aGUgSFRUUCByZXF1ZXN0LlxuXHQgKi9cblx0cHJvdGVjdGVkIGFic3RyYWN0IHJlcXVlc3QodXJpOiBzdHJpbmcsIG9wdGlvbnM/OiBSZXF1ZXN0T3B0aW9ucyk6IFByb21pc2U8UG90aW9uUmVzcG9uc2U+O1xuXG5cdHByaXZhdGUgc2VyaWFsaXplKG9wdGlvbnM6IEZldGNoT3B0aW9ucyk6IFJlcXVlc3RPcHRpb25zIHtcblx0XHRjb25zdCB7cHJlZml4fSA9IHRoaXM7XG5cdFx0Y29uc3Qge3NlYXJjaH0gPSBvcHRpb25zO1xuXG5cdFx0cmV0dXJuIHtcblx0XHRcdC4uLm9wdGlvbnMsXG5cdFx0XHQuLi57XG5cdFx0XHRcdHNlYXJjaDogdG9Qb3Rpb25KU09OKG9wdGlvbnMucGFnaW5hdGUgPyB7cGFnZTogMSwgcGVyUGFnZTogMjUsIC4uLnNlYXJjaH0gOiBzZWFyY2gsIHByZWZpeCksXG5cdFx0XHRcdGRhdGE6IHRvUG90aW9uSlNPTihvcHRpb25zLmRhdGEsIHByZWZpeClcblx0XHRcdH1cblx0XHR9O1xuXHR9XG5cblx0cHJpdmF0ZSBkZXNlcmlhbGl6ZSh7ZGF0YSwgaGVhZGVyc306IFBvdGlvblJlc3BvbnNlLCB1cmk6IHN0cmluZywgb3B0aW9uczogRmV0Y2hPcHRpb25zLCBwYWdpbmF0aW9uPzogUGFnaW5hdGlvbjxhbnk+KTogUHJvbWlzZTxQb3Rpb25SZXNwb25zZT4ge1xuXHRcdHJldHVybiB0aGlzLmZyb21Qb3Rpb25KU09OKGRhdGEpXG5cdFx0XHQudGhlbihqc29uID0+IHtcblx0XHRcdFx0Ly8gUmV0dXJuIG9yIHVwZGF0ZSBQYWdpbmF0aW9uXG5cdFx0XHRcdC8vIFRPRE86IFJlZmFjdG9yIHRoaXMsIGxvb2tzIG1lc3N5IChwYWdpbmF0aW9uIGxvZ2ljIHNob3VsZCBiZSBoYW5kbGVkIGluIHRoZSBQYWdpbmF0aW9uIGNsYXNzKVxuXHRcdFx0XHRpZiAob3B0aW9ucy5wYWdpbmF0ZSkge1xuXHRcdFx0XHRcdGNvbnN0IGNvdW50ID0gaGVhZGVyc1sneC10b3RhbC1jb3VudCddIHx8IGpzb24ubGVuZ3RoO1xuXHRcdFx0XHRcdGlmICghcGFnaW5hdGlvbikge1xuXHRcdFx0XHRcdFx0cmV0dXJuIG5ldyBQYWdpbmF0aW9uPEl0ZW0+KHt1cmksIHBvdGlvbjogdGhpc30sIGpzb24sIGNvdW50LCBvcHRpb25zKTtcblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0cmV0dXJuIHBhZ2luYXRpb24udXBkYXRlKGpzb24sIGNvdW50KTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0cmV0dXJuIGpzb247XG5cdFx0XHR9KTtcblx0fVxuXHRwcml2YXRlIGZyb21Qb3Rpb25KU09OKGpzb246IGFueSk6IFByb21pc2U8YW55PiB7XG5cdFx0Y29uc3Qge1Byb21pc2V9ID0gdGhpcztcblxuXHRcdGlmICh0eXBlb2YganNvbiA9PT0gJ29iamVjdCcgJiYganNvbiAhPT0gbnVsbCkge1xuXHRcdFx0aWYgKEFycmF5LmlzQXJyYXkoanNvbikpIHtcblx0XHRcdFx0cmV0dXJuIFByb21pc2UuYWxsKGpzb24ubWFwKGl0ZW0gPT4gdGhpcy5mcm9tUG90aW9uSlNPTihpdGVtKSkpO1xuXHRcdFx0fSBlbHNlIGlmICh0eXBlb2YganNvbi4kdXJpID09PSAnc3RyaW5nJyB8fCBjYW5BZ2dyZWdhdGVVUkkoanNvbikpIHtcblx0XHRcdFx0Ly8gTk9URTogVGhlIGpzb24gbWF5IGFsc28gaGF2ZSB7JHR5cGUsICRpZH0gdGhhdCBjYW4gYmUgdXNlZCB0byByZWNvZ25pemUgYSByZXNvdXJjZSBpbnN0ZWFkIG9mIHskdXJpfS5cblx0XHRcdFx0Ly8gSWYgbmVpdGhlciBjb21iaW5hdGlvbiBpcyBwcm92aWRlZCBpdCB3aWxsIHRocm93LlxuXHRcdFx0XHRyZXR1cm4gdGhpcy5wYXJzZVVSSShqc29uKVxuXHRcdFx0XHRcdC50aGVuKCh7cmVzb3VyY2UsIGlkLCB1cml9KSA9PiB7XG5cdFx0XHRcdFx0XHRjb25zdCBwcm9wZXJ0aWVzOiBNYXA8c3RyaW5nLCBhbnk+ID0gbmV3IE1hcCgpO1xuXHRcdFx0XHRcdFx0Ly8gTk9URToge2lkfVxuXHRcdFx0XHRcdFx0cHJvcGVydGllcy5zZXQoJyRpZCcsIGlkKTtcblx0XHRcdFx0XHRcdHByb3BlcnRpZXMuc2V0KCckdXJpJywgdXJpKTtcblx0XHRcdFx0XHRcdGNvbnN0IHVucGFjayA9IHRoaXMucGFyc2VQb3Rpb25KU09OUHJvcGVydGllcyhqc29uLCBwcm9wZXJ0aWVzKTtcblxuXHRcdFx0XHRcdFx0Ly8gQ3JlYXRlIGFuZCBjYWNoZSB0aGUgcmVzb3VyY2UgaWYgaXQgZG9lcyBub3QgZXhpc3QuXG5cdFx0XHRcdFx0XHRpZiAoIXRoaXMuY2FjaGUuaGFzKHVyaSkpIHtcblx0XHRcdFx0XHRcdFx0cmV0dXJuIHRoaXMuY2FjaGUucHV0KHVyaSwgdW5wYWNrLnRoZW4ocHJvcGVydGllcyA9PiBSZWZsZWN0LmNvbnN0cnVjdChyZXNvdXJjZSwgW3Byb3BlcnRpZXNdKSkpO1xuXHRcdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdFx0Ly8gSWYgdGhlIHJlc291cmNlIGFscmVhZHkgZXhpc3RzLFxuXHRcdFx0XHRcdFx0XHQvLyB1cGRhdGUgaXQgd2l0aCBuZXcgcHJvcGVydGllcy5cblx0XHRcdFx0XHRcdFx0cmV0dXJuIFByb21pc2UuYWxsKFt1bnBhY2ssIHRoaXMuY2FjaGUuZ2V0KHVyaSldKVxuXHRcdFx0XHRcdFx0XHRcdC50aGVuKChbcHJvcGVydGllcywgaXRlbV0pID0+IHtcblx0XHRcdFx0XHRcdFx0XHRcdE9iamVjdC5hc3NpZ24oaXRlbSwgcHJvcGVydGllcyk7XG5cdFx0XHRcdFx0XHRcdFx0XHRyZXR1cm4gaXRlbTtcblx0XHRcdFx0XHRcdFx0XHR9KTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9KTtcblx0XHRcdH0gZWxzZSBpZiAodHlwZW9mIGpzb24uJHNjaGVtYSA9PT0gJ3N0cmluZycpIHtcblx0XHRcdFx0Ly8gSWYgd2UgaGF2ZSBhIHNjaGVtYSBvYmplY3QsXG5cdFx0XHRcdC8vIHdlIHdhbnQgdG8gcmVzb2x2ZSBpdCBhcyBpdCBpcyBhbmQgbm90IHRyeSB0byByZXNvbHZlIHJlZmVyZW5jZXMgb3IgZG8gYW55IGNvbnZlcnNpb25zLlxuXHRcdFx0XHQvLyBUaG91Z2gsIHdlIHdhbnQgdG8gY29udmVydCBzbmFrZSBjYXNlIHRvIGNhbWVsIGNhc2UuXG5cdFx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUob21hcChqc29uLCBrZXkgPT4gdG9DYW1lbENhc2Uoa2V5KSkpO1xuXHRcdFx0fSBlbHNlIGlmIChPYmplY3Qua2V5cyhqc29uKS5sZW5ndGggPT09IDEpIHtcblx0XHRcdFx0aWYgKHR5cGVvZiBqc29uLiRyZWYgPT09ICdzdHJpbmcnKSB7XG5cdFx0XHRcdFx0Ly8gSGFjayB0byBub3QgdHJ5IHRvIHJlc29sdmUgc2VsZiByZWZlcmVuY2VzLlxuXHRcdFx0XHRcdC8vIFRPRE86IEltcGxlbWVudCByZXNvbHZpbmcgc2VsZi1yZWZlcmVuY2VzXG5cdFx0XHRcdFx0aWYgKGpzb24uJHJlZiA9PT0gJyMnKSB7XG5cdFx0XHRcdFx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGpzb24uJHJlZik7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0cmV0dXJuIHRoaXMucGFyc2VVUkkoanNvbilcblx0XHRcdFx0XHRcdC50aGVuKCh7dXJpfSkgPT4gdGhpcy5mZXRjaCh1cmksIHtcblx0XHRcdFx0XHRcdFx0Y2FjaGU6IHRydWUsXG5cdFx0XHRcdFx0XHRcdG1ldGhvZDogJ0dFVCdcblx0XHRcdFx0XHRcdH0pKTtcblx0XHRcdFx0fSBlbHNlIGlmICh0eXBlb2YganNvbi4kZGF0ZSAhPT0gJ3VuZGVmaW5lZCcpIHtcblx0XHRcdFx0XHQvLyBQYXJzZSBQb3Rpb24gZGF0ZVxuXHRcdFx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUobmV3IERhdGUoanNvbi4kZGF0ZSkpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdHJldHVybiB0aGlzLnBhcnNlUG90aW9uSlNPTlByb3BlcnRpZXMoanNvbik7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoanNvbik7XG5cdFx0fVxuXHR9XG5cdC8vIFRyeSB0byBwYXJzZSBhIFBvdGlvbiBVUkkgYW5kIGZpbmQgdGhlIGFzc29jaWF0ZWQgcmVzb3VyY2UgZm9yIGl0LFxuXHQvLyBvdGhlcndpc2UgcmV0dXJuIGEgcmVqZWN0ZWQgcHJvbWlzZS5cblx0cHJpdmF0ZSBwYXJzZVVSSSh7JHJlZiwgJHVyaSwgJHR5cGUsICRpZH06IHtba2V5OiBzdHJpbmddOiBhbnl9KTogUHJvbWlzZTxQYXJzZWRVUkk+IHtcblx0XHRjb25zdCB7UHJvbWlzZX0gPSB0aGlzO1xuXHRcdGNvbnN0IHVyaSA9IHJlbW92ZVByZWZpeChnZXRVUkkoeyRyZWYsICR1cmksICR0eXBlLCAkaWR9KSwgdGhpcy5wcmVmaXgpO1xuXG5cdFx0Y29uc3QgZW50cnkgPSBlbnRyaWVzPHN0cmluZywgYW55Pih0aGlzLnJlc291cmNlcylcblx0XHRcdC5maW5kKChbcmVzb3VyY2VVUkldKSA9PiB1cmkuaW5kZXhPZihgJHtyZXNvdXJjZVVSSX0vYCkgPT09IDApO1xuXG5cdFx0aWYgKCFlbnRyeSkge1xuXHRcdFx0cmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBFcnJvcihgVVJJICcke3VyaX0nIGlzIGFuIHVuaW50ZXJwcmV0YWJsZSBvciB1bmtub3duIFBvdGlvbiByZXNvdXJjZS5gKSk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdGNvbnN0IFtyZXNvdXJjZVVSSSwgcmVzb3VyY2VdID0gZW50cnk7XG5cdFx0XHRjb25zdCBwYXJhbXMgPSB7cmVzb3VyY2UsIHVyaX07XG5cdFx0XHRjb25zdCBpZCA9IHBhcnNlSUQoJGlkKTtcblxuXHRcdFx0aWYgKGlkICE9PSBudWxsKSB7XG5cdFx0XHRcdE9iamVjdC5hc3NpZ24ocGFyYW1zLCB7aWR9KTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdGNvbnN0IFtwYXJ0XSA9IHVyaS5zdWJzdHJpbmcocmVzb3VyY2VVUkkubGVuZ3RoICsgMSlcblx0XHRcdFx0XHQuc3BsaXQoJy8nKTtcblx0XHRcdFx0T2JqZWN0LmFzc2lnbihwYXJhbXMsIHtcblx0XHRcdFx0XHRpZDogcGFyc2VJRChwYXJ0KVxuXHRcdFx0XHR9KTtcblx0XHRcdH1cblxuXHRcdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZShwYXJhbXMpO1xuXHRcdH1cblx0fVxuXHRwcml2YXRlIHBhcnNlUG90aW9uSlNPTlByb3BlcnRpZXMoanNvbjogYW55LCBwcm9wZXJ0aWVzOiBNYXA8YW55LCBhbnk+ID0gbmV3IE1hcCgpKTogYW55IHtcblx0XHRjb25zdCB7UHJvbWlzZX0gPSB0aGlzO1xuXHRcdGNvbnN0IHByb21pc2VzOiBBcnJheTxQcm9taXNlPGFueT4+ID0gW107XG5cblx0XHRmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBlbnRyaWVzPHN0cmluZywgYW55Pihqc29uKSkge1xuXHRcdFx0cHJvbWlzZXMucHVzaCh0aGlzLmZyb21Qb3Rpb25KU09OKHZhbHVlKS50aGVuKHZhbHVlID0+IHtcblx0XHRcdFx0cHJvcGVydGllcy5zZXQodG9DYW1lbENhc2Uoa2V5KSwgdmFsdWUpO1xuXHRcdFx0XHRyZXR1cm4gdmFsdWU7XG5cdFx0XHR9KSk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIFByb21pc2UuYWxsKHByb21pc2VzKVxuXHRcdFx0LnRoZW4oKCkgPT4gbWFwVG9PYmplY3QocHJvcGVydGllcykpO1xuXHR9XG59XG4iXX0= |
@@ -1,1 +0,1 @@ | ||
[{"__symbolic":"module","version":3,"metadata":{"ItemCache":{"__symbolic":"interface"},"ParsedURI":{"__symbolic":"interface"},"URLSearchParams":{"__symbolic":"interface"},"RequestOptions":{"__symbolic":"interface"},"FetchOptions":{"__symbolic":"interface"},"QueryOptions":{"__symbolic":"interface"},"PotionResponse":{"__symbolic":"interface"},"PotionOptions":{"__symbolic":"interface"},"PotionBase":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"}]}],"fetch":[{"__symbolic":"method"}],"register":[{"__symbolic":"method"}],"registerAs":[{"__symbolic":"method"}],"request":[{"__symbolic":"method"}],"parseURI":[{"__symbolic":"method"}],"toPotionJSON":[{"__symbolic":"method"}],"deserialize":[{"__symbolic":"method"}],"fromPotionJSON":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"ItemCache":{"__symbolic":"interface"},"ParsedURI":{"__symbolic":"interface"},"URLSearchParams":{"__symbolic":"interface"},"RequestOptions":{"__symbolic":"interface"},"FetchOptions":{"__symbolic":"interface"},"QueryOptions":{"__symbolic":"interface"},"PotionResponse":{"__symbolic":"interface"},"PotionOptions":{"__symbolic":"interface"},"PotionBase":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"}]}],"fetch":[{"__symbolic":"method"}],"register":[{"__symbolic":"method"}],"registerAs":[{"__symbolic":"method"}],"request":[{"__symbolic":"method"}],"parseURI":[{"__symbolic":"method"}],"toPotionJSON":[{"__symbolic":"method"}],"deserialize":[{"__symbolic":"method"}],"fromPotionJSON":[{"__symbolic":"method"}]}}}}] | ||
[{"__symbolic":"module","version":3,"metadata":{"ItemCache":{"__symbolic":"interface"},"ParsedURI":{"__symbolic":"interface"},"URLSearchParams":{"__symbolic":"interface"},"RequestOptions":{"__symbolic":"interface"},"FetchOptions":{"__symbolic":"interface"},"QueryOptions":{"__symbolic":"interface"},"PotionResponse":{"__symbolic":"interface"},"PotionOptions":{"__symbolic":"interface"},"getErrorMessage":{"__symbolic":"function"},"canAggregateURI":{"__symbolic":"function","parameters":["$type","$id"],"value":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"error","message":"Expression form not supported","line":86,"character":9},"right":"string"},"right":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"Number"},"member":"isInteger"},"arguments":[{"__symbolic":"reference","name":"$id"}]}},"right":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"error","message":"Expression form not supported","line":86,"character":62},"right":"string"}}},"getURI":{"__symbolic":"function"},"removePrefix":{"__symbolic":"function"},"parseID":{"__symbolic":"function"},"PotionBase":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"}]}],"fetch":[{"__symbolic":"method"}],"register":[{"__symbolic":"method"}],"registerAs":[{"__symbolic":"method"}],"request":[{"__symbolic":"method"}],"serialize":[{"__symbolic":"method"}],"deserialize":[{"__symbolic":"method"}],"fromPotionJSON":[{"__symbolic":"method"}],"parseURI":[{"__symbolic":"method"}],"parsePotionJSONProperties":[{"__symbolic":"method"}]}}}},{"__symbolic":"module","version":1,"metadata":{"ItemCache":{"__symbolic":"interface"},"ParsedURI":{"__symbolic":"interface"},"URLSearchParams":{"__symbolic":"interface"},"RequestOptions":{"__symbolic":"interface"},"FetchOptions":{"__symbolic":"interface"},"QueryOptions":{"__symbolic":"interface"},"PotionResponse":{"__symbolic":"interface"},"PotionOptions":{"__symbolic":"interface"},"getErrorMessage":{"__symbolic":"function"},"canAggregateURI":{"__symbolic":"function","parameters":["$type","$id"],"value":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"error","message":"Expression form not supported","line":86,"character":9},"right":"string"},"right":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"Number"},"member":"isInteger"},"arguments":[{"__symbolic":"reference","name":"$id"}]}},"right":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"error","message":"Expression form not supported","line":86,"character":62},"right":"string"}}},"getURI":{"__symbolic":"function"},"removePrefix":{"__symbolic":"function"},"parseID":{"__symbolic":"function"},"PotionBase":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"any"}]}],"fetch":[{"__symbolic":"method"}],"register":[{"__symbolic":"method"}],"registerAs":[{"__symbolic":"method"}],"request":[{"__symbolic":"method"}],"serialize":[{"__symbolic":"method"}],"deserialize":[{"__symbolic":"method"}],"fromPotionJSON":[{"__symbolic":"method"}],"parseURI":[{"__symbolic":"method"}],"parsePotionJSONProperties":[{"__symbolic":"method"}]}}}}] |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
var metadata_1 = require("./metadata"); | ||
var utils_1 = require("./utils"); | ||
// tslint:disable:no-invalid-this | ||
@@ -10,3 +11,3 @@ function route(path, _a) { | ||
var _b = _a === void 0 ? {} : _a, _c = _b.paginate, paginate = _c === void 0 ? false : _c, _d = _b.cache, cache = _d === void 0 ? true : _d; | ||
var isCtor = typeof this === 'function'; | ||
var isCtor = utils_1.isFunction(this); | ||
var uri = "" + (isCtor ? metadata_1.potionURI(this) : this.uri) + path; | ||
@@ -63,2 +64,2 @@ var options = { method: method, paginate: paginate, cache: cache }; | ||
}; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb3JlL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsdUNBQXFEO0FBT3JELGlDQUFpQztBQUNqQyxlQUF5QixJQUFZLEVBQUUsRUFBNkI7UUFBNUIseUNBQU07SUFDN0MsZ0RBQWdEO0lBQ2hELE1BQU0sQ0FBQyxVQUFTLE1BQVksRUFBRSxFQUFtRDtZQUFuRCw0QkFBbUQsRUFBbEQsZ0JBQWdCLEVBQWhCLHFDQUFnQixFQUFFLGFBQVksRUFBWixpQ0FBWTtRQUM1RCxJQUFNLE1BQU0sR0FBRyxPQUFPLElBQUksS0FBSyxVQUFVLENBQUM7UUFDMUMsSUFBTSxHQUFHLEdBQUcsTUFBRyxNQUFNLEdBQUcsb0JBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxJQUFHLElBQU0sQ0FBQztRQUU1RCxJQUFNLE9BQU8sR0FBaUIsRUFBQyxNQUFNLFFBQUEsRUFBRSxRQUFRLFVBQUEsRUFBRSxLQUFLLE9BQUEsRUFBQyxDQUFDO1FBQ3hELEVBQUUsQ0FBQyxDQUFDLE1BQU0sS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQ3RCLE9BQU8sQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3pCLENBQUM7UUFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUUsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBUyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDL0QsT0FBTyxDQUFDLElBQUksR0FBRyxNQUFNLENBQUM7UUFDdkIsQ0FBQztRQUVELE1BQU0sQ0FBQyx5QkFBYyxDQUFDLE1BQU0sR0FBRyxJQUFJLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQzthQUNyRCxLQUFLLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZCLENBQUMsQ0FBQztBQUNILENBQUM7QUFoQkQsc0JBZ0JDO0FBQ0QsZ0NBQWdDO0FBRWhDOzs7Ozs7OztHQVFHO0FBQ0gseUNBQXlDO0FBQzVCLFFBQUEsS0FBSyxHQUFHO0lBQ3BCLEdBQUcsRUFBSCxVQUFPLEdBQVc7UUFDakIsTUFBTSxDQUFDLEtBQUssQ0FBSSxHQUFHLEVBQUU7WUFDcEIsTUFBTSxFQUFFLEtBQUs7U0FDYixDQUFDLENBQUM7SUFDSixDQUFDO0lBQ0QsTUFBTSxFQUFOLFVBQVUsR0FBVztRQUNwQixNQUFNLENBQUMsS0FBSyxDQUFJLEdBQUcsRUFBRTtZQUNwQixNQUFNLEVBQUUsUUFBUTtTQUNoQixDQUFDLENBQUM7SUFDSixDQUFDO0lBQ0QsSUFBSSxFQUFKLFVBQVEsR0FBVztRQUNsQixNQUFNLENBQUMsS0FBSyxDQUFJLEdBQUcsRUFBRTtZQUNwQixNQUFNLEVBQUUsTUFBTTtTQUNkLENBQUMsQ0FBQztJQUNKLENBQUM7SUFDRCxLQUFLLEVBQUwsVUFBUyxHQUFXO1FBQ25CLE1BQU0sQ0FBQyxLQUFLLENBQUksR0FBRyxFQUFFO1lBQ3BCLE1BQU0sRUFBRSxPQUFPO1NBQ2YsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUNELEdBQUcsRUFBSCxVQUFPLEdBQVc7UUFDakIsTUFBTSxDQUFDLEtBQUssQ0FBSSxHQUFHLEVBQUU7WUFDcEIsTUFBTSxFQUFFLEtBQUs7U0FDYixDQUFDLENBQUM7SUFDSixDQUFDO0NBQ0QsQ0FBQyIsImZpbGUiOiJyb3V0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge3BvdGlvbkluc3RhbmNlLCBwb3Rpb25VUkl9IGZyb20gJy4vbWV0YWRhdGEnO1xuaW1wb3J0IHtGZXRjaE9wdGlvbnMsIFJlcXVlc3RPcHRpb25zfSBmcm9tICcuL3BvdGlvbic7XG5cblxuZXhwb3J0IHR5cGUgUm91dGVUeXBlPFQ+ID0gKHBhcmFtcz86IGFueSwgb3B0aW9ucz86IEZldGNoT3B0aW9ucykgPT4gUHJvbWlzZTxUPjtcblxuXG4vLyB0c2xpbnQ6ZGlzYWJsZTpuby1pbnZhbGlkLXRoaXNcbmV4cG9ydCBmdW5jdGlvbiByb3V0ZTxUPihwYXRoOiBzdHJpbmcsIHttZXRob2R9OiBSZXF1ZXN0T3B0aW9ucyA9IHt9KTogUm91dGVUeXBlPFQ+IHtcblx0Ly8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm9ubHktYXJyb3ctZnVuY3Rpb25zXG5cdHJldHVybiBmdW5jdGlvbihwYXJhbXM/OiBhbnksIHtwYWdpbmF0ZSA9IGZhbHNlLCBjYWNoZSA9IHRydWV9OiBGZXRjaE9wdGlvbnMgPSB7fSk6IFByb21pc2U8VD4ge1xuXHRcdGNvbnN0IGlzQ3RvciA9IHR5cGVvZiB0aGlzID09PSAnZnVuY3Rpb24nO1xuXHRcdGNvbnN0IHVyaSA9IGAke2lzQ3RvciA/IHBvdGlvblVSSSh0aGlzKSA6IHRoaXMudXJpfSR7cGF0aH1gO1xuXG5cdFx0Y29uc3Qgb3B0aW9uczogRmV0Y2hPcHRpb25zID0ge21ldGhvZCwgcGFnaW5hdGUsIGNhY2hlfTtcblx0XHRpZiAobWV0aG9kID09PSAnR0VUJykge1xuXHRcdFx0b3B0aW9ucy5zZWFyY2ggPSBwYXJhbXM7XG5cdFx0fSBlbHNlIGlmICgoWydQT1NUJywgJ1BVVCcsICdQQVRDSCddIGFzIGFueSkuaW5jbHVkZXMobWV0aG9kKSkge1xuXHRcdFx0b3B0aW9ucy5kYXRhID0gcGFyYW1zO1xuXHRcdH1cblxuXHRcdHJldHVybiBwb3Rpb25JbnN0YW5jZShpc0N0b3IgPyB0aGlzIDogdGhpcy5jb25zdHJ1Y3Rvcilcblx0XHRcdC5mZXRjaCh1cmksIG9wdGlvbnMpO1xuXHR9O1xufVxuLy8gdHNsaW50OmVuYWJsZTpuby1pbnZhbGlkLXRoaXNcblxuLyoqXG4gKiBVc2UgdGhlIFJvdXRlIG9iamVjdCBtZXRob2RzIHRvIHJlZ2lzdGVyIG90aGVyIFJFU1QgbWV0aG9kcyBvbiBhIHJlc291cmNlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBjbGFzcyBVc2VyIGV4dGVuZHMgSXRlbSB7XG4gKiAgICAgc3RhdGljIHJlYWRTaWJsaW5ncyA9IFJvdXRlLkdFVCgnL3NpYmxpbmdzJyk7XG4gKiAgICAgY3JlYXRlU2libGluZyA9IFJvdXRlLlBPU1QoJy9zaWJsaW5nJyk7XG4gKiB9XG4gKi9cbi8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTp2YXJpYWJsZS1uYW1lXG5leHBvcnQgY29uc3QgUm91dGUgPSB7XG5cdEdFVDxUPih1cmk6IHN0cmluZyk6IFJvdXRlVHlwZTxUPiB7XG5cdFx0cmV0dXJuIHJvdXRlPFQ+KHVyaSwge1xuXHRcdFx0bWV0aG9kOiAnR0VUJ1xuXHRcdH0pO1xuXHR9LFxuXHRERUxFVEU8VD4odXJpOiBzdHJpbmcpOiBSb3V0ZVR5cGU8VD4ge1xuXHRcdHJldHVybiByb3V0ZTxUPih1cmksIHtcblx0XHRcdG1ldGhvZDogJ0RFTEVURSdcblx0XHR9KTtcblx0fSxcblx0UE9TVDxUPih1cmk6IHN0cmluZyk6IFJvdXRlVHlwZTxUPiB7XG5cdFx0cmV0dXJuIHJvdXRlPFQ+KHVyaSwge1xuXHRcdFx0bWV0aG9kOiAnUE9TVCdcblx0XHR9KTtcblx0fSxcblx0UEFUQ0g8VD4odXJpOiBzdHJpbmcpOiBSb3V0ZVR5cGU8VD4ge1xuXHRcdHJldHVybiByb3V0ZTxUPih1cmksIHtcblx0XHRcdG1ldGhvZDogJ1BBVENIJ1xuXHRcdH0pO1xuXHR9LFxuXHRQVVQ8VD4odXJpOiBzdHJpbmcpOiBSb3V0ZVR5cGU8VD4ge1xuXHRcdHJldHVybiByb3V0ZTxUPih1cmksIHtcblx0XHRcdG1ldGhvZDogJ1BVVCdcblx0XHR9KTtcblx0fVxufTtcbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb3JlL3JvdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsdUNBQXFEO0FBRXJELGlDQUFtQztBQU1uQyxpQ0FBaUM7QUFDakMsZUFBeUIsSUFBWSxFQUFFLEVBQTZCO1FBQTVCLHlDQUFNO0lBQzdDLGdEQUFnRDtJQUNoRCxNQUFNLENBQUMsVUFBUyxNQUFZLEVBQUUsRUFBbUQ7WUFBbkQsNEJBQW1ELEVBQWxELGdCQUFnQixFQUFoQixxQ0FBZ0IsRUFBRSxhQUFZLEVBQVosaUNBQVk7UUFDNUQsSUFBTSxNQUFNLEdBQUcsa0JBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoQyxJQUFNLEdBQUcsR0FBRyxNQUFHLE1BQU0sR0FBRyxvQkFBUyxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLElBQUcsSUFBTSxDQUFDO1FBRTVELElBQU0sT0FBTyxHQUFpQixFQUFDLE1BQU0sUUFBQSxFQUFFLFFBQVEsVUFBQSxFQUFFLEtBQUssT0FBQSxFQUFDLENBQUM7UUFDeEQsRUFBRSxDQUFDLENBQUMsTUFBTSxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFDdEIsT0FBTyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDekIsQ0FBQztRQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBRSxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMvRCxPQUFPLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQztRQUN2QixDQUFDO1FBRUQsTUFBTSxDQUFDLHlCQUFjLENBQUMsTUFBTSxHQUFHLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO2FBQ3JELEtBQUssQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDdkIsQ0FBQyxDQUFDO0FBQ0gsQ0FBQztBQWhCRCxzQkFnQkM7QUFDRCxnQ0FBZ0M7QUFFaEM7Ozs7Ozs7O0dBUUc7QUFDSCx5Q0FBeUM7QUFDNUIsUUFBQSxLQUFLLEdBQUc7SUFDcEIsR0FBRyxFQUFILFVBQU8sR0FBVztRQUNqQixNQUFNLENBQUMsS0FBSyxDQUFJLEdBQUcsRUFBRTtZQUNwQixNQUFNLEVBQUUsS0FBSztTQUNiLENBQUMsQ0FBQztJQUNKLENBQUM7SUFDRCxNQUFNLEVBQU4sVUFBVSxHQUFXO1FBQ3BCLE1BQU0sQ0FBQyxLQUFLLENBQUksR0FBRyxFQUFFO1lBQ3BCLE1BQU0sRUFBRSxRQUFRO1NBQ2hCLENBQUMsQ0FBQztJQUNKLENBQUM7SUFDRCxJQUFJLEVBQUosVUFBUSxHQUFXO1FBQ2xCLE1BQU0sQ0FBQyxLQUFLLENBQUksR0FBRyxFQUFFO1lBQ3BCLE1BQU0sRUFBRSxNQUFNO1NBQ2QsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUNELEtBQUssRUFBTCxVQUFTLEdBQVc7UUFDbkIsTUFBTSxDQUFDLEtBQUssQ0FBSSxHQUFHLEVBQUU7WUFDcEIsTUFBTSxFQUFFLE9BQU87U0FDZixDQUFDLENBQUM7SUFDSixDQUFDO0lBQ0QsR0FBRyxFQUFILFVBQU8sR0FBVztRQUNqQixNQUFNLENBQUMsS0FBSyxDQUFJLEdBQUcsRUFBRTtZQUNwQixNQUFNLEVBQUUsS0FBSztTQUNiLENBQUMsQ0FBQztJQUNKLENBQUM7Q0FDRCxDQUFDIiwiZmlsZSI6InJvdXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7cG90aW9uSW5zdGFuY2UsIHBvdGlvblVSSX0gZnJvbSAnLi9tZXRhZGF0YSc7XG5pbXBvcnQge0ZldGNoT3B0aW9ucywgUmVxdWVzdE9wdGlvbnN9IGZyb20gJy4vcG90aW9uJztcbmltcG9ydCB7aXNGdW5jdGlvbn0gZnJvbSAnLi91dGlscyc7XG5cblxuZXhwb3J0IHR5cGUgUm91dGVUeXBlPFQ+ID0gKHBhcmFtcz86IGFueSwgb3B0aW9ucz86IEZldGNoT3B0aW9ucykgPT4gUHJvbWlzZTxUPjtcblxuXG4vLyB0c2xpbnQ6ZGlzYWJsZTpuby1pbnZhbGlkLXRoaXNcbmV4cG9ydCBmdW5jdGlvbiByb3V0ZTxUPihwYXRoOiBzdHJpbmcsIHttZXRob2R9OiBSZXF1ZXN0T3B0aW9ucyA9IHt9KTogUm91dGVUeXBlPFQ+IHtcblx0Ly8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOm9ubHktYXJyb3ctZnVuY3Rpb25zXG5cdHJldHVybiBmdW5jdGlvbihwYXJhbXM/OiBhbnksIHtwYWdpbmF0ZSA9IGZhbHNlLCBjYWNoZSA9IHRydWV9OiBGZXRjaE9wdGlvbnMgPSB7fSk6IFByb21pc2U8VD4ge1xuXHRcdGNvbnN0IGlzQ3RvciA9IGlzRnVuY3Rpb24odGhpcyk7XG5cdFx0Y29uc3QgdXJpID0gYCR7aXNDdG9yID8gcG90aW9uVVJJKHRoaXMpIDogdGhpcy51cml9JHtwYXRofWA7XG5cblx0XHRjb25zdCBvcHRpb25zOiBGZXRjaE9wdGlvbnMgPSB7bWV0aG9kLCBwYWdpbmF0ZSwgY2FjaGV9O1xuXHRcdGlmIChtZXRob2QgPT09ICdHRVQnKSB7XG5cdFx0XHRvcHRpb25zLnNlYXJjaCA9IHBhcmFtcztcblx0XHR9IGVsc2UgaWYgKChbJ1BPU1QnLCAnUFVUJywgJ1BBVENIJ10gYXMgYW55KS5pbmNsdWRlcyhtZXRob2QpKSB7XG5cdFx0XHRvcHRpb25zLmRhdGEgPSBwYXJhbXM7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIHBvdGlvbkluc3RhbmNlKGlzQ3RvciA/IHRoaXMgOiB0aGlzLmNvbnN0cnVjdG9yKVxuXHRcdFx0LmZldGNoKHVyaSwgb3B0aW9ucyk7XG5cdH07XG59XG4vLyB0c2xpbnQ6ZW5hYmxlOm5vLWludmFsaWQtdGhpc1xuXG4vKipcbiAqIFVzZSB0aGUgUm91dGUgb2JqZWN0IG1ldGhvZHMgdG8gcmVnaXN0ZXIgb3RoZXIgUkVTVCBtZXRob2RzIG9uIGEgcmVzb3VyY2UuXG4gKlxuICogQGV4YW1wbGVcbiAqIGNsYXNzIFVzZXIgZXh0ZW5kcyBJdGVtIHtcbiAqICAgICBzdGF0aWMgcmVhZFNpYmxpbmdzID0gUm91dGUuR0VUKCcvc2libGluZ3MnKTtcbiAqICAgICBjcmVhdGVTaWJsaW5nID0gUm91dGUuUE9TVCgnL3NpYmxpbmcnKTtcbiAqIH1cbiAqL1xuLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOnZhcmlhYmxlLW5hbWVcbmV4cG9ydCBjb25zdCBSb3V0ZSA9IHtcblx0R0VUPFQ+KHVyaTogc3RyaW5nKTogUm91dGVUeXBlPFQ+IHtcblx0XHRyZXR1cm4gcm91dGU8VD4odXJpLCB7XG5cdFx0XHRtZXRob2Q6ICdHRVQnXG5cdFx0fSk7XG5cdH0sXG5cdERFTEVURTxUPih1cmk6IHN0cmluZyk6IFJvdXRlVHlwZTxUPiB7XG5cdFx0cmV0dXJuIHJvdXRlPFQ+KHVyaSwge1xuXHRcdFx0bWV0aG9kOiAnREVMRVRFJ1xuXHRcdH0pO1xuXHR9LFxuXHRQT1NUPFQ+KHVyaTogc3RyaW5nKTogUm91dGVUeXBlPFQ+IHtcblx0XHRyZXR1cm4gcm91dGU8VD4odXJpLCB7XG5cdFx0XHRtZXRob2Q6ICdQT1NUJ1xuXHRcdH0pO1xuXHR9LFxuXHRQQVRDSDxUPih1cmk6IHN0cmluZyk6IFJvdXRlVHlwZTxUPiB7XG5cdFx0cmV0dXJuIHJvdXRlPFQ+KHVyaSwge1xuXHRcdFx0bWV0aG9kOiAnUEFUQ0gnXG5cdFx0fSk7XG5cdH0sXG5cdFBVVDxUPih1cmk6IHN0cmluZyk6IFJvdXRlVHlwZTxUPiB7XG5cdFx0cmV0dXJuIHJvdXRlPFQ+KHVyaSwge1xuXHRcdFx0bWV0aG9kOiAnUFVUJ1xuXHRcdH0pO1xuXHR9XG59O1xuIl19 |
@@ -1,1 +0,1 @@ | ||
[{"__symbolic":"module","version":3,"metadata":{"route":{"__symbolic":"function","parameters":["path","method"],"value":{"__symbolic":"error","message":"Function call not supported","line":10,"character":8},"defaults":[null,{}]},"Route":{}}},{"__symbolic":"module","version":1,"metadata":{"route":{"__symbolic":"function","parameters":["path","method"],"value":{"__symbolic":"error","message":"Function call not supported","line":10,"character":8},"defaults":[null,{}]},"Route":{}}}] | ||
[{"__symbolic":"module","version":3,"metadata":{"route":{"__symbolic":"function","parameters":["path","method"],"value":{"__symbolic":"error","message":"Function call not supported","line":11,"character":8},"defaults":[null,{}]},"Route":{}}},{"__symbolic":"module","version":1,"metadata":{"route":{"__symbolic":"function","parameters":["path","method"],"value":{"__symbolic":"error","message":"Function call not supported","line":11,"character":8},"defaults":[null,{}]},"Route":{}}}] |
{ | ||
"name": "potion-client", | ||
"version": "1.4.0", | ||
"version": "1.5.0", | ||
"description": "A ES6 client for APIs written in Flask-Potion", | ||
@@ -5,0 +5,0 @@ "keywords": [ |
206265
1802