@das-fed/upf-utils 6.4.0-dev.231 → 6.4.0-dev.233

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.
Files changed (98) hide show
  1. package/api-services/es5.js +551 -550
  2. package/api-services/index.js +391 -390
  3. package/api-services/index.js.gz +0 -0
  4. package/api-services/modules/app-manage/es5.js +462 -461
  5. package/api-services/modules/app-manage/index.js +350 -349
  6. package/api-services/modules/app-manage/index.js.gz +0 -0
  7. package/api-services/modules/authentication/es5.js +451 -450
  8. package/api-services/modules/authentication/index.js +342 -341
  9. package/api-services/modules/authentication/index.js.gz +0 -0
  10. package/api-services/modules/bems/es5.js +482 -481
  11. package/api-services/modules/bems/index.js +367 -366
  12. package/api-services/modules/bems/index.js.gz +0 -0
  13. package/api-services/modules/contract/es5.js +824 -826
  14. package/api-services/modules/contract/index.js +638 -641
  15. package/api-services/modules/contract/index.js.gz +0 -0
  16. package/api-services/modules/duty-manage/es5.js +479 -478
  17. package/api-services/modules/duty-manage/index.js +367 -366
  18. package/api-services/modules/duty-manage/index.js.gz +0 -0
  19. package/api-services/modules/enterpriseright/es5.js +451 -450
  20. package/api-services/modules/enterpriseright/index.js +342 -341
  21. package/api-services/modules/enterpriseright/index.js.gz +0 -0
  22. package/api-services/modules/es5.js +1359 -1346
  23. package/api-services/modules/file/es5.js +473 -472
  24. package/api-services/modules/file/index.js +351 -350
  25. package/api-services/modules/file/index.js.gz +0 -0
  26. package/api-services/modules/gateway-edge/es5.js +451 -450
  27. package/api-services/modules/gateway-edge/index.js +342 -341
  28. package/api-services/modules/gateway-edge/index.js.gz +0 -0
  29. package/api-services/modules/index.js +1111 -1092
  30. package/api-services/modules/index.js.gz +0 -0
  31. package/api-services/modules/iot/es5.js +459 -458
  32. package/api-services/modules/iot/index.js +348 -347
  33. package/api-services/modules/iot/index.js.gz +0 -0
  34. package/api-services/modules/justauth/es5.js +451 -450
  35. package/api-services/modules/justauth/index.js +342 -341
  36. package/api-services/modules/justauth/index.js.gz +0 -0
  37. package/api-services/modules/knowledge/es5.js +1255 -1266
  38. package/api-services/modules/knowledge/index.js +1050 -1067
  39. package/api-services/modules/knowledge/index.js.gz +0 -0
  40. package/api-services/modules/link/es5.js +451 -450
  41. package/api-services/modules/link/index.js +342 -341
  42. package/api-services/modules/link/index.js.gz +0 -0
  43. package/api-services/modules/permission/es5.js +1250 -1240
  44. package/api-services/modules/permission/index.js +1055 -1040
  45. package/api-services/modules/permission/index.js.gz +0 -0
  46. package/api-services/modules/platformManage/es5.js +457 -456
  47. package/api-services/modules/platformManage/index.js +345 -344
  48. package/api-services/modules/platformManage/index.js.gz +0 -0
  49. package/api-services/modules/portal/es5.js +451 -450
  50. package/api-services/modules/portal/index.js +342 -341
  51. package/api-services/modules/portal/index.js.gz +0 -0
  52. package/api-services/modules/space-manage/es5.js +451 -450
  53. package/api-services/modules/space-manage/index.js +342 -341
  54. package/api-services/modules/space-manage/index.js.gz +0 -0
  55. package/api-services/modules/super-admin/es5.js +1265 -1255
  56. package/api-services/modules/super-admin/index.js +1066 -1051
  57. package/api-services/modules/super-admin/index.js.gz +0 -0
  58. package/api-services/modules/supplier/es5.js +453 -452
  59. package/api-services/modules/supplier/index.js +343 -342
  60. package/api-services/modules/supplier/index.js.gz +0 -0
  61. package/api-services/modules/supplychain-manage/es5.js +451 -450
  62. package/api-services/modules/supplychain-manage/index.js +342 -341
  63. package/api-services/modules/supplychain-manage/index.js.gz +0 -0
  64. package/api-services/modules/systemConfiguration/es5.js +451 -450
  65. package/api-services/modules/systemConfiguration/index.js +342 -341
  66. package/api-services/modules/systemConfiguration/index.js.gz +0 -0
  67. package/api-services/modules/tool/es5.js +1262 -1273
  68. package/api-services/modules/tool/index.js +1056 -1073
  69. package/api-services/modules/tool/index.js.gz +0 -0
  70. package/api-services/src/create-service/es5.js +1256 -1243
  71. package/api-services/src/create-service/index.js +1060 -1041
  72. package/api-services/src/create-service/index.js.gz +0 -0
  73. package/common-info/es5.js +513 -512
  74. package/common-info/getPermissionMethod/es5.js +857 -854
  75. package/common-info/getPermissionMethod/index.js +666 -661
  76. package/common-info/getPermissionMethod/index.js.gz +0 -0
  77. package/common-info/index.js +396 -395
  78. package/common-info/index.js.gz +0 -0
  79. package/create-api-service/access-token-auto-refresh/es5.js +325 -0
  80. package/create-api-service/access-token-auto-refresh/index.d.ts +20 -0
  81. package/create-api-service/access-token-auto-refresh/index.js +182 -0
  82. package/create-api-service/access-token-auto-refresh/index.js.gz +0 -0
  83. package/create-api-service/check-token/es5.js +72 -2272
  84. package/create-api-service/check-token/index.d.ts +3 -8
  85. package/create-api-service/check-token/index.js +40 -1729
  86. package/create-api-service/check-token/index.js.gz +0 -0
  87. package/create-api-service/es5.js +450 -449
  88. package/create-api-service/index.js +342 -341
  89. package/create-api-service/index.js.gz +0 -0
  90. package/create-api-service/token-refresh-shared/es5.js +2327 -0
  91. package/create-api-service/token-refresh-shared/index.d.ts +30 -0
  92. package/create-api-service/token-refresh-shared/index.js +1752 -0
  93. package/create-api-service/token-refresh-shared/index.js.gz +0 -0
  94. package/esm-map.json +19 -1
  95. package/package.json +3 -3
  96. package/token-tools/es5.js +85 -18
  97. package/token-tools/index.js +80 -8
  98. package/token-tools/index.js.gz +0 -0
