@de./sdk 2.4.1 → 2.4.2
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/dist/backend/Auth.js +14 -2
- package/dist/backend/Auth.js.map +1 -1
- package/package.json +1 -1
- package/src/backend/Auth.ts +15 -2
package/dist/backend/Auth.js
CHANGED
|
@@ -13,6 +13,16 @@ const baseUrl_1 = require("../baseUrl");
|
|
|
13
13
|
* answered 401 with nothing to say why.
|
|
14
14
|
*/
|
|
15
15
|
const ACCESS_TOKEN_EXPIRY = 3.75;
|
|
16
|
+
/**
|
|
17
|
+
* How soon to try again after a rotation that failed outright.
|
|
18
|
+
*
|
|
19
|
+
* A rotation that fails both ways — de.arch restarting, the network down for
|
|
20
|
+
* a moment — used to end rotation for good: the timer's promise was dropped,
|
|
21
|
+
* nothing rescheduled, and the token lapsed four minutes later with every call
|
|
22
|
+
* after it answered 401 "Token Expired" until the process restarted. The
|
|
23
|
+
* retry mints afresh, which is all an expired token needs.
|
|
24
|
+
*/
|
|
25
|
+
const ROTATION_RETRY_MS = 15000;
|
|
16
26
|
/**
|
|
17
27
|
* Whether this code is running inside an app rather than on a server.
|
|
18
28
|
*
|
|
@@ -97,11 +107,13 @@ class Auth {
|
|
|
97
107
|
/**
|
|
98
108
|
* Schedule next token rotation
|
|
99
109
|
*/
|
|
100
|
-
scheduleRotation() {
|
|
110
|
+
scheduleRotation(afterMs = this.rotateAfterMins * 60 * 1000) {
|
|
101
111
|
if (!this.autorefresh)
|
|
102
112
|
return;
|
|
103
113
|
this.clearRotation();
|
|
104
|
-
this.refreshTimer = setTimeout(() =>
|
|
114
|
+
this.refreshTimer = setTimeout(() => {
|
|
115
|
+
this.rotateToken().catch(() => this.scheduleRotation(ROTATION_RETRY_MS));
|
|
116
|
+
}, afterMs);
|
|
105
117
|
}
|
|
106
118
|
/**
|
|
107
119
|
* Clear rotation timer
|
package/dist/backend/Auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Auth.js","sourceRoot":"","sources":["../../src/backend/Auth.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Auth.js","sourceRoot":"","sources":["../../src/backend/Auth.ts"],"names":[],"mappings":";;AAAA,wCAAoC;AAGpC;;;;;;;;;;GAUG;AACH,MAAM,mBAAmB,GAAG,IAAI,CAAA;AAEhC;;;;;;;;GAQG;AACH,MAAM,iBAAiB,GAAG,KAAM,CAAA;AAoEhC;;;;;GAKG;AACH,MAAM,WAAW,GAAG,GAAY,EAAE;;IAChC,OAAA,OAAS,UAAmB,CAAC,QAAQ,KAAK,WAAW;WAClD,CAAA,MAAE,UAAmB,CAAC,SAAS,0CAAE,OAAO,MAAK,aAAa,CAAA;CAAA,CAAA;AAU/D,MAAqB,IAAI;IAiBvB,YAAa,MAAkB;QAHvB,eAAU,GAAY,KAAK,CAAA;QAIjC,IAAI,CAAC,MAAM;YAAW,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;QAC9F,IAAI,CAAC,MAAM,CAAC,OAAO;YAAG,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAA;QAE/F,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACrB,IAAI,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,MAAM;gBAC7B,MAAM,IAAI,KAAK,CAAC,gGAAgG,CAAC,CAAA;QACrH,CAAC;aACI,CAAC;YACJ,IAAI,CAAC,MAAM,CAAC,GAAG;gBAAO,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAA;YAC3F,IAAI,CAAC,MAAM,CAAC,MAAM;gBAAI,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;YAE9F;;;;eAIG;YACH,IAAI,WAAW,EAAE;gBACf,MAAM,IAAI,KAAK,CAAC,+JAA+J,CAAC,CAAA;QACpL,CAAC;QAED,IAAI,CAAC,OAAO,GAAQ,MAAM,CAAC,OAAO,CAAA;QAClC,IAAI,CAAC,GAAG,GAAY,MAAM,CAAC,GAAG,CAAA;QAC9B,IAAI,CAAC,GAAG,GAAY,MAAM,CAAC,GAAG,CAAA;QAC9B,IAAI,CAAC,MAAM,GAAS,MAAM,CAAC,MAAM,CAAA;QACjC,IAAI,CAAC,SAAS,GAAM,MAAM,CAAC,SAAS,CAAA;QACpC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAA;QACvC,IAAI,CAAC,GAAG,GAAY,MAAM,CAAC,GAAG,IAAI,KAAK,CAAA;QACvC,IAAI,CAAC,OAAO,GAAQ,MAAM,CAAC,OAAO,IAAI,CAAC,CAAA;QACvC,IAAI,CAAC,OAAO,GAAQ,IAAA,iBAAO,EAAC,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,WAAW,CAAE,CAAA;QACjE,IAAI,CAAC,WAAW,GAAI,MAAM,CAAC,WAAW,IAAI,KAAK,CAAA;QAC/C,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,IAAI,MAAM,CAAC,eAAe,GAAG,CAAC;YACjD,CAAC,CAAC,MAAM,CAAC,eAAe;YACxB,CAAC,CAAC,mBAAmB,CAAA;QAC/C,IAAI,CAAC,UAAU,GAAK,MAAM,CAAC,UAAU,CAAA;IACvC,CAAC;IAEO,KAAK,CAAC,OAAO,CAAI,EAAE,GAAG,EAAE,GAAG,OAAO,EAAsB;QAC9D,MAAM,UAAU,GAAQ;YACtB,MAAM,EAAE,KAAK;YACb,OAAO,EAAE;gBACP,QAAQ,EAAE,IAAI,CAAC,YAAY;gBAC3B,eAAe,EAAE,aAAa,IAAI,CAAC,OAAO,IAAI;aAC/C;SACF,CAAA;QAED,IAAI,IAAI,CAAC,WAAW;YAClB,UAAU,CAAC,OAAO,CAAC,aAAa,GAAG,UAAU,IAAI,CAAC,WAAW,EAAE,CAAA;QAEjE,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,UAAU,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAA;YACvD,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ;gBAClC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAE,OAAO,CAAC,IAAI,CAAE,CAAA;QACjD,CAAC;QAED,OAAO,GAAG,EAAE,GAAG,UAAU,EAAE,GAAG,OAAO,EAAE,CAAA;QAEvC;;;;WAIG;QACH,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,CAAA;QACxG,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,OAAO,CAAE,CAAA;QAEpG,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAO,CAAA;IACnC,CAAC;IAEO,KAAK,CAAE,GAAG,IAAW;QAC3B,IAAI,CAAC,GAAG,KAAK,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAE,CAAA;IACzD,CAAC;IACO,KAAK,CAAE,GAAG,IAAW;QAC3B,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAE,CAAA;IACnC,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAE,OAAO,GAAG,IAAI,CAAC,eAAe,GAAG,EAAE,GAAG,IAAI;QAClE,IAAI,CAAC,IAAI,CAAC,WAAW;YAAG,OAAM;QAE9B,IAAI,CAAC,aAAa,EAAE,CAAA;QACpB,IAAI,CAAC,YAAY,GAAG,UAAU,CAAE,GAAG,EAAE;YACnC,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAE,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAE,iBAAiB,CAAE,CAAE,CAAA;QAC9E,CAAC,EAAE,OAAO,CAAE,CAAA;IACd,CAAC;IAED;;OAEG;IACK,aAAa;QACnB,IAAI,CAAC,IAAI,CAAC,YAAY;YAAG,OAAM;QAE/B,YAAY,CAAE,IAAI,CAAC,YAAY,CAAE,CAAA;QACjC,IAAI,CAAC,YAAY,GAAG,SAAS,CAAA;IAC/B,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,MACA,OAAO,GAAuB;YAC5B,GAAG,EAAE,eAAe;YACpB,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS;gBACZ,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;gBACtD,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,GAAG,CAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAE,EAAE;SACnJ,EACD,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAgB,OAAO,CAAE,CAAA;QACtE,IAAI,KAAK;YAAG,MAAM,IAAI,KAAK,CAAE,OAAO,CAAE,CAAA;QAEtC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAA;QAC7B,IAAI,CAAC,gBAAgB,EAAE,CAAA,CAAC,wBAAwB;QAEhD,OAAO,IAAI,CAAC,KAAK,CAAA;IACnB,CAAC;IAED,KAAK,CAAC,WAAW;QACf,uCAAuC;QACvC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,IAAI,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAA;YAC1D,OAAO,IAAI,CAAC,WAAY,CAAA;QAC1B,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,WAAW;YACnB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAA;QAE1C;;;WAGG;QACH,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;YAEnC,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,UAAU;gBACvC,IAAI,CAAC;oBAAC,IAAI,CAAC,UAAU,CAAE,KAAK,CAAE,CAAA;gBAAC,CAAC;gBAChC,OAAO,aAAa,EAAE,CAAC;oBAAC,IAAI,CAAC,KAAK,CAAC,sCAAsC,EAAE,aAAa,CAAC,CAAA;gBAAC,CAAC;YAE7F,OAAO,KAAK,CAAA;QACd,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,IAAI,CAAA;QAEtB,IAAI,CAAC;YACH,MACA,OAAO,GAAuB;gBAC5B,GAAG,EAAE,sBAAsB;gBAC3B,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;aAC9B,EACD,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAgB,OAAO,CAAE,CAAA;YACtE,IAAI,KAAK;gBAAG,MAAM,IAAI,KAAK,CAAE,OAAO,CAAE,CAAA;YAEtC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAA;YAE7B,2BAA2B;YAC3B,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,UAAU;gBACvC,IAAI,CAAC;oBAAC,IAAI,CAAC,UAAU,CAAE,IAAI,CAAC,KAAK,CAAE,CAAA;gBAAC,CAAC;gBACrC,OAAO,aAAa,EAAE,CAAC;oBAAC,IAAI,CAAC,KAAK,CAAC,sCAAsC,EAAE,aAAa,CAAC,CAAA;gBAAC,CAAC;YAE7F,yBAAyB;YACzB,IAAI,CAAC,gBAAgB,EAAE,CAAA;YAEvB,IAAI,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAA;YACxC,OAAO,IAAI,CAAC,KAAK,CAAA;QACnB,CAAC;QACD,OAAO,KAAU,EAAE,CAAC;YAClB,IAAI,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;YAEzD,IAAI,CAAC;gBACH,kCAAkC;gBAClC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAA;gBACtC,IAAI,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAA;gBAE9C,2CAA2C;gBAC3C,IAAI,IAAI,CAAC,UAAU;oBACjB,IAAI,CAAC;wBAAC,IAAI,CAAC,UAAU,CAAE,QAAQ,CAAE,CAAA;oBAAC,CAAC;oBACnC,OAAO,aAAa,EAAE,CAAC;wBAAC,IAAI,CAAC,KAAK,CAAC,+BAA+B,EAAE,aAAa,CAAC,CAAA;oBAAC,CAAC;gBAEtF,OAAO,QAAQ,CAAA;YACjB,CAAC;YACD,OAAO,aAAkB,EAAE,CAAC;gBAC1B,IAAI,CAAC,KAAK,CAAC,oCAAoC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAA;gBACvE,MAAM,aAAa,CAAA;YACrB,CAAC;QACH,CAAC;gBACO,CAAC;YAAC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAA;QAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,eAAe;QACb,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAA;QAEnC,IAAI,CAAC,aAAa,EAAE,CAAA;QACpB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAA;IAC1B,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAA;QAEnC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAA;QACvB,IAAI,CAAC,gBAAgB,EAAE,CAAA;IACzB,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAA;QACtC,IAAI,CAAC,eAAe,EAAE,CAAA;QAEtB,IAAI,CAAC,WAAW,GAAG,SAAS,CAAA;QAC5B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAA;IAC7B,CAAC;CACF;AA1OD,uBA0OC"}
|
package/package.json
CHANGED
package/src/backend/Auth.ts
CHANGED
|
@@ -14,6 +14,17 @@ import type { AuthRequestOptions } from '../types/auth'
|
|
|
14
14
|
*/
|
|
15
15
|
const ACCESS_TOKEN_EXPIRY = 3.75
|
|
16
16
|
|
|
17
|
+
/**
|
|
18
|
+
* How soon to try again after a rotation that failed outright.
|
|
19
|
+
*
|
|
20
|
+
* A rotation that fails both ways — de.arch restarting, the network down for
|
|
21
|
+
* a moment — used to end rotation for good: the timer's promise was dropped,
|
|
22
|
+
* nothing rescheduled, and the token lapsed four minutes later with every call
|
|
23
|
+
* after it answered 401 "Token Expired" until the process restarted. The
|
|
24
|
+
* retry mints afresh, which is all an expired token needs.
|
|
25
|
+
*/
|
|
26
|
+
const ROTATION_RETRY_MS = 15_000
|
|
27
|
+
|
|
17
28
|
// ─── Config ───────────────────────────────────────────────────────────────────
|
|
18
29
|
//
|
|
19
30
|
// Connector credentials → access token, with one of two credentials:
|
|
@@ -193,11 +204,13 @@ export default class Auth {
|
|
|
193
204
|
/**
|
|
194
205
|
* Schedule next token rotation
|
|
195
206
|
*/
|
|
196
|
-
private scheduleRotation(){
|
|
207
|
+
private scheduleRotation( afterMs = this.rotateAfterMins * 60 * 1000 ){
|
|
197
208
|
if( !this.autorefresh ) return
|
|
198
209
|
|
|
199
210
|
this.clearRotation()
|
|
200
|
-
this.refreshTimer = setTimeout( () =>
|
|
211
|
+
this.refreshTimer = setTimeout( () => {
|
|
212
|
+
this.rotateToken().catch( () => this.scheduleRotation( ROTATION_RETRY_MS ) )
|
|
213
|
+
}, afterMs )
|
|
201
214
|
}
|
|
202
215
|
|
|
203
216
|
/**
|