@bifold/core 3.0.0 → 3.0.1

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 (198) hide show
  1. package/lib/commonjs/components/buttons/Button.js +2 -6
  2. package/lib/commonjs/components/buttons/Button.js.map +1 -1
  3. package/lib/commonjs/components/inputs/BiometryControl.js +29 -5
  4. package/lib/commonjs/components/inputs/BiometryControl.js.map +1 -1
  5. package/lib/commonjs/components/listItems/NotificationListItem.js +5 -1
  6. package/lib/commonjs/components/listItems/NotificationListItem.js.map +1 -1
  7. package/lib/commonjs/components/modals/ConfirmPINModal.js +0 -1
  8. package/lib/commonjs/components/modals/ConfirmPINModal.js.map +1 -1
  9. package/lib/commonjs/components/views/KeyboardView.js +5 -3
  10. package/lib/commonjs/components/views/KeyboardView.js.map +1 -1
  11. package/lib/commonjs/components/views/ScreenWrapper.js +9 -5
  12. package/lib/commonjs/components/views/ScreenWrapper.js.map +1 -1
  13. package/lib/commonjs/container-impl.js +4 -2
  14. package/lib/commonjs/container-impl.js.map +1 -1
  15. package/lib/commonjs/contexts/auth.js +47 -45
  16. package/lib/commonjs/contexts/auth.js.map +1 -1
  17. package/lib/commonjs/hooks/notifications.js +4 -2
  18. package/lib/commonjs/hooks/notifications.js.map +1 -1
  19. package/lib/commonjs/hooks/useBifoldAgentSetup.js +4 -13
  20. package/lib/commonjs/hooks/useBifoldAgentSetup.js.map +1 -1
  21. package/lib/commonjs/index.js +9 -1
  22. package/lib/commonjs/index.js.map +1 -1
  23. package/lib/commonjs/localization/en/en.json +7 -0
  24. package/lib/commonjs/localization/fr/fr.json +7 -0
  25. package/lib/commonjs/localization/pt-br/pt-br.json +7 -0
  26. package/lib/commonjs/modules/openid/context/OpenIDCredentialRecordProvider.js +27 -27
  27. package/lib/commonjs/modules/openid/context/OpenIDCredentialRecordProvider.js.map +1 -1
  28. package/lib/commonjs/modules/openid/credentialRecord.js +114 -0
  29. package/lib/commonjs/modules/openid/credentialRecord.js.map +1 -0
  30. package/lib/commonjs/modules/openid/display.js +0 -3
  31. package/lib/commonjs/modules/openid/display.js.map +1 -1
  32. package/lib/commonjs/modules/openid/hooks/openid.js +6 -8
  33. package/lib/commonjs/modules/openid/hooks/openid.js.map +1 -1
  34. package/lib/commonjs/modules/openid/hooks/useAcceptReplacement.js +16 -19
  35. package/lib/commonjs/modules/openid/hooks/useAcceptReplacement.js.map +1 -1
  36. package/lib/commonjs/modules/openid/hooks/useDeclineReplacement.js +1 -10
  37. package/lib/commonjs/modules/openid/hooks/useDeclineReplacement.js.map +1 -1
  38. package/lib/commonjs/modules/openid/hooks/useExpiredNotifications.js +1 -1
  39. package/lib/commonjs/modules/openid/hooks/useExpiredNotifications.js.map +1 -1
  40. package/lib/commonjs/modules/openid/hooks/useUpgradeExpiredCredential.js +8 -42
  41. package/lib/commonjs/modules/openid/hooks/useUpgradeExpiredCredential.js.map +1 -1
  42. package/lib/commonjs/modules/openid/metadata.js +2 -0
  43. package/lib/commonjs/modules/openid/metadata.js.map +1 -1
  44. package/lib/commonjs/modules/openid/offerResolve.js +34 -58
  45. package/lib/commonjs/modules/openid/offerResolve.js.map +1 -1
  46. package/lib/commonjs/modules/openid/refresh/operations.js +37 -0
  47. package/lib/commonjs/modules/openid/refresh/operations.js.map +1 -0
  48. package/lib/commonjs/modules/openid/refresh/reIssuance.js +7 -10
  49. package/lib/commonjs/modules/openid/refresh/reIssuance.js.map +1 -1
  50. package/lib/commonjs/modules/openid/refresh/refreshOrchestrator.js +46 -62
  51. package/lib/commonjs/modules/openid/refresh/refreshOrchestrator.js.map +1 -1
  52. package/lib/commonjs/modules/openid/refresh/refreshToken.js +12 -12
  53. package/lib/commonjs/modules/openid/refresh/refreshToken.js.map +1 -1
  54. package/lib/commonjs/modules/openid/refresh/registry.js +1 -1
  55. package/lib/commonjs/modules/openid/refresh/registry.js.map +1 -1
  56. package/lib/commonjs/modules/openid/refresh/types.js +11 -1
  57. package/lib/commonjs/modules/openid/refresh/types.js.map +1 -1
  58. package/lib/commonjs/modules/openid/refresh/verifyCredentialStatus.js +6 -6
  59. package/lib/commonjs/modules/openid/refresh/verifyCredentialStatus.js.map +1 -1
  60. package/lib/commonjs/modules/openid/resolverProof.js +5 -102
  61. package/lib/commonjs/modules/openid/resolverProof.js.map +1 -1
  62. package/lib/commonjs/modules/openid/screens/OpenIDConnection.js +11 -23
  63. package/lib/commonjs/modules/openid/screens/OpenIDConnection.js.map +1 -1
  64. package/lib/commonjs/navigators/TabStack.js +5 -3
  65. package/lib/commonjs/navigators/TabStack.js.map +1 -1
  66. package/lib/commonjs/screens/Home.js +1 -1
  67. package/lib/commonjs/screens/Home.js.map +1 -1
  68. package/lib/commonjs/screens/Settings.js +1 -1
  69. package/lib/commonjs/screens/Settings.js.map +1 -1
  70. package/lib/commonjs/utils/agent.js +3 -3
  71. package/lib/commonjs/utils/agent.js.map +1 -1
  72. package/lib/commonjs/utils/helpers.js +0 -2
  73. package/lib/commonjs/utils/helpers.js.map +1 -1
  74. package/lib/module/components/buttons/Button.js +4 -7
  75. package/lib/module/components/buttons/Button.js.map +1 -1
  76. package/lib/module/components/inputs/BiometryControl.js +30 -6
  77. package/lib/module/components/inputs/BiometryControl.js.map +1 -1
  78. package/lib/module/components/listItems/NotificationListItem.js +5 -1
  79. package/lib/module/components/listItems/NotificationListItem.js.map +1 -1
  80. package/lib/module/components/modals/ConfirmPINModal.js +0 -1
  81. package/lib/module/components/modals/ConfirmPINModal.js.map +1 -1
  82. package/lib/module/components/views/KeyboardView.js +6 -4
  83. package/lib/module/components/views/KeyboardView.js.map +1 -1
  84. package/lib/module/components/views/ScreenWrapper.js +9 -5
  85. package/lib/module/components/views/ScreenWrapper.js.map +1 -1
  86. package/lib/module/container-impl.js +4 -2
  87. package/lib/module/container-impl.js.map +1 -1
  88. package/lib/module/contexts/auth.js +47 -44
  89. package/lib/module/contexts/auth.js.map +1 -1
  90. package/lib/module/hooks/notifications.js +4 -2
  91. package/lib/module/hooks/notifications.js.map +1 -1
  92. package/lib/module/hooks/useBifoldAgentSetup.js +4 -13
  93. package/lib/module/hooks/useBifoldAgentSetup.js.map +1 -1
  94. package/lib/module/index.js +1 -0
  95. package/lib/module/index.js.map +1 -1
  96. package/lib/module/localization/en/en.json +7 -0
  97. package/lib/module/localization/fr/fr.json +7 -0
  98. package/lib/module/localization/pt-br/pt-br.json +7 -0
  99. package/lib/module/modules/openid/context/OpenIDCredentialRecordProvider.js +28 -28
  100. package/lib/module/modules/openid/context/OpenIDCredentialRecordProvider.js.map +1 -1
  101. package/lib/module/modules/openid/credentialRecord.js +98 -0
  102. package/lib/module/modules/openid/credentialRecord.js.map +1 -0
  103. package/lib/module/modules/openid/display.js +0 -3
  104. package/lib/module/modules/openid/display.js.map +1 -1
  105. package/lib/module/modules/openid/hooks/openid.js +6 -8
  106. package/lib/module/modules/openid/hooks/openid.js.map +1 -1
  107. package/lib/module/modules/openid/hooks/useAcceptReplacement.js +16 -19
  108. package/lib/module/modules/openid/hooks/useAcceptReplacement.js.map +1 -1
  109. package/lib/module/modules/openid/hooks/useDeclineReplacement.js +2 -11
  110. package/lib/module/modules/openid/hooks/useDeclineReplacement.js.map +1 -1
  111. package/lib/module/modules/openid/hooks/useExpiredNotifications.js +1 -1
  112. package/lib/module/modules/openid/hooks/useExpiredNotifications.js.map +1 -1
  113. package/lib/module/modules/openid/hooks/useUpgradeExpiredCredential.js +8 -42
  114. package/lib/module/modules/openid/hooks/useUpgradeExpiredCredential.js.map +1 -1
  115. package/lib/module/modules/openid/metadata.js +3 -1
  116. package/lib/module/modules/openid/metadata.js.map +1 -1
  117. package/lib/module/modules/openid/offerResolve.js +34 -58
  118. package/lib/module/modules/openid/offerResolve.js.map +1 -1
  119. package/lib/module/modules/openid/refresh/operations.js +31 -0
  120. package/lib/module/modules/openid/refresh/operations.js.map +1 -0
  121. package/lib/module/modules/openid/refresh/reIssuance.js +7 -10
  122. package/lib/module/modules/openid/refresh/reIssuance.js.map +1 -1
  123. package/lib/module/modules/openid/refresh/refreshOrchestrator.js +48 -63
  124. package/lib/module/modules/openid/refresh/refreshOrchestrator.js.map +1 -1
  125. package/lib/module/modules/openid/refresh/refreshToken.js +12 -12
  126. package/lib/module/modules/openid/refresh/refreshToken.js.map +1 -1
  127. package/lib/module/modules/openid/refresh/registry.js +1 -1
  128. package/lib/module/modules/openid/refresh/registry.js.map +1 -1
  129. package/lib/module/modules/openid/refresh/types.js +11 -0
  130. package/lib/module/modules/openid/refresh/types.js.map +1 -1
  131. package/lib/module/modules/openid/refresh/verifyCredentialStatus.js +6 -6
  132. package/lib/module/modules/openid/refresh/verifyCredentialStatus.js.map +1 -1
  133. package/lib/module/modules/openid/resolverProof.js +5 -98
  134. package/lib/module/modules/openid/resolverProof.js.map +1 -1
  135. package/lib/module/modules/openid/screens/OpenIDConnection.js +11 -23
  136. package/lib/module/modules/openid/screens/OpenIDConnection.js.map +1 -1
  137. package/lib/module/navigators/TabStack.js +5 -3
  138. package/lib/module/navigators/TabStack.js.map +1 -1
  139. package/lib/module/screens/Home.js +1 -1
  140. package/lib/module/screens/Home.js.map +1 -1
  141. package/lib/module/screens/Settings.js +1 -1
  142. package/lib/module/screens/Settings.js.map +1 -1
  143. package/lib/module/utils/agent.js +3 -3
  144. package/lib/module/utils/agent.js.map +1 -1
  145. package/lib/module/utils/helpers.js +0 -2
  146. package/lib/module/utils/helpers.js.map +1 -1
  147. package/lib/typescript/src/components/buttons/Button.d.ts +3 -2
  148. package/lib/typescript/src/components/buttons/Button.d.ts.map +1 -1
  149. package/lib/typescript/src/components/inputs/BiometryControl.d.ts.map +1 -1
  150. package/lib/typescript/src/components/listItems/NotificationListItem.d.ts.map +1 -1
  151. package/lib/typescript/src/components/modals/ConfirmPINModal.d.ts.map +1 -1
  152. package/lib/typescript/src/components/views/KeyboardView.d.ts +3 -2
  153. package/lib/typescript/src/components/views/KeyboardView.d.ts.map +1 -1
  154. package/lib/typescript/src/components/views/ScreenWrapper.d.ts +5 -1
  155. package/lib/typescript/src/components/views/ScreenWrapper.d.ts.map +1 -1
  156. package/lib/typescript/src/container-impl.d.ts.map +1 -1
  157. package/lib/typescript/src/contexts/auth.d.ts +0 -1
  158. package/lib/typescript/src/contexts/auth.d.ts.map +1 -1
  159. package/lib/typescript/src/hooks/notifications.d.ts.map +1 -1
  160. package/lib/typescript/src/hooks/useBifoldAgentSetup.d.ts.map +1 -1
  161. package/lib/typescript/src/index.d.ts +1 -0
  162. package/lib/typescript/src/index.d.ts.map +1 -1
  163. package/lib/typescript/src/modules/openid/context/OpenIDCredentialRecordProvider.d.ts +7 -6
  164. package/lib/typescript/src/modules/openid/context/OpenIDCredentialRecordProvider.d.ts.map +1 -1
  165. package/lib/typescript/src/modules/openid/credentialRecord.d.ts +19 -0
  166. package/lib/typescript/src/modules/openid/credentialRecord.d.ts.map +1 -0
  167. package/lib/typescript/src/modules/openid/display.d.ts +2 -3
  168. package/lib/typescript/src/modules/openid/display.d.ts.map +1 -1
  169. package/lib/typescript/src/modules/openid/hooks/openid.d.ts +2 -2
  170. package/lib/typescript/src/modules/openid/hooks/openid.d.ts.map +1 -1
  171. package/lib/typescript/src/modules/openid/hooks/useAcceptReplacement.d.ts +2 -4
  172. package/lib/typescript/src/modules/openid/hooks/useAcceptReplacement.d.ts.map +1 -1
  173. package/lib/typescript/src/modules/openid/hooks/useDeclineReplacement.d.ts.map +1 -1
  174. package/lib/typescript/src/modules/openid/hooks/useUpgradeExpiredCredential.d.ts.map +1 -1
  175. package/lib/typescript/src/modules/openid/metadata.d.ts +9 -8
  176. package/lib/typescript/src/modules/openid/metadata.d.ts.map +1 -1
  177. package/lib/typescript/src/modules/openid/offerResolve.d.ts +9 -15
  178. package/lib/typescript/src/modules/openid/offerResolve.d.ts.map +1 -1
  179. package/lib/typescript/src/modules/openid/refresh/operations.d.ts +13 -0
  180. package/lib/typescript/src/modules/openid/refresh/operations.d.ts.map +1 -0
  181. package/lib/typescript/src/modules/openid/refresh/reIssuance.d.ts +4 -7
  182. package/lib/typescript/src/modules/openid/refresh/reIssuance.d.ts.map +1 -1
  183. package/lib/typescript/src/modules/openid/refresh/refreshOrchestrator.d.ts +2 -5
  184. package/lib/typescript/src/modules/openid/refresh/refreshOrchestrator.d.ts.map +1 -1
  185. package/lib/typescript/src/modules/openid/refresh/refreshToken.d.ts +3 -2
  186. package/lib/typescript/src/modules/openid/refresh/refreshToken.d.ts.map +1 -1
  187. package/lib/typescript/src/modules/openid/refresh/types.d.ts +14 -4
  188. package/lib/typescript/src/modules/openid/refresh/types.d.ts.map +1 -1
  189. package/lib/typescript/src/modules/openid/refresh/verifyCredentialStatus.d.ts +2 -2
  190. package/lib/typescript/src/modules/openid/refresh/verifyCredentialStatus.d.ts.map +1 -1
  191. package/lib/typescript/src/modules/openid/resolverProof.d.ts +2 -21
  192. package/lib/typescript/src/modules/openid/resolverProof.d.ts.map +1 -1
  193. package/lib/typescript/src/modules/openid/screens/OpenIDConnection.d.ts.map +1 -1
  194. package/lib/typescript/src/screens/Home.d.ts.map +1 -1
  195. package/lib/typescript/src/utils/agent.d.ts +3 -1
  196. package/lib/typescript/src/utils/agent.d.ts.map +1 -1
  197. package/lib/typescript/src/utils/helpers.d.ts.map +1 -1
  198. package/package.json +29 -29
