@ory/elements-react 0.0.0-pr.8e964fc1 → 0.0.0-pr.96c07cce
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +245 -0
- package/DEVELOPMENT.md +19 -4
- package/README.md +253 -4
- package/babel.config.js +10 -0
- package/dist/client/frontendClient.d.mts +5 -2
- package/dist/client/frontendClient.d.ts +5 -2
- package/dist/client/frontendClient.js +25 -2
- package/dist/client/frontendClient.js.map +1 -1
- package/dist/client/frontendClient.mjs +25 -2
- package/dist/client/frontendClient.mjs.map +1 -1
- package/dist/client/index.js +3 -3
- package/dist/index.d.mts +97 -27
- package/dist/index.d.ts +97 -27
- package/dist/index.js +943 -352
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +946 -356
- package/dist/index.mjs.map +1 -1
- package/dist/theme/default/index.css +187 -117
- package/dist/theme/default/index.css.map +1 -1
- package/dist/theme/default/index.d.mts +31 -5
- package/dist/theme/default/index.d.ts +31 -5
- package/dist/theme/default/index.js +4320 -814
- package/dist/theme/default/index.js.map +1 -1
- package/dist/theme/default/index.mjs +4377 -793
- package/dist/theme/default/index.mjs.map +1 -1
- package/package.json +22 -15
- package/tailwind/generated/default-variables.css +1 -1
- package/tsconfig.json +3 -2
package/dist/index.js
CHANGED
|
@@ -36,16 +36,30 @@ function useGroupSorter() {
|
|
|
36
36
|
}
|
|
37
37
|
var defaultNodeOrder = [
|
|
38
38
|
"oidc",
|
|
39
|
+
"saml",
|
|
39
40
|
"identifier_first",
|
|
40
41
|
"default",
|
|
41
42
|
"profile",
|
|
42
43
|
"password",
|
|
44
|
+
// CAPTCHA is below password because otherwise the password input field
|
|
45
|
+
// would be above the captcha. Somehow, we sort the password sign up button somewhere else to be always at the bottom.
|
|
46
|
+
"captcha",
|
|
43
47
|
"passkey",
|
|
44
48
|
"code",
|
|
45
49
|
"webauthn"
|
|
46
50
|
];
|
|
47
51
|
function defaultNodeSorter(a, b) {
|
|
48
52
|
var _a, _b;
|
|
53
|
+
const aIsCaptcha = a.group === "captcha";
|
|
54
|
+
const bIsCaptcha = b.group === "captcha";
|
|
55
|
+
const aIsSubmit = clientFetch.isUiNodeInputAttributes(a.attributes) && a.attributes.type === "submit";
|
|
56
|
+
const bIsSubmit = clientFetch.isUiNodeInputAttributes(b.attributes) && b.attributes.type === "submit";
|
|
57
|
+
if (aIsCaptcha && bIsSubmit) {
|
|
58
|
+
return -1;
|
|
59
|
+
}
|
|
60
|
+
if (bIsCaptcha && aIsSubmit) {
|
|
61
|
+
return 1;
|
|
62
|
+
}
|
|
49
63
|
const aGroupWeight = (_a = defaultNodeOrder.indexOf(a.group)) != null ? _a : 999;
|
|
50
64
|
const bGroupWeight = (_b = defaultNodeOrder.indexOf(b.group)) != null ? _b : 999;
|
|
51
65
|
return aGroupWeight - bGroupWeight;
|
|
@@ -85,25 +99,10 @@ function OryComponentProvider({
|
|
|
85
99
|
}
|
|
86
100
|
);
|
|
87
101
|
}
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
(node) => node.group === clientFetch.UiNodeGroupEnum.IdentifierFirst && "name" in node.attributes && node.attributes.name === "identifier" && node.attributes.type === "hidden"
|
|
93
|
-
);
|
|
94
|
-
}
|
|
95
|
-
function filterOidcOut(nodes) {
|
|
96
|
-
return nodes.filter((node) => node.group !== clientFetch.UiNodeGroupEnum.Oidc);
|
|
97
|
-
}
|
|
98
|
-
function getFinalNodes(uniqueGroups, selectedGroup) {
|
|
99
|
-
var _a, _b, _c;
|
|
100
|
-
const selectedNodes = selectedGroup ? (_a = uniqueGroups[selectedGroup]) != null ? _a : [] : [];
|
|
101
|
-
return [
|
|
102
|
-
...(_b = uniqueGroups == null ? void 0 : uniqueGroups.identifier_first) != null ? _b : [],
|
|
103
|
-
...(_c = uniqueGroups == null ? void 0 : uniqueGroups.default) != null ? _c : []
|
|
104
|
-
].flat().filter(
|
|
105
|
-
(node) => "type" in node.attributes && node.attributes.type === "hidden"
|
|
106
|
-
).concat(selectedNodes);
|
|
102
|
+
|
|
103
|
+
// src/theme/default/utils/form.ts
|
|
104
|
+
function isGroupImmediateSubmit(group) {
|
|
105
|
+
return group === "code";
|
|
107
106
|
}
|
|
108
107
|
function triggerToWindowCall(trigger) {
|
|
109
108
|
if (!trigger) {
|
|
@@ -172,25 +171,37 @@ function nodesToAuthMethodGroups(nodes, excludeAuthMethods = []) {
|
|
|
172
171
|
clientFetch.UiNodeGroupEnum.Default,
|
|
173
172
|
clientFetch.UiNodeGroupEnum.IdentifierFirst,
|
|
174
173
|
clientFetch.UiNodeGroupEnum.Profile,
|
|
174
|
+
clientFetch.UiNodeGroupEnum.Captcha,
|
|
175
175
|
...excludeAuthMethods
|
|
176
176
|
].includes(group)
|
|
177
177
|
);
|
|
178
178
|
}
|
|
179
|
-
function useNodesGroups(nodes) {
|
|
179
|
+
function useNodesGroups(nodes, { omit } = {}) {
|
|
180
180
|
const groupSorter = useGroupSorter();
|
|
181
181
|
const groups = react.useMemo(() => {
|
|
182
|
-
var _a;
|
|
182
|
+
var _a, _b;
|
|
183
183
|
const groups2 = {};
|
|
184
|
+
const groupRetained = {};
|
|
184
185
|
for (const node of nodes) {
|
|
185
|
-
if (node.type === "script") {
|
|
186
|
-
continue;
|
|
187
|
-
}
|
|
188
186
|
const groupNodes = (_a = groups2[node.group]) != null ? _a : [];
|
|
189
187
|
groupNodes.push(node);
|
|
190
188
|
groups2[node.group] = groupNodes;
|
|
189
|
+
if ((omit == null ? void 0 : omit.includes("script")) && clientFetch.isUiNodeScriptAttributes(node.attributes)) {
|
|
190
|
+
continue;
|
|
191
|
+
}
|
|
192
|
+
if ((omit == null ? void 0 : omit.includes("input_hidden")) && clientFetch.isUiNodeInputAttributes(node.attributes) && node.attributes.type === "hidden") {
|
|
193
|
+
continue;
|
|
194
|
+
}
|
|
195
|
+
groupRetained[node.group] = ((_b = groupRetained[node.group]) != null ? _b : 0) + 1;
|
|
191
196
|
}
|
|
192
|
-
|
|
193
|
-
|
|
197
|
+
const finalGroups = {};
|
|
198
|
+
for (const [group, count] of Object.entries(groupRetained)) {
|
|
199
|
+
if (count > 0) {
|
|
200
|
+
finalGroups[group] = groups2[group];
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
return finalGroups;
|
|
204
|
+
}, [nodes, omit]);
|
|
194
205
|
const entries = react.useMemo(
|
|
195
206
|
() => Object.entries(groups).sort(([a], [b]) => groupSorter(a, b)),
|
|
196
207
|
[groups, groupSorter]
|
|
@@ -200,6 +211,96 @@ function useNodesGroups(nodes) {
|
|
|
200
211
|
entries
|
|
201
212
|
};
|
|
202
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
|
+
});
|
|
217
|
+
function useFunctionalNodes(nodes) {
|
|
218
|
+
return nodes.filter(
|
|
219
|
+
({ group }) => [
|
|
220
|
+
clientFetch.UiNodeGroupEnum.Default,
|
|
221
|
+
clientFetch.UiNodeGroupEnum.IdentifierFirst,
|
|
222
|
+
clientFetch.UiNodeGroupEnum.Profile,
|
|
223
|
+
clientFetch.UiNodeGroupEnum.Captcha
|
|
224
|
+
].includes(group)
|
|
225
|
+
);
|
|
226
|
+
}
|
|
227
|
+
function isUiNodeGroupEnum(method) {
|
|
228
|
+
return Object.values(clientFetch.UiNodeGroupEnum).includes(method);
|
|
229
|
+
}
|
|
230
|
+
function isSingleSignOnNode(node) {
|
|
231
|
+
return node.group === clientFetch.UiNodeGroupEnum.Oidc || node.group === clientFetch.UiNodeGroupEnum.Saml;
|
|
232
|
+
}
|
|
233
|
+
function hasSingleSignOnNodes(nodes) {
|
|
234
|
+
return nodes.some(isSingleSignOnNode);
|
|
235
|
+
}
|
|
236
|
+
function withoutSingleSignOnNodes(nodes) {
|
|
237
|
+
return nodes.filter((node) => !isSingleSignOnNode(node));
|
|
238
|
+
}
|
|
239
|
+
function isNodeVisible(node) {
|
|
240
|
+
if (clientFetch.isUiNodeScriptAttributes(node.attributes)) {
|
|
241
|
+
return false;
|
|
242
|
+
} else if (clientFetch.isUiNodeInputAttributes(node.attributes)) {
|
|
243
|
+
if (node.attributes.type === "hidden") {
|
|
244
|
+
return false;
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
return true;
|
|
248
|
+
}
|
|
249
|
+
function useNodeGroupsWithVisibleNodes(nodes) {
|
|
250
|
+
return react.useMemo(() => {
|
|
251
|
+
var _a, _b;
|
|
252
|
+
const groups = {};
|
|
253
|
+
const groupRetained = {};
|
|
254
|
+
for (const node of nodes) {
|
|
255
|
+
const groupNodes = (_a = groups[node.group]) != null ? _a : [];
|
|
256
|
+
const groupCount = (_b = groupRetained[node.group]) != null ? _b : 0;
|
|
257
|
+
groupNodes.push(node);
|
|
258
|
+
groups[node.group] = groupNodes;
|
|
259
|
+
if (!isNodeVisible(node)) {
|
|
260
|
+
continue;
|
|
261
|
+
}
|
|
262
|
+
groupRetained[node.group] = groupCount + 1;
|
|
263
|
+
}
|
|
264
|
+
const finalGroups = {};
|
|
265
|
+
for (const [group, count] of Object.entries(groupRetained)) {
|
|
266
|
+
if (count > 0) {
|
|
267
|
+
finalGroups[group] = groups[group];
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
return finalGroups;
|
|
271
|
+
}, [nodes]);
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
// src/components/card/two-step/utils.ts
|
|
275
|
+
function isChoosingMethod(flow) {
|
|
276
|
+
return flow.flow.ui.nodes.some(
|
|
277
|
+
(node) => "name" in node.attributes && node.attributes.name === "screen" && "value" in node.attributes && node.attributes.value === "previous"
|
|
278
|
+
) || flow.flow.ui.nodes.some(
|
|
279
|
+
(node) => node.group === clientFetch.UiNodeGroupEnum.IdentifierFirst && "name" in node.attributes && node.attributes.name === "identifier" && node.attributes.type === "hidden"
|
|
280
|
+
) || flow.flowType === clientFetch.FlowType.Login && flow.flow.requested_aal === "aal2";
|
|
281
|
+
}
|
|
282
|
+
function getFinalNodes(uniqueGroups, selectedGroup) {
|
|
283
|
+
var _a, _b, _c, _d;
|
|
284
|
+
const selectedNodes = selectedGroup ? (_a = uniqueGroups[selectedGroup]) != null ? _a : [] : [];
|
|
285
|
+
return [
|
|
286
|
+
...(_b = uniqueGroups == null ? void 0 : uniqueGroups.identifier_first) != null ? _b : [],
|
|
287
|
+
...(_c = uniqueGroups == null ? void 0 : uniqueGroups.default) != null ? _c : [],
|
|
288
|
+
...(_d = uniqueGroups == null ? void 0 : uniqueGroups.captcha) != null ? _d : []
|
|
289
|
+
].flat().filter(
|
|
290
|
+
(node) => "type" in node.attributes && node.attributes.type === "hidden"
|
|
291
|
+
).concat(selectedNodes);
|
|
292
|
+
}
|
|
293
|
+
var handleAfterFormSubmit = (dispatchFormState) => (method) => {
|
|
294
|
+
if (typeof method !== "string" || !isUiNodeGroupEnum(method)) {
|
|
295
|
+
return;
|
|
296
|
+
}
|
|
297
|
+
if (isGroupImmediateSubmit(method)) {
|
|
298
|
+
dispatchFormState({
|
|
299
|
+
type: "action_select_method",
|
|
300
|
+
method
|
|
301
|
+
});
|
|
302
|
+
}
|
|
303
|
+
};
|
|
203
304
|
|
|
204
305
|
// src/context/form-state.ts
|
|
205
306
|
function findMethodWithMessage(nodes) {
|
|
@@ -221,9 +322,11 @@ function parseStateFromFlow(flow) {
|
|
|
221
322
|
return { current: "method_active", method: "code" };
|
|
222
323
|
} else if (methodWithMessage) {
|
|
223
324
|
return { current: "method_active", method: methodWithMessage.group };
|
|
224
|
-
} else if (flow.flow.active && !["default", "identifier_first", "oidc"].includes(
|
|
325
|
+
} else if (flow.flow.active && !["default", "identifier_first", "oidc", "saml"].includes(
|
|
326
|
+
flow.flow.active
|
|
327
|
+
)) {
|
|
225
328
|
return { current: "method_active", method: flow.flow.active };
|
|
226
|
-
} else if (isChoosingMethod(flow
|
|
329
|
+
} else if (isChoosingMethod(flow)) {
|
|
227
330
|
const authMethods = nodesToAuthMethodGroups(flow.flow.ui.nodes);
|
|
228
331
|
if (authMethods.length === 1 && authMethods[0] !== "code") {
|
|
229
332
|
return { current: "method_active", method: authMethods[0] };
|
|
@@ -245,23 +348,32 @@ function parseStateFromFlow(flow) {
|
|
|
245
348
|
break;
|
|
246
349
|
case clientFetch.FlowType.Settings:
|
|
247
350
|
return { current: "settings" };
|
|
351
|
+
case clientFetch.FlowType.OAuth2Consent:
|
|
352
|
+
return { current: "method_active", method: "oauth2_consent" };
|
|
248
353
|
}
|
|
249
354
|
console.warn(
|
|
250
355
|
`[Ory/Elements React] Encountered an unknown form state on ${flow.flowType} flow with ID ${flow.flow.id}`
|
|
251
356
|
);
|
|
252
357
|
throw new Error("Unknown form state");
|
|
253
358
|
}
|
|
254
|
-
function formStateReducer(state, action) {
|
|
255
|
-
switch (action.type) {
|
|
256
|
-
case "action_flow_update":
|
|
257
|
-
return parseStateFromFlow(action.flow);
|
|
258
|
-
case "action_select_method":
|
|
259
|
-
return { current: "method_active", method: action.method };
|
|
260
|
-
}
|
|
261
|
-
return state;
|
|
262
|
-
}
|
|
263
359
|
function useFormStateReducer(flow) {
|
|
264
|
-
|
|
360
|
+
const action = parseStateFromFlow(flow);
|
|
361
|
+
const [selectedMethod, setSelectedMethod] = react.useState();
|
|
362
|
+
const formStateReducer = (state, action2) => {
|
|
363
|
+
switch (action2.type) {
|
|
364
|
+
case "action_flow_update": {
|
|
365
|
+
if (selectedMethod)
|
|
366
|
+
return { current: "method_active", method: selectedMethod };
|
|
367
|
+
return parseStateFromFlow(action2.flow);
|
|
368
|
+
}
|
|
369
|
+
case "action_select_method": {
|
|
370
|
+
setSelectedMethod(action2.method);
|
|
371
|
+
return { current: "method_active", method: action2.method };
|
|
372
|
+
}
|
|
373
|
+
}
|
|
374
|
+
return state;
|
|
375
|
+
};
|
|
376
|
+
return react.useReducer(formStateReducer, action);
|
|
265
377
|
}
|
|
266
378
|
function useOryFlow() {
|
|
267
379
|
const ctx = react.useContext(OryFlowContext);
|
|
@@ -351,6 +463,22 @@ function computeDefaultValues(nodes) {
|
|
|
351
463
|
if (attrs.name === "method" || attrs.type === "submit" || typeof attrs.value === "undefined") {
|
|
352
464
|
return acc;
|
|
353
465
|
}
|
|
466
|
+
if (attrs.name.startsWith("grant_scope")) {
|
|
467
|
+
const scope = attrs.value;
|
|
468
|
+
if (Array.isArray(acc.grant_scope)) {
|
|
469
|
+
return {
|
|
470
|
+
...acc,
|
|
471
|
+
// We want to have all scopes accepted by default, so that the user has to actively uncheck them.
|
|
472
|
+
grant_scope: [...acc.grant_scope, scope]
|
|
473
|
+
};
|
|
474
|
+
} else if (!acc.grant_scope) {
|
|
475
|
+
return {
|
|
476
|
+
...acc,
|
|
477
|
+
grant_scope: [scope]
|
|
478
|
+
};
|
|
479
|
+
}
|
|
480
|
+
return acc;
|
|
481
|
+
}
|
|
354
482
|
return unrollTrait(
|
|
355
483
|
{
|
|
356
484
|
name: attrs.name,
|
|
@@ -438,15 +566,11 @@ function OryCardContent({ children }) {
|
|
|
438
566
|
const { Card } = useComponents();
|
|
439
567
|
return /* @__PURE__ */ jsxRuntime.jsx(Card.Content, { children });
|
|
440
568
|
}
|
|
441
|
-
|
|
442
|
-
// src/theme/default/utils/form.ts
|
|
443
|
-
function isGroupImmediateSubmit(group) {
|
|
444
|
-
return group === "code";
|
|
445
|
-
}
|
|
446
569
|
function frontendClient(sdkUrl, opts = {}) {
|
|
447
570
|
const config = new clientFetch.Configuration({
|
|
448
571
|
...opts,
|
|
449
572
|
basePath: sdkUrl,
|
|
573
|
+
credentials: "include",
|
|
450
574
|
headers: {
|
|
451
575
|
Accept: "application/json",
|
|
452
576
|
...opts.headers
|
|
@@ -782,7 +906,7 @@ function useOryFormSubmit(onAfterSubmit) {
|
|
|
782
906
|
if ("lookup_secret_confirm" in submitData || "lookup_secret_reveal" in submitData || "lookup_secret_regenerate" in submitData || "lookup_secret_disable" in submitData) {
|
|
783
907
|
submitData.method = "lookup_secret";
|
|
784
908
|
}
|
|
785
|
-
if (submitData.method ===
|
|
909
|
+
if (submitData.method === clientFetch.UiNodeGroupEnum.Oidc && submitData.link && supportsSelectAccountPrompt.includes(submitData.link)) {
|
|
786
910
|
submitData.upstream_parameters = {
|
|
787
911
|
prompt: "select_account"
|
|
788
912
|
};
|
|
@@ -800,6 +924,19 @@ function useOryFormSubmit(onAfterSubmit) {
|
|
|
800
924
|
});
|
|
801
925
|
break;
|
|
802
926
|
}
|
|
927
|
+
case clientFetch.FlowType.OAuth2Consent: {
|
|
928
|
+
const response = await fetch(flowContainer.flow.ui.action, {
|
|
929
|
+
method: "POST",
|
|
930
|
+
body: JSON.stringify(data),
|
|
931
|
+
headers: {
|
|
932
|
+
"Content-Type": "application/json"
|
|
933
|
+
}
|
|
934
|
+
});
|
|
935
|
+
const oauth2Success = await response.json();
|
|
936
|
+
if (oauth2Success.redirect_to && typeof oauth2Success.redirect_to === "string") {
|
|
937
|
+
onRedirect(oauth2Success.redirect_to);
|
|
938
|
+
}
|
|
939
|
+
}
|
|
803
940
|
}
|
|
804
941
|
if ("password" in data) {
|
|
805
942
|
methods.setValue("password", "");
|
|
@@ -814,15 +951,22 @@ function useOryFormSubmit(onAfterSubmit) {
|
|
|
814
951
|
};
|
|
815
952
|
return onSubmit;
|
|
816
953
|
}
|
|
817
|
-
function OryForm({
|
|
818
|
-
|
|
954
|
+
function OryForm({
|
|
955
|
+
children,
|
|
956
|
+
onAfterSubmit,
|
|
957
|
+
"data-testid": dataTestId
|
|
958
|
+
}) {
|
|
819
959
|
const { Form } = useComponents();
|
|
820
960
|
const flowContainer = useOryFlow();
|
|
821
961
|
const methods = reactHookForm.useFormContext();
|
|
962
|
+
const { Message } = useComponents();
|
|
822
963
|
const intl = reactIntl.useIntl();
|
|
823
964
|
const onSubmit = useOryFormSubmit(onAfterSubmit);
|
|
824
965
|
const hasMethods = flowContainer.flow.ui.nodes.some((node) => {
|
|
825
966
|
if (clientFetch.isUiNodeInputAttributes(node.attributes)) {
|
|
967
|
+
if (node.attributes.type === "hidden") {
|
|
968
|
+
return false;
|
|
969
|
+
}
|
|
826
970
|
return node.attributes.name !== "csrf_token";
|
|
827
971
|
} else if (clientFetch.isUiNodeAnchorAttributes(node.attributes)) {
|
|
828
972
|
return true;
|
|
@@ -833,15 +977,24 @@ function OryForm({ children, onAfterSubmit }) {
|
|
|
833
977
|
}
|
|
834
978
|
return false;
|
|
835
979
|
});
|
|
836
|
-
if (!hasMethods
|
|
837
|
-
|
|
838
|
-
id:
|
|
839
|
-
|
|
840
|
-
|
|
980
|
+
if (!hasMethods) {
|
|
981
|
+
const m = {
|
|
982
|
+
id: 5000002,
|
|
983
|
+
text: intl.formatMessage({
|
|
984
|
+
id: `identities.messages.${5000002}`,
|
|
985
|
+
defaultMessage: "No authentication methods are available for this request. Please contact the site or app owner."
|
|
986
|
+
}),
|
|
987
|
+
type: "error"
|
|
988
|
+
};
|
|
989
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { "data-testid": dataTestId, children: /* @__PURE__ */ jsxRuntime.jsx(Message.Root, { children: /* @__PURE__ */ jsxRuntime.jsx(Message.Content, { message: m }, m.id) }) });
|
|
990
|
+
}
|
|
991
|
+
if ((flowContainer.flowType === clientFetch.FlowType.Login || flowContainer.flowType === clientFetch.FlowType.Registration) && flowContainer.formState.current === "method_active" && flowContainer.formState.method === "code") {
|
|
992
|
+
methods.setValue("method", "code");
|
|
841
993
|
}
|
|
842
994
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
843
995
|
Form.Root,
|
|
844
996
|
{
|
|
997
|
+
"data-testid": dataTestId,
|
|
845
998
|
action: flowContainer.flow.ui.action,
|
|
846
999
|
method: flowContainer.flow.ui.method,
|
|
847
1000
|
onSubmit: (e) => void methods.handleSubmit(onSubmit)(e),
|
|
@@ -849,7 +1002,15 @@ function OryForm({ children, onAfterSubmit }) {
|
|
|
849
1002
|
}
|
|
850
1003
|
);
|
|
851
1004
|
}
|
|
852
|
-
var messageIdsToHide = [
|
|
1005
|
+
var messageIdsToHide = [
|
|
1006
|
+
1040009,
|
|
1007
|
+
1060003,
|
|
1008
|
+
1080003,
|
|
1009
|
+
1010004,
|
|
1010
|
+
1010014,
|
|
1011
|
+
1040005,
|
|
1012
|
+
1010016
|
|
1013
|
+
];
|
|
853
1014
|
function OryCardValidationMessages({ ...props }) {
|
|
854
1015
|
var _a;
|
|
855
1016
|
const { flow } = useOryFlow();
|
|
@@ -868,7 +1029,7 @@ var NodeInput = ({
|
|
|
868
1029
|
}) => {
|
|
869
1030
|
var _a;
|
|
870
1031
|
const { Node: Node2 } = useComponents();
|
|
871
|
-
const { setValue } = reactHookForm.useFormContext();
|
|
1032
|
+
const { setValue, watch } = reactHookForm.useFormContext();
|
|
872
1033
|
const {
|
|
873
1034
|
onloadTrigger,
|
|
874
1035
|
onclickTrigger,
|
|
@@ -881,7 +1042,7 @@ var NodeInput = ({
|
|
|
881
1042
|
const isResendNode = ((_a = node.meta.label) == null ? void 0 : _a.id) === 1070008;
|
|
882
1043
|
const isScreenSelectionNode = "name" in node.attributes && node.attributes.name === "screen";
|
|
883
1044
|
const setFormValue = () => {
|
|
884
|
-
if (attrs.value && !(isResendNode || isScreenSelectionNode)) {
|
|
1045
|
+
if (attrs.value && !(isResendNode || isScreenSelectionNode || node.group === clientFetch.UiNodeGroupEnum.Oauth2Consent)) {
|
|
885
1046
|
setValue(attrs.name, attrs.value);
|
|
886
1047
|
}
|
|
887
1048
|
};
|
|
@@ -904,8 +1065,21 @@ var NodeInput = ({
|
|
|
904
1065
|
triggerToWindowCall(onclickTrigger);
|
|
905
1066
|
}
|
|
906
1067
|
};
|
|
907
|
-
const isSocial = (attrs.name === "provider" || attrs.name === "link") && node.group ===
|
|
1068
|
+
const isSocial = (attrs.name === "provider" || attrs.name === "link") && (node.group === clientFetch.UiNodeGroupEnum.Oidc || node.group === clientFetch.UiNodeGroupEnum.Saml);
|
|
908
1069
|
const isPinCodeInput = attrs.name === "code" && node.group === "code" || attrs.name === "totp_code" && node.group === "totp";
|
|
1070
|
+
const handleScopeChange = (checked) => {
|
|
1071
|
+
const scopes = watch("grant_scope");
|
|
1072
|
+
if (Array.isArray(scopes)) {
|
|
1073
|
+
if (checked) {
|
|
1074
|
+
setValue("grant_scope", Array.from(/* @__PURE__ */ new Set([...scopes, attrs.value])));
|
|
1075
|
+
} else {
|
|
1076
|
+
setValue(
|
|
1077
|
+
"grant_scope",
|
|
1078
|
+
scopes.filter((scope) => scope !== attrs.value)
|
|
1079
|
+
);
|
|
1080
|
+
}
|
|
1081
|
+
}
|
|
1082
|
+
};
|
|
909
1083
|
switch (attributes.type) {
|
|
910
1084
|
case clientFetch.UiNodeInputAttributesTypeEnum.Submit:
|
|
911
1085
|
case clientFetch.UiNodeInputAttributesTypeEnum.Button:
|
|
@@ -915,6 +1089,9 @@ var NodeInput = ({
|
|
|
915
1089
|
if (isResendNode || isScreenSelectionNode) {
|
|
916
1090
|
return null;
|
|
917
1091
|
}
|
|
1092
|
+
if (node.group === "oauth2_consent") {
|
|
1093
|
+
return null;
|
|
1094
|
+
}
|
|
918
1095
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
919
1096
|
Node2.Label,
|
|
920
1097
|
{
|
|
@@ -926,6 +1103,21 @@ var NodeInput = ({
|
|
|
926
1103
|
case clientFetch.UiNodeInputAttributesTypeEnum.DatetimeLocal:
|
|
927
1104
|
throw new Error("Not implemented");
|
|
928
1105
|
case clientFetch.UiNodeInputAttributesTypeEnum.Checkbox:
|
|
1106
|
+
if (node.group === "oauth2_consent" && node.attributes.node_type === "input") {
|
|
1107
|
+
switch (node.attributes.name) {
|
|
1108
|
+
case "grant_scope":
|
|
1109
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
1110
|
+
Node2.ConsentScopeCheckbox,
|
|
1111
|
+
{
|
|
1112
|
+
attributes: attrs,
|
|
1113
|
+
node,
|
|
1114
|
+
onCheckedChange: handleScopeChange
|
|
1115
|
+
}
|
|
1116
|
+
);
|
|
1117
|
+
default:
|
|
1118
|
+
return null;
|
|
1119
|
+
}
|
|
1120
|
+
}
|
|
929
1121
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
930
1122
|
Node2.Label,
|
|
931
1123
|
{
|
|
@@ -952,6 +1144,9 @@ var NodeInput = ({
|
|
|
952
1144
|
};
|
|
953
1145
|
var Node = ({ node, onClick }) => {
|
|
954
1146
|
const { Node: Node2 } = useComponents();
|
|
1147
|
+
if (node.group === clientFetch.UiNodeGroupEnum.Captcha) {
|
|
1148
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Node2.Captcha, { node });
|
|
1149
|
+
}
|
|
955
1150
|
if (clientFetch.isUiNodeImageAttributes(node.attributes)) {
|
|
956
1151
|
return /* @__PURE__ */ jsxRuntime.jsx(Node2.Image, { node, attributes: node.attributes });
|
|
957
1152
|
} else if (clientFetch.isUiNodeTextAttributes(node.attributes)) {
|
|
@@ -984,12 +1179,14 @@ function OryFormOidcButtons() {
|
|
|
984
1179
|
flow: { ui }
|
|
985
1180
|
} = useOryFlow();
|
|
986
1181
|
const { setValue } = reactHookForm.useFormContext();
|
|
987
|
-
const filteredNodes = ui.nodes.filter(
|
|
1182
|
+
const filteredNodes = ui.nodes.filter(
|
|
1183
|
+
(node) => node.group === clientFetch.UiNodeGroupEnum.Oidc || node.group === clientFetch.UiNodeGroupEnum.Saml
|
|
1184
|
+
);
|
|
988
1185
|
const { Form, Node: Node2 } = useComponents();
|
|
989
1186
|
if (filteredNodes.length === 0) {
|
|
990
1187
|
return null;
|
|
991
1188
|
}
|
|
992
|
-
return /* @__PURE__ */ jsxRuntime.jsx(Form.OidcRoot, { nodes: filteredNodes, children: filteredNodes.map((node
|
|
1189
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Form.OidcRoot, { nodes: filteredNodes, children: filteredNodes.map((node) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
993
1190
|
Node2.OidcButton,
|
|
994
1191
|
{
|
|
995
1192
|
node,
|
|
@@ -999,114 +1196,217 @@ function OryFormOidcButtons() {
|
|
|
999
1196
|
"provider",
|
|
1000
1197
|
node.attributes.value
|
|
1001
1198
|
);
|
|
1002
|
-
setValue("method",
|
|
1199
|
+
setValue("method", node.group);
|
|
1003
1200
|
}
|
|
1004
1201
|
},
|
|
1005
|
-
|
|
1202
|
+
clientFetch.getNodeId(node)
|
|
1006
1203
|
)) });
|
|
1007
1204
|
}
|
|
1008
1205
|
function OryFormSocialButtonsForm() {
|
|
1009
1206
|
const {
|
|
1010
1207
|
flow: { ui }
|
|
1011
1208
|
} = useOryFlow();
|
|
1012
|
-
const filteredNodes = ui.nodes.filter(
|
|
1209
|
+
const filteredNodes = ui.nodes.filter(
|
|
1210
|
+
(node) => node.group === clientFetch.UiNodeGroupEnum.Saml || node.group === clientFetch.UiNodeGroupEnum.Oidc
|
|
1211
|
+
);
|
|
1013
1212
|
if (filteredNodes.length === 0) {
|
|
1014
1213
|
return null;
|
|
1015
1214
|
}
|
|
1016
|
-
return /* @__PURE__ */ jsxRuntime.jsx(OryFormProvider, { children: /* @__PURE__ */ jsxRuntime.jsx(OryForm, { children: /* @__PURE__ */ jsxRuntime.jsx(OryFormOidcButtons, {}) }) });
|
|
1215
|
+
return /* @__PURE__ */ jsxRuntime.jsx(OryFormProvider, { children: /* @__PURE__ */ jsxRuntime.jsx(OryForm, { "data-testid": `ory/form/methods/oidc-saml`, children: /* @__PURE__ */ jsxRuntime.jsx(OryFormOidcButtons, {}) }) });
|
|
1017
1216
|
}
|
|
1018
|
-
function
|
|
1019
|
-
|
|
1217
|
+
function OryTwoStepCardStateMethodActive({
|
|
1218
|
+
formState
|
|
1219
|
+
}) {
|
|
1220
|
+
const { Form } = useComponents();
|
|
1221
|
+
const { flow, flowType, dispatchFormState } = useOryFlow();
|
|
1222
|
+
const { ui } = flow;
|
|
1223
|
+
const nodeSorter = useNodeSorter();
|
|
1224
|
+
const sortNodes = (a, b) => nodeSorter(a, b, { flowType });
|
|
1225
|
+
const groupsToShow = useNodeGroupsWithVisibleNodes(ui.nodes);
|
|
1226
|
+
const finalNodes = getFinalNodes(groupsToShow, formState.method);
|
|
1227
|
+
const selectedMethodIsSocial = formState.method === clientFetch.UiNodeGroupEnum.Oidc || formState.method === clientFetch.UiNodeGroupEnum.Saml;
|
|
1228
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(OryCard, { children: [
|
|
1229
|
+
/* @__PURE__ */ jsxRuntime.jsx(OryCardHeader, {}),
|
|
1230
|
+
/* @__PURE__ */ jsxRuntime.jsxs(OryCardContent, { children: [
|
|
1231
|
+
/* @__PURE__ */ jsxRuntime.jsx(OryCardValidationMessages, {}),
|
|
1232
|
+
selectedMethodIsSocial && /* @__PURE__ */ jsxRuntime.jsx(OryFormSocialButtonsForm, {}),
|
|
1233
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1234
|
+
OryForm,
|
|
1235
|
+
{
|
|
1236
|
+
"data-testid": `ory/form/methods/local`,
|
|
1237
|
+
onAfterSubmit: handleAfterFormSubmit(dispatchFormState),
|
|
1238
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(Form.Group, { children: [
|
|
1239
|
+
ui.nodes.filter(
|
|
1240
|
+
(n) => clientFetch.isUiNodeScriptAttributes(n.attributes) || n.group === clientFetch.UiNodeGroupEnum.Captcha || n.group === clientFetch.UiNodeGroupEnum.Default || n.group === clientFetch.UiNodeGroupEnum.Profile
|
|
1241
|
+
).map((node, k) => /* @__PURE__ */ jsxRuntime.jsx(Node, { node }, k)),
|
|
1242
|
+
finalNodes.sort(sortNodes).map((node, k) => /* @__PURE__ */ jsxRuntime.jsx(Node, { node }, k))
|
|
1243
|
+
] })
|
|
1244
|
+
}
|
|
1245
|
+
)
|
|
1246
|
+
] }),
|
|
1247
|
+
/* @__PURE__ */ jsxRuntime.jsx(OryCardFooter, {})
|
|
1248
|
+
] });
|
|
1020
1249
|
}
|
|
1021
|
-
function
|
|
1022
|
-
const {
|
|
1023
|
-
flow: { ui },
|
|
1024
|
-
flowType,
|
|
1025
|
-
formState,
|
|
1026
|
-
dispatchFormState
|
|
1027
|
-
} = useOryFlow();
|
|
1250
|
+
function OryTwoStepCardStateProvideIdentifier() {
|
|
1028
1251
|
const { Form, Card } = useComponents();
|
|
1252
|
+
const { flowType, flow, dispatchFormState } = useOryFlow();
|
|
1029
1253
|
const nodeSorter = useNodeSorter();
|
|
1030
1254
|
const sortNodes = (a, b) => nodeSorter(a, b, { flowType });
|
|
1031
|
-
const
|
|
1032
|
-
const
|
|
1033
|
-
|
|
1034
|
-
return (_a = uniqueGroups.groups[group]) == null ? void 0 : _a.length;
|
|
1035
|
-
}).filter(
|
|
1036
|
-
(group) => ![
|
|
1037
|
-
clientFetch.UiNodeGroupEnum.Oidc,
|
|
1038
|
-
clientFetch.UiNodeGroupEnum.Default,
|
|
1039
|
-
clientFetch.UiNodeGroupEnum.IdentifierFirst,
|
|
1040
|
-
clientFetch.UiNodeGroupEnum.Profile
|
|
1041
|
-
].includes(group)
|
|
1255
|
+
const nonSsoNodes = withoutSingleSignOnNodes(flow.ui.nodes).sort(sortNodes);
|
|
1256
|
+
const hasSso = flow.ui.nodes.filter(isNodeVisible).some(
|
|
1257
|
+
(node) => node.group === clientFetch.UiNodeGroupEnum.Oidc || node.group === clientFetch.UiNodeGroupEnum.Saml
|
|
1042
1258
|
);
|
|
1043
|
-
const
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1259
|
+
const showSsoDivider = hasSso && nonSsoNodes.some(isNodeVisible);
|
|
1260
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(OryCard, { children: [
|
|
1261
|
+
/* @__PURE__ */ jsxRuntime.jsx(OryCardHeader, {}),
|
|
1262
|
+
/* @__PURE__ */ jsxRuntime.jsxs(OryCardContent, { children: [
|
|
1263
|
+
/* @__PURE__ */ jsxRuntime.jsx(OryCardValidationMessages, {}),
|
|
1264
|
+
/* @__PURE__ */ jsxRuntime.jsx(OryFormSocialButtonsForm, {}),
|
|
1265
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1266
|
+
OryForm,
|
|
1267
|
+
{
|
|
1268
|
+
"data-testid": `ory/form/methods/local`,
|
|
1269
|
+
onAfterSubmit: handleAfterFormSubmit(dispatchFormState),
|
|
1270
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(Form.Group, { children: [
|
|
1271
|
+
showSsoDivider && /* @__PURE__ */ jsxRuntime.jsx(Card.Divider, {}),
|
|
1272
|
+
nonSsoNodes.map((node, k) => /* @__PURE__ */ jsxRuntime.jsx(Node, { node }, k))
|
|
1273
|
+
] })
|
|
1274
|
+
}
|
|
1275
|
+
)
|
|
1276
|
+
] }),
|
|
1277
|
+
/* @__PURE__ */ jsxRuntime.jsx(OryCardFooter, {})
|
|
1278
|
+
] });
|
|
1279
|
+
}
|
|
1280
|
+
function AuthMethodList({
|
|
1281
|
+
options,
|
|
1282
|
+
setSelectedGroup
|
|
1283
|
+
}) {
|
|
1284
|
+
const { Card } = useComponents();
|
|
1285
|
+
const { setValue, getValues } = reactHookForm.useFormContext();
|
|
1286
|
+
if (Object.entries(options).length === 0) {
|
|
1287
|
+
return null;
|
|
1288
|
+
}
|
|
1289
|
+
const handleClick = (group, options2) => {
|
|
1290
|
+
var _a, _b, _c, _d;
|
|
1291
|
+
if (isGroupImmediateSubmit(group)) {
|
|
1292
|
+
if (group === "code" && !getValues("identifier") && ((_b = (_a = options2 == null ? void 0 : options2.title) == null ? void 0 : _a.values) == null ? void 0 : _b.address)) {
|
|
1293
|
+
setValue("identifier", (_d = (_c = options2 == null ? void 0 : options2.title) == null ? void 0 : _c.values) == null ? void 0 : _d.address);
|
|
1294
|
+
}
|
|
1295
|
+
setValue("method", group);
|
|
1296
|
+
} else {
|
|
1297
|
+
setSelectedGroup(group);
|
|
1048
1298
|
}
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1299
|
+
};
|
|
1300
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Card.AuthMethodListContainer, { children: Object.entries(options).map(([group, options2]) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
1301
|
+
Card.AuthMethodListItem,
|
|
1302
|
+
{
|
|
1303
|
+
group,
|
|
1304
|
+
title: options2.title,
|
|
1305
|
+
onClick: () => handleClick(group, options2)
|
|
1306
|
+
},
|
|
1307
|
+
group
|
|
1308
|
+
)) });
|
|
1309
|
+
}
|
|
1310
|
+
function toAuthMethodPickerOptions(visibleGroups) {
|
|
1311
|
+
return Object.fromEntries(
|
|
1312
|
+
Object.values(clientFetch.UiNodeGroupEnum).filter((group) => {
|
|
1313
|
+
var _a;
|
|
1314
|
+
return (_a = visibleGroups[group]) == null ? void 0 : _a.length;
|
|
1315
|
+
}).filter(
|
|
1316
|
+
(group) => ![
|
|
1317
|
+
clientFetch.UiNodeGroupEnum.Oidc,
|
|
1318
|
+
clientFetch.UiNodeGroupEnum.Saml,
|
|
1319
|
+
clientFetch.UiNodeGroupEnum.Default,
|
|
1320
|
+
clientFetch.UiNodeGroupEnum.IdentifierFirst,
|
|
1321
|
+
clientFetch.UiNodeGroupEnum.Profile,
|
|
1322
|
+
clientFetch.UiNodeGroupEnum.Captcha
|
|
1323
|
+
].includes(group)
|
|
1324
|
+
).map((g) => [g, {}])
|
|
1325
|
+
);
|
|
1326
|
+
}
|
|
1327
|
+
function OryTwoStepCardStateSelectMethod() {
|
|
1328
|
+
var _a, _b, _c, _d;
|
|
1329
|
+
const { Form, Card, Message } = useComponents();
|
|
1330
|
+
const { flow, flowType, dispatchFormState } = useOryFlow();
|
|
1331
|
+
const { ui } = flow;
|
|
1332
|
+
const intl = reactIntl.useIntl();
|
|
1333
|
+
const nodeSorter = useNodeSorter();
|
|
1334
|
+
const sortNodes = (a, b) => nodeSorter(a, b, { flowType });
|
|
1335
|
+
const visibleGroups = useNodeGroupsWithVisibleNodes(ui.nodes);
|
|
1336
|
+
const authMethodBlocks = toAuthMethodPickerOptions(visibleGroups);
|
|
1337
|
+
const authMethodAdditionalNodes = useFunctionalNodes(ui.nodes);
|
|
1338
|
+
if (clientFetch.UiNodeGroupEnum.Code in authMethodBlocks) {
|
|
1339
|
+
let identifier = (_b = (_a = findNode(ui.nodes, {
|
|
1340
|
+
group: "identifier_first",
|
|
1341
|
+
node_type: "input",
|
|
1342
|
+
name: "identifier"
|
|
1343
|
+
})) == null ? void 0 : _a.attributes) == null ? void 0 : _b.value;
|
|
1344
|
+
identifier || (identifier = (_d = (_c = findNode(ui.nodes, {
|
|
1345
|
+
group: "code",
|
|
1346
|
+
node_type: "input",
|
|
1347
|
+
name: "address"
|
|
1348
|
+
})) == null ? void 0 : _c.attributes) == null ? void 0 : _d.value);
|
|
1349
|
+
if (identifier) {
|
|
1350
|
+
authMethodBlocks[clientFetch.UiNodeGroupEnum.Code] = {
|
|
1351
|
+
title: {
|
|
1352
|
+
id: "identities.messages.1010023",
|
|
1353
|
+
values: { address: identifier }
|
|
1354
|
+
}
|
|
1355
|
+
};
|
|
1054
1356
|
}
|
|
1357
|
+
}
|
|
1358
|
+
const noMethods = {
|
|
1359
|
+
id: 5000002,
|
|
1360
|
+
text: intl.formatMessage({
|
|
1361
|
+
id: `identities.messages.5000002`,
|
|
1362
|
+
defaultMessage: "No authentication methods are available for this request. Please contact the site or app owner."
|
|
1363
|
+
}),
|
|
1364
|
+
type: "error"
|
|
1055
1365
|
};
|
|
1056
|
-
const hasOidc = ui.nodes.some((node) => node.group === clientFetch.UiNodeGroupEnum.Oidc);
|
|
1057
|
-
const showOidc = !(formState.current === "method_active" && formState.method !== "oidc");
|
|
1058
1366
|
return /* @__PURE__ */ jsxRuntime.jsxs(OryCard, { children: [
|
|
1059
1367
|
/* @__PURE__ */ jsxRuntime.jsx(OryCardHeader, {}),
|
|
1060
1368
|
/* @__PURE__ */ jsxRuntime.jsxs(OryCardContent, { children: [
|
|
1061
1369
|
/* @__PURE__ */ jsxRuntime.jsx(OryCardValidationMessages, {}),
|
|
1062
|
-
|
|
1063
|
-
/* @__PURE__ */ jsxRuntime.
|
|
1064
|
-
|
|
1065
|
-
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
formState.current === "select_method" && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
1370
|
+
/* @__PURE__ */ jsxRuntime.jsx(OryFormSocialButtonsForm, {}),
|
|
1371
|
+
Object.entries(authMethodBlocks).length > 0 ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
1372
|
+
OryForm,
|
|
1373
|
+
{
|
|
1374
|
+
"data-testid": `ory/form/methods/local`,
|
|
1375
|
+
onAfterSubmit: handleAfterFormSubmit(dispatchFormState),
|
|
1376
|
+
children: /* @__PURE__ */ jsxRuntime.jsxs(Form.Group, { children: [
|
|
1070
1377
|
/* @__PURE__ */ jsxRuntime.jsx(Card.Divider, {}),
|
|
1071
1378
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1072
1379
|
AuthMethodList,
|
|
1073
1380
|
{
|
|
1074
|
-
options,
|
|
1381
|
+
options: authMethodBlocks,
|
|
1075
1382
|
setSelectedGroup: (group) => dispatchFormState({
|
|
1076
1383
|
type: "action_select_method",
|
|
1077
1384
|
method: group
|
|
1078
1385
|
})
|
|
1079
1386
|
}
|
|
1080
|
-
)
|
|
1081
|
-
|
|
1082
|
-
formState.current === "method_active" && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
1083
|
-
ui.nodes.filter((n) => n.type === "script").map((node, k) => /* @__PURE__ */ jsxRuntime.jsx(Node, { node }, k)),
|
|
1084
|
-
finalNodes.sort(sortNodes).map((node, k) => /* @__PURE__ */ jsxRuntime.jsx(Node, { node }, k))
|
|
1387
|
+
),
|
|
1388
|
+
authMethodAdditionalNodes.sort(sortNodes).map((node, k) => /* @__PURE__ */ jsxRuntime.jsx(Node, { node }, k))
|
|
1085
1389
|
] })
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1390
|
+
}
|
|
1391
|
+
) : !hasSingleSignOnNodes(ui.nodes) && /* @__PURE__ */ jsxRuntime.jsx("div", { "data-testid": `ory/form/methods/local`, children: /* @__PURE__ */ jsxRuntime.jsx(Message.Root, { children: /* @__PURE__ */ jsxRuntime.jsx(Message.Content, { message: noMethods }, noMethods.id) }) })
|
|
1392
|
+
] }),
|
|
1393
|
+
/* @__PURE__ */ jsxRuntime.jsx(OryCardFooter, {})
|
|
1090
1394
|
] });
|
|
1091
1395
|
}
|
|
1092
|
-
function
|
|
1093
|
-
const {
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
}
|
|
1102
|
-
return /* @__PURE__ */ jsxRuntime.
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
onClick: () => handleClick(option)
|
|
1107
|
-
},
|
|
1108
|
-
option
|
|
1109
|
-
)) });
|
|
1396
|
+
function OryTwoStepCard() {
|
|
1397
|
+
const { formState } = useOryFlow();
|
|
1398
|
+
switch (formState.current) {
|
|
1399
|
+
case "provide_identifier":
|
|
1400
|
+
return /* @__PURE__ */ jsxRuntime.jsx(OryTwoStepCardStateProvideIdentifier, {});
|
|
1401
|
+
case "select_method":
|
|
1402
|
+
return /* @__PURE__ */ jsxRuntime.jsx(OryTwoStepCardStateSelectMethod, {});
|
|
1403
|
+
case "method_active":
|
|
1404
|
+
return /* @__PURE__ */ jsxRuntime.jsx(OryTwoStepCardStateMethodActive, { formState });
|
|
1405
|
+
}
|
|
1406
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
1407
|
+
"unknown form state: ",
|
|
1408
|
+
formState.current
|
|
1409
|
+
] });
|
|
1110
1410
|
}
|
|
1111
1411
|
function OryFormGroups({ groups }) {
|
|
1112
1412
|
const {
|
|
@@ -1116,8 +1416,8 @@ function OryFormGroups({ groups }) {
|
|
|
1116
1416
|
const { flowType } = useOryFlow();
|
|
1117
1417
|
const { Form } = useComponents();
|
|
1118
1418
|
const nodes = ui.nodes.filter((node) => groups.indexOf(node.group) > -1).sort((a, b) => nodeSorter(a, b, { flowType }));
|
|
1119
|
-
return /* @__PURE__ */ jsxRuntime.jsx(Form.Group, { children: nodes.map((node
|
|
1120
|
-
return /* @__PURE__ */ jsxRuntime.jsx(Node, { node },
|
|
1419
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Form.Group, { children: nodes.map((node) => {
|
|
1420
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Node, { node }, clientFetch.getNodeId(node));
|
|
1121
1421
|
}) });
|
|
1122
1422
|
}
|
|
1123
1423
|
function OryFormSection({
|
|
@@ -1146,14 +1446,29 @@ function OryFormSectionInner({
|
|
|
1146
1446
|
}
|
|
1147
1447
|
);
|
|
1148
1448
|
}
|
|
1449
|
+
function OryConsentCard() {
|
|
1450
|
+
const { Form, Card } = useComponents();
|
|
1451
|
+
const flow = useOryFlow();
|
|
1452
|
+
return /* @__PURE__ */ jsxRuntime.jsxs(OryCard, { children: [
|
|
1453
|
+
/* @__PURE__ */ jsxRuntime.jsx(OryCardHeader, {}),
|
|
1454
|
+
/* @__PURE__ */ jsxRuntime.jsx(OryCardContent, { children: /* @__PURE__ */ jsxRuntime.jsxs(OryForm, { children: [
|
|
1455
|
+
/* @__PURE__ */ jsxRuntime.jsx(Card.Divider, {}),
|
|
1456
|
+
/* @__PURE__ */ jsxRuntime.jsx(Form.Group, { children: flow.flow.ui.nodes.map((node) => /* @__PURE__ */ jsxRuntime.jsx(Node, { node }, clientFetch.getNodeId(node))) }),
|
|
1457
|
+
/* @__PURE__ */ jsxRuntime.jsx(Card.Divider, {}),
|
|
1458
|
+
/* @__PURE__ */ jsxRuntime.jsx(OryCardFooter, {})
|
|
1459
|
+
] }) })
|
|
1460
|
+
] });
|
|
1461
|
+
}
|
|
1149
1462
|
function OryFormGroupDivider() {
|
|
1150
1463
|
const { Card } = useComponents();
|
|
1151
1464
|
const {
|
|
1152
1465
|
flow: { ui }
|
|
1153
1466
|
} = useOryFlow();
|
|
1154
|
-
const filteredNodes = ui.nodes.filter(
|
|
1467
|
+
const filteredNodes = ui.nodes.filter(
|
|
1468
|
+
(node) => node.group === clientFetch.UiNodeGroupEnum.Oidc || node.group === clientFetch.UiNodeGroupEnum.Saml
|
|
1469
|
+
);
|
|
1155
1470
|
const otherNodes = ui.nodes.filter(
|
|
1156
|
-
(node) => node.group
|
|
1471
|
+
(node) => !(node.group === clientFetch.UiNodeGroupEnum.Oidc || node.group === clientFetch.UiNodeGroupEnum.Saml) && node.group !== "default"
|
|
1157
1472
|
);
|
|
1158
1473
|
if (filteredNodes.length > 0 && otherNodes.length > 0) {
|
|
1159
1474
|
return /* @__PURE__ */ jsxRuntime.jsx(Card.Divider, {});
|
|
@@ -1179,7 +1494,7 @@ function OrySettingsOidc({ nodes }) {
|
|
|
1179
1494
|
onClick: () => {
|
|
1180
1495
|
if (node.attributes.node_type === "input") {
|
|
1181
1496
|
setValue("link", node.attributes.value);
|
|
1182
|
-
setValue("method",
|
|
1497
|
+
setValue("method", node.group);
|
|
1183
1498
|
}
|
|
1184
1499
|
}
|
|
1185
1500
|
}));
|
|
@@ -1188,7 +1503,7 @@ function OrySettingsOidc({ nodes }) {
|
|
|
1188
1503
|
onClick: () => {
|
|
1189
1504
|
if (node.attributes.node_type === "input") {
|
|
1190
1505
|
setValue("unlink", node.attributes.value);
|
|
1191
|
-
setValue("method",
|
|
1506
|
+
setValue("method", node.group);
|
|
1192
1507
|
}
|
|
1193
1508
|
}
|
|
1194
1509
|
}));
|
|
@@ -1497,16 +1812,19 @@ function SettingsSectionContent({ group, nodes }) {
|
|
|
1497
1812
|
const { Card } = useComponents();
|
|
1498
1813
|
const intl = reactIntl.useIntl();
|
|
1499
1814
|
const { flow } = useOryFlow();
|
|
1500
|
-
const
|
|
1815
|
+
const groupedNodes = useNodesGroups(flow.ui.nodes, {
|
|
1816
|
+
// Script nodes are already handled by the parent component.
|
|
1817
|
+
omit: ["script"]
|
|
1818
|
+
});
|
|
1501
1819
|
if (group === clientFetch.UiNodeGroupEnum.Totp) {
|
|
1502
1820
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1503
1821
|
OryFormSection,
|
|
1504
1822
|
{
|
|
1505
|
-
nodes:
|
|
1823
|
+
nodes: groupedNodes.groups.totp,
|
|
1506
1824
|
"data-testid": "ory/screen/settings/group/totp",
|
|
1507
1825
|
children: [
|
|
1508
|
-
/* @__PURE__ */ jsxRuntime.jsx(OrySettingsTotp, { nodes: (_a =
|
|
1509
|
-
(_b =
|
|
1826
|
+
/* @__PURE__ */ jsxRuntime.jsx(OrySettingsTotp, { nodes: (_a = groupedNodes.groups.totp) != null ? _a : [] }),
|
|
1827
|
+
(_b = groupedNodes.groups.default) == null ? void 0 : _b.map((node) => /* @__PURE__ */ jsxRuntime.jsx(Node, { node }, clientFetch.getNodeId(node)))
|
|
1510
1828
|
]
|
|
1511
1829
|
}
|
|
1512
1830
|
);
|
|
@@ -1515,16 +1833,16 @@ function SettingsSectionContent({ group, nodes }) {
|
|
|
1515
1833
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1516
1834
|
OryFormSection,
|
|
1517
1835
|
{
|
|
1518
|
-
nodes:
|
|
1836
|
+
nodes: groupedNodes.groups.lookup_secret,
|
|
1519
1837
|
"data-testid": "ory/screen/settings/group/lookup_secret",
|
|
1520
1838
|
children: [
|
|
1521
1839
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1522
1840
|
OrySettingsRecoveryCodes,
|
|
1523
1841
|
{
|
|
1524
|
-
nodes: (_c =
|
|
1842
|
+
nodes: (_c = groupedNodes.groups.lookup_secret) != null ? _c : []
|
|
1525
1843
|
}
|
|
1526
1844
|
),
|
|
1527
|
-
(_d =
|
|
1845
|
+
(_d = groupedNodes.groups.default) == null ? void 0 : _d.map((node) => /* @__PURE__ */ jsxRuntime.jsx(Node, { node }, clientFetch.getNodeId(node)))
|
|
1528
1846
|
]
|
|
1529
1847
|
}
|
|
1530
1848
|
);
|
|
@@ -1533,11 +1851,11 @@ function SettingsSectionContent({ group, nodes }) {
|
|
|
1533
1851
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1534
1852
|
OryFormSection,
|
|
1535
1853
|
{
|
|
1536
|
-
nodes:
|
|
1854
|
+
nodes: groupedNodes.groups.oidc,
|
|
1537
1855
|
"data-testid": "ory/screen/settings/group/oidc",
|
|
1538
1856
|
children: [
|
|
1539
|
-
/* @__PURE__ */ jsxRuntime.jsx(OrySettingsOidc, { nodes: (_e =
|
|
1540
|
-
(_f =
|
|
1857
|
+
/* @__PURE__ */ jsxRuntime.jsx(OrySettingsOidc, { nodes: (_e = groupedNodes.groups.oidc) != null ? _e : [] }),
|
|
1858
|
+
(_f = groupedNodes.groups.default) == null ? void 0 : _f.map((node) => /* @__PURE__ */ jsxRuntime.jsx(Node, { node }, clientFetch.getNodeId(node)))
|
|
1541
1859
|
]
|
|
1542
1860
|
}
|
|
1543
1861
|
);
|
|
@@ -1546,11 +1864,11 @@ function SettingsSectionContent({ group, nodes }) {
|
|
|
1546
1864
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1547
1865
|
OryFormSection,
|
|
1548
1866
|
{
|
|
1549
|
-
nodes:
|
|
1867
|
+
nodes: groupedNodes.groups.webauthn,
|
|
1550
1868
|
"data-testid": "ory/screen/settings/group/webauthn",
|
|
1551
1869
|
children: [
|
|
1552
|
-
/* @__PURE__ */ jsxRuntime.jsx(OrySettingsWebauthn, { nodes: (_g =
|
|
1553
|
-
(_h =
|
|
1870
|
+
/* @__PURE__ */ jsxRuntime.jsx(OrySettingsWebauthn, { nodes: (_g = groupedNodes.groups.webauthn) != null ? _g : [] }),
|
|
1871
|
+
(_h = groupedNodes.groups.default) == null ? void 0 : _h.map((node) => /* @__PURE__ */ jsxRuntime.jsx(Node, { node }, clientFetch.getNodeId(node)))
|
|
1554
1872
|
]
|
|
1555
1873
|
}
|
|
1556
1874
|
);
|
|
@@ -1559,11 +1877,11 @@ function SettingsSectionContent({ group, nodes }) {
|
|
|
1559
1877
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
1560
1878
|
OryFormSection,
|
|
1561
1879
|
{
|
|
1562
|
-
nodes:
|
|
1880
|
+
nodes: groupedNodes.groups.passkey,
|
|
1563
1881
|
"data-testid": "ory/screen/settings/group/passkey",
|
|
1564
1882
|
children: [
|
|
1565
|
-
/* @__PURE__ */ jsxRuntime.jsx(OrySettingsPasskey, { nodes: (_i =
|
|
1566
|
-
(_j =
|
|
1883
|
+
/* @__PURE__ */ jsxRuntime.jsx(OrySettingsPasskey, { nodes: (_i = groupedNodes.groups.passkey) != null ? _i : [] }),
|
|
1884
|
+
(_j = groupedNodes.groups.default) == null ? void 0 : _j.map((node) => /* @__PURE__ */ jsxRuntime.jsx(Node, { node }, clientFetch.getNodeId(node)))
|
|
1567
1885
|
]
|
|
1568
1886
|
}
|
|
1569
1887
|
);
|
|
@@ -1584,30 +1902,30 @@ function SettingsSectionContent({ group, nodes }) {
|
|
|
1584
1902
|
id: `settings.${group}.description`
|
|
1585
1903
|
}),
|
|
1586
1904
|
children: [
|
|
1587
|
-
(_k =
|
|
1905
|
+
(_k = groupedNodes.groups.default) == null ? void 0 : _k.map((node) => /* @__PURE__ */ jsxRuntime.jsx(Node, { node }, clientFetch.getNodeId(node))),
|
|
1588
1906
|
nodes.filter(
|
|
1589
1907
|
(node) => "type" in node.attributes && node.attributes.type !== "submit"
|
|
1590
|
-
).map((node
|
|
1908
|
+
).map((node) => /* @__PURE__ */ jsxRuntime.jsx(Node, { node }, clientFetch.getNodeId(node)))
|
|
1591
1909
|
]
|
|
1592
1910
|
}
|
|
1593
1911
|
),
|
|
1594
1912
|
/* @__PURE__ */ jsxRuntime.jsx(Card.SettingsSectionFooter, { children: nodes.filter(
|
|
1595
1913
|
(node) => "type" in node.attributes && node.attributes.type === "submit"
|
|
1596
|
-
).map((node
|
|
1914
|
+
).map((node) => /* @__PURE__ */ jsxRuntime.jsx(Node, { node }, clientFetch.getNodeId(node))) })
|
|
1597
1915
|
]
|
|
1598
1916
|
}
|
|
1599
1917
|
);
|
|
1600
1918
|
}
|
|
1601
|
-
var
|
|
1602
|
-
(node) =>
|
|
1919
|
+
var onlyScriptNodes = (nodes) => nodes.filter(
|
|
1920
|
+
(node) => clientFetch.isUiNodeScriptAttributes(node.attributes) && node.attributes.id === "webauthn_script"
|
|
1603
1921
|
);
|
|
1604
1922
|
function OrySettingsCard() {
|
|
1605
1923
|
const { flow } = useOryFlow();
|
|
1606
|
-
const uniqueGroups = useNodesGroups(flow.ui.nodes);
|
|
1607
|
-
const
|
|
1924
|
+
const uniqueGroups = useNodesGroups(flow.ui.nodes, { omit: ["script"] });
|
|
1925
|
+
const scriptNodes = onlyScriptNodes(flow.ui.nodes);
|
|
1608
1926
|
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
1609
1927
|
/* @__PURE__ */ jsxRuntime.jsx(OryCardValidationMessages, {}),
|
|
1610
|
-
|
|
1928
|
+
scriptNodes.map((n) => /* @__PURE__ */ jsxRuntime.jsx(Node, { node: n }, clientFetch.getNodeId(n))),
|
|
1611
1929
|
uniqueGroups.entries.map(([group, nodes]) => {
|
|
1612
1930
|
if (group === clientFetch.UiNodeGroupEnum.Default) {
|
|
1613
1931
|
return null;
|
|
@@ -1703,9 +2021,9 @@ var en_default = {
|
|
|
1703
2021
|
"identities.messages.1010005": "Verify",
|
|
1704
2022
|
"identities.messages.1010006": "Authentication code",
|
|
1705
2023
|
"identities.messages.1010007": "Backup recovery code",
|
|
1706
|
-
"identities.messages.1010008": "
|
|
1707
|
-
"identities.messages.1010009": "
|
|
1708
|
-
"identities.messages.1010010": "
|
|
2024
|
+
"identities.messages.1010008": "Continue with hardware key",
|
|
2025
|
+
"identities.messages.1010009": "Continue",
|
|
2026
|
+
"identities.messages.1010010": "Continue",
|
|
1709
2027
|
"identities.messages.1010011": "Sign in with hardware key",
|
|
1710
2028
|
"identities.messages.1010012": "Prepare your WebAuthn device (e.g. security key, biometrics scanner, ...) and press continue.",
|
|
1711
2029
|
"identities.messages.1010013": "Continue",
|
|
@@ -1842,9 +2160,17 @@ var en_default = {
|
|
|
1842
2160
|
"login.subtitle-oauth2": "To authenticate {clientName}",
|
|
1843
2161
|
"login.title": "Sign in",
|
|
1844
2162
|
"login.subtitle": "Sign in with {parts}",
|
|
1845
|
-
"login.title-aal2": "
|
|
2163
|
+
"login.title-aal2": "Second factor authentication",
|
|
2164
|
+
"login.subtitle-aal2": "Choose a way to complete your second factor authentication",
|
|
2165
|
+
"login.code.subtitle": "A verification code will be sent by email",
|
|
2166
|
+
"login.webauthn.subtitle": "Please prepare your WebAuthN device",
|
|
2167
|
+
"login.totp.subtitle": "Please enter the code generated by your Authenticator App",
|
|
2168
|
+
"login.lookup_secret.subtitle": "Please enter one of your 8-digit backup recovery codes",
|
|
1846
2169
|
"login.title-refresh": "Reauthenticate",
|
|
1847
2170
|
"login.subtitle-refresh": "Confirm your identity with {parts}",
|
|
2171
|
+
"login.2fa.go-back": "Something isn't working?",
|
|
2172
|
+
"login.2fa.go-back.link": "Go back",
|
|
2173
|
+
"login.2fa.method.go-back": "Choose another method",
|
|
1848
2174
|
"logout.accept-button": "Yes",
|
|
1849
2175
|
"logout.reject-button": "No",
|
|
1850
2176
|
"logout.title": "Do you wish to log out?",
|
|
@@ -1893,18 +2219,24 @@ var en_default = {
|
|
|
1893
2219
|
"two-step.password.description": "Enter your password associated with your account",
|
|
1894
2220
|
"two-step.code.title": "Email code",
|
|
1895
2221
|
"two-step.code.description": "A verification code will be sent to your email",
|
|
1896
|
-
"two-step.webauthn.title": "Security
|
|
2222
|
+
"two-step.webauthn.title": "Security key",
|
|
1897
2223
|
"two-step.webauthn.description": "Use your security key to authenticate",
|
|
1898
2224
|
"two-step.passkey.title": "Passkey (recommended)",
|
|
1899
2225
|
"two-step.passkey.description": "Use your device's for fingerprint or face recognition",
|
|
2226
|
+
"two-step.totp.title": "Use your Authenticator App (TOTP)",
|
|
2227
|
+
"two-step.totp.description": "Use a 6-digit one-time code from your authenticator app",
|
|
2228
|
+
"two-step.lookup_secret.title": "Backup recovery code",
|
|
2229
|
+
"two-step.lookup_secret.description": "Use up one of your 8-digit backup codes to authenticate",
|
|
1900
2230
|
"identities.messages.1010020": "",
|
|
1901
2231
|
"input.placeholder": "Enter your {placeholder}",
|
|
1902
2232
|
"card.header.parts.oidc": "a social provider",
|
|
1903
2233
|
"card.header.parts.password.registration": "your {identifierLabel} and a password",
|
|
1904
2234
|
"card.header.parts.password.login": "your {identifierLabel} and password",
|
|
1905
|
-
"card.header.parts.code": "a code sent to
|
|
2235
|
+
"card.header.parts.code": "a code sent to you",
|
|
1906
2236
|
"card.header.parts.passkey": "a Passkey",
|
|
1907
2237
|
"card.header.parts.webauthn": "a security key",
|
|
2238
|
+
"card.header.parts.totp": "your authenticator app",
|
|
2239
|
+
"card.header.parts.lookup_secret": "a backup recovery code",
|
|
1908
2240
|
"card.header.parts.identifier-first": "your {identifierLabel}",
|
|
1909
2241
|
"card.header.description.login": "Sign in with {identifierLabel}",
|
|
1910
2242
|
"card.header.description.registration": "Sign up with {identifierLabel}",
|
|
@@ -1930,7 +2262,27 @@ var en_default = {
|
|
|
1930
2262
|
"property.phone": "phone",
|
|
1931
2263
|
"property.username": "username",
|
|
1932
2264
|
"property.identifier": "identifier",
|
|
1933
|
-
"property.code": "code"
|
|
2265
|
+
"property.code": "code",
|
|
2266
|
+
"consent.title": "Authorize {party}",
|
|
2267
|
+
"consent.subtitle": "A third party application wants to access information associated with your account {identifier}.",
|
|
2268
|
+
"consent.scope.openid.title": "Identity",
|
|
2269
|
+
"consent.scope.openid.description": "Allows the application to verify your identity. This is required for authentication and a trusted login experience.",
|
|
2270
|
+
"consent.scope.offline_access.title": "Offline Access",
|
|
2271
|
+
"consent.scope.offline_access.description": "Allows this application to keep you signed in even when you're not actively using it.",
|
|
2272
|
+
"consent.scope.profile.title": "Profile Information",
|
|
2273
|
+
"consent.scope.profile.description": "Allows access to your basic profile details, including your username, first name, and last name.",
|
|
2274
|
+
"consent.scope.email.title": "Email Address",
|
|
2275
|
+
"consent.scope.email.description": "Retrieve your email address and its verification status.",
|
|
2276
|
+
"consent.scope.address.title": "Physical Address",
|
|
2277
|
+
"consent.scope.address.description": "Access your postal address.",
|
|
2278
|
+
"consent.scope.phone.title": "Phone Number",
|
|
2279
|
+
"consent.scope.phone.description": "Retrieve your phone number and its verification status.",
|
|
2280
|
+
"error.title.what-happened": "What happened?",
|
|
2281
|
+
"error.title.what-can-i-do": "What can I do?",
|
|
2282
|
+
"error.instructions": "Please try again in a few minutes or contact the website operator.",
|
|
2283
|
+
"error.footer.text": "When reporting this error, please include the following information:",
|
|
2284
|
+
"error.footer.copy": "Copy",
|
|
2285
|
+
"error.action.go-back": "Go back"
|
|
1934
2286
|
};
|
|
1935
2287
|
|
|
1936
2288
|
// src/locales/de.json
|
|
@@ -1956,9 +2308,9 @@ var de_default = {
|
|
|
1956
2308
|
"identities.messages.1010005": "Verifizieren",
|
|
1957
2309
|
"identities.messages.1010006": "Authentifizierungscode",
|
|
1958
2310
|
"identities.messages.1010007": "Backup-Wiederherstellungscode",
|
|
1959
|
-
"identities.messages.1010008": "Sicherheitsschl\xFCssel
|
|
1960
|
-
"identities.messages.1010009": "
|
|
1961
|
-
"identities.messages.1010010": "
|
|
2311
|
+
"identities.messages.1010008": "Mit Sicherheitsschl\xFCssel fortfahren",
|
|
2312
|
+
"identities.messages.1010009": "Weiter",
|
|
2313
|
+
"identities.messages.1010010": "Weiter",
|
|
1962
2314
|
"identities.messages.1010011": "Mit Sicherheitsschl\xFCssel fortfahren",
|
|
1963
2315
|
"identities.messages.1010012": "Bereiten Sie Ihr WebAuthn-Ger\xE4t vor (z. B. Sicherheitsschl\xFCssel, biometrischer Scanner, ...) und dr\xFCcken Sie auf Weiter.",
|
|
1964
2316
|
"identities.messages.1010013": "Weiter",
|
|
@@ -2074,8 +2426,16 @@ var de_default = {
|
|
|
2074
2426
|
"login.registration-label": "Sie haben noch kein Konto?",
|
|
2075
2427
|
"login.subtitle-oauth2": "Zur Authentifizierung bei {clientName}",
|
|
2076
2428
|
"login.title": "Anmelden",
|
|
2077
|
-
"login.title-aal2": "
|
|
2429
|
+
"login.title-aal2": "Zweitfaktor-Authentifizierung",
|
|
2430
|
+
"login.subtitle-aal2": "W\xE4hlen Sie eine Methode zur Best\xE4tigung Ihrer Zwei-Faktor-Authentifizierung",
|
|
2431
|
+
"login.code.subtitle": "Ein Best\xE4tigungscode wird per E-Mail gesendet",
|
|
2432
|
+
"login.webauthn.subtitle": "Bitte bereiten Sie Ihr WebAuthN-Ger\xE4t vor",
|
|
2433
|
+
"login.totp.subtitle": "Bitte geben Sie den Code aus Ihrer Authenticator-App ein",
|
|
2434
|
+
"login.lookup_secret.subtitle": "Bitte geben Sie einen Ihrer 8-stelligen Backup-Wiederherstellungscodes ein",
|
|
2078
2435
|
"login.title-refresh": "Best\xE4tigen Sie, dass Sie es sind",
|
|
2436
|
+
"login.2fa.go-back": "Funktioniert etwas nicht?",
|
|
2437
|
+
"login.2fa.go-back.link": "Zur\xFCck",
|
|
2438
|
+
"login.2fa.method.go-back": "Eine andere Methode w\xE4hlen",
|
|
2079
2439
|
"logout.accept-button": "Ja",
|
|
2080
2440
|
"logout.reject-button": "Nein",
|
|
2081
2441
|
"logout.title": "M\xF6chten Sie sich abmelden?",
|
|
@@ -2093,11 +2453,15 @@ var de_default = {
|
|
|
2093
2453
|
"two-step.code.description": "Ein Best\xE4tigungscode wird an Ihre E-Mail gesendet.",
|
|
2094
2454
|
"two-step.code.title": "E-Mail-Code",
|
|
2095
2455
|
"two-step.passkey.description": "Verwenden Sie die Fingerabdruck- oder Gesichtserkennung Ihres Ger\xE4ts",
|
|
2096
|
-
"two-step.passkey.title": "
|
|
2456
|
+
"two-step.passkey.title": "Passkey (empfohlen)",
|
|
2097
2457
|
"two-step.password.description": "Geben Sie Ihr Passwort ein, das mit Ihrem Konto verkn\xFCpft ist",
|
|
2098
2458
|
"two-step.password.title": "Passwort",
|
|
2099
|
-
"two-step.webauthn.description": "Verwenden Sie Ihren Sicherheitsschl\xFCssel zur Authentifizierung",
|
|
2100
2459
|
"two-step.webauthn.title": "Sicherheitsschl\xFCssel",
|
|
2460
|
+
"two-step.webauthn.description": "Verwenden Sie Ihren Sicherheitsschl\xFCssel zur Authentifizierung",
|
|
2461
|
+
"two-step.totp.title": "Verwenden Sie Ihre Authenticator-App (TOTP)",
|
|
2462
|
+
"two-step.totp.description": "Verwenden Sie einen 6-stelligen Einmal-Code aus Ihrer Authenticator-App",
|
|
2463
|
+
"two-step.lookup_secret.title": "Backup-Wiederherstellungscode",
|
|
2464
|
+
"two-step.lookup_secret.description": "Verwenden Sie einen Ihrer 8-stelligen Backup-Codes, um sich zu authentifizieren",
|
|
2101
2465
|
"identities.messages.1070014": "Login- und Link-Zugangsdaten",
|
|
2102
2466
|
"identities.messages.1070015": "Bitte schlie\xDFen Sie die Captcha-Challenge ab, um fortzufahren.",
|
|
2103
2467
|
"identities.messages.4000038": "Die Captcha-\xDCberpr\xFCfung ist fehlgeschlagen. Bitte versuchen Sie es erneut.",
|
|
@@ -2105,28 +2469,30 @@ var de_default = {
|
|
|
2105
2469
|
"login.cancel-label": "Nicht das richtige Konto?",
|
|
2106
2470
|
"identities.messages.1010023": "Code an {address} senden",
|
|
2107
2471
|
"identities.messages.1010016": "Sie haben versucht, sich mit \u201E{duplicateIdentifier}\u201C anzumelden, aber diese E-Mail-Adresse wird bereits von einem anderen Konto verwendet. \nMelden Sie sich mit einer der folgenden Optionen bei Ihrem Konto an, um Ihr Konto \u201E{duplicateIdentifier}\u201C bei \u201E{provider}\u201C als weitere Anmeldem\xF6glichkeit hinzuzuf\xFCgen.",
|
|
2108
|
-
"identities.messages.1010017": "",
|
|
2109
|
-
"identities.messages.1010018": "",
|
|
2110
|
-
"identities.messages.1010019": "",
|
|
2472
|
+
"identities.messages.1010017": "Anmelden und verbinden",
|
|
2473
|
+
"identities.messages.1010018": "Mit {provider} best\xE4tigen",
|
|
2474
|
+
"identities.messages.1010019": "Code senden um fortzufahren",
|
|
2111
2475
|
"identities.messages.1010020": "",
|
|
2112
|
-
"identities.messages.1010021": "",
|
|
2113
|
-
"identities.messages.1010022": "",
|
|
2114
|
-
"identities.messages.1040007": "",
|
|
2115
|
-
"identities.messages.1040008": "",
|
|
2116
|
-
"identities.messages.1040009": "",
|
|
2476
|
+
"identities.messages.1010021": "Mit Paskey anmelden",
|
|
2477
|
+
"identities.messages.1010022": "Mit Passwort anmelden",
|
|
2478
|
+
"identities.messages.1040007": "Mit Passkey registrieren",
|
|
2479
|
+
"identities.messages.1040008": "Zur\xFCck",
|
|
2480
|
+
"identities.messages.1040009": "Bitte w\xE4hlen Sie eine Authentifizierungsmethode, um fortzufahren.",
|
|
2117
2481
|
"identities.messages.1050019": "Passkey hinzuf\xFCgen",
|
|
2118
|
-
"identities.messages.1050020": "",
|
|
2119
|
-
"identities.messages.4000037": "",
|
|
2120
|
-
"identities.messages.4010009": "",
|
|
2121
|
-
"identities.messages.4010010": "",
|
|
2482
|
+
"identities.messages.1050020": 'Passkey "{display_name}" entfernen',
|
|
2483
|
+
"identities.messages.4000037": "F\xFCr die eingegebenen Daten existiert kein Account",
|
|
2484
|
+
"identities.messages.4010009": "Die Authentifizierungsmethode stimmt nicht mit der vorherigen Authentifizierungsmethode \xFCberein. Bitte versuchen Sie es erneut.",
|
|
2485
|
+
"identities.messages.4010010": "Die eingegebene Adresse stimmt nicht mit der Adresse \xFCberein, die Sie bei der Registrierung angegeben haben. Bitte versuchen Sie es erneut.",
|
|
2122
2486
|
"input.placeholder": "{placeholder} eingeben",
|
|
2123
|
-
"card.header.parts.code": "
|
|
2487
|
+
"card.header.parts.code": "ein an Sie gesendeter Code",
|
|
2124
2488
|
"card.header.parts.identifier-first": "Ihr {identifierLabel}",
|
|
2125
2489
|
"card.header.parts.oidc": "ein sozialer Anbieter",
|
|
2126
2490
|
"card.header.parts.passkey": "ein Passkey",
|
|
2127
2491
|
"card.header.parts.password.login": "Ihrer {identifierLabel} und Ihrem Passwort",
|
|
2128
2492
|
"card.header.parts.password.registration": "Ihrer {identifierLabel} und einem Passwort",
|
|
2129
2493
|
"card.header.parts.webauthn": "ein Sicherheitsschl\xFCssel",
|
|
2494
|
+
"card.header.parts.totp": "deine Authentifikator-App",
|
|
2495
|
+
"card.header.parts.lookup_secret": "ein Backup-Wiederherstellungscode",
|
|
2130
2496
|
"recovery.subtitle": "Geben Sie die mit Ihrem Konto verkn\xFCpfte E-Mail-Adresse ein, um einen einmaligen Zugangscode zu erhalten",
|
|
2131
2497
|
"verification.subtitle": "Geben Sie die mit Ihrem Konto verkn\xFCpfte E-Mail-Adresse ein, um es zu best\xE4tigen",
|
|
2132
2498
|
"card.header.description.login": "Melden Sie sich mit {identifierLabel} an",
|
|
@@ -2183,7 +2549,27 @@ var de_default = {
|
|
|
2183
2549
|
"property.password": "Passwort",
|
|
2184
2550
|
"property.phone": "Telefon",
|
|
2185
2551
|
"property.code": "Code",
|
|
2186
|
-
"property.username": "Benutzername"
|
|
2552
|
+
"property.username": "Benutzername",
|
|
2553
|
+
"consent.title": "Autorisieren {party}",
|
|
2554
|
+
"consent.subtitle": "Eine Drittanbieteranwendung m\xF6chte auf Informationen zugreifen, die mit Ihrem Konto {identifier} verkn\xFCpft sind.",
|
|
2555
|
+
"consent.scope.openid.title": "Identit\xE4t",
|
|
2556
|
+
"consent.scope.openid.description": "Erm\xF6glicht der Anwendung, Ihre Identit\xE4t zu \xFCberpr\xFCfen. Dies ist f\xFCr die Authentifizierung und eine vertrauensw\xFCrdige Login-Erfahrung erforderlich.",
|
|
2557
|
+
"consent.scope.offline_access.title": "Offline-Zugriff",
|
|
2558
|
+
"consent.scope.offline_access.description": "Erm\xF6glicht dieser Anwendung, Sie angemeldet zu lassen, auch wenn Sie sie nicht aktiv nutzen.",
|
|
2559
|
+
"consent.scope.profile.title": "Profilinformationen",
|
|
2560
|
+
"consent.scope.profile.description": "Erm\xF6glicht den Zugriff auf Ihre grundlegenden Profildetails, einschlie\xDFlich Ihres Benutzernamens, Vornamens und Nachnamens.",
|
|
2561
|
+
"consent.scope.email.title": "E-Mail-Adresse",
|
|
2562
|
+
"consent.scope.email.description": "Erm\xF6glicht den Abruf Ihrer E-Mail-Adresse und deren \xDCberpr\xFCfungsstatus.",
|
|
2563
|
+
"consent.scope.address.title": "Physische Adresse",
|
|
2564
|
+
"consent.scope.address.description": "Erm\xF6glicht den Zugriff auf Ihre Postanschrift.",
|
|
2565
|
+
"consent.scope.phone.title": "Telefonnummer",
|
|
2566
|
+
"consent.scope.phone.description": "Erm\xF6glicht den Abruf Ihrer Telefonnummer und deren \xDCberpr\xFCfungsstatus.",
|
|
2567
|
+
"error.title.what-happened": "Was ist passiert?",
|
|
2568
|
+
"error.footer.copy": "Kopieren",
|
|
2569
|
+
"error.footer.text": "Bitte f\xFCgen Sie bei der Meldung dieses Fehlers die folgenden Informationen hinzu:",
|
|
2570
|
+
"error.instructions": "Bitte versuchen Sie es in wenigen Minuten erneut oder wenden Sie sich an den Website-Betreiber.",
|
|
2571
|
+
"error.title.what-can-i-do": "Was kann ich tun?",
|
|
2572
|
+
"error.action.go-back": "Zur\xFCck"
|
|
2187
2573
|
};
|
|
2188
2574
|
|
|
2189
2575
|
// src/locales/es.json
|
|
@@ -2199,7 +2585,6 @@ var es_default = {
|
|
|
2199
2585
|
"error.back-button": "Regresar",
|
|
2200
2586
|
"error.description": "Ocurri\xF3 un error con el siguiente mensaje:",
|
|
2201
2587
|
"error.support-email-link": "Si el problema persiste, por favor contacte a <a>{contactSupportEmail}</a>",
|
|
2202
|
-
"error.title": "Ocurri\xF3 un error",
|
|
2203
2588
|
"error.title-internal-server-error": "Error Interno del Servidor",
|
|
2204
2589
|
"error.title-not-found": "404 - P\xE1gina no encontrada",
|
|
2205
2590
|
"identities.messages.1010001": "Iniciar sesi\xF3n",
|
|
@@ -2209,9 +2594,9 @@ var es_default = {
|
|
|
2209
2594
|
"identities.messages.1010005": "Verificar",
|
|
2210
2595
|
"identities.messages.1010006": "C\xF3digo de autenticaci\xF3n",
|
|
2211
2596
|
"identities.messages.1010007": "C\xF3digo de recuperaci\xF3n de respaldo",
|
|
2212
|
-
"identities.messages.1010008": "
|
|
2213
|
-
"identities.messages.1010009": "
|
|
2214
|
-
"identities.messages.1010010": "
|
|
2597
|
+
"identities.messages.1010008": "Continuar con la llave de hardware",
|
|
2598
|
+
"identities.messages.1010009": "Continuar",
|
|
2599
|
+
"identities.messages.1010010": "Continuar",
|
|
2215
2600
|
"identities.messages.1010011": "Continuar con llave de seguridad",
|
|
2216
2601
|
"identities.messages.1010012": "Prepare su dispositivo WebAuthn (por ejemplo, llave de seguridad, esc\xE1ner biom\xE9trico, ...) y presione continuar.",
|
|
2217
2602
|
"identities.messages.1010013": "Continuar",
|
|
@@ -2327,8 +2712,16 @@ var es_default = {
|
|
|
2327
2712
|
"login.registration-label": "\xBFNo tiene una cuenta?",
|
|
2328
2713
|
"login.subtitle-oauth2": "Para autenticar a {clientName}",
|
|
2329
2714
|
"login.title": "Iniciar sesi\xF3n",
|
|
2330
|
-
"login.title-aal2": "Autenticaci\xF3n de
|
|
2715
|
+
"login.title-aal2": "Autenticaci\xF3n de dos factores",
|
|
2716
|
+
"login.subtitle-aal2": "Elija una forma de completar su autenticaci\xF3n de segundo factor",
|
|
2717
|
+
"login.code.subtitle": "Se enviar\xE1 un c\xF3digo de verificaci\xF3n por correo electr\xF3nico",
|
|
2718
|
+
"login.webauthn.subtitle": "Por favor, prepare su dispositivo WebAuthN",
|
|
2719
|
+
"login.totp.subtitle": "Ingrese el c\xF3digo generado por su aplicaci\xF3n de autenticaci\xF3n",
|
|
2720
|
+
"login.lookup_secret.subtitle": "Ingrese uno de sus c\xF3digos de recuperaci\xF3n de respaldo de 8 d\xEDgitos",
|
|
2331
2721
|
"login.title-refresh": "Confirme que es usted",
|
|
2722
|
+
"login.2fa.go-back": "\xBFAlgo no funciona?",
|
|
2723
|
+
"login.2fa.go-back.link": "Volver",
|
|
2724
|
+
"login.2fa.method.go-back": "Elegir otro m\xE9todo",
|
|
2332
2725
|
"logout.accept-button": "S\xED",
|
|
2333
2726
|
"logout.reject-button": "No",
|
|
2334
2727
|
"logout.title": "\xBFDesea cerrar sesi\xF3n?",
|
|
@@ -2360,47 +2753,12 @@ var es_default = {
|
|
|
2360
2753
|
"two-step.passkey.title": "Clave de acceso (recomendada)",
|
|
2361
2754
|
"two-step.password.description": "Ingrese la contrase\xF1a asociada con su cuenta",
|
|
2362
2755
|
"two-step.password.title": "Contrase\xF1a",
|
|
2363
|
-
"two-step.webauthn.description": "Utiliza tu llave de seguridad para autenticarte",
|
|
2364
2756
|
"two-step.webauthn.title": "Clave de Seguridad",
|
|
2365
|
-
"
|
|
2366
|
-
"
|
|
2367
|
-
"
|
|
2368
|
-
"
|
|
2369
|
-
"
|
|
2370
|
-
"identities.messages.1010021": "",
|
|
2371
|
-
"identities.messages.1010022": "",
|
|
2372
|
-
"identities.messages.1010023": "",
|
|
2373
|
-
"identities.messages.1040007": "",
|
|
2374
|
-
"identities.messages.1040008": "",
|
|
2375
|
-
"identities.messages.1040009": "",
|
|
2376
|
-
"identities.messages.1050019": "",
|
|
2377
|
-
"identities.messages.1050020": "",
|
|
2378
|
-
"identities.messages.1070014": "",
|
|
2379
|
-
"identities.messages.1070015": "",
|
|
2380
|
-
"identities.messages.4000037": "",
|
|
2381
|
-
"identities.messages.4000038": "",
|
|
2382
|
-
"identities.messages.4010009": "",
|
|
2383
|
-
"identities.messages.4010010": "",
|
|
2384
|
-
"login.cancel-button": "",
|
|
2385
|
-
"login.cancel-label": "",
|
|
2386
|
-
"input.placeholder": "",
|
|
2387
|
-
"card.header.description.login": "",
|
|
2388
|
-
"card.header.description.registration": "",
|
|
2389
|
-
"card.header.parts.code": "",
|
|
2390
|
-
"card.header.parts.identifier-first": "",
|
|
2391
|
-
"card.header.parts.oidc": "",
|
|
2392
|
-
"card.header.parts.passkey": "",
|
|
2393
|
-
"card.header.parts.password.login": "",
|
|
2394
|
-
"card.header.parts.password.registration": "",
|
|
2395
|
-
"card.header.parts.webauthn": "",
|
|
2396
|
-
"forms.label.forgot-password": "",
|
|
2397
|
-
"login.subtitle": "",
|
|
2398
|
-
"login.subtitle-refresh": "",
|
|
2399
|
-
"misc.or": "",
|
|
2400
|
-
"recovery.subtitle": "",
|
|
2401
|
-
"registration.subtitle": "",
|
|
2402
|
-
"settings.subtitle": "",
|
|
2403
|
-
"verification.subtitle": "",
|
|
2757
|
+
"two-step.webauthn.description": "Utilice su llave de seguridad para autenticase",
|
|
2758
|
+
"two-step.totp.title": "Utilice su aplicaci\xF3n de autenticaci\xF3n (TOTP)",
|
|
2759
|
+
"two-step.totp.description": "Utilice un c\xF3digo de un solo uso de 6 d\xEDgitos de su aplicaci\xF3n de autenticaci\xF3n",
|
|
2760
|
+
"two-step.lookup_secret.title": "C\xF3digo de recuperaci\xF3n de respaldo",
|
|
2761
|
+
"two-step.lookup_secret.description": "Utilice uno de sus c\xF3digos de respaldo de 8 d\xEDgitos para autenticarse",
|
|
2404
2762
|
"settings.totp.info.linked": "Actualmente tienes una aplicaci\xF3n de autenticaci\xF3n conectada.",
|
|
2405
2763
|
"settings.totp.info.not-linked": "Para habilitar, escanea el c\xF3digo QR con tu autenticador e ingresa el c\xF3digo.",
|
|
2406
2764
|
"settings.totp.title": "Aplicaci\xF3n Autenticadora",
|
|
@@ -2418,25 +2776,87 @@ var es_default = {
|
|
|
2418
2776
|
"settings.profile.title": "Configuraci\xF3n de Perfil",
|
|
2419
2777
|
"settings.webauthn.description": "Administra la configuraci\xF3n de tu token de hardware",
|
|
2420
2778
|
"settings.webauthn.title": "Gestionar Tokens de Hardware",
|
|
2421
|
-
"
|
|
2422
|
-
"
|
|
2423
|
-
"
|
|
2424
|
-
"
|
|
2425
|
-
"
|
|
2426
|
-
"
|
|
2427
|
-
"
|
|
2428
|
-
"
|
|
2429
|
-
"
|
|
2430
|
-
"
|
|
2431
|
-
"
|
|
2432
|
-
"
|
|
2433
|
-
"
|
|
2434
|
-
"
|
|
2435
|
-
"
|
|
2436
|
-
"
|
|
2437
|
-
"
|
|
2438
|
-
"
|
|
2439
|
-
"
|
|
2779
|
+
"consent.title": "Autorizar {party}",
|
|
2780
|
+
"consent.subtitle": "Una aplicaci\xF3n de terceros quiere acceder a la informaci\xF3n asociada a su cuenta {identifier}.",
|
|
2781
|
+
"consent.scope.openid.title": "Identidad",
|
|
2782
|
+
"consent.scope.openid.description": "Permite que la aplicaci\xF3n verifique su identidad. Esto es necesario para la autenticaci\xF3n y una experiencia de inicio de sesi\xF3n confiable.",
|
|
2783
|
+
"consent.scope.offline_access.title": "Acceso sin conexi\xF3n",
|
|
2784
|
+
"consent.scope.offline_access.description": "Permite que esta aplicaci\xF3n le mantenga conectado incluso cuando no la est\xE9 utilizando activamente.",
|
|
2785
|
+
"consent.scope.profile.title": "Informaci\xF3n del perfil",
|
|
2786
|
+
"consent.scope.profile.description": "Permite el acceso a los detalles b\xE1sicos de su perfil, incluyendo su nombre de usuario, nombre y apellido.",
|
|
2787
|
+
"consent.scope.email.title": "Direcci\xF3n de correo electr\xF3nico",
|
|
2788
|
+
"consent.scope.email.description": "Recupere su direcci\xF3n de correo electr\xF3nico y su estado de verificaci\xF3n.",
|
|
2789
|
+
"consent.scope.address.title": "Direcci\xF3n f\xEDsica",
|
|
2790
|
+
"consent.scope.address.description": "Acceda a su direcci\xF3n postal.",
|
|
2791
|
+
"consent.scope.phone.title": "N\xFAmero de tel\xE9fono",
|
|
2792
|
+
"consent.scope.phone.description": "Recupere su n\xFAmero de tel\xE9fono y su estado de verificaci\xF3n.",
|
|
2793
|
+
"error.title": "Ocurri\xF3 un error",
|
|
2794
|
+
"identities.messages.1010016": 'Intentaste iniciar sesi\xF3n con "{duplicateIdentifier}", pero ese correo electr\xF3nico ya est\xE1 en uso por otra cuenta. Inicia sesi\xF3n en tu cuenta con una de las opciones a continuaci\xF3n para agregar tu cuenta "{duplicateIdentifier}" en "{provider}" como otra forma de iniciar sesi\xF3n.',
|
|
2795
|
+
"identities.messages.1010017": "Iniciar sesi\xF3n y vincular",
|
|
2796
|
+
"identities.messages.1010018": "Confirmar con {provider}",
|
|
2797
|
+
"identities.messages.1010019": "Solicitar c\xF3digo para continuar",
|
|
2798
|
+
"identities.messages.1010021": "Iniciar sesi\xF3n con clave de acceso",
|
|
2799
|
+
"identities.messages.1010022": "Iniciar sesi\xF3n con contrase\xF1a",
|
|
2800
|
+
"identities.messages.1010023": "Enviar c\xF3digo a {address}",
|
|
2801
|
+
"identities.messages.1040007": "Registrarse con clave de acceso",
|
|
2802
|
+
"identities.messages.1040008": "Atr\xE1s",
|
|
2803
|
+
"identities.messages.1040009": "Por favor, elige una credencial para autenticarte.",
|
|
2804
|
+
"identities.messages.1050019": "Agregar clave de acceso",
|
|
2805
|
+
"identities.messages.1070014": "Iniciar sesi\xF3n y vincular credencial",
|
|
2806
|
+
"identities.messages.1070015": "Por favor, completa el desaf\xEDo captcha para continuar.",
|
|
2807
|
+
"identities.messages.4000037": "Esta cuenta no existe o no tiene ning\xFAn m\xE9todo de inicio de sesi\xF3n configurado.",
|
|
2808
|
+
"identities.messages.4000038": "Fall\xF3 la verificaci\xF3n de Captcha, por favor intenta de nuevo.",
|
|
2809
|
+
"identities.messages.4010009": "Las credenciales vinculadas no coinciden.",
|
|
2810
|
+
"identities.messages.4010010": "La direcci\xF3n que ingresaste no coincide con ninguna direcci\xF3n conocida en la cuenta actual.",
|
|
2811
|
+
"login.cancel-button": "Cancelar",
|
|
2812
|
+
"login.cancel-label": "\xBFNo es la cuenta correcta?",
|
|
2813
|
+
"login.subtitle": "Iniciar sesi\xF3n con {parts}",
|
|
2814
|
+
"login.subtitle-refresh": "Confirma tu identidad con {parts}",
|
|
2815
|
+
"recovery.subtitle": "Ingresa la direcci\xF3n de correo electr\xF3nico asociada con tu cuenta para recibir un c\xF3digo de acceso \xFAnico",
|
|
2816
|
+
"registration.subtitle": "Registrarse con {parts}",
|
|
2817
|
+
"settings.subtitle": "Actualiza la configuraci\xF3n de tu cuenta",
|
|
2818
|
+
"settings.title-lookup-secret": "Administrar c\xF3digos de recuperaci\xF3n de respaldo 2FA",
|
|
2819
|
+
"settings.title-navigation": "Configuraci\xF3n de la cuenta",
|
|
2820
|
+
"settings.title-oidc": "Inicio de sesi\xF3n social",
|
|
2821
|
+
"settings.title-password": "Cambiar contrase\xF1a",
|
|
2822
|
+
"settings.title-profile": "Configuraci\xF3n del perfil",
|
|
2823
|
+
"settings.title-totp": "Administrar la aplicaci\xF3n de autenticaci\xF3n 2FA TOTP",
|
|
2824
|
+
"settings.title-webauthn": "Administrar tokens de hardware",
|
|
2825
|
+
"settings.title-passkey": "Administrar claves de acceso",
|
|
2826
|
+
"verification.subtitle": "Ingresa la direcci\xF3n de correo electr\xF3nico asociada con tu cuenta para verificarla",
|
|
2827
|
+
"input.placeholder": "Ingresa tu {placeholder}",
|
|
2828
|
+
"card.header.parts.oidc": "un proveedor social",
|
|
2829
|
+
"card.header.parts.password.registration": "tu {identifierLabel} y una contrase\xF1a",
|
|
2830
|
+
"card.header.parts.password.login": "tu {identifierLabel} y contrase\xF1a",
|
|
2831
|
+
"card.header.parts.code": "un c\xF3digo enviado a tu correo electr\xF3nico",
|
|
2832
|
+
"card.header.parts.passkey": "una clave de acceso",
|
|
2833
|
+
"card.header.parts.webauthn": "una clave de seguridad",
|
|
2834
|
+
"card.header.parts.totp": "su aplicaci\xF3n de autenticaci\xF3n",
|
|
2835
|
+
"card.header.parts.lookup_secret": "un c\xF3digo de recuperaci\xF3n de copia de seguridad",
|
|
2836
|
+
"card.header.parts.identifier-first": "tu {identifierLabel}",
|
|
2837
|
+
"card.header.description.login": "Iniciar sesi\xF3n con {identifierLabel}",
|
|
2838
|
+
"card.header.description.registration": "Registrarse con {identifierLabel}",
|
|
2839
|
+
"misc.or": "o",
|
|
2840
|
+
"forms.label.forgot-password": "\xBFOlvidaste tu contrase\xF1a?",
|
|
2841
|
+
"settings.oidc.info": "Las cuentas conectadas de estos proveedores se pueden utilizar para iniciar sesi\xF3n en tu cuenta",
|
|
2842
|
+
"settings.webauthn.info": "Los tokens de hardware se utilizan para la autenticaci\xF3n de segundo factor o como primer factor con las claves de acceso",
|
|
2843
|
+
"settings.passkey.info": "Administra la configuraci\xF3n de tus claves de acceso",
|
|
2844
|
+
"card.footer.select-another-method": "Seleccionar otro m\xE9todo",
|
|
2845
|
+
"account-linking.title": "Vincular cuenta",
|
|
2846
|
+
"property.password": "contrase\xF1a",
|
|
2847
|
+
"property.email": "correo electr\xF3nico",
|
|
2848
|
+
"property.phone": "tel\xE9fono",
|
|
2849
|
+
"property.username": "nombre de usuario",
|
|
2850
|
+
"property.identifier": "identificador",
|
|
2851
|
+
"property.code": "c\xF3digo",
|
|
2852
|
+
"error.title.what-happened": "\xBFQu\xE9 pas\xF3?",
|
|
2853
|
+
"error.title.what-can-i-do": "\xBFQu\xE9 puedo hacer?",
|
|
2854
|
+
"error.instructions": "Por favor, int\xE9ntalo de nuevo en unos minutos o contacta al operador del sitio web.",
|
|
2855
|
+
"error.footer.text": "Al informar este error, incluye la siguiente informaci\xF3n:",
|
|
2856
|
+
"error.footer.copy": "Copiar",
|
|
2857
|
+
"error.action.go-back": "Regresar",
|
|
2858
|
+
"identities.messages.1010020": "",
|
|
2859
|
+
"identities.messages.1050020": 'Eliminar passkey "{display_name}"'
|
|
2440
2860
|
};
|
|
2441
2861
|
|
|
2442
2862
|
// src/locales/fr.json
|
|
@@ -2462,9 +2882,9 @@ var fr_default = {
|
|
|
2462
2882
|
"identities.messages.1010005": "V\xE9rifier",
|
|
2463
2883
|
"identities.messages.1010006": "Code d'authentification",
|
|
2464
2884
|
"identities.messages.1010007": "Code de r\xE9cup\xE9ration de secours",
|
|
2465
|
-
"identities.messages.1010008": "
|
|
2466
|
-
"identities.messages.1010009": "
|
|
2467
|
-
"identities.messages.1010010": "
|
|
2885
|
+
"identities.messages.1010008": "Continuer avec la cl\xE9 mat\xE9rielle",
|
|
2886
|
+
"identities.messages.1010009": "Continuer",
|
|
2887
|
+
"identities.messages.1010010": "Continuer",
|
|
2468
2888
|
"identities.messages.1010011": "Continuer avec la cl\xE9 de s\xE9curit\xE9",
|
|
2469
2889
|
"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.",
|
|
2470
2890
|
"identities.messages.1010013": "Continuer",
|
|
@@ -2581,7 +3001,15 @@ var fr_default = {
|
|
|
2581
3001
|
"login.subtitle-oauth2": "Pour vous authentifier sur {clientName}",
|
|
2582
3002
|
"login.title": "Se connecter",
|
|
2583
3003
|
"login.title-aal2": "Authentification \xE0 deux facteurs",
|
|
3004
|
+
"login.subtitle-aal2": "Choisissez une m\xE9thode pour compl\xE9ter votre authentification \xE0 deux facteurs",
|
|
3005
|
+
"login.code.subtitle": "Un code de v\xE9rification sera envoy\xE9 par e-mail",
|
|
3006
|
+
"login.webauthn.subtitle": "Veuillez pr\xE9parer votre dispositif WebAuthN",
|
|
3007
|
+
"login.totp.subtitle": "Veuillez saisir le code g\xE9n\xE9r\xE9 par votre application d'authentification",
|
|
3008
|
+
"login.lookup_secret.subtitle": "Veuillez saisir l'un de vos codes de r\xE9cup\xE9ration de secours \xE0 8 chiffres",
|
|
2584
3009
|
"login.title-refresh": "Confirmez que c'est bien vous",
|
|
3010
|
+
"login.2fa.go-back": "Quelque chose ne fonctionne pas ?",
|
|
3011
|
+
"login.2fa.go-back.link": "Retour",
|
|
3012
|
+
"login.2fa.method.go-back": "Choisir une autre m\xE9thode",
|
|
2585
3013
|
"logout.accept-button": "Oui",
|
|
2586
3014
|
"logout.reject-button": "Non",
|
|
2587
3015
|
"logout.title": "Souhaitez-vous vous d\xE9connecter ?",
|
|
@@ -2613,83 +3041,109 @@ var fr_default = {
|
|
|
2613
3041
|
"two-step.passkey.title": "Cl\xE9 de passe (recommand\xE9e)",
|
|
2614
3042
|
"two-step.password.description": "Entrez votre mot de passe associ\xE9 \xE0 votre compte",
|
|
2615
3043
|
"two-step.password.title": "Mot de passe",
|
|
2616
|
-
"two-step.webauthn.description": "Utilisez votre cl\xE9 de s\xE9curit\xE9 pour vous authentifier",
|
|
2617
3044
|
"two-step.webauthn.title": "Cl\xE9 de S\xE9curit\xE9",
|
|
2618
|
-
"
|
|
2619
|
-
"
|
|
2620
|
-
"
|
|
2621
|
-
"
|
|
2622
|
-
"
|
|
2623
|
-
"identities.messages.1010016": "",
|
|
2624
|
-
"identities.messages.1010017": "",
|
|
2625
|
-
"identities.messages.1010018": "",
|
|
2626
|
-
"identities.messages.1010019": "",
|
|
2627
|
-
"identities.messages.1010020": "",
|
|
2628
|
-
"identities.messages.1010021": "",
|
|
2629
|
-
"identities.messages.1010022": "",
|
|
2630
|
-
"identities.messages.1040007": "",
|
|
2631
|
-
"identities.messages.1040008": "",
|
|
2632
|
-
"identities.messages.1040009": "",
|
|
2633
|
-
"identities.messages.1050019": "",
|
|
2634
|
-
"identities.messages.1050020": "",
|
|
2635
|
-
"identities.messages.1070014": "",
|
|
2636
|
-
"identities.messages.4000037": "",
|
|
2637
|
-
"identities.messages.4010009": "",
|
|
2638
|
-
"identities.messages.4010010": "",
|
|
2639
|
-
"input.placeholder": "",
|
|
2640
|
-
"card.header.description.login": "",
|
|
2641
|
-
"card.header.description.registration": "",
|
|
2642
|
-
"card.header.parts.code": "",
|
|
2643
|
-
"card.header.parts.identifier-first": "",
|
|
2644
|
-
"card.header.parts.oidc": "",
|
|
2645
|
-
"card.header.parts.passkey": "",
|
|
2646
|
-
"card.header.parts.password.login": "",
|
|
2647
|
-
"card.header.parts.password.registration": "",
|
|
2648
|
-
"card.header.parts.webauthn": "",
|
|
2649
|
-
"forms.label.forgot-password": "",
|
|
2650
|
-
"login.subtitle": "",
|
|
2651
|
-
"login.subtitle-refresh": "",
|
|
2652
|
-
"misc.or": "",
|
|
2653
|
-
"recovery.subtitle": "",
|
|
2654
|
-
"registration.subtitle": "",
|
|
2655
|
-
"settings.subtitle": "",
|
|
2656
|
-
"verification.subtitle": "",
|
|
3045
|
+
"two-step.webauthn.description": "Utilisez votre cl\xE9 de s\xE9curit\xE9 pour vous authentifier",
|
|
3046
|
+
"two-step.totp.title": "Utilisez votre application d'authentification (TOTP)",
|
|
3047
|
+
"two-step.totp.description": "Utilisez un code \xE0 usage unique \xE0 6 chiffres provenant de votre application d'authentification",
|
|
3048
|
+
"two-step.lookup_secret.title": "Code de r\xE9cup\xE9ration de secours",
|
|
3049
|
+
"two-step.lookup_secret.description": "Utilisez l'un de vos codes de secours \xE0 8 chiffres pour vous authentifier",
|
|
2657
3050
|
"settings.totp.info.linked": "Vous avez actuellement une application d'authentification connect\xE9e.",
|
|
2658
3051
|
"settings.totp.info.not-linked": "Pour activer, scannez le QR code avec votre authentificateur et entrez le code.",
|
|
2659
3052
|
"settings.totp.title": "Application d'authentification",
|
|
2660
3053
|
"settings.totp.description": "Ajoutez une application d'authentification TOTP \xE0 votre compte pour am\xE9liorer la s\xE9curit\xE9 de votre compte. Les applications d'authentification populaires sont LastPass et Google Authenticator.",
|
|
2661
|
-
"
|
|
2662
|
-
"
|
|
2663
|
-
"
|
|
2664
|
-
"
|
|
2665
|
-
"
|
|
2666
|
-
"
|
|
2667
|
-
"
|
|
2668
|
-
"
|
|
2669
|
-
"
|
|
2670
|
-
"
|
|
2671
|
-
"
|
|
2672
|
-
"
|
|
2673
|
-
"
|
|
2674
|
-
"
|
|
2675
|
-
"
|
|
2676
|
-
"
|
|
2677
|
-
"
|
|
2678
|
-
"
|
|
2679
|
-
"
|
|
2680
|
-
"
|
|
2681
|
-
"
|
|
2682
|
-
"
|
|
2683
|
-
"
|
|
2684
|
-
"
|
|
2685
|
-
"
|
|
2686
|
-
"
|
|
2687
|
-
"
|
|
2688
|
-
"
|
|
2689
|
-
"
|
|
2690
|
-
"
|
|
2691
|
-
"
|
|
2692
|
-
"
|
|
3054
|
+
"consent.title": "Autoriser {party}",
|
|
3055
|
+
"consent.subtitle": "Une application tierce souhaite acc\xE9der aux informations associ\xE9es \xE0 votre compte {identifier}.",
|
|
3056
|
+
"consent.scope.openid.title": "Identit\xE9",
|
|
3057
|
+
"consent.scope.openid.description": "Permet \xE0 l'application de v\xE9rifier votre identit\xE9. Cela est n\xE9cessaire pour l'authentification et une exp\xE9rience de connexion fiable.",
|
|
3058
|
+
"consent.scope.offline_access.title": "Acc\xE8s hors ligne",
|
|
3059
|
+
"consent.scope.offline_access.description": "Permet \xE0 cette application de vous maintenir connect\xE9 m\xEAme lorsque vous ne l'utilisez pas activement.",
|
|
3060
|
+
"consent.scope.profile.title": "Informations de profil",
|
|
3061
|
+
"consent.scope.profile.description": "Permet l'acc\xE8s aux d\xE9tails de base de votre profil, y compris votre nom d'utilisateur, pr\xE9nom et nom.",
|
|
3062
|
+
"consent.scope.email.title": "Adresse e-mail",
|
|
3063
|
+
"consent.scope.email.description": "R\xE9cup\xE8re votre adresse e-mail et son statut de v\xE9rification.",
|
|
3064
|
+
"consent.scope.address.title": "Adresse physique",
|
|
3065
|
+
"consent.scope.address.description": "Acc\xE8de \xE0 votre adresse postale.",
|
|
3066
|
+
"consent.scope.phone.title": "Num\xE9ro de t\xE9l\xE9phone",
|
|
3067
|
+
"consent.scope.phone.description": "R\xE9cup\xE8re votre num\xE9ro de t\xE9l\xE9phone et son statut de v\xE9rification.",
|
|
3068
|
+
"identities.messages.1010016": "Vous avez essay\xE9 de vous connecter avec \xAB {duplicateIdentifier} \xBB, mais cet e-mail est d\xE9j\xE0 utilis\xE9 par un autre compte. Connectez-vous \xE0 votre compte avec l'une des options ci-dessous pour ajouter votre compte \xAB {duplicateIdentifier} \xBB sur \xAB {provider} \xBB comme autre moyen de vous connecter.",
|
|
3069
|
+
"identities.messages.1010017": "Se connecter et lier",
|
|
3070
|
+
"identities.messages.1010018": "Confirmer avec {provider}",
|
|
3071
|
+
"identities.messages.1010019": "Demander un code pour continuer",
|
|
3072
|
+
"identities.messages.1010021": "Se connecter avec une cl\xE9 d'acc\xE8s",
|
|
3073
|
+
"identities.messages.1010022": "Se connecter avec un mot de passe",
|
|
3074
|
+
"identities.messages.1010023": "Envoyer le code \xE0 {address}",
|
|
3075
|
+
"identities.messages.1040007": "S'inscrire avec une cl\xE9 d'acc\xE8s",
|
|
3076
|
+
"identities.messages.1040008": "Retour",
|
|
3077
|
+
"identities.messages.1040009": "Veuillez choisir une identification pour vous authentifier.",
|
|
3078
|
+
"identities.messages.1050019": "Ajouter une cl\xE9 d'acc\xE8s",
|
|
3079
|
+
"identities.messages.1050020": "Supprimer la cl\xE9 d'acc\xE8s \xAB {display_name} \xBB",
|
|
3080
|
+
"identities.messages.1070014": "Se connecter et lier l'identification",
|
|
3081
|
+
"identities.messages.1070015": "Veuillez compl\xE9ter le d\xE9fi captcha pour continuer.",
|
|
3082
|
+
"identities.messages.4000037": "Ce compte n'existe pas ou n'a aucune m\xE9thode de connexion configur\xE9e.",
|
|
3083
|
+
"identities.messages.4000038": "La v\xE9rification Captcha a \xE9chou\xE9, veuillez r\xE9essayer.",
|
|
3084
|
+
"identities.messages.4010009": "Les identifications li\xE9es ne correspondent pas.",
|
|
3085
|
+
"identities.messages.4010010": "L'adresse que vous avez saisie ne correspond \xE0 aucune adresse connue dans le compte actuel.",
|
|
3086
|
+
"login.cancel-button": "Annuler",
|
|
3087
|
+
"login.cancel-label": "Ce n'est pas le bon compte\xA0?",
|
|
3088
|
+
"login.subtitle": "Se connecter avec {parts}",
|
|
3089
|
+
"login.subtitle-refresh": "Confirmez votre identit\xE9 avec {parts}",
|
|
3090
|
+
"recovery.subtitle": "Saisissez l'adresse e-mail associ\xE9e \xE0 votre compte pour recevoir un code d'acc\xE8s unique",
|
|
3091
|
+
"registration.subtitle": "S'inscrire avec {parts}",
|
|
3092
|
+
"settings.subtitle": "Mettre \xE0 jour les param\xE8tres de votre compte",
|
|
3093
|
+
"settings.title-lookup-secret": "G\xE9rer les codes de r\xE9cup\xE9ration de sauvegarde 2FA",
|
|
3094
|
+
"settings.title-navigation": "Param\xE8tres du compte",
|
|
3095
|
+
"settings.title-oidc": "Connexion via les r\xE9seaux sociaux",
|
|
3096
|
+
"settings.title-password": "Changer le mot de passe",
|
|
3097
|
+
"settings.title-profile": "Param\xE8tres du profil",
|
|
3098
|
+
"settings.title-totp": "G\xE9rer l'application d'authentification 2FA TOTP",
|
|
3099
|
+
"settings.title-webauthn": "G\xE9rer les jetons mat\xE9riels",
|
|
3100
|
+
"settings.title-passkey": "G\xE9rer les cl\xE9s d'acc\xE8s",
|
|
3101
|
+
"settings.navigation.title": "Param\xE8tres du compte",
|
|
3102
|
+
"settings.password.title": "Changer le mot de passe",
|
|
3103
|
+
"settings.password.description": "Modifier votre mot de passe",
|
|
3104
|
+
"settings.profile.title": "Param\xE8tres du profil",
|
|
3105
|
+
"settings.profile.description": "Mettre \xE0 jour les informations de votre profil",
|
|
3106
|
+
"settings.webauthn.title": "G\xE9rer les jetons mat\xE9riels",
|
|
3107
|
+
"settings.webauthn.description": "G\xE9rer les param\xE8tres de votre jeton mat\xE9riel",
|
|
3108
|
+
"verification.subtitle": "Saisissez l'adresse e-mail associ\xE9e \xE0 votre compte pour la v\xE9rifier",
|
|
3109
|
+
"input.placeholder": "Saisissez votre {placeholder}",
|
|
3110
|
+
"card.header.parts.oidc": "un fournisseur de r\xE9seaux sociaux",
|
|
3111
|
+
"card.header.parts.password.registration": "votre {identifierLabel} et un mot de passe",
|
|
3112
|
+
"card.header.parts.password.login": "votre {identifierLabel} et votre mot de passe",
|
|
3113
|
+
"card.header.parts.passkey": "une cl\xE9 d'acc\xE8s",
|
|
3114
|
+
"card.header.parts.webauthn": "une cl\xE9 de s\xE9curit\xE9",
|
|
3115
|
+
"card.header.parts.identifier-first": "votre {identifierLabel}",
|
|
3116
|
+
"card.header.parts.code": "un code qui vous a \xE9t\xE9 envoy\xE9",
|
|
3117
|
+
"card.header.parts.totp": "votre application d'authentification",
|
|
3118
|
+
"card.header.parts.lookup_secret": "un code de r\xE9cup\xE9ration de secours",
|
|
3119
|
+
"card.header.description.login": "Se connecter avec {identifierLabel}",
|
|
3120
|
+
"card.header.description.registration": "S'inscrire avec {identifierLabel}",
|
|
3121
|
+
"misc.or": "ou",
|
|
3122
|
+
"forms.label.forgot-password": "Mot de passe oubli\xE9?",
|
|
3123
|
+
"settings.lookup_secret.title": "Codes de r\xE9cup\xE9ration de sauvegarde (second facteur)",
|
|
3124
|
+
"settings.lookup_secret.description": "Les codes de r\xE9cup\xE9ration sont une sauvegarde s\xE9curis\xE9e pour l'authentification \xE0 deux facteurs (2FA), vous permettant de retrouver l'acc\xE8s \xE0 votre compte si vous perdez votre appareil 2FA.",
|
|
3125
|
+
"settings.oidc.title": "Comptes connect\xE9s",
|
|
3126
|
+
"settings.oidc.description": "Connectez un fournisseur de connexion sociale \xE0 votre compte.",
|
|
3127
|
+
"settings.oidc.info": "Les comptes connect\xE9s de ces fournisseurs peuvent \xEAtre utilis\xE9s pour vous connecter \xE0 votre compte",
|
|
3128
|
+
"settings.webauthn.info": "Les jetons mat\xE9riels sont utilis\xE9s pour l'authentification \xE0 deux facteurs ou comme premier facteur avec les cl\xE9s d'acc\xE8s",
|
|
3129
|
+
"settings.passkey.title": "G\xE9rer les cl\xE9s d'acc\xE8s",
|
|
3130
|
+
"settings.passkey.description": "G\xE9rer les param\xE8tres de vos cl\xE9s d'acc\xE8s",
|
|
3131
|
+
"settings.passkey.info": "G\xE9rer les param\xE8tres de vos cl\xE9s d'acc\xE8s",
|
|
3132
|
+
"card.footer.select-another-method": "S\xE9lectionner une autre m\xE9thode",
|
|
3133
|
+
"account-linking.title": "Lier le compte",
|
|
3134
|
+
"property.password": "mot de passe",
|
|
3135
|
+
"property.email": "e-mail",
|
|
3136
|
+
"property.phone": "t\xE9l\xE9phone",
|
|
3137
|
+
"property.username": "nom d'utilisateur",
|
|
3138
|
+
"property.identifier": "identifiant",
|
|
3139
|
+
"property.code": "code",
|
|
3140
|
+
"error.title.what-happened": "Que s'est-il pass\xE9?",
|
|
3141
|
+
"error.title.what-can-i-do": "Que puis-je faire?",
|
|
3142
|
+
"error.instructions": "Veuillez r\xE9essayer dans quelques minutes ou contacter l'op\xE9rateur du site Web.",
|
|
3143
|
+
"error.footer.text": "Lorsque vous signalez cette erreur, veuillez inclure les informations suivantes:",
|
|
3144
|
+
"error.footer.copy": "Copier",
|
|
3145
|
+
"error.action.go-back": "Retour",
|
|
3146
|
+
"identities.messages.1010020": ""
|
|
2693
3147
|
};
|
|
2694
3148
|
|
|
2695
3149
|
// src/locales/nl.json
|
|
@@ -2715,9 +3169,9 @@ var nl_default = {
|
|
|
2715
3169
|
"identities.messages.1010005": "Verifi\xEBren",
|
|
2716
3170
|
"identities.messages.1010006": "Verificatiecode",
|
|
2717
3171
|
"identities.messages.1010007": "Back-up herstelcode",
|
|
2718
|
-
"identities.messages.1010008": "
|
|
2719
|
-
"identities.messages.1010009": "
|
|
2720
|
-
"identities.messages.1010010": "
|
|
3172
|
+
"identities.messages.1010008": "Ga verder met hardware-sleutel",
|
|
3173
|
+
"identities.messages.1010009": "Doorgaan",
|
|
3174
|
+
"identities.messages.1010010": "Doorgaan",
|
|
2721
3175
|
"identities.messages.1010011": "Doorgaan met beveiligingssleutel",
|
|
2722
3176
|
"identities.messages.1010012": "Bereid uw WebAuthn-apparaat voor (bijv. beveiligingssleutel, biometrische scanner, ...) en druk op doorgaan.",
|
|
2723
3177
|
"identities.messages.1010013": "Doorgaan",
|
|
@@ -2833,8 +3287,16 @@ var nl_default = {
|
|
|
2833
3287
|
"login.registration-label": "Heb je nog geen account?",
|
|
2834
3288
|
"login.subtitle-oauth2": "Om te authenticeren bij {clientName}",
|
|
2835
3289
|
"login.title": "Inloggen",
|
|
2836
|
-
"login.title-aal2": "
|
|
3290
|
+
"login.title-aal2": "Tweefactorauthenticatie",
|
|
3291
|
+
"login.subtitle-aal2": "Kies een manier om uw tweefactorauthenticatie te voltooien",
|
|
3292
|
+
"login.code.subtitle": "Er wordt een verificatiecode per e-mail verzonden",
|
|
3293
|
+
"login.webauthn.subtitle": "Bereid uw WebAuthN-apparaat voor",
|
|
3294
|
+
"login.totp.subtitle": "Voer de code in die door uw Authenticator-app is gegenereerd",
|
|
3295
|
+
"login.lookup_secret.subtitle": "Voer een van uw 8-cijferige back-up herstelcodes in",
|
|
2837
3296
|
"login.title-refresh": "Bevestig dat jij het bent",
|
|
3297
|
+
"login.2fa.go-back": "Werkt er iets niet?",
|
|
3298
|
+
"login.2fa.go-back.link": "Ga terug",
|
|
3299
|
+
"login.2fa.method.go-back": "Kies een andere methode",
|
|
2838
3300
|
"logout.accept-button": "Ja",
|
|
2839
3301
|
"logout.reject-button": "Nee",
|
|
2840
3302
|
"logout.title": "Wil je uitloggen?",
|
|
@@ -2866,8 +3328,12 @@ var nl_default = {
|
|
|
2866
3328
|
"two-step.passkey.title": "Toegangscode (aanbevolen)",
|
|
2867
3329
|
"two-step.password.description": "Voer uw wachtwoord in dat is gekoppeld aan uw account",
|
|
2868
3330
|
"two-step.password.title": "Wachtwoord",
|
|
2869
|
-
"two-step.webauthn.description": "Gebruik uw beveiligingssleutel om te verifi\xEBren",
|
|
2870
3331
|
"two-step.webauthn.title": "Beveiligingssleutel",
|
|
3332
|
+
"two-step.webauthn.description": "Gebruik uw beveiligingssleutel om te verifi\xEBren",
|
|
3333
|
+
"two-step.totp.title": "Gebruik uw Authenticator-app (TOTP)",
|
|
3334
|
+
"two-step.totp.description": "Gebruik een 6-cijferige eenmalige code van uw authenticator-app",
|
|
3335
|
+
"two-step.lookup_secret.title": "Herstelcode",
|
|
3336
|
+
"two-step.lookup_secret.description": "Gebruik een van uw 8-cijferige back-upcodes om te authenticeren",
|
|
2871
3337
|
"identities.messages.1010023": "",
|
|
2872
3338
|
"identities.messages.1070014": "",
|
|
2873
3339
|
"identities.messages.1070015": "",
|
|
@@ -2892,7 +3358,9 @@ var nl_default = {
|
|
|
2892
3358
|
"input.placeholder": "",
|
|
2893
3359
|
"card.header.description.login": "",
|
|
2894
3360
|
"card.header.description.registration": "",
|
|
2895
|
-
"card.header.parts.code": "",
|
|
3361
|
+
"card.header.parts.code": "een code die naar je is verzonden",
|
|
3362
|
+
"card.header.parts.totp": "je authenticator-app",
|
|
3363
|
+
"card.header.parts.lookup_secret": "een backup herstelcode",
|
|
2896
3364
|
"card.header.parts.identifier-first": "",
|
|
2897
3365
|
"card.header.parts.oidc": "",
|
|
2898
3366
|
"card.header.parts.passkey": "",
|
|
@@ -2942,7 +3410,27 @@ var nl_default = {
|
|
|
2942
3410
|
"property.identifier": "",
|
|
2943
3411
|
"property.password": "",
|
|
2944
3412
|
"property.phone": "",
|
|
2945
|
-
"property.username": ""
|
|
3413
|
+
"property.username": "",
|
|
3414
|
+
"consent.title": "Autoriseren {party}",
|
|
3415
|
+
"consent.subtitle": "Een derde partij applicatie wil toegang tot informatie die aan uw account {identifier} is gekoppeld.",
|
|
3416
|
+
"consent.scope.openid.title": "Identiteit",
|
|
3417
|
+
"consent.scope.openid.description": "Stelt de applicatie in staat uw identiteit te verifi\xEBren. Dit is vereist voor authenticatie en een betrouwbare inlogervaring.",
|
|
3418
|
+
"consent.scope.offline_access.title": "Offline toegang",
|
|
3419
|
+
"consent.scope.offline_access.description": "Stelt deze applicatie in staat u ingelogd te houden, zelfs wanneer u deze niet actief gebruikt.",
|
|
3420
|
+
"consent.scope.profile.title": "Profielinformatie",
|
|
3421
|
+
"consent.scope.profile.description": "Geeft toegang tot uw basisprofielgegevens, inclusief uw gebruikersnaam, voornaam en achternaam.",
|
|
3422
|
+
"consent.scope.email.title": "E-mailadres",
|
|
3423
|
+
"consent.scope.email.description": "Haal uw e-mailadres en de verificatiestatus ervan op.",
|
|
3424
|
+
"consent.scope.address.title": "Fysiek adres",
|
|
3425
|
+
"consent.scope.address.description": "Toegang tot uw postadres.",
|
|
3426
|
+
"consent.scope.phone.title": "Telefoonnummer",
|
|
3427
|
+
"consent.scope.phone.description": "Haal uw telefoonnummer en de verificatiestatus ervan op.",
|
|
3428
|
+
"error.action.go-back": "",
|
|
3429
|
+
"error.footer.copy": "",
|
|
3430
|
+
"error.footer.text": "",
|
|
3431
|
+
"error.title.what-can-i-do": "",
|
|
3432
|
+
"error.title.what-happened": "",
|
|
3433
|
+
"error.instructions": ""
|
|
2946
3434
|
};
|
|
2947
3435
|
|
|
2948
3436
|
// src/locales/pl.json
|
|
@@ -2968,9 +3456,9 @@ var pl_default = {
|
|
|
2968
3456
|
"identities.messages.1010005": "Zweryifkuj",
|
|
2969
3457
|
"identities.messages.1010006": "Kod autentykacyjny",
|
|
2970
3458
|
"identities.messages.1010007": "Zapasowe kody odzyskiwania",
|
|
2971
|
-
"identities.messages.1010008": "
|
|
2972
|
-
"identities.messages.1010009": "
|
|
2973
|
-
"identities.messages.1010010": "
|
|
3459
|
+
"identities.messages.1010008": "Kontynuuj z kluczem sprz\u0119towym",
|
|
3460
|
+
"identities.messages.1010009": "Kontynuuj",
|
|
3461
|
+
"identities.messages.1010010": "Kontynuuj",
|
|
2974
3462
|
"identities.messages.1010011": "Kontynuuj za pomoc\u0105 klucza bezpiecze\u0144stwa",
|
|
2975
3463
|
"identities.messages.1010012": "Przygotuj swoje urz\u0105dzenie WebAuthn (np. klucz bezpiecze\u0144stwa, czytnik biometryczny, ...) a nast\u0119pnie kliknij kontynuuj.",
|
|
2976
3464
|
"identities.messages.1010013": "Kontynuuj",
|
|
@@ -3086,8 +3574,16 @@ var pl_default = {
|
|
|
3086
3574
|
"login.registration-label": "Nie posiadasz konta?",
|
|
3087
3575
|
"login.subtitle-oauth2": "Do autentykacji {clientName}",
|
|
3088
3576
|
"login.title": "Zaloguj si\u0119",
|
|
3089
|
-
"login.title-aal2": "
|
|
3577
|
+
"login.title-aal2": "Uwierzytelnianie dwusk\u0142adnikowe",
|
|
3578
|
+
"login.subtitle-aal2": "Wybierz spos\xF3b, aby zako\u0144czy\u0107 uwierzytelnianie dwusk\u0142adnikowe",
|
|
3579
|
+
"login.code.subtitle": "Kod weryfikacyjny zostanie wys\u0142any e-mailem",
|
|
3580
|
+
"login.webauthn.subtitle": "Prosz\u0119 przygotowa\u0107 urz\u0105dzenie WebAuthN",
|
|
3581
|
+
"login.totp.subtitle": "Prosz\u0119 wprowadzi\u0107 kod wygenerowany przez Twoj\u0105 aplikacj\u0119 uwierzytelniaj\u0105c\u0105",
|
|
3582
|
+
"login.lookup_secret.subtitle": "Prosz\u0119 wprowadzi\u0107 jeden z Twoich 8-cyfrowych kod\xF3w odzyskiwania zapasowego",
|
|
3090
3583
|
"login.title-refresh": "Potwierd\u017A \u017Ce to Ty",
|
|
3584
|
+
"login.2fa.go-back": "Co\u015B nie dzia\u0142a?",
|
|
3585
|
+
"login.2fa.go-back.link": "Wr\xF3\u0107",
|
|
3586
|
+
"login.2fa.method.go-back": "Wybierz inn\u0105 metod\u0119",
|
|
3091
3587
|
"logout.accept-button": "Tak",
|
|
3092
3588
|
"logout.reject-button": "Nie",
|
|
3093
3589
|
"logout.title": "Czy chcesz si\u0119 wylogowa\u0107?",
|
|
@@ -3119,8 +3615,12 @@ var pl_default = {
|
|
|
3119
3615
|
"two-step.passkey.title": "Klucz dost\u0119pu (zalecany)",
|
|
3120
3616
|
"two-step.password.description": "Wprowad\u017A has\u0142o powi\u0105zane z twoim kontem",
|
|
3121
3617
|
"two-step.password.title": "Has\u0142o",
|
|
3122
|
-
"two-step.webauthn.description": "U\u017Cyj swojego klucza bezpiecze\u0144stwa do uwierzytelnienia",
|
|
3123
3618
|
"two-step.webauthn.title": "Klucz bezpiecze\u0144stwa",
|
|
3619
|
+
"two-step.webauthn.description": "U\u017Cyj swojego klucza bezpiecze\u0144stwa do uwierzytelnienia",
|
|
3620
|
+
"two-step.totp.title": "U\u017Cyj swojej aplikacji uwierzytelniaj\u0105cej (TOTP)",
|
|
3621
|
+
"two-step.totp.description": "U\u017Cyj 6-cyfrowego jednorazowego kodu z Twojej aplikacji uwierzytelniaj\u0105cej",
|
|
3622
|
+
"two-step.lookup_secret.title": "Kod odzyskiwania zapasowego",
|
|
3623
|
+
"two-step.lookup_secret.description": "U\u017Cyj jednego z Twoich 8-cyfrowych kod\xF3w zapasowych, aby si\u0119 uwierzytelni\u0107",
|
|
3124
3624
|
"identities.messages.1010016": "",
|
|
3125
3625
|
"identities.messages.1010017": "",
|
|
3126
3626
|
"identities.messages.1010018": "",
|
|
@@ -3145,13 +3645,15 @@ var pl_default = {
|
|
|
3145
3645
|
"input.placeholder": "",
|
|
3146
3646
|
"card.header.description.login": "",
|
|
3147
3647
|
"card.header.description.registration": "",
|
|
3148
|
-
"card.header.parts.code": "",
|
|
3149
3648
|
"card.header.parts.identifier-first": "",
|
|
3150
3649
|
"card.header.parts.oidc": "",
|
|
3151
3650
|
"card.header.parts.passkey": "",
|
|
3152
3651
|
"card.header.parts.password.login": "",
|
|
3153
3652
|
"card.header.parts.password.registration": "",
|
|
3154
3653
|
"card.header.parts.webauthn": "",
|
|
3654
|
+
"card.header.parts.code": "kod wys\u0142any do Ciebie",
|
|
3655
|
+
"card.header.parts.totp": "Twoja aplikacja uwierzytelniaj\u0105ca",
|
|
3656
|
+
"card.header.parts.lookup_secret": "kod odzyskiwania kopii zapasowej",
|
|
3155
3657
|
"forms.label.forgot-password": "",
|
|
3156
3658
|
"login.subtitle": "",
|
|
3157
3659
|
"login.subtitle-refresh": "",
|
|
@@ -3195,7 +3697,27 @@ var pl_default = {
|
|
|
3195
3697
|
"property.password": "",
|
|
3196
3698
|
"property.phone": "",
|
|
3197
3699
|
"property.username": "",
|
|
3198
|
-
"property.identifier": ""
|
|
3700
|
+
"property.identifier": "",
|
|
3701
|
+
"consent.title": "Autoryzuj {party}",
|
|
3702
|
+
"consent.subtitle": "Aplikacja trzeciej strony chce uzyska\u0107 dost\u0119p do informacji powi\u0105zanych z Twoim kontem {identifier}.",
|
|
3703
|
+
"consent.scope.openid.title": "To\u017Csamo\u015B\u0107",
|
|
3704
|
+
"consent.scope.openid.description": "Pozwala aplikacji zweryfikowa\u0107 Twoj\u0105 to\u017Csamo\u015B\u0107. Jest to wymagane do uwierzytelniania i zapewnienia zaufanej sesji logowania.",
|
|
3705
|
+
"consent.scope.offline_access.title": "Dost\u0119p offline",
|
|
3706
|
+
"consent.scope.offline_access.description": "Pozwala aplikacji utrzyma\u0107 Twoje logowanie, nawet gdy nie korzystasz z niej aktywnie.",
|
|
3707
|
+
"consent.scope.profile.title": "Informacje profilowe",
|
|
3708
|
+
"consent.scope.profile.description": "Pozwala na dost\u0119p do podstawowych danych profilowych, w tym nazwy u\u017Cytkownika, imienia i nazwiska.",
|
|
3709
|
+
"consent.scope.email.title": "Adres e-mail",
|
|
3710
|
+
"consent.scope.email.description": "Pobierz sw\xF3j adres e-mail oraz status jego weryfikacji.",
|
|
3711
|
+
"consent.scope.address.title": "Adres fizyczny",
|
|
3712
|
+
"consent.scope.address.description": "Dost\u0119p do Twojego adresu pocztowego.",
|
|
3713
|
+
"consent.scope.phone.title": "Numer telefonu",
|
|
3714
|
+
"consent.scope.phone.description": "Pobierz sw\xF3j numer telefonu oraz status jego weryfikacji.",
|
|
3715
|
+
"error.action.go-back": "",
|
|
3716
|
+
"error.footer.copy": "",
|
|
3717
|
+
"error.footer.text": "",
|
|
3718
|
+
"error.title.what-can-i-do": "",
|
|
3719
|
+
"error.title.what-happened": "",
|
|
3720
|
+
"error.instructions": ""
|
|
3199
3721
|
};
|
|
3200
3722
|
|
|
3201
3723
|
// src/locales/pt.json
|
|
@@ -3221,9 +3743,9 @@ var pt_default = {
|
|
|
3221
3743
|
"identities.messages.1010005": "Verificar",
|
|
3222
3744
|
"identities.messages.1010006": "C\xF3digo de Autentica\xE7\xE3o",
|
|
3223
3745
|
"identities.messages.1010007": "C\xF3digo de Recupera\xE7\xE3o de Backup",
|
|
3224
|
-
"identities.messages.1010008": "
|
|
3225
|
-
"identities.messages.1010009": "
|
|
3226
|
-
"identities.messages.1010010": "
|
|
3746
|
+
"identities.messages.1010008": "Continuar com chave de hardware",
|
|
3747
|
+
"identities.messages.1010009": "Continuar",
|
|
3748
|
+
"identities.messages.1010010": "Continuar",
|
|
3227
3749
|
"identities.messages.1010011": "Continuar com a chave de seguran\xE7a",
|
|
3228
3750
|
"identities.messages.1010012": "Prepare o seu dispositivo WebAuthn (por exemplo, chave de seguran\xE7a, scanner biom\xE9trico, ...) e pressione continuar.",
|
|
3229
3751
|
"identities.messages.1010013": "Continuar",
|
|
@@ -3339,8 +3861,16 @@ var pt_default = {
|
|
|
3339
3861
|
"login.registration-label": "N\xE3o tem uma conta?",
|
|
3340
3862
|
"login.subtitle-oauth2": "Para autenticar {clientName}",
|
|
3341
3863
|
"login.title": "Entrar",
|
|
3342
|
-
"login.title-aal2": "Autentica\xE7\xE3o de
|
|
3864
|
+
"login.title-aal2": "Autentica\xE7\xE3o de dois fatores",
|
|
3865
|
+
"login.subtitle-aal2": "Escolha uma forma de completar sua autentica\xE7\xE3o de segundo fator",
|
|
3866
|
+
"login.code.subtitle": "Um c\xF3digo de verifica\xE7\xE3o ser\xE1 enviado por e-mail",
|
|
3867
|
+
"login.webauthn.subtitle": "Por favor, prepare seu dispositivo WebAuthN",
|
|
3868
|
+
"login.totp.subtitle": "Digite o c\xF3digo gerado pelo seu aplicativo autenticador",
|
|
3869
|
+
"login.lookup_secret.subtitle": "Digite um dos seus c\xF3digos de recupera\xE7\xE3o de 8 d\xEDgitos",
|
|
3343
3870
|
"login.title-refresh": "Confirme que \xE9 voc\xEA",
|
|
3871
|
+
"login.2fa.go-back": "Algo n\xE3o est\xE1 funcionando?",
|
|
3872
|
+
"login.2fa.go-back.link": "Voltar",
|
|
3873
|
+
"login.2fa.method.go-back": "Escolher outro m\xE9todo",
|
|
3344
3874
|
"logout.accept-button": "Sim",
|
|
3345
3875
|
"logout.reject-button": "N\xE3o",
|
|
3346
3876
|
"logout.title": "Deseja sair?",
|
|
@@ -3372,8 +3902,12 @@ var pt_default = {
|
|
|
3372
3902
|
"two-step.passkey.title": "Chave de acesso (recomendado)",
|
|
3373
3903
|
"two-step.password.description": "Insira a sua senha associada \xE0 sua conta",
|
|
3374
3904
|
"two-step.password.title": "Senha",
|
|
3375
|
-
"two-step.webauthn.description": "Use sua chave de seguran\xE7a para autenticar",
|
|
3376
3905
|
"two-step.webauthn.title": "Chave de Seguran\xE7a",
|
|
3906
|
+
"two-step.webauthn.description": "Use sua chave de seguran\xE7a para autenticar",
|
|
3907
|
+
"two-step.totp.title": "Use seu aplicativo autenticador (TOTP)",
|
|
3908
|
+
"two-step.totp.description": "Use um c\xF3digo \xFAnico de 6 d\xEDgitos do seu aplicativo autenticador",
|
|
3909
|
+
"two-step.lookup_secret.title": "C\xF3digo de recupera\xE7\xE3o de backup",
|
|
3910
|
+
"two-step.lookup_secret.description": "Use um dos seus c\xF3digos de backup de 8 d\xEDgitos para autenticar",
|
|
3377
3911
|
"identities.messages.1010016": "",
|
|
3378
3912
|
"identities.messages.1010017": "",
|
|
3379
3913
|
"identities.messages.1010018": "",
|
|
@@ -3398,7 +3932,9 @@ var pt_default = {
|
|
|
3398
3932
|
"input.placeholder": "",
|
|
3399
3933
|
"card.header.description.login": "",
|
|
3400
3934
|
"card.header.description.registration": "",
|
|
3401
|
-
"card.header.parts.code": "",
|
|
3935
|
+
"card.header.parts.code": "um c\xF3digo enviado para voc\xEA",
|
|
3936
|
+
"card.header.parts.totp": "seu aplicativo autenticador",
|
|
3937
|
+
"card.header.parts.lookup_secret": "um c\xF3digo de recupera\xE7\xE3o de backup",
|
|
3402
3938
|
"card.header.parts.identifier-first": "",
|
|
3403
3939
|
"card.header.parts.oidc": "",
|
|
3404
3940
|
"card.header.parts.passkey": "",
|
|
@@ -3448,7 +3984,27 @@ var pt_default = {
|
|
|
3448
3984
|
"property.identifier": "",
|
|
3449
3985
|
"property.password": "",
|
|
3450
3986
|
"property.phone": "",
|
|
3451
|
-
"property.username": ""
|
|
3987
|
+
"property.username": "",
|
|
3988
|
+
"consent.title": "Autorizar {party}",
|
|
3989
|
+
"consent.subtitle": "Um aplicativo de terceiros deseja acessar as informa\xE7\xF5es associadas \xE0 sua conta {identifier}.",
|
|
3990
|
+
"consent.scope.openid.title": "Identidade",
|
|
3991
|
+
"consent.scope.openid.description": "Permite que a aplica\xE7\xE3o verifique sua identidade. Isso \xE9 necess\xE1rio para a autentica\xE7\xE3o e uma experi\xEAncia de login confi\xE1vel.",
|
|
3992
|
+
"consent.scope.offline_access.title": "Acesso Offline",
|
|
3993
|
+
"consent.scope.offline_access.description": "Permite que este aplicativo mantenha voc\xEA conectado mesmo quando n\xE3o estiver usando-o ativamente.",
|
|
3994
|
+
"consent.scope.profile.title": "Informa\xE7\xF5es do Perfil",
|
|
3995
|
+
"consent.scope.profile.description": "Permite o acesso aos detalhes b\xE1sicos do seu perfil, incluindo seu nome de usu\xE1rio, primeiro nome e sobrenome.",
|
|
3996
|
+
"consent.scope.email.title": "Endere\xE7o de E-mail",
|
|
3997
|
+
"consent.scope.email.description": "Recupere seu endere\xE7o de e-mail e seu status de verifica\xE7\xE3o.",
|
|
3998
|
+
"consent.scope.address.title": "Endere\xE7o F\xEDsico",
|
|
3999
|
+
"consent.scope.address.description": "Acesse seu endere\xE7o postal.",
|
|
4000
|
+
"consent.scope.phone.title": "N\xFAmero de Telefone",
|
|
4001
|
+
"consent.scope.phone.description": "Recupere seu n\xFAmero de telefone e seu status de verifica\xE7\xE3o.",
|
|
4002
|
+
"error.action.go-back": "",
|
|
4003
|
+
"error.footer.copy": "",
|
|
4004
|
+
"error.footer.text": "",
|
|
4005
|
+
"error.title.what-can-i-do": "",
|
|
4006
|
+
"error.title.what-happened": "",
|
|
4007
|
+
"error.instructions": ""
|
|
3452
4008
|
};
|
|
3453
4009
|
|
|
3454
4010
|
// src/locales/sv.json
|
|
@@ -3474,9 +4030,9 @@ var sv_default = {
|
|
|
3474
4030
|
"identities.messages.1010005": "Verifiera",
|
|
3475
4031
|
"identities.messages.1010006": "Autentiseringskod",
|
|
3476
4032
|
"identities.messages.1010007": "\xC5terst\xE4llningskod f\xF6r backup",
|
|
3477
|
-
"identities.messages.1010008": "
|
|
3478
|
-
"identities.messages.1010009": "
|
|
3479
|
-
"identities.messages.1010010": "
|
|
4033
|
+
"identities.messages.1010008": "Forts\xE4tt med s\xE4kerhetsnyckel",
|
|
4034
|
+
"identities.messages.1010009": "Forts\xE4tt",
|
|
4035
|
+
"identities.messages.1010010": "Forts\xE4tt",
|
|
3480
4036
|
"identities.messages.1010011": "Forts\xE4tt med s\xE4kerhetsnyckel",
|
|
3481
4037
|
"identities.messages.1010012": "F\xF6rbered din WebAuthn-enhet (t.ex. s\xE4kerhetsnyckel, biometriska skanner, ...) och tryck p\xE5 forts\xE4tt.",
|
|
3482
4038
|
"identities.messages.1010013": "Forts\xE4tt",
|
|
@@ -3611,7 +4167,15 @@ var sv_default = {
|
|
|
3611
4167
|
"login.subtitle-oauth2": "Att autentisera {clientName}",
|
|
3612
4168
|
"login.title": "Logga in",
|
|
3613
4169
|
"login.title-aal2": "Tv\xE5faktorsautentisering",
|
|
4170
|
+
"login.subtitle-aal2": "V\xE4lj ett s\xE4tt att slutf\xF6ra din tv\xE5faktorsautentisering",
|
|
4171
|
+
"login.code.subtitle": "En verifieringskod kommer att skickas via e-post",
|
|
4172
|
+
"login.webauthn.subtitle": "F\xF6rbered din WebAuthN-enhet",
|
|
4173
|
+
"login.totp.subtitle": "Ange koden som genererats av din autentiseringsapp",
|
|
4174
|
+
"login.lookup_secret.subtitle": "Ange en av dina 8-siffriga \xE5terst\xE4llningskoder",
|
|
3614
4175
|
"login.title-refresh": "Bekr\xE4fta att det \xE4r du",
|
|
4176
|
+
"login.2fa.go-back": "N\xE5got fungerar inte?",
|
|
4177
|
+
"login.2fa.go-back.link": "G\xE5 tillbaka",
|
|
4178
|
+
"login.2fa.method.go-back": "V\xE4lj en annan metod",
|
|
3615
4179
|
"logout.accept-button": "Ja",
|
|
3616
4180
|
"logout.reject-button": "Nej",
|
|
3617
4181
|
"logout.title": "Vill du logga ut?",
|
|
@@ -3643,15 +4207,21 @@ var sv_default = {
|
|
|
3643
4207
|
"two-step.passkey.title": "Passerkod (rekommenderad)",
|
|
3644
4208
|
"two-step.password.description": "Ange ditt l\xF6senord kopplat till ditt konto",
|
|
3645
4209
|
"two-step.password.title": "L\xF6senord",
|
|
3646
|
-
"two-step.webauthn.description": "Anv\xE4nd din s\xE4kerhetsnyckel f\xF6r att autentisera",
|
|
3647
4210
|
"two-step.webauthn.title": "S\xE4kerhetsnyckel",
|
|
4211
|
+
"two-step.webauthn.description": "Anv\xE4nd din s\xE4kerhetsnyckel f\xF6r att autentisera",
|
|
4212
|
+
"two-step.totp.title": "Anv\xE4nd din autentiseringsapp (TOTP)",
|
|
4213
|
+
"two-step.totp.description": "Anv\xE4nd en 6-siffrig eng\xE5ngskod fr\xE5n din autentiseringsapp",
|
|
4214
|
+
"two-step.lookup_secret.title": "Reserv\xE5terst\xE4llningskod",
|
|
4215
|
+
"two-step.lookup_secret.description": "Anv\xE4nd en av dina 8-siffriga reservkoder f\xF6r att autentisera",
|
|
3648
4216
|
"identities.messages.4000037": "Detta konto finns inte eller har ingen inloggningsmetod konfigurerad.",
|
|
3649
4217
|
"identities.messages.4000038": "Captcha-verifiering misslyckades, f\xF6rs\xF6k igen.",
|
|
3650
4218
|
"identities.messages.1010020": "",
|
|
3651
4219
|
"input.placeholder": "Ange din {placeholder}",
|
|
3652
4220
|
"card.header.description.login": "Logga in med {identifierLabel}",
|
|
3653
4221
|
"card.header.description.registration": "Registrera dig med {identifierLabel}",
|
|
3654
|
-
"card.header.parts.code": "en kod skickad till
|
|
4222
|
+
"card.header.parts.code": "en kod skickad till dig",
|
|
4223
|
+
"card.header.parts.totp": "din autentiseringsapp",
|
|
4224
|
+
"card.header.parts.lookup_secret": "en s\xE4kerhetskopieringskod",
|
|
3655
4225
|
"card.header.parts.identifier-first": "din {identifierLabel}",
|
|
3656
4226
|
"card.header.parts.oidc": "en social leverant\xF6r",
|
|
3657
4227
|
"card.header.parts.passkey": "en Passkey",
|
|
@@ -3701,7 +4271,27 @@ var sv_default = {
|
|
|
3701
4271
|
"property.phone": "telefon",
|
|
3702
4272
|
"property.username": "anv\xE4ndarnamn",
|
|
3703
4273
|
"property.identifier": "identifier",
|
|
3704
|
-
"property.code": "kod"
|
|
4274
|
+
"property.code": "kod",
|
|
4275
|
+
"consent.title": "Auktorisera {party}",
|
|
4276
|
+
"consent.subtitle": "En tredjepartsapplikation vill f\xE5 tillg\xE5ng till information kopplad till ditt konto {identifier}.",
|
|
4277
|
+
"consent.scope.openid.title": "Identitet",
|
|
4278
|
+
"consent.scope.openid.description": "G\xF6r det m\xF6jligt f\xF6r applikationen att verifiera din identitet. Detta kr\xE4vs f\xF6r autentisering och en p\xE5litlig inloggningsupplevelse.",
|
|
4279
|
+
"consent.scope.offline_access.title": "Offline-\xE5tkomst",
|
|
4280
|
+
"consent.scope.offline_access.description": "G\xF6r det m\xF6jligt f\xF6r denna applikation att h\xE5lla dig inloggad \xE4ven n\xE4r du inte aktivt anv\xE4nder den.",
|
|
4281
|
+
"consent.scope.profile.title": "Profilinformation",
|
|
4282
|
+
"consent.scope.profile.description": "Ger tillg\xE5ng till dina grundl\xE4ggande profiluppgifter, inklusive ditt anv\xE4ndarnamn, f\xF6rnamn och efternamn.",
|
|
4283
|
+
"consent.scope.email.title": "E-postadress",
|
|
4284
|
+
"consent.scope.email.description": "H\xE4mta din e-postadress och dess verifieringsstatus.",
|
|
4285
|
+
"consent.scope.address.title": "Fysisk adress",
|
|
4286
|
+
"consent.scope.address.description": "F\xE5 \xE5tkomst till din postadress.",
|
|
4287
|
+
"consent.scope.phone.title": "Telefonnummer",
|
|
4288
|
+
"consent.scope.phone.description": "H\xE4mta ditt telefonnummer och dess verifieringsstatus.",
|
|
4289
|
+
"error.action.go-back": "",
|
|
4290
|
+
"error.footer.copy": "",
|
|
4291
|
+
"error.footer.text": "",
|
|
4292
|
+
"error.title.what-can-i-do": "",
|
|
4293
|
+
"error.title.what-happened": "",
|
|
4294
|
+
"error.instructions": ""
|
|
3705
4295
|
};
|
|
3706
4296
|
|
|
3707
4297
|
// src/locales/index.ts
|
|
@@ -3722,6 +4312,7 @@ exports.OryCardContent = OryCardContent;
|
|
|
3722
4312
|
exports.OryCardFooter = OryCardFooter;
|
|
3723
4313
|
exports.OryCardHeader = OryCardHeader;
|
|
3724
4314
|
exports.OryCardValidationMessages = OryCardValidationMessages;
|
|
4315
|
+
exports.OryConsentCard = OryConsentCard;
|
|
3725
4316
|
exports.OryForm = OryForm;
|
|
3726
4317
|
exports.OryFormGroupDivider = OryFormGroupDivider;
|
|
3727
4318
|
exports.OryFormGroups = OryFormGroups;
|