@ory/elements-react 0.0.0-pr.e3d2b7e1 → 0.0.0-pr.f3c2f07

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 (183) hide show
  1. package/CHANGELOG.md +122 -0
  2. package/DEVELOPMENT.md +19 -4
  3. package/babel.config.js +10 -0
  4. package/dist/client/frontendClient.d.mts +5 -2
  5. package/dist/client/frontendClient.d.ts +5 -2
  6. package/dist/client/frontendClient.js +25 -2
  7. package/dist/client/frontendClient.js.map +1 -1
  8. package/dist/client/frontendClient.mjs +25 -2
  9. package/dist/client/frontendClient.mjs.map +1 -1
  10. package/dist/index.d.mts +46 -5
  11. package/dist/index.d.ts +46 -5
  12. package/dist/index.js +540 -115
  13. package/dist/index.js.map +1 -1
  14. package/dist/index.mjs +540 -116
  15. package/dist/index.mjs.map +1 -1
  16. package/dist/theme/default/index.css +171 -118
  17. package/dist/theme/default/index.css.map +1 -1
  18. package/dist/theme/default/index.d.mts +30 -4
  19. package/dist/theme/default/index.d.ts +30 -4
  20. package/dist/theme/default/index.js +3842 -567
  21. package/dist/theme/default/index.js.map +1 -1
  22. package/dist/theme/default/index.mjs +3862 -521
  23. package/dist/theme/default/index.mjs.map +1 -1
  24. package/package.json +9 -3
  25. package/tsconfig.json +1 -1
  26. package/.storybook/global.css +0 -7
  27. package/.storybook/main.ts +0 -50
  28. package/.storybook/preview-head.html +0 -15
  29. package/.storybook/preview.tsx +0 -68
  30. package/.storybook/public/InterVariable.woff2 +0 -0
  31. package/.storybook/public/inter.css +0 -8
  32. package/.stub-responses/login/1fa/all-methods/initial-form.json +0 -245
  33. package/.stub-responses/login/1fa/all-methods/missing-email.json +0 -263
  34. package/.stub-responses/login/1fa/all-methods/wrong-credentials.json +0 -252
  35. package/.stub-responses/login/1fa/code/code-input.json +0 -135
  36. package/.stub-responses/login/1fa/code/initial-form.json +0 -173
  37. package/.stub-responses/login/1fa/code/invalid-account.json +0 -182
  38. package/.stub-responses/login/1fa/code/missing-email.json +0 -182
  39. package/.stub-responses/login/1fa/code/wrong-credentials.json +0 -124
  40. package/.stub-responses/login/1fa/none/initial-form.json +0 -33
  41. package/.stub-responses/login/1fa/oidc/credential-select-password.json +0 -120
  42. package/.stub-responses/login/1fa/oidc/credential-select.json +0 -81
  43. package/.stub-responses/login/1fa/oidc/initial-form.json +0 -279
  44. package/.stub-responses/login/1fa/passkey/initial-form.json +0 -122
  45. package/.stub-responses/login/1fa/password/initial-form.json +0 -154
  46. package/.stub-responses/login/1fa/password/missing-email.json +0 -172
  47. package/.stub-responses/login/1fa/password/wrong-credentials.json +0 -163
  48. package/.stub-responses/login/1fa/webauthn/initial-form.json +0 -76
  49. package/.stub-responses/login/1fa/webauthn/invalid-account.json +0 -83
  50. package/.stub-responses/login/1fa/webauthn/show-trigger.json +0 -105
  51. package/.stub-responses/recovery/disabled/initial-form.json +0 -9
  52. package/.stub-responses/recovery/none/initial-form.json +0 -9
  53. package/.stub-responses/registration/one-step/all-methods/initial-form.json +0 -334
  54. package/.stub-responses/registration/one-step/all-methods/missing-fields.json +0 -343
  55. package/.stub-responses/registration/one-step/disabled/initial-form.json +0 -10
  56. package/.stub-responses/registration/one-step/none/initial-form.json +0 -14
  57. package/.stub-responses/registration/one-step/oidc/initial-form.json +0 -338
  58. package/.stub-responses/registration/one-step/passkey/initial-form.json +0 -177
  59. package/.stub-responses/registration/one-step/password/initial-form.json +0 -154
  60. package/.stub-responses/registration/one-step/password/missing-fields.json +0 -172
  61. package/.stub-responses/registration/one-step/password/second-step.json +0 -164
  62. package/.stub-responses/registration/one-step/webauthn/initial-form.json +0 -185
  63. package/.stub-responses/registration/two-step/all-methods/enter-password.json +0 -242
  64. package/.stub-responses/registration/two-step/all-methods/initial-form.json +0 -180
  65. package/.stub-responses/registration/two-step/all-methods/missing-fields.json +0 -189
  66. package/.stub-responses/registration/two-step/all-methods/password-validation-error.json +0 -244
  67. package/.stub-responses/registration/two-step/password/enter-password.json +0 -108
  68. package/.stub-responses/registration/two-step/password/initial-form.json +0 -134
  69. package/.stub-responses/registration/two-step/password/missing-fields.json +0 -143
  70. package/.stub-responses/registration/two-step/password/password-validation-error.json +0 -110
  71. package/.stub-responses/settings/all-methods/change-password.json +0 -381
  72. package/.stub-responses/settings/all-methods/change-trait.json +0 -377
  73. package/.stub-responses/settings/all-methods/initial-form.json +0 -368
  74. package/.stub-responses/settings/oidc/with-provider.json +0 -229
  75. package/.stub-responses/settings/passkey/initial-form.json +0 -256
  76. package/.stub-responses/settings/webauthn/initial-form.json +0 -263
  77. package/.stub-responses/verification/disabled/initial-form.json +0 -9
  78. package/.stub-responses/verification/none/initial-form.json +0 -9
  79. package/dist/theme/default/tailwind/defaults.d.mts +0 -737
  80. package/dist/theme/default/tailwind/defaults.d.ts +0 -737
  81. package/stories/components/login/1fa/all.stories.ts +0 -46
  82. package/stories/components/login/1fa/code.stories.ts +0 -64
  83. package/stories/components/login/1fa/custom.stories.tsx +0 -74
  84. package/stories/components/login/1fa/none.stories.tsx +0 -28
  85. package/stories/components/login/1fa/oidc.stories.tsx +0 -140
  86. package/stories/components/login/1fa/passkey.stories.ts +0 -28
  87. package/stories/components/login/1fa/password.stories.ts +0 -46
  88. package/stories/components/login/1fa/webauthn.stories.ts +0 -46
  89. package/stories/components/registration/one-step/all-methods.stories.ts +0 -37
  90. package/stories/components/registration/one-step/password.stories.ts +0 -37
  91. package/stories/components/registration/one-step/webauthn.stories.ts +0 -28
  92. package/stories/components/registration/two-step/all-methods.stories.ts +0 -55
  93. package/stories/components/registration/two-step/password.stories.ts +0 -55
  94. package/stories/components/settings/all.stories.ts +0 -46
  95. package/stories/components/settings/oidc.stories.ts +0 -28
  96. package/stories/components/settings/passkey.stories.ts +0 -28
  97. package/stories/components/settings/webauthn.stories.ts +0 -28
  98. package/stories/pages/error.tsx +0 -29
  99. package/stories/utils.ts +0 -20
  100. package/storybook-static/InterVariable.woff2 +0 -0
  101. package/storybook-static/assets/Color-ERTF36HU-BdkKyVuV.js +0 -1
  102. package/storybook-static/assets/DocsRenderer-CFRXHY34-YqKt61zP.js +0 -595
  103. package/storybook-static/assets/all-methods.stories-B-rqPBX2.js +0 -11
  104. package/storybook-static/assets/all-methods.stories-CmMlhzsx.js +0 -21
  105. package/storybook-static/assets/all.stories-CtQ0yCQi.js +0 -16
  106. package/storybook-static/assets/all.stories-DgIVCzcZ.js +0 -16
  107. package/storybook-static/assets/chunk-H6MOWX77-DTQOW814.js +0 -1
  108. package/storybook-static/assets/code.stories-BbEryDcA.js +0 -26
  109. package/storybook-static/assets/custom.stories-DH2zHar9.js +0 -6
  110. package/storybook-static/assets/entry-preview-CcFGVifh.js +0 -10
  111. package/storybook-static/assets/entry-preview-docs-CyY-8bLe.js +0 -54
  112. package/storybook-static/assets/iframe-C5GAfuxh.js +0 -2
  113. package/storybook-static/assets/index-BVoBHvaS.js +0 -8
  114. package/storybook-static/assets/index-CfOt2XX2.js +0 -24
  115. package/storybook-static/assets/index-DPRSEdy-.js +0 -1
  116. package/storybook-static/assets/index-DrFu-skq.js +0 -6
  117. package/storybook-static/assets/index-FeUjBnvO.js +0 -1
  118. package/storybook-static/assets/index-uubelm5h.js +0 -9
  119. package/storybook-static/assets/initial-form-DWp_1F-f.js +0 -1
  120. package/storybook-static/assets/jsx-runtime-QvZ8i92b.js +0 -9
  121. package/storybook-static/assets/none.stories-TAeRhzd5.js +0 -6
  122. package/storybook-static/assets/oidc.stories-CniWBy7t.js +0 -58
  123. package/storybook-static/assets/oidc.stories-jhWzAyoQ.js +0 -6
  124. package/storybook-static/assets/passkey.stories-CBtjoVSN.js +0 -6
  125. package/storybook-static/assets/passkey.stories-CQU2Xw_t.js +0 -6
  126. package/storybook-static/assets/password.stories-0s6cDl0o.js +0 -11
  127. package/storybook-static/assets/password.stories-B2Wtckz_.js +0 -16
  128. package/storybook-static/assets/password.stories-DX0gkWjH.js +0 -21
  129. package/storybook-static/assets/preview-BBWR9nbA.js +0 -1
  130. package/storybook-static/assets/preview-BPAmP-pY.js +0 -2
  131. package/storybook-static/assets/preview-BWzBA1C2.js +0 -396
  132. package/storybook-static/assets/preview-BXtF2ySE.js +0 -234
  133. package/storybook-static/assets/preview-Cur_8nCX.css +0 -1
  134. package/storybook-static/assets/preview-D77C14du.js +0 -34
  135. package/storybook-static/assets/preview-DCjDUH0w.js +0 -27
  136. package/storybook-static/assets/preview-DFmD0pui.js +0 -1
  137. package/storybook-static/assets/preview-DGUiP6tS.js +0 -7
  138. package/storybook-static/assets/preview-aVwhiz9X.js +0 -1
  139. package/storybook-static/assets/react-18-CtsMCmcS.js +0 -1
  140. package/storybook-static/assets/settings-BqEFC2-V.css +0 -1
  141. package/storybook-static/assets/settings-Bx4osEmB.js +0 -2304
  142. package/storybook-static/assets/webauthn.stories-BzodmV0c.js +0 -6
  143. package/storybook-static/assets/webauthn.stories-DglGm7Ys.js +0 -6
  144. package/storybook-static/assets/webauthn.stories-G9E76Wjj.js +0 -16
  145. package/storybook-static/favicon.svg +0 -1
  146. package/storybook-static/iframe.html +0 -654
  147. package/storybook-static/index.html +0 -173
  148. package/storybook-static/index.json +0 -1
  149. package/storybook-static/inter.css +0 -8
  150. package/storybook-static/nunito-sans-bold-italic.woff2 +0 -0
  151. package/storybook-static/nunito-sans-bold.woff2 +0 -0
  152. package/storybook-static/nunito-sans-italic.woff2 +0 -0
  153. package/storybook-static/nunito-sans-regular.woff2 +0 -0
  154. package/storybook-static/preview-stats.json +0 -2344
  155. package/storybook-static/sb-addons/essentials-actions-2/manager-bundle.js +0 -3
  156. package/storybook-static/sb-addons/essentials-actions-2/manager-bundle.js.LEGAL.txt +0 -0
  157. package/storybook-static/sb-addons/essentials-backgrounds-3/manager-bundle.js +0 -12
  158. package/storybook-static/sb-addons/essentials-backgrounds-3/manager-bundle.js.LEGAL.txt +0 -0
  159. package/storybook-static/sb-addons/essentials-controls-1/manager-bundle.js +0 -394
  160. package/storybook-static/sb-addons/essentials-controls-1/manager-bundle.js.LEGAL.txt +0 -0
  161. package/storybook-static/sb-addons/essentials-measure-6/manager-bundle.js +0 -3
  162. package/storybook-static/sb-addons/essentials-measure-6/manager-bundle.js.LEGAL.txt +0 -0
  163. package/storybook-static/sb-addons/essentials-outline-7/manager-bundle.js +0 -3
  164. package/storybook-static/sb-addons/essentials-outline-7/manager-bundle.js.LEGAL.txt +0 -0
  165. package/storybook-static/sb-addons/essentials-toolbars-5/manager-bundle.js +0 -3
  166. package/storybook-static/sb-addons/essentials-toolbars-5/manager-bundle.js.LEGAL.txt +0 -0
  167. package/storybook-static/sb-addons/essentials-viewport-4/manager-bundle.js +0 -3
  168. package/storybook-static/sb-addons/essentials-viewport-4/manager-bundle.js.LEGAL.txt +0 -0
  169. package/storybook-static/sb-addons/interactions-8/manager-bundle.js +0 -211
  170. package/storybook-static/sb-addons/interactions-8/manager-bundle.js.LEGAL.txt +0 -0
  171. package/storybook-static/sb-addons/storybook-core-core-server-presets-0/common-manager-bundle.js +0 -3
  172. package/storybook-static/sb-addons/storybook-core-core-server-presets-0/common-manager-bundle.js.LEGAL.txt +0 -0
  173. package/storybook-static/sb-common-assets/favicon.svg +0 -1
  174. package/storybook-static/sb-common-assets/nunito-sans-bold-italic.woff2 +0 -0
  175. package/storybook-static/sb-common-assets/nunito-sans-bold.woff2 +0 -0
  176. package/storybook-static/sb-common-assets/nunito-sans-italic.woff2 +0 -0
  177. package/storybook-static/sb-common-assets/nunito-sans-regular.woff2 +0 -0
  178. package/storybook-static/sb-manager/globals-module-info.js +0 -1006
  179. package/storybook-static/sb-manager/globals-runtime.js +0 -54400
  180. package/storybook-static/sb-manager/globals.js +0 -48
  181. package/storybook-static/sb-manager/runtime.js +0 -12089
  182. package/storybook-static/sb-preview/globals.js +0 -33
  183. package/storybook-static/sb-preview/runtime.js +0 -9498