@@ -1,42 +1,31 @@
1
1
  // modules/openid/refresh/RefreshOrchestrator.ts
2
- import { ClaimFormat, SdJwtVcRecord, W3cCredentialRecord } from '@credo-ts/core';
3
- import { refreshAccessToken } from './refreshToken';
4
- import { reissueCredentialWithAccessToken } from './reIssuance';
5
- import { RefreshStatus } from './types';
2
+
3
+ import { OpenIDCredentialRefreshFlowType, RefreshStatus } from './types';
6
4
  import { credentialRegistry } from './registry';
7
5
  import { verifyCredentialStatus } from './verifyCredentialStatus';
8
6
  import { getRefreshCredentialMetadata, markOpenIDCredentialStatus, persistCredentialRecord, setRefreshCredentialMetadata } from '../metadata';
9
- const defaultToLite = rec => {
10
- var _rec$createdAt;
11
- return {
12
- id: rec.id,
13
- // best-effort: SdJwt/W3C both expose claimFormat via tags in many setups.
14
- // Fallback to JwtVc if unknown so UI has *some* value.
15
- format: rec instanceof W3cCredentialRecord && ClaimFormat.JwtVc || rec instanceof SdJwtVcRecord && ClaimFormat.SdJwtW3cVc || ClaimFormat.JwtVc,
16
- // TODO: Won't these checks against ClaimFormat always be true?
17
- createdAt: (_rec$createdAt = rec.createdAt) === null || _rec$createdAt === void 0 ? void 0 : _rec$createdAt.toISOString(),
18
- issuer: undefined
19
- };
20
- };
7
+ import { toOpenIDCredentialLite } from '../credentialRecord';
8
+ import { refreshAndQueueReplacement } from './operations';
21
9
  export class RefreshOrchestrator {
22
10
  intervalOn = false; // interval enabled?
23
11
  runningOnce = false; // a run is in progress?
24
12
 
25
13
  recentlyIssued = new Map();
26
- checkStatusOnly = true;
27
14
  constructor(logger, bridge, opts) {
28
15
  this.logger = logger;
29
16
  this.opts = {
30
17
  intervalMs: 15 * 60 * 1000,
31
18
  autoStart: true,
19
+ flowType: OpenIDCredentialRefreshFlowType.FullReplacement,
32
20
  onError: e => this.logger.error(String(e)),
33
21
  listRecords: async () => [],
34
- toLite: defaultToLite,
22
+ toLite: toOpenIDCredentialLite,
35
23
  ...(opts ?? {})
36
24
  };
37
25
  logger.info(`🔧 [RefreshOrchestrator] initialized -> ${JSON.stringify({
38
26
  intervalMs: this.opts.intervalMs,
39
- autoStart: this.opts.autoStart
27
+ autoStart: this.opts.autoStart,
28
+ flowType: this.opts.flowType
40
29
  })}`);
41
30
  bridge.onReady(agent => {
42
31
  this.agent = agent;
@@ -59,7 +48,8 @@ export class RefreshOrchestrator {
59
48
  };
60
49
  this.logger.info(`🔧 [RefreshOrchestrator] configure -> ${JSON.stringify({
61
50
  intervalMs: this.opts.intervalMs,
62
- autoStart: this.opts.autoStart
51
+ autoStart: this.opts.autoStart,
52
+ flowType: this.opts.flowType
63
53
  })}`);
64
54
  const nowIntervalMs = this.opts.intervalMs ?? null;
65
55
  const nowAutoStart = this.opts.autoStart ?? true;
@@ -133,8 +123,11 @@ export class RefreshOrchestrator {
133
123
  for (const rec of records) {
134
124
  // don’t block whole batch if one fails
135
125
  try {
136
- await this.checkRecordStatus(rec);
137
- // await this.refreshRecord(rec)
126
+ if (this.opts.flowType === OpenIDCredentialRefreshFlowType.FullReplacement) {
127
+ await this.refreshRecord(rec);
128
+ } else {
129
+ await this.checkRecordStatus(rec);
130
+ }
138
131
  } catch (e) {
139
132
  var _this$opts$onError, _this$opts;
140
133
  this.logger.error(`💥 [Refresh] record ${rec.id} failed: ${String(e)}`);
@@ -165,6 +158,7 @@ export class RefreshOrchestrator {
165
158
  shouldSkip,
166
159
  markRefreshing,
167
160
  clearRefreshing,
161
+ clearExpired,
168
162
  upsert,
169
163
  markInvalid,
170
164
  setLastSweep
@@ -189,19 +183,22 @@ export class RefreshOrchestrator {
189
183
  this.logger.info(`🧭 [Refresh] check credential ${id}`);
190
184
  try {
191
185
  // 3) verification
192
- const isValid = await verifyCredentialStatus(rec, this.logger);
186
+ const status = await verifyCredentialStatus(rec, this.logger);
193
187
  const now = Date.now();
194
188
  const meta = getRefreshCredentialMetadata(rec) ?? {};
195
- meta.lastCheckResult = isValid ? RefreshStatus.Valid : RefreshStatus.Invalid;
189
+ meta.lastCheckResult = status;
196
190
  meta.lastCheckedAt = now;
197
191
  meta.attemptCount = (meta.attemptCount ?? 0) + 1;
198
192
  setRefreshCredentialMetadata(rec, meta);
199
193
  await persistCredentialRecord(this.agent.context, rec);
200
- if (isValid) {
194
+ if (status === RefreshStatus.Valid) {
201
195
  this.logger.info(`✅ [Refresh] valid → ${id}`);
202
- } else {
196
+ clearExpired(id);
197
+ } else if (status === RefreshStatus.Invalid) {
203
198
  this.logger.info(`❌ [Refresh] invalid → ${id}`);
204
- markInvalid(id); // <-- key change: we only flag invalid here
199
+ markInvalid(id);
200
+ } else {
201
+ this.logger.warn(`⚠️ [Refresh] status check error → ${id}`);
205
202
  }
206
203
  setLastSweep(new Date(now).toISOString());
207
204
  } catch (error) {
@@ -218,9 +215,8 @@ export class RefreshOrchestrator {
218
215
  markRefreshing,
219
216
  clearRefreshing,
220
217
  clearExpired,
221
- markExpiredWithReplacement,
222
- blockAsFailed,
223
218
  blockAsSucceeded,
219
+ markInvalid,
224
220
  upsert
225
221
  } = credentialRegistry.getState();
226
222
  const id = rec.id;
@@ -243,8 +239,8 @@ export class RefreshOrchestrator {
243
239
  this.logger.info(`🧭 [Refresh] check credential ${id}`);
244
240
  try {
245
241
  // 3) verification
246
- const isValid = await verifyCredentialStatus(rec, this.logger);
247
- if (isValid) {
242
+ const status = await verifyCredentialStatus(rec, this.logger);
243
+ if (status === RefreshStatus.Valid) {
248
244
  this.logger.info(`✅ [Refresh] valid → ${id}`);
249
245
  // If it was previously expired for any reason, clear that and block as succeeded
250
246
  clearExpired(id);
@@ -252,6 +248,15 @@ export class RefreshOrchestrator {
252
248
  // blockAsSucceeded(id)
253
249
  return;
254
250
  }
251
+ if (status === RefreshStatus.Error) {
252
+ this.logger.warn(`⚠️ [Refresh] status check failed; deferring re-issue → ${id}`);
253
+ await markOpenIDCredentialStatus({
254
+ credential: rec,
255
+ status: RefreshStatus.Error,
256
+ agentContext: this.agent.context
257
+ });
258
+ return;
259
+ }
255
260
 
256
261
  // Invalid case:
257
262
 
@@ -260,48 +265,28 @@ export class RefreshOrchestrator {
260
265
  status: RefreshStatus.Invalid,
261
266
  agentContext: this.agent.context
262
267
  });
263
-
264
- // 4) needs refresh → get access token
265
268
  this.logger.info(`♻️ [Refresh] invalid, attempting re-issue → ${id}`);
266
- const token = await refreshAccessToken({
267
- logger: this.logger,
268
- cred: rec,
269
- agentContext: this.agent.context
270
- });
271
- if (!token) {
272
- const msg = `no refresh token available`;
273
- this.logger.warn(`⚠️ [Refresh] ${msg} for ${id}`);
274
- blockAsFailed(id, msg);
275
- return;
276
- }
277
-
278
- // 5) re-issue
279
- const newRecord = await reissueCredentialWithAccessToken({
269
+ const newRecord = await refreshAndQueueReplacement({
280
270
  agent: this.agent,
281
271
  logger: this.logger,
282
272
  record: rec,
283
- tokenResponse: token
273
+ toLite: this.opts.toLite
284
274
  });
285
- if (newRecord) {
286
- this.logger.info(`💾 [Refresh] new credential ${newRecord.id}`);
287
- // Queue a replacement for UI/notifications and block the old one as succeeded
288
- markExpiredWithReplacement(id, this.opts.toLite(newRecord));
289
- blockAsSucceeded(id);
290
- this.recentlyIssued.set(newRecord.id, newRecord);
291
- } else {
292
- const msg = `re-issue returned no record`;
275
+ if (!newRecord) {
276
+ const msg = 'credential refresh did not yield a replacement';
293
277
  this.logger.warn(`⚠️ [Refresh] ${msg} for ${id}`);
294
- blockAsFailed(id, msg);
295
- await markOpenIDCredentialStatus({
296
- credential: rec,
297
- status: RefreshStatus.Invalid,
298
- agentContext: this.agent.context
299
- });
278
+ markInvalid(id);
279
+ return;
300
280
  }
281
+ this.logger.info(`💾 [Refresh] new credential → ${newRecord.id}`);
282
+ blockAsSucceeded(id);
283
+ this.recentlyIssued.set(newRecord.id, newRecord);
301
284
  } catch (e) {
285
+ var _this$opts$onError4, _this$opts4;
302
286
  const err = String(e);
303
287
  this.logger.error(`💥 [Refresh] error on ${id}: ${err}`);
304
- blockAsFailed(id, err);
288
+ (_this$opts$onError4 = (_this$opts4 = this.opts).onError) === null || _this$opts$onError4 === void 0 || _this$opts$onError4.call(_this$opts4, e);
289
+ markInvalid(id);
305
290
  } finally {
306
291
  // 6) clear in-flight marker
307
292
  clearRefreshing(id);
@@ -1 +1 @@
1
- {"version":3,"names":["ClaimFormat","SdJwtVcRecord","W3cCredentialRecord","refreshAccessToken","reissueCredentialWithAccessToken","RefreshStatus","credentialRegistry","verifyCredentialStatus","getRefreshCredentialMetadata","markOpenIDCredentialStatus","persistCredentialRecord","setRefreshCredentialMetadata","defaultToLite","rec","_rec$createdAt","id","format","JwtVc","SdJwtW3cVc","createdAt","toISOString","issuer","undefined","RefreshOrchestrator","intervalOn","runningOnce","recentlyIssued","Map","checkStatusOnly","constructor","logger","bridge","opts","intervalMs","autoStart","onError","e","error","String","listRecords","toLite","info","JSON","stringify","onReady","agent","start","configure","next","prev","agentReady","nowIntervalMs","nowAutoStart","stop","isRunning","timer","setInterval","runOnce","clearInterval","reason","_this$agent","warn","isInitialized","records","length","checkRecordStatus","_this$opts$onError","_this$opts","call","_this$opts$onError2","_this$opts2","setIntervalMs","resolveFull","get","shouldSkip","markRefreshing","clearRefreshing","upsert","markInvalid","setLastSweep","getState","isValid","now","Date","meta","lastCheckResult","Valid","Invalid","lastCheckedAt","attemptCount","context","_this$opts$onError3","_this$opts3","refreshRecord","clearExpired","markExpiredWithReplacement","blockAsFailed","blockAsSucceeded","credential","status","agentContext","token","cred","msg","newRecord","record","tokenResponse","set","err"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/refreshOrchestrator.ts"],"mappings":"AAAA;AACA,SAAgBA,WAAW,EAAcC,aAAa,EAAEC,mBAAmB,QAA+B,gBAAgB;AAE1H,SAASC,kBAAkB,QAAQ,gBAAgB;AACnD,SAASC,gCAAgC,QAAQ,cAAc;AAC/D,SAAmFC,aAAa,QAAQ,SAAS;AAEjH,SAASC,kBAAkB,QAAQ,YAAY;AAC/C,SAASC,sBAAsB,QAAQ,0BAA0B;AACjE,SACEC,4BAA4B,EAC5BC,0BAA0B,EAC1BC,uBAAuB,EACvBC,4BAA4B,QACvB,aAAa;AAIpB,MAAMC,aAAa,GAAIC,GAAY;EAAA,IAAAC,cAAA;EAAA,OAAM;IACvCC,EAAE,EAAEF,GAAG,CAACE,EAAE;IACV;IACA;IACAC,MAAM,EACHH,GAAG,YAAYX,mBAAmB,IAAIF,WAAW,CAACiB,KAAK,IACvDJ,GAAG,YAAYZ,aAAa,IAAID,WAAW,CAACkB,UAAW,IACxDlB,WAAW,CAACiB,KAAK;IAAE;IACrBE,SAAS,GAAAL,cAAA,GAAED,GAAG,CAACM,SAAS,cAAAL,cAAA,uBAAbA,cAAA,CAAeM,WAAW,CAAC,CAAC;IACvCC,MAAM,EAAEC;EACV,CAAC;AAAA,CAAC;AAEF,OAAO,MAAMC,mBAAmB,CAAiC;EAEvDC,UAAU,GAAG,KAAK,EAAC;EACnBC,WAAW,GAAG,KAAK,EAAC;;EAGXC,cAAc,GAAG,IAAIC,GAAG,CAAkB,CAAC;EAC3CC,eAAe,GAAG,IAAI;EAEhCC,WAAWA,CAAkBC,MAAoB,EAAEC,MAAmB,EAAEC,IAA8B,EAAE;IAAA,KAA3EF,MAAoB,GAApBA,MAAoB;IACtD,IAAI,CAACE,IAAI,GAAG;MACVC,UAAU,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;MAC1BC,SAAS,EAAE,IAAI;MACfC,OAAO,EAAGC,CAAC,IAAK,IAAI,CAACN,MAAM,CAACO,KAAK,CAACC,MAAM,CAACF,CAAC,CAAC,CAAC;MAC5CG,WAAW,EAAE,MAAAA,CAAA,KAAY,EAAE;MAC3BC,MAAM,EAAE5B,aAAa;MACrB,IAAIoB,IAAI,IAAI,CAAC,CAAC;IAChB,CAAC;IAEDF,MAAM,CAACW,IAAI,CACT,2CAA2CC,IAAI,CAACC,SAAS,CAAC;MACxDV,UAAU,EAAE,IAAI,CAACD,IAAI,CAACC,UAAU;MAChCC,SAAS,EAAE,IAAI,CAACF,IAAI,CAACE;IACvB,CAAC,CAAC,EACJ,CAAC;IAEDH,MAAM,CAACa,OAAO,CAAEC,KAAK,IAAK;MACxB,IAAI,CAACA,KAAK,GAAGA,KAAK;MAClB,IAAI,CAACf,MAAM,CAACW,IAAI,CAAC,sCAAsC,CAAC;MACxD,IAAI,IAAI,CAACT,IAAI,CAACE,SAAS,IAAI,IAAI,CAACF,IAAI,CAACC,UAAU,EAAE,IAAI,CAACa,KAAK,CAAC,CAAC;IAC/D,CAAC,EAAE,IAAI,CAAC;EACV;EAEOC,SAASA,CAACC,IAAsC,EAAE;IACvD,MAAMC,IAAI,GAAG;MACXzB,UAAU,EAAE,IAAI,CAACA,UAAU;MAC3BS,UAAU,EAAE,IAAI,CAACD,IAAI,CAACC,UAAU,IAAI,IAAI;MACxCC,SAAS,EAAE,IAAI,CAACF,IAAI,CAACE,SAAS,IAAI,IAAI;MACtCgB,UAAU,EAAE,CAAC,CAAC,IAAI,CAACL;IACrB,CAAC;;IAED;IACA,IAAI,CAACb,IAAI,GAAG;MAAE,GAAG,IAAI,CAACA,IAAI;MAAE,GAAGgB;IAAK,CAAC;IAErC,IAAI,CAAClB,MAAM,CAACW,IAAI,CACd,yCAAyCC,IAAI,CAACC,SAAS,CAAC;MACtDV,UAAU,EAAE,IAAI,CAACD,IAAI,CAACC,UAAU;MAChCC,SAAS,EAAE,IAAI,CAACF,IAAI,CAACE;IACvB,CAAC,CAAC,EACJ,CAAC;IAED,MAAMiB,aAAa,GAAG,IAAI,CAACnB,IAAI,CAACC,UAAU,IAAI,IAAI;IAClD,MAAMmB,YAAY,GAAG,IAAI,CAACpB,IAAI,CAACE,SAAS,IAAI,IAAI;;IAEhD;IACA,IAAIe,IAAI,CAACzB,UAAU,IAAIyB,IAAI,CAAChB,UAAU,KAAKkB,aAAa,EAAE;MACxD,IAAI,CAACE,IAAI,CAAC,CAAC;MACX,IAAIF,aAAa,EAAE,IAAI,CAACL,KAAK,CAAC,CAAC;MAC/B;IACF;;IAEA;IACA,IAAIG,IAAI,CAACzB,UAAU,IAAI2B,aAAa,KAAK,IAAI,EAAE;MAC7C,IAAI,CAACE,IAAI,CAAC,CAAC;MACX;IACF;;IAEA;IACA;IACA;IACA,IAAI,CAACJ,IAAI,CAACzB,UAAU,IAAI2B,aAAa,IAAIC,YAAY,EAAE;MACrD;MACA,IAAI,IAAI,CAACP,KAAK,EAAE,IAAI,CAACC,KAAK,CAAC,CAAC;MAC5B;MACA;IACF;;IAEA;IACA,IAAI,CAACG,IAAI,CAACzB,UAAU,IAAI,CAACyB,IAAI,CAACf,SAAS,IAAIkB,YAAY,IAAID,aAAa,EAAE;MACxE,IAAI,IAAI,CAACN,KAAK,EAAE,IAAI,CAACC,KAAK,CAAC,CAAC;MAC5B;MACA;IACF;;IAEA;EACF;EAEOQ,SAASA,CAAA,EAAG;IACjB,OAAO,IAAI,CAAC7B,WAAW;EACzB;EAEOqB,KAAKA,CAAA,EAAG;IACb,IAAI,IAAI,CAACtB,UAAU,IAAI,CAAC,IAAI,CAACQ,IAAI,CAACC,UAAU,EAAE;IAC9C,IAAI,CAACH,MAAM,CAACW,IAAI,CAAC,yCAAyC,CAAC;IAC3D,IAAI,CAACjB,UAAU,GAAG,IAAI;IACtB,IAAI,CAAC+B,KAAK,GAAGC,WAAW,CAAC,MAAM;MAC7B;MACA,KAAK,IAAI,CAACC,OAAO,CAAC,UAAU,CAAC;IAC/B,CAAC,EAAE,IAAI,CAACzB,IAAI,CAACC,UAAU,CAAC;EAC1B;EAEOoB,IAAIA,CAAA,EAAG;IACZ,IAAI,CAAC,IAAI,CAAC7B,UAAU,EAAE;IACtB,IAAI,CAACM,MAAM,CAACW,IAAI,CAAC,wCAAwC,CAAC;IAC1DiB,aAAa,CAAC,IAAI,CAACH,KAAM,CAAC;IAC1B,IAAI,CAACA,KAAK,GAAGjC,SAAS;IACtB,IAAI,CAACE,UAAU,GAAG,KAAK;EACzB;EAEA,MAAaiC,OAAOA,CAACE,MAAM,GAAG,QAAQ,EAAE;IAAA,IAAAC,WAAA;IACtC,IAAI,IAAI,CAACnC,WAAW,EAAE;MACpB,IAAI,CAACK,MAAM,CAAC+B,IAAI,CAAC,2DAA2D,CAAC;MAC7E;IACF;IACA,IAAI,CAAC,IAAI,CAAChB,KAAK,IAAI,GAAAe,WAAA,GAAC,IAAI,CAACf,KAAK,cAAAe,WAAA,eAAVA,WAAA,CAAYE,aAAa,GAAE;MAC7C,IAAI,CAAChC,MAAM,CAAC+B,IAAI,CAAC,2DAA2D,CAAC;MAC7E;IACF;IAEA,IAAI,CAACpC,WAAW,GAAG,IAAI;IACvB,IAAI,CAACK,MAAM,CAACW,IAAI,CAAC,qCAAqCkB,MAAM,GAAG,CAAC;IAEhE,IAAI;MACF,MAAMI,OAAO,GAAG,MAAM,IAAI,CAAC/B,IAAI,CAACO,WAAW,CAAC,CAAC;MAC7C,IAAI,CAACT,MAAM,CAACW,IAAI,CAAC,sBAAsBsB,OAAO,CAACC,MAAM,qBAAqB,CAAC;MAC3E,KAAK,MAAMnD,GAAG,IAAIkD,OAAO,EAAe;QACtC;QACA,IAAI;UACF,MAAM,IAAI,CAACE,iBAAiB,CAACpD,GAAG,CAAC;UACjC;QACF,CAAC,CAAC,OAAOuB,CAAC,EAAE;UAAA,IAAA8B,kBAAA,EAAAC,UAAA;UACV,IAAI,CAACrC,MAAM,CAACO,KAAK,CAAC,uBAAuBxB,GAAG,CAACE,EAAE,YAAYuB,MAAM,CAACF,CAAC,CAAC,EAAE,CAAC;UACvE,CAAA8B,kBAAA,IAAAC,UAAA,OAAI,CAACnC,IAAI,EAACG,OAAO,cAAA+B,kBAAA,eAAjBA,kBAAA,CAAAE,IAAA,CAAAD,UAAA,EAAoB/B,CAAC,CAAC;QACxB;MACF;MACA,IAAI,CAACN,MAAM,CAACW,IAAI,CAAC,2BAA2B,CAAC;IAC/C,CAAC,CAAC,OAAOL,CAAC,EAAE;MAAA,IAAAiC,mBAAA,EAAAC,WAAA;MACV,IAAI,CAACxC,MAAM,CAACO,KAAK,CAAC,8BAA8BC,MAAM,CAACF,CAAC,CAAC,EAAE,CAAC;MAC5D,CAAAiC,mBAAA,IAAAC,WAAA,OAAI,CAACtC,IAAI,EAACG,OAAO,cAAAkC,mBAAA,eAAjBA,mBAAA,CAAAD,IAAA,CAAAE,WAAA,EAAoBlC,CAAC,CAAC;IACxB,CAAC,SAAS;MACR,IAAI,CAACX,WAAW,GAAG,KAAK;IAC1B;EACF;EAEO8C,aAAaA,CAACtC,UAAyB,EAAE;IAC9C,IAAI,CAACc,SAAS,CAAC;MAAEd;IAAW,CAAC,CAAC;EAChC;EAEOuC,WAAWA,CAACzD,EAAU,EAAuB;IAClD,OAAO,IAAI,CAACW,cAAc,CAAC+C,GAAG,CAAC1D,EAAE,CAAC;EACpC;;EAEA;EACA,MAAckD,iBAAiBA,CAACpD,GAAY,EAAE;IAC5C,MAAM;MAAE6D,UAAU;MAAEC,cAAc;MAAEC,eAAe;MAAEC,MAAM;MAAEC,WAAW;MAAEC;IAAa,CAAC,GACtFzE,kBAAkB,CAAC0E,QAAQ,CAAC,CAAC;IAE/B,MAAMjE,EAAE,GAAGF,GAAG,CAACE,EAAE;IAEjB,IAAI,CAAC,IAAI,CAAC8B,KAAK,EAAE;MACf,IAAI,CAACf,MAAM,CAACO,KAAK,CAAC,iEAAiEtB,EAAE,EAAE,CAAC;MACxF;IACF;;IAEA;IACA,IAAI2D,UAAU,CAAC3D,EAAE,CAAC,EAAE;MAClB,IAAI,CAACe,MAAM,CAACW,IAAI,CAAC,gCAAgC1B,EAAE,8BAA8B,CAAC;MAClF;IACF;;IAEA;IACA8D,MAAM,CAAC,IAAI,CAAC7C,IAAI,CAACQ,MAAM,CAAC3B,GAAG,CAAC,CAAC;;IAE7B;IACA8D,cAAc,CAAC5D,EAAE,CAAC;IAClB,IAAI,CAACe,MAAM,CAACW,IAAI,CAAC,iCAAiC1B,EAAE,EAAE,CAAC;IAEvD,IAAI;MACF;MACA,MAAMkE,OAAO,GAAG,MAAM1E,sBAAsB,CAACM,GAAG,EAAE,IAAI,CAACiB,MAAM,CAAC;MAC9D,MAAMoD,GAAG,GAAGC,IAAI,CAACD,GAAG,CAAC,CAAC;MAEtB,MAAME,IAAI,GAAG5E,4BAA4B,CAACK,GAAG,CAAC,IAAK,CAAC,CAA+B;MACnFuE,IAAI,CAACC,eAAe,GAAGJ,OAAO,GAAG5E,aAAa,CAACiF,KAAK,GAAGjF,aAAa,CAACkF,OAAO;MAC5EH,IAAI,CAACI,aAAa,GAAGN,GAAG;MACxBE,IAAI,CAACK,YAAY,GAAG,CAACL,IAAI,CAACK,YAAY,IAAI,CAAC,IAAI,CAAC;MAChD9E,4BAA4B,CAACE,GAAG,EAAEuE,IAAI,CAAC;MACvC,MAAM1E,uBAAuB,CAAC,IAAI,CAACmC,KAAK,CAAC6C,OAAO,EAAE7E,GAAG,CAAC;MAEtD,IAAIoE,OAAO,EAAE;QACX,IAAI,CAACnD,MAAM,CAACW,IAAI,CAAC,uBAAuB1B,EAAE,EAAE,CAAC;MAC/C,CAAC,MAAM;QACL,IAAI,CAACe,MAAM,CAACW,IAAI,CAAC,yBAAyB1B,EAAE,EAAE,CAAC;QAC/C+D,WAAW,CAAC/D,EAAE,CAAC,EAAC;MAClB;MACAgE,YAAY,CAAC,IAAII,IAAI,CAACD,GAAG,CAAC,CAAC9D,WAAW,CAAC,CAAC,CAAC;IAC3C,CAAC,CAAC,OAAOiB,KAAK,EAAE;MAAA,IAAAsD,mBAAA,EAAAC,WAAA;MACd,IAAI,CAAC9D,MAAM,CAACO,KAAK,CAAC,+BAA+BtB,EAAE,KAAKuB,MAAM,CAACD,KAAK,CAAC,EAAE,CAAC;MACxE,CAAAsD,mBAAA,IAAAC,WAAA,OAAI,CAAC5D,IAAI,EAACG,OAAO,cAAAwD,mBAAA,eAAjBA,mBAAA,CAAAvB,IAAA,CAAAwB,WAAA,EAAoBvD,KAAK,CAAC;IAC5B,CAAC,SAAS;MACRuC,eAAe,CAAC7D,EAAE,CAAC;IACrB;EACF;EAEA,MAAc8E,aAAaA,CAAChF,GAAY,EAAE;IACxC,MAAM;MACJ6D,UAAU;MACVC,cAAc;MACdC,eAAe;MACfkB,YAAY;MACZC,0BAA0B;MAC1BC,aAAa;MACbC,gBAAgB;MAChBpB;IACF,CAAC,GAAGvE,kBAAkB,CAAC0E,QAAQ,CAAC,CAAC;IAEjC,MAAMjE,EAAE,GAAGF,GAAG,CAACE,EAAE;IAEjB,IAAI,CAAC,IAAI,CAAC8B,KAAK,EAAE;MACf,IAAI,CAACf,MAAM,CAACO,KAAK,CAAC,iEAAiEtB,EAAE,EAAE,CAAC;MACxF;IACF;;IAEA;IACA,IAAI2D,UAAU,CAAC3D,EAAE,CAAC,EAAE;MAClB,IAAI,CAACe,MAAM,CAACW,IAAI,CAAC,gCAAgC1B,EAAE,8BAA8B,CAAC;MAClF;IACF;;IAEA;IACA8D,MAAM,CAAC,IAAI,CAAC7C,IAAI,CAACQ,MAAM,CAAC3B,GAAG,CAAC,CAAC;;IAE7B;IACA8D,cAAc,CAAC5D,EAAE,CAAC;IAClB,IAAI,CAACe,MAAM,CAACW,IAAI,CAAC,iCAAiC1B,EAAE,EAAE,CAAC;IAEvD,IAAI;MACF;MACA,MAAMkE,OAAO,GAAG,MAAM1E,sBAAsB,CAACM,GAAG,EAAE,IAAI,CAACiB,MAAM,CAAC;MAC9D,IAAImD,OAAO,EAAE;QACX,IAAI,CAACnD,MAAM,CAACW,IAAI,CAAC,uBAAuB1B,EAAE,EAAE,CAAC;QAC7C;QACA+E,YAAY,CAAC/E,EAAE,CAAC;QAChB;QACA;QACA;MACF;;MAEA;;MAEA,MAAMN,0BAA0B,CAAC;QAC/ByF,UAAU,EAAErF,GAAG;QACfsF,MAAM,EAAE9F,aAAa,CAACkF,OAAO;QAC7Ba,YAAY,EAAE,IAAI,CAACvD,KAAK,CAAC6C;MAC3B,CAAC,CAAC;;MAEF;MACA,IAAI,CAAC5D,MAAM,CAACW,IAAI,CAAC,+CAA+C1B,EAAE,EAAE,CAAC;MACrE,MAAMsF,KAAK,GAAG,MAAMlG,kBAAkB,CAAC;QAAE2B,MAAM,EAAE,IAAI,CAACA,MAAM;QAAEwE,IAAI,EAAEzF,GAAG;QAAEuF,YAAY,EAAE,IAAI,CAACvD,KAAK,CAAC6C;MAAQ,CAAC,CAAC;MAC5G,IAAI,CAACW,KAAK,EAAE;QACV,MAAME,GAAG,GAAG,4BAA4B;QACxC,IAAI,CAACzE,MAAM,CAAC+B,IAAI,CAAC,gBAAgB0C,GAAG,QAAQxF,EAAE,EAAE,CAAC;QACjDiF,aAAa,CAACjF,EAAE,EAAEwF,GAAG,CAAC;QACtB;MACF;;MAEA;MACA,MAAMC,SAAS,GAAG,MAAMpG,gCAAgC,CAAC;QACvDyC,KAAK,EAAE,IAAI,CAACA,KAAK;QACjBf,MAAM,EAAE,IAAI,CAACA,MAAM;QACnB2E,MAAM,EAAE5F,GAAG;QACX6F,aAAa,EAAEL;MACjB,CAAC,CAAC;MAEF,IAAIG,SAAS,EAAE;QACb,IAAI,CAAC1E,MAAM,CAACW,IAAI,CAAC,iCAAiC+D,SAAS,CAACzF,EAAE,EAAE,CAAC;QACjE;QACAgF,0BAA0B,CAAChF,EAAE,EAAE,IAAI,CAACiB,IAAI,CAACQ,MAAM,CAACgE,SAAS,CAAC,CAAC;QAC3DP,gBAAgB,CAAClF,EAAE,CAAC;QACpB,IAAI,CAACW,cAAc,CAACiF,GAAG,CAACH,SAAS,CAACzF,EAAE,EAAEyF,SAAS,CAAC;MAClD,CAAC,MAAM;QACL,MAAMD,GAAG,GAAG,6BAA6B;QACzC,IAAI,CAACzE,MAAM,CAAC+B,IAAI,CAAC,gBAAgB0C,GAAG,QAAQxF,EAAE,EAAE,CAAC;QACjDiF,aAAa,CAACjF,EAAE,EAAEwF,GAAG,CAAC;QACtB,MAAM9F,0BAA0B,CAAC;UAC/ByF,UAAU,EAAErF,GAAG;UACfsF,MAAM,EAAE9F,aAAa,CAACkF,OAAO;UAC7Ba,YAAY,EAAE,IAAI,CAACvD,KAAK,CAAC6C;QAC3B,CAAC,CAAC;MACJ;IACF,CAAC,CAAC,OAAOtD,CAAC,EAAE;MACV,MAAMwE,GAAG,GAAGtE,MAAM,CAACF,CAAC,CAAC;MACrB,IAAI,CAACN,MAAM,CAACO,KAAK,CAAC,yBAAyBtB,EAAE,KAAK6F,GAAG,EAAE,CAAC;MACxDZ,aAAa,CAACjF,EAAE,EAAE6F,GAAG,CAAC;IACxB,CAAC,SAAS;MACR;MACAhC,eAAe,CAAC7D,EAAE,CAAC;IACrB;EACF;AACF","ignoreList":[]}
1
+ {"version":3,"names":["OpenIDCredentialRefreshFlowType","RefreshStatus","credentialRegistry","verifyCredentialStatus","getRefreshCredentialMetadata","markOpenIDCredentialStatus","persistCredentialRecord","setRefreshCredentialMetadata","toOpenIDCredentialLite","refreshAndQueueReplacement","RefreshOrchestrator","intervalOn","runningOnce","recentlyIssued","Map","constructor","logger","bridge","opts","intervalMs","autoStart","flowType","FullReplacement","onError","e","error","String","listRecords","toLite","info","JSON","stringify","onReady","agent","start","configure","next","prev","agentReady","nowIntervalMs","nowAutoStart","stop","isRunning","timer","setInterval","runOnce","clearInterval","undefined","reason","_this$agent","warn","isInitialized","records","length","rec","refreshRecord","checkRecordStatus","_this$opts$onError","_this$opts","id","call","_this$opts$onError2","_this$opts2","setIntervalMs","resolveFull","get","shouldSkip","markRefreshing","clearRefreshing","clearExpired","upsert","markInvalid","setLastSweep","getState","status","now","Date","meta","lastCheckResult","lastCheckedAt","attemptCount","context","Valid","Invalid","toISOString","_this$opts$onError3","_this$opts3","blockAsSucceeded","Error","credential","agentContext","newRecord","record","msg","set","_this$opts$onError4","_this$opts4","err"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/refreshOrchestrator.ts"],"mappings":"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","ignoreList":[]}
@@ -14,20 +14,16 @@ export async function refreshAccessToken({
14
14
  logger.info(`[refreshAccessToken] Found refresh metadata for credential: ${cred.id}`);
15
15
  const {
16
16
  refreshToken,
17
- authServer
17
+ tokenEndpoint
18
18
  } = refreshMetaData;
19
19
  try {
20
- if (!authServer) {
21
- throw new Error('No authorization server found in the credential offer metadata');
20
+ if (!tokenEndpoint) {
21
+ throw new Error('No token endpoint found in the credential offer metadata');
22
22
  }
23
- logger.info(`[refreshAccessToken] Found auth server for credential: ${cred.id}: ${authServer}`);
23
+ logger.info(`[refreshAccessToken] Found token endpoint for credential: ${cred.id}: ${tokenEndpoint}`);
24
24
 
25
25
  // Build token endpoint:
26
- // React-Native-safe URL build
27
- const tokenUrl = authServer.endsWith('/') ? authServer.slice(0, -1) : authServer;
28
- // const tokenUrl = new URL('token', authServer)
29
- // tokenUrl.searchParams.set('force', 'false')
30
-
26
+ const tokenUrl = tokenEndpoint.endsWith('/') ? tokenEndpoint.slice(0, -1) : tokenEndpoint;
31
27
  logger.info(`[refreshAccessToken] Refreshing access token at URL: ${tokenUrl} for credential: ${cred.id}`);
32
28
  const body = new URLSearchParams({
33
29
  grant_type: 'refresh_token',
@@ -45,20 +41,24 @@ export async function refreshAccessToken({
45
41
  },
46
42
  body: body.toString()
47
43
  });
48
- logger.info(`[refreshAccessToken] Response status: ${JSON.stringify(res)}`);
44
+ logger.info(`[refreshAccessToken] Token endpoint response status: ${res.status}`);
49
45
  if (!res.ok) {
50
46
  const errText = await res.text();
51
47
  throw new Error(`Refresh failed ${res.status}: ${errText}`);
52
48
  }
53
49
  const data = await res.json();
54
- logger.info(`[refreshAccessToken] New access token acquired: ${JSON.stringify(data)}`);
50
+ logger.info(`[refreshAccessToken] Token refresh succeeded: ${JSON.stringify({
51
+ token_type: data.token_type,
52
+ expires_in: data.expires_in,
53
+ has_access_token: Boolean(data.access_token),
54
+ has_refresh_token: Boolean(data.refresh_token)
55
+ })}`);
55
56
 
56
57
  // If refresh token rotated, persist it
57
58
  if (data.refresh_token && data.refresh_token !== refreshToken) {
58
59
  logger.info(`[refreshAccessToken] Refresh token rotated; saving new one`);
59
60
  setRefreshCredentialMetadata(cred, {
60
61
  ...refreshMetaData,
61
- authServer: authServer,
62
62
  refreshToken: data.refresh_token
63
63
  });
64
64
  await persistCredentialRecord(agentContext, cred);
@@ -1 +1 @@
1
- {"version":3,"names":["getRefreshCredentialMetadata","persistCredentialRecord","setRefreshCredentialMetadata","refreshAccessToken","logger","cred","agentContext","info","id","refreshMetaData","error","refreshToken","authServer","Error","tokenUrl","endsWith","slice","body","URLSearchParams","grant_type","refresh_token","pre_authorized_code","pre_authorized_code_alt","user_pin","res","fetch","toString","method","headers","accept","JSON","stringify","ok","errText","text","status","data","json"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/refreshToken.ts"],"mappings":"AAGA,SAASA,4BAA4B,EAAEC,uBAAuB,EAAEC,4BAA4B,QAAQ,aAAa;AAEjH,OAAO,eAAeC,kBAAkBA,CAAC;EACvCC,MAAM;EACNC,IAAI;EACJC;AAKF,CAAC,EAAwC;EACvCF,MAAM,CAACG,IAAI,CAAC,4DAA4DF,IAAI,CAACG,EAAE,EAAE,CAAC;EAClF;EACA,MAAMC,eAAe,GAAGT,4BAA4B,CAACK,IAAI,CAAC;EAC1D,IAAI,CAACI,eAAe,EAAE;IACpBL,MAAM,CAACM,KAAK,CAAC,kEAAkEL,IAAI,CAACG,EAAE,EAAE,CAAC;IACzF;EACF;EAEAJ,MAAM,CAACG,IAAI,CAAC,+DAA+DF,IAAI,CAACG,EAAE,EAAE,CAAC;EACrF,MAAM;IAAEG,YAAY;IAAEC;EAAW,CAAC,GAAGH,eAAe;EAEpD,IAAI;IACF,IAAI,CAACG,UAAU,EAAE;MACf,MAAM,IAAIC,KAAK,CAAC,gEAAgE,CAAC;IACnF;IAEAT,MAAM,CAACG,IAAI,CAAC,0DAA0DF,IAAI,CAACG,EAAE,KAAKI,UAAU,EAAE,CAAC;;IAE/F;IACA;IACA,MAAME,QAAQ,GAAIF,UAAU,CAACG,QAAQ,CAAC,GAAG,CAAC,GAAGH,UAAU,CAACI,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAGJ,UAAW;IAClF;IACA;;IAEAR,MAAM,CAACG,IAAI,CAAC,wDAAwDO,QAAQ,oBAAoBT,IAAI,CAACG,EAAE,EAAE,CAAC;IAE1G,MAAMS,IAAI,GAAG,IAAIC,eAAe,CAAC;MAC/BC,UAAU,EAAE,eAAe;MAC3BC,aAAa,EAAET,YAAY;MAC3B;MACAU,mBAAmB,EAAE,EAAE;MACvBC,uBAAuB,EAAE,EAAE;MAC3BC,QAAQ,EAAE;IACZ,CAAC,CAAC;IAEF,MAAMC,GAAG,GAAG,MAAMC,KAAK,CAACX,QAAQ,CAACY,QAAQ,CAAC,CAAC,EAAE;MAC3CC,MAAM,EAAE,MAAM;MACdC,OAAO,EAAE;QACPC,MAAM,EAAE,kBAAkB;QAC1B,cAAc,EAAE;MAClB,CAAC;MACDZ,IAAI,EAAEA,IAAI,CAACS,QAAQ,CAAC;IACtB,CAAC,CAAC;IAEFtB,MAAM,CAACG,IAAI,CAAC,yCAAyCuB,IAAI,CAACC,SAAS,CAACP,GAAG,CAAC,EAAE,CAAC;IAE3E,IAAI,CAACA,GAAG,CAACQ,EAAE,EAAE;MACX,MAAMC,OAAO,GAAG,MAAMT,GAAG,CAACU,IAAI,CAAC,CAAC;MAChC,MAAM,IAAIrB,KAAK,CAAC,kBAAkBW,GAAG,CAACW,MAAM,KAAKF,OAAO,EAAE,CAAC;IAC7D;IAEA,MAAMG,IAAqB,GAAG,MAAMZ,GAAG,CAACa,IAAI,CAAC,CAAC;IAC9CjC,MAAM,CAACG,IAAI,CAAC,mDAAmDuB,IAAI,CAACC,SAAS,CAACK,IAAI,CAAC,EAAE,CAAC;;IAEtF;IACA,IAAIA,IAAI,CAAChB,aAAa,IAAIgB,IAAI,CAAChB,aAAa,KAAKT,YAAY,EAAE;MAC7DP,MAAM,CAACG,IAAI,CAAC,4DAA4D,CAAC;MACzEL,4BAA4B,CAACG,IAAI,EAAE;QACjC,GAAGI,eAAe;QAClBG,UAAU,EAAEA,UAAU;QACtBD,YAAY,EAAEyB,IAAI,CAAChB;MACrB,CAAC,CAAC;MAEF,MAAMnB,uBAAuB,CAACK,YAAY,EAAED,IAAI,CAAC;IACnD;IAEA,OAAO+B,IAAI;EACb,CAAC,CAAC,OAAO1B,KAAK,EAAE;IACdN,MAAM,CAACM,KAAK,CAAC,iDAAiDA,KAAK,EAAE,CAAC;IACtE,MAAMA,KAAK;EACb;AACF","ignoreList":[]}
1
+ {"version":3,"names":["getRefreshCredentialMetadata","persistCredentialRecord","setRefreshCredentialMetadata","refreshAccessToken","logger","cred","agentContext","info","id","refreshMetaData","error","refreshToken","tokenEndpoint","Error","tokenUrl","endsWith","slice","body","URLSearchParams","grant_type","refresh_token","pre_authorized_code","pre_authorized_code_alt","user_pin","res","fetch","toString","method","headers","accept","status","ok","errText","text","data","json","JSON","stringify","token_type","expires_in","has_access_token","Boolean","access_token","has_refresh_token"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/refreshToken.ts"],"mappings":"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","ignoreList":[]}
@@ -106,7 +106,7 @@ export const credentialRegistry = createStore((set, get) => ({
106
106
  shouldSkip: id => {
107
107
  const s = get();
108
108
  if (s.refreshing[id]) return true; // in-progress
109
- if (s.expired.includes(id)) return true; // replacement already queued
109
+ if (s.expired.includes(id) && Boolean(s.replacements[id])) return true; // replacement already queued
110
110
  if (s.blocked[id]) return true; // previously succeeded/failed
111
111
  return false;
112
112
  },
@@ -1 +1 @@
1
- {"version":3,"names":["createStore","credentialRegistry","set","get","byId","expired","checked","replacements","refreshing","blocked","lastSweepAt","undefined","upsert","cred","s","id","markRefreshing","clearRefreshing","_drop","rest","markExpiredWithReplacement","oldId","replacement","includes","markInvalid","acceptReplacement","repl","restRepl","filter","x","reason","at","Date","toISOString","clearExpired","blockAsSucceeded","blockAsFailed","error","unblock","shouldSkip","setLastSweep","iso","reset","readRegistry","getState","mutateRegistry","updater","setState","selectOldIdByReplacementId","replacementId","Object","entries"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/registry.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createStore","credentialRegistry","set","get","byId","expired","checked","replacements","refreshing","blocked","lastSweepAt","undefined","upsert","cred","s","id","markRefreshing","clearRefreshing","_drop","rest","markExpiredWithReplacement","oldId","replacement","includes","markInvalid","acceptReplacement","repl","restRepl","filter","x","reason","at","Date","toISOString","clearExpired","blockAsSucceeded","blockAsFailed","error","unblock","shouldSkip","Boolean","setLastSweep","iso","reset","readRegistry","getState","mutateRegistry","updater","setState","selectOldIdByReplacementId","replacementId","Object","entries"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/registry.ts"],"mappings":"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","ignoreList":[]}
@@ -4,6 +4,17 @@ export let RefreshStatus = /*#__PURE__*/function (RefreshStatus) {
4
4
  RefreshStatus["Error"] = "error";
5
5
  return RefreshStatus;
6
6
  }({});
7
+
8
+ /**
9
+ * Controls how invalid OpenID credentials are handled after status checks.
10
+ * - InvalidThenOnDemand: show invalid notification; replacement is attempted on user action.
11
+ * - FullReplacement: orchestrator attempts replacement immediately and surfaces replacement notification when available.
12
+ */
13
+ export let OpenIDCredentialRefreshFlowType = /*#__PURE__*/function (OpenIDCredentialRefreshFlowType) {
14
+ OpenIDCredentialRefreshFlowType["InvalidThenOnDemand"] = "invalid-then-on-demand";
15
+ OpenIDCredentialRefreshFlowType["FullReplacement"] = "full-replacement";
16
+ return OpenIDCredentialRefreshFlowType;
17
+ }({});
7
18
  export let OpenIDCustomNotificationType = /*#__PURE__*/function (OpenIDCustomNotificationType) {
8
19
  OpenIDCustomNotificationType["CredentialReplacementAvailable"] = "CustomNotificationOpenIDCredential";
9
20
  OpenIDCustomNotificationType["CredentialExpired"] = "CredentialExpired";
@@ -1 +1 @@
1
- {"version":3,"names":["RefreshStatus","OpenIDCustomNotificationType"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/types.ts"],"mappings":"AAoBA,WAAYA,aAAa,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;AAoDzB,WAAYC,4BAA4B,0BAA5BA,4BAA4B;EAA5BA,4BAA4B;EAA5BA,4BAA4B;EAAA,OAA5BA,4BAA4B;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["RefreshStatus","OpenIDCredentialRefreshFlowType","OpenIDCustomNotificationType"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/types.ts"],"mappings":"AAeA,WAAYA,aAAa,0BAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAbA,aAAa;EAAA,OAAbA,aAAa;AAAA;;AAMzB;AACA;AACA;AACA;AACA;AACA,WAAYC,+BAA+B,0BAA/BA,+BAA+B;EAA/BA,+BAA+B;EAA/BA,+BAA+B;EAAA,OAA/BA,+BAA+B;AAAA;AAkD3C,WAAYC,4BAA4B,0BAA5BA,4BAA4B;EAA5BA,4BAA4B;EAA5BA,4BAA4B;EAAA,OAA5BA,4BAA4B;AAAA","ignoreList":[]}
@@ -1,28 +1,28 @@
1
1
  // modules/openid/refresh/verifyCredentialStatus.ts
2
2
 
3
3
  import { getListFromStatusListJWT, getStatusListFromJWT } from '@sd-jwt/jwt-status-list';
4
+ import { RefreshStatus } from './types';
4
5
  /**
5
6
  * Verifies credential status for Sd-JWT credentials using status lists.
6
7
  * Non–Sd-JWT credentials (W3C jwt_vc_json without status list, or mdoc) are treated as valid here.
7
- * Returns true if valid; false if revoked/invalid or on error.
8
8
  */
9
9
  export async function verifyCredentialStatus(rec, logger) {
10
10
  try {
11
11
  // Only Sd-JWT creds have compactSdJwtVc in this codebase
12
- if (!('compactSdJwtVc' in rec)) return true;
12
+ if (!('compactSdJwtVc' in rec)) return RefreshStatus.Valid;
13
13
  logger === null || logger === void 0 || logger.info(`[Verifier] Verifying credential status for Sd-JWT credential: ${rec.id}`);
14
14
  const ref = getStatusListFromJWT(rec.firstCredential.compact);
15
15
  const res = await fetch(ref.uri);
16
16
  if (!res.ok) throw new Error(`HTTP ${res.status}`);
17
17
  const jwt = await res.text();
18
18
  const list = getListFromStatusListJWT(jwt);
19
- const ok = list.getStatus(ref.idx) === 0;
20
- logger === null || logger === void 0 || logger.info(`${ok ? '✅' : '❌'} [Verifier] ${rec.id} → ${ok ? 'valid' : 'revoked'}`);
21
- return ok;
19
+ const status = list.getStatus(ref.idx) === 0 ? RefreshStatus.Valid : RefreshStatus.Invalid;
20
+ logger === null || logger === void 0 || logger.info(`${status === RefreshStatus.Valid ? '✅' : '❌'} [Verifier] ${rec.id} → ${status}`);
21
+ return status;
22
22
  } catch (e) {
23
23
  var _logger$error;
24
24
  logger === null || logger === void 0 || (_logger$error = logger.error) === null || _logger$error === void 0 || _logger$error.call(logger, `💥 [Verifier] ${'id' in rec ? rec.id : 'unknown'} verify failed: ${String(e)}`);
25
- return false;
25
+ return RefreshStatus.Error;
26
26
  }
27
27
  }
28
28
  //# sourceMappingURL=verifyCredentialStatus.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["getListFromStatusListJWT","getStatusListFromJWT","verifyCredentialStatus","rec","logger","info","id","ref","firstCredential","compact","res","fetch","uri","ok","Error","status","jwt","text","list","getStatus","idx","e","_logger$error","error","call","String"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/verifyCredentialStatus.ts"],"mappings":"AAAA;;AAEA,SAASA,wBAAwB,EAAEC,oBAAoB,QAAQ,yBAAyB;AAKxF;AACA;AACA;AACA;AACA;AACA,OAAO,eAAeC,sBAAsBA,CAACC,GAAY,EAAEC,MAAqB,EAAoB;EAClG,IAAI;IACF;IACA,IAAI,EAAE,gBAAgB,IAAID,GAAG,CAAC,EAAE,OAAO,IAAI;IAE3CC,MAAM,aAANA,MAAM,eAANA,MAAM,CAAEC,IAAI,CAAC,iEAAiEF,GAAG,CAACG,EAAE,EAAE,CAAC;IAEvF,MAAMC,GAAG,GAAGN,oBAAoB,CAACE,GAAG,CAACK,eAAe,CAACC,OAAO,CAAC;IAC7D,MAAMC,GAAG,GAAG,MAAMC,KAAK,CAACJ,GAAG,CAACK,GAAG,CAAC;IAChC,IAAI,CAACF,GAAG,CAACG,EAAE,EAAE,MAAM,IAAIC,KAAK,CAAC,QAAQJ,GAAG,CAACK,MAAM,EAAE,CAAC;IAClD,MAAMC,GAAG,GAAG,MAAMN,GAAG,CAACO,IAAI,CAAC,CAAC;IAE5B,MAAMC,IAAI,GAAGlB,wBAAwB,CAACgB,GAAG,CAAC;IAC1C,MAAMH,EAAE,GAAGK,IAAI,CAACC,SAAS,CAACZ,GAAG,CAACa,GAAG,CAAC,KAAK,CAAC;IAExChB,MAAM,aAANA,MAAM,eAANA,MAAM,CAAEC,IAAI,CAAC,GAAGQ,EAAE,GAAG,GAAG,GAAG,GAAG,eAAeV,GAAG,CAACG,EAAE,MAAMO,EAAE,GAAG,OAAO,GAAG,SAAS,EAAE,CAAC;IACpF,OAAOA,EAAE;EACX,CAAC,CAAC,OAAOQ,CAAC,EAAE;IAAA,IAAAC,aAAA;IACVlB,MAAM,aAANA,MAAM,gBAAAkB,aAAA,GAANlB,MAAM,CAAEmB,KAAK,cAAAD,aAAA,eAAbA,aAAA,CAAAE,IAAA,CAAApB,MAAM,EAAU,iBAAiB,IAAI,IAAID,GAAG,GAAGA,GAAG,CAACG,EAAE,GAAG,SAAS,mBAAmBmB,MAAM,CAACJ,CAAC,CAAC,EAAE,CAAC;IAChG,OAAO,KAAK;EACd;AACF","ignoreList":[]}
1
+ {"version":3,"names":["getListFromStatusListJWT","getStatusListFromJWT","RefreshStatus","verifyCredentialStatus","rec","logger","Valid","info","id","ref","firstCredential","compact","res","fetch","uri","ok","Error","status","jwt","text","list","getStatus","idx","Invalid","e","_logger$error","error","call","String"],"sourceRoot":"../../../../../src","sources":["modules/openid/refresh/verifyCredentialStatus.ts"],"mappings":"AAAA;;AAEA,SAASA,wBAAwB,EAAEC,oBAAoB,QAAQ,yBAAyB;AAExF,SAASC,aAAa,QAAQ,SAAS;AAIvC;AACA;AACA;AACA;AACA,OAAO,eAAeC,sBAAsBA,CAACC,GAAY,EAAEC,MAAqB,EAA0B;EACxG,IAAI;IACF;IACA,IAAI,EAAE,gBAAgB,IAAID,GAAG,CAAC,EAAE,OAAOF,aAAa,CAACI,KAAK;IAE1DD,MAAM,aAANA,MAAM,eAANA,MAAM,CAAEE,IAAI,CAAC,iEAAiEH,GAAG,CAACI,EAAE,EAAE,CAAC;IAEvF,MAAMC,GAAG,GAAGR,oBAAoB,CAACG,GAAG,CAACM,eAAe,CAACC,OAAO,CAAC;IAC7D,MAAMC,GAAG,GAAG,MAAMC,KAAK,CAACJ,GAAG,CAACK,GAAG,CAAC;IAChC,IAAI,CAACF,GAAG,CAACG,EAAE,EAAE,MAAM,IAAIC,KAAK,CAAC,QAAQJ,GAAG,CAACK,MAAM,EAAE,CAAC;IAClD,MAAMC,GAAG,GAAG,MAAMN,GAAG,CAACO,IAAI,CAAC,CAAC;IAE5B,MAAMC,IAAI,GAAGpB,wBAAwB,CAACkB,GAAG,CAAC;IAC1C,MAAMD,MAAM,GAAGG,IAAI,CAACC,SAAS,CAACZ,GAAG,CAACa,GAAG,CAAC,KAAK,CAAC,GAAGpB,aAAa,CAACI,KAAK,GAAGJ,aAAa,CAACqB,OAAO;IAE1FlB,MAAM,aAANA,MAAM,eAANA,MAAM,CAAEE,IAAI,CAAC,GAAGU,MAAM,KAAKf,aAAa,CAACI,KAAK,GAAG,GAAG,GAAG,GAAG,eAAeF,GAAG,CAACI,EAAE,MAAMS,MAAM,EAAE,CAAC;IAC9F,OAAOA,MAAM;EACf,CAAC,CAAC,OAAOO,CAAC,EAAE;IAAA,IAAAC,aAAA;IACVpB,MAAM,aAANA,MAAM,gBAAAoB,aAAA,GAANpB,MAAM,CAAEqB,KAAK,cAAAD,aAAA,eAAbA,aAAA,CAAAE,IAAA,CAAAtB,MAAM,EAAU,iBAAiB,IAAI,IAAID,GAAG,GAAGA,GAAG,CAACI,EAAE,GAAG,SAAS,mBAAmBoB,MAAM,CAACJ,CAAC,CAAC,EAAE,CAAC;IAChG,OAAOtB,aAAa,CAACc,KAAK;EAC5B;AACF","ignoreList":[]}
@@ -1,5 +1,3 @@
1
- import { Jwt, X509ModuleConfig } from '@credo-ts/core';
2
- import q from 'query-string';
3
1
  import { getHostNameFromUrl } from './utils/utils';
4
2
  import { Linking } from 'react-native';
5
3
  function handleTextResponse(text) {
@@ -82,98 +80,13 @@ export async function fetchInvitationDataUrl(dataUrl) {
82
80
  throw new Error(`[retrieve_invitation_error] Unable to retrieve invitation: ${error}`);
83
81
  }
84
82
  }
85
- const extractCertificateFromJwt = jwt => {
86
- const jwtHeader = Jwt.fromSerializedJwt(jwt).header;
87
- return Array.isArray(jwtHeader.x5c) && typeof jwtHeader.x5c[0] === 'string' ? jwtHeader.x5c[0] : null;
88
- };
89
-
90
- /**
91
- * This is a temp method to allow for untrusted certificates to still work with the wallet.
92
- */
93
- export const extractCertificateFromAuthorizationRequest = async ({
94
- data,
95
- uri
96
- }) => {
97
- try {
98
- if (data) {
99
- return {
100
- data,
101
- certificate: extractCertificateFromJwt(data)
102
- };
103
- }
104
- if (uri) {
105
- const query = q.parseUrl(uri).query;
106
- if (query.request_uri && typeof query.request_uri === 'string') {
107
- const result = await fetchInvitationDataUrl(query.request_uri);
108
- if (result.success && result.result.type === 'openid-authorization-request' && typeof result.result.data === 'string') {
109
- return {
110
- data: result.result.data,
111
- certificate: extractCertificateFromJwt(result.result.data)
112
- };
113
- }
114
- } else if (query.request && typeof query.request === 'string') {
115
- const _res = {
116
- data: query.request,
117
- certificate: extractCertificateFromJwt(query.request)
118
- };
119
- return _res;
120
- }
121
- }
122
- return {
123
- data: null,
124
- certificate: null
125
- };
126
- } catch {
127
- return {
128
- data: null,
129
- certificate: null
130
- };
131
- }
132
- };
133
- export async function withTrustedCertificate(agent,
134
- //This should maybe be AgentContext instead
135
- certificate, method) {
136
- const x509ModuleConfig = agent.dependencyManager.resolve(X509ModuleConfig);
137
- const currentTrustedCertificates = x509ModuleConfig.trustedCertificates ? [...x509ModuleConfig.trustedCertificates] : [];
138
- try {
139
- if (certificate) agent.modules.x509.addTrustedCertificate(certificate);
140
- return await method();
141
- } finally {
142
- if (certificate) x509ModuleConfig.setTrustedCertificates(currentTrustedCertificates);
143
- }
144
- }
145
-
146
- //This settings should be moved to an injectable config
147
- const allowUntrustedCertificates = false;
148
83
  export const getCredentialsForProofRequest = async ({
149
84
  agent,
150
- data,
151
- uri
85
+ request
152
86
  }) => {
153
- let requestUri = uri;
154
87
  try {
155
- const {
156
- certificate = null,
157
- data: newData = null
158
- } = allowUntrustedCertificates ? await extractCertificateFromAuthorizationRequest({
159
- data,
160
- uri
161
- }) : {};
162
- if (newData) {
163
- // FIXME: Credo only support request string, but we already parsed it before. So we construct an request here
164
- // but in the future we need to support the parsed request in Credo directly
165
- requestUri = `openid://?request=${encodeURIComponent(newData)}`;
166
- } else if (uri) {
167
- requestUri = uri;
168
- } else {
169
- throw new Error('Either data or uri must be provided');
170
- }
171
- agent.config.logger.info(`$$Receiving openid uri ${requestUri}`);
172
-
173
- // Temp solution to add and remove the trusted certificate
174
- const resolved = await withTrustedCertificate(agent, certificate, () => {
175
- return agent.modules.openid4vc.holder.resolveOpenId4VpAuthorizationRequest(String(requestUri)); // Could throw instead of using constructor here
176
- });
88
+ agent.config.logger.info(`$$Receiving openid authorization request ${request}`);
89
+ const resolved = await agent.modules.openid4vc.holder.resolveOpenId4VpAuthorizationRequest(request);
177
90
  if (!resolved.presentationExchange) {
178
91
  throw new Error('No presentation exchange found in authorization request.');
179
92
  }
@@ -213,18 +126,12 @@ export const shareProof = async ({
213
126
  return [entry.inputDescriptorId, [credential.credentialRecord]];
214
127
  })));
215
128
  try {
216
- // Temp solution to add and remove the trusted certicaite
217
- // const certificate =
218
- // authorizationRequest.jwt && allowUntrustedCertificate ? extractCertificateFromJwt(authorizationRequest) : null
219
-
220
- // Need to figure out how to include this certificate, does not seem like the JWT is included in the authorizationRequest any more.
221
-
222
- const result = await withTrustedCertificate(agent, null, () => agent.openid4vc.holder.acceptOpenId4VpAuthorizationRequest({
129
+ const result = await agent.openid4vc.holder.acceptOpenId4VpAuthorizationRequest({
223
130
  authorizationRequest: authorizationRequest,
224
131
  presentationExchange: {
225
132
  credentials
226
133
  }
227
- }));
134
+ });
228
135
 
229
136
  // if redirect_uri is provided, open it in the browser
230
137
  // Even if the response returned an error, we must open this uri
@@ -1 +1 @@
1
- {"version":3,"names":["Jwt","X509ModuleConfig","q","getHostNameFromUrl","Linking","handleTextResponse","text","startsWith","success","result","format","type","data","json","JSON","parse","handleJsonResponse","error","Error","Array","isArray","fetchInvitationDataUrl","dataUrl","abortController","AbortController","timeout","setTimeout","abort","response","fetch","headers","Accept","clearTimeout","ok","contentType","get","includes","extractCertificateFromJwt","jwt","jwtHeader","fromSerializedJwt","header","x5c","extractCertificateFromAuthorizationRequest","uri","certificate","query","parseUrl","request_uri","request","_res","withTrustedCertificate","agent","method","x509ModuleConfig","dependencyManager","resolve","currentTrustedCertificates","trustedCertificates","modules","x509","addTrustedCertificate","setTrustedCertificates","allowUntrustedCertificates","getCredentialsForProofRequest","requestUri","newData","encodeURIComponent","config","logger","info","resolved","openid4vc","holder","resolveOpenId4VpAuthorizationRequest","String","presentationExchange","requestRecord","authorizationRequestPayload","verifierHostName","response_uri","undefined","createdAt","Date","verifier","clientIdPrefix","effectiveClientId","err","message","shareProof","authorizationRequest","credentialsForRequest","selectedCredentials","areRequirementsSatisfied","credentials","Object","fromEntries","requirements","flatMap","requirement","submissionEntry","map","entry","credentialId","inputDescriptorId","id","credential","verifiableCredentials","find","vc","credentialRecord","acceptOpenId4VpAuthorizationRequest","serverResponse","body","redirect_uri","openURL","status"],"sourceRoot":"../../../../src","sources":["modules/openid/resolverProof.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["getHostNameFromUrl","Linking","handleTextResponse","text","startsWith","success","result","format","type","data","json","JSON","parse","handleJsonResponse","error","Error","Array","isArray","fetchInvitationDataUrl","dataUrl","abortController","AbortController","timeout","setTimeout","abort","response","fetch","headers","Accept","clearTimeout","ok","contentType","get","includes","getCredentialsForProofRequest","agent","request","config","logger","info","resolved","modules","openid4vc","holder","resolveOpenId4VpAuthorizationRequest","presentationExchange","requestRecord","authorizationRequestPayload","verifierHostName","response_uri","String","undefined","createdAt","Date","verifier","clientIdPrefix","effectiveClientId","err","message","shareProof","authorizationRequest","credentialsForRequest","selectedCredentials","areRequirementsSatisfied","credentials","Object","fromEntries","requirements","flatMap","requirement","submissionEntry","map","entry","credentialId","inputDescriptorId","id","credential","verifiableCredentials","find","vc","credentialRecord","acceptOpenId4VpAuthorizationRequest","serverResponse","body","redirect_uri","openURL","status"],"sourceRoot":"../../../../src","sources":["modules/openid/resolverProof.tsx"],"mappings":"AAGA,SAASA,kBAAkB,QAAQ,eAAe;AAElD,SAASC,OAAO,QAAQ,cAAc;AAGtC,SAASC,kBAAkBA,CAACC,IAAY,EAAyB;EAC/D;EACA,IAAIA,IAAI,CAACC,UAAU,CAAC,IAAI,CAAC,EAAE;IACzB,OAAO;MACLC,OAAO,EAAE,IAAI;MACbC,MAAM,EAAE;QACNC,MAAM,EAAE,QAAQ;QAChBC,IAAI,EAAE,8BAA8B;QACpCC,IAAI,EAAEN;MACR;IACF,CAAC;EACH;;EAEA;EACA,IAAI;IACF,MAAMO,IAAa,GAAGC,IAAI,CAACC,KAAK,CAACT,IAAI,CAAC;IACtC,OAAOU,kBAAkB,CAACH,IAAI,CAAC;;IAE/B;EACF,CAAC,CAAC,OAAOI,KAAK,EAAE;IACd,MAAM,IAAIC,KAAK,CAAC,8BAA8BD,KAAK,EAAE,CAAC;EACxD;AACF;AAEA,SAASD,kBAAkBA,CAACH,IAAa,EAAyB;EAChE;EACA,IAAI,CAACA,IAAI,IAAI,OAAOA,IAAI,KAAK,QAAQ,IAAIM,KAAK,CAACC,OAAO,CAACP,IAAI,CAAC,EAAE;IAC5D,MAAM,IAAIK,KAAK,CAAC,iDAAiD,CAAC;EACpE;EAEA,IAAI,OAAO,IAAIL,IAAI,EAAE;IACnB,OAAO;MACLL,OAAO,EAAE,IAAI;MACbC,MAAM,EAAE;QACNC,MAAM,EAAE,QAAQ;QAChBC,IAAI,EAAE,SAAS;QACfC,IAAI,EAAEC;MACR;IACF,CAAC;EACH;EAEA,IAAI,mBAAmB,IAAIA,IAAI,EAAE;IAC/B,OAAO;MACLL,OAAO,EAAE,IAAI;MACbC,MAAM,EAAE;QACNC,MAAM,EAAE,QAAQ;QAChBC,IAAI,EAAE,yBAAyB;QAC/BC,IAAI,EAAEC;MACR;IACF,CAAC;EACH;EAEA,MAAM,IAAIK,KAAK,CAAC,iDAAiD,CAAC;AACpE;AAEA,OAAO,eAAeG,sBAAsBA,CAACC,OAAe,EAAkC;EAC5F;EACA,MAAMC,eAAe,GAAG,IAAIC,eAAe,CAAC,CAAC;EAC7C,MAAMC,OAAO,GAAGC,UAAU,CAAC,MAAMH,eAAe,CAACI,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;EAEhE,IAAI;IACF;IACA,MAAMC,QAAQ,GAAG,MAAMC,KAAK,CAACP,OAAO,EAAE;MACpCQ,OAAO,EAAE;QACP;QACA;QACA;QACAC,MAAM,EAAE;MACV;IACF,CAAC,CAAC;IACFC,YAAY,CAACP,OAAO,CAAC;IACrB,IAAI,CAACG,QAAQ,CAACK,EAAE,EAAE;MAChB,MAAM,IAAIf,KAAK,CAAC,4DAA4D,CAAC;IAC/E;IAEA,MAAMgB,WAAW,GAAGN,QAAQ,CAACE,OAAO,CAACK,GAAG,CAAC,cAAc,CAAC;IACxD,IAAID,WAAW,aAAXA,WAAW,eAAXA,WAAW,CAAEE,QAAQ,CAAC,kBAAkB,CAAC,EAAE;MAC7C,MAAMvB,IAAa,GAAG,MAAMe,QAAQ,CAACf,IAAI,CAAC,CAAC;MAC3C,OAAOG,kBAAkB,CAACH,IAAI,CAAC;IACjC;IACA,MAAMP,IAAI,GAAG,MAAMsB,QAAQ,CAACtB,IAAI,CAAC,CAAC;IAClC,OAAOD,kBAAkB,CAACC,IAAI,CAAC;EACjC,CAAC,CAAC,OAAOW,KAAK,EAAE;IACde,YAAY,CAACP,OAAO,CAAC;IACrB,MAAM,IAAIP,KAAK,CAAC,8DAA8DD,KAAK,EAAE,CAAC;EACxF;AACF;AAEA,OAAO,MAAMoB,6BAA6B,GAAG,MAAAA,CAAO;EAClDC,KAAK;EACLC;AAIF,CAAC,KAAkD;EACjD,IAAI;IACFD,KAAK,CAACE,MAAM,CAACC,MAAM,CAACC,IAAI,CAAC,4CAA4CH,OAAO,EAAE,CAAC;IAE/E,MAAMI,QAAQ,GAAG,MAAML,KAAK,CAACM,OAAO,CAACC,SAAS,CAACC,MAAM,CAACC,oCAAoC,CAACR,OAAO,CAAC;IAEnG,IAAI,CAACI,QAAQ,CAACK,oBAAoB,EAAE;MAClC,MAAM,IAAI9B,KAAK,CAAC,0DAA0D,CAAC;IAC7E;IAEA,MAAM+B,aAAqC,GAAG;MAC5C,GAAGN,QAAQ,CAACK,oBAAoB;MAChCE,2BAA2B,EAAEP,QAAQ,CAACO,2BAA2B;MACjEC,gBAAgB,EAAER,QAAQ,CAACO,2BAA2B,CAACE,YAAY,GAC/DjD,kBAAkB,CAACkD,MAAM,CAACV,QAAQ,CAACO,2BAA2B,CAACE,YAAY,CAAC,CAAC,GAC7EE,SAAS;MACbC,SAAS,EAAE,IAAIC,IAAI,CAAC,CAAC;MACrB7C,IAAI,EAAE,wBAAwB;MAC9B8C,QAAQ,EAAE;QACRC,cAAc,EAAEf,QAAQ,CAACc,QAAQ,CAACC,cAAc;QAChDC,iBAAiB,EAAEhB,QAAQ,CAACc,QAAQ,CAACE;MACvC;IACF,CAAC;IACD,OAAOV,aAAa;EACtB,CAAC,CAAC,OAAOW,GAAG,EAAE;IACZtB,KAAK,CAACE,MAAM,CAACC,MAAM,CAACxB,KAAK,CAAC,kCAAkC,CAAC2C,GAAG,aAAHA,GAAG,uBAAHA,GAAG,CAAYC,OAAO,KAAID,GAAG,EAAE,CAAC;IAC7F,MAAMA,GAAG;EACX;AACF,CAAC;AAED,OAAO,MAAME,UAAU,GAAG,MAAAA,CAAO;EAC/BxB,KAAK;EACLyB,oBAAoB;EACpBC,qBAAqB;EACrBC;AAMF,CAAC,KAAK;EACJ,IAAI,CAACD,qBAAqB,CAACE,wBAAwB,EAAE;IACnD,MAAM,IAAIhD,KAAK,CAAC,mDAAmD,CAAC;EACtE;;EAEA;EACA;EACA;EACA,MAAMiD,WAAW,GAAGC,MAAM,CAACC,WAAW,CACpCL,qBAAqB,CAACM,YAAY,CAACC,OAAO,CAAEC,WAAW,IACrDA,WAAW,CAACC,eAAe,CAACC,GAAG,CAAEC,KAAK,IAAK;IACzC,MAAMC,YAAY,GAAGX,mBAAmB,CAACU,KAAK,CAACE,iBAAiB,CAAC,CAACC,EAAE;IACpE,MAAMC,UAAU,GACdJ,KAAK,CAACK,qBAAqB,CAACC,IAAI,CAAEC,EAAE,IAAKA,EAAE,CAACC,gBAAgB,CAACL,EAAE,KAAKF,YAAY,CAAC,IACjFD,KAAK,CAACK,qBAAqB,CAAC,CAAC,CAAC;IAEhC,OAAO,CAACL,KAAK,CAACE,iBAAiB,EAAE,CAACE,UAAU,CAACI,gBAAgB,CAAC,CAAC;EACjE,CAAC,CACH,CACF,CAAC;EAED,IAAI;IACF,MAAM1E,MAAM,GAAG,MAAM6B,KAAK,CAACO,SAAS,CAACC,MAAM,CAACsC,mCAAmC,CAAC;MAC9ErB,oBAAoB,EAAEA,oBAAoB;MAC1Cf,oBAAoB,EAAE;QACpBmB;MACF;IACF,CAAC,CAAC;;IAEF;IACA;IACA,IAAI,OAAO1D,MAAM,CAAC4E,cAAc,CAACC,IAAI,KAAK,QAAQ,IAAI,OAAO7E,MAAM,CAAC4E,cAAc,CAACC,IAAI,CAACC,YAAY,KAAK,QAAQ,EAAE;MACjH,MAAMnF,OAAO,CAACoF,OAAO,CAAC/E,MAAM,CAAC4E,cAAc,CAACC,IAAI,CAACC,YAAY,CAAC;IAChE;IAEA,IAAI9E,MAAM,CAAC4E,cAAc,CAACI,MAAM,GAAG,GAAG,IAAIhF,MAAM,CAAC4E,cAAc,CAACI,MAAM,GAAG,GAAG,EAAE;MAC5E,MAAM,IAAIvE,KAAK,CAAC,gDAAgDT,MAAM,CAAC4E,cAAc,CAACC,IAAI,EAAY,CAAC;IACzG;IAEA,OAAO7E,MAAM;EACf,CAAC,CAAC,OAAOQ,KAAK,EAAE;IACd;IACA,MAAM,IAAIC,KAAK,CAAC,kCAAkC,CAACD,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAY4C,OAAO,KAAI5C,KAAK,EAAE,CAAC;EACzF;AACF,CAAC","ignoreList":[]}