@mountainpass/waychaser 5.0.2 → 5.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,9 @@
1
+ ## <small>5.0.3 (2022-06-27)</small>
2
+
3
+ * feat(content-parser): content parsers can now access previous implementations ([27ac9ba](https://github.com/mountain-pass/waychaser/commit/27ac9ba))
4
+
5
+
6
+
1
7
  ## <small>5.0.2 (2022-06-26)</small>
2
8
 
3
9
  * Merge pull request #488 from mountain-pass/dependabot/npm_and_yarn/shell-quote-1.7.3 ([8a5b378](https://github.com/mountain-pass/waychaser/commit/8a5b378)), closes [#488](https://github.com/mountain-pass/waychaser/issues/488)
package/README.md CHANGED
@@ -71,7 +71,7 @@ try {
71
71
  ```html
72
72
  <script
73
73
  type="text/javascript"
74
- src="https://unpkg.com/@mountainpass/waychaser@5.0.2"
74
+ src="https://unpkg.com/@mountainpass/waychaser@5.0.3"
75
75
  ></script>
76
76
 
77
77
  ...
@@ -7,6 +7,7 @@ export declare function augmentOptions<BaseContent, AdditionalContent>(baseOptio
7
7
  defaultHandlers: import("./waychaser").HandlerSpec[];
8
8
  handlers: never[];
9
9
  headers: {};
10
+ contentParser: import("./waychaser").ContentParser;
10
11
  body?: BodyInit | null | undefined;
11
12
  cache?: RequestCache | undefined;
12
13
  credentials?: RequestCredentials | undefined;
@@ -23,7 +24,6 @@ export declare function augmentOptions<BaseContent, AdditionalContent>(baseOptio
23
24
  preInterceptors: ((uriOrRequest: any, updateOptions: any, stopper: any) => void)[];
24
25
  postInterceptors: (<InterceptorContent>(response: import("./waychaser").WayChaserResponse<InterceptorContent>, stop: import("./waychaser").Stopper) => void)[];
25
26
  postErrorInterceptors: ((error: Error | import("./waychaser").WayChaserProblem, stopper: import("./waychaser").Stopper) => void)[];
26
- contentParser: (response: Response) => Promise<unknown>;
27
27
  parameters?: Record<string, unknown> | undefined;
28
28
  validator?: import("./waychaser").Validator<AdditionalContent> | import("./waychaser").Validator<BaseContent> | undefined;
29
29
  };
@@ -54,8 +54,8 @@ var waychaser_1 = require("./waychaser");
54
54
  * @param additionalOptions
55
55
  */
56
56
  function augmentOptions(baseOptions, additionalOptions) {
57
- var baseHandlers = baseOptions.handlers, baseDefaultHandlers = baseOptions.defaultHandlers, baseHeaders = baseOptions.headers, baseOther = __rest(baseOptions, ["handlers", "defaultHandlers", "headers"]);
58
- var _a = additionalOptions || {}, additionalHandlers = _a.handlers, additionalDefaultHandlers = _a.defaultHandlers, additionalHeaders = _a.headers, additionalOther = __rest(_a, ["handlers", "defaultHandlers", "headers"]);
57
+ var baseHandlers = baseOptions.handlers, baseDefaultHandlers = baseOptions.defaultHandlers, baseHeaders = baseOptions.headers, baseContentParser = baseOptions.contentParser, baseOther = __rest(baseOptions, ["handlers", "defaultHandlers", "headers", "contentParser"]);
58
+ var _a = additionalOptions || {}, additionalHandlers = _a.handlers, additionalDefaultHandlers = _a.defaultHandlers, additionalHeaders = _a.headers, additionalContentParser = _a.contentParser, additionalOther = __rest(_a, ["handlers", "defaultHandlers", "headers", "contentParser"]);
59
59
  // if additional has default, don't use base default
60
60
  // if additional has handlers, don;'t use base handlers
61
61
  // augment({ dh: [XXX] }, { h: [YYY] }) => { h: [], dh: [YYY, XXX] }
@@ -63,8 +63,8 @@ function augmentOptions(baseOptions, additionalOptions) {
63
63
  // augment({ dh: [YYY, XXX] }, { h: [ZZZ] }) => { h: [], dh: [ZZZ, YYY, XXX] }
64
64
  // augment({ dh: [YYY, XXX] }, { h: [ZZZ], dh: [] }) => { h: [], dh: [ZZZ] }
65
65
  var mergedHandlers = (0, waychaser_1.sortHandlers)(__spreadArray(__spreadArray([], __read((additionalHandlers || baseHandlers || [])), false), __read((additionalDefaultHandlers || baseDefaultHandlers || [])), false));
66
- var finalOptions = __assign(__assign(__assign({}, baseOther), additionalOther), { defaultHandlers: mergedHandlers, handlers: [], headers: __assign(__assign({}, baseHeaders), additionalHeaders) });
67
- return finalOptions;
66
+ var mergedContentParser = additionalContentParser ? function (response) { return additionalContentParser(response, baseContentParser); } : baseContentParser;
67
+ return __assign(__assign(__assign({}, baseOther), additionalOther), { defaultHandlers: mergedHandlers, handlers: [], headers: __assign(__assign({}, baseHeaders), additionalHeaders), contentParser: mergedContentParser });
68
68
  }
69
69
  exports.augmentOptions = augmentOptions;
70
70
  //# sourceMappingURL=augment-options.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"augment-options.js","sourceRoot":"","sources":["../src/augment-options.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAA4D;AAE5D;;;GAGG;AACH,SAAgB,cAAc,CAC5B,WAA0C,EAC1C,iBAAgE;IAG9D,IAAU,YAAY,GAIpB,WAAW,SAJS,EACL,mBAAmB,GAGlC,WAAW,gBAHuB,EAC3B,WAAW,GAElB,WAAW,QAFO,EACjB,SAAS,UACV,WAAW,EALT,0CAKL,CADa,CACC;IACf,IAAM,KAKF,iBAAiB,IAAI,EAAE,EAJf,kBAAkB,cAAA,EACX,yBAAyB,qBAAA,EACjC,iBAAiB,aAAA,EACvB,eAAe,cAJd,0CAKL,CAA0B,CAAA;IAE3B,oDAAoD;IACpD,uDAAuD;IACvD,oEAAoE;IACpE,uEAAuE;IACvE,8EAA8E;IAC9E,4EAA4E;IAC5E,IAAM,cAAc,GAAG,IAAA,wBAAY,yCAC9B,CAAC,kBAAkB,IAAI,YAAY,IAAI,EAAE,CAAC,kBAC1C,CAAC,yBAAyB,IAAI,mBAAmB,IAAI,EAAE,CAAC,UAC3D,CAAA;IAEF,IAAM,YAAY,kCACb,SAAS,GACT,eAAe,KAClB,eAAe,EAAE,cAAc,EAC/B,QAAQ,EAAE,EAAE,EACZ,OAAO,wBACF,WAAW,GACX,iBAAiB,IAEvB,CAAA;IACD,OAAO,YAAY,CAAA;AACrB,CAAC;AAvCD,wCAuCC"}
1
+ {"version":3,"file":"augment-options.js","sourceRoot":"","sources":["../src/augment-options.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAA4D;AAE5D;;;GAGG;AACH,SAAgB,cAAc,CAC5B,WAA0C,EAC1C,iBAAgE;IAG9D,IAAU,YAAY,GAKpB,WAAW,SALS,EACL,mBAAmB,GAIlC,WAAW,gBAJuB,EAC3B,WAAW,GAGlB,WAAW,QAHO,EACL,iBAAiB,GAE9B,WAAW,cAFmB,EAC7B,SAAS,UACV,WAAW,EANT,2DAML,CADa,CACC;IACf,IAAM,KAMF,iBAAiB,IAAI,EAAE,EALf,kBAAkB,cAAA,EACX,yBAAyB,qBAAA,EACjC,iBAAiB,aAAA,EACX,uBAAuB,mBAAA,EACnC,eAAe,cALd,2DAML,CAA0B,CAAA;IAE3B,oDAAoD;IACpD,uDAAuD;IACvD,oEAAoE;IACpE,uEAAuE;IACvE,8EAA8E;IAC9E,4EAA4E;IAC5E,IAAM,cAAc,GAAG,IAAA,wBAAY,yCAC9B,CAAC,kBAAkB,IAAI,YAAY,IAAI,EAAE,CAAC,kBAC1C,CAAC,yBAAyB,IAAI,mBAAmB,IAAI,EAAE,CAAC,UAC3D,CAAA;IAEF,IAAM,mBAAmB,GAAG,uBAAuB,CAAC,CAAC,CAAC,UAAC,QAAkB,IAAK,OAAA,uBAAuB,CAAC,QAAQ,EAAE,iBAAiB,CAAC,EAApD,CAAoD,CAAC,CAAC,CAAC,iBAAiB,CAAA;IAEtJ,sCACK,SAAS,GACT,eAAe,KAClB,eAAe,EAAE,cAAc,EAC/B,QAAQ,EAAE,EAAE,EACZ,OAAO,wBACF,WAAW,GACX,iBAAiB,GAEtB,aAAa,EAAE,mBAAmB,IACnC;AACH,CAAC;AA3CD,wCA2CC"}
@@ -72,6 +72,7 @@ export declare type HandlerSpec = {
72
72
  q?: number;
73
73
  };
74
74
  export declare type Stopper = () => void;
75
+ export declare type ContentParser = (response: Response, contentParser?: ContentParser) => Promise<unknown | ProblemDocument | undefined>;
75
76
  export declare type WayChaserOptions<ValidatorContent = null> = RequestInit & {
76
77
  fetch: typeof fetch;
77
78
  handlers: Array<HandlerSpec>;
@@ -79,7 +80,7 @@ export declare type WayChaserOptions<ValidatorContent = null> = RequestInit & {
79
80
  preInterceptors: Array<(uriOrRequest: any, updateOptions: any, stopper: any) => void>;
80
81
  postInterceptors: Array<(<InterceptorContent>(response: (WayChaserResponse<InterceptorContent>), stop: Stopper) => void)>;
81
82
  postErrorInterceptors: Array<(error: WayChaserProblem | Error, stopper: Stopper) => void>;
82
- contentParser: (response: Response) => Promise<unknown | ProblemDocument | undefined>;
83
+ contentParser: ContentParser;
83
84
  parameters?: Record<string, unknown>;
84
85
  validator?: Validator<ValidatorContent>;
85
86
  };
@@ -105,6 +106,7 @@ export declare const waychaser: (<Content>(uriOrRequest: string | Request, optio
105
106
  defaultHandlers: HandlerSpec[];
106
107
  handlers: never[];
107
108
  headers: {};
109
+ contentParser: ContentParser;
108
110
  body?: BodyInit | null | undefined;
109
111
  cache?: RequestCache | undefined;
110
112
  credentials?: RequestCredentials | undefined;
@@ -121,7 +123,6 @@ export declare const waychaser: (<Content>(uriOrRequest: string | Request, optio
121
123
  preInterceptors: ((uriOrRequest: any, updateOptions: any, stopper: any) => void)[];
122
124
  postInterceptors: (<InterceptorContent>(response: WayChaserResponse<InterceptorContent>, stop: Stopper) => void)[];
123
125
  postErrorInterceptors: ((error: WayChaserProblem | Error, stopper: Stopper) => void)[];
124
- contentParser: (response: Response) => Promise<unknown | ProblemDocument | undefined>;
125
126
  parameters?: Record<string, unknown> | undefined;
126
127
  validator?: Validator<null> | undefined;
127
128
  };
@@ -1807,8 +1807,8 @@ function locationHeaderHandler(response) {
1807
1807
  * @param additionalOptions
1808
1808
  */
1809
1809
  function augmentOptions(baseOptions, additionalOptions) {
1810
- var baseHandlers = baseOptions.handlers, baseDefaultHandlers = baseOptions.defaultHandlers, baseHeaders = baseOptions.headers, baseOther = __rest(baseOptions, ["handlers", "defaultHandlers", "headers"]);
1811
- var _a = additionalOptions || {}, additionalHandlers = _a.handlers, additionalDefaultHandlers = _a.defaultHandlers, additionalHeaders = _a.headers, additionalOther = __rest(_a, ["handlers", "defaultHandlers", "headers"]);
1810
+ var baseHandlers = baseOptions.handlers, baseDefaultHandlers = baseOptions.defaultHandlers, baseHeaders = baseOptions.headers, baseContentParser = baseOptions.contentParser, baseOther = __rest(baseOptions, ["handlers", "defaultHandlers", "headers", "contentParser"]);
1811
+ var _a = additionalOptions || {}, additionalHandlers = _a.handlers, additionalDefaultHandlers = _a.defaultHandlers, additionalHeaders = _a.headers, additionalContentParser = _a.contentParser, additionalOther = __rest(_a, ["handlers", "defaultHandlers", "headers", "contentParser"]);
1812
1812
  // if additional has default, don't use base default
1813
1813
  // if additional has handlers, don;'t use base handlers
1814
1814
  // augment({ dh: [XXX] }, { h: [YYY] }) => { h: [], dh: [YYY, XXX] }
@@ -1816,8 +1816,8 @@ function augmentOptions(baseOptions, additionalOptions) {
1816
1816
  // augment({ dh: [YYY, XXX] }, { h: [ZZZ] }) => { h: [], dh: [ZZZ, YYY, XXX] }
1817
1817
  // augment({ dh: [YYY, XXX] }, { h: [ZZZ], dh: [] }) => { h: [], dh: [ZZZ] }
1818
1818
  var mergedHandlers = sortHandlers(__spreadArray(__spreadArray([], __read((additionalHandlers || baseHandlers || [])), false), __read((additionalDefaultHandlers || baseDefaultHandlers || [])), false));
1819
- var finalOptions = __assign(__assign(__assign({}, baseOther), additionalOther), { defaultHandlers: mergedHandlers, handlers: [], headers: __assign(__assign({}, baseHeaders), additionalHeaders) });
1820
- return finalOptions;
1819
+ var mergedContentParser = additionalContentParser ? function (response) { return additionalContentParser(response, baseContentParser); } : baseContentParser;
1820
+ return __assign(__assign(__assign({}, baseOther), additionalOther), { defaultHandlers: mergedHandlers, handlers: [], headers: __assign(__assign({}, baseHeaders), additionalHeaders), contentParser: mergedContentParser });
1821
1821
  }
1822
1822
 
1823
1823
  var _a, _b;
@@ -2137,7 +2137,7 @@ function allMediaRanges(handlers) {
2137
2137
  function _waychaser(uriOrRequest, defaultOptions, options) {
2138
2138
  var _a;
2139
2139
  return __awaiter(this, void 0, void 0, function () {
2140
- var mergedOptions, mergedHandlers, defaultAcceptRanges, defaultAcceptStrings, additionalAcceptHeader, fullAcceptHeader, updateOptions, stop, _b, _c, interceptor, baseResponse, content, response, _d, _e, interceptor, _f, _g, interceptor;
2140
+ var mergedOptions, mergedHandlers, defaultAcceptRanges, defaultAcceptStrings, additionalAcceptHeader, fullAcceptHeader, updateOptions, stop, _b, _c, interceptor, baseResponse, content, response, _d, _e, interceptor, error_1, error_2, _f, _g, interceptor;
2141
2141
  var e_6, _h, e_7, _j, e_8, _k;
2142
2142
  return __generator(this, function (_l) {
2143
2143
  switch (_l.label) {
@@ -2173,67 +2173,69 @@ function _waychaser(uriOrRequest, defaultOptions, options) {
2173
2173
  }
2174
2174
  finally { if (e_6) throw e_6.error; }
2175
2175
  }
2176
- return [4 /*yield*/, mergedOptions.fetch(uriOrRequest.toString(), updateOptions)
2177
- // TODO allow lazy loading of the content
2178
- ];
2176
+ return [4 /*yield*/, mergedOptions.fetch(uriOrRequest.toString(), updateOptions)];
2179
2177
  case 1:
2180
2178
  baseResponse = _l.sent();
2179
+ _l.label = 2;
2180
+ case 2:
2181
+ _l.trys.push([2, 7, , 8]);
2182
+ _l.label = 3;
2183
+ case 3:
2184
+ _l.trys.push([3, 5, , 6]);
2181
2185
  return [4 /*yield*/, mergedOptions.contentParser(baseResponse)
2182
2186
  // content is
2183
2187
  // 1. unknown,
2184
- // 2. a post response client side Problem Document,
2185
- // 3. a server side ProblemDocument, or
2186
2188
  // 4. undefined
2187
2189
  ];
2188
- case 2:
2190
+ case 4:
2189
2191
  content = _l.sent();
2190
- // content is
2191
- // 1. unknown,
2192
- // 2. a post response client side Problem Document,
2193
- // 3. a server side ProblemDocument, or
2194
- // 4. undefined
2192
+ response = WayChaserResponse.create(baseResponse, content, defaultOptions, mergedOptions);
2193
+ stop = false;
2195
2194
  try {
2196
- response = WayChaserResponse.create(baseResponse, content, defaultOptions, mergedOptions);
2197
- stop = false;
2198
- try {
2199
- for (_d = __values(updateOptions.postInterceptors), _e = _d.next(); !_e.done; _e = _d.next()) {
2200
- interceptor = _e.value;
2201
- interceptor(response, function () { return (stop = true); });
2202
- if (stop) {
2203
- break;
2204
- }
2205
- }
2206
- }
2207
- catch (e_7_1) { e_7 = { error: e_7_1 }; }
2208
- finally {
2209
- try {
2210
- if (_e && !_e.done && (_j = _d.return)) _j.call(_d);
2195
+ for (_d = __values(updateOptions.postInterceptors), _e = _d.next(); !_e.done; _e = _d.next()) {
2196
+ interceptor = _e.value;
2197
+ interceptor(response, function () { return (stop = true); });
2198
+ if (stop) {
2199
+ break;
2211
2200
  }
2212
- finally { if (e_7) throw e_7.error; }
2213
2201
  }
2214
- return [2 /*return*/, response];
2215
2202
  }
2216
- catch (error) {
2217
- stop = false;
2203
+ catch (e_7_1) { e_7 = { error: e_7_1 }; }
2204
+ finally {
2218
2205
  try {
2219
- for (_f = __values(updateOptions.postErrorInterceptors), _g = _f.next(); !_g.done; _g = _f.next()) {
2220
- interceptor = _g.value;
2221
- interceptor(error, function () { return (stop = true); });
2222
- if (stop) {
2223
- break;
2224
- }
2225
- }
2206
+ if (_e && !_e.done && (_j = _d.return)) _j.call(_d);
2226
2207
  }
2227
- catch (e_8_1) { e_8 = { error: e_8_1 }; }
2228
- finally {
2229
- try {
2230
- if (_g && !_g.done && (_k = _f.return)) _k.call(_f);
2208
+ finally { if (e_7) throw e_7.error; }
2209
+ }
2210
+ return [2 /*return*/, response];
2211
+ case 5:
2212
+ error_1 = _l.sent();
2213
+ throw error_1 instanceof ProblemDocument_1 ? new WayChaserProblem({
2214
+ response: new WayChaserResponse({ handlers: mergedOptions.defaultHandlers, defaultOptions: defaultOptions, baseResponse: baseResponse, content: error_1, parameters: mergedOptions.parameters }),
2215
+ problem: error_1,
2216
+ }) : error_1;
2217
+ case 6: return [3 /*break*/, 8];
2218
+ case 7:
2219
+ error_2 = _l.sent();
2220
+ stop = false;
2221
+ try {
2222
+ for (_f = __values(updateOptions.postErrorInterceptors), _g = _f.next(); !_g.done; _g = _f.next()) {
2223
+ interceptor = _g.value;
2224
+ interceptor(error_2, function () { return (stop = true); });
2225
+ if (stop) {
2226
+ break;
2231
2227
  }
2232
- finally { if (e_8) throw e_8.error; }
2233
2228
  }
2234
- throw error;
2235
2229
  }
2236
- return [2 /*return*/];
2230
+ catch (e_8_1) { e_8 = { error: e_8_1 }; }
2231
+ finally {
2232
+ try {
2233
+ if (_g && !_g.done && (_k = _f.return)) _k.call(_f);
2234
+ }
2235
+ finally { if (e_8) throw e_8.error; }
2236
+ }
2237
+ throw error_2;
2238
+ case 8: return [2 /*return*/];
2237
2239
  }
2238
2240
  });
2239
2241
  });
@@ -2283,16 +2285,16 @@ var wayChaserDefaults = {
2283
2285
  return [2 /*return*/, contentType === 'application/problem+json' ? Object.assign(new ProblemDocument_1(jsonContent), jsonContent) : jsonContent];
2284
2286
  }
2285
2287
  catch (error) {
2286
- return [2 /*return*/, new ProblemDocument_1({
2287
- type: "https://waychaser.io/invalid-json",
2288
- title: "JSON response could not be parsed",
2289
- detail: "The response document with content type '".concat(contentType, "' could not be parsed as json"),
2290
- content: content,
2291
- error: error
2292
- })];
2288
+ throw new ProblemDocument_1({
2289
+ type: "https://waychaser.io/invalid-json",
2290
+ title: "JSON response could not be parsed",
2291
+ detail: "The response document with content type '".concat(contentType, "' could not be parsed as json"),
2292
+ content: content,
2293
+ error: error
2294
+ });
2293
2295
  }
2294
2296
  }
2295
- return [2 /*return*/, new ProblemDocument_1(__assign({ type: "https://waychaser.io/unsupported-content-type", title: "The response has an unsupported content type", detail: "The response document has a content type of '".concat(contentType, "' which is not supported"), content: content }, (contentType && { contentType: contentType })))];
2297
+ throw new ProblemDocument_1(__assign({ type: "https://waychaser.io/unsupported-content-type", title: "The response has an unsupported content type", detail: "The response document has a content type of '".concat(contentType, "' which is not supported"), content: content }, (contentType && { contentType: contentType })));
2296
2298
  case 2: return [2 /*return*/];
2297
2299
  }
2298
2300
  });
@@ -12,4 +12,4 @@ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
12
12
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
13
13
  PERFORMANCE OF THIS SOFTWARE.
14
14
  ***************************************************************************** */
15
- var e=function(t,r){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(t,r)};function t(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}var r=function(){return(r=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function n(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r}function o(e,t,r,n){return new(r||(r=Promise))((function(o,i){function a(e){try{l(n.next(e))}catch(e){i(e)}}function s(e){try{l(n.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((n=n.apply(e,t||[])).next())}))}function i(e,t){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],n=0}finally{r=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}}function a(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function s(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,i=r.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(n=i.next()).done;)a.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return a}function l(e,t,r){if(r||2===arguments.length)for(var n,o=0,i=t.length;o<i;o++)!n&&o in t||(n||(n=Array.prototype.slice.call(t,0,o)),n[o]=t[o]);return e.concat(n||Array.prototype.slice.call(t))}var u="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},c={};!function(e){var t=/[!'()]/g,r={"":",","+":",","#":",","?":"&"},n=/[$-\/?[-^{|}]/g,o=/\{([#&+.\/;?]?)((?:[-\w%.]+(\*|:\d+)?,?)+)\}/g,i=RegExp(o.source+"|.[^{]*?","g");function a(e){return encodeURIComponent(e).replace(t,escape)}function s(e){return null!=e}function l(e,t,r){return(e=e.map(t).filter(s)).length&&e.join(r)}function u(e,t){return e.replace(o,(function(e,n,o){var i=r[n]||n,s=";"==i||"&"==i,u=n&&","==i?encodeURI:a,c=l(o.split(","),(function(e){var r=e.split(/[*:]/),n=r[0],o=t[n];if(null!=o){if("object"==typeof o){if(r=n!=e,Array.isArray(o)?o=l(o,u,r?s?i+n+"=":i:","):(o=l(Object.keys(o),(function(e){return u(e)+(r?"=":",")+u(o[e])}),r&&(s||"/"==i)?i:","),r&&(s=0)),!o)return}else o=u(r[1]?o.slice(0,r[1]):o);return s?n+(o||"&"==i?"="+o:o):o}}),i);return c||""===c?"+"!=n?n+c:c:""}))}e.expand=u,e.Template=function(e){var t=this,o=0,a={},s="",l="^"+e.replace(i,(function(e,t,n){if(!n)return p(e);var i=r[t]||t,l=";"==i||"&"==i,u=n.split(",").map((function(e){var t=e.split(/[*:]/),r=t[0],n=(a[r]||"(")+".*?)";return o++,t[1]&&(n="((?:%..|.){1,"+t[1]+"})",a[r]="(\\"+o),s+="t=($["+o+"]||'').split('"+i+"').map(decodeURIComponent);",s+='o["'+r+'"]=t.length>1?t:t[0];',l?p(r)+"(?:="+n+")?":"&"==i?p(r+"=")+n:n})).join(p(i));return"+"!=t?p(t)+u:u}))+"$",c=RegExp(l),f=Function("$","var t,o={};"+s+"return o");function p(e){return e.replace(n,"\\$&")}t.template=e,t.match=function(e){var t=c.exec(e);return t&&f(t)},t.expand=u.bind(t,e)}}(u.URI||(u.URI={}));const f=function(){const e="undefined"==typeof window?c.URI||global.URI:window.URI||c.URI;return e.parameters=function(e){return new f.Template(e).match(e)},e}();var p=Object.prototype.hasOwnProperty,d=function e(t,r){var n=[];for(var o in t)if(p.call(t,o)){var i,a=t[o],s=encodeURIComponent(o);i="object"==typeof a?e(a,r?r+"["+s+"]":s):(r?r+"["+s+"]":s)+"="+encodeURIComponent(a),n.push(i)}return n.join("&")},h="object"==typeof self?self.FormData:window.FormData;function y(e,t,r){if(e){return function(e){return e.split(",").map((function(e){var t,r,n=e.split(";"),o=n.shift(),i=null==o?void 0:o.split("/"),s={type:o,parentType:null==i?void 0:i[0],subType:null==i?void 0:i[1],q:1};try{for(var l=a(n),u=l.next();!u.done;u=l.next()){var c=u.value,f=c.split("=");"q"===c[0]&&(s[f[0]]=Number.parseFloat(f[1]))}}catch(e){t={error:e}}finally{try{u&&!u.done&&(r=l.return)&&r.call(l)}finally{if(t)throw t.error}}return s})).sort((function(e,t){return e.q>t.q?-1:e.q<t.q||"*"===e.parentType&&"*"!==t.parentType?1:"*"!==e.parentType&&"*"===t.parentType?-1:"*"===e.subType&&"*"!==t.subType?1:"*"!==e.subType&&"*"===t.subType?-1:0})).map((function(e){return{type:e.type||""}})).filter((function(e){return""!==e.type}))}(e).find((e=>t.includes(e.type))).type}return r}var v=w;function b(e){return e&&e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}function m(e){return e}function w(e,t){const r=(t=t||{}).delimiter||".",n=t.maxDepth,o=t.transformKey||m,i={};return function e(a,s,l){l=l||1,Object.keys(a).forEach((function(u){const c=a[u],f=t.safe&&Array.isArray(c),p=Object.prototype.toString.call(c),d=b(c),h="[object Object]"===p||"[object Array]"===p,y=s?s+r+o(u):o(u);if(!f&&!d&&h&&Object.keys(c).length&&(!t.maxDepth||l<n))return e(c,y,l+1);i[y]=c}))}(e),i}w.flatten=w,w.unflatten=function e(t,r){const n=(r=r||{}).delimiter||".",o=r.overwrite||!1,i=r.transformKey||m,a={};if(b(t)||"[object Object]"!==Object.prototype.toString.call(t))return t;function s(e){const t=Number(e);return isNaN(t)||-1!==e.indexOf(".")||r.object?e:t}return t=Object.keys(t).reduce((function(e,o){const i=Object.prototype.toString.call(t[o]);return!("[object Object]"===i||"[object Array]"===i)||function(e){const t=Object.prototype.toString.call(e),r="[object Array]"===t,n="[object Object]"===t;if(!e)return!0;if(r)return!e.length;if(n)return!Object.keys(e).length}(t[o])?(e[o]=t[o],e):function(e,t,r){return Object.keys(r).reduce((function(t,o){return t[e+n+o]=r[o],t}),t)}(o,e,w(t[o],r))}),{}),Object.keys(t).forEach((function(l){const u=l.split(n).map(i);let c=s(u.shift()),f=s(u[0]),p=a;for(;void 0!==f;){if("__proto__"===c)return;const e=Object.prototype.toString.call(p[c]),t="[object Object]"===e||"[object Array]"===e;if(!o&&!t&&void 0!==p[c])return;(o&&!t||!o&&null==p[c])&&(p[c]="number"!=typeof f||r.object?{}:[]),p=p[c],u.length>0&&(c=s(u.shift()),f=s(u[0]))}p[c]=e(t[l],r)})),a};var g={},O=/~/,x=/~[01]/g;function j(e){switch(e){case"~1":return"/";case"~0":return"~"}throw new Error("Invalid tilde escape: "+e)}function k(e){return O.test(e)?e.replace(x,j):e}function A(e){if("string"==typeof e){if(""===(e=e.split("/"))[0])return e;throw new Error("Invalid JSON pointer.")}if(Array.isArray(e)){for(const t of e)if("string"!=typeof t&&"number"!=typeof t)throw new Error("Invalid JSON pointer. Must be of type string or number.");return e}throw new Error("Invalid JSON pointer.")}function E(e,t){if("object"!=typeof e)throw new Error("Invalid input object.");var r=(t=A(t)).length;if(1===r)return e;for(var n=1;n<r;){if(e=e[k(t[n++])],r===n)return e;if("object"!=typeof e)return}}function I(e,t,r){if("object"!=typeof e)throw new Error("Invalid input object.");if(0===(t=A(t)).length)throw new Error("Invalid JSON pointer for set.");return function(e,t,r){for(var n,o,i=1,a=t.length;i<a;){if("constructor"===t[i]||"prototype"===t[i]||"__proto__"===t[i])return e;if(n=k(t[i++]),o=a>i,void 0===e[n]&&(Array.isArray(e)&&"-"===n&&(n=e.length),o&&(""!==t[i]&&t[i]<1/0||"-"===t[i]?e[n]=[]:e[n]={})),!o)break;e=e[n]}var s=e[n];return void 0===r?delete e[n]:e[n]=r,s}(e,t,r)}g.get=E,g.set=I,g.compile=function(e){var t=A(e);return{get:function(e){return E(e,t)},set:function(e,r){return I(e,t,r)}}};var R={};Object.defineProperty(R,"__esModule",{value:!0});var T=R.ProblemDocument=void 0;T=R.ProblemDocument=class{constructor(e){Object.assign(this,e)}};var S=function(e){var t=e.rel,r=e.uri,o=e.method,i=e.parameters,a=e.accept,s=e.anchor,l=n(e,["rel","uri","method","parameters","accept","anchor"]);this.rel=t,this.uri=r,this.method=o,this.parameters=i||{},this.accept=a,this.anchor=s,Object.assign(this,l)},C=function(e){function r(t,r,n,o){var i=e.call(this,t)||this;return i.response=r,i.defaultOptions=n,i.uri.includes("{this.")&&(i.uri=f.expand(i.uri,o)),i}return t(r,e),r.prototype.invokeAsFragment=function(e,t){if(this.uri.startsWith("#/")){var r=this.expandUrl(e).toString(),n=this.response.fullContent&&g.get(this.response.fullContent,r.slice(1));if(t){var o=t(n);if(se(o))return new le({defaultOptions:this.defaultOptions,baseResponse:this.response.response,content:o.content,fullContent:this.response.fullContent,anchor:r,parentOperations:this.response.allOperations,parameters:e});throw new ue({problem:o.problem,response:new le({defaultOptions:this.defaultOptions,baseResponse:this.response.response,content:n,fullContent:this.response.fullContent,parameters:e})})}return new le({defaultOptions:this.defaultOptions,baseResponse:this.response.response,content:n,fullContent:this.response.fullContent,anchor:r,parentOperations:this.response.allOperations,parameters:e})}},r.prototype.invokeAll=function(e){return o(this,void 0,void 0,(function(){var t;return i(this,(function(r){return this.uri.startsWith("#/")&&this.response instanceof le?(t=this.doInvokeAll((null==e?void 0:e.parameters)||{}),[2,Promise.all(t)]):[2,Promise.all([this.invoke(e)])]}))}))},r.prototype.doInvokeAll=function(e,t){var r=this,n=this.response,o=new f.Template(this.uri),i=Object.assign(f.parameters(this.uri),e),a=o.expand(i).replace(/%7B/g,"{").replace(/%7D/g,"}"),u=f.parameters(a),c=Object.keys(u);if(0!==c.length){var p=u[c[0]],d=a.slice(1,a.indexOf(p)-1),h=""===d?n.content:g.get(n.content,d);if(h)return(Array.isArray(h)?l([],s(Array.from({length:h.length}).keys()),!1):Object.keys(h)).flatMap((function(n){var o,i=Object.assign({},e,((o={})[c[0]]=n,o));return r.doInvokeAll(i,t)}));throw new ue({response:this.response,problem:new T({type:"https://waychaser.io/fragment-uri-error",title:"The fragment URI does not match the content structure",uri:d,content:n.content,parameters:e})})}return[this.invokeAsFragment(e,t)]},r.prototype.invoke=function(e){return o(this,void 0,void 0,(function(){var t,r,n,o,s,l,u,c,f,p,v,b,m,w,g,O,x,j,k;return i(this,(function(i){if(t=this.invokeAsFragment(null==e?void 0:e.parameters))return[2,t];if(r=this.parameters||{},n=Object.assign({},this.defaultOptions.parameters,null==e?void 0:e.parameters),o=this.url(n),s={},Array.isArray(r))try{for(l=a(r),u=l.next();!u.done;u=l.next())p=u.value,s[p]=null==n?void 0:n[p]}catch(e){O={error:e}}finally{try{u&&!u.done&&(x=l.return)&&x.call(l)}finally{if(O)throw O.error}}else try{for(c=a(Object.keys(r)),f=c.next();!f.done;f=c.next())p=f.value,s[p]=null==n?void 0:n[p]}catch(e){j={error:e}}finally{try{f&&!f.done&&(k=c.return)&&k.call(c)}finally{if(j)throw j.error}}if(b={},(m=Object.assign({},e)).method=this.method,0!==Object.keys(this.parameters).length&&(A=this.method||"GET",!["GET","DELETE","TRACE","OPTIONS","HEAD"].includes(A))){switch(w=y(this.accept,["application/x-www-form-urlencoded","application/json","multipart/form-data"],"application/x-www-form-urlencoded")){case"application/x-www-form-urlencoded":v=d(s);break;case"application/json":v=JSON.stringify(s);break;case"multipart/form-data":for(g in v=new h,s)v.append(g,s[g])}"multipart/form-data"!==w&&(b={"content-type":w}),m.body=v,m.headers=Object.assign(b,null==e?void 0:e.headers)}var A;return[2,fe(o.toString(),this.defaultOptions,m)]}))}))},r.prototype.url=function(e){var t=this.expandUrl(e);return new URL(t,this.response.url)},r.prototype.expandUrl=function(e){return f.expand(this.uri,v(e||{}))},r}(S),_=function(e){function r(t){return e.apply(this,l([],s(t||[]),!1))||this}return t(r,e),r.create=function(){return Object.create(r.prototype)},r.prototype.find=function(e,t){var r=Array.prototype.find.bind(this);return r("string"==typeof e?P({rel:e}):"object"==typeof e?P(e):e,t)},r.prototype.filter=function(e,t){if("string"==typeof e)return this.filter({rel:e},t);if("object"==typeof e)return this.filter(P(e),t);var n=Array.prototype.filter.bind(this)(e);return Object.setPrototypeOf(n,r.prototype),n},r.prototype.invoke=function(e,t){var r=this.find(e);return r?r.invoke(t):void 0},r.prototype.invokeAll=function(e,t){return Promise.all(this.filter(e).map((function(e){return e.invokeAll(t)}))).then((function(e){return e.flat()}))},r}(Array);function P(e){return function(t){for(var r in e)if(e[r]!==t[r])return!1;return!0}}function U(e){var t,r,n,o,i=[],s=/{\[(\d+)..(\d+)]}/,l=e.uri.toString(),u=l.match(s);if(u)for(var c=Number.parseInt(u[1]);c<=Number.parseInt(u[2]);++c){var f=U(new S(Object.assign(e,{uri:l.replace(s,c.toFixed(0))})));try{for(var p=(t=void 0,a(f)),d=p.next();!d.done;d=p.next()){var h=d.value;i.push(h)}}catch(e){t={error:e}}finally{try{d&&!d.done&&(r=p.return)&&r.call(p)}finally{if(t)throw t.error}}}else{var y=e.anchor,v=null==y?void 0:y.match(s);if(y&&v)for(c=Number.parseInt(v[1]);c<=Number.parseInt(v[2]);++c){f=U(new S(Object.assign(e,{anchor:y.replace(s,c.toFixed(0))})));try{for(var b=(n=void 0,a(f)),m=b.next();!m.done;m=b.next()){var w=m.value;i.push(w)}}catch(e){n={error:e}}finally{try{m&&!m.done&&(o=b.return)&&o.call(b)}finally{if(n)throw n.error}}}else i.push(e)}return i}const q="application/hal+json",N="application/vnd.siren+json";function F(e,t){const r=e.split(/:(.+)/);if(r.length>1){const[n,o]=r;return t[n]?f.expand(t[n],{rel:o}):e}return e}function D(e,t,r){const{href:n,templated:o,...i}=t;return new S({rel:F(e,r),uri:n,...i})}var H=/^utf-?8|ascii|utf-?16-?le|ucs-?2|base-?64|latin-?1$/i,L=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,$=/\s|\uFEFF|\xA0/,B=/\r?\n[\x20\x09]+/g,J=/[;,"]/,G=/[;,"]|\s/,M=/^[!#$%&'*+\-\.^_`|~\da-zA-Z]+$/,Q=1,W=2,K=4;function V(e){return e.replace(L,"")}function z(e){return $.test(e)}function Z(e,t){for(;z(e[t]);)t++;return t}function X(e){return G.test(e)||!M.test(e)}class Y{constructor(e){this.refs=[],e&&this.parse(e)}rel(e){for(var t=[],r=e.toLowerCase(),n=0;n<this.refs.length;n++)this.refs[n].rel.toLowerCase()===r&&t.push(this.refs[n]);return t}get(e,t){e=e.toLowerCase();for(var r=[],n=0;n<this.refs.length;n++)this.refs[n][e]===t&&r.push(this.refs[n]);return r}set(e){return this.refs.push(e),this}has(e,t){e=e.toLowerCase();for(var r=0;r<this.refs.length;r++)if(this.refs[r][e]===t)return!0;return!1}parse(e,t){e=V(e=(t=t||0)?e.slice(t):e).replace(B,"");for(var r=Q,n=e.length,o=(t=0,null);t<n;)if(r===Q){if(z(e[t])){t++;continue}if("<"!==e[t])throw new Error('Unexpected character "'+e[t]+'" at offset '+t);if(null!=o&&(null!=o.rel?this.refs.push(...Y.expandRelations(o)):this.refs.push(o)),-1===(s=e.indexOf(">",t)))throw new Error("Expected end of URI delimiter at offset "+t);o={uri:e.slice(t+1,s)},t=s,r=W,t++}else if(r===W){if(z(e[t])){t++;continue}if(";"===e[t])r=K,t++;else{if(","!==e[t])throw new Error('Unexpected character "'+e[t]+'" at offset '+t);r=Q,t++}}else{if(r!==K)throw new Error('Unknown parser state "'+r+'"');if(";"===e[t]||z(e[t])){t++;continue}if(-1===(s=e.indexOf("=",t)))throw new Error("Expected attribute delimiter at offset "+t);var i=V(e.slice(t,s)).toLowerCase(),a="";if('"'===e[t=Z(e,t=s+1)])for(t++;t<n;){if('"'===e[t]){t++;break}"\\"===e[t]&&t++,a+=e[t],t++}else{for(var s=t+1;!J.test(e[s])&&s<n;)s++;a=e.slice(t,s),t=s}switch(o[i]&&Y.isSingleOccurenceAttr(i)||("*"===i[i.length-1]?o[i]=Y.parseExtendedValue(a):(a="type"===i?a.toLowerCase():a,null!=o[i]?Array.isArray(o[i])?o[i].push(a):o[i]=[o[i],a]:o[i]=a)),e[t]){case",":r=Q;break;case";":r=K}t++}return null!=o&&(null!=o.rel?this.refs.push(...Y.expandRelations(o)):this.refs.push(o)),o=null,this}toString(){for(var e=[],t="",r=null,n=0;n<this.refs.length;n++)r=this.refs[n],t=Object.keys(this.refs[n]).reduce((function(e,t){return"uri"===t?e:e+"; "+Y.formatAttribute(t,r[t])}),"<"+r.uri+">"),e.push(t);return e.join(", ")}}Y.isCompatibleEncoding=function(e){return H.test(e)},Y.parse=function(e,t){return(new Y).parse(e,t)},Y.isSingleOccurenceAttr=function(e){return"rel"===e||"type"===e||"media"===e||"title"===e||"title*"===e},Y.isTokenAttr=function(e){return"rel"===e||"type"===e||"anchor"===e},Y.escapeQuotes=function(e){return e.replace(/"/g,'\\"')},Y.expandRelations=function(e){return e.rel.split(" ").map((function(t){var r=Object.assign({},e);return r.rel=t,r}))},Y.parseExtendedValue=function(e){var t=/([^']+)?(?:'([^']+)')?(.+)/.exec(e);return{language:t[2].toLowerCase(),encoding:Y.isCompatibleEncoding(t[1])?null:t[1].toLowerCase(),value:Y.isCompatibleEncoding(t[1])?decodeURIComponent(t[3]):t[3]}},Y.formatExtendedAttribute=function(e,t){var r=(t.encoding||"utf-8").toUpperCase();return e+"="+r+"'"+(t.language||"en")+"'"+(Buffer.isBuffer(t.value)&&Y.isCompatibleEncoding(r)?t.value.toString(r):Buffer.isBuffer(t.value)?t.value.toString("hex").replace(/[0-9a-f]{2}/gi,"%$1"):encodeURIComponent(t.value))},Y.formatAttribute=function(e,t){return Array.isArray(t)?t.map((t=>Y.formatAttribute(e,t))).join("; "):"*"===e[e.length-1]||"string"!=typeof t?Y.formatExtendedAttribute(e,t):(Y.isTokenAttr(e)?t=X(t)?'"'+Y.escapeQuotes(t)+'"':Y.escapeQuotes(t):X(t)&&(t='"'+(t=(t=encodeURIComponent(t)).replace(/%20/g," ").replace(/%2C/g,",").replace(/%3B/g,";"))+'"'),e+"="+t)};var ee,te,re=Y;function ne(e){return e?re.parse(e).refs.map((function(e){var t=e.rel,o=e.uri,i=e.method,a=e["accept*"],s=e["params*"],l=n(e,["rel","uri","method","accept*","params*"]),u=(null==s?void 0:s.value)?JSON.parse(null==s?void 0:s.value):void 0;return new S(r({rel:t,uri:o,method:i,parameters:u,accept:null==a?void 0:a.value},l))})):[]}function oe(e){var t,o,i=e.name,s=e.href,l=e.fields,u=e.type,c=n(e,["name","href","fields","type"]),f={};if(l)try{for(var p=a(l),d=p.next();!d.done;d=p.next()){f[d.value.name]={}}}catch(e){t={error:e}}finally{try{d&&!d.done&&(o=p.return)&&o.call(p)}finally{if(t)throw t.error}}return r({rel:i,uri:s,accept:u,parameters:l&&f},c)}function ie(e,t){var o=t.href;t.rel;var i=n(t,["href","rel"]);return new S(r({rel:e,uri:o},i))}function ae(e,t){var o=e.handlers,i=e.defaultHandlers,a=e.headers,u=n(e,["handlers","defaultHandlers","headers"]),c=t||{},f=c.handlers,p=c.defaultHandlers,d=c.headers,h=n(c,["handlers","defaultHandlers","headers"]),y=ce(l(l([],s(f||o||[]),!1),s(p||i||[]),!1));return r(r(r({},u),h),{defaultHandlers:y,handlers:[],headers:r(r({},a),d)})}function se(e){return e.success}var le=function(){function e(e){var t,r,n,o,i,s,l=e.handlers,u=e.defaultOptions,c=e.baseResponse,p=e.content,d=e.fullContent,h=e.anchor,y=e.parentOperations,b=e.parameters;this.response=c,this.anchor=h,this.parameters=b||{},this.fullContent=d||p,this.content=p,this.operations=_.create();var m=v({this:p});if(y&&h&&u){this.allOperations=y;try{for(var w=a(this.allOperations[h]||[]),g=w.next();!g.done;g=w.next()){var O=g.value;this.operations.push(new C(O,this,u,m))}}catch(e){t={error:e}}finally{try{g&&!g.done&&(r=w.return)&&r.call(w)}finally{if(t)throw t.error}}for(var x in this.allOperations)if(""!==x){var j=new f.Template(x),k=j.match(this.anchor);if(j.expand(k)===this.anchor){var A=Object.assign({},u,{parameters:Object.assign(k,u.parameters)});try{for(var E=(n=void 0,a(this.allOperations[x])),I=E.next();!I.done;I=E.next()){O=I.value;this.operations.push(new C(O,this,A,m))}}catch(e){n={error:e}}finally{try{I&&!I.done&&(o=E.return)&&o.call(E)}finally{if(n)throw n.error}}}}}else if(c&&l&&u){this.allOperations=function(e){var t,r,n,o,i,s,l,u,c=e.handlers,f=e.baseResponse,p=e.content,d=[],h=!1;try{for(var y=a(c),v=y.next();!v.done;v=y.next()){var b=v.value.handler(f,p,(function(){h=!0}));if(b)try{for(var m=(n=void 0,a(b)),w=m.next();!w.done;w=m.next()){var g=w.value;d.push(g)}}catch(e){n={error:e}}finally{try{w&&!w.done&&(o=m.return)&&o.call(m)}finally{if(n)throw n.error}}if(h)break}}catch(e){t={error:e}}finally{try{v&&!v.done&&(r=y.return)&&r.call(y)}finally{if(t)throw t.error}}var O={};try{for(var x=a(d),j=x.next();!j.done;j=x.next()){var k=U(g=j.value);try{for(var A=(l=void 0,a(k)),E=A.next();!E.done;E=A.next()){var I=E.value,R=I.anchor||"";O[R]||(O[R]=[]),O[R].push(I)}}catch(e){l={error:e}}finally{try{E&&!E.done&&(u=A.return)&&u.call(A)}finally{if(l)throw l.error}}}}catch(e){i={error:e}}finally{try{j&&!j.done&&(s=x.return)&&s.call(x)}finally{if(i)throw i.error}}return O}({baseResponse:c,content:p,handlers:l}),this.operations=_.create();try{for(var R=a(this.allOperations[""]||[]),T=R.next();!T.done;T=R.next()){O=T.value;var S=new C(O,this,u,m);this.operations.push(S)}}catch(e){i={error:e}}finally{try{T&&!T.done&&(s=R.return)&&s.call(R)}finally{if(i)throw i.error}}}}return e.create=function(t,r,n,o){if(r instanceof T)throw new ue({response:new e({handlers:o.defaultHandlers,defaultOptions:n,baseResponse:t,content:r,parameters:o.parameters}),problem:r});if(o.validator){var i=o.validator(r);if(se(i))return new e({handlers:o.defaultHandlers,defaultOptions:n,baseResponse:t,content:i.content,parameters:o.parameters});throw new ue({response:new e({handlers:o.defaultHandlers,defaultOptions:n,baseResponse:t,content:r,parameters:o.parameters}),problem:i.problem})}return new e({handlers:o.defaultHandlers,defaultOptions:n,baseResponse:t,content:r,parameters:o.parameters})},Object.defineProperty(e.prototype,"ops",{get:function(){return this.operations},enumerable:!1,configurable:!0}),e.prototype.invoke=function(e,t){return this.operations.invoke(e,t)},e.prototype.invokeAll=function(e,t){return this.operations.invokeAll(e,t)},Object.defineProperty(e.prototype,"body",{get:function(){throw new Error("Not Implemented. Use `.content` instead")},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"bodyUsed",{get:function(){return!0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"headers",{get:function(){var e;return null===(e=this.response)||void 0===e?void 0:e.headers},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"ok",{get:function(){return!!this.response&&this.response.ok},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"redirected",{get:function(){return!!this.response&&this.response.redirected},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"status",{get:function(){var e;return null===(e=this.response)||void 0===e?void 0:e.status},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"statusText",{get:function(){var e;return null===(e=this.response)||void 0===e?void 0:e.statusText},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"type",{get:function(){var e;return null===(e=this.response)||void 0===e?void 0:e.type},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"url",{get:function(){var e;return null===(e=this.response)||void 0===e?void 0:e.url},enumerable:!1,configurable:!0}),e.prototype.arrayBuffer=function(){throw new Error("Not Implemented. Use `.content` instead")},e.prototype.blob=function(){throw new Error("Not Implemented. Use `.content` instead")},e.prototype.clone=function(){throw new Error("Not Implemented")},e.prototype.formData=function(){throw new Error("Not Implemented. Use `.content` instead")},e.prototype.text=function(){throw new Error("Not Implemented. Use `.content` instead")},e}(),ue=function(e){function r(t){var r=this.constructor,n=t.response,o=t.problem,i=e.call(this,o.detail)||this,a=r.prototype;return Object.setPrototypeOf?Object.setPrototypeOf(i,a):i.__proto__=a,i.problem=o,i.response=n,i}return t(r,e),r}(Error);function ce(e){return e.sort((function(e,t){return(t.q||1)-(e.q||1)}))}function fe(e,t,n){var u;return o(this,void 0,void 0,(function(){var o,c,f,p,d,h,y,v,b,m,w,g,O,x,j,k,A,E,I,R,T,S,C;return i(this,(function(i){switch(i.label){case 0:if(o=ae(t,n),c=o.defaultHandlers,!o.fetch)throw new Error("No global fetch and fetch not provided in options");f=function(e){var t,r,n,o,i=[];try{for(var s=a(e),l=s.next();!l.done;l=s.next()){var u=l.value;try{for(var c=(n=void 0,a(u.mediaRanges)),f=c.next();!f.done;f=c.next()){var p=f.value;"object"==typeof p?u.q?i.push({type:p.mediaType,q:u.q*(p.q||1)}):i.push({type:p.mediaType,q:p.q||1}):u.q?i.push({type:p,q:u.q}):i.push({type:p,q:1})}}catch(e){n={error:e}}finally{try{f&&!f.done&&(o=c.return)&&o.call(c)}finally{if(n)throw n.error}}}}catch(e){t={error:e}}finally{try{l&&!l.done&&(r=s.return)&&r.call(s)}finally{if(t)throw t.error}}var d=i.sort((function(e,t){return e.q-t.q})),h=new Set;return d.filter((function(e){var t=e.type;return!h.has(t)&&h.add(t)}))}(c),p=f.map((function(e){return 1===e.q?e.type:"".concat(e.type,";q=").concat(e.q)})),d=(null===(u=null==n?void 0:n.headers)||void 0===u?void 0:u.accept)?[n.headers.accept]:[],h=l(l([],s(d),!1),s(p),!1).join(","),y=r(r({},o),{headers:r(r({},o.headers),{accept:h})}),v=!1;try{for(b=a(y.preInterceptors||[]),m=b.next();!m.done&&((0,m.value)(e,y,(function(){return v=!0})),!v);m=b.next());}catch(e){E={error:e}}finally{try{m&&!m.done&&(I=b.return)&&I.call(b)}finally{if(E)throw E.error}}return[4,o.fetch(e.toString(),y)];case 1:return w=i.sent(),[4,o.contentParser(w)];case 2:g=i.sent();try{O=le.create(w,g,t,o),v=!1;try{for(x=a(y.postInterceptors),j=x.next();!j.done&&((0,j.value)(O,(function(){return v=!0})),!v);j=x.next());}catch(e){R={error:e}}finally{try{j&&!j.done&&(T=x.return)&&T.call(x)}finally{if(R)throw R.error}}return[2,O]}catch(e){v=!1;try{for(k=a(y.postErrorInterceptors),A=k.next();!A.done&&((0,A.value)(e,(function(){return v=!0})),!v);A=k.next());}catch(e){S={error:e}}finally{try{A&&!A.done&&(C=k.return)&&C.call(k)}finally{if(S)throw S.error}}throw e}return[2]}}))}))}var pe={fetch:"undefined"!=typeof window?null===(ee=window.fetch)||void 0===ee?void 0:ee.bind(window):null===(te="undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:void 0)||void 0===te?void 0:te.fetch,handlers:[],defaultHandlers:ce([{handler:function(e){var t=null==e?void 0:e.headers.get("location");return t?[new S({rel:"related",uri:t})]:[]},mediaRanges:["*/*"],q:.4},{handler:function(e,t,r){return l(l([],s(ne(e.headers.get("link"))),!1),s(ne(e.headers.get("link-template"))),!1)},mediaRanges:["*/*"],q:.5},{handler:function(e,t){var r,n,o,i,s,l,u,c=[],f=null===(u=e.headers.get("content-type"))||void 0===u?void 0:u.split(";");if((null==f?void 0:f[0])===q&&t&&"object"==typeof t&&"_links"in t){var p=t,d={};if(p._links.curies)if(Array.isArray(p._links.curies))try{for(var h=a(p._links.curies),y=h.next();!y.done;y=h.next()){var v=y.value;d[v.name]=v.href}}catch(e){r={error:e}}finally{try{y&&!y.done&&(n=h.return)&&n.call(h)}finally{if(r)throw r.error}}else d[p._links.curies.name]=p._links.curies.href;try{for(var b=a(Object.keys(p._links).filter((function(e){return"curies"!==e}))),m=b.next();!m.done;m=b.next()){var w=m.value;if(Array.isArray(p._links[w]))try{for(var g=(s=void 0,a(p._links[w])),O=g.next();!O.done;O=g.next()){var x=O.value;c.push(D(w,x,d))}}catch(e){s={error:e}}finally{try{O&&!O.done&&(l=g.return)&&l.call(g)}finally{if(s)throw s.error}}else c.push(D(w,p._links[w],d))}}catch(e){o={error:e}}finally{try{m&&!m.done&&(i=b.return)&&i.call(b)}finally{if(o)throw o.error}}}return c},mediaRanges:[q],q:.5},{handler:function(e,t){var r,n=null===(r=e.headers.get("content-type"))||void 0===r?void 0:r.split(";");return(null==n?void 0:n[0])===N?l(l([],s(function(e){var t,r,n,o,i=[];if(e&&"object"==typeof e&&"links"in e){var s=e;if(s.links)try{for(var l=a(s.links),u=l.next();!u.done;u=l.next()){var c=u.value;try{for(var f=(n=void 0,a(c.rel)),p=f.next();!p.done;p=f.next()){var d=ie(p.value,c);i.push(d)}}catch(e){n={error:e}}finally{try{p&&!p.done&&(o=f.return)&&o.call(f)}finally{if(n)throw n.error}}}}catch(e){t={error:e}}finally{try{u&&!u.done&&(r=l.return)&&r.call(l)}finally{if(t)throw t.error}}}return i}(t)),!1),s(function(e){var t,r,n=[];if(e&&"object"==typeof e&&"actions"in e){var o=e;if(o.actions)try{for(var i=a(o.actions),s=i.next();!s.done;s=i.next()){var l=oe(s.value);n.push(l)}}catch(e){t={error:e}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(t)throw t.error}}}return n}(t)),!1):[]},mediaRanges:[N],q:.5}]),preInterceptors:[],postInterceptors:[],postErrorInterceptors:[],contentParser:function(e){return o(void 0,void 0,void 0,(function(){var t,n,o,a;return i(this,(function(i){switch(i.label){case 0:return e.headers.get("content-length")&&"0"!==e.headers.get("content-length")?[4,e.text()]:[3,2];case 1:if(t=i.sent(),n=e.headers.get("content-type"),null===(a=null==n?void 0:n.split(";"))||void 0===a?void 0:a[0].endsWith("json"))try{return o=JSON.parse(t),[2,"application/problem+json"===n?Object.assign(new T(o),o):o]}catch(e){return[2,new T({type:"https://waychaser.io/invalid-json",title:"JSON response could not be parsed",detail:"The response document with content type '".concat(n,"' could not be parsed as json"),content:t,error:e})]}return[2,new T(r({type:"https://waychaser.io/unsupported-content-type",title:"The response has an unsupported content type",detail:"The response document has a content type of '".concat(n,"' which is not supported"),content:t},n&&{contentType:n}))];case 2:return[2]}}))}))}};function de(e,t){var r=ae(t,e),n=function(e,t){return fe(e,r,t)};return n.currentDefaults=r,n.defaults=function(e){return de(e,r)},n}var he=Object.assign((function(e,t){return fe(e,pe,t)}),{currentDefaults:pe,defaults:function(e){return de(e,pe)}});export{ue as WayChaserProblem,le as WayChaserResponse,fe as _waychaser,se as isValidationSuccess,ce as sortHandlers,he as waychaser};
15
+ var e=function(t,r){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(t,r)};function t(t,r){if("function"!=typeof r&&null!==r)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");function n(){this.constructor=t}e(t,r),t.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)}var r=function(){return(r=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};function n(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(n=Object.getOwnPropertySymbols(e);o<n.length;o++)t.indexOf(n[o])<0&&Object.prototype.propertyIsEnumerable.call(e,n[o])&&(r[n[o]]=e[n[o]])}return r}function o(e,t,r,n){return new(r||(r=Promise))((function(o,i){function a(e){try{l(n.next(e))}catch(e){i(e)}}function s(e){try{l(n.throw(e))}catch(e){i(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(a,s)}l((n=n.apply(e,t||[])).next())}))}function i(e,t){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!(o=a.trys,(o=o.length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=t.call(e,a)}catch(e){i=[6,e],n=0}finally{r=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}}function a(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function s(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,i=r.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(n=i.next()).done;)a.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return a}function l(e,t,r){if(r||2===arguments.length)for(var n,o=0,i=t.length;o<i;o++)!n&&o in t||(n||(n=Array.prototype.slice.call(t,0,o)),n[o]=t[o]);return e.concat(n||Array.prototype.slice.call(t))}var u="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},c={};!function(e){var t=/[!'()]/g,r={"":",","+":",","#":",","?":"&"},n=/[$-\/?[-^{|}]/g,o=/\{([#&+.\/;?]?)((?:[-\w%.]+(\*|:\d+)?,?)+)\}/g,i=RegExp(o.source+"|.[^{]*?","g");function a(e){return encodeURIComponent(e).replace(t,escape)}function s(e){return null!=e}function l(e,t,r){return(e=e.map(t).filter(s)).length&&e.join(r)}function u(e,t){return e.replace(o,(function(e,n,o){var i=r[n]||n,s=";"==i||"&"==i,u=n&&","==i?encodeURI:a,c=l(o.split(","),(function(e){var r=e.split(/[*:]/),n=r[0],o=t[n];if(null!=o){if("object"==typeof o){if(r=n!=e,Array.isArray(o)?o=l(o,u,r?s?i+n+"=":i:","):(o=l(Object.keys(o),(function(e){return u(e)+(r?"=":",")+u(o[e])}),r&&(s||"/"==i)?i:","),r&&(s=0)),!o)return}else o=u(r[1]?o.slice(0,r[1]):o);return s?n+(o||"&"==i?"="+o:o):o}}),i);return c||""===c?"+"!=n?n+c:c:""}))}e.expand=u,e.Template=function(e){var t=this,o=0,a={},s="",l="^"+e.replace(i,(function(e,t,n){if(!n)return p(e);var i=r[t]||t,l=";"==i||"&"==i,u=n.split(",").map((function(e){var t=e.split(/[*:]/),r=t[0],n=(a[r]||"(")+".*?)";return o++,t[1]&&(n="((?:%..|.){1,"+t[1]+"})",a[r]="(\\"+o),s+="t=($["+o+"]||'').split('"+i+"').map(decodeURIComponent);",s+='o["'+r+'"]=t.length>1?t:t[0];',l?p(r)+"(?:="+n+")?":"&"==i?p(r+"=")+n:n})).join(p(i));return"+"!=t?p(t)+u:u}))+"$",c=RegExp(l),f=Function("$","var t,o={};"+s+"return o");function p(e){return e.replace(n,"\\$&")}t.template=e,t.match=function(e){var t=c.exec(e);return t&&f(t)},t.expand=u.bind(t,e)}}(u.URI||(u.URI={}));const f=function(){const e="undefined"==typeof window?c.URI||global.URI:window.URI||c.URI;return e.parameters=function(e){return new f.Template(e).match(e)},e}();var p=Object.prototype.hasOwnProperty,d=function e(t,r){var n=[];for(var o in t)if(p.call(t,o)){var i,a=t[o],s=encodeURIComponent(o);i="object"==typeof a?e(a,r?r+"["+s+"]":s):(r?r+"["+s+"]":s)+"="+encodeURIComponent(a),n.push(i)}return n.join("&")},h="object"==typeof self?self.FormData:window.FormData;function y(e,t,r){if(e){return function(e){return e.split(",").map((function(e){var t,r,n=e.split(";"),o=n.shift(),i=null==o?void 0:o.split("/"),s={type:o,parentType:null==i?void 0:i[0],subType:null==i?void 0:i[1],q:1};try{for(var l=a(n),u=l.next();!u.done;u=l.next()){var c=u.value,f=c.split("=");"q"===c[0]&&(s[f[0]]=Number.parseFloat(f[1]))}}catch(e){t={error:e}}finally{try{u&&!u.done&&(r=l.return)&&r.call(l)}finally{if(t)throw t.error}}return s})).sort((function(e,t){return e.q>t.q?-1:e.q<t.q||"*"===e.parentType&&"*"!==t.parentType?1:"*"!==e.parentType&&"*"===t.parentType?-1:"*"===e.subType&&"*"!==t.subType?1:"*"!==e.subType&&"*"===t.subType?-1:0})).map((function(e){return{type:e.type||""}})).filter((function(e){return""!==e.type}))}(e).find((e=>t.includes(e.type))).type}return r}var v=w;function b(e){return e&&e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}function m(e){return e}function w(e,t){const r=(t=t||{}).delimiter||".",n=t.maxDepth,o=t.transformKey||m,i={};return function e(a,s,l){l=l||1,Object.keys(a).forEach((function(u){const c=a[u],f=t.safe&&Array.isArray(c),p=Object.prototype.toString.call(c),d=b(c),h="[object Object]"===p||"[object Array]"===p,y=s?s+r+o(u):o(u);if(!f&&!d&&h&&Object.keys(c).length&&(!t.maxDepth||l<n))return e(c,y,l+1);i[y]=c}))}(e),i}w.flatten=w,w.unflatten=function e(t,r){const n=(r=r||{}).delimiter||".",o=r.overwrite||!1,i=r.transformKey||m,a={};if(b(t)||"[object Object]"!==Object.prototype.toString.call(t))return t;function s(e){const t=Number(e);return isNaN(t)||-1!==e.indexOf(".")||r.object?e:t}return t=Object.keys(t).reduce((function(e,o){const i=Object.prototype.toString.call(t[o]);return!("[object Object]"===i||"[object Array]"===i)||function(e){const t=Object.prototype.toString.call(e),r="[object Array]"===t,n="[object Object]"===t;if(!e)return!0;if(r)return!e.length;if(n)return!Object.keys(e).length}(t[o])?(e[o]=t[o],e):function(e,t,r){return Object.keys(r).reduce((function(t,o){return t[e+n+o]=r[o],t}),t)}(o,e,w(t[o],r))}),{}),Object.keys(t).forEach((function(l){const u=l.split(n).map(i);let c=s(u.shift()),f=s(u[0]),p=a;for(;void 0!==f;){if("__proto__"===c)return;const e=Object.prototype.toString.call(p[c]),t="[object Object]"===e||"[object Array]"===e;if(!o&&!t&&void 0!==p[c])return;(o&&!t||!o&&null==p[c])&&(p[c]="number"!=typeof f||r.object?{}:[]),p=p[c],u.length>0&&(c=s(u.shift()),f=s(u[0]))}p[c]=e(t[l],r)})),a};var g={},O=/~/,x=/~[01]/g;function j(e){switch(e){case"~1":return"/";case"~0":return"~"}throw new Error("Invalid tilde escape: "+e)}function k(e){return O.test(e)?e.replace(x,j):e}function A(e){if("string"==typeof e){if(""===(e=e.split("/"))[0])return e;throw new Error("Invalid JSON pointer.")}if(Array.isArray(e)){for(const t of e)if("string"!=typeof t&&"number"!=typeof t)throw new Error("Invalid JSON pointer. Must be of type string or number.");return e}throw new Error("Invalid JSON pointer.")}function E(e,t){if("object"!=typeof e)throw new Error("Invalid input object.");var r=(t=A(t)).length;if(1===r)return e;for(var n=1;n<r;){if(e=e[k(t[n++])],r===n)return e;if("object"!=typeof e)return}}function I(e,t,r){if("object"!=typeof e)throw new Error("Invalid input object.");if(0===(t=A(t)).length)throw new Error("Invalid JSON pointer for set.");return function(e,t,r){for(var n,o,i=1,a=t.length;i<a;){if("constructor"===t[i]||"prototype"===t[i]||"__proto__"===t[i])return e;if(n=k(t[i++]),o=a>i,void 0===e[n]&&(Array.isArray(e)&&"-"===n&&(n=e.length),o&&(""!==t[i]&&t[i]<1/0||"-"===t[i]?e[n]=[]:e[n]={})),!o)break;e=e[n]}var s=e[n];return void 0===r?delete e[n]:e[n]=r,s}(e,t,r)}g.get=E,g.set=I,g.compile=function(e){var t=A(e);return{get:function(e){return E(e,t)},set:function(e,r){return I(e,t,r)}}};var R={};Object.defineProperty(R,"__esModule",{value:!0});var P=R.ProblemDocument=void 0;P=R.ProblemDocument=class{constructor(e){Object.assign(this,e)}};var T=function(e){var t=e.rel,r=e.uri,o=e.method,i=e.parameters,a=e.accept,s=e.anchor,l=n(e,["rel","uri","method","parameters","accept","anchor"]);this.rel=t,this.uri=r,this.method=o,this.parameters=i||{},this.accept=a,this.anchor=s,Object.assign(this,l)},S=function(e){function r(t,r,n,o){var i=e.call(this,t)||this;return i.response=r,i.defaultOptions=n,i.uri.includes("{this.")&&(i.uri=f.expand(i.uri,o)),i}return t(r,e),r.prototype.invokeAsFragment=function(e,t){if(this.uri.startsWith("#/")){var r=this.expandUrl(e).toString(),n=this.response.fullContent&&g.get(this.response.fullContent,r.slice(1));if(t){var o=t(n);if(se(o))return new le({defaultOptions:this.defaultOptions,baseResponse:this.response.response,content:o.content,fullContent:this.response.fullContent,anchor:r,parentOperations:this.response.allOperations,parameters:e});throw new ue({problem:o.problem,response:new le({defaultOptions:this.defaultOptions,baseResponse:this.response.response,content:n,fullContent:this.response.fullContent,parameters:e})})}return new le({defaultOptions:this.defaultOptions,baseResponse:this.response.response,content:n,fullContent:this.response.fullContent,anchor:r,parentOperations:this.response.allOperations,parameters:e})}},r.prototype.invokeAll=function(e){return o(this,void 0,void 0,(function(){var t;return i(this,(function(r){return this.uri.startsWith("#/")&&this.response instanceof le?(t=this.doInvokeAll((null==e?void 0:e.parameters)||{}),[2,Promise.all(t)]):[2,Promise.all([this.invoke(e)])]}))}))},r.prototype.doInvokeAll=function(e,t){var r=this,n=this.response,o=new f.Template(this.uri),i=Object.assign(f.parameters(this.uri),e),a=o.expand(i).replace(/%7B/g,"{").replace(/%7D/g,"}"),u=f.parameters(a),c=Object.keys(u);if(0!==c.length){var p=u[c[0]],d=a.slice(1,a.indexOf(p)-1),h=""===d?n.content:g.get(n.content,d);if(h)return(Array.isArray(h)?l([],s(Array.from({length:h.length}).keys()),!1):Object.keys(h)).flatMap((function(n){var o,i=Object.assign({},e,((o={})[c[0]]=n,o));return r.doInvokeAll(i,t)}));throw new ue({response:this.response,problem:new P({type:"https://waychaser.io/fragment-uri-error",title:"The fragment URI does not match the content structure",uri:d,content:n.content,parameters:e})})}return[this.invokeAsFragment(e,t)]},r.prototype.invoke=function(e){return o(this,void 0,void 0,(function(){var t,r,n,o,s,l,u,c,f,p,v,b,m,w,g,O,x,j,k;return i(this,(function(i){if(t=this.invokeAsFragment(null==e?void 0:e.parameters))return[2,t];if(r=this.parameters||{},n=Object.assign({},this.defaultOptions.parameters,null==e?void 0:e.parameters),o=this.url(n),s={},Array.isArray(r))try{for(l=a(r),u=l.next();!u.done;u=l.next())p=u.value,s[p]=null==n?void 0:n[p]}catch(e){O={error:e}}finally{try{u&&!u.done&&(x=l.return)&&x.call(l)}finally{if(O)throw O.error}}else try{for(c=a(Object.keys(r)),f=c.next();!f.done;f=c.next())p=f.value,s[p]=null==n?void 0:n[p]}catch(e){j={error:e}}finally{try{f&&!f.done&&(k=c.return)&&k.call(c)}finally{if(j)throw j.error}}if(b={},(m=Object.assign({},e)).method=this.method,0!==Object.keys(this.parameters).length&&(A=this.method||"GET",!["GET","DELETE","TRACE","OPTIONS","HEAD"].includes(A))){switch(w=y(this.accept,["application/x-www-form-urlencoded","application/json","multipart/form-data"],"application/x-www-form-urlencoded")){case"application/x-www-form-urlencoded":v=d(s);break;case"application/json":v=JSON.stringify(s);break;case"multipart/form-data":for(g in v=new h,s)v.append(g,s[g])}"multipart/form-data"!==w&&(b={"content-type":w}),m.body=v,m.headers=Object.assign(b,null==e?void 0:e.headers)}var A;return[2,fe(o.toString(),this.defaultOptions,m)]}))}))},r.prototype.url=function(e){var t=this.expandUrl(e);return new URL(t,this.response.url)},r.prototype.expandUrl=function(e){return f.expand(this.uri,v(e||{}))},r}(T),C=function(e){function r(t){return e.apply(this,l([],s(t||[]),!1))||this}return t(r,e),r.create=function(){return Object.create(r.prototype)},r.prototype.find=function(e,t){var r=Array.prototype.find.bind(this);return r("string"==typeof e?_({rel:e}):"object"==typeof e?_(e):e,t)},r.prototype.filter=function(e,t){if("string"==typeof e)return this.filter({rel:e},t);if("object"==typeof e)return this.filter(_(e),t);var n=Array.prototype.filter.bind(this)(e);return Object.setPrototypeOf(n,r.prototype),n},r.prototype.invoke=function(e,t){var r=this.find(e);return r?r.invoke(t):void 0},r.prototype.invokeAll=function(e,t){return Promise.all(this.filter(e).map((function(e){return e.invokeAll(t)}))).then((function(e){return e.flat()}))},r}(Array);function _(e){return function(t){for(var r in e)if(e[r]!==t[r])return!1;return!0}}function U(e){var t,r,n,o,i=[],s=/{\[(\d+)..(\d+)]}/,l=e.uri.toString(),u=l.match(s);if(u)for(var c=Number.parseInt(u[1]);c<=Number.parseInt(u[2]);++c){var f=U(new T(Object.assign(e,{uri:l.replace(s,c.toFixed(0))})));try{for(var p=(t=void 0,a(f)),d=p.next();!d.done;d=p.next()){var h=d.value;i.push(h)}}catch(e){t={error:e}}finally{try{d&&!d.done&&(r=p.return)&&r.call(p)}finally{if(t)throw t.error}}}else{var y=e.anchor,v=null==y?void 0:y.match(s);if(y&&v)for(c=Number.parseInt(v[1]);c<=Number.parseInt(v[2]);++c){f=U(new T(Object.assign(e,{anchor:y.replace(s,c.toFixed(0))})));try{for(var b=(n=void 0,a(f)),m=b.next();!m.done;m=b.next()){var w=m.value;i.push(w)}}catch(e){n={error:e}}finally{try{m&&!m.done&&(o=b.return)&&o.call(b)}finally{if(n)throw n.error}}}else i.push(e)}return i}const q="application/hal+json",N="application/vnd.siren+json";function F(e,t){const r=e.split(/:(.+)/);if(r.length>1){const[n,o]=r;return t[n]?f.expand(t[n],{rel:o}):e}return e}function H(e,t,r){const{href:n,templated:o,...i}=t;return new T({rel:F(e,r),uri:n,...i})}var D=/^utf-?8|ascii|utf-?16-?le|ucs-?2|base-?64|latin-?1$/i,L=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,$=/\s|\uFEFF|\xA0/,B=/\r?\n[\x20\x09]+/g,J=/[;,"]/,G=/[;,"]|\s/,M=/^[!#$%&'*+\-\.^_`|~\da-zA-Z]+$/,Q=1,W=2,K=4;function V(e){return e.replace(L,"")}function z(e){return $.test(e)}function Z(e,t){for(;z(e[t]);)t++;return t}function X(e){return G.test(e)||!M.test(e)}class Y{constructor(e){this.refs=[],e&&this.parse(e)}rel(e){for(var t=[],r=e.toLowerCase(),n=0;n<this.refs.length;n++)this.refs[n].rel.toLowerCase()===r&&t.push(this.refs[n]);return t}get(e,t){e=e.toLowerCase();for(var r=[],n=0;n<this.refs.length;n++)this.refs[n][e]===t&&r.push(this.refs[n]);return r}set(e){return this.refs.push(e),this}has(e,t){e=e.toLowerCase();for(var r=0;r<this.refs.length;r++)if(this.refs[r][e]===t)return!0;return!1}parse(e,t){e=V(e=(t=t||0)?e.slice(t):e).replace(B,"");for(var r=Q,n=e.length,o=(t=0,null);t<n;)if(r===Q){if(z(e[t])){t++;continue}if("<"!==e[t])throw new Error('Unexpected character "'+e[t]+'" at offset '+t);if(null!=o&&(null!=o.rel?this.refs.push(...Y.expandRelations(o)):this.refs.push(o)),-1===(s=e.indexOf(">",t)))throw new Error("Expected end of URI delimiter at offset "+t);o={uri:e.slice(t+1,s)},t=s,r=W,t++}else if(r===W){if(z(e[t])){t++;continue}if(";"===e[t])r=K,t++;else{if(","!==e[t])throw new Error('Unexpected character "'+e[t]+'" at offset '+t);r=Q,t++}}else{if(r!==K)throw new Error('Unknown parser state "'+r+'"');if(";"===e[t]||z(e[t])){t++;continue}if(-1===(s=e.indexOf("=",t)))throw new Error("Expected attribute delimiter at offset "+t);var i=V(e.slice(t,s)).toLowerCase(),a="";if('"'===e[t=Z(e,t=s+1)])for(t++;t<n;){if('"'===e[t]){t++;break}"\\"===e[t]&&t++,a+=e[t],t++}else{for(var s=t+1;!J.test(e[s])&&s<n;)s++;a=e.slice(t,s),t=s}switch(o[i]&&Y.isSingleOccurenceAttr(i)||("*"===i[i.length-1]?o[i]=Y.parseExtendedValue(a):(a="type"===i?a.toLowerCase():a,null!=o[i]?Array.isArray(o[i])?o[i].push(a):o[i]=[o[i],a]:o[i]=a)),e[t]){case",":r=Q;break;case";":r=K}t++}return null!=o&&(null!=o.rel?this.refs.push(...Y.expandRelations(o)):this.refs.push(o)),o=null,this}toString(){for(var e=[],t="",r=null,n=0;n<this.refs.length;n++)r=this.refs[n],t=Object.keys(this.refs[n]).reduce((function(e,t){return"uri"===t?e:e+"; "+Y.formatAttribute(t,r[t])}),"<"+r.uri+">"),e.push(t);return e.join(", ")}}Y.isCompatibleEncoding=function(e){return D.test(e)},Y.parse=function(e,t){return(new Y).parse(e,t)},Y.isSingleOccurenceAttr=function(e){return"rel"===e||"type"===e||"media"===e||"title"===e||"title*"===e},Y.isTokenAttr=function(e){return"rel"===e||"type"===e||"anchor"===e},Y.escapeQuotes=function(e){return e.replace(/"/g,'\\"')},Y.expandRelations=function(e){return e.rel.split(" ").map((function(t){var r=Object.assign({},e);return r.rel=t,r}))},Y.parseExtendedValue=function(e){var t=/([^']+)?(?:'([^']+)')?(.+)/.exec(e);return{language:t[2].toLowerCase(),encoding:Y.isCompatibleEncoding(t[1])?null:t[1].toLowerCase(),value:Y.isCompatibleEncoding(t[1])?decodeURIComponent(t[3]):t[3]}},Y.formatExtendedAttribute=function(e,t){var r=(t.encoding||"utf-8").toUpperCase();return e+"="+r+"'"+(t.language||"en")+"'"+(Buffer.isBuffer(t.value)&&Y.isCompatibleEncoding(r)?t.value.toString(r):Buffer.isBuffer(t.value)?t.value.toString("hex").replace(/[0-9a-f]{2}/gi,"%$1"):encodeURIComponent(t.value))},Y.formatAttribute=function(e,t){return Array.isArray(t)?t.map((t=>Y.formatAttribute(e,t))).join("; "):"*"===e[e.length-1]||"string"!=typeof t?Y.formatExtendedAttribute(e,t):(Y.isTokenAttr(e)?t=X(t)?'"'+Y.escapeQuotes(t)+'"':Y.escapeQuotes(t):X(t)&&(t='"'+(t=(t=encodeURIComponent(t)).replace(/%20/g," ").replace(/%2C/g,",").replace(/%3B/g,";"))+'"'),e+"="+t)};var ee,te,re=Y;function ne(e){return e?re.parse(e).refs.map((function(e){var t=e.rel,o=e.uri,i=e.method,a=e["accept*"],s=e["params*"],l=n(e,["rel","uri","method","accept*","params*"]),u=(null==s?void 0:s.value)?JSON.parse(null==s?void 0:s.value):void 0;return new T(r({rel:t,uri:o,method:i,parameters:u,accept:null==a?void 0:a.value},l))})):[]}function oe(e){var t,o,i=e.name,s=e.href,l=e.fields,u=e.type,c=n(e,["name","href","fields","type"]),f={};if(l)try{for(var p=a(l),d=p.next();!d.done;d=p.next()){f[d.value.name]={}}}catch(e){t={error:e}}finally{try{d&&!d.done&&(o=p.return)&&o.call(p)}finally{if(t)throw t.error}}return r({rel:i,uri:s,accept:u,parameters:l&&f},c)}function ie(e,t){var o=t.href;t.rel;var i=n(t,["href","rel"]);return new T(r({rel:e,uri:o},i))}function ae(e,t){var o=e.handlers,i=e.defaultHandlers,a=e.headers,u=e.contentParser,c=n(e,["handlers","defaultHandlers","headers","contentParser"]),f=t||{},p=f.handlers,d=f.defaultHandlers,h=f.headers,y=f.contentParser,v=n(f,["handlers","defaultHandlers","headers","contentParser"]),b=ce(l(l([],s(p||o||[]),!1),s(d||i||[]),!1)),m=y?function(e){return y(e,u)}:u;return r(r(r({},c),v),{defaultHandlers:b,handlers:[],headers:r(r({},a),h),contentParser:m})}function se(e){return e.success}var le=function(){function e(e){var t,r,n,o,i,s,l=e.handlers,u=e.defaultOptions,c=e.baseResponse,p=e.content,d=e.fullContent,h=e.anchor,y=e.parentOperations,b=e.parameters;this.response=c,this.anchor=h,this.parameters=b||{},this.fullContent=d||p,this.content=p,this.operations=C.create();var m=v({this:p});if(y&&h&&u){this.allOperations=y;try{for(var w=a(this.allOperations[h]||[]),g=w.next();!g.done;g=w.next()){var O=g.value;this.operations.push(new S(O,this,u,m))}}catch(e){t={error:e}}finally{try{g&&!g.done&&(r=w.return)&&r.call(w)}finally{if(t)throw t.error}}for(var x in this.allOperations)if(""!==x){var j=new f.Template(x),k=j.match(this.anchor);if(j.expand(k)===this.anchor){var A=Object.assign({},u,{parameters:Object.assign(k,u.parameters)});try{for(var E=(n=void 0,a(this.allOperations[x])),I=E.next();!I.done;I=E.next()){O=I.value;this.operations.push(new S(O,this,A,m))}}catch(e){n={error:e}}finally{try{I&&!I.done&&(o=E.return)&&o.call(E)}finally{if(n)throw n.error}}}}}else if(c&&l&&u){this.allOperations=function(e){var t,r,n,o,i,s,l,u,c=e.handlers,f=e.baseResponse,p=e.content,d=[],h=!1;try{for(var y=a(c),v=y.next();!v.done;v=y.next()){var b=v.value.handler(f,p,(function(){h=!0}));if(b)try{for(var m=(n=void 0,a(b)),w=m.next();!w.done;w=m.next()){var g=w.value;d.push(g)}}catch(e){n={error:e}}finally{try{w&&!w.done&&(o=m.return)&&o.call(m)}finally{if(n)throw n.error}}if(h)break}}catch(e){t={error:e}}finally{try{v&&!v.done&&(r=y.return)&&r.call(y)}finally{if(t)throw t.error}}var O={};try{for(var x=a(d),j=x.next();!j.done;j=x.next()){var k=U(g=j.value);try{for(var A=(l=void 0,a(k)),E=A.next();!E.done;E=A.next()){var I=E.value,R=I.anchor||"";O[R]||(O[R]=[]),O[R].push(I)}}catch(e){l={error:e}}finally{try{E&&!E.done&&(u=A.return)&&u.call(A)}finally{if(l)throw l.error}}}}catch(e){i={error:e}}finally{try{j&&!j.done&&(s=x.return)&&s.call(x)}finally{if(i)throw i.error}}return O}({baseResponse:c,content:p,handlers:l}),this.operations=C.create();try{for(var R=a(this.allOperations[""]||[]),P=R.next();!P.done;P=R.next()){O=P.value;var T=new S(O,this,u,m);this.operations.push(T)}}catch(e){i={error:e}}finally{try{P&&!P.done&&(s=R.return)&&s.call(R)}finally{if(i)throw i.error}}}}return e.create=function(t,r,n,o){if(r instanceof P)throw new ue({response:new e({handlers:o.defaultHandlers,defaultOptions:n,baseResponse:t,content:r,parameters:o.parameters}),problem:r});if(o.validator){var i=o.validator(r);if(se(i))return new e({handlers:o.defaultHandlers,defaultOptions:n,baseResponse:t,content:i.content,parameters:o.parameters});throw new ue({response:new e({handlers:o.defaultHandlers,defaultOptions:n,baseResponse:t,content:r,parameters:o.parameters}),problem:i.problem})}return new e({handlers:o.defaultHandlers,defaultOptions:n,baseResponse:t,content:r,parameters:o.parameters})},Object.defineProperty(e.prototype,"ops",{get:function(){return this.operations},enumerable:!1,configurable:!0}),e.prototype.invoke=function(e,t){return this.operations.invoke(e,t)},e.prototype.invokeAll=function(e,t){return this.operations.invokeAll(e,t)},Object.defineProperty(e.prototype,"body",{get:function(){throw new Error("Not Implemented. Use `.content` instead")},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"bodyUsed",{get:function(){return!0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"headers",{get:function(){var e;return null===(e=this.response)||void 0===e?void 0:e.headers},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"ok",{get:function(){return!!this.response&&this.response.ok},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"redirected",{get:function(){return!!this.response&&this.response.redirected},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"status",{get:function(){var e;return null===(e=this.response)||void 0===e?void 0:e.status},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"statusText",{get:function(){var e;return null===(e=this.response)||void 0===e?void 0:e.statusText},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"type",{get:function(){var e;return null===(e=this.response)||void 0===e?void 0:e.type},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"url",{get:function(){var e;return null===(e=this.response)||void 0===e?void 0:e.url},enumerable:!1,configurable:!0}),e.prototype.arrayBuffer=function(){throw new Error("Not Implemented. Use `.content` instead")},e.prototype.blob=function(){throw new Error("Not Implemented. Use `.content` instead")},e.prototype.clone=function(){throw new Error("Not Implemented")},e.prototype.formData=function(){throw new Error("Not Implemented. Use `.content` instead")},e.prototype.text=function(){throw new Error("Not Implemented. Use `.content` instead")},e}(),ue=function(e){function r(t){var r=this.constructor,n=t.response,o=t.problem,i=e.call(this,o.detail)||this,a=r.prototype;return Object.setPrototypeOf?Object.setPrototypeOf(i,a):i.__proto__=a,i.problem=o,i.response=n,i}return t(r,e),r}(Error);function ce(e){return e.sort((function(e,t){return(t.q||1)-(e.q||1)}))}function fe(e,t,n){var u;return o(this,void 0,void 0,(function(){var o,c,f,p,d,h,y,v,b,m,w,g,O,x,j,k,A,E,I,R,T,S,C,_,U;return i(this,(function(i){switch(i.label){case 0:if(o=ae(t,n),c=o.defaultHandlers,!o.fetch)throw new Error("No global fetch and fetch not provided in options");f=function(e){var t,r,n,o,i=[];try{for(var s=a(e),l=s.next();!l.done;l=s.next()){var u=l.value;try{for(var c=(n=void 0,a(u.mediaRanges)),f=c.next();!f.done;f=c.next()){var p=f.value;"object"==typeof p?u.q?i.push({type:p.mediaType,q:u.q*(p.q||1)}):i.push({type:p.mediaType,q:p.q||1}):u.q?i.push({type:p,q:u.q}):i.push({type:p,q:1})}}catch(e){n={error:e}}finally{try{f&&!f.done&&(o=c.return)&&o.call(c)}finally{if(n)throw n.error}}}}catch(e){t={error:e}}finally{try{l&&!l.done&&(r=s.return)&&r.call(s)}finally{if(t)throw t.error}}var d=i.sort((function(e,t){return e.q-t.q})),h=new Set;return d.filter((function(e){var t=e.type;return!h.has(t)&&h.add(t)}))}(c),p=f.map((function(e){return 1===e.q?e.type:"".concat(e.type,";q=").concat(e.q)})),d=(null===(u=null==n?void 0:n.headers)||void 0===u?void 0:u.accept)?[n.headers.accept]:[],h=l(l([],s(d),!1),s(p),!1).join(","),y=r(r({},o),{headers:r(r({},o.headers),{accept:h})}),v=!1;try{for(b=a(y.preInterceptors||[]),m=b.next();!m.done&&((0,m.value)(e,y,(function(){return v=!0})),!v);m=b.next());}catch(e){R={error:e}}finally{try{m&&!m.done&&(T=b.return)&&T.call(b)}finally{if(R)throw R.error}}return[4,o.fetch(e.toString(),y)];case 1:w=i.sent(),i.label=2;case 2:i.trys.push([2,7,,8]),i.label=3;case 3:return i.trys.push([3,5,,6]),[4,o.contentParser(w)];case 4:g=i.sent(),O=le.create(w,g,t,o),v=!1;try{for(x=a(y.postInterceptors),j=x.next();!j.done&&((0,j.value)(O,(function(){return v=!0})),!v);j=x.next());}catch(e){S={error:e}}finally{try{j&&!j.done&&(C=x.return)&&C.call(x)}finally{if(S)throw S.error}}return[2,O];case 5:throw(k=i.sent())instanceof P?new ue({response:new le({handlers:o.defaultHandlers,defaultOptions:t,baseResponse:w,content:k,parameters:o.parameters}),problem:k}):k;case 6:return[3,8];case 7:A=i.sent(),v=!1;try{for(E=a(y.postErrorInterceptors),I=E.next();!I.done&&((0,I.value)(A,(function(){return v=!0})),!v);I=E.next());}catch(e){_={error:e}}finally{try{I&&!I.done&&(U=E.return)&&U.call(E)}finally{if(_)throw _.error}}throw A;case 8:return[2]}}))}))}var pe={fetch:"undefined"!=typeof window?null===(ee=window.fetch)||void 0===ee?void 0:ee.bind(window):null===(te="undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:void 0)||void 0===te?void 0:te.fetch,handlers:[],defaultHandlers:ce([{handler:function(e){var t=null==e?void 0:e.headers.get("location");return t?[new T({rel:"related",uri:t})]:[]},mediaRanges:["*/*"],q:.4},{handler:function(e,t,r){return l(l([],s(ne(e.headers.get("link"))),!1),s(ne(e.headers.get("link-template"))),!1)},mediaRanges:["*/*"],q:.5},{handler:function(e,t){var r,n,o,i,s,l,u,c=[],f=null===(u=e.headers.get("content-type"))||void 0===u?void 0:u.split(";");if((null==f?void 0:f[0])===q&&t&&"object"==typeof t&&"_links"in t){var p=t,d={};if(p._links.curies)if(Array.isArray(p._links.curies))try{for(var h=a(p._links.curies),y=h.next();!y.done;y=h.next()){var v=y.value;d[v.name]=v.href}}catch(e){r={error:e}}finally{try{y&&!y.done&&(n=h.return)&&n.call(h)}finally{if(r)throw r.error}}else d[p._links.curies.name]=p._links.curies.href;try{for(var b=a(Object.keys(p._links).filter((function(e){return"curies"!==e}))),m=b.next();!m.done;m=b.next()){var w=m.value;if(Array.isArray(p._links[w]))try{for(var g=(s=void 0,a(p._links[w])),O=g.next();!O.done;O=g.next()){var x=O.value;c.push(H(w,x,d))}}catch(e){s={error:e}}finally{try{O&&!O.done&&(l=g.return)&&l.call(g)}finally{if(s)throw s.error}}else c.push(H(w,p._links[w],d))}}catch(e){o={error:e}}finally{try{m&&!m.done&&(i=b.return)&&i.call(b)}finally{if(o)throw o.error}}}return c},mediaRanges:[q],q:.5},{handler:function(e,t){var r,n=null===(r=e.headers.get("content-type"))||void 0===r?void 0:r.split(";");return(null==n?void 0:n[0])===N?l(l([],s(function(e){var t,r,n,o,i=[];if(e&&"object"==typeof e&&"links"in e){var s=e;if(s.links)try{for(var l=a(s.links),u=l.next();!u.done;u=l.next()){var c=u.value;try{for(var f=(n=void 0,a(c.rel)),p=f.next();!p.done;p=f.next()){var d=ie(p.value,c);i.push(d)}}catch(e){n={error:e}}finally{try{p&&!p.done&&(o=f.return)&&o.call(f)}finally{if(n)throw n.error}}}}catch(e){t={error:e}}finally{try{u&&!u.done&&(r=l.return)&&r.call(l)}finally{if(t)throw t.error}}}return i}(t)),!1),s(function(e){var t,r,n=[];if(e&&"object"==typeof e&&"actions"in e){var o=e;if(o.actions)try{for(var i=a(o.actions),s=i.next();!s.done;s=i.next()){var l=oe(s.value);n.push(l)}}catch(e){t={error:e}}finally{try{s&&!s.done&&(r=i.return)&&r.call(i)}finally{if(t)throw t.error}}}return n}(t)),!1):[]},mediaRanges:[N],q:.5}]),preInterceptors:[],postInterceptors:[],postErrorInterceptors:[],contentParser:function(e){return o(void 0,void 0,void 0,(function(){var t,n,o,a;return i(this,(function(i){switch(i.label){case 0:return e.headers.get("content-length")&&"0"!==e.headers.get("content-length")?[4,e.text()]:[3,2];case 1:if(t=i.sent(),n=e.headers.get("content-type"),null===(a=null==n?void 0:n.split(";"))||void 0===a?void 0:a[0].endsWith("json"))try{return o=JSON.parse(t),[2,"application/problem+json"===n?Object.assign(new P(o),o):o]}catch(e){throw new P({type:"https://waychaser.io/invalid-json",title:"JSON response could not be parsed",detail:"The response document with content type '".concat(n,"' could not be parsed as json"),content:t,error:e})}throw new P(r({type:"https://waychaser.io/unsupported-content-type",title:"The response has an unsupported content type",detail:"The response document has a content type of '".concat(n,"' which is not supported"),content:t},n&&{contentType:n}));case 2:return[2]}}))}))}};function de(e,t){var r=ae(t,e),n=function(e,t){return fe(e,r,t)};return n.currentDefaults=r,n.defaults=function(e){return de(e,r)},n}var he=Object.assign((function(e,t){return fe(e,pe,t)}),{currentDefaults:pe,defaults:function(e){return de(e,pe)}});export{ue as WayChaserProblem,le as WayChaserResponse,fe as _waychaser,se as isValidationSuccess,ce as sortHandlers,he as waychaser};
package/dist/waychaser.js CHANGED
@@ -437,7 +437,7 @@ function allMediaRanges(handlers) {
437
437
  function _waychaser(uriOrRequest, defaultOptions, options) {
438
438
  var _a;
439
439
  return __awaiter(this, void 0, void 0, function () {
440
- var mergedOptions, mergedHandlers, defaultAcceptRanges, defaultAcceptStrings, additionalAcceptHeader, fullAcceptHeader, updateOptions, stop, _b, _c, interceptor, baseResponse, content, response, _d, _e, interceptor, _f, _g, interceptor;
440
+ var mergedOptions, mergedHandlers, defaultAcceptRanges, defaultAcceptStrings, additionalAcceptHeader, fullAcceptHeader, updateOptions, stop, _b, _c, interceptor, baseResponse, content, response, _d, _e, interceptor, error_1, error_2, _f, _g, interceptor;
441
441
  var e_6, _h, e_7, _j, e_8, _k;
442
442
  return __generator(this, function (_l) {
443
443
  switch (_l.label) {
@@ -473,67 +473,69 @@ function _waychaser(uriOrRequest, defaultOptions, options) {
473
473
  }
474
474
  finally { if (e_6) throw e_6.error; }
475
475
  }
476
- return [4 /*yield*/, mergedOptions.fetch(uriOrRequest.toString(), updateOptions)
477
- // TODO allow lazy loading of the content
478
- ];
476
+ return [4 /*yield*/, mergedOptions.fetch(uriOrRequest.toString(), updateOptions)];
479
477
  case 1:
480
478
  baseResponse = _l.sent();
479
+ _l.label = 2;
480
+ case 2:
481
+ _l.trys.push([2, 7, , 8]);
482
+ _l.label = 3;
483
+ case 3:
484
+ _l.trys.push([3, 5, , 6]);
481
485
  return [4 /*yield*/, mergedOptions.contentParser(baseResponse)
482
486
  // content is
483
487
  // 1. unknown,
484
- // 2. a post response client side Problem Document,
485
- // 3. a server side ProblemDocument, or
486
488
  // 4. undefined
487
489
  ];
488
- case 2:
490
+ case 4:
489
491
  content = _l.sent();
490
- // content is
491
- // 1. unknown,
492
- // 2. a post response client side Problem Document,
493
- // 3. a server side ProblemDocument, or
494
- // 4. undefined
492
+ response = WayChaserResponse.create(baseResponse, content, defaultOptions, mergedOptions);
493
+ stop = false;
495
494
  try {
496
- response = WayChaserResponse.create(baseResponse, content, defaultOptions, mergedOptions);
497
- stop = false;
498
- try {
499
- for (_d = __values(updateOptions.postInterceptors), _e = _d.next(); !_e.done; _e = _d.next()) {
500
- interceptor = _e.value;
501
- interceptor(response, function () { return (stop = true); });
502
- if (stop) {
503
- break;
504
- }
505
- }
506
- }
507
- catch (e_7_1) { e_7 = { error: e_7_1 }; }
508
- finally {
509
- try {
510
- if (_e && !_e.done && (_j = _d.return)) _j.call(_d);
495
+ for (_d = __values(updateOptions.postInterceptors), _e = _d.next(); !_e.done; _e = _d.next()) {
496
+ interceptor = _e.value;
497
+ interceptor(response, function () { return (stop = true); });
498
+ if (stop) {
499
+ break;
511
500
  }
512
- finally { if (e_7) throw e_7.error; }
513
501
  }
514
- return [2 /*return*/, response];
515
502
  }
516
- catch (error) {
517
- stop = false;
503
+ catch (e_7_1) { e_7 = { error: e_7_1 }; }
504
+ finally {
518
505
  try {
519
- for (_f = __values(updateOptions.postErrorInterceptors), _g = _f.next(); !_g.done; _g = _f.next()) {
520
- interceptor = _g.value;
521
- interceptor(error, function () { return (stop = true); });
522
- if (stop) {
523
- break;
524
- }
525
- }
506
+ if (_e && !_e.done && (_j = _d.return)) _j.call(_d);
526
507
  }
527
- catch (e_8_1) { e_8 = { error: e_8_1 }; }
528
- finally {
529
- try {
530
- if (_g && !_g.done && (_k = _f.return)) _k.call(_f);
508
+ finally { if (e_7) throw e_7.error; }
509
+ }
510
+ return [2 /*return*/, response];
511
+ case 5:
512
+ error_1 = _l.sent();
513
+ throw error_1 instanceof problem_document_1.ProblemDocument ? new WayChaserProblem({
514
+ response: new WayChaserResponse({ handlers: mergedOptions.defaultHandlers, defaultOptions: defaultOptions, baseResponse: baseResponse, content: error_1, parameters: mergedOptions.parameters }),
515
+ problem: error_1,
516
+ }) : error_1;
517
+ case 6: return [3 /*break*/, 8];
518
+ case 7:
519
+ error_2 = _l.sent();
520
+ stop = false;
521
+ try {
522
+ for (_f = __values(updateOptions.postErrorInterceptors), _g = _f.next(); !_g.done; _g = _f.next()) {
523
+ interceptor = _g.value;
524
+ interceptor(error_2, function () { return (stop = true); });
525
+ if (stop) {
526
+ break;
531
527
  }
532
- finally { if (e_8) throw e_8.error; }
533
528
  }
534
- throw error;
535
529
  }
536
- return [2 /*return*/];
530
+ catch (e_8_1) { e_8 = { error: e_8_1 }; }
531
+ finally {
532
+ try {
533
+ if (_g && !_g.done && (_k = _f.return)) _k.call(_f);
534
+ }
535
+ finally { if (e_8) throw e_8.error; }
536
+ }
537
+ throw error_2;
538
+ case 8: return [2 /*return*/];
537
539
  }
538
540
  });
539
541
  });
@@ -584,16 +586,16 @@ var wayChaserDefaults = {
584
586
  return [2 /*return*/, contentType === 'application/problem+json' ? Object.assign(new problem_document_1.ProblemDocument(jsonContent), jsonContent) : jsonContent];
585
587
  }
586
588
  catch (error) {
587
- return [2 /*return*/, new problem_document_1.ProblemDocument({
588
- type: "https://waychaser.io/invalid-json",
589
- title: "JSON response could not be parsed",
590
- detail: "The response document with content type '".concat(contentType, "' could not be parsed as json"),
591
- content: content,
592
- error: error
593
- })];
589
+ throw new problem_document_1.ProblemDocument({
590
+ type: "https://waychaser.io/invalid-json",
591
+ title: "JSON response could not be parsed",
592
+ detail: "The response document with content type '".concat(contentType, "' could not be parsed as json"),
593
+ content: content,
594
+ error: error
595
+ });
594
596
  }
595
597
  }
596
- return [2 /*return*/, new problem_document_1.ProblemDocument(__assign({ type: "https://waychaser.io/unsupported-content-type", title: "The response has an unsupported content type", detail: "The response document has a content type of '".concat(contentType, "' which is not supported"), content: content }, (contentType && { contentType: contentType })))];
598
+ throw new problem_document_1.ProblemDocument(__assign({ type: "https://waychaser.io/unsupported-content-type", title: "The response has an unsupported content type", detail: "The response document has a content type of '".concat(contentType, "' which is not supported"), content: content }, (contentType && { contentType: contentType })));
597
599
  case 2: return [2 /*return*/];
598
600
  }
599
601
  });
@@ -1 +1 @@
1
- {"version":3,"file":"waychaser.js","sourceRoot":"","sources":["../src/waychaser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"waychaser.js","sourceRoot":"","sources":["../src/waychaser.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mountainpass/waychaser",
3
- "version": "5.0.2",
3
+ "version": "5.0.3",
4
4
  "description": "Client library for HATEOAS level 3 RESTful APIs that provide hypermedia controls",
5
5
  "repository": {
6
6
  "type": "git",