package/dist/index.mjs CHANGED
@@ -34,10 +34,14 @@ function useGroupSorter() {
34
34
  }
35
35
  var defaultNodeOrder = [
36
36
  "oidc",
37
+ "saml",
37
38
  "identifier_first",
38
39
  "default",
39
40
  "profile",
40
41
  "password",
42
+ // CAPTCHA is below password because otherwise the password input field
43
+ // would be above the captcha. Somehow, we sort the password sign up button somewhere else to be always at the bottom.
44
+ "captcha",
41
45
  "passkey",
42
46
  "code",
43
47
  "webauthn"
@@ -46,6 +50,11 @@ function defaultNodeSorter(a, b) {
46
50
  var _a, _b;
47
51
  const aGroupWeight = (_a = defaultNodeOrder.indexOf(a.group)) != null ? _a : 999;
48
52
  const bGroupWeight = (_b = defaultNodeOrder.indexOf(b.group)) != null ? _b : 999;
53
+ if (b.group === "captcha" && isUiNodeInputAttributes(a.attributes) && a.attributes.type === "submit") {
54
+ return aGroupWeight - (bGroupWeight - 2);
55
+ } else if (a.group === "captcha" && isUiNodeInputAttributes(b.attributes) && b.attributes.type === "submit") {
56
+ return aGroupWeight - 2 - bGroupWeight;
57
+ }
49
58
  return aGroupWeight - bGroupWeight;
50
59
  }
51
60
  var defaultGroupOrder = [
@@ -83,22 +92,25 @@ function OryComponentProvider({
83
92
  }
84
93
  );
85
94
  }
86
- function isChoosingMethod(uiNodes) {
87
- return uiNodes.some(
95
+ function isChoosingMethod(flow) {
96
+ return flow.flow.ui.nodes.some(
88
97
  (node) => "name" in node.attributes && node.attributes.name === "screen" && "value" in node.attributes && node.attributes.value === "previous"
89
- ) || uiNodes.some(
98
+ ) || flow.flow.ui.nodes.some(
90
99
  (node) => node.group === UiNodeGroupEnum.IdentifierFirst && "name" in node.attributes && node.attributes.name === "identifier" && node.attributes.type === "hidden"
91
- );
100
+ ) || flow.flowType === FlowType.Login && flow.flow.requested_aal === "aal2";
92
101
  }
93
- function filterOidcOut(nodes) {
94
- return nodes.filter((node) => node.group !== UiNodeGroupEnum.Oidc);
102
+ function removeSsoNodes(nodes) {
103
+ return nodes.filter(
104
+ (node) => !(node.group === UiNodeGroupEnum.Oidc || node.group === UiNodeGroupEnum.Saml)
105
+ );
95
106
  }
96
107
  function getFinalNodes(uniqueGroups, selectedGroup) {
97
- var _a, _b, _c;
108
+ var _a, _b, _c, _d;
98
109
  const selectedNodes = selectedGroup ? (_a = uniqueGroups[selectedGroup]) != null ? _a : [] : [];
99
110
  return [
100
111
  ...(_b = uniqueGroups == null ? void 0 : uniqueGroups.identifier_first) != null ? _b : [],
101
- ...(_c = uniqueGroups == null ? void 0 : uniqueGroups.default) != null ? _c : []
112
+ ...(_c = uniqueGroups == null ? void 0 : uniqueGroups.default) != null ? _c : [],
113
+ ...(_d = uniqueGroups == null ? void 0 : uniqueGroups.captcha) != null ? _d : []
102
114
  ].flat().filter(
103
115
  (node) => "type" in node.attributes && node.attributes.type === "hidden"
104
116
  ).concat(selectedNodes);
@@ -170,6 +182,7 @@ function nodesToAuthMethodGroups(nodes, excludeAuthMethods = []) {
170
182
  UiNodeGroupEnum.Default,
171
183
  UiNodeGroupEnum.IdentifierFirst,
172
184
  UiNodeGroupEnum.Profile,
185
+ UiNodeGroupEnum.Captcha,
173
186
  ...excludeAuthMethods
174
187
  ].includes(group)
175
188
  );
@@ -198,6 +211,9 @@ function useNodesGroups(nodes) {
198
211
  entries
199
212
  };
200
213
  }
214
+ var findNode = (nodes, opt) => nodes.find((n) => {
215
+ return n.attributes.node_type === opt.node_type && (opt.group instanceof RegExp ? n.group.match(opt.group) : n.group === opt.group) && (opt.name && n.attributes.node_type === "input" ? opt.name instanceof RegExp ? n.attributes.name.match(opt.name) : n.attributes.name === opt.name : !opt.name);
216
+ });
201
217
 
202
218
  // src/context/form-state.ts
203
219
  function findMethodWithMessage(nodes) {
@@ -219,9 +235,11 @@ function parseStateFromFlow(flow) {
219
235
  return { current: "method_active", method: "code" };
220
236
  } else if (methodWithMessage) {
221
237
  return { current: "method_active", method: methodWithMessage.group };
222
- } else if (flow.flow.active && !["default", "identifier_first", "oidc"].includes(flow.flow.active)) {
238
+ } else if (flow.flow.active && !["default", "identifier_first", "oidc", "saml"].includes(
239
+ flow.flow.active
240
+ )) {
223
241
  return { current: "method_active", method: flow.flow.active };
224
- } else if (isChoosingMethod(flow.flow.ui.nodes)) {
242
+ } else if (isChoosingMethod(flow)) {
225
243
  const authMethods = nodesToAuthMethodGroups(flow.flow.ui.nodes);
226
244
  if (authMethods.length === 1 && authMethods[0] !== "code") {
227
245
  return { current: "method_active", method: authMethods[0] };
@@ -243,23 +261,32 @@ function parseStateFromFlow(flow) {
243
261
  break;
244
262
  case FlowType.Settings:
245
263
  return { current: "settings" };
264
+ case FlowType.OAuth2Consent:
265
+ return { current: "method_active", method: "oauth2_consent" };
246
266
  }
247
267
  console.warn(
248
268
  `[Ory/Elements React] Encountered an unknown form state on ${flow.flowType} flow with ID ${flow.flow.id}`
249
269
  );
250
270
  throw new Error("Unknown form state");
251
271
  }
252
- function formStateReducer(state, action) {
253
- switch (action.type) {
254
- case "action_flow_update":
255
- return parseStateFromFlow(action.flow);
256
- case "action_select_method":
257
- return { current: "method_active", method: action.method };
258
- }
259
- return state;
260
- }
261
272
  function useFormStateReducer(flow) {
262
- return useReducer(formStateReducer, parseStateFromFlow(flow));
273
+ const action = parseStateFromFlow(flow);
274
+ const [selectedMethod, setSelectedMethod] = useState();
275
+ const formStateReducer = (state, action2) => {
276
+ switch (action2.type) {
277
+ case "action_flow_update": {
278
+ if (selectedMethod)
279
+ return { current: "method_active", method: selectedMethod };
280
+ return parseStateFromFlow(action2.flow);
281
+ }
282
+ case "action_select_method": {
283
+ setSelectedMethod(action2.method);
284
+ return { current: "method_active", method: action2.method };
285
+ }
286
+ }
287
+ return state;
288
+ };
289
+ return useReducer(formStateReducer, action);
263
290
  }
264
291
  function useOryFlow() {
265
292
  const ctx = useContext(OryFlowContext);
@@ -349,6 +376,22 @@ function computeDefaultValues(nodes) {
349
376
  if (attrs.name === "method" || attrs.type === "submit" || typeof attrs.value === "undefined") {
350
377
  return acc;
351
378
  }
379
+ if (attrs.name.startsWith("grant_scope")) {
380
+ const scope = attrs.value;
381
+ if (Array.isArray(acc.grant_scope)) {
382
+ return {
383
+ ...acc,
384
+ // We want to have all scopes accepted by default, so that the user has to actively uncheck them.
385
+ grant_scope: [...acc.grant_scope, scope]
386
+ };
387
+ } else if (!acc.grant_scope) {
388
+ return {
389
+ ...acc,
390
+ grant_scope: [scope]
391
+ };
392
+ }
393
+ return acc;
394
+ }
352
395
  return unrollTrait(
353
396
  {
354
397
  name: attrs.name,
@@ -780,7 +823,7 @@ function useOryFormSubmit(onAfterSubmit) {
780
823
  if ("lookup_secret_confirm" in submitData || "lookup_secret_reveal" in submitData || "lookup_secret_regenerate" in submitData || "lookup_secret_disable" in submitData) {
781
824
  submitData.method = "lookup_secret";
782
825
  }
783
- if (submitData.method === "oidc" && submitData.link && supportsSelectAccountPrompt.includes(submitData.link)) {
826
+ if (submitData.method === UiNodeGroupEnum.Oidc && submitData.link && supportsSelectAccountPrompt.includes(submitData.link)) {
784
827
  submitData.upstream_parameters = {
785
828
  prompt: "select_account"
786
829
  };
@@ -798,6 +841,19 @@ function useOryFormSubmit(onAfterSubmit) {
798
841
  });
799
842
  break;
800
843
  }
844
+ case FlowType.OAuth2Consent: {
845
+ const response = await fetch(flowContainer.flow.ui.action, {
846
+ method: "POST",
847
+ body: JSON.stringify(data),
848
+ headers: {
849
+ "Content-Type": "application/json"
850
+ }
851
+ });
852
+ const oauth2Success = await response.json();
853
+ if (oauth2Success.redirect_to && typeof oauth2Success.redirect_to === "string") {
854
+ onRedirect(oauth2Success.redirect_to);
855
+ }
856
+ }
801
857
  }
802
858
  if ("password" in data) {
803
859
  methods.setValue("password", "");
@@ -813,10 +869,10 @@ function useOryFormSubmit(onAfterSubmit) {
813
869
  return onSubmit;
814
870
  }
815
871
  function OryForm({ children, onAfterSubmit }) {
816
- var _a;
817
872
  const { Form } = useComponents();
818
873
  const flowContainer = useOryFlow();
819
874
  const methods = useFormContext();
875
+ const { Message } = useComponents();
820
876
  const intl = useIntl();
821
877
  const onSubmit = useOryFormSubmit(onAfterSubmit);
822
878
  const hasMethods = flowContainer.flow.ui.nodes.some((node) => {
@@ -831,11 +887,22 @@ function OryForm({ children, onAfterSubmit }) {
831
887
  }
832
888
  return false;
833
889
  });
834
- if (!hasMethods && ((_a = flowContainer.flow.ui.messages) != null ? _a : []).length === 0) {
835
- return intl.formatMessage({
836
- id: `identities.messages.${5000002}`,
837
- defaultMessage: "No authentication methods are available for this request. Please contact the site or app owner."
838
- });
890
+ if (!hasMethods) {
891
+ const m = {
892
+ id: 5000002,
893
+ text: intl.formatMessage({
894
+ id: `identities.messages.${5000002}`,
895
+ defaultMessage: "No authentication methods are available for this request. Please contact the site or app owner."
896
+ }),
897
+ type: "error"
898
+ };
899
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
900
+ /* @__PURE__ */ jsx(Message.Root, { children: /* @__PURE__ */ jsx(Message.Content, { message: m }, m.id) }),
901
+ /* @__PURE__ */ jsx(OryCardFooter, {})
902
+ ] });
903
+ }
904
+ if (flowContainer.flowType === FlowType.Login && flowContainer.formState.current === "method_active" && flowContainer.formState.method === "code") {
905
+ methods.setValue("method", "code");
839
906
  }
840
907
  return /* @__PURE__ */ jsx(
841
908
  Form.Root,
@@ -847,7 +914,15 @@ function OryForm({ children, onAfterSubmit }) {
847
914
  }
848
915
  );
849
916
  }
850
- var messageIdsToHide = [1040009, 1060003, 1080003, 1010014, 1040005, 1010016];
917
+ var messageIdsToHide = [
918
+ 1040009,
919
+ 1060003,
920
+ 1080003,
921
+ 1010004,
922
+ 1010014,
923
+ 1040005,
924
+ 1010016
925
+ ];
851
926
  function OryCardValidationMessages({ ...props }) {
852
927
  var _a;
853
928
  const { flow } = useOryFlow();
@@ -866,7 +941,7 @@ var NodeInput = ({
866
941
  }) => {
867
942
  var _a;
868
943
  const { Node: Node2 } = useComponents();
869
- const { setValue } = useFormContext();
944
+ const { setValue, watch } = useFormContext();
870
945
  const {
871
946
  onloadTrigger,
872
947
  onclickTrigger,
@@ -879,7 +954,10 @@ var NodeInput = ({
879
954
  const isResendNode = ((_a = node.meta.label) == null ? void 0 : _a.id) === 1070008;
880
955
  const isScreenSelectionNode = "name" in node.attributes && node.attributes.name === "screen";
881
956
  const setFormValue = () => {
882
- if (attrs.value && !(isResendNode || isScreenSelectionNode)) {
957
+ if (isResendNode || isScreenSelectionNode || node.group === "oauth2_consent") {
958
+ return;
959
+ }
960
+ if (attrs.value !== void 0) {
883
961
  setValue(attrs.name, attrs.value);
884
962
  }
885
963
  };
@@ -902,8 +980,21 @@ var NodeInput = ({
902
980
  triggerToWindowCall(onclickTrigger);
903
981
  }
904
982
  };
905
- const isSocial = (attrs.name === "provider" || attrs.name === "link") && node.group === "oidc";
983
+ const isSocial = (attrs.name === "provider" || attrs.name === "link") && (node.group === UiNodeGroupEnum.Oidc || node.group === UiNodeGroupEnum.Saml);
906
984
  const isPinCodeInput = attrs.name === "code" && node.group === "code" || attrs.name === "totp_code" && node.group === "totp";
985
+ const handleScopeChange = (checked) => {
986
+ const scopes = watch("grant_scope");
987
+ if (Array.isArray(scopes)) {
988
+ if (checked) {
989
+ setValue("grant_scope", Array.from(/* @__PURE__ */ new Set([...scopes, attrs.value])));
990
+ } else {
991
+ setValue(
992
+ "grant_scope",
993
+ scopes.filter((scope) => scope !== attrs.value)
994
+ );
995
+ }
996
+ }
997
+ };
907
998
  switch (attributes.type) {
908
999
  case UiNodeInputAttributesTypeEnum.Submit:
909
1000
  case UiNodeInputAttributesTypeEnum.Button:
@@ -913,6 +1004,9 @@ var NodeInput = ({
913
1004
  if (isResendNode || isScreenSelectionNode) {
914
1005
  return null;
915
1006
  }
1007
+ if (node.group === "oauth2_consent") {
1008
+ return null;
1009
+ }
916
1010
  return /* @__PURE__ */ jsx(
917
1011
  Node2.Label,
918
1012
  {
@@ -924,6 +1018,21 @@ var NodeInput = ({
924
1018
  case UiNodeInputAttributesTypeEnum.DatetimeLocal:
925
1019
  throw new Error("Not implemented");
926
1020
  case UiNodeInputAttributesTypeEnum.Checkbox:
1021
+ if (node.group === "oauth2_consent" && node.attributes.node_type === "input") {
1022
+ switch (node.attributes.name) {
1023
+ case "grant_scope":
1024
+ return /* @__PURE__ */ jsx(
1025
+ Node2.ConsentScopeCheckbox,
1026
+ {
1027
+ attributes: attrs,
1028
+ node,
1029
+ onCheckedChange: handleScopeChange
1030
+ }
1031
+ );
1032
+ default:
1033
+ return null;
1034
+ }
1035
+ }
927
1036
  return /* @__PURE__ */ jsx(
928
1037
  Node2.Label,
929
1038
  {
@@ -950,6 +1059,9 @@ var NodeInput = ({
950
1059
  };
951
1060
  var Node = ({ node, onClick }) => {
952
1061
  const { Node: Node2 } = useComponents();
1062
+ if (node.group === UiNodeGroupEnum.Captcha) {
1063
+ return /* @__PURE__ */ jsx(Node2.Captcha, { node });
1064
+ }
953
1065
  if (isUiNodeImageAttributes(node.attributes)) {
954
1066
  return /* @__PURE__ */ jsx(Node2.Image, { node, attributes: node.attributes });
955
1067
  } else if (isUiNodeTextAttributes(node.attributes)) {
@@ -982,7 +1094,9 @@ function OryFormOidcButtons() {
982
1094
  flow: { ui }
983
1095
  } = useOryFlow();
984
1096
  const { setValue } = useFormContext();
985
- const filteredNodes = ui.nodes.filter((node) => node.group === "oidc");
1097
+ const filteredNodes = ui.nodes.filter(
1098
+ (node) => node.group === UiNodeGroupEnum.Oidc || node.group === UiNodeGroupEnum.Saml
1099
+ );
986
1100
  const { Form, Node: Node2 } = useComponents();
987
1101
  if (filteredNodes.length === 0) {
988
1102
  return null;
@@ -997,7 +1111,7 @@ function OryFormOidcButtons() {
997
1111
  "provider",
998
1112
  node.attributes.value
999
1113
  );
1000
- setValue("method", "oidc");
1114
+ setValue("method", node.group);
1001
1115
  }
1002
1116
  },
1003
1117
  k
@@ -1007,7 +1121,9 @@ function OryFormSocialButtonsForm() {
1007
1121
  const {
1008
1122
  flow: { ui }
1009
1123
  } = useOryFlow();
1010
- const filteredNodes = ui.nodes.filter((node) => node.group === "oidc");
1124
+ const filteredNodes = ui.nodes.filter(
1125
+ (node) => node.group === UiNodeGroupEnum.Saml || node.group === UiNodeGroupEnum.Oidc
1126
+ );
1011
1127
  if (filteredNodes.length === 0) {
1012
1128
  return null;
1013
1129
  }
@@ -1017,28 +1133,49 @@ function isUINodeGroupEnum(method) {
1017
1133
  return Object.values(UiNodeGroupEnum).includes(method);
1018
1134
  }
1019
1135
  function OryTwoStepCard() {
1020
- const {
1021
- flow: { ui },
1022
- flowType,
1023
- formState,
1024
- dispatchFormState
1025
- } = useOryFlow();
1136
+ var _a, _b, _c, _d;
1026
1137
  const { Form, Card } = useComponents();
1138
+ const { flow, flowType, formState, dispatchFormState } = useOryFlow();
1139
+ const { ui } = flow;
1027
1140
  const nodeSorter = useNodeSorter();
1028
1141
  const sortNodes = (a, b) => nodeSorter(a, b, { flowType });
1029
1142
  const uniqueGroups = useNodesGroups(ui.nodes);
1030
- const options = Object.values(UiNodeGroupEnum).filter((group) => {
1031
- var _a;
1032
- return (_a = uniqueGroups.groups[group]) == null ? void 0 : _a.length;
1033
- }).filter(
1034
- (group) => ![
1035
- UiNodeGroupEnum.Oidc,
1036
- UiNodeGroupEnum.Default,
1037
- UiNodeGroupEnum.IdentifierFirst,
1038
- UiNodeGroupEnum.Profile
1039
- ].includes(group)
1143
+ const options = Object.fromEntries(
1144
+ Object.values(UiNodeGroupEnum).filter((group) => {
1145
+ var _a2;
1146
+ return (_a2 = uniqueGroups.groups[group]) == null ? void 0 : _a2.length;
1147
+ }).filter(
1148
+ (group) => ![
1149
+ UiNodeGroupEnum.Oidc,
1150
+ UiNodeGroupEnum.Saml,
1151
+ UiNodeGroupEnum.Default,
1152
+ UiNodeGroupEnum.IdentifierFirst,
1153
+ UiNodeGroupEnum.Profile,
1154
+ UiNodeGroupEnum.Captcha
1155
+ ].includes(group)
1156
+ ).map((g) => [g, {}])
1040
1157
  );
1041
- const nonOidcNodes = filterOidcOut(ui.nodes);
1158
+ if (UiNodeGroupEnum.Code in options) {
1159
+ let identifier = (_b = (_a = findNode(ui.nodes, {
1160
+ group: "identifier_first",
1161
+ node_type: "input",
1162
+ name: "identifier"
1163
+ })) == null ? void 0 : _a.attributes) == null ? void 0 : _b.value;
1164
+ identifier || (identifier = (_d = (_c = findNode(ui.nodes, {
1165
+ group: "code",
1166
+ node_type: "input",
1167
+ name: "address"
1168
+ })) == null ? void 0 : _c.attributes) == null ? void 0 : _d.value);
1169
+ if (identifier) {
1170
+ options[UiNodeGroupEnum.Code] = {
1171
+ title: {
1172
+ id: "identities.messages.1010023",
1173
+ values: { address: identifier }
1174
+ }
1175
+ };
1176
+ }
1177
+ }
1178
+ const nonSsoNodes = removeSsoNodes(ui.nodes);
1042
1179
  const finalNodes = formState.current === "method_active" ? getFinalNodes(uniqueGroups.groups, formState.method) : [];
1043
1180
  const handleAfterFormSubmit = (method) => {
1044
1181
  if (typeof method !== "string" || !isUINodeGroupEnum(method)) {
@@ -1051,18 +1188,28 @@ function OryTwoStepCard() {
1051
1188
  });
1052
1189
  }
1053
1190
  };
1054
- const hasOidc = ui.nodes.some((node) => node.group === UiNodeGroupEnum.Oidc);
1055
- const showOidc = !(formState.current === "method_active" && formState.method !== "oidc");
1191
+ const hasSso = ui.nodes.some(
1192
+ (node) => node.group === UiNodeGroupEnum.Oidc || node.group === UiNodeGroupEnum.Saml
1193
+ );
1194
+ const showSso = !(formState.current === "method_active" && !(formState.method === UiNodeGroupEnum.Oidc || formState.method === UiNodeGroupEnum.Saml));
1195
+ const showSsoDivider = hasSso && nonSsoNodes.filter((n) => {
1196
+ if (isUiNodeInputAttributes(n.attributes)) {
1197
+ return n.attributes.type !== UiNodeInputAttributesTypeEnum.Hidden;
1198
+ } else if (isUiNodeScriptAttributes(n.attributes)) {
1199
+ return false;
1200
+ }
1201
+ return true;
1202
+ }).length > 0;
1056
1203
  return /* @__PURE__ */ jsxs(OryCard, { children: [
1057
1204
  /* @__PURE__ */ jsx(OryCardHeader, {}),
1058
1205
  /* @__PURE__ */ jsxs(OryCardContent, { children: [
1059
1206
  /* @__PURE__ */ jsx(OryCardValidationMessages, {}),
1060
- showOidc && /* @__PURE__ */ jsx(OryFormSocialButtonsForm, {}),
1207
+ showSso && /* @__PURE__ */ jsx(OryFormSocialButtonsForm, {}),
1061
1208
  /* @__PURE__ */ jsxs(OryForm, { onAfterSubmit: handleAfterFormSubmit, children: [
1062
1209
  /* @__PURE__ */ jsxs(Form.Group, { children: [
1063
1210
  formState.current === "provide_identifier" && /* @__PURE__ */ jsxs(Fragment, { children: [
1064
- hasOidc && /* @__PURE__ */ jsx(Card.Divider, {}),
1065
- nonOidcNodes.sort(sortNodes).map((node, k) => /* @__PURE__ */ jsx(Node, { node }, k))
1211
+ showSsoDivider && /* @__PURE__ */ jsx(Card.Divider, {}),
1212
+ nonSsoNodes.sort(sortNodes).map((node, k) => /* @__PURE__ */ jsx(Node, { node }, k))
1066
1213
  ] }),
1067
1214
  formState.current === "select_method" && /* @__PURE__ */ jsxs(Fragment, { children: [
1068
1215
  /* @__PURE__ */ jsx(Card.Divider, {}),
@@ -1075,7 +1222,8 @@ function OryTwoStepCard() {
1075
1222
  method: group
1076
1223
  })
1077
1224
  }
1078
- )
1225
+ ),
1226
+ ui.nodes.filter((n) => n.group === UiNodeGroupEnum.Captcha).map((node, k) => /* @__PURE__ */ jsx(Node, { node }, k))
1079
1227
  ] }),
1080
1228
  formState.current === "method_active" && /* @__PURE__ */ jsxs(Fragment, { children: [
1081
1229
  ui.nodes.filter((n) => n.type === "script").map((node, k) => /* @__PURE__ */ jsx(Node, { node }, k)),
@@ -1089,22 +1237,27 @@ function OryTwoStepCard() {
1089
1237
  }
1090
1238
  function AuthMethodList({ options, setSelectedGroup }) {
1091
1239
  const { Card } = useComponents();
1092
- const { setValue } = useFormContext();
1093
- const handleClick = (group) => {
1240
+ const { setValue, getValues } = useFormContext();
1241
+ const handleClick = (group, options2) => {
1242
+ var _a, _b, _c, _d;
1094
1243
  if (isGroupImmediateSubmit(group)) {
1244
+ if (group === "code" && !getValues("identifier") && ((_b = (_a = options2 == null ? void 0 : options2.title) == null ? void 0 : _a.values) == null ? void 0 : _b.address)) {
1245
+ setValue("identifier", (_d = (_c = options2 == null ? void 0 : options2.title) == null ? void 0 : _c.values) == null ? void 0 : _d.address);
1246
+ }
1095
1247
  setValue("method", group);
1096
1248
  } else {
1097
1249
  setSelectedGroup(group);
1098
1250
  }
1099
1251
  };
1100
- return options.map((option) => /* @__PURE__ */ jsx(
1252
+ return /* @__PURE__ */ jsx(Card.AuthMethodListContainer, { children: Object.entries(options).map(([group, options2]) => /* @__PURE__ */ jsx(
1101
1253
  Card.AuthMethodListItem,
1102
1254
  {
1103
- group: option,
1104
- onClick: () => handleClick(option)
1255
+ group,
1256
+ title: options2.title,
1257
+ onClick: () => handleClick(group, options2)
1105
1258
  },
1106
- option
1107
- ));
1259
+ group
1260
+ )) });
1108
1261
  }
1109
1262
  function OryFormGroups({ groups }) {
1110
1263
  const {
@@ -1144,14 +1297,29 @@ function OryFormSectionInner({
1144
1297
  }
1145
1298
  );
1146
1299
  }
1300
+ function OryConsentCard() {
1301
+ const { Form, Card } = useComponents();
1302
+ const flow = useOryFlow();
1303
+ return /* @__PURE__ */ jsxs(OryCard, { children: [
1304
+ /* @__PURE__ */ jsx(OryCardHeader, {}),
1305
+ /* @__PURE__ */ jsx(OryCardContent, { children: /* @__PURE__ */ jsxs(OryForm, { children: [
1306
+ /* @__PURE__ */ jsx(Card.Divider, {}),
1307
+ /* @__PURE__ */ jsx(Form.Group, { children: flow.flow.ui.nodes.map((node, k) => /* @__PURE__ */ jsx(Node, { node }, k)) }),
1308
+ /* @__PURE__ */ jsx(Card.Divider, {}),
1309
+ /* @__PURE__ */ jsx(OryCardFooter, {})
1310
+ ] }) })
1311
+ ] });
1312
+ }
1147
1313
  function OryFormGroupDivider() {
1148
1314
  const { Card } = useComponents();
1149
1315
  const {
1150
1316
  flow: { ui }
1151
1317
  } = useOryFlow();
1152
- const filteredNodes = ui.nodes.filter((node) => node.group === "oidc");
1318
+ const filteredNodes = ui.nodes.filter(
1319
+ (node) => node.group === UiNodeGroupEnum.Oidc || node.group === UiNodeGroupEnum.Saml
1320
+ );
1153
1321
  const otherNodes = ui.nodes.filter(
1154
- (node) => node.group !== "oidc" && node.group !== "default"
1322
+ (node) => !(node.group === UiNodeGroupEnum.Oidc || node.group === UiNodeGroupEnum.Saml) && node.group !== "default"
1155
1323
  );
1156
1324
  if (filteredNodes.length > 0 && otherNodes.length > 0) {
1157
1325
  return /* @__PURE__ */ jsx(Card.Divider, {});
@@ -1177,7 +1345,7 @@ function OrySettingsOidc({ nodes }) {
1177
1345
  onClick: () => {
1178
1346
  if (node.attributes.node_type === "input") {
1179
1347
  setValue("link", node.attributes.value);
1180
- setValue("method", "oidc");
1348
+ setValue("method", node.group);
1181
1349
  }
1182
1350
  }
1183
1351
  }));
@@ -1186,7 +1354,7 @@ function OrySettingsOidc({ nodes }) {
1186
1354
  onClick: () => {
1187
1355
  if (node.attributes.node_type === "input") {
1188
1356
  setValue("unlink", node.attributes.value);
1189
- setValue("method", "oidc");
1357
+ setValue("method", node.group);
1190
1358
  }
1191
1359
  }
1192
1360
  }));
@@ -1701,9 +1869,9 @@ var en_default = {
1701
1869
  "identities.messages.1010005": "Verify",
1702
1870
  "identities.messages.1010006": "Authentication code",
1703
1871
  "identities.messages.1010007": "Backup recovery code",
1704
- "identities.messages.1010008": "Sign in with hardware key",
1705
- "identities.messages.1010009": "Use Authenticator",
1706
- "identities.messages.1010010": "Use backup recovery code",
1872
+ "identities.messages.1010008": "Continue with hardware key",
1873
+ "identities.messages.1010009": "Continue",
1874
+ "identities.messages.1010010": "Continue",
1707
1875
  "identities.messages.1010011": "Sign in with hardware key",
1708
1876
  "identities.messages.1010012": "Prepare your WebAuthn device (e.g. security key, biometrics scanner, ...) and press continue.",
1709
1877
  "identities.messages.1010013": "Continue",
@@ -1840,9 +2008,17 @@ var en_default = {
1840
2008
  "login.subtitle-oauth2": "To authenticate {clientName}",
1841
2009
  "login.title": "Sign in",
1842
2010
  "login.subtitle": "Sign in with {parts}",
1843
- "login.title-aal2": "Two-Factor Authentication",
2011
+ "login.title-aal2": "Second factor authentication",
2012
+ "login.subtitle-aal2": "Choose a way to complete your second factor authentication",
2013
+ "login.code.subtitle": "A verification code will be sent by email",
2014
+ "login.webauthn.subtitle": "Please prepare your WebAuthN device",
2015
+ "login.totp.subtitle": "Please enter the code generated by your Authenticator App",
2016
+ "login.lookup_secret.subtitle": "Please enter one of your 8-digit backup recovery codes",
1844
2017
  "login.title-refresh": "Reauthenticate",
1845
2018
  "login.subtitle-refresh": "Confirm your identity with {parts}",
2019
+ "login.2fa.go-back": "Something isn't working?",
2020
+ "login.2fa.go-back.link": "Go back",
2021
+ "login.2fa.method.go-back": "Choose another method",
1846
2022
  "logout.accept-button": "Yes",
1847
2023
  "logout.reject-button": "No",
1848
2024
  "logout.title": "Do you wish to log out?",
@@ -1891,10 +2067,14 @@ var en_default = {
1891
2067
  "two-step.password.description": "Enter your password associated with your account",
1892
2068
  "two-step.code.title": "Email code",
1893
2069
  "two-step.code.description": "A verification code will be sent to your email",
1894
- "two-step.webauthn.title": "Security Key",
2070
+ "two-step.webauthn.title": "Security key",
1895
2071
  "two-step.webauthn.description": "Use your security key to authenticate",
1896
2072
  "two-step.passkey.title": "Passkey (recommended)",
1897
2073
  "two-step.passkey.description": "Use your device's for fingerprint or face recognition",
2074
+ "two-step.totp.title": "Use your Authenticator App (TOTP)",
2075
+ "two-step.totp.description": "Use a 6-digit one-time code from your authenticator app",
2076
+ "two-step.lookup_secret.title": "Backup recovery code",
2077
+ "two-step.lookup_secret.description": "Use up one of your 8-digit backup codes to authenticate",
1898
2078
  "identities.messages.1010020": "",
1899
2079
  "input.placeholder": "Enter your {placeholder}",
1900
2080
  "card.header.parts.oidc": "a social provider",
@@ -1928,7 +2108,27 @@ var en_default = {
1928
2108
  "property.phone": "phone",
1929
2109
  "property.username": "username",
1930
2110
  "property.identifier": "identifier",
1931
- "property.code": "code"
2111
+ "property.code": "code",
2112
+ "consent.title": "Authorize {party}",
2113
+ "consent.subtitle": "A third party application wants to access information associated with your account {identifier}.",
2114
+ "consent.scope.openid.title": "Public Data",
2115
+ "consent.scope.openid.description": "This application will be able to identify you and read public information about you.",
2116
+ "consent.scope.offline_access.title": "Offline Access",
2117
+ "consent.scope.offline_access.description": "This application will be able to identify you and read personal information about you.",
2118
+ "consent.scope.profile.title": "Profile",
2119
+ "consent.scope.profile.description": "This application will be able to access your profile information, including your name, profile picture, and other basic details.",
2120
+ "consent.scope.email.title": "Email Address",
2121
+ "consent.scope.email.description": "This application will be able to access your email address.",
2122
+ "consent.scope.address.title": "Address",
2123
+ "consent.scope.address.description": "This application will be able to access your physical address information.",
2124
+ "consent.scope.phone.title": "Phone",
2125
+ "consent.scope.phone.description": "This application will be able to access your phone number.",
2126
+ "error.title.what-happened": "What happened?",
2127
+ "error.title.what-can-i-do": "What can I do?",
2128
+ "error.instructions": "Please try again in a few minutes or contact the website operator.",
2129
+ "error.footer.text": "When reporting this error, please include the following information:",
2130
+ "error.footer.copy": "Copy",
2131
+ "error.action.go-back": "Go back"
1932
2132
  };
1933
2133
 
1934
2134
  // src/locales/de.json
@@ -1954,9 +2154,9 @@ var de_default = {
1954
2154
  "identities.messages.1010005": "Verifizieren",
1955
2155
  "identities.messages.1010006": "Authentifizierungscode",
1956
2156
  "identities.messages.1010007": "Backup-Wiederherstellungscode",
1957
- "identities.messages.1010008": "Sicherheitsschl\xFCssel verwenden",
1958
- "identities.messages.1010009": "Authentifizierungs-App verwenden",
1959
- "identities.messages.1010010": "Backup-Wiederherstellungscode verwenden",
2157
+ "identities.messages.1010008": "Mit Sicherheitsschl\xFCssel fortfahren",
2158
+ "identities.messages.1010009": "Weiter",
2159
+ "identities.messages.1010010": "Weiter",
1960
2160
  "identities.messages.1010011": "Mit Sicherheitsschl\xFCssel fortfahren",
1961
2161
  "identities.messages.1010012": "Bereiten Sie Ihr WebAuthn-Ger\xE4t vor (z. B. Sicherheitsschl\xFCssel, biometrischer Scanner, ...) und dr\xFCcken Sie auf Weiter.",
1962
2162
  "identities.messages.1010013": "Weiter",
@@ -2072,8 +2272,16 @@ var de_default = {
2072
2272
  "login.registration-label": "Sie haben noch kein Konto?",
2073
2273
  "login.subtitle-oauth2": "Zur Authentifizierung bei {clientName}",
2074
2274
  "login.title": "Anmelden",
2075
- "login.title-aal2": "Zwei-Faktor-Authentifizierung",
2275
+ "login.title-aal2": "Zweitfaktor-Authentifizierung",
2276
+ "login.subtitle-aal2": "W\xE4hlen Sie eine Methode zur Best\xE4tigung Ihrer Zwei-Faktor-Authentifizierung",
2277
+ "login.code.subtitle": "Ein Best\xE4tigungscode wird per E-Mail gesendet",
2278
+ "login.webauthn.subtitle": "Bitte bereiten Sie Ihr WebAuthN-Ger\xE4t vor",
2279
+ "login.totp.subtitle": "Bitte geben Sie den Code aus Ihrer Authenticator-App ein",
2280
+ "login.lookup_secret.subtitle": "Bitte geben Sie einen Ihrer 8-stelligen Backup-Wiederherstellungscodes ein",
2076
2281
  "login.title-refresh": "Best\xE4tigen Sie, dass Sie es sind",
2282
+ "login.2fa.go-back": "Funktioniert etwas nicht?",
2283
+ "login.2fa.go-back.link": "Zur\xFCck",
2284
+ "login.2fa.method.go-back": "Eine andere Methode w\xE4hlen",
2077
2285
  "logout.accept-button": "Ja",
2078
2286
  "logout.reject-button": "Nein",
2079
2287
  "logout.title": "M\xF6chten Sie sich abmelden?",
@@ -2094,8 +2302,12 @@ var de_default = {
2094
2302
  "two-step.passkey.title": "Passwort (empfohlen)",
2095
2303
  "two-step.password.description": "Geben Sie Ihr Passwort ein, das mit Ihrem Konto verkn\xFCpft ist",
2096
2304
  "two-step.password.title": "Passwort",
2097
- "two-step.webauthn.description": "Verwenden Sie Ihren Sicherheitsschl\xFCssel zur Authentifizierung",
2098
2305
  "two-step.webauthn.title": "Sicherheitsschl\xFCssel",
2306
+ "two-step.webauthn.description": "Verwenden Sie Ihren Sicherheitsschl\xFCssel zur Authentifizierung",
2307
+ "two-step.totp.title": "Verwenden Sie Ihre Authenticator-App (TOTP)",
2308
+ "two-step.totp.description": "Verwenden Sie einen 6-stelligen Einmal-Code aus Ihrer Authenticator-App",
2309
+ "two-step.lookup_secret.title": "Backup-Wiederherstellungscode",
2310
+ "two-step.lookup_secret.description": "Verwenden Sie einen Ihrer 8-stelligen Backup-Codes, um sich zu authentifizieren",
2099
2311
  "identities.messages.1070014": "Login- und Link-Zugangsdaten",
2100
2312
  "identities.messages.1070015": "Bitte schlie\xDFen Sie die Captcha-Challenge ab, um fortzufahren.",
2101
2313
  "identities.messages.4000038": "Die Captcha-\xDCberpr\xFCfung ist fehlgeschlagen. Bitte versuchen Sie es erneut.",
@@ -2181,7 +2393,27 @@ var de_default = {
2181
2393
  "property.password": "Passwort",
2182
2394
  "property.phone": "Telefon",
2183
2395
  "property.code": "Code",
2184
- "property.username": "Benutzername"
2396
+ "property.username": "Benutzername",
2397
+ "consent.title": "",
2398
+ "consent.subtitle": "",
2399
+ "consent.scope.openid.title": "",
2400
+ "consent.scope.openid.description": "",
2401
+ "consent.scope.offline_access.title": "",
2402
+ "consent.scope.offline_access.description": "",
2403
+ "consent.scope.profile.title": "",
2404
+ "consent.scope.profile.description": "",
2405
+ "consent.scope.email.title": "",
2406
+ "consent.scope.email.description": "",
2407
+ "consent.scope.address.title": "",
2408
+ "consent.scope.address.description": "",
2409
+ "consent.scope.phone.title": "",
2410
+ "consent.scope.phone.description": "",
2411
+ "error.title.what-happened": "Was ist passiert?",
2412
+ "error.footer.copy": "Kopieren",
2413
+ "error.footer.text": "Bitte f\xFCgen Sie bei der Meldung dieses Fehlers die folgenden Informationen hinzu:",
2414
+ "error.instructions": "Bitte versuchen Sie es in wenigen Minuten erneut oder wenden Sie sich an den Website-Betreiber.",
2415
+ "error.title.what-can-i-do": "Was kann ich tun?",
2416
+ "error.action.go-back": "Zur\xFCck"
2185
2417
  };
2186
2418
 
2187
2419
  // src/locales/es.json
@@ -2197,7 +2429,7 @@ var es_default = {
2197
2429
  "error.back-button": "Regresar",
2198
2430
  "error.description": "Ocurri\xF3 un error con el siguiente mensaje:",
2199
2431
  "error.support-email-link": "Si el problema persiste, por favor contacte a <a>{contactSupportEmail}</a>",
2200
- "error.title": "Ocurri\xF3 un error",
2432
+ "error.title": "",
2201
2433
  "error.title-internal-server-error": "Error Interno del Servidor",
2202
2434
  "error.title-not-found": "404 - P\xE1gina no encontrada",
2203
2435
  "identities.messages.1010001": "Iniciar sesi\xF3n",
@@ -2207,9 +2439,9 @@ var es_default = {
2207
2439
  "identities.messages.1010005": "Verificar",
2208
2440
  "identities.messages.1010006": "C\xF3digo de autenticaci\xF3n",
2209
2441
  "identities.messages.1010007": "C\xF3digo de recuperaci\xF3n de respaldo",
2210
- "identities.messages.1010008": "Usar llave de seguridad",
2211
- "identities.messages.1010009": "Usar Autenticador",
2212
- "identities.messages.1010010": "Usar c\xF3digo de recuperaci\xF3n de respaldo",
2442
+ "identities.messages.1010008": "Continuar con la llave de hardware",
2443
+ "identities.messages.1010009": "Continuar",
2444
+ "identities.messages.1010010": "Continuar",
2213
2445
  "identities.messages.1010011": "Continuar con llave de seguridad",
2214
2446
  "identities.messages.1010012": "Prepare su dispositivo WebAuthn (por ejemplo, llave de seguridad, esc\xE1ner biom\xE9trico, ...) y presione continuar.",
2215
2447
  "identities.messages.1010013": "Continuar",
@@ -2325,8 +2557,16 @@ var es_default = {
2325
2557
  "login.registration-label": "\xBFNo tiene una cuenta?",
2326
2558
  "login.subtitle-oauth2": "Para autenticar a {clientName}",
2327
2559
  "login.title": "Iniciar sesi\xF3n",
2328
- "login.title-aal2": "Autenticaci\xF3n de Dos Factores",
2560
+ "login.title-aal2": "Autenticaci\xF3n de dos factores",
2561
+ "login.subtitle-aal2": "Elija una forma de completar su autenticaci\xF3n de segundo factor",
2562
+ "login.code.subtitle": "Se enviar\xE1 un c\xF3digo de verificaci\xF3n por correo electr\xF3nico",
2563
+ "login.webauthn.subtitle": "Por favor, prepare su dispositivo WebAuthN",
2564
+ "login.totp.subtitle": "Ingrese el c\xF3digo generado por su aplicaci\xF3n de autenticaci\xF3n",
2565
+ "login.lookup_secret.subtitle": "Ingrese uno de sus c\xF3digos de recuperaci\xF3n de respaldo de 8 d\xEDgitos",
2329
2566
  "login.title-refresh": "Confirme que es usted",
2567
+ "login.2fa.go-back": "\xBFAlgo no funciona?",
2568
+ "login.2fa.go-back.link": "Volver",
2569
+ "login.2fa.method.go-back": "Elegir otro m\xE9todo",
2330
2570
  "logout.accept-button": "S\xED",
2331
2571
  "logout.reject-button": "No",
2332
2572
  "logout.title": "\xBFDesea cerrar sesi\xF3n?",
@@ -2358,8 +2598,12 @@ var es_default = {
2358
2598
  "two-step.passkey.title": "Clave de acceso (recomendada)",
2359
2599
  "two-step.password.description": "Ingrese la contrase\xF1a asociada con su cuenta",
2360
2600
  "two-step.password.title": "Contrase\xF1a",
2361
- "two-step.webauthn.description": "Utiliza tu llave de seguridad para autenticarte",
2362
2601
  "two-step.webauthn.title": "Clave de Seguridad",
2602
+ "two-step.webauthn.description": "Utilice su llave de seguridad para autenticase",
2603
+ "two-step.totp.title": "Utilice su aplicaci\xF3n de autenticaci\xF3n (TOTP)",
2604
+ "two-step.totp.description": "Utilice un c\xF3digo de un solo uso de 6 d\xEDgitos de su aplicaci\xF3n de autenticaci\xF3n",
2605
+ "two-step.lookup_secret.title": "C\xF3digo de recuperaci\xF3n de respaldo",
2606
+ "two-step.lookup_secret.description": "Utilice uno de sus c\xF3digos de respaldo de 8 d\xEDgitos para autenticarse",
2363
2607
  "identities.messages.1010016": "",
2364
2608
  "identities.messages.1010017": "",
2365
2609
  "identities.messages.1010018": "",
@@ -2434,7 +2678,27 @@ var es_default = {
2434
2678
  "property.identifier": "",
2435
2679
  "property.password": "",
2436
2680
  "property.phone": "",
2437
- "property.username": ""
2681
+ "property.username": "",
2682
+ "consent.title": "",
2683
+ "consent.subtitle": "",
2684
+ "consent.scope.openid.title": "",
2685
+ "consent.scope.openid.description": "",
2686
+ "consent.scope.offline_access.title": "",
2687
+ "consent.scope.offline_access.description": "",
2688
+ "consent.scope.profile.title": "",
2689
+ "consent.scope.profile.description": "",
2690
+ "consent.scope.email.title": "",
2691
+ "consent.scope.email.description": "",
2692
+ "consent.scope.address.title": "",
2693
+ "consent.scope.address.description": "",
2694
+ "consent.scope.phone.title": "",
2695
+ "consent.scope.phone.description": "",
2696
+ "error.action.go-back": "",
2697
+ "error.footer.copy": "",
2698
+ "error.footer.text": "",
2699
+ "error.instructions": "",
2700
+ "error.title.what-can-i-do": "",
2701
+ "error.title.what-happened": ""
2438
2702
  };
2439
2703
 
2440
2704
  // src/locales/fr.json
@@ -2460,9 +2724,9 @@ var fr_default = {
2460
2724
  "identities.messages.1010005": "V\xE9rifier",
2461
2725
  "identities.messages.1010006": "Code d'authentification",
2462
2726
  "identities.messages.1010007": "Code de r\xE9cup\xE9ration de secours",
2463
- "identities.messages.1010008": "Utiliser une cl\xE9 de s\xE9curit\xE9",
2464
- "identities.messages.1010009": "Utiliser un authentificateur",
2465
- "identities.messages.1010010": "Utiliser un code de r\xE9cup\xE9ration de secours",
2727
+ "identities.messages.1010008": "Continuer avec la cl\xE9 mat\xE9rielle",
2728
+ "identities.messages.1010009": "Continuer",
2729
+ "identities.messages.1010010": "Continuer",
2466
2730
  "identities.messages.1010011": "Continuer avec la cl\xE9 de s\xE9curit\xE9",
2467
2731
  "identities.messages.1010012": "Pr\xE9parez votre appareil WebAuthn (par exemple, une cl\xE9 de s\xE9curit\xE9, un scanner biom\xE9trique, ...) et appuyez sur Continuer.",
2468
2732
  "identities.messages.1010013": "Continuer",
@@ -2579,7 +2843,15 @@ var fr_default = {
2579
2843
  "login.subtitle-oauth2": "Pour vous authentifier sur {clientName}",
2580
2844
  "login.title": "Se connecter",
2581
2845
  "login.title-aal2": "Authentification \xE0 deux facteurs",
2846
+ "login.subtitle-aal2": "Choisissez une m\xE9thode pour compl\xE9ter votre authentification \xE0 deux facteurs",
2847
+ "login.code.subtitle": "Un code de v\xE9rification sera envoy\xE9 par e-mail",
2848
+ "login.webauthn.subtitle": "Veuillez pr\xE9parer votre dispositif WebAuthN",
2849
+ "login.totp.subtitle": "Veuillez saisir le code g\xE9n\xE9r\xE9 par votre application d'authentification",
2850
+ "login.lookup_secret.subtitle": "Veuillez saisir l'un de vos codes de r\xE9cup\xE9ration de secours \xE0 8 chiffres",
2582
2851
  "login.title-refresh": "Confirmez que c'est bien vous",
2852
+ "login.2fa.go-back": "Quelque chose ne fonctionne pas ?",
2853
+ "login.2fa.go-back.link": "Retour",
2854
+ "login.2fa.method.go-back": "Choisir une autre m\xE9thode",
2583
2855
  "logout.accept-button": "Oui",
2584
2856
  "logout.reject-button": "Non",
2585
2857
  "logout.title": "Souhaitez-vous vous d\xE9connecter ?",
@@ -2611,8 +2883,12 @@ var fr_default = {
2611
2883
  "two-step.passkey.title": "Cl\xE9 de passe (recommand\xE9e)",
2612
2884
  "two-step.password.description": "Entrez votre mot de passe associ\xE9 \xE0 votre compte",
2613
2885
  "two-step.password.title": "Mot de passe",
2614
- "two-step.webauthn.description": "Utilisez votre cl\xE9 de s\xE9curit\xE9 pour vous authentifier",
2615
2886
  "two-step.webauthn.title": "Cl\xE9 de S\xE9curit\xE9",
2887
+ "two-step.webauthn.description": "Utilisez votre cl\xE9 de s\xE9curit\xE9 pour vous authentifier",
2888
+ "two-step.totp.title": "Utilisez votre application d'authentification (TOTP)",
2889
+ "two-step.totp.description": "Utilisez un code \xE0 usage unique \xE0 6 chiffres provenant de votre application d'authentification",
2890
+ "two-step.lookup_secret.title": "Code de r\xE9cup\xE9ration de secours",
2891
+ "two-step.lookup_secret.description": "Utilisez l'un de vos codes de secours \xE0 8 chiffres pour vous authentifier",
2616
2892
  "identities.messages.1010023": "",
2617
2893
  "identities.messages.1070015": "",
2618
2894
  "identities.messages.4000038": "",
@@ -2687,7 +2963,27 @@ var fr_default = {
2687
2963
  "property.identifier": "",
2688
2964
  "property.password": "",
2689
2965
  "property.phone": "",
2690
- "property.username": ""
2966
+ "property.username": "",
2967
+ "consent.title": "",
2968
+ "consent.subtitle": "",
2969
+ "consent.scope.openid.title": "",
2970
+ "consent.scope.openid.description": "",
2971
+ "consent.scope.offline_access.title": "",
2972
+ "consent.scope.offline_access.description": "",
2973
+ "consent.scope.profile.title": "",
2974
+ "consent.scope.profile.description": "",
2975
+ "consent.scope.email.title": "",
2976
+ "consent.scope.email.description": "",
2977
+ "consent.scope.address.title": "",
2978
+ "consent.scope.address.description": "",
2979
+ "consent.scope.phone.title": "",
2980
+ "consent.scope.phone.description": "",
2981
+ "error.action.go-back": "",
2982
+ "error.footer.copy": "",
2983
+ "error.footer.text": "",
2984
+ "error.title.what-can-i-do": "",
2985
+ "error.title.what-happened": "",
2986
+ "error.instructions": ""
2691
2987
  };
2692
2988
 
2693
2989
  // src/locales/nl.json
@@ -2713,9 +3009,9 @@ var nl_default = {
2713
3009
  "identities.messages.1010005": "Verifi\xEBren",
2714
3010
  "identities.messages.1010006": "Verificatiecode",
2715
3011
  "identities.messages.1010007": "Back-up herstelcode",
2716
- "identities.messages.1010008": "Beveiligingssleutel gebruiken",
2717
- "identities.messages.1010009": "Authenticator gebruiken",
2718
- "identities.messages.1010010": "Back-up herstelcode gebruiken",
3012
+ "identities.messages.1010008": "Ga verder met hardware-sleutel",
3013
+ "identities.messages.1010009": "Doorgaan",
3014
+ "identities.messages.1010010": "Doorgaan",
2719
3015
  "identities.messages.1010011": "Doorgaan met beveiligingssleutel",
2720
3016
  "identities.messages.1010012": "Bereid uw WebAuthn-apparaat voor (bijv. beveiligingssleutel, biometrische scanner, ...) en druk op doorgaan.",
2721
3017
  "identities.messages.1010013": "Doorgaan",
@@ -2831,8 +3127,16 @@ var nl_default = {
2831
3127
  "login.registration-label": "Heb je nog geen account?",
2832
3128
  "login.subtitle-oauth2": "Om te authenticeren bij {clientName}",
2833
3129
  "login.title": "Inloggen",
2834
- "login.title-aal2": "Twee-Factor Authenticatie",
3130
+ "login.title-aal2": "Tweefactorauthenticatie",
3131
+ "login.subtitle-aal2": "Kies een manier om uw tweefactorauthenticatie te voltooien",
3132
+ "login.code.subtitle": "Er wordt een verificatiecode per e-mail verzonden",
3133
+ "login.webauthn.subtitle": "Bereid uw WebAuthN-apparaat voor",
3134
+ "login.totp.subtitle": "Voer de code in die door uw Authenticator-app is gegenereerd",
3135
+ "login.lookup_secret.subtitle": "Voer een van uw 8-cijferige back-up herstelcodes in",
2835
3136
  "login.title-refresh": "Bevestig dat jij het bent",
3137
+ "login.2fa.go-back": "Werkt er iets niet?",
3138
+ "login.2fa.go-back.link": "Ga terug",
3139
+ "login.2fa.method.go-back": "Kies een andere methode",
2836
3140
  "logout.accept-button": "Ja",
2837
3141
  "logout.reject-button": "Nee",
2838
3142
  "logout.title": "Wil je uitloggen?",
@@ -2864,8 +3168,12 @@ var nl_default = {
2864
3168
  "two-step.passkey.title": "Toegangscode (aanbevolen)",
2865
3169
  "two-step.password.description": "Voer uw wachtwoord in dat is gekoppeld aan uw account",
2866
3170
  "two-step.password.title": "Wachtwoord",
2867
- "two-step.webauthn.description": "Gebruik uw beveiligingssleutel om te verifi\xEBren",
2868
3171
  "two-step.webauthn.title": "Beveiligingssleutel",
3172
+ "two-step.webauthn.description": "Gebruik uw beveiligingssleutel om te verifi\xEBren",
3173
+ "two-step.totp.title": "Gebruik uw Authenticator-app (TOTP)",
3174
+ "two-step.totp.description": "Gebruik een 6-cijferige eenmalige code van uw authenticator-app",
3175
+ "two-step.lookup_secret.title": "Herstelcode",
3176
+ "two-step.lookup_secret.description": "Gebruik een van uw 8-cijferige back-upcodes om te authenticeren",
2869
3177
  "identities.messages.1010023": "",
2870
3178
  "identities.messages.1070014": "",
2871
3179
  "identities.messages.1070015": "",
@@ -2940,7 +3248,27 @@ var nl_default = {
2940
3248
  "property.identifier": "",
2941
3249
  "property.password": "",
2942
3250
  "property.phone": "",
2943
- "property.username": ""
3251
+ "property.username": "",
3252
+ "consent.title": "",
3253
+ "consent.subtitle": "",
3254
+ "consent.scope.openid.title": "",
3255
+ "consent.scope.openid.description": "",
3256
+ "consent.scope.offline_access.title": "",
3257
+ "consent.scope.offline_access.description": "",
3258
+ "consent.scope.profile.title": "",
3259
+ "consent.scope.profile.description": "",
3260
+ "consent.scope.email.title": "",
3261
+ "consent.scope.email.description": "",
3262
+ "consent.scope.address.title": "",
3263
+ "consent.scope.address.description": "",
3264
+ "consent.scope.phone.title": "",
3265
+ "consent.scope.phone.description": "",
3266
+ "error.action.go-back": "",
3267
+ "error.footer.copy": "",
3268
+ "error.footer.text": "",
3269
+ "error.title.what-can-i-do": "",
3270
+ "error.title.what-happened": "",
3271
+ "error.instructions": ""
2944
3272
  };
2945
3273
 
2946
3274
  // src/locales/pl.json
@@ -2966,9 +3294,9 @@ var pl_default = {
2966
3294
  "identities.messages.1010005": "Zweryifkuj",
2967
3295
  "identities.messages.1010006": "Kod autentykacyjny",
2968
3296
  "identities.messages.1010007": "Zapasowe kody odzyskiwania",
2969
- "identities.messages.1010008": "U\u017Cyj klucza bezpiecze\u0144stwa",
2970
- "identities.messages.1010009": "U\u017Cyj Autentykatora",
2971
- "identities.messages.1010010": "U\u017Cyj zapasowych kod\xF3w odzyskiwania",
3297
+ "identities.messages.1010008": "Kontynuuj z kluczem sprz\u0119towym",
3298
+ "identities.messages.1010009": "Kontynuuj",
3299
+ "identities.messages.1010010": "Kontynuuj",
2972
3300
  "identities.messages.1010011": "Kontynuuj za pomoc\u0105 klucza bezpiecze\u0144stwa",
2973
3301
  "identities.messages.1010012": "Przygotuj swoje urz\u0105dzenie WebAuthn (np. klucz bezpiecze\u0144stwa, czytnik biometryczny, ...) a nast\u0119pnie kliknij kontynuuj.",
2974
3302
  "identities.messages.1010013": "Kontynuuj",
@@ -3084,8 +3412,16 @@ var pl_default = {
3084
3412
  "login.registration-label": "Nie posiadasz konta?",
3085
3413
  "login.subtitle-oauth2": "Do autentykacji {clientName}",
3086
3414
  "login.title": "Zaloguj si\u0119",
3087
- "login.title-aal2": "Autentykacja Dwu-Etapowa",
3415
+ "login.title-aal2": "Uwierzytelnianie dwusk\u0142adnikowe",
3416
+ "login.subtitle-aal2": "Wybierz spos\xF3b, aby zako\u0144czy\u0107 uwierzytelnianie dwusk\u0142adnikowe",
3417
+ "login.code.subtitle": "Kod weryfikacyjny zostanie wys\u0142any e-mailem",
3418
+ "login.webauthn.subtitle": "Prosz\u0119 przygotowa\u0107 urz\u0105dzenie WebAuthN",
3419
+ "login.totp.subtitle": "Prosz\u0119 wprowadzi\u0107 kod wygenerowany przez Twoj\u0105 aplikacj\u0119 uwierzytelniaj\u0105c\u0105",
3420
+ "login.lookup_secret.subtitle": "Prosz\u0119 wprowadzi\u0107 jeden z Twoich 8-cyfrowych kod\xF3w odzyskiwania zapasowego",
3088
3421
  "login.title-refresh": "Potwierd\u017A \u017Ce to Ty",
3422
+ "login.2fa.go-back": "Co\u015B nie dzia\u0142a?",
3423
+ "login.2fa.go-back.link": "Wr\xF3\u0107",
3424
+ "login.2fa.method.go-back": "Wybierz inn\u0105 metod\u0119",
3089
3425
  "logout.accept-button": "Tak",
3090
3426
  "logout.reject-button": "Nie",
3091
3427
  "logout.title": "Czy chcesz si\u0119 wylogowa\u0107?",
@@ -3117,8 +3453,12 @@ var pl_default = {
3117
3453
  "two-step.passkey.title": "Klucz dost\u0119pu (zalecany)",
3118
3454
  "two-step.password.description": "Wprowad\u017A has\u0142o powi\u0105zane z twoim kontem",
3119
3455
  "two-step.password.title": "Has\u0142o",
3120
- "two-step.webauthn.description": "U\u017Cyj swojego klucza bezpiecze\u0144stwa do uwierzytelnienia",
3121
3456
  "two-step.webauthn.title": "Klucz bezpiecze\u0144stwa",
3457
+ "two-step.webauthn.description": "U\u017Cyj swojego klucza bezpiecze\u0144stwa do uwierzytelnienia",
3458
+ "two-step.totp.title": "U\u017Cyj swojej aplikacji uwierzytelniaj\u0105cej (TOTP)",
3459
+ "two-step.totp.description": "U\u017Cyj 6-cyfrowego jednorazowego kodu z Twojej aplikacji uwierzytelniaj\u0105cej",
3460
+ "two-step.lookup_secret.title": "Kod odzyskiwania zapasowego",
3461
+ "two-step.lookup_secret.description": "U\u017Cyj jednego z Twoich 8-cyfrowych kod\xF3w zapasowych, aby si\u0119 uwierzytelni\u0107",
3122
3462
  "identities.messages.1010016": "",
3123
3463
  "identities.messages.1010017": "",
3124
3464
  "identities.messages.1010018": "",
@@ -3193,7 +3533,27 @@ var pl_default = {
3193
3533
  "property.password": "",
3194
3534
  "property.phone": "",
3195
3535
  "property.username": "",
3196
- "property.identifier": ""
3536
+ "property.identifier": "",
3537
+ "consent.title": "",
3538
+ "consent.subtitle": "",
3539
+ "consent.scope.openid.title": "",
3540
+ "consent.scope.openid.description": "",
3541
+ "consent.scope.offline_access.title": "",
3542
+ "consent.scope.offline_access.description": "",
3543
+ "consent.scope.profile.title": "",
3544
+ "consent.scope.profile.description": "",
3545
+ "consent.scope.email.title": "",
3546
+ "consent.scope.email.description": "",
3547
+ "consent.scope.address.title": "",
3548
+ "consent.scope.address.description": "",
3549
+ "consent.scope.phone.title": "",
3550
+ "consent.scope.phone.description": "",
3551
+ "error.action.go-back": "",
3552
+ "error.footer.copy": "",
3553
+ "error.footer.text": "",
3554
+ "error.title.what-can-i-do": "",
3555
+ "error.title.what-happened": "",
3556
+ "error.instructions": ""
3197
3557
  };
3198
3558
 
3199
3559
  // src/locales/pt.json
@@ -3219,9 +3579,9 @@ var pt_default = {
3219
3579
  "identities.messages.1010005": "Verificar",
3220
3580
  "identities.messages.1010006": "C\xF3digo de Autentica\xE7\xE3o",
3221
3581
  "identities.messages.1010007": "C\xF3digo de Recupera\xE7\xE3o de Backup",
3222
- "identities.messages.1010008": "Usar chave de seguran\xE7a",
3223
- "identities.messages.1010009": "Usar o Autenticador",
3224
- "identities.messages.1010010": "Usar c\xF3digo de recupera\xE7\xE3o de backup",
3582
+ "identities.messages.1010008": "Continuar com chave de hardware",
3583
+ "identities.messages.1010009": "Continuar",
3584
+ "identities.messages.1010010": "Continuar",
3225
3585
  "identities.messages.1010011": "Continuar com a chave de seguran\xE7a",
3226
3586
  "identities.messages.1010012": "Prepare o seu dispositivo WebAuthn (por exemplo, chave de seguran\xE7a, scanner biom\xE9trico, ...) e pressione continuar.",
3227
3587
  "identities.messages.1010013": "Continuar",
@@ -3337,8 +3697,16 @@ var pt_default = {
3337
3697
  "login.registration-label": "N\xE3o tem uma conta?",
3338
3698
  "login.subtitle-oauth2": "Para autenticar {clientName}",
3339
3699
  "login.title": "Entrar",
3340
- "login.title-aal2": "Autentica\xE7\xE3o de Dois Fatores",
3700
+ "login.title-aal2": "Autentica\xE7\xE3o de dois fatores",
3701
+ "login.subtitle-aal2": "Escolha uma forma de completar sua autentica\xE7\xE3o de segundo fator",
3702
+ "login.code.subtitle": "Um c\xF3digo de verifica\xE7\xE3o ser\xE1 enviado por e-mail",
3703
+ "login.webauthn.subtitle": "Por favor, prepare seu dispositivo WebAuthN",
3704
+ "login.totp.subtitle": "Digite o c\xF3digo gerado pelo seu aplicativo autenticador",
3705
+ "login.lookup_secret.subtitle": "Digite um dos seus c\xF3digos de recupera\xE7\xE3o de 8 d\xEDgitos",
3341
3706
  "login.title-refresh": "Confirme que \xE9 voc\xEA",
3707
+ "login.2fa.go-back": "Algo n\xE3o est\xE1 funcionando?",
3708
+ "login.2fa.go-back.link": "Voltar",
3709
+ "login.2fa.method.go-back": "Escolher outro m\xE9todo",
3342
3710
  "logout.accept-button": "Sim",
3343
3711
  "logout.reject-button": "N\xE3o",
3344
3712
  "logout.title": "Deseja sair?",
@@ -3370,8 +3738,12 @@ var pt_default = {
3370
3738
  "two-step.passkey.title": "Chave de acesso (recomendado)",
3371
3739
  "two-step.password.description": "Insira a sua senha associada \xE0 sua conta",
3372
3740
  "two-step.password.title": "Senha",
3373
- "two-step.webauthn.description": "Use sua chave de seguran\xE7a para autenticar",
3374
3741
  "two-step.webauthn.title": "Chave de Seguran\xE7a",
3742
+ "two-step.webauthn.description": "Use sua chave de seguran\xE7a para autenticar",
3743
+ "two-step.totp.title": "Use seu aplicativo autenticador (TOTP)",
3744
+ "two-step.totp.description": "Use um c\xF3digo \xFAnico de 6 d\xEDgitos do seu aplicativo autenticador",
3745
+ "two-step.lookup_secret.title": "C\xF3digo de recupera\xE7\xE3o de backup",
3746
+ "two-step.lookup_secret.description": "Use um dos seus c\xF3digos de backup de 8 d\xEDgitos para autenticar",
3375
3747
  "identities.messages.1010016": "",
3376
3748
  "identities.messages.1010017": "",
3377
3749
  "identities.messages.1010018": "",
@@ -3446,7 +3818,27 @@ var pt_default = {
3446
3818
  "property.identifier": "",
3447
3819
  "property.password": "",
3448
3820
  "property.phone": "",
3449
- "property.username": ""
3821
+ "property.username": "",
3822
+ "consent.title": "",
3823
+ "consent.subtitle": "",
3824
+ "consent.scope.openid.title": "",
3825
+ "consent.scope.openid.description": "",
3826
+ "consent.scope.offline_access.title": "",
3827
+ "consent.scope.offline_access.description": "",
3828
+ "consent.scope.profile.title": "",
3829
+ "consent.scope.profile.description": "",
3830
+ "consent.scope.email.title": "",
3831
+ "consent.scope.email.description": "",
3832
+ "consent.scope.address.title": "",
3833
+ "consent.scope.address.description": "",
3834
+ "consent.scope.phone.title": "",
3835
+ "consent.scope.phone.description": "",
3836
+ "error.action.go-back": "",
3837
+ "error.footer.copy": "",
3838
+ "error.footer.text": "",
3839
+ "error.title.what-can-i-do": "",
3840
+ "error.title.what-happened": "",
3841
+ "error.instructions": ""
3450
3842
  };
3451
3843
 
3452
3844
  // src/locales/sv.json
@@ -3472,9 +3864,9 @@ var sv_default = {
3472
3864
  "identities.messages.1010005": "Verifiera",
3473
3865
  "identities.messages.1010006": "Autentiseringskod",
3474
3866
  "identities.messages.1010007": "\xC5terst\xE4llningskod f\xF6r backup",
3475
- "identities.messages.1010008": "Anv\xE4nd s\xE4kerhetsnyckel",
3476
- "identities.messages.1010009": "Anv\xE4nd autentiserings-app",
3477
- "identities.messages.1010010": "Anv\xE4nd reserv\xE5terst\xE4llningskod",
3867
+ "identities.messages.1010008": "Forts\xE4tt med s\xE4kerhetsnyckel",
3868
+ "identities.messages.1010009": "Forts\xE4tt",
3869
+ "identities.messages.1010010": "Forts\xE4tt",
3478
3870
  "identities.messages.1010011": "Forts\xE4tt med s\xE4kerhetsnyckel",
3479
3871
  "identities.messages.1010012": "F\xF6rbered din WebAuthn-enhet (t.ex. s\xE4kerhetsnyckel, biometriska skanner, ...) och tryck p\xE5 forts\xE4tt.",
3480
3872
  "identities.messages.1010013": "Forts\xE4tt",
@@ -3609,7 +4001,15 @@ var sv_default = {
3609
4001
  "login.subtitle-oauth2": "Att autentisera {clientName}",
3610
4002
  "login.title": "Logga in",
3611
4003
  "login.title-aal2": "Tv\xE5faktorsautentisering",
4004
+ "login.subtitle-aal2": "V\xE4lj ett s\xE4tt att slutf\xF6ra din tv\xE5faktorsautentisering",
4005
+ "login.code.subtitle": "En verifieringskod kommer att skickas via e-post",
4006
+ "login.webauthn.subtitle": "F\xF6rbered din WebAuthN-enhet",
4007
+ "login.totp.subtitle": "Ange koden som genererats av din autentiseringsapp",
4008
+ "login.lookup_secret.subtitle": "Ange en av dina 8-siffriga \xE5terst\xE4llningskoder",
3612
4009
  "login.title-refresh": "Bekr\xE4fta att det \xE4r du",
4010
+ "login.2fa.go-back": "N\xE5got fungerar inte?",
4011
+ "login.2fa.go-back.link": "G\xE5 tillbaka",
4012
+ "login.2fa.method.go-back": "V\xE4lj en annan metod",
3613
4013
  "logout.accept-button": "Ja",
3614
4014
  "logout.reject-button": "Nej",
3615
4015
  "logout.title": "Vill du logga ut?",
@@ -3641,8 +4041,12 @@ var sv_default = {
3641
4041
  "two-step.passkey.title": "Passerkod (rekommenderad)",
3642
4042
  "two-step.password.description": "Ange ditt l\xF6senord kopplat till ditt konto",
3643
4043
  "two-step.password.title": "L\xF6senord",
3644
- "two-step.webauthn.description": "Anv\xE4nd din s\xE4kerhetsnyckel f\xF6r att autentisera",
3645
4044
  "two-step.webauthn.title": "S\xE4kerhetsnyckel",
4045
+ "two-step.webauthn.description": "Anv\xE4nd din s\xE4kerhetsnyckel f\xF6r att autentisera",
4046
+ "two-step.totp.title": "Anv\xE4nd din autentiseringsapp (TOTP)",
4047
+ "two-step.totp.description": "Anv\xE4nd en 6-siffrig eng\xE5ngskod fr\xE5n din autentiseringsapp",
4048
+ "two-step.lookup_secret.title": "Reserv\xE5terst\xE4llningskod",
4049
+ "two-step.lookup_secret.description": "Anv\xE4nd en av dina 8-siffriga reservkoder f\xF6r att autentisera",
3646
4050
  "identities.messages.4000037": "Detta konto finns inte eller har ingen inloggningsmetod konfigurerad.",
3647
4051
  "identities.messages.4000038": "Captcha-verifiering misslyckades, f\xF6rs\xF6k igen.",
3648
4052
  "identities.messages.1010020": "",
@@ -3699,7 +4103,27 @@ var sv_default = {
3699
4103
  "property.phone": "telefon",
3700
4104
  "property.username": "anv\xE4ndarnamn",
3701
4105
  "property.identifier": "identifier",
3702
- "property.code": "kod"
4106
+ "property.code": "kod",
4107
+ "consent.title": "",
4108
+ "consent.subtitle": "",
4109
+ "consent.scope.openid.title": "",
4110
+ "consent.scope.openid.description": "",
4111
+ "consent.scope.offline_access.title": "",
4112
+ "consent.scope.offline_access.description": "",
4113
+ "consent.scope.profile.title": "",
4114
+ "consent.scope.profile.description": "",
4115
+ "consent.scope.email.title": "",
4116
+ "consent.scope.email.description": "",
4117
+ "consent.scope.address.title": "",
4118
+ "consent.scope.address.description": "",
4119
+ "consent.scope.phone.title": "",
4120
+ "consent.scope.phone.description": "",
4121
+ "error.action.go-back": "",
4122
+ "error.footer.copy": "",
4123
+ "error.footer.text": "",
4124
+ "error.title.what-can-i-do": "",
4125
+ "error.title.what-happened": "",
4126
+ "error.instructions": ""
3703
4127
  };
3704
4128
 
3705
4129
  // src/locales/index.ts
@@ -3714,6 +4138,6 @@ var OryLocales = {
3714
4138
  sv: sv_default
3715
4139
  };
3716
4140
 
3717
- export { HeadlessPageHeader, OryCard, OryCardContent, OryCardFooter, OryCardHeader, OryCardValidationMessages, OryForm, OryFormGroupDivider, OryFormGroups, OryFormOidcButtons, OryFormSection, OryFormSocialButtonsForm, OryLocales, OryProvider, OrySettingsCard, OryTwoStepCard, messageTestId, uiTextToFormattedMessage, useComponents, useNodeSorter, useOryFlow };
4141
+ export { HeadlessPageHeader, OryCard, OryCardContent, OryCardFooter, OryCardHeader, OryCardValidationMessages, OryConsentCard, OryForm, OryFormGroupDivider, OryFormGroups, OryFormOidcButtons, OryFormSection, OryFormSocialButtonsForm, OryLocales, OryProvider, OrySettingsCard, OryTwoStepCard, messageTestId, uiTextToFormattedMessage, useComponents, useNodeSorter, useOryFlow };
3718
4142
  //# sourceMappingURL=index.mjs.map
3719
4143
  //# sourceMappingURL=index.mjs.map