Binary file
@@ -0,0 +1,325 @@
1
+ 'use strict';
2
+
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
+ function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
5
+ function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { if (r) i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n;else { var _o = function _o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); }; _o("next", 0), _o("throw", 1), _o("return", 2); } }, _regeneratorDefine2(e, r, n, t); }
6
+ function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
7
+ function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
8
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
9
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
10
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
11
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
12
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
13
+ var tokenTools = require('@das-fed/upf-utils/token-tools/es5');
14
+ var tokenRefreshShared = require('@das-fed/upf-utils/create-api-service/token-refresh-shared/es5');
15
+ var I = 5;
16
+ var p = null,
17
+ l = null,
18
+ R = null,
19
+ i = false,
20
+ u = 0,
21
+ c = {
22
+ refreshScope: tokenRefreshShared.DEFAULT_REFRESH_SCOPE,
23
+ maxStartRetry: I
24
+ };
25
+ var X = function X(e) {
26
+ if (!e) return null;
27
+ try {
28
+ return JSON.parse(e);
29
+ } catch (_unused) {
30
+ return null;
31
+ }
32
+ },
33
+ o = function o() {
34
+ return c.refreshScope || tokenRefreshShared.DEFAULT_REFRESH_SCOPE;
35
+ },
36
+ S = function S() {
37
+ return X(tokenTools.getAccessTokenInfo("tokenInfo")) || {};
38
+ },
39
+ T = function T() {
40
+ var e = tokenTools.getAccessTokenInfo("accessTokenExpiredAt"),
41
+ r = S();
42
+ return tokenRefreshShared.toTimestamp((r == null ? undefined : r.accessExp) || (r == null ? undefined : r.accessTokenExpiredAt) || e);
43
+ },
44
+ m = function m() {
45
+ var e = S();
46
+ return String((e == null ? undefined : e.refreshToken) || tokenTools.getAccessTokenInfo("refreshToken") || "").trim();
47
+ },
48
+ C = function C() {
49
+ var e = S();
50
+ return tokenRefreshShared.toTimestamp(e == null ? undefined : e.refreshExp);
51
+ },
52
+ E = function E() {
53
+ return {
54
+ accessToken: tokenTools.getAccessToken(),
55
+ refreshToken: m(),
56
+ accessExp: T(),
57
+ refreshExp: C(),
58
+ accessTokenExpiredAt: T()
59
+ };
60
+ },
61
+ h = function h() {
62
+ var e = tokenTools.getAccessToken(),
63
+ r = T(),
64
+ s = m();
65
+ return !!(e && r > 0 && s);
66
+ },
67
+ N = function N() {
68
+ p && (clearTimeout(p), p = null), l && (clearTimeout(l), l = null), R && (clearTimeout(R), R = null);
69
+ },
70
+ j = function j() {
71
+ var e;
72
+ try {
73
+ var r = "/login";
74
+ if (location.pathname === r) return;
75
+ if (window.sessionStorage.clear(), window.localStorage.clear(), window.__isAutoCloseApp = !1, (e = window.top) != null && e.vueRouter) {
76
+ window.top.vueRouter.replace(r);
77
+ return;
78
+ }
79
+ window.location.replace("/#".concat(r));
80
+ } catch (_unused2) {
81
+ window.location.replace("/#/login");
82
+ }
83
+ },
84
+ a = function a() {
85
+ w(), (c.redirectToLogin || j)();
86
+ },
87
+ G = function G() {
88
+ var e = T();
89
+ if (!e) return 60 * 1e3;
90
+ var r = e - Date.now(),
91
+ s = 5 * 60 * 1e3,
92
+ n = 30 * 60 * 1e3,
93
+ f = 2 * 60 * 60 * 1e3;
94
+ return r <= s ? 10 * 1e3 : r <= n ? 30 * 1e3 : r <= f ? 2 * 60 * 1e3 : 5 * 60 * 1e3;
95
+ },
96
+ K = function K() {
97
+ var e = T();
98
+ if (!e) return 0;
99
+ var r = e - Date.now();
100
+ if (r <= tokenRefreshShared.CHECK_BUFFER_TIME) return -1;
101
+ var s = 5 * 60 * 1e3,
102
+ n = 30 * 60 * 1e3,
103
+ f = 2 * 60 * 60 * 1e3;
104
+ var t = tokenRefreshShared.CHECK_BUFFER_TIME;
105
+ r <= s ? t = 30 * 1e3 : r <= n ? t = 60 * 1e3 : r <= f ? t = 5 * 60 * 1e3 : t = 10 * 60 * 1e3;
106
+ var k = r - t;
107
+ return k > 0 ? k : 0;
108
+ },
109
+ W = function W(e) {
110
+ var f;
111
+ var r = String((e == null ? undefined : e.accessToken) || "").trim(),
112
+ s = String((e == null ? undefined : e.refreshToken) || "").trim() || m(),
113
+ n = tokenRefreshShared.toTimestamp((e == null ? undefined : e.accessExp) || (e == null ? undefined : e.accessTokenExpiredAt));
114
+ if (!(!r || !n)) {
115
+ tokenTools.setAccessToken(r, {
116
+ accessTokenExpiredAt: n,
117
+ refreshToken: s
118
+ });
119
+ try {
120
+ var t = S(),
121
+ k = _objectSpread(_objectSpread(_objectSpread({}, t), e), {}, {
122
+ accessToken: r,
123
+ refreshToken: s || (t == null ? void 0 : t.refreshToken) || "",
124
+ accessExp: n,
125
+ accessTokenExpiredAt: n,
126
+ refreshExp: (e == null ? void 0 : e.refreshExp) || tokenRefreshShared.toTimestamp(t == null ? void 0 : t.refreshExp),
127
+ sub: (e == null ? void 0 : e.sub) || (t == null ? void 0 : t.sub),
128
+ tenant: (e == null ? void 0 : e.tenant) || (t == null ? void 0 : t.tenant)
129
+ });
130
+ window.localStorage.setItem("accessTokenExpiredAt", String(n)), s && window.localStorage.setItem("refreshToken", s), window.sessionStorage.setItem("currentUser", JSON.stringify({
131
+ token: r
132
+ })), window.localStorage.setItem("tokenInfo", JSON.stringify(k)), (f = c.onTokenApplied) == null || f.call(c, k);
133
+ } catch (_unused3) {}
134
+ }
135
+ },
136
+ F = /*#__PURE__*/function () {
137
+ var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
138
+ var e, r, s, n, _t;
139
+ return _regenerator().w(function (_context) {
140
+ while (1) switch (_context.p = _context.n) {
141
+ case 0:
142
+ if (i) {
143
+ _context.n = 1;
144
+ break;
145
+ }
146
+ return _context.a(2);
147
+ case 1:
148
+ if (h()) {
149
+ _context.n = 2;
150
+ break;
151
+ }
152
+ w();
153
+ return _context.a(2);
154
+ case 2:
155
+ e = m();
156
+ if (e) {
157
+ _context.n = 3;
158
+ break;
159
+ }
160
+ return _context.a(2);
161
+ case 3:
162
+ r = tokenRefreshShared.getRefreshPrecheckResult(E());
163
+ if (!(r === "access_valid")) {
164
+ _context.n = 4;
165
+ break;
166
+ }
167
+ y();
168
+ return _context.a(2);
169
+ case 4:
170
+ if (!(r === "refresh_expired")) {
171
+ _context.n = 5;
172
+ break;
173
+ }
174
+ tokenRefreshShared.rejectRefreshResult("Refresh token expired", o()), a();
175
+ return _context.a(2);
176
+ case 5:
177
+ _context.p = 5;
178
+ if (tokenRefreshShared.startRefreshPending(o())) {
179
+ _context.n = 7;
180
+ break;
181
+ }
182
+ _context.n = 6;
183
+ return tokenRefreshShared.waitRefreshResult(o());
184
+ case 6:
185
+ return _context.a(2);
186
+ case 7:
187
+ _context.n = 8;
188
+ return tokenRefreshShared.refreshTokenWithRetry(e, tokenRefreshShared.MAX_RETRIES, tokenRefreshShared.RETRY_DELAY);
189
+ case 8:
190
+ s = _context.v;
191
+ n = _objectSpread(_objectSpread({}, s), {}, {
192
+ refreshToken: (s == null ? void 0 : s.refreshToken) || e,
193
+ refreshExp: (s == null ? void 0 : s.refreshExp) || C(),
194
+ accessTokenExpiredAt: tokenRefreshShared.toTimestamp((s == null ? void 0 : s.accessTokenExpiredAt) || (s == null ? void 0 : s.accessExp))
195
+ });
196
+ n != null && n.accessToken && n != null && n.accessExp && W(n), tokenRefreshShared.resolveRefreshResult(n, o()), y();
197
+ _context.n = 11;
198
+ break;
199
+ case 9:
200
+ _context.p = 9;
201
+ _t = _context.v;
202
+ if (!(tokenRefreshShared.rejectRefreshResult(_t, o()), tokenRefreshShared.getRefreshPrecheckResult(E()) === "refresh_expired")) {
203
+ _context.n = 10;
204
+ break;
205
+ }
206
+ a();
207
+ return _context.a(2);
208
+ case 10:
209
+ w();
210
+ case 11:
211
+ return _context.a(2);
212
+ }
213
+ }, _callee, null, [[5, 9]]);
214
+ }));
215
+ return function F() {
216
+ return _ref.apply(this, arguments);
217
+ };
218
+ }(),
219
+ H = /*#__PURE__*/function () {
220
+ var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
221
+ var e, _t2;
222
+ return _regenerator().w(function (_context2) {
223
+ while (1) switch (_context2.n) {
224
+ case 0:
225
+ if (h()) {
226
+ _context2.n = 1;
227
+ break;
228
+ }
229
+ w();
230
+ return _context2.a(2);
231
+ case 1:
232
+ e = tokenRefreshShared.getRefreshPrecheckResult(E());
233
+ if (!(e === "refresh_expired")) {
234
+ _context2.n = 2;
235
+ break;
236
+ }
237
+ tokenRefreshShared.rejectRefreshResult("Refresh token expired", o()), a();
238
+ return _context2.a(2);
239
+ case 2:
240
+ _t2 = e === "need_refresh";
241
+ if (!_t2) {
242
+ _context2.n = 3;
243
+ break;
244
+ }
245
+ _context2.n = 3;
246
+ return F();
247
+ case 3:
248
+ return _context2.a(2);
249
+ }
250
+ }, _callee2);
251
+ }));
252
+ return function H() {
253
+ return _ref2.apply(this, arguments);
254
+ };
255
+ }(),
256
+ _O = function O() {
257
+ if (!i || !h()) return;
258
+ var e = G();
259
+ l = window.setTimeout(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() {
260
+ return _regenerator().w(function (_context3) {
261
+ while (1) switch (_context3.n) {
262
+ case 0:
263
+ l = null;
264
+ _context3.n = 1;
265
+ return H();
266
+ case 1:
267
+ i && !l && _O();
268
+ case 2:
269
+ return _context3.a(2);
270
+ }
271
+ }, _callee3);
272
+ })), e);
273
+ },
274
+ y = function y() {
275
+ if (N(), !i || !h()) return;
276
+ var e = K(),
277
+ r = tokenRefreshShared.getRefreshPrecheckResult(E());
278
+ e > 0 && r === "access_valid" && (p = window.setTimeout(function () {
279
+ p = null, F();
280
+ }, e)), _O();
281
+ },
282
+ z = function z() {
283
+ var _ref4, _e$maxStartRetry;
284
+ var e = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
285
+ c = _objectSpread(_objectSpread(_objectSpread({}, c), e), {}, {
286
+ refreshScope: e.refreshScope || c.refreshScope || tokenRefreshShared.DEFAULT_REFRESH_SCOPE,
287
+ maxStartRetry: (_ref4 = (_e$maxStartRetry = e.maxStartRetry) !== null && _e$maxStartRetry !== void 0 ? _e$maxStartRetry : c.maxStartRetry) !== null && _ref4 !== void 0 ? _ref4 : I
288
+ });
289
+ },
290
+ Q = function Q() {
291
+ if (i) return true;
292
+ var e = function e() {
293
+ return h() ? (i = true, u = 0, H(), y(), true) : false;
294
+ };
295
+ if (e()) return true;
296
+ u = 0;
297
+ var _r = function r() {
298
+ var _c$maxStartRetry;
299
+ if (u += 1, u > ((_c$maxStartRetry = c.maxStartRetry) !== null && _c$maxStartRetry !== void 0 ? _c$maxStartRetry : I)) {
300
+ R = null, u = 0;
301
+ return;
302
+ }
303
+ e() || (R = window.setTimeout(function () {
304
+ _r();
305
+ }, 500));
306
+ };
307
+ return _r(), false;
308
+ },
309
+ w = function w() {
310
+ i = false, N(), tokenRefreshShared.clearRefreshState(o()), u = 0;
311
+ },
312
+ V = function V() {
313
+ return {
314
+ started: i,
315
+ tokenReady: h(),
316
+ accessTokenExpiredAt: T(),
317
+ refreshTokenExpiredAt: C(),
318
+ refreshScope: o()
319
+ };
320
+ };
321
+ exports.applyRefreshedToken = W;
322
+ exports.configureAccessTokenAutoRefresh = z;
323
+ exports.getAccessTokenAutoRefreshState = V;
324
+ exports.startAccessTokenAutoRefresh = Q;
325
+ exports.stopAccessTokenAutoRefresh = w;
@@ -0,0 +1,20 @@
1
+ import { RefreshDataType } from '@das-fed/upf-utils/create-api-service/token-refresh-shared';
2
+
3
+ export interface AccessTokenAutoRefreshOptions {
4
+ refreshScope?: string;
5
+ maxStartRetry?: number;
6
+ onTokenApplied?: (data: RefreshDataType) => void;
7
+ redirectToLogin?: () => void;
8
+ }
9
+ export declare const applyRefreshedToken: (data: RefreshDataType) => void;
10
+ export declare const configureAccessTokenAutoRefresh: (options?: AccessTokenAutoRefreshOptions) => void;
11
+ export declare const startAccessTokenAutoRefresh: () => boolean;
12
+ export declare const stopAccessTokenAutoRefresh: () => void;
13
+ export declare const getAccessTokenAutoRefreshState: () => {
14
+ started: boolean;
15
+ tokenReady: any;
16
+ accessTokenExpiredAt: any;
17
+ refreshTokenExpiredAt: any;
18
+ refreshScope: any;
19
+ };
20
+ export type { RefreshDataType };
@@ -0,0 +1,182 @@
1
+ import { setAccessToken as P, getAccessTokenInfo as _, getAccessToken as M } from "@das-fed/upf-utils/token-tools";
2
+ import { toTimestamp as x, DEFAULT_REFRESH_SCOPE as d, clearRefreshState as J, getRefreshPrecheckResult as A, rejectRefreshResult as g, CHECK_BUFFER_TIME as L, startRefreshPending as U, waitRefreshResult as b, refreshTokenWithRetry as v, MAX_RETRIES as D, RETRY_DELAY as Y, resolveRefreshResult as B } from "@das-fed/upf-utils/create-api-service/token-refresh-shared";
3
+ const I = 5;
4
+ let p = null, l = null, R = null, i = !1, u = 0, c = {
5
+ refreshScope: d,
6
+ maxStartRetry: I
7
+ };
8
+ const X = (e) => {
9
+ if (!e) return null;
10
+ try {
11
+ return JSON.parse(e);
12
+ } catch {
13
+ return null;
14
+ }
15
+ }, o = () => c.refreshScope || d, S = () => X(_("tokenInfo")) || {}, T = () => {
16
+ const e = _("accessTokenExpiredAt"), r = S();
17
+ return x((r == null ? void 0 : r.accessExp) || (r == null ? void 0 : r.accessTokenExpiredAt) || e);
18
+ }, m = () => {
19
+ const e = S();
20
+ return String((e == null ? void 0 : e.refreshToken) || _("refreshToken") || "").trim();
21
+ }, C = () => {
22
+ const e = S();
23
+ return x(e == null ? void 0 : e.refreshExp);
24
+ }, E = () => ({
25
+ accessToken: M(),
26
+ refreshToken: m(),
27
+ accessExp: T(),
28
+ refreshExp: C(),
29
+ accessTokenExpiredAt: T()
30
+ }), h = () => {
31
+ const e = M(), r = T(), s = m();
32
+ return !!(e && r > 0 && s);
33
+ }, N = () => {
34
+ p && (clearTimeout(p), p = null), l && (clearTimeout(l), l = null), R && (clearTimeout(R), R = null);
35
+ }, j = () => {
36
+ var e;
37
+ try {
38
+ const r = "/login";
39
+ if (location.pathname === r) return;
40
+ if (window.sessionStorage.clear(), window.localStorage.clear(), window.__isAutoCloseApp = !1, (e = window.top) != null && e.vueRouter) {
41
+ window.top.vueRouter.replace(r);
42
+ return;
43
+ }
44
+ window.location.replace(`/#${r}`);
45
+ } catch {
46
+ window.location.replace("/#/login");
47
+ }
48
+ }, a = () => {
49
+ w(), (c.redirectToLogin || j)();
50
+ }, G = () => {
51
+ const e = T();
52
+ if (!e) return 60 * 1e3;
53
+ const r = e - Date.now(), s = 5 * 60 * 1e3, n = 30 * 60 * 1e3, f = 2 * 60 * 60 * 1e3;
54
+ return r <= s ? 10 * 1e3 : r <= n ? 30 * 1e3 : r <= f ? 2 * 60 * 1e3 : 5 * 60 * 1e3;
55
+ }, K = () => {
56
+ const e = T();
57
+ if (!e) return 0;
58
+ const r = e - Date.now();
59
+ if (r <= L) return -1;
60
+ const s = 5 * 60 * 1e3, n = 30 * 60 * 1e3, f = 2 * 60 * 60 * 1e3;
61
+ let t = L;
62
+ r <= s ? t = 30 * 1e3 : r <= n ? t = 60 * 1e3 : r <= f ? t = 5 * 60 * 1e3 : t = 10 * 60 * 1e3;
63
+ const k = r - t;
64
+ return k > 0 ? k : 0;
65
+ }, W = (e) => {
66
+ var f;
67
+ const r = String((e == null ? void 0 : e.accessToken) || "").trim(), s = String((e == null ? void 0 : e.refreshToken) || "").trim() || m(), n = x((e == null ? void 0 : e.accessExp) || (e == null ? void 0 : e.accessTokenExpiredAt));
68
+ if (!(!r || !n)) {
69
+ P(r, { accessTokenExpiredAt: n, refreshToken: s });
70
+ try {
71
+ const t = S(), k = {
72
+ ...t,
73
+ ...e,
74
+ accessToken: r,
75
+ refreshToken: s || (t == null ? void 0 : t.refreshToken) || "",
76
+ accessExp: n,
77
+ accessTokenExpiredAt: n,
78
+ refreshExp: (e == null ? void 0 : e.refreshExp) || x(t == null ? void 0 : t.refreshExp),
79
+ sub: (e == null ? void 0 : e.sub) || (t == null ? void 0 : t.sub),
80
+ tenant: (e == null ? void 0 : e.tenant) || (t == null ? void 0 : t.tenant)
81
+ };
82
+ window.localStorage.setItem("accessTokenExpiredAt", String(n)), s && window.localStorage.setItem("refreshToken", s), window.sessionStorage.setItem("currentUser", JSON.stringify({ token: r })), window.localStorage.setItem("tokenInfo", JSON.stringify(k)), (f = c.onTokenApplied) == null || f.call(c, k);
83
+ } catch {
84
+ }
85
+ }
86
+ }, F = async () => {
87
+ if (!i) return;
88
+ if (!h()) {
89
+ w();
90
+ return;
91
+ }
92
+ const e = m();
93
+ if (!e) return;
94
+ const r = A(E());
95
+ if (r === "access_valid") {
96
+ y();
97
+ return;
98
+ }
99
+ if (r === "refresh_expired") {
100
+ g("Refresh token expired", o()), a();
101
+ return;
102
+ }
103
+ try {
104
+ if (!U(o())) {
105
+ await b(o());
106
+ return;
107
+ }
108
+ const s = await v(e, D, Y), n = {
109
+ ...s,
110
+ refreshToken: (s == null ? void 0 : s.refreshToken) || e,
111
+ refreshExp: (s == null ? void 0 : s.refreshExp) || C(),
112
+ accessTokenExpiredAt: x((s == null ? void 0 : s.accessTokenExpiredAt) || (s == null ? void 0 : s.accessExp))
113
+ };
114
+ n != null && n.accessToken && (n != null && n.accessExp) && W(n), B(n, o()), y();
115
+ } catch (s) {
116
+ if (g(s, o()), A(E()) === "refresh_expired") {
117
+ a();
118
+ return;
119
+ }
120
+ w();
121
+ }
122
+ }, H = async () => {
123
+ if (!h()) {
124
+ w();
125
+ return;
126
+ }
127
+ const e = A(E());
128
+ if (e === "refresh_expired") {
129
+ g("Refresh token expired", o()), a();
130
+ return;
131
+ }
132
+ e === "need_refresh" && await F();
133
+ }, O = () => {
134
+ if (!i || !h()) return;
135
+ const e = G();
136
+ l = window.setTimeout(async () => {
137
+ l = null, await H(), i && !l && O();
138
+ }, e);
139
+ }, y = () => {
140
+ if (N(), !i || !h()) return;
141
+ const e = K(), r = A(E());
142
+ e > 0 && r === "access_valid" && (p = window.setTimeout(() => {
143
+ p = null, F();
144
+ }, e)), O();
145
+ }, z = (e = {}) => {
146
+ c = {
147
+ ...c,
148
+ ...e,
149
+ refreshScope: e.refreshScope || c.refreshScope || d,
150
+ maxStartRetry: e.maxStartRetry ?? c.maxStartRetry ?? I
151
+ };
152
+ }, Q = () => {
153
+ if (i) return !0;
154
+ const e = () => h() ? (i = !0, u = 0, H(), y(), !0) : !1;
155
+ if (e()) return !0;
156
+ u = 0;
157
+ const r = () => {
158
+ if (u += 1, u > (c.maxStartRetry ?? I)) {
159
+ R = null, u = 0;
160
+ return;
161
+ }
162
+ e() || (R = window.setTimeout(() => {
163
+ r();
164
+ }, 500));
165
+ };
166
+ return r(), !1;
167
+ }, w = () => {
168
+ i = !1, N(), J(o()), u = 0;
169
+ }, V = () => ({
170
+ started: i,
171
+ tokenReady: h(),
172
+ accessTokenExpiredAt: T(),
173
+ refreshTokenExpiredAt: C(),
174
+ refreshScope: o()
175
+ });
176
+ export {
177
+ W as applyRefreshedToken,
178
+ z as configureAccessTokenAutoRefresh,
179
+ V as getAccessTokenAutoRefreshState,
180
+ Q as startAccessTokenAutoRefresh,
181
+ w as stopAccessTokenAutoRefresh
182
+ };