@outfoxx/sunday 1.1.0-beta.12 → 1.1.0-beta.13
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/build/esm/fetch-request-factory.js +3 -4
- package/build/esm/fetch-request-factory.js.map +1 -1
- package/build/esm/index.d.ts +1 -0
- package/build/esm/index.js +1 -0
- package/build/esm/index.js.map +1 -1
- package/build/esm/request-adapters.d.ts +23 -0
- package/build/esm/request-adapters.js +52 -0
- package/build/esm/request-adapters.js.map +1 -0
- package/build/esm/request-factory.d.ts +3 -1
- package/build/esnext/fetch-request-factory.js +3 -4
- package/build/esnext/fetch-request-factory.js.map +1 -1
- package/build/esnext/index.d.ts +1 -0
- package/build/esnext/index.js +1 -0
- package/build/esnext/index.js.map +1 -1
- package/build/esnext/request-adapters.d.ts +23 -0
- package/build/esnext/request-adapters.js +52 -0
- package/build/esnext/request-adapters.js.map +1 -0
- package/build/esnext/request-factory.d.ts +3 -1
- package/build/main/fetch-request-factory.js +3 -4
- package/build/main/fetch-request-factory.js.map +1 -1
- package/build/main/index.d.ts +1 -0
- package/build/main/index.js +1 -0
- package/build/main/index.js.map +1 -1
- package/build/main/request-adapters.d.ts +23 -0
- package/build/main/request-adapters.js +58 -0
- package/build/main/request-adapters.js.map +1 -0
- package/build/main/request-factory.d.ts +3 -1
- package/package.json +3 -1
|
@@ -42,7 +42,7 @@ export class FetchRequestFactory {
|
|
|
42
42
|
request(requestSpec, requestInit) {
|
|
43
43
|
//
|
|
44
44
|
return defer(() => {
|
|
45
|
-
var _a, _b
|
|
45
|
+
var _a, _b;
|
|
46
46
|
const url = this.baseUrl.complete(requestSpec.pathTemplate, (_a = requestSpec.pathParameters) !== null && _a !== void 0 ? _a : {});
|
|
47
47
|
if (requestSpec.queryParameters) {
|
|
48
48
|
const encoder = this.mediaTypeEncoders.find(MediaType.WWWFormUrlEncoded);
|
|
@@ -82,9 +82,8 @@ export class FetchRequestFactory {
|
|
|
82
82
|
body,
|
|
83
83
|
method: requestSpec.method,
|
|
84
84
|
});
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
});
|
|
85
|
+
return of(new Request(url.toString(), init));
|
|
86
|
+
}).pipe(switchMap(async (request) => { var _a, _b; return (_b = (_a = this.adapter) === null || _a === void 0 ? void 0 : _a.adapt(this, request)) !== null && _b !== void 0 ? _b : request; }));
|
|
88
87
|
}
|
|
89
88
|
response(request, dataExpected) {
|
|
90
89
|
const request$ = request instanceof Request ? of(request) : this.request(request);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-request-factory.js","sourceRoot":"","sources":["../../src/fetch-request-factory.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,gDAAgD;AAChD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAEjC,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAG7D,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAS5E,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,OAAO,mBAAmB;IAQ9B,YACE,OAA6B,EAC7B,OAKC;;QAVI,iBAAY,GAAG,IAAI,GAAG,EAA2C,CAAC;QAYvE,IAAI,CAAC,OAAO;YACV,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QACnE,IAAI,CAAC,OAAO,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC;QAChC,IAAI,CAAC,iBAAiB;YACpB,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,iBAAiB,mCAAI,iBAAiB,CAAC,OAAO,CAAC;QAC1D,IAAI,CAAC,iBAAiB;YACpB,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,iBAAiB,mCAAI,iBAAiB,CAAC,OAAO,CAAC;QAC1D,IAAI,CAAC,MAAM,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,mCAAI,OAAO,CAAC;IAC3C,CAAC;IAED,eAAe,CACb,IAAkB,EAClB,WAA4C;QAE5C,MAAM,OAAO,GAAG,IAAI,YAAY,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC7D,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO,CACL,WAAiC,EACjC,WAAyB;QAEzB,EAAE;QACF,OAAO,KAAK,CAAC,GAAG,EAAE;;YAChB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAC/B,WAAW,CAAC,YAAY,EACxB,MAAA,WAAW,CAAC,cAAc,mCAAI,EAAE,CACjC,CAAC;YAEF,IAAI,WAAW,CAAC,eAAe,EAAE;gBAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CACzC,SAAS,CAAC,iBAAiB,CAC5B,CAAC;gBACF,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAAE;oBACrC,MAAM,KAAK,CACT,wBAAwB,SAAS,CAAC,iBAAiB,+CAA+C,CACnG,CAAC;iBACH;gBACD,GAAG,CAAC,MAAM,GAAG,IAAI,OAAO,CAAC,iBAAiB,CACxC,WAAW,CAAC,eAAe,CAC5B,EAAE,CAAC;aACL;YAED,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;YAE1E,gCAAgC;YAChC,IAAI,WAAW,CAAC,WAAW,EAAE;gBAC3B,MAAM,oBAAoB,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CACnE,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,CACtC,CAAC;gBAEF,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE;oBAChC,MAAM,KAAK,CACT,4DAA4D,CAC7D,CAAC;iBACH;gBAED,MAAM,MAAM,GAAG,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAEhD,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;aAC/B;YAED,yBAAyB;YACzB,MAAM,WAAW,GAAG,MAAA,WAAW,CAAC,YAAY,0CAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAC1D,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,CACtC,CAAC;YAEF,gGAAgG;YAChG,IAAI,WAAW,EAAE;gBACf,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;aACrD;YAED,yBAAyB;YACzB,IAAI,IAA0B,CAAC;YAC/B,IAAI,WAAW,CAAC,IAAI,EAAE;gBACpB,IAAI,CAAC,WAAW,EAAE;oBAChB,MAAM,KAAK,CACT,6DAA6D,CAC9D,CAAC;iBACH;gBAED,IAAI,GAAG,IAAI,CAAC,iBAAiB;qBAC1B,IAAI,CAAC,WAAW,CAAC;qBACjB,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;aACnD;YAED,MAAM,IAAI,GAAgB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,WAAW,EAAE;gBACvD,OAAO;gBACP,IAAI;gBACJ,MAAM,EAAE,WAAW,CAAC,MAAM;aAC3B,CAAC,CAAC;YAEH,
|
|
1
|
+
{"version":3,"file":"fetch-request-factory.js","sourceRoot":"","sources":["../../src/fetch-request-factory.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,gDAAgD;AAChD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAEjC,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AAG7D,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAS5E,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,OAAO,mBAAmB;IAQ9B,YACE,OAA6B,EAC7B,OAKC;;QAVI,iBAAY,GAAG,IAAI,GAAG,EAA2C,CAAC;QAYvE,IAAI,CAAC,OAAO;YACV,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QACnE,IAAI,CAAC,OAAO,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC;QAChC,IAAI,CAAC,iBAAiB;YACpB,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,iBAAiB,mCAAI,iBAAiB,CAAC,OAAO,CAAC;QAC1D,IAAI,CAAC,iBAAiB;YACpB,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,iBAAiB,mCAAI,iBAAiB,CAAC,OAAO,CAAC;QAC1D,IAAI,CAAC,MAAM,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,mCAAI,OAAO,CAAC;IAC3C,CAAC;IAED,eAAe,CACb,IAAkB,EAClB,WAA4C;QAE5C,MAAM,OAAO,GAAG,IAAI,YAAY,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC7D,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO,CACL,WAAiC,EACjC,WAAyB;QAEzB,EAAE;QACF,OAAO,KAAK,CAAC,GAAG,EAAE;;YAChB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAC/B,WAAW,CAAC,YAAY,EACxB,MAAA,WAAW,CAAC,cAAc,mCAAI,EAAE,CACjC,CAAC;YAEF,IAAI,WAAW,CAAC,eAAe,EAAE;gBAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CACzC,SAAS,CAAC,iBAAiB,CAC5B,CAAC;gBACF,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAAE;oBACrC,MAAM,KAAK,CACT,wBAAwB,SAAS,CAAC,iBAAiB,+CAA+C,CACnG,CAAC;iBACH;gBACD,GAAG,CAAC,MAAM,GAAG,IAAI,OAAO,CAAC,iBAAiB,CACxC,WAAW,CAAC,eAAe,CAC5B,EAAE,CAAC;aACL;YAED,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;YAE1E,gCAAgC;YAChC,IAAI,WAAW,CAAC,WAAW,EAAE;gBAC3B,MAAM,oBAAoB,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CACnE,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,CACtC,CAAC;gBAEF,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE;oBAChC,MAAM,KAAK,CACT,4DAA4D,CAC7D,CAAC;iBACH;gBAED,MAAM,MAAM,GAAG,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAEhD,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;aAC/B;YAED,yBAAyB;YACzB,MAAM,WAAW,GAAG,MAAA,WAAW,CAAC,YAAY,0CAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAC1D,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,CACtC,CAAC;YAEF,gGAAgG;YAChG,IAAI,WAAW,EAAE;gBACf,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;aACrD;YAED,yBAAyB;YACzB,IAAI,IAA0B,CAAC;YAC/B,IAAI,WAAW,CAAC,IAAI,EAAE;gBACpB,IAAI,CAAC,WAAW,EAAE;oBAChB,MAAM,KAAK,CACT,6DAA6D,CAC9D,CAAC;iBACH;gBAED,IAAI,GAAG,IAAI,CAAC,iBAAiB;qBAC1B,IAAI,CAAC,WAAW,CAAC;qBACjB,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;aACnD;YAED,MAAM,IAAI,GAAgB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,WAAW,EAAE;gBACvD,OAAO;gBACP,IAAI;gBACJ,MAAM,EAAE,WAAW,CAAC,MAAM;aAC3B,CAAC,CAAC;YAEH,OAAO,EAAE,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC,IAAI,CACL,SAAS,CACP,KAAK,EAAE,OAAO,EAAE,EAAE,eAAC,OAAA,MAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,mCAAI,OAAO,CAAA,EAAA,CACjE,CACF,CAAC;IACJ,CAAC;IAED,QAAQ,CACN,OAAuC,EACvC,YAAsB;QAEtB,MAAM,QAAQ,GACZ,OAAO,YAAY,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACnE,OAAO,QAAQ,CAAC,IAAI,CAClB,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAC9B,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE,CACrB,QAAQ,CAAC,QAAQ,EAAE,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,CAC7D,CACF,CAAC;IACJ,CAAC;IASD,cAAc,CACZ,OAA6B,EAC7B,YAAsB;QAEtB,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC;QAEzD,IAAI,CAAC,YAAY,EAAE;YACjB,OAAO,SAAS,CAAC,IAAI,CACnB,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;gBACf,OAAO;oBACL,MAAM,EAAE,SAAS;oBACjB,QAAQ;iBACT,CAAC;YACJ,CAAC,CAAC,CACH,CAAC;SACH;aAAM;YACL,OAAO,SAAS,CAAC,IAAI,CACnB,SAAS,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;gBAC3B,IAAI;oBACF,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,CAChC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EACpC,SAAS,CAAC,WAAW,CACtB,CAAC;oBACF,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;oBACzD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;oBAC5D,OAAO;wBACL,MAAM;wBACN,QAAQ;qBACT,CAAC;iBACH;gBAAC,OAAO,KAAK,EAAE;oBACd,MAAM,MAAM,WAAW,CAAC,YAAY,CAClC,cAAc,CAAC,KAAK,EAAE,0BAA0B,CAAC,EACjD,QAAQ,CACT,CAAC;iBACH;YACH,CAAC,CAAC,CACH,CAAC;SACH;IACH,CAAC;IAID,MAAM,CACJ,OAA6B,EAC7B,YAAsB;QAEtB,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC;QAEzD,IAAI,CAAC,YAAY,EAAE;YACjB,OAAO,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;SAC7C;aAAM;YACL,OAAO,SAAS,CAAC,IAAI,CACnB,SAAS,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;gBAC3B,IAAI;oBACF,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,CAChC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EACpC,SAAS,CAAC,WAAW,CACtB,CAAC;oBACF,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;oBACzD,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;iBACrD;gBAAC,OAAO,KAAK,EAAE;oBACd,MAAM,MAAM,WAAW,CAAC,YAAY,CAClC,cAAc,CAAC,KAAK,EAAE,0BAA0B,CAAC,EACjD,QAAQ,CACT,CAAC;iBACH;YACH,CAAC,CAAC,CACH,CAAC;SACH;IACH,CAAC;IAED,WAAW,CAAC,WAA8B;QACxC,EAAE;QACF,MAAM,OAAO,GAAG,CACd,GAAW,EACX,WAAwB,EACH,EAAE;YACvB,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,WAAW,EAAE;gBACrD,YAAY,EAAE,GAAG;aAClB,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;QACpD,CAAC,CAAC;QAEF,OAAO,IAAI,gBAAgB,CAAC,WAAW,CAAC,YAAY,EAAE;YACpD,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO;SACR,CAAC,CAAC;IACL,CAAC;IAED,WAAW,CACT,WAA8B,EAC9B,OAMkB;QAElB,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAElD,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAC7C,SAAS,CAAC,IAAI,CACS,CAAC;QAE1B,OAAO,IAAI,UAAU,CAAC,CAAC,UAAU,EAAE,EAAE;YACnC,WAAW,CAAC,SAAS,GAAG,CAAC,KAA2B,EAAE,EAAE;gBACtD,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;oBACf,OAAO;iBACR;gBAED,IAAI;oBACF,MAAM,YAAY,GAAG,OAAO,CAC1B,WAAW,EACX,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,IAAI,EACV,IAAI,CAAC,MAAM,CACZ,CAAC;oBACF,IAAI,CAAC,YAAY,EAAE;wBACjB,OAAO;qBACR;oBAED,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;iBAC/B;gBAAC,OAAO,KAAK,EAAE;oBACd,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;iBACzB;YACH,CAAC,CAAC;YAEF,WAAW,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE;;gBAC9B,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,KAAK,mDAAG,EAAE,KAAK,EAAE,EAAE,oBAAoB,CAAC,CAAC;YACxD,CAAC,CAAC;YAEF,WAAW,CAAC,OAAO,EAAE,CAAC;YAEtB,OAAO,GAAG,EAAE;gBACV,WAAW,CAAC,KAAK,EAAE,CAAC;YACtB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
|
package/build/esm/index.d.ts
CHANGED
|
@@ -21,6 +21,7 @@ export * from './sunday-error';
|
|
|
21
21
|
export * from './problem';
|
|
22
22
|
export * from './date-time-types';
|
|
23
23
|
export * from './result-response';
|
|
24
|
+
export * from './request-adapters';
|
|
24
25
|
export * from './util/base64';
|
|
25
26
|
export * from './util/hex';
|
|
26
27
|
export * from './util/rxjs';
|
package/build/esm/index.js
CHANGED
|
@@ -34,6 +34,7 @@ export * from './sunday-error';
|
|
|
34
34
|
export * from './problem';
|
|
35
35
|
export * from './date-time-types';
|
|
36
36
|
export * from './result-response';
|
|
37
|
+
export * from './request-adapters';
|
|
37
38
|
export * from './util/base64';
|
|
38
39
|
export * from './util/hex';
|
|
39
40
|
export * from './util/rxjs';
|
package/build/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,gDAAgD;AAChD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAEjC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,wCAAwC,CAAC;AACvD,cAAc,yCAAyC,CAAC;AACxD,cAAc,wCAAwC,CAAC;AACvD,cAAc,yCAAyC,CAAC;AACxD,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,oCAAoC,CAAC;AACnD,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,gDAAgD;AAChD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAEjC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,wCAAwC,CAAC;AACvD,cAAc,yCAAyC,CAAC;AACxD,cAAc,wCAAwC,CAAC;AACvD,cAAc,yCAAyC,CAAC;AACxD,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,oCAAoC,CAAC;AACnD,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { RequestAdapter, RequestFactory } from './request-factory';
|
|
2
|
+
export declare abstract class HeaderTokenAuthorizingAdapter implements RequestAdapter {
|
|
3
|
+
header: string;
|
|
4
|
+
tokenHeaderType: string;
|
|
5
|
+
applyToken(request: Request, accessToken: string): Request;
|
|
6
|
+
abstract adapt(requestFactory: RequestFactory, request: Request): Promise<Request>;
|
|
7
|
+
}
|
|
8
|
+
export declare class StaticHeaderTokenAuthorizingAdapter extends HeaderTokenAuthorizingAdapter {
|
|
9
|
+
private readonly accessToken;
|
|
10
|
+
constructor(accessToken: string);
|
|
11
|
+
adapt(requestFactory: RequestFactory, request: Request): Promise<Request>;
|
|
12
|
+
}
|
|
13
|
+
export interface TokenAuthorization {
|
|
14
|
+
token: string;
|
|
15
|
+
expires: Date;
|
|
16
|
+
}
|
|
17
|
+
export declare class RefreshingHeaderTokenAuthorizingAdapter extends HeaderTokenAuthorizingAdapter {
|
|
18
|
+
private readonly refresh;
|
|
19
|
+
private authorization?;
|
|
20
|
+
constructor(refresh: (requestFactory: RequestFactory) => Promise<TokenAuthorization>);
|
|
21
|
+
shouldRefresh(): boolean;
|
|
22
|
+
adapt(requestFactory: RequestFactory, request: Request): Promise<Request>;
|
|
23
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
// Copyright 2020 Outfox, Inc.
|
|
2
|
+
//
|
|
3
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
// you may not use this file except in compliance with the License.
|
|
5
|
+
// You may obtain a copy of the License at
|
|
6
|
+
//
|
|
7
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
//
|
|
9
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
// See the License for the specific language governing permissions and
|
|
13
|
+
// limitations under the License.
|
|
14
|
+
export class HeaderTokenAuthorizingAdapter {
|
|
15
|
+
constructor() {
|
|
16
|
+
this.header = 'Authorization';
|
|
17
|
+
this.tokenHeaderType = 'Bearer';
|
|
18
|
+
}
|
|
19
|
+
applyToken(request, accessToken) {
|
|
20
|
+
const requestClone = request.clone();
|
|
21
|
+
requestClone.headers.set(this.header, `${this.tokenHeaderType} ${accessToken}`);
|
|
22
|
+
return requestClone;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
export class StaticHeaderTokenAuthorizingAdapter extends HeaderTokenAuthorizingAdapter {
|
|
26
|
+
constructor(accessToken) {
|
|
27
|
+
super();
|
|
28
|
+
this.accessToken = accessToken;
|
|
29
|
+
}
|
|
30
|
+
async adapt(requestFactory, request) {
|
|
31
|
+
return this.applyToken(request, this.accessToken);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export class RefreshingHeaderTokenAuthorizingAdapter extends HeaderTokenAuthorizingAdapter {
|
|
35
|
+
constructor(refresh) {
|
|
36
|
+
super();
|
|
37
|
+
this.refresh = refresh;
|
|
38
|
+
}
|
|
39
|
+
shouldRefresh() {
|
|
40
|
+
if (!this.authorization) {
|
|
41
|
+
return true;
|
|
42
|
+
}
|
|
43
|
+
return this.authorization.expires.getTime() <= Date.now();
|
|
44
|
+
}
|
|
45
|
+
async adapt(requestFactory, request) {
|
|
46
|
+
if (!this.authorization || this.shouldRefresh()) {
|
|
47
|
+
this.authorization = await this.refresh(requestFactory);
|
|
48
|
+
}
|
|
49
|
+
return this.applyToken(request, this.authorization.token);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=request-adapters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-adapters.js","sourceRoot":"","sources":["../../src/request-adapters.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,gDAAgD;AAChD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAIjC,MAAM,OAAgB,6BAA6B;IAAnD;QACE,WAAM,GAAG,eAAe,CAAC;QACzB,oBAAe,GAAG,QAAQ,CAAC;IAe7B,CAAC;IAbC,UAAU,CAAC,OAAgB,EAAE,WAAmB;QAC9C,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;QACrC,YAAY,CAAC,OAAO,CAAC,GAAG,CACtB,IAAI,CAAC,MAAM,EACX,GAAG,IAAI,CAAC,eAAe,IAAI,WAAW,EAAE,CACzC,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;CAMF;AAED,MAAM,OAAO,mCAAoC,SAAQ,6BAA6B;IACpF,YAA6B,WAAmB;QAC9C,KAAK,EAAE,CAAC;QADmB,gBAAW,GAAX,WAAW,CAAQ;IAEhD,CAAC;IAED,KAAK,CAAC,KAAK,CACT,cAA8B,EAC9B,OAAgB;QAEhB,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACpD,CAAC;CACF;AAOD,MAAM,OAAO,uCAAwC,SAAQ,6BAA6B;IAGxF,YACmB,OAEe;QAEhC,KAAK,EAAE,CAAC;QAJS,YAAO,GAAP,OAAO,CAEQ;IAGlC,CAAC;IAED,aAAa;QACX,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YACvB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,KAAK,CACT,cAA8B,EAC9B,OAAgB;QAEhB,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE;YAC/C,IAAI,CAAC,aAAa,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;SACzD;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC5D,CAAC;CACF"}
|
|
@@ -41,4 +41,6 @@ export interface RequestSpec<B> {
|
|
|
41
41
|
acceptTypes?: MediaType[];
|
|
42
42
|
headers?: Record<string, unknown>;
|
|
43
43
|
}
|
|
44
|
-
export
|
|
44
|
+
export interface RequestAdapter {
|
|
45
|
+
adapt(requestFactory: RequestFactory, request: Request): Promise<Request>;
|
|
46
|
+
}
|
|
@@ -42,7 +42,7 @@ export class FetchRequestFactory {
|
|
|
42
42
|
request(requestSpec, requestInit) {
|
|
43
43
|
//
|
|
44
44
|
return defer(() => {
|
|
45
|
-
var _a, _b
|
|
45
|
+
var _a, _b;
|
|
46
46
|
const url = this.baseUrl.complete(requestSpec.pathTemplate, (_a = requestSpec.pathParameters) !== null && _a !== void 0 ? _a : {});
|
|
47
47
|
if (requestSpec.queryParameters) {
|
|
48
48
|
const encoder = this.mediaTypeEncoders.find(MediaType.WWWFormUrlEncoded);
|
|
@@ -82,9 +82,8 @@ export class FetchRequestFactory {
|
|
|
82
82
|
body,
|
|
83
83
|
method: requestSpec.method,
|
|
84
84
|
});
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
});
|
|
85
|
+
return of(new Request(url.toString(), init));
|
|
86
|
+
}).pipe(switchMap(async (request) => { var _a, _b; return (_b = (_a = this.adapter) === null || _a === void 0 ? void 0 : _a.adapt(this, request)) !== null && _b !== void 0 ? _b : request; }));
|
|
88
87
|
}
|
|
89
88
|
response(request, dataExpected) {
|
|
90
89
|
const request$ = request instanceof Request ? of(request) : this.request(request);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-request-factory.js","sourceRoot":"","sources":["../../src/fetch-request-factory.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"fetch-request-factory.js","sourceRoot":"","sources":["../../src/fetch-request-factory.ts"],"names":[],"mappings":"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"}
|
package/build/esnext/index.d.ts
CHANGED
|
@@ -21,6 +21,7 @@ export * from './sunday-error';
|
|
|
21
21
|
export * from './problem';
|
|
22
22
|
export * from './date-time-types';
|
|
23
23
|
export * from './result-response';
|
|
24
|
+
export * from './request-adapters';
|
|
24
25
|
export * from './util/base64';
|
|
25
26
|
export * from './util/hex';
|
|
26
27
|
export * from './util/rxjs';
|
package/build/esnext/index.js
CHANGED
|
@@ -34,6 +34,7 @@ export * from './sunday-error';
|
|
|
34
34
|
export * from './problem';
|
|
35
35
|
export * from './date-time-types';
|
|
36
36
|
export * from './result-response';
|
|
37
|
+
export * from './request-adapters';
|
|
37
38
|
export * from './util/base64';
|
|
38
39
|
export * from './util/hex';
|
|
39
40
|
export * from './util/rxjs';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,gDAAgD;AAChD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAEjC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,wCAAwC,CAAC;AACvD,cAAc,yCAAyC,CAAC;AACxD,cAAc,wCAAwC,CAAC;AACvD,cAAc,yCAAyC,CAAC;AACxD,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,oCAAoC,CAAC;AACnD,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,gDAAgD;AAChD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAEjC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,wCAAwC,CAAC;AACvD,cAAc,yCAAyC,CAAC;AACxD,cAAc,wCAAwC,CAAC;AACvD,cAAc,yCAAyC,CAAC;AACxD,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,oCAAoC,CAAC;AACnD,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AAEnC,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { RequestAdapter, RequestFactory } from './request-factory';
|
|
2
|
+
export declare abstract class HeaderTokenAuthorizingAdapter implements RequestAdapter {
|
|
3
|
+
header: string;
|
|
4
|
+
tokenHeaderType: string;
|
|
5
|
+
applyToken(request: Request, accessToken: string): Request;
|
|
6
|
+
abstract adapt(requestFactory: RequestFactory, request: Request): Promise<Request>;
|
|
7
|
+
}
|
|
8
|
+
export declare class StaticHeaderTokenAuthorizingAdapter extends HeaderTokenAuthorizingAdapter {
|
|
9
|
+
private readonly accessToken;
|
|
10
|
+
constructor(accessToken: string);
|
|
11
|
+
adapt(requestFactory: RequestFactory, request: Request): Promise<Request>;
|
|
12
|
+
}
|
|
13
|
+
export interface TokenAuthorization {
|
|
14
|
+
token: string;
|
|
15
|
+
expires: Date;
|
|
16
|
+
}
|
|
17
|
+
export declare class RefreshingHeaderTokenAuthorizingAdapter extends HeaderTokenAuthorizingAdapter {
|
|
18
|
+
private readonly refresh;
|
|
19
|
+
private authorization?;
|
|
20
|
+
constructor(refresh: (requestFactory: RequestFactory) => Promise<TokenAuthorization>);
|
|
21
|
+
shouldRefresh(): boolean;
|
|
22
|
+
adapt(requestFactory: RequestFactory, request: Request): Promise<Request>;
|
|
23
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
// Copyright 2020 Outfox, Inc.
|
|
2
|
+
//
|
|
3
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
// you may not use this file except in compliance with the License.
|
|
5
|
+
// You may obtain a copy of the License at
|
|
6
|
+
//
|
|
7
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
8
|
+
//
|
|
9
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
10
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
11
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
|
+
// See the License for the specific language governing permissions and
|
|
13
|
+
// limitations under the License.
|
|
14
|
+
export class HeaderTokenAuthorizingAdapter {
|
|
15
|
+
constructor() {
|
|
16
|
+
this.header = 'Authorization';
|
|
17
|
+
this.tokenHeaderType = 'Bearer';
|
|
18
|
+
}
|
|
19
|
+
applyToken(request, accessToken) {
|
|
20
|
+
const requestClone = request.clone();
|
|
21
|
+
requestClone.headers.set(this.header, `${this.tokenHeaderType} ${accessToken}`);
|
|
22
|
+
return requestClone;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
export class StaticHeaderTokenAuthorizingAdapter extends HeaderTokenAuthorizingAdapter {
|
|
26
|
+
constructor(accessToken) {
|
|
27
|
+
super();
|
|
28
|
+
this.accessToken = accessToken;
|
|
29
|
+
}
|
|
30
|
+
async adapt(requestFactory, request) {
|
|
31
|
+
return this.applyToken(request, this.accessToken);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export class RefreshingHeaderTokenAuthorizingAdapter extends HeaderTokenAuthorizingAdapter {
|
|
35
|
+
constructor(refresh) {
|
|
36
|
+
super();
|
|
37
|
+
this.refresh = refresh;
|
|
38
|
+
}
|
|
39
|
+
shouldRefresh() {
|
|
40
|
+
if (!this.authorization) {
|
|
41
|
+
return true;
|
|
42
|
+
}
|
|
43
|
+
return this.authorization.expires.getTime() <= Date.now();
|
|
44
|
+
}
|
|
45
|
+
async adapt(requestFactory, request) {
|
|
46
|
+
if (!this.authorization || this.shouldRefresh()) {
|
|
47
|
+
this.authorization = await this.refresh(requestFactory);
|
|
48
|
+
}
|
|
49
|
+
return this.applyToken(request, this.authorization.token);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=request-adapters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-adapters.js","sourceRoot":"","sources":["../../src/request-adapters.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,gDAAgD;AAChD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAIjC,MAAM,OAAgB,6BAA6B;IAAnD;QACE,WAAM,GAAG,eAAe,CAAC;QACzB,oBAAe,GAAG,QAAQ,CAAC;IAe7B,CAAC;IAbC,UAAU,CAAC,OAAgB,EAAE,WAAmB;QAC9C,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;QACrC,YAAY,CAAC,OAAO,CAAC,GAAG,CACtB,IAAI,CAAC,MAAM,EACX,GAAG,IAAI,CAAC,eAAe,IAAI,WAAW,EAAE,CACzC,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;CAMF;AAED,MAAM,OAAO,mCAAoC,SAAQ,6BAA6B;IACpF,YAA6B,WAAmB;QAC9C,KAAK,EAAE,CAAC;QADmB,gBAAW,GAAX,WAAW,CAAQ;IAEhD,CAAC;IAED,KAAK,CAAC,KAAK,CACT,cAA8B,EAC9B,OAAgB;QAEhB,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACpD,CAAC;CACF;AAOD,MAAM,OAAO,uCAAwC,SAAQ,6BAA6B;IAGxF,YACmB,OAEe;QAEhC,KAAK,EAAE,CAAC;QAJS,YAAO,GAAP,OAAO,CAEQ;IAGlC,CAAC;IAED,aAAa;QACX,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YACvB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,KAAK,CACT,cAA8B,EAC9B,OAAgB;QAEhB,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE;YAC/C,IAAI,CAAC,aAAa,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;SACzD;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC5D,CAAC;CACF"}
|
|
@@ -41,4 +41,6 @@ export interface RequestSpec<B> {
|
|
|
41
41
|
acceptTypes?: MediaType[];
|
|
42
42
|
headers?: Record<string, unknown>;
|
|
43
43
|
}
|
|
44
|
-
export
|
|
44
|
+
export interface RequestAdapter {
|
|
45
|
+
adapt(requestFactory: RequestFactory, request: Request): Promise<Request>;
|
|
46
|
+
}
|
|
@@ -45,7 +45,7 @@ class FetchRequestFactory {
|
|
|
45
45
|
request(requestSpec, requestInit) {
|
|
46
46
|
//
|
|
47
47
|
return (0, rxjs_1.defer)(() => {
|
|
48
|
-
var _a, _b
|
|
48
|
+
var _a, _b;
|
|
49
49
|
const url = this.baseUrl.complete(requestSpec.pathTemplate, (_a = requestSpec.pathParameters) !== null && _a !== void 0 ? _a : {});
|
|
50
50
|
if (requestSpec.queryParameters) {
|
|
51
51
|
const encoder = this.mediaTypeEncoders.find(media_type_1.MediaType.WWWFormUrlEncoded);
|
|
@@ -85,9 +85,8 @@ class FetchRequestFactory {
|
|
|
85
85
|
body,
|
|
86
86
|
method: requestSpec.method,
|
|
87
87
|
});
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
});
|
|
88
|
+
return (0, rxjs_1.of)(new Request(url.toString(), init));
|
|
89
|
+
}).pipe((0, rxjs_1.switchMap)(async (request) => { var _a, _b; return (_b = (_a = this.adapter) === null || _a === void 0 ? void 0 : _a.adapt(this, request)) !== null && _b !== void 0 ? _b : request; }));
|
|
91
90
|
}
|
|
92
91
|
response(request, dataExpected) {
|
|
93
92
|
const request$ = request instanceof Request ? (0, rxjs_1.of)(request) : this.request(request);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-request-factory.js","sourceRoot":"","sources":["../../src/fetch-request-factory.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"fetch-request-factory.js","sourceRoot":"","sources":["../../src/fetch-request-factory.ts"],"names":[],"mappings":"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"}
|
package/build/main/index.d.ts
CHANGED
|
@@ -21,6 +21,7 @@ export * from './sunday-error';
|
|
|
21
21
|
export * from './problem';
|
|
22
22
|
export * from './date-time-types';
|
|
23
23
|
export * from './result-response';
|
|
24
|
+
export * from './request-adapters';
|
|
24
25
|
export * from './util/base64';
|
|
25
26
|
export * from './util/hex';
|
|
26
27
|
export * from './util/rxjs';
|
package/build/main/index.js
CHANGED
|
@@ -46,6 +46,7 @@ __exportStar(require("./sunday-error"), exports);
|
|
|
46
46
|
__exportStar(require("./problem"), exports);
|
|
47
47
|
__exportStar(require("./date-time-types"), exports);
|
|
48
48
|
__exportStar(require("./result-response"), exports);
|
|
49
|
+
__exportStar(require("./request-adapters"), exports);
|
|
49
50
|
__exportStar(require("./util/base64"), exports);
|
|
50
51
|
__exportStar(require("./util/hex"), exports);
|
|
51
52
|
__exportStar(require("./util/rxjs"), exports);
|
package/build/main/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA,8BAA8B;AAC9B,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,gDAAgD;AAChD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;;;;;;;;;;;;AAEjC,6CAA2B;AAC3B,+CAA6B;AAC7B,oDAAkC;AAClC,0DAAwC;AACxC,uDAAqC;AACrC,iDAA+B;AAC/B,+CAA6B;AAC7B,yEAAuD;AACvD,0EAAwD;AACxD,yEAAuD;AACvD,0EAAwD;AACxD,mEAAiD;AACjD,mEAAiD;AACjD,mEAAiD;AACjD,mEAAiD;AACjD,qEAAmD;AACnD,qEAAmD;AACnD,2EAAyD;AACzD,2CAAyB;AACzB,iDAA+B;AAC/B,4CAA0B;AAC1B,oDAAkC;AAClC,oDAAkC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA,8BAA8B;AAC9B,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,gDAAgD;AAChD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;;;;;;;;;;;;AAEjC,6CAA2B;AAC3B,+CAA6B;AAC7B,oDAAkC;AAClC,0DAAwC;AACxC,uDAAqC;AACrC,iDAA+B;AAC/B,+CAA6B;AAC7B,yEAAuD;AACvD,0EAAwD;AACxD,yEAAuD;AACvD,0EAAwD;AACxD,mEAAiD;AACjD,mEAAiD;AACjD,mEAAiD;AACjD,mEAAiD;AACjD,qEAAmD;AACnD,qEAAmD;AACnD,2EAAyD;AACzD,2CAAyB;AACzB,iDAA+B;AAC/B,4CAA0B;AAC1B,oDAAkC;AAClC,oDAAkC;AAClC,qDAAmC;AAEnC,gDAA8B;AAC9B,6CAA2B;AAC3B,8CAA4B"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { RequestAdapter, RequestFactory } from './request-factory';
|
|
2
|
+
export declare abstract class HeaderTokenAuthorizingAdapter implements RequestAdapter {
|
|
3
|
+
header: string;
|
|
4
|
+
tokenHeaderType: string;
|
|
5
|
+
applyToken(request: Request, accessToken: string): Request;
|
|
6
|
+
abstract adapt(requestFactory: RequestFactory, request: Request): Promise<Request>;
|
|
7
|
+
}
|
|
8
|
+
export declare class StaticHeaderTokenAuthorizingAdapter extends HeaderTokenAuthorizingAdapter {
|
|
9
|
+
private readonly accessToken;
|
|
10
|
+
constructor(accessToken: string);
|
|
11
|
+
adapt(requestFactory: RequestFactory, request: Request): Promise<Request>;
|
|
12
|
+
}
|
|
13
|
+
export interface TokenAuthorization {
|
|
14
|
+
token: string;
|
|
15
|
+
expires: Date;
|
|
16
|
+
}
|
|
17
|
+
export declare class RefreshingHeaderTokenAuthorizingAdapter extends HeaderTokenAuthorizingAdapter {
|
|
18
|
+
private readonly refresh;
|
|
19
|
+
private authorization?;
|
|
20
|
+
constructor(refresh: (requestFactory: RequestFactory) => Promise<TokenAuthorization>);
|
|
21
|
+
shouldRefresh(): boolean;
|
|
22
|
+
adapt(requestFactory: RequestFactory, request: Request): Promise<Request>;
|
|
23
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright 2020 Outfox, Inc.
|
|
3
|
+
//
|
|
4
|
+
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
// you may not use this file except in compliance with the License.
|
|
6
|
+
// You may obtain a copy of the License at
|
|
7
|
+
//
|
|
8
|
+
// http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
//
|
|
10
|
+
// Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
// See the License for the specific language governing permissions and
|
|
14
|
+
// limitations under the License.
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
exports.RefreshingHeaderTokenAuthorizingAdapter = exports.StaticHeaderTokenAuthorizingAdapter = exports.HeaderTokenAuthorizingAdapter = void 0;
|
|
17
|
+
class HeaderTokenAuthorizingAdapter {
|
|
18
|
+
constructor() {
|
|
19
|
+
this.header = 'Authorization';
|
|
20
|
+
this.tokenHeaderType = 'Bearer';
|
|
21
|
+
}
|
|
22
|
+
applyToken(request, accessToken) {
|
|
23
|
+
const requestClone = request.clone();
|
|
24
|
+
requestClone.headers.set(this.header, `${this.tokenHeaderType} ${accessToken}`);
|
|
25
|
+
return requestClone;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
exports.HeaderTokenAuthorizingAdapter = HeaderTokenAuthorizingAdapter;
|
|
29
|
+
class StaticHeaderTokenAuthorizingAdapter extends HeaderTokenAuthorizingAdapter {
|
|
30
|
+
constructor(accessToken) {
|
|
31
|
+
super();
|
|
32
|
+
this.accessToken = accessToken;
|
|
33
|
+
}
|
|
34
|
+
async adapt(requestFactory, request) {
|
|
35
|
+
return this.applyToken(request, this.accessToken);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
exports.StaticHeaderTokenAuthorizingAdapter = StaticHeaderTokenAuthorizingAdapter;
|
|
39
|
+
class RefreshingHeaderTokenAuthorizingAdapter extends HeaderTokenAuthorizingAdapter {
|
|
40
|
+
constructor(refresh) {
|
|
41
|
+
super();
|
|
42
|
+
this.refresh = refresh;
|
|
43
|
+
}
|
|
44
|
+
shouldRefresh() {
|
|
45
|
+
if (!this.authorization) {
|
|
46
|
+
return true;
|
|
47
|
+
}
|
|
48
|
+
return this.authorization.expires.getTime() <= Date.now();
|
|
49
|
+
}
|
|
50
|
+
async adapt(requestFactory, request) {
|
|
51
|
+
if (!this.authorization || this.shouldRefresh()) {
|
|
52
|
+
this.authorization = await this.refresh(requestFactory);
|
|
53
|
+
}
|
|
54
|
+
return this.applyToken(request, this.authorization.token);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
exports.RefreshingHeaderTokenAuthorizingAdapter = RefreshingHeaderTokenAuthorizingAdapter;
|
|
58
|
+
//# sourceMappingURL=request-adapters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request-adapters.js","sourceRoot":"","sources":["../../src/request-adapters.ts"],"names":[],"mappings":";AAAA,8BAA8B;AAC9B,EAAE;AACF,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,gDAAgD;AAChD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;;;AAIjC,MAAsB,6BAA6B;IAAnD;QACE,WAAM,GAAG,eAAe,CAAC;QACzB,oBAAe,GAAG,QAAQ,CAAC;IAe7B,CAAC;IAbC,UAAU,CAAC,OAAgB,EAAE,WAAmB;QAC9C,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;QACrC,YAAY,CAAC,OAAO,CAAC,GAAG,CACtB,IAAI,CAAC,MAAM,EACX,GAAG,IAAI,CAAC,eAAe,IAAI,WAAW,EAAE,CACzC,CAAC;QACF,OAAO,YAAY,CAAC;IACtB,CAAC;CAMF;AAjBD,sEAiBC;AAED,MAAa,mCAAoC,SAAQ,6BAA6B;IACpF,YAA6B,WAAmB;QAC9C,KAAK,EAAE,CAAC;QADmB,gBAAW,GAAX,WAAW,CAAQ;IAEhD,CAAC;IAED,KAAK,CAAC,KAAK,CACT,cAA8B,EAC9B,OAAgB;QAEhB,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACpD,CAAC;CACF;AAXD,kFAWC;AAOD,MAAa,uCAAwC,SAAQ,6BAA6B;IAGxF,YACmB,OAEe;QAEhC,KAAK,EAAE,CAAC;QAJS,YAAO,GAAP,OAAO,CAEQ;IAGlC,CAAC;IAED,aAAa;QACX,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YACvB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,KAAK,CACT,cAA8B,EAC9B,OAAgB;QAEhB,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,EAAE,EAAE;YAC/C,IAAI,CAAC,aAAa,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;SACzD;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC5D,CAAC;CACF;AA3BD,0FA2BC"}
|
|
@@ -41,4 +41,6 @@ export interface RequestSpec<B> {
|
|
|
41
41
|
acceptTypes?: MediaType[];
|
|
42
42
|
headers?: Record<string, unknown>;
|
|
43
43
|
}
|
|
44
|
-
export
|
|
44
|
+
export interface RequestAdapter {
|
|
45
|
+
adapt(requestFactory: RequestFactory, request: Request): Promise<Request>;
|
|
46
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@outfoxx/sunday",
|
|
3
|
-
"version": "1.1.0-beta.
|
|
3
|
+
"version": "1.1.0-beta.13",
|
|
4
4
|
"description": "Sunday 🙏 The framework of REST for TypeScript/JavaScript",
|
|
5
5
|
"main": "build/main/index.js",
|
|
6
6
|
"module": "build/esm/index.js",
|
|
@@ -22,9 +22,11 @@
|
|
|
22
22
|
"test:esm:allbrowsers": "karma start karma-esm.config.js --singleRun --browsers ChromeHeadless,SafariNative,Firefox",
|
|
23
23
|
"test:esnext:allbrowsers": "karma start karma-esnext.config.js --singleRun --browsers ChromeHeadless,SafariNative,Firefox",
|
|
24
24
|
"build": "tsc --build tsconfig-main.json tsconfig-esm.json tsconfig-esnext.json",
|
|
25
|
+
"build:watch": "tsc --build tsconfig-main.json tsconfig-esm.json tsconfig-esnext.json --watch",
|
|
25
26
|
"clean": "rimraf build docs reports",
|
|
26
27
|
"pretty": "prettier src test",
|
|
27
28
|
"lint": "eslint -f json -o reports/lint.json src test",
|
|
29
|
+
"lint:html": "eslint -f html -o reports/lint.html src test",
|
|
28
30
|
"docs": "typedoc --excludeInternal --excludePrivate src/index.ts",
|
|
29
31
|
"prepublishOnly": "npm run clean && npm run lint && npm run build"
|
|
30
32
|
},
|