@ory/elements-react 0.0.0-pr.4a28a8f → 0.0.0-pr.5cdcf132
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 +102 -0
- package/README.md +253 -4
- 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 +42 -11
- package/dist/index.d.ts +42 -11
- package/dist/index.js +663 -310
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +664 -312
- package/dist/index.mjs.map +1 -1
- package/dist/theme/default/index.css +60 -10
- package/dist/theme/default/index.css.map +1 -1
- package/dist/theme/default/index.d.mts +15 -3
- package/dist/theme/default/index.d.ts +15 -3
- package/dist/theme/default/index.js +3616 -2945
- package/dist/theme/default/index.js.map +1 -1
- package/dist/theme/default/index.mjs +3702 -3015
- package/dist/theme/default/index.mjs.map +1 -1
- package/package.json +17 -15
- package/tailwind/generated/default-variables.css +1 -1
- package/tsconfig.json +3 -2
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { UiNodeGroupEnum, isUiNodeInputAttributes, isUiNodeAnchorAttributes, isUiNodeImageAttributes, isUiNodeScriptAttributes, FlowType,
|
|
1
|
+
import { UiNodeGroupEnum, isUiNodeInputAttributes, isUiNodeAnchorAttributes, isUiNodeImageAttributes, isUiNodeScriptAttributes, FlowType, getNodeId, isUiNodeTextAttributes, UiNodeInputAttributesTypeEnum, handleContinueWith, handleFlowError, settingsUrl, isResponseError, loginUrl, recoveryUrl, verificationUrl, registrationUrl, Configuration, FrontendApi, instanceOfContinueWithRecoveryUi } from '@ory/client-fetch';
|
|
2
2
|
import { createContext, useContext, useState, useMemo, useReducer, useRef, useEffect } from 'react';
|
|
3
3
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
4
4
|
import { useIntl, IntlProvider as IntlProvider$1 } from 'react-intl';
|
|
@@ -92,28 +92,10 @@ function OryComponentProvider({
|
|
|
92
92
|
}
|
|
93
93
|
);
|
|
94
94
|
}
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
(node) => node.group === UiNodeGroupEnum.IdentifierFirst && "name" in node.attributes && node.attributes.name === "identifier" && node.attributes.type === "hidden"
|
|
100
|
-
) || flow.flowType === FlowType.Login && flow.flow.requested_aal === "aal2";
|
|
101
|
-
}
|
|
102
|
-
function removeSsoNodes(nodes) {
|
|
103
|
-
return nodes.filter(
|
|
104
|
-
(node) => !(node.group === UiNodeGroupEnum.Oidc || node.group === UiNodeGroupEnum.Saml)
|
|
105
|
-
);
|
|
106
|
-
}
|
|
107
|
-
function getFinalNodes(uniqueGroups, selectedGroup) {
|
|
108
|
-
var _a, _b, _c, _d;
|
|
109
|
-
const selectedNodes = selectedGroup ? (_a = uniqueGroups[selectedGroup]) != null ? _a : [] : [];
|
|
110
|
-
return [
|
|
111
|
-
...(_b = uniqueGroups == null ? void 0 : uniqueGroups.identifier_first) != null ? _b : [],
|
|
112
|
-
...(_c = uniqueGroups == null ? void 0 : uniqueGroups.default) != null ? _c : [],
|
|
113
|
-
...(_d = uniqueGroups == null ? void 0 : uniqueGroups.captcha) != null ? _d : []
|
|
114
|
-
].flat().filter(
|
|
115
|
-
(node) => "type" in node.attributes && node.attributes.type === "hidden"
|
|
116
|
-
).concat(selectedNodes);
|
|
95
|
+
|
|
96
|
+
// src/theme/default/utils/form.ts
|
|
97
|
+
function isGroupImmediateSubmit(group) {
|
|
98
|
+
return group === "code";
|
|
117
99
|
}
|
|
118
100
|
function triggerToWindowCall(trigger) {
|
|
119
101
|
if (!trigger) {
|
|
@@ -187,21 +169,32 @@ function nodesToAuthMethodGroups(nodes, excludeAuthMethods = []) {
|
|
|
187
169
|
].includes(group)
|
|
188
170
|
);
|
|
189
171
|
}
|
|
190
|
-
function useNodesGroups(nodes) {
|
|
172
|
+
function useNodesGroups(nodes, { omit } = {}) {
|
|
191
173
|
const groupSorter = useGroupSorter();
|
|
192
174
|
const groups = useMemo(() => {
|
|
193
|
-
var _a;
|
|
175
|
+
var _a, _b;
|
|
194
176
|
const groups2 = {};
|
|
177
|
+
const groupRetained = {};
|
|
195
178
|
for (const node of nodes) {
|
|
196
|
-
if (node.type === "script") {
|
|
197
|
-
continue;
|
|
198
|
-
}
|
|
199
179
|
const groupNodes = (_a = groups2[node.group]) != null ? _a : [];
|
|
200
180
|
groupNodes.push(node);
|
|
201
181
|
groups2[node.group] = groupNodes;
|
|
182
|
+
if ((omit == null ? void 0 : omit.includes("script")) && isUiNodeScriptAttributes(node.attributes)) {
|
|
183
|
+
continue;
|
|
184
|
+
}
|
|
185
|
+
if ((omit == null ? void 0 : omit.includes("input_hidden")) && isUiNodeInputAttributes(node.attributes) && node.attributes.type === "hidden") {
|
|
186
|
+
continue;
|
|
187
|
+
}
|
|
188
|
+
groupRetained[node.group] = ((_b = groupRetained[node.group]) != null ? _b : 0) + 1;
|
|
202
189
|
}
|
|
203
|
-
|
|
204
|
-
|
|
190
|
+
const finalGroups = {};
|
|
191
|
+
for (const [group, count] of Object.entries(groupRetained)) {
|
|
192
|
+
if (count > 0) {
|
|
193
|
+
finalGroups[group] = groups2[group];
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
return finalGroups;
|
|
197
|
+
}, [nodes, omit]);
|
|
205
198
|
const entries = useMemo(
|
|
206
199
|
() => Object.entries(groups).sort(([a], [b]) => groupSorter(a, b)),
|
|
207
200
|
[groups, groupSorter]
|
|
@@ -214,6 +207,93 @@ function useNodesGroups(nodes) {
|
|
|
214
207
|
var findNode = (nodes, opt) => nodes.find((n) => {
|
|
215
208
|
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
209
|
});
|
|
210
|
+
function useFunctionalNodes(nodes) {
|
|
211
|
+
return nodes.filter(
|
|
212
|
+
({ group }) => [
|
|
213
|
+
UiNodeGroupEnum.Default,
|
|
214
|
+
UiNodeGroupEnum.IdentifierFirst,
|
|
215
|
+
UiNodeGroupEnum.Profile,
|
|
216
|
+
UiNodeGroupEnum.Captcha
|
|
217
|
+
].includes(group)
|
|
218
|
+
);
|
|
219
|
+
}
|
|
220
|
+
function isUiNodeGroupEnum(method) {
|
|
221
|
+
return Object.values(UiNodeGroupEnum).includes(method);
|
|
222
|
+
}
|
|
223
|
+
function isSingleSignOnNode(node) {
|
|
224
|
+
return node.group === UiNodeGroupEnum.Oidc || node.group === UiNodeGroupEnum.Saml;
|
|
225
|
+
}
|
|
226
|
+
function hasSingleSignOnNodes(nodes) {
|
|
227
|
+
return nodes.some(isSingleSignOnNode);
|
|
228
|
+
}
|
|
229
|
+
function withoutSingleSignOnNodes(nodes) {
|
|
230
|
+
return nodes.filter((node) => !isSingleSignOnNode(node));
|
|
231
|
+
}
|
|
232
|
+
function isNodeVisible(node) {
|
|
233
|
+
if (isUiNodeScriptAttributes(node.attributes)) {
|
|
234
|
+
return false;
|
|
235
|
+
} else if (isUiNodeInputAttributes(node.attributes)) {
|
|
236
|
+
if (node.attributes.type === "hidden") {
|
|
237
|
+
return false;
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
return true;
|
|
241
|
+
}
|
|
242
|
+
function useNodeGroupsWithVisibleNodes(nodes) {
|
|
243
|
+
return useMemo(() => {
|
|
244
|
+
var _a, _b;
|
|
245
|
+
const groups = {};
|
|
246
|
+
const groupRetained = {};
|
|
247
|
+
for (const node of nodes) {
|
|
248
|
+
const groupNodes = (_a = groups[node.group]) != null ? _a : [];
|
|
249
|
+
const groupCount = (_b = groupRetained[node.group]) != null ? _b : 0;
|
|
250
|
+
groupNodes.push(node);
|
|
251
|
+
groups[node.group] = groupNodes;
|
|
252
|
+
if (!isNodeVisible(node)) {
|
|
253
|
+
continue;
|
|
254
|
+
}
|
|
255
|
+
groupRetained[node.group] = groupCount + 1;
|
|
256
|
+
}
|
|
257
|
+
const finalGroups = {};
|
|
258
|
+
for (const [group, count] of Object.entries(groupRetained)) {
|
|
259
|
+
if (count > 0) {
|
|
260
|
+
finalGroups[group] = groups[group];
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
return finalGroups;
|
|
264
|
+
}, [nodes]);
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
// src/components/card/two-step/utils.ts
|
|
268
|
+
function isChoosingMethod(flow) {
|
|
269
|
+
return flow.flow.ui.nodes.some(
|
|
270
|
+
(node) => "name" in node.attributes && node.attributes.name === "screen" && "value" in node.attributes && node.attributes.value === "previous"
|
|
271
|
+
) || flow.flow.ui.nodes.some(
|
|
272
|
+
(node) => node.group === UiNodeGroupEnum.IdentifierFirst && "name" in node.attributes && node.attributes.name === "identifier" && node.attributes.type === "hidden"
|
|
273
|
+
) || flow.flowType === FlowType.Login && flow.flow.requested_aal === "aal2";
|
|
274
|
+
}
|
|
275
|
+
function getFinalNodes(uniqueGroups, selectedGroup) {
|
|
276
|
+
var _a, _b, _c, _d;
|
|
277
|
+
const selectedNodes = selectedGroup ? (_a = uniqueGroups[selectedGroup]) != null ? _a : [] : [];
|
|
278
|
+
return [
|
|
279
|
+
...(_b = uniqueGroups == null ? void 0 : uniqueGroups.identifier_first) != null ? _b : [],
|
|
280
|
+
...(_c = uniqueGroups == null ? void 0 : uniqueGroups.default) != null ? _c : [],
|
|
281
|
+
...(_d = uniqueGroups == null ? void 0 : uniqueGroups.captcha) != null ? _d : []
|
|
282
|
+
].flat().filter(
|
|
283
|
+
(node) => "type" in node.attributes && node.attributes.type === "hidden"
|
|
284
|
+
).concat(selectedNodes);
|
|
285
|
+
}
|
|
286
|
+
var handleAfterFormSubmit = (dispatchFormState) => (method) => {
|
|
287
|
+
if (typeof method !== "string" || !isUiNodeGroupEnum(method)) {
|
|
288
|
+
return;
|
|
289
|
+
}
|
|
290
|
+
if (isGroupImmediateSubmit(method)) {
|
|
291
|
+
dispatchFormState({
|
|
292
|
+
type: "action_select_method",
|
|
293
|
+
method
|
|
294
|
+
});
|
|
295
|
+
}
|
|
296
|
+
};
|
|
217
297
|
|
|
218
298
|
// src/context/form-state.ts
|
|
219
299
|
function findMethodWithMessage(nodes) {
|
|
@@ -261,6 +341,8 @@ function parseStateFromFlow(flow) {
|
|
|
261
341
|
break;
|
|
262
342
|
case FlowType.Settings:
|
|
263
343
|
return { current: "settings" };
|
|
344
|
+
case FlowType.OAuth2Consent:
|
|
345
|
+
return { current: "method_active", method: "oauth2_consent" };
|
|
264
346
|
}
|
|
265
347
|
console.warn(
|
|
266
348
|
`[Ory/Elements React] Encountered an unknown form state on ${flow.flowType} flow with ID ${flow.flow.id}`
|
|
@@ -374,6 +456,22 @@ function computeDefaultValues(nodes) {
|
|
|
374
456
|
if (attrs.name === "method" || attrs.type === "submit" || typeof attrs.value === "undefined") {
|
|
375
457
|
return acc;
|
|
376
458
|
}
|
|
459
|
+
if (attrs.name.startsWith("grant_scope")) {
|
|
460
|
+
const scope = attrs.value;
|
|
461
|
+
if (Array.isArray(acc.grant_scope)) {
|
|
462
|
+
return {
|
|
463
|
+
...acc,
|
|
464
|
+
// We want to have all scopes accepted by default, so that the user has to actively uncheck them.
|
|
465
|
+
grant_scope: [...acc.grant_scope, scope]
|
|
466
|
+
};
|
|
467
|
+
} else if (!acc.grant_scope) {
|
|
468
|
+
return {
|
|
469
|
+
...acc,
|
|
470
|
+
grant_scope: [scope]
|
|
471
|
+
};
|
|
472
|
+
}
|
|
473
|
+
return acc;
|
|
474
|
+
}
|
|
377
475
|
return unrollTrait(
|
|
378
476
|
{
|
|
379
477
|
name: attrs.name,
|
|
@@ -461,11 +559,6 @@ function OryCardContent({ children }) {
|
|
|
461
559
|
const { Card } = useComponents();
|
|
462
560
|
return /* @__PURE__ */ jsx(Card.Content, { children });
|
|
463
561
|
}
|
|
464
|
-
|
|
465
|
-
// src/theme/default/utils/form.ts
|
|
466
|
-
function isGroupImmediateSubmit(group) {
|
|
467
|
-
return group === "code";
|
|
468
|
-
}
|
|
469
562
|
function frontendClient(sdkUrl, opts = {}) {
|
|
470
563
|
const config = new Configuration({
|
|
471
564
|
...opts,
|
|
@@ -823,6 +916,19 @@ function useOryFormSubmit(onAfterSubmit) {
|
|
|
823
916
|
});
|
|
824
917
|
break;
|
|
825
918
|
}
|
|
919
|
+
case FlowType.OAuth2Consent: {
|
|
920
|
+
const response = await fetch(flowContainer.flow.ui.action, {
|
|
921
|
+
method: "POST",
|
|
922
|
+
body: JSON.stringify(data),
|
|
923
|
+
headers: {
|
|
924
|
+
"Content-Type": "application/json"
|
|
925
|
+
}
|
|
926
|
+
});
|
|
927
|
+
const oauth2Success = await response.json();
|
|
928
|
+
if (oauth2Success.redirect_to && typeof oauth2Success.redirect_to === "string") {
|
|
929
|
+
onRedirect(oauth2Success.redirect_to);
|
|
930
|
+
}
|
|
931
|
+
}
|
|
826
932
|
}
|
|
827
933
|
if ("password" in data) {
|
|
828
934
|
methods.setValue("password", "");
|
|
@@ -837,7 +943,11 @@ function useOryFormSubmit(onAfterSubmit) {
|
|
|
837
943
|
};
|
|
838
944
|
return onSubmit;
|
|
839
945
|
}
|
|
840
|
-
function OryForm({
|
|
946
|
+
function OryForm({
|
|
947
|
+
children,
|
|
948
|
+
onAfterSubmit,
|
|
949
|
+
"data-testid": dataTestId
|
|
950
|
+
}) {
|
|
841
951
|
const { Form } = useComponents();
|
|
842
952
|
const flowContainer = useOryFlow();
|
|
843
953
|
const methods = useFormContext();
|
|
@@ -846,6 +956,9 @@ function OryForm({ children, onAfterSubmit }) {
|
|
|
846
956
|
const onSubmit = useOryFormSubmit(onAfterSubmit);
|
|
847
957
|
const hasMethods = flowContainer.flow.ui.nodes.some((node) => {
|
|
848
958
|
if (isUiNodeInputAttributes(node.attributes)) {
|
|
959
|
+
if (node.attributes.type === "hidden") {
|
|
960
|
+
return false;
|
|
961
|
+
}
|
|
849
962
|
return node.attributes.name !== "csrf_token";
|
|
850
963
|
} else if (isUiNodeAnchorAttributes(node.attributes)) {
|
|
851
964
|
return true;
|
|
@@ -865,17 +978,15 @@ function OryForm({ children, onAfterSubmit }) {
|
|
|
865
978
|
}),
|
|
866
979
|
type: "error"
|
|
867
980
|
};
|
|
868
|
-
return /* @__PURE__ */
|
|
869
|
-
/* @__PURE__ */ jsx(Message.Root, { children: /* @__PURE__ */ jsx(Message.Content, { message: m }, m.id) }),
|
|
870
|
-
/* @__PURE__ */ jsx(OryCardFooter, {})
|
|
871
|
-
] });
|
|
981
|
+
return /* @__PURE__ */ jsx("div", { "data-testid": dataTestId, children: /* @__PURE__ */ jsx(Message.Root, { children: /* @__PURE__ */ jsx(Message.Content, { message: m }, m.id) }) });
|
|
872
982
|
}
|
|
873
|
-
if (flowContainer.flowType === FlowType.Login && flowContainer.formState.current === "method_active" && flowContainer.formState.method === "code") {
|
|
983
|
+
if ((flowContainer.flowType === FlowType.Login || flowContainer.flowType === FlowType.Registration) && flowContainer.formState.current === "method_active" && flowContainer.formState.method === "code") {
|
|
874
984
|
methods.setValue("method", "code");
|
|
875
985
|
}
|
|
876
986
|
return /* @__PURE__ */ jsx(
|
|
877
987
|
Form.Root,
|
|
878
988
|
{
|
|
989
|
+
"data-testid": dataTestId,
|
|
879
990
|
action: flowContainer.flow.ui.action,
|
|
880
991
|
method: flowContainer.flow.ui.method,
|
|
881
992
|
onSubmit: (e) => void methods.handleSubmit(onSubmit)(e),
|
|
@@ -910,7 +1021,7 @@ var NodeInput = ({
|
|
|
910
1021
|
}) => {
|
|
911
1022
|
var _a;
|
|
912
1023
|
const { Node: Node2 } = useComponents();
|
|
913
|
-
const { setValue } = useFormContext();
|
|
1024
|
+
const { setValue, watch } = useFormContext();
|
|
914
1025
|
const {
|
|
915
1026
|
onloadTrigger,
|
|
916
1027
|
onclickTrigger,
|
|
@@ -923,7 +1034,7 @@ var NodeInput = ({
|
|
|
923
1034
|
const isResendNode = ((_a = node.meta.label) == null ? void 0 : _a.id) === 1070008;
|
|
924
1035
|
const isScreenSelectionNode = "name" in node.attributes && node.attributes.name === "screen";
|
|
925
1036
|
const setFormValue = () => {
|
|
926
|
-
if (attrs.value && !(isResendNode || isScreenSelectionNode)) {
|
|
1037
|
+
if (attrs.value && !(isResendNode || isScreenSelectionNode || node.group === UiNodeGroupEnum.Oauth2Consent)) {
|
|
927
1038
|
setValue(attrs.name, attrs.value);
|
|
928
1039
|
}
|
|
929
1040
|
};
|
|
@@ -948,6 +1059,19 @@ var NodeInput = ({
|
|
|
948
1059
|
};
|
|
949
1060
|
const isSocial = (attrs.name === "provider" || attrs.name === "link") && (node.group === UiNodeGroupEnum.Oidc || node.group === UiNodeGroupEnum.Saml);
|
|
950
1061
|
const isPinCodeInput = attrs.name === "code" && node.group === "code" || attrs.name === "totp_code" && node.group === "totp";
|
|
1062
|
+
const handleScopeChange = (checked) => {
|
|
1063
|
+
const scopes = watch("grant_scope");
|
|
1064
|
+
if (Array.isArray(scopes)) {
|
|
1065
|
+
if (checked) {
|
|
1066
|
+
setValue("grant_scope", Array.from(/* @__PURE__ */ new Set([...scopes, attrs.value])));
|
|
1067
|
+
} else {
|
|
1068
|
+
setValue(
|
|
1069
|
+
"grant_scope",
|
|
1070
|
+
scopes.filter((scope) => scope !== attrs.value)
|
|
1071
|
+
);
|
|
1072
|
+
}
|
|
1073
|
+
}
|
|
1074
|
+
};
|
|
951
1075
|
switch (attributes.type) {
|
|
952
1076
|
case UiNodeInputAttributesTypeEnum.Submit:
|
|
953
1077
|
case UiNodeInputAttributesTypeEnum.Button:
|
|
@@ -957,6 +1081,9 @@ var NodeInput = ({
|
|
|
957
1081
|
if (isResendNode || isScreenSelectionNode) {
|
|
958
1082
|
return null;
|
|
959
1083
|
}
|
|
1084
|
+
if (node.group === "oauth2_consent") {
|
|
1085
|
+
return null;
|
|
1086
|
+
}
|
|
960
1087
|
return /* @__PURE__ */ jsx(
|
|
961
1088
|
Node2.Label,
|
|
962
1089
|
{
|
|
@@ -968,6 +1095,21 @@ var NodeInput = ({
|
|
|
968
1095
|
case UiNodeInputAttributesTypeEnum.DatetimeLocal:
|
|
969
1096
|
throw new Error("Not implemented");
|
|
970
1097
|
case UiNodeInputAttributesTypeEnum.Checkbox:
|
|
1098
|
+
if (node.group === "oauth2_consent" && node.attributes.node_type === "input") {
|
|
1099
|
+
switch (node.attributes.name) {
|
|
1100
|
+
case "grant_scope":
|
|
1101
|
+
return /* @__PURE__ */ jsx(
|
|
1102
|
+
Node2.ConsentScopeCheckbox,
|
|
1103
|
+
{
|
|
1104
|
+
attributes: attrs,
|
|
1105
|
+
node,
|
|
1106
|
+
onCheckedChange: handleScopeChange
|
|
1107
|
+
}
|
|
1108
|
+
);
|
|
1109
|
+
default:
|
|
1110
|
+
return null;
|
|
1111
|
+
}
|
|
1112
|
+
}
|
|
971
1113
|
return /* @__PURE__ */ jsx(
|
|
972
1114
|
Node2.Label,
|
|
973
1115
|
{
|
|
@@ -1036,7 +1178,7 @@ function OryFormOidcButtons() {
|
|
|
1036
1178
|
if (filteredNodes.length === 0) {
|
|
1037
1179
|
return null;
|
|
1038
1180
|
}
|
|
1039
|
-
return /* @__PURE__ */ jsx(Form.OidcRoot, { nodes: filteredNodes, children: filteredNodes.map((node
|
|
1181
|
+
return /* @__PURE__ */ jsx(Form.OidcRoot, { nodes: filteredNodes, children: filteredNodes.map((node) => /* @__PURE__ */ jsx(
|
|
1040
1182
|
Node2.OidcButton,
|
|
1041
1183
|
{
|
|
1042
1184
|
node,
|
|
@@ -1049,34 +1191,119 @@ function OryFormOidcButtons() {
|
|
|
1049
1191
|
setValue("method", node.group);
|
|
1050
1192
|
}
|
|
1051
1193
|
},
|
|
1052
|
-
|
|
1194
|
+
getNodeId(node)
|
|
1053
1195
|
)) });
|
|
1054
1196
|
}
|
|
1055
1197
|
function OryFormSocialButtonsForm() {
|
|
1056
1198
|
const {
|
|
1057
1199
|
flow: { ui }
|
|
1058
1200
|
} = useOryFlow();
|
|
1059
|
-
const filteredNodes = ui.nodes.filter(
|
|
1201
|
+
const filteredNodes = ui.nodes.filter(
|
|
1202
|
+
(node) => node.group === UiNodeGroupEnum.Saml || node.group === UiNodeGroupEnum.Oidc
|
|
1203
|
+
);
|
|
1060
1204
|
if (filteredNodes.length === 0) {
|
|
1061
1205
|
return null;
|
|
1062
1206
|
}
|
|
1063
|
-
return /* @__PURE__ */ jsx(OryFormProvider, { children: /* @__PURE__ */ jsx(OryForm, { children: /* @__PURE__ */ jsx(OryFormOidcButtons, {}) }) });
|
|
1207
|
+
return /* @__PURE__ */ jsx(OryFormProvider, { children: /* @__PURE__ */ jsx(OryForm, { "data-testid": `ory/form/methods/oidc-saml`, children: /* @__PURE__ */ jsx(OryFormOidcButtons, {}) }) });
|
|
1064
1208
|
}
|
|
1065
|
-
function
|
|
1066
|
-
|
|
1209
|
+
function OryTwoStepCardStateMethodActive({
|
|
1210
|
+
formState
|
|
1211
|
+
}) {
|
|
1212
|
+
const { Form } = useComponents();
|
|
1213
|
+
const { flow, flowType, dispatchFormState } = useOryFlow();
|
|
1214
|
+
const { ui } = flow;
|
|
1215
|
+
const nodeSorter = useNodeSorter();
|
|
1216
|
+
const sortNodes = (a, b) => nodeSorter(a, b, { flowType });
|
|
1217
|
+
const groupsToShow = useNodeGroupsWithVisibleNodes(ui.nodes);
|
|
1218
|
+
const finalNodes = getFinalNodes(groupsToShow, formState.method);
|
|
1219
|
+
const selectedMethodIsSocial = formState.method === UiNodeGroupEnum.Oidc || formState.method === UiNodeGroupEnum.Saml;
|
|
1220
|
+
return /* @__PURE__ */ jsxs(OryCard, { children: [
|
|
1221
|
+
/* @__PURE__ */ jsx(OryCardHeader, {}),
|
|
1222
|
+
/* @__PURE__ */ jsxs(OryCardContent, { children: [
|
|
1223
|
+
/* @__PURE__ */ jsx(OryCardValidationMessages, {}),
|
|
1224
|
+
selectedMethodIsSocial && /* @__PURE__ */ jsx(OryFormSocialButtonsForm, {}),
|
|
1225
|
+
/* @__PURE__ */ jsx(
|
|
1226
|
+
OryForm,
|
|
1227
|
+
{
|
|
1228
|
+
"data-testid": `ory/form/methods/local`,
|
|
1229
|
+
onAfterSubmit: handleAfterFormSubmit(dispatchFormState),
|
|
1230
|
+
children: /* @__PURE__ */ jsxs(Form.Group, { children: [
|
|
1231
|
+
ui.nodes.filter(
|
|
1232
|
+
(n) => isUiNodeScriptAttributes(n.attributes) || n.group === UiNodeGroupEnum.Captcha || n.group === UiNodeGroupEnum.Default || n.group === UiNodeGroupEnum.Profile
|
|
1233
|
+
).map((node, k) => /* @__PURE__ */ jsx(Node, { node }, k)),
|
|
1234
|
+
finalNodes.sort(sortNodes).map((node, k) => /* @__PURE__ */ jsx(Node, { node }, k))
|
|
1235
|
+
] })
|
|
1236
|
+
}
|
|
1237
|
+
)
|
|
1238
|
+
] }),
|
|
1239
|
+
/* @__PURE__ */ jsx(OryCardFooter, {})
|
|
1240
|
+
] });
|
|
1067
1241
|
}
|
|
1068
|
-
function
|
|
1069
|
-
var _a, _b, _c, _d;
|
|
1242
|
+
function OryTwoStepCardStateProvideIdentifier() {
|
|
1070
1243
|
const { Form, Card } = useComponents();
|
|
1071
|
-
const {
|
|
1072
|
-
const { ui } = flow;
|
|
1244
|
+
const { flowType, flow, dispatchFormState } = useOryFlow();
|
|
1073
1245
|
const nodeSorter = useNodeSorter();
|
|
1074
1246
|
const sortNodes = (a, b) => nodeSorter(a, b, { flowType });
|
|
1075
|
-
const
|
|
1076
|
-
const
|
|
1247
|
+
const nonSsoNodes = withoutSingleSignOnNodes(flow.ui.nodes).sort(sortNodes);
|
|
1248
|
+
const hasSso = flow.ui.nodes.filter(isNodeVisible).some(
|
|
1249
|
+
(node) => node.group === UiNodeGroupEnum.Oidc || node.group === UiNodeGroupEnum.Saml
|
|
1250
|
+
);
|
|
1251
|
+
const showSsoDivider = hasSso && nonSsoNodes.some(isNodeVisible);
|
|
1252
|
+
return /* @__PURE__ */ jsxs(OryCard, { children: [
|
|
1253
|
+
/* @__PURE__ */ jsx(OryCardHeader, {}),
|
|
1254
|
+
/* @__PURE__ */ jsxs(OryCardContent, { children: [
|
|
1255
|
+
/* @__PURE__ */ jsx(OryCardValidationMessages, {}),
|
|
1256
|
+
/* @__PURE__ */ jsx(OryFormSocialButtonsForm, {}),
|
|
1257
|
+
/* @__PURE__ */ jsx(
|
|
1258
|
+
OryForm,
|
|
1259
|
+
{
|
|
1260
|
+
"data-testid": `ory/form/methods/local`,
|
|
1261
|
+
onAfterSubmit: handleAfterFormSubmit(dispatchFormState),
|
|
1262
|
+
children: /* @__PURE__ */ jsxs(Form.Group, { children: [
|
|
1263
|
+
showSsoDivider && /* @__PURE__ */ jsx(Card.Divider, {}),
|
|
1264
|
+
nonSsoNodes.map((node, k) => /* @__PURE__ */ jsx(Node, { node }, k))
|
|
1265
|
+
] })
|
|
1266
|
+
}
|
|
1267
|
+
)
|
|
1268
|
+
] }),
|
|
1269
|
+
/* @__PURE__ */ jsx(OryCardFooter, {})
|
|
1270
|
+
] });
|
|
1271
|
+
}
|
|
1272
|
+
function AuthMethodList({
|
|
1273
|
+
options,
|
|
1274
|
+
setSelectedGroup
|
|
1275
|
+
}) {
|
|
1276
|
+
const { Card } = useComponents();
|
|
1277
|
+
const { setValue, getValues } = useFormContext();
|
|
1278
|
+
if (Object.entries(options).length === 0) {
|
|
1279
|
+
return null;
|
|
1280
|
+
}
|
|
1281
|
+
const handleClick = (group, options2) => {
|
|
1282
|
+
var _a, _b, _c, _d;
|
|
1283
|
+
if (isGroupImmediateSubmit(group)) {
|
|
1284
|
+
if (group === "code" && !getValues("identifier") && ((_b = (_a = options2 == null ? void 0 : options2.title) == null ? void 0 : _a.values) == null ? void 0 : _b.address)) {
|
|
1285
|
+
setValue("identifier", (_d = (_c = options2 == null ? void 0 : options2.title) == null ? void 0 : _c.values) == null ? void 0 : _d.address);
|
|
1286
|
+
}
|
|
1287
|
+
setValue("method", group);
|
|
1288
|
+
} else {
|
|
1289
|
+
setSelectedGroup(group);
|
|
1290
|
+
}
|
|
1291
|
+
};
|
|
1292
|
+
return /* @__PURE__ */ jsx(Card.AuthMethodListContainer, { children: Object.entries(options).map(([group, options2]) => /* @__PURE__ */ jsx(
|
|
1293
|
+
Card.AuthMethodListItem,
|
|
1294
|
+
{
|
|
1295
|
+
group,
|
|
1296
|
+
title: options2.title,
|
|
1297
|
+
onClick: () => handleClick(group, options2)
|
|
1298
|
+
},
|
|
1299
|
+
group
|
|
1300
|
+
)) });
|
|
1301
|
+
}
|
|
1302
|
+
function toAuthMethodPickerOptions(visibleGroups) {
|
|
1303
|
+
return Object.fromEntries(
|
|
1077
1304
|
Object.values(UiNodeGroupEnum).filter((group) => {
|
|
1078
|
-
var
|
|
1079
|
-
return (
|
|
1305
|
+
var _a;
|
|
1306
|
+
return (_a = visibleGroups[group]) == null ? void 0 : _a.length;
|
|
1080
1307
|
}).filter(
|
|
1081
1308
|
(group) => ![
|
|
1082
1309
|
UiNodeGroupEnum.Oidc,
|
|
@@ -1088,7 +1315,19 @@ function OryTwoStepCard() {
|
|
|
1088
1315
|
].includes(group)
|
|
1089
1316
|
).map((g) => [g, {}])
|
|
1090
1317
|
);
|
|
1091
|
-
|
|
1318
|
+
}
|
|
1319
|
+
function OryTwoStepCardStateSelectMethod() {
|
|
1320
|
+
var _a, _b, _c, _d;
|
|
1321
|
+
const { Form, Card, Message } = useComponents();
|
|
1322
|
+
const { flow, flowType, dispatchFormState } = useOryFlow();
|
|
1323
|
+
const { ui } = flow;
|
|
1324
|
+
const intl = useIntl();
|
|
1325
|
+
const nodeSorter = useNodeSorter();
|
|
1326
|
+
const sortNodes = (a, b) => nodeSorter(a, b, { flowType });
|
|
1327
|
+
const visibleGroups = useNodeGroupsWithVisibleNodes(ui.nodes);
|
|
1328
|
+
const authMethodBlocks = toAuthMethodPickerOptions(visibleGroups);
|
|
1329
|
+
const authMethodAdditionalNodes = useFunctionalNodes(ui.nodes);
|
|
1330
|
+
if (UiNodeGroupEnum.Code in authMethodBlocks) {
|
|
1092
1331
|
let identifier = (_b = (_a = findNode(ui.nodes, {
|
|
1093
1332
|
group: "identifier_first",
|
|
1094
1333
|
node_type: "input",
|
|
@@ -1100,7 +1339,7 @@ function OryTwoStepCard() {
|
|
|
1100
1339
|
name: "address"
|
|
1101
1340
|
})) == null ? void 0 : _c.attributes) == null ? void 0 : _d.value);
|
|
1102
1341
|
if (identifier) {
|
|
1103
|
-
|
|
1342
|
+
authMethodBlocks[UiNodeGroupEnum.Code] = {
|
|
1104
1343
|
title: {
|
|
1105
1344
|
id: "identities.messages.1010023",
|
|
1106
1345
|
values: { address: identifier }
|
|
@@ -1108,89 +1347,58 @@ function OryTwoStepCard() {
|
|
|
1108
1347
|
};
|
|
1109
1348
|
}
|
|
1110
1349
|
}
|
|
1111
|
-
const
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
}
|
|
1117
|
-
|
|
1118
|
-
dispatchFormState({
|
|
1119
|
-
type: "action_select_method",
|
|
1120
|
-
method
|
|
1121
|
-
});
|
|
1122
|
-
}
|
|
1350
|
+
const noMethods = {
|
|
1351
|
+
id: 5000002,
|
|
1352
|
+
text: intl.formatMessage({
|
|
1353
|
+
id: `identities.messages.5000002`,
|
|
1354
|
+
defaultMessage: "No authentication methods are available for this request. Please contact the site or app owner."
|
|
1355
|
+
}),
|
|
1356
|
+
type: "error"
|
|
1123
1357
|
};
|
|
1124
|
-
const hasSso = ui.nodes.some(
|
|
1125
|
-
(node) => node.group === UiNodeGroupEnum.Oidc || node.group === UiNodeGroupEnum.Saml
|
|
1126
|
-
);
|
|
1127
|
-
const showSso = !(formState.current === "method_active" && !(formState.method === UiNodeGroupEnum.Oidc || formState.method === UiNodeGroupEnum.Saml));
|
|
1128
|
-
const showSsoDivider = hasSso && nonSsoNodes.filter((n) => {
|
|
1129
|
-
if (isUiNodeInputAttributes(n.attributes)) {
|
|
1130
|
-
return n.attributes.type !== UiNodeInputAttributesTypeEnum.Hidden;
|
|
1131
|
-
} else if (isUiNodeScriptAttributes(n.attributes)) {
|
|
1132
|
-
return false;
|
|
1133
|
-
}
|
|
1134
|
-
return true;
|
|
1135
|
-
}).length > 0;
|
|
1136
1358
|
return /* @__PURE__ */ jsxs(OryCard, { children: [
|
|
1137
1359
|
/* @__PURE__ */ jsx(OryCardHeader, {}),
|
|
1138
1360
|
/* @__PURE__ */ jsxs(OryCardContent, { children: [
|
|
1139
1361
|
/* @__PURE__ */ jsx(OryCardValidationMessages, {}),
|
|
1140
|
-
|
|
1141
|
-
/* @__PURE__ */
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
formState.current === "select_method" && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
1362
|
+
/* @__PURE__ */ jsx(OryFormSocialButtonsForm, {}),
|
|
1363
|
+
Object.entries(authMethodBlocks).length > 0 ? /* @__PURE__ */ jsx(
|
|
1364
|
+
OryForm,
|
|
1365
|
+
{
|
|
1366
|
+
"data-testid": `ory/form/methods/local`,
|
|
1367
|
+
onAfterSubmit: handleAfterFormSubmit(dispatchFormState),
|
|
1368
|
+
children: /* @__PURE__ */ jsxs(Form.Group, { children: [
|
|
1148
1369
|
/* @__PURE__ */ jsx(Card.Divider, {}),
|
|
1149
1370
|
/* @__PURE__ */ jsx(
|
|
1150
1371
|
AuthMethodList,
|
|
1151
1372
|
{
|
|
1152
|
-
options,
|
|
1373
|
+
options: authMethodBlocks,
|
|
1153
1374
|
setSelectedGroup: (group) => dispatchFormState({
|
|
1154
1375
|
type: "action_select_method",
|
|
1155
1376
|
method: group
|
|
1156
1377
|
})
|
|
1157
1378
|
}
|
|
1158
1379
|
),
|
|
1159
|
-
|
|
1160
|
-
] }),
|
|
1161
|
-
formState.current === "method_active" && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
1162
|
-
ui.nodes.filter((n) => n.type === "script").map((node, k) => /* @__PURE__ */ jsx(Node, { node }, k)),
|
|
1163
|
-
finalNodes.sort(sortNodes).map((node, k) => /* @__PURE__ */ jsx(Node, { node }, k))
|
|
1380
|
+
authMethodAdditionalNodes.sort(sortNodes).map((node, k) => /* @__PURE__ */ jsx(Node, { node }, k))
|
|
1164
1381
|
] })
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1382
|
+
}
|
|
1383
|
+
) : !hasSingleSignOnNodes(ui.nodes) && /* @__PURE__ */ jsx("div", { "data-testid": `ory/form/methods/local`, children: /* @__PURE__ */ jsx(Message.Root, { children: /* @__PURE__ */ jsx(Message.Content, { message: noMethods }, noMethods.id) }) })
|
|
1384
|
+
] }),
|
|
1385
|
+
/* @__PURE__ */ jsx(OryCardFooter, {})
|
|
1169
1386
|
] });
|
|
1170
1387
|
}
|
|
1171
|
-
function
|
|
1172
|
-
const {
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
}
|
|
1180
|
-
|
|
1181
|
-
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
};
|
|
1185
|
-
return /* @__PURE__ */ jsx(Card.AuthMethodListContainer, { children: Object.entries(options).map(([group, options2]) => /* @__PURE__ */ jsx(
|
|
1186
|
-
Card.AuthMethodListItem,
|
|
1187
|
-
{
|
|
1188
|
-
group,
|
|
1189
|
-
title: options2.title,
|
|
1190
|
-
onClick: () => handleClick(group, options2)
|
|
1191
|
-
},
|
|
1192
|
-
group
|
|
1193
|
-
)) });
|
|
1388
|
+
function OryTwoStepCard() {
|
|
1389
|
+
const { formState } = useOryFlow();
|
|
1390
|
+
switch (formState.current) {
|
|
1391
|
+
case "provide_identifier":
|
|
1392
|
+
return /* @__PURE__ */ jsx(OryTwoStepCardStateProvideIdentifier, {});
|
|
1393
|
+
case "select_method":
|
|
1394
|
+
return /* @__PURE__ */ jsx(OryTwoStepCardStateSelectMethod, {});
|
|
1395
|
+
case "method_active":
|
|
1396
|
+
return /* @__PURE__ */ jsx(OryTwoStepCardStateMethodActive, { formState });
|
|
1397
|
+
}
|
|
1398
|
+
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
1399
|
+
"unknown form state: ",
|
|
1400
|
+
formState.current
|
|
1401
|
+
] });
|
|
1194
1402
|
}
|
|
1195
1403
|
function OryFormGroups({ groups }) {
|
|
1196
1404
|
const {
|
|
@@ -1200,8 +1408,8 @@ function OryFormGroups({ groups }) {
|
|
|
1200
1408
|
const { flowType } = useOryFlow();
|
|
1201
1409
|
const { Form } = useComponents();
|
|
1202
1410
|
const nodes = ui.nodes.filter((node) => groups.indexOf(node.group) > -1).sort((a, b) => nodeSorter(a, b, { flowType }));
|
|
1203
|
-
return /* @__PURE__ */ jsx(Form.Group, { children: nodes.map((node
|
|
1204
|
-
return /* @__PURE__ */ jsx(Node, { node },
|
|
1411
|
+
return /* @__PURE__ */ jsx(Form.Group, { children: nodes.map((node) => {
|
|
1412
|
+
return /* @__PURE__ */ jsx(Node, { node }, getNodeId(node));
|
|
1205
1413
|
}) });
|
|
1206
1414
|
}
|
|
1207
1415
|
function OryFormSection({
|
|
@@ -1230,6 +1438,19 @@ function OryFormSectionInner({
|
|
|
1230
1438
|
}
|
|
1231
1439
|
);
|
|
1232
1440
|
}
|
|
1441
|
+
function OryConsentCard() {
|
|
1442
|
+
const { Form, Card } = useComponents();
|
|
1443
|
+
const flow = useOryFlow();
|
|
1444
|
+
return /* @__PURE__ */ jsxs(OryCard, { children: [
|
|
1445
|
+
/* @__PURE__ */ jsx(OryCardHeader, {}),
|
|
1446
|
+
/* @__PURE__ */ jsx(OryCardContent, { children: /* @__PURE__ */ jsxs(OryForm, { children: [
|
|
1447
|
+
/* @__PURE__ */ jsx(Card.Divider, {}),
|
|
1448
|
+
/* @__PURE__ */ jsx(Form.Group, { children: flow.flow.ui.nodes.map((node) => /* @__PURE__ */ jsx(Node, { node }, getNodeId(node))) }),
|
|
1449
|
+
/* @__PURE__ */ jsx(Card.Divider, {}),
|
|
1450
|
+
/* @__PURE__ */ jsx(OryCardFooter, {})
|
|
1451
|
+
] }) })
|
|
1452
|
+
] });
|
|
1453
|
+
}
|
|
1233
1454
|
function OryFormGroupDivider() {
|
|
1234
1455
|
const { Card } = useComponents();
|
|
1235
1456
|
const {
|
|
@@ -1583,16 +1804,19 @@ function SettingsSectionContent({ group, nodes }) {
|
|
|
1583
1804
|
const { Card } = useComponents();
|
|
1584
1805
|
const intl = useIntl();
|
|
1585
1806
|
const { flow } = useOryFlow();
|
|
1586
|
-
const
|
|
1807
|
+
const groupedNodes = useNodesGroups(flow.ui.nodes, {
|
|
1808
|
+
// Script nodes are already handled by the parent component.
|
|
1809
|
+
omit: ["script"]
|
|
1810
|
+
});
|
|
1587
1811
|
if (group === UiNodeGroupEnum.Totp) {
|
|
1588
1812
|
return /* @__PURE__ */ jsxs(
|
|
1589
1813
|
OryFormSection,
|
|
1590
1814
|
{
|
|
1591
|
-
nodes:
|
|
1815
|
+
nodes: groupedNodes.groups.totp,
|
|
1592
1816
|
"data-testid": "ory/screen/settings/group/totp",
|
|
1593
1817
|
children: [
|
|
1594
|
-
/* @__PURE__ */ jsx(OrySettingsTotp, { nodes: (_a =
|
|
1595
|
-
(_b =
|
|
1818
|
+
/* @__PURE__ */ jsx(OrySettingsTotp, { nodes: (_a = groupedNodes.groups.totp) != null ? _a : [] }),
|
|
1819
|
+
(_b = groupedNodes.groups.default) == null ? void 0 : _b.map((node) => /* @__PURE__ */ jsx(Node, { node }, getNodeId(node)))
|
|
1596
1820
|
]
|
|
1597
1821
|
}
|
|
1598
1822
|
);
|
|
@@ -1601,16 +1825,16 @@ function SettingsSectionContent({ group, nodes }) {
|
|
|
1601
1825
|
return /* @__PURE__ */ jsxs(
|
|
1602
1826
|
OryFormSection,
|
|
1603
1827
|
{
|
|
1604
|
-
nodes:
|
|
1828
|
+
nodes: groupedNodes.groups.lookup_secret,
|
|
1605
1829
|
"data-testid": "ory/screen/settings/group/lookup_secret",
|
|
1606
1830
|
children: [
|
|
1607
1831
|
/* @__PURE__ */ jsx(
|
|
1608
1832
|
OrySettingsRecoveryCodes,
|
|
1609
1833
|
{
|
|
1610
|
-
nodes: (_c =
|
|
1834
|
+
nodes: (_c = groupedNodes.groups.lookup_secret) != null ? _c : []
|
|
1611
1835
|
}
|
|
1612
1836
|
),
|
|
1613
|
-
(_d =
|
|
1837
|
+
(_d = groupedNodes.groups.default) == null ? void 0 : _d.map((node) => /* @__PURE__ */ jsx(Node, { node }, getNodeId(node)))
|
|
1614
1838
|
]
|
|
1615
1839
|
}
|
|
1616
1840
|
);
|
|
@@ -1619,11 +1843,11 @@ function SettingsSectionContent({ group, nodes }) {
|
|
|
1619
1843
|
return /* @__PURE__ */ jsxs(
|
|
1620
1844
|
OryFormSection,
|
|
1621
1845
|
{
|
|
1622
|
-
nodes:
|
|
1846
|
+
nodes: groupedNodes.groups.oidc,
|
|
1623
1847
|
"data-testid": "ory/screen/settings/group/oidc",
|
|
1624
1848
|
children: [
|
|
1625
|
-
/* @__PURE__ */ jsx(OrySettingsOidc, { nodes: (_e =
|
|
1626
|
-
(_f =
|
|
1849
|
+
/* @__PURE__ */ jsx(OrySettingsOidc, { nodes: (_e = groupedNodes.groups.oidc) != null ? _e : [] }),
|
|
1850
|
+
(_f = groupedNodes.groups.default) == null ? void 0 : _f.map((node) => /* @__PURE__ */ jsx(Node, { node }, getNodeId(node)))
|
|
1627
1851
|
]
|
|
1628
1852
|
}
|
|
1629
1853
|
);
|
|
@@ -1632,11 +1856,11 @@ function SettingsSectionContent({ group, nodes }) {
|
|
|
1632
1856
|
return /* @__PURE__ */ jsxs(
|
|
1633
1857
|
OryFormSection,
|
|
1634
1858
|
{
|
|
1635
|
-
nodes:
|
|
1859
|
+
nodes: groupedNodes.groups.webauthn,
|
|
1636
1860
|
"data-testid": "ory/screen/settings/group/webauthn",
|
|
1637
1861
|
children: [
|
|
1638
|
-
/* @__PURE__ */ jsx(OrySettingsWebauthn, { nodes: (_g =
|
|
1639
|
-
(_h =
|
|
1862
|
+
/* @__PURE__ */ jsx(OrySettingsWebauthn, { nodes: (_g = groupedNodes.groups.webauthn) != null ? _g : [] }),
|
|
1863
|
+
(_h = groupedNodes.groups.default) == null ? void 0 : _h.map((node) => /* @__PURE__ */ jsx(Node, { node }, getNodeId(node)))
|
|
1640
1864
|
]
|
|
1641
1865
|
}
|
|
1642
1866
|
);
|
|
@@ -1645,11 +1869,11 @@ function SettingsSectionContent({ group, nodes }) {
|
|
|
1645
1869
|
return /* @__PURE__ */ jsxs(
|
|
1646
1870
|
OryFormSection,
|
|
1647
1871
|
{
|
|
1648
|
-
nodes:
|
|
1872
|
+
nodes: groupedNodes.groups.passkey,
|
|
1649
1873
|
"data-testid": "ory/screen/settings/group/passkey",
|
|
1650
1874
|
children: [
|
|
1651
|
-
/* @__PURE__ */ jsx(OrySettingsPasskey, { nodes: (_i =
|
|
1652
|
-
(_j =
|
|
1875
|
+
/* @__PURE__ */ jsx(OrySettingsPasskey, { nodes: (_i = groupedNodes.groups.passkey) != null ? _i : [] }),
|
|
1876
|
+
(_j = groupedNodes.groups.default) == null ? void 0 : _j.map((node) => /* @__PURE__ */ jsx(Node, { node }, getNodeId(node)))
|
|
1653
1877
|
]
|
|
1654
1878
|
}
|
|
1655
1879
|
);
|
|
@@ -1670,30 +1894,30 @@ function SettingsSectionContent({ group, nodes }) {
|
|
|
1670
1894
|
id: `settings.${group}.description`
|
|
1671
1895
|
}),
|
|
1672
1896
|
children: [
|
|
1673
|
-
(_k =
|
|
1897
|
+
(_k = groupedNodes.groups.default) == null ? void 0 : _k.map((node) => /* @__PURE__ */ jsx(Node, { node }, getNodeId(node))),
|
|
1674
1898
|
nodes.filter(
|
|
1675
1899
|
(node) => "type" in node.attributes && node.attributes.type !== "submit"
|
|
1676
|
-
).map((node
|
|
1900
|
+
).map((node) => /* @__PURE__ */ jsx(Node, { node }, getNodeId(node)))
|
|
1677
1901
|
]
|
|
1678
1902
|
}
|
|
1679
1903
|
),
|
|
1680
1904
|
/* @__PURE__ */ jsx(Card.SettingsSectionFooter, { children: nodes.filter(
|
|
1681
1905
|
(node) => "type" in node.attributes && node.attributes.type === "submit"
|
|
1682
|
-
).map((node
|
|
1906
|
+
).map((node) => /* @__PURE__ */ jsx(Node, { node }, getNodeId(node))) })
|
|
1683
1907
|
]
|
|
1684
1908
|
}
|
|
1685
1909
|
);
|
|
1686
1910
|
}
|
|
1687
|
-
var
|
|
1688
|
-
(node) =>
|
|
1911
|
+
var onlyScriptNodes = (nodes) => nodes.filter(
|
|
1912
|
+
(node) => isUiNodeScriptAttributes(node.attributes) && node.attributes.id === "webauthn_script"
|
|
1689
1913
|
);
|
|
1690
1914
|
function OrySettingsCard() {
|
|
1691
1915
|
const { flow } = useOryFlow();
|
|
1692
|
-
const uniqueGroups = useNodesGroups(flow.ui.nodes);
|
|
1693
|
-
const
|
|
1916
|
+
const uniqueGroups = useNodesGroups(flow.ui.nodes, { omit: ["script"] });
|
|
1917
|
+
const scriptNodes = onlyScriptNodes(flow.ui.nodes);
|
|
1694
1918
|
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
1695
1919
|
/* @__PURE__ */ jsx(OryCardValidationMessages, {}),
|
|
1696
|
-
|
|
1920
|
+
scriptNodes.map((n) => /* @__PURE__ */ jsx(Node, { node: n }, getNodeId(n))),
|
|
1697
1921
|
uniqueGroups.entries.map(([group, nodes]) => {
|
|
1698
1922
|
if (group === UiNodeGroupEnum.Default) {
|
|
1699
1923
|
return null;
|
|
@@ -2000,9 +2224,11 @@ var en_default = {
|
|
|
2000
2224
|
"card.header.parts.oidc": "a social provider",
|
|
2001
2225
|
"card.header.parts.password.registration": "your {identifierLabel} and a password",
|
|
2002
2226
|
"card.header.parts.password.login": "your {identifierLabel} and password",
|
|
2003
|
-
"card.header.parts.code": "a code sent to
|
|
2227
|
+
"card.header.parts.code": "a code sent to you",
|
|
2004
2228
|
"card.header.parts.passkey": "a Passkey",
|
|
2005
2229
|
"card.header.parts.webauthn": "a security key",
|
|
2230
|
+
"card.header.parts.totp": "your authenticator app",
|
|
2231
|
+
"card.header.parts.lookup_secret": "a backup recovery code",
|
|
2006
2232
|
"card.header.parts.identifier-first": "your {identifierLabel}",
|
|
2007
2233
|
"card.header.description.login": "Sign in with {identifierLabel}",
|
|
2008
2234
|
"card.header.description.registration": "Sign up with {identifierLabel}",
|
|
@@ -2029,6 +2255,20 @@ var en_default = {
|
|
|
2029
2255
|
"property.username": "username",
|
|
2030
2256
|
"property.identifier": "identifier",
|
|
2031
2257
|
"property.code": "code",
|
|
2258
|
+
"consent.title": "Authorize {party}",
|
|
2259
|
+
"consent.subtitle": "A third party application wants to access information associated with your account {identifier}.",
|
|
2260
|
+
"consent.scope.openid.title": "Identity",
|
|
2261
|
+
"consent.scope.openid.description": "Allows the application to verify your identity. This is required for authentication and a trusted login experience.",
|
|
2262
|
+
"consent.scope.offline_access.title": "Offline Access",
|
|
2263
|
+
"consent.scope.offline_access.description": "Allows this application to keep you signed in even when you're not actively using it.",
|
|
2264
|
+
"consent.scope.profile.title": "Profile Information",
|
|
2265
|
+
"consent.scope.profile.description": "Allows access to your basic profile details, including your username, first name, and last name.",
|
|
2266
|
+
"consent.scope.email.title": "Email Address",
|
|
2267
|
+
"consent.scope.email.description": "Retrieve your email address and its verification status.",
|
|
2268
|
+
"consent.scope.address.title": "Physical Address",
|
|
2269
|
+
"consent.scope.address.description": "Access your postal address.",
|
|
2270
|
+
"consent.scope.phone.title": "Phone Number",
|
|
2271
|
+
"consent.scope.phone.description": "Retrieve your phone number and its verification status.",
|
|
2032
2272
|
"error.title.what-happened": "What happened?",
|
|
2033
2273
|
"error.title.what-can-i-do": "What can I do?",
|
|
2034
2274
|
"error.instructions": "Please try again in a few minutes or contact the website operator.",
|
|
@@ -2205,7 +2445,7 @@ var de_default = {
|
|
|
2205
2445
|
"two-step.code.description": "Ein Best\xE4tigungscode wird an Ihre E-Mail gesendet.",
|
|
2206
2446
|
"two-step.code.title": "E-Mail-Code",
|
|
2207
2447
|
"two-step.passkey.description": "Verwenden Sie die Fingerabdruck- oder Gesichtserkennung Ihres Ger\xE4ts",
|
|
2208
|
-
"two-step.passkey.title": "
|
|
2448
|
+
"two-step.passkey.title": "Passkey (empfohlen)",
|
|
2209
2449
|
"two-step.password.description": "Geben Sie Ihr Passwort ein, das mit Ihrem Konto verkn\xFCpft ist",
|
|
2210
2450
|
"two-step.password.title": "Passwort",
|
|
2211
2451
|
"two-step.webauthn.title": "Sicherheitsschl\xFCssel",
|
|
@@ -2221,28 +2461,30 @@ var de_default = {
|
|
|
2221
2461
|
"login.cancel-label": "Nicht das richtige Konto?",
|
|
2222
2462
|
"identities.messages.1010023": "Code an {address} senden",
|
|
2223
2463
|
"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.",
|
|
2224
|
-
"identities.messages.1010017": "",
|
|
2225
|
-
"identities.messages.1010018": "",
|
|
2226
|
-
"identities.messages.1010019": "",
|
|
2464
|
+
"identities.messages.1010017": "Anmelden und verbinden",
|
|
2465
|
+
"identities.messages.1010018": "Mit {provider} best\xE4tigen",
|
|
2466
|
+
"identities.messages.1010019": "Code senden um fortzufahren",
|
|
2227
2467
|
"identities.messages.1010020": "",
|
|
2228
|
-
"identities.messages.1010021": "",
|
|
2229
|
-
"identities.messages.1010022": "",
|
|
2230
|
-
"identities.messages.1040007": "",
|
|
2231
|
-
"identities.messages.1040008": "",
|
|
2232
|
-
"identities.messages.1040009": "",
|
|
2468
|
+
"identities.messages.1010021": "Mit Paskey anmelden",
|
|
2469
|
+
"identities.messages.1010022": "Mit Passwort anmelden",
|
|
2470
|
+
"identities.messages.1040007": "Mit Passkey registrieren",
|
|
2471
|
+
"identities.messages.1040008": "Zur\xFCck",
|
|
2472
|
+
"identities.messages.1040009": "Bitte w\xE4hlen Sie eine Authentifizierungsmethode, um fortzufahren.",
|
|
2233
2473
|
"identities.messages.1050019": "Passkey hinzuf\xFCgen",
|
|
2234
|
-
"identities.messages.1050020": "",
|
|
2235
|
-
"identities.messages.4000037": "",
|
|
2236
|
-
"identities.messages.4010009": "",
|
|
2237
|
-
"identities.messages.4010010": "",
|
|
2474
|
+
"identities.messages.1050020": 'Passkey "{display_name}" entfernen',
|
|
2475
|
+
"identities.messages.4000037": "F\xFCr die eingegebenen Daten existiert kein Account",
|
|
2476
|
+
"identities.messages.4010009": "Die Authentifizierungsmethode stimmt nicht mit der vorherigen Authentifizierungsmethode \xFCberein. Bitte versuchen Sie es erneut.",
|
|
2477
|
+
"identities.messages.4010010": "Die eingegebene Adresse stimmt nicht mit der Adresse \xFCberein, die Sie bei der Registrierung angegeben haben. Bitte versuchen Sie es erneut.",
|
|
2238
2478
|
"input.placeholder": "{placeholder} eingeben",
|
|
2239
|
-
"card.header.parts.code": "
|
|
2479
|
+
"card.header.parts.code": "ein an Sie gesendeter Code",
|
|
2240
2480
|
"card.header.parts.identifier-first": "Ihr {identifierLabel}",
|
|
2241
2481
|
"card.header.parts.oidc": "ein sozialer Anbieter",
|
|
2242
2482
|
"card.header.parts.passkey": "ein Passkey",
|
|
2243
2483
|
"card.header.parts.password.login": "Ihrer {identifierLabel} und Ihrem Passwort",
|
|
2244
2484
|
"card.header.parts.password.registration": "Ihrer {identifierLabel} und einem Passwort",
|
|
2245
2485
|
"card.header.parts.webauthn": "ein Sicherheitsschl\xFCssel",
|
|
2486
|
+
"card.header.parts.totp": "deine Authentifikator-App",
|
|
2487
|
+
"card.header.parts.lookup_secret": "ein Backup-Wiederherstellungscode",
|
|
2246
2488
|
"recovery.subtitle": "Geben Sie die mit Ihrem Konto verkn\xFCpfte E-Mail-Adresse ein, um einen einmaligen Zugangscode zu erhalten",
|
|
2247
2489
|
"verification.subtitle": "Geben Sie die mit Ihrem Konto verkn\xFCpfte E-Mail-Adresse ein, um es zu best\xE4tigen",
|
|
2248
2490
|
"card.header.description.login": "Melden Sie sich mit {identifierLabel} an",
|
|
@@ -2300,6 +2542,20 @@ var de_default = {
|
|
|
2300
2542
|
"property.phone": "Telefon",
|
|
2301
2543
|
"property.code": "Code",
|
|
2302
2544
|
"property.username": "Benutzername",
|
|
2545
|
+
"consent.title": "Autorisieren {party}",
|
|
2546
|
+
"consent.subtitle": "Eine Drittanbieteranwendung m\xF6chte auf Informationen zugreifen, die mit Ihrem Konto {identifier} verkn\xFCpft sind.",
|
|
2547
|
+
"consent.scope.openid.title": "Identit\xE4t",
|
|
2548
|
+
"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.",
|
|
2549
|
+
"consent.scope.offline_access.title": "Offline-Zugriff",
|
|
2550
|
+
"consent.scope.offline_access.description": "Erm\xF6glicht dieser Anwendung, Sie angemeldet zu lassen, auch wenn Sie sie nicht aktiv nutzen.",
|
|
2551
|
+
"consent.scope.profile.title": "Profilinformationen",
|
|
2552
|
+
"consent.scope.profile.description": "Erm\xF6glicht den Zugriff auf Ihre grundlegenden Profildetails, einschlie\xDFlich Ihres Benutzernamens, Vornamens und Nachnamens.",
|
|
2553
|
+
"consent.scope.email.title": "E-Mail-Adresse",
|
|
2554
|
+
"consent.scope.email.description": "Erm\xF6glicht den Abruf Ihrer E-Mail-Adresse und deren \xDCberpr\xFCfungsstatus.",
|
|
2555
|
+
"consent.scope.address.title": "Physische Adresse",
|
|
2556
|
+
"consent.scope.address.description": "Erm\xF6glicht den Zugriff auf Ihre Postanschrift.",
|
|
2557
|
+
"consent.scope.phone.title": "Telefonnummer",
|
|
2558
|
+
"consent.scope.phone.description": "Erm\xF6glicht den Abruf Ihrer Telefonnummer und deren \xDCberpr\xFCfungsstatus.",
|
|
2303
2559
|
"error.title.what-happened": "Was ist passiert?",
|
|
2304
2560
|
"error.footer.copy": "Kopieren",
|
|
2305
2561
|
"error.footer.text": "Bitte f\xFCgen Sie bei der Meldung dieses Fehlers die folgenden Informationen hinzu:",
|
|
@@ -2321,7 +2577,6 @@ var es_default = {
|
|
|
2321
2577
|
"error.back-button": "Regresar",
|
|
2322
2578
|
"error.description": "Ocurri\xF3 un error con el siguiente mensaje:",
|
|
2323
2579
|
"error.support-email-link": "Si el problema persiste, por favor contacte a <a>{contactSupportEmail}</a>",
|
|
2324
|
-
"error.title": "",
|
|
2325
2580
|
"error.title-internal-server-error": "Error Interno del Servidor",
|
|
2326
2581
|
"error.title-not-found": "404 - P\xE1gina no encontrada",
|
|
2327
2582
|
"identities.messages.1010001": "Iniciar sesi\xF3n",
|
|
@@ -2496,45 +2751,6 @@ var es_default = {
|
|
|
2496
2751
|
"two-step.totp.description": "Utilice un c\xF3digo de un solo uso de 6 d\xEDgitos de su aplicaci\xF3n de autenticaci\xF3n",
|
|
2497
2752
|
"two-step.lookup_secret.title": "C\xF3digo de recuperaci\xF3n de respaldo",
|
|
2498
2753
|
"two-step.lookup_secret.description": "Utilice uno de sus c\xF3digos de respaldo de 8 d\xEDgitos para autenticarse",
|
|
2499
|
-
"identities.messages.1010016": "",
|
|
2500
|
-
"identities.messages.1010017": "",
|
|
2501
|
-
"identities.messages.1010018": "",
|
|
2502
|
-
"identities.messages.1010019": "",
|
|
2503
|
-
"identities.messages.1010020": "",
|
|
2504
|
-
"identities.messages.1010021": "",
|
|
2505
|
-
"identities.messages.1010022": "",
|
|
2506
|
-
"identities.messages.1010023": "",
|
|
2507
|
-
"identities.messages.1040007": "",
|
|
2508
|
-
"identities.messages.1040008": "",
|
|
2509
|
-
"identities.messages.1040009": "",
|
|
2510
|
-
"identities.messages.1050019": "",
|
|
2511
|
-
"identities.messages.1050020": "",
|
|
2512
|
-
"identities.messages.1070014": "",
|
|
2513
|
-
"identities.messages.1070015": "",
|
|
2514
|
-
"identities.messages.4000037": "",
|
|
2515
|
-
"identities.messages.4000038": "",
|
|
2516
|
-
"identities.messages.4010009": "",
|
|
2517
|
-
"identities.messages.4010010": "",
|
|
2518
|
-
"login.cancel-button": "",
|
|
2519
|
-
"login.cancel-label": "",
|
|
2520
|
-
"input.placeholder": "",
|
|
2521
|
-
"card.header.description.login": "",
|
|
2522
|
-
"card.header.description.registration": "",
|
|
2523
|
-
"card.header.parts.code": "",
|
|
2524
|
-
"card.header.parts.identifier-first": "",
|
|
2525
|
-
"card.header.parts.oidc": "",
|
|
2526
|
-
"card.header.parts.passkey": "",
|
|
2527
|
-
"card.header.parts.password.login": "",
|
|
2528
|
-
"card.header.parts.password.registration": "",
|
|
2529
|
-
"card.header.parts.webauthn": "",
|
|
2530
|
-
"forms.label.forgot-password": "",
|
|
2531
|
-
"login.subtitle": "",
|
|
2532
|
-
"login.subtitle-refresh": "",
|
|
2533
|
-
"misc.or": "",
|
|
2534
|
-
"recovery.subtitle": "",
|
|
2535
|
-
"registration.subtitle": "",
|
|
2536
|
-
"settings.subtitle": "",
|
|
2537
|
-
"verification.subtitle": "",
|
|
2538
2754
|
"settings.totp.info.linked": "Actualmente tienes una aplicaci\xF3n de autenticaci\xF3n conectada.",
|
|
2539
2755
|
"settings.totp.info.not-linked": "Para habilitar, escanea el c\xF3digo QR con tu autenticador e ingresa el c\xF3digo.",
|
|
2540
2756
|
"settings.totp.title": "Aplicaci\xF3n Autenticadora",
|
|
@@ -2552,31 +2768,87 @@ var es_default = {
|
|
|
2552
2768
|
"settings.profile.title": "Configuraci\xF3n de Perfil",
|
|
2553
2769
|
"settings.webauthn.description": "Administra la configuraci\xF3n de tu token de hardware",
|
|
2554
2770
|
"settings.webauthn.title": "Gestionar Tokens de Hardware",
|
|
2555
|
-
"
|
|
2556
|
-
"
|
|
2557
|
-
"
|
|
2558
|
-
"
|
|
2559
|
-
"
|
|
2560
|
-
"
|
|
2561
|
-
"
|
|
2562
|
-
"
|
|
2563
|
-
"
|
|
2564
|
-
"
|
|
2565
|
-
"
|
|
2566
|
-
"
|
|
2567
|
-
"
|
|
2568
|
-
"
|
|
2569
|
-
"
|
|
2570
|
-
"
|
|
2571
|
-
"
|
|
2572
|
-
"
|
|
2573
|
-
"
|
|
2574
|
-
"
|
|
2575
|
-
"
|
|
2576
|
-
"
|
|
2577
|
-
"
|
|
2578
|
-
"
|
|
2579
|
-
"
|
|
2771
|
+
"consent.title": "Autorizar {party}",
|
|
2772
|
+
"consent.subtitle": "Una aplicaci\xF3n de terceros quiere acceder a la informaci\xF3n asociada a su cuenta {identifier}.",
|
|
2773
|
+
"consent.scope.openid.title": "Identidad",
|
|
2774
|
+
"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.",
|
|
2775
|
+
"consent.scope.offline_access.title": "Acceso sin conexi\xF3n",
|
|
2776
|
+
"consent.scope.offline_access.description": "Permite que esta aplicaci\xF3n le mantenga conectado incluso cuando no la est\xE9 utilizando activamente.",
|
|
2777
|
+
"consent.scope.profile.title": "Informaci\xF3n del perfil",
|
|
2778
|
+
"consent.scope.profile.description": "Permite el acceso a los detalles b\xE1sicos de su perfil, incluyendo su nombre de usuario, nombre y apellido.",
|
|
2779
|
+
"consent.scope.email.title": "Direcci\xF3n de correo electr\xF3nico",
|
|
2780
|
+
"consent.scope.email.description": "Recupere su direcci\xF3n de correo electr\xF3nico y su estado de verificaci\xF3n.",
|
|
2781
|
+
"consent.scope.address.title": "Direcci\xF3n f\xEDsica",
|
|
2782
|
+
"consent.scope.address.description": "Acceda a su direcci\xF3n postal.",
|
|
2783
|
+
"consent.scope.phone.title": "N\xFAmero de tel\xE9fono",
|
|
2784
|
+
"consent.scope.phone.description": "Recupere su n\xFAmero de tel\xE9fono y su estado de verificaci\xF3n.",
|
|
2785
|
+
"error.title": "Ocurri\xF3 un error",
|
|
2786
|
+
"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.',
|
|
2787
|
+
"identities.messages.1010017": "Iniciar sesi\xF3n y vincular",
|
|
2788
|
+
"identities.messages.1010018": "Confirmar con {provider}",
|
|
2789
|
+
"identities.messages.1010019": "Solicitar c\xF3digo para continuar",
|
|
2790
|
+
"identities.messages.1010021": "Iniciar sesi\xF3n con clave de acceso",
|
|
2791
|
+
"identities.messages.1010022": "Iniciar sesi\xF3n con contrase\xF1a",
|
|
2792
|
+
"identities.messages.1010023": "Enviar c\xF3digo a {address}",
|
|
2793
|
+
"identities.messages.1040007": "Registrarse con clave de acceso",
|
|
2794
|
+
"identities.messages.1040008": "Atr\xE1s",
|
|
2795
|
+
"identities.messages.1040009": "Por favor, elige una credencial para autenticarte.",
|
|
2796
|
+
"identities.messages.1050019": "Agregar clave de acceso",
|
|
2797
|
+
"identities.messages.1070014": "Iniciar sesi\xF3n y vincular credencial",
|
|
2798
|
+
"identities.messages.1070015": "Por favor, completa el desaf\xEDo captcha para continuar.",
|
|
2799
|
+
"identities.messages.4000037": "Esta cuenta no existe o no tiene ning\xFAn m\xE9todo de inicio de sesi\xF3n configurado.",
|
|
2800
|
+
"identities.messages.4000038": "Fall\xF3 la verificaci\xF3n de Captcha, por favor intenta de nuevo.",
|
|
2801
|
+
"identities.messages.4010009": "Las credenciales vinculadas no coinciden.",
|
|
2802
|
+
"identities.messages.4010010": "La direcci\xF3n que ingresaste no coincide con ninguna direcci\xF3n conocida en la cuenta actual.",
|
|
2803
|
+
"login.cancel-button": "Cancelar",
|
|
2804
|
+
"login.cancel-label": "\xBFNo es la cuenta correcta?",
|
|
2805
|
+
"login.subtitle": "Iniciar sesi\xF3n con {parts}",
|
|
2806
|
+
"login.subtitle-refresh": "Confirma tu identidad con {parts}",
|
|
2807
|
+
"recovery.subtitle": "Ingresa la direcci\xF3n de correo electr\xF3nico asociada con tu cuenta para recibir un c\xF3digo de acceso \xFAnico",
|
|
2808
|
+
"registration.subtitle": "Registrarse con {parts}",
|
|
2809
|
+
"settings.subtitle": "Actualiza la configuraci\xF3n de tu cuenta",
|
|
2810
|
+
"settings.title-lookup-secret": "Administrar c\xF3digos de recuperaci\xF3n de respaldo 2FA",
|
|
2811
|
+
"settings.title-navigation": "Configuraci\xF3n de la cuenta",
|
|
2812
|
+
"settings.title-oidc": "Inicio de sesi\xF3n social",
|
|
2813
|
+
"settings.title-password": "Cambiar contrase\xF1a",
|
|
2814
|
+
"settings.title-profile": "Configuraci\xF3n del perfil",
|
|
2815
|
+
"settings.title-totp": "Administrar la aplicaci\xF3n de autenticaci\xF3n 2FA TOTP",
|
|
2816
|
+
"settings.title-webauthn": "Administrar tokens de hardware",
|
|
2817
|
+
"settings.title-passkey": "Administrar claves de acceso",
|
|
2818
|
+
"verification.subtitle": "Ingresa la direcci\xF3n de correo electr\xF3nico asociada con tu cuenta para verificarla",
|
|
2819
|
+
"input.placeholder": "Ingresa tu {placeholder}",
|
|
2820
|
+
"card.header.parts.oidc": "un proveedor social",
|
|
2821
|
+
"card.header.parts.password.registration": "tu {identifierLabel} y una contrase\xF1a",
|
|
2822
|
+
"card.header.parts.password.login": "tu {identifierLabel} y contrase\xF1a",
|
|
2823
|
+
"card.header.parts.code": "un c\xF3digo enviado a tu correo electr\xF3nico",
|
|
2824
|
+
"card.header.parts.passkey": "una clave de acceso",
|
|
2825
|
+
"card.header.parts.webauthn": "una clave de seguridad",
|
|
2826
|
+
"card.header.parts.totp": "su aplicaci\xF3n de autenticaci\xF3n",
|
|
2827
|
+
"card.header.parts.lookup_secret": "un c\xF3digo de recuperaci\xF3n de copia de seguridad",
|
|
2828
|
+
"card.header.parts.identifier-first": "tu {identifierLabel}",
|
|
2829
|
+
"card.header.description.login": "Iniciar sesi\xF3n con {identifierLabel}",
|
|
2830
|
+
"card.header.description.registration": "Registrarse con {identifierLabel}",
|
|
2831
|
+
"misc.or": "o",
|
|
2832
|
+
"forms.label.forgot-password": "\xBFOlvidaste tu contrase\xF1a?",
|
|
2833
|
+
"settings.oidc.info": "Las cuentas conectadas de estos proveedores se pueden utilizar para iniciar sesi\xF3n en tu cuenta",
|
|
2834
|
+
"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",
|
|
2835
|
+
"settings.passkey.info": "Administra la configuraci\xF3n de tus claves de acceso",
|
|
2836
|
+
"card.footer.select-another-method": "Seleccionar otro m\xE9todo",
|
|
2837
|
+
"account-linking.title": "Vincular cuenta",
|
|
2838
|
+
"property.password": "contrase\xF1a",
|
|
2839
|
+
"property.email": "correo electr\xF3nico",
|
|
2840
|
+
"property.phone": "tel\xE9fono",
|
|
2841
|
+
"property.username": "nombre de usuario",
|
|
2842
|
+
"property.identifier": "identificador",
|
|
2843
|
+
"property.code": "c\xF3digo",
|
|
2844
|
+
"error.title.what-happened": "\xBFQu\xE9 pas\xF3?",
|
|
2845
|
+
"error.title.what-can-i-do": "\xBFQu\xE9 puedo hacer?",
|
|
2846
|
+
"error.instructions": "Por favor, int\xE9ntalo de nuevo en unos minutos o contacta al operador del sitio web.",
|
|
2847
|
+
"error.footer.text": "Al informar este error, incluye la siguiente informaci\xF3n:",
|
|
2848
|
+
"error.footer.copy": "Copiar",
|
|
2849
|
+
"error.action.go-back": "Regresar",
|
|
2850
|
+
"identities.messages.1010020": "",
|
|
2851
|
+
"identities.messages.1050020": 'Eliminar passkey "{display_name}"'
|
|
2580
2852
|
};
|
|
2581
2853
|
|
|
2582
2854
|
// src/locales/fr.json
|
|
@@ -2767,87 +3039,103 @@ var fr_default = {
|
|
|
2767
3039
|
"two-step.totp.description": "Utilisez un code \xE0 usage unique \xE0 6 chiffres provenant de votre application d'authentification",
|
|
2768
3040
|
"two-step.lookup_secret.title": "Code de r\xE9cup\xE9ration de secours",
|
|
2769
3041
|
"two-step.lookup_secret.description": "Utilisez l'un de vos codes de secours \xE0 8 chiffres pour vous authentifier",
|
|
2770
|
-
"identities.messages.1010023": "",
|
|
2771
|
-
"identities.messages.1070015": "",
|
|
2772
|
-
"identities.messages.4000038": "",
|
|
2773
|
-
"login.cancel-button": "",
|
|
2774
|
-
"login.cancel-label": "",
|
|
2775
|
-
"identities.messages.1010016": "",
|
|
2776
|
-
"identities.messages.1010017": "",
|
|
2777
|
-
"identities.messages.1010018": "",
|
|
2778
|
-
"identities.messages.1010019": "",
|
|
2779
|
-
"identities.messages.1010020": "",
|
|
2780
|
-
"identities.messages.1010021": "",
|
|
2781
|
-
"identities.messages.1010022": "",
|
|
2782
|
-
"identities.messages.1040007": "",
|
|
2783
|
-
"identities.messages.1040008": "",
|
|
2784
|
-
"identities.messages.1040009": "",
|
|
2785
|
-
"identities.messages.1050019": "",
|
|
2786
|
-
"identities.messages.1050020": "",
|
|
2787
|
-
"identities.messages.1070014": "",
|
|
2788
|
-
"identities.messages.4000037": "",
|
|
2789
|
-
"identities.messages.4010009": "",
|
|
2790
|
-
"identities.messages.4010010": "",
|
|
2791
|
-
"input.placeholder": "",
|
|
2792
|
-
"card.header.description.login": "",
|
|
2793
|
-
"card.header.description.registration": "",
|
|
2794
|
-
"card.header.parts.code": "",
|
|
2795
|
-
"card.header.parts.identifier-first": "",
|
|
2796
|
-
"card.header.parts.oidc": "",
|
|
2797
|
-
"card.header.parts.passkey": "",
|
|
2798
|
-
"card.header.parts.password.login": "",
|
|
2799
|
-
"card.header.parts.password.registration": "",
|
|
2800
|
-
"card.header.parts.webauthn": "",
|
|
2801
|
-
"forms.label.forgot-password": "",
|
|
2802
|
-
"login.subtitle": "",
|
|
2803
|
-
"login.subtitle-refresh": "",
|
|
2804
|
-
"misc.or": "",
|
|
2805
|
-
"recovery.subtitle": "",
|
|
2806
|
-
"registration.subtitle": "",
|
|
2807
|
-
"settings.subtitle": "",
|
|
2808
|
-
"verification.subtitle": "",
|
|
2809
3042
|
"settings.totp.info.linked": "Vous avez actuellement une application d'authentification connect\xE9e.",
|
|
2810
3043
|
"settings.totp.info.not-linked": "Pour activer, scannez le QR code avec votre authentificateur et entrez le code.",
|
|
2811
3044
|
"settings.totp.title": "Application d'authentification",
|
|
2812
3045
|
"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.",
|
|
2813
|
-
"
|
|
2814
|
-
"
|
|
2815
|
-
"
|
|
2816
|
-
"
|
|
2817
|
-
"
|
|
2818
|
-
"
|
|
2819
|
-
"
|
|
2820
|
-
"
|
|
2821
|
-
"
|
|
2822
|
-
"
|
|
2823
|
-
"
|
|
2824
|
-
"
|
|
2825
|
-
"
|
|
2826
|
-
"
|
|
2827
|
-
"
|
|
2828
|
-
"
|
|
2829
|
-
"
|
|
2830
|
-
"
|
|
2831
|
-
"
|
|
2832
|
-
"
|
|
2833
|
-
"
|
|
2834
|
-
"
|
|
2835
|
-
"
|
|
2836
|
-
"
|
|
2837
|
-
"
|
|
2838
|
-
"
|
|
2839
|
-
"
|
|
2840
|
-
"
|
|
2841
|
-
"
|
|
2842
|
-
"
|
|
2843
|
-
"
|
|
2844
|
-
"
|
|
2845
|
-
"
|
|
2846
|
-
"
|
|
2847
|
-
"
|
|
2848
|
-
"
|
|
2849
|
-
"
|
|
2850
|
-
"
|
|
3046
|
+
"consent.title": "Autoriser {party}",
|
|
3047
|
+
"consent.subtitle": "Une application tierce souhaite acc\xE9der aux informations associ\xE9es \xE0 votre compte {identifier}.",
|
|
3048
|
+
"consent.scope.openid.title": "Identit\xE9",
|
|
3049
|
+
"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.",
|
|
3050
|
+
"consent.scope.offline_access.title": "Acc\xE8s hors ligne",
|
|
3051
|
+
"consent.scope.offline_access.description": "Permet \xE0 cette application de vous maintenir connect\xE9 m\xEAme lorsque vous ne l'utilisez pas activement.",
|
|
3052
|
+
"consent.scope.profile.title": "Informations de profil",
|
|
3053
|
+
"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.",
|
|
3054
|
+
"consent.scope.email.title": "Adresse e-mail",
|
|
3055
|
+
"consent.scope.email.description": "R\xE9cup\xE8re votre adresse e-mail et son statut de v\xE9rification.",
|
|
3056
|
+
"consent.scope.address.title": "Adresse physique",
|
|
3057
|
+
"consent.scope.address.description": "Acc\xE8de \xE0 votre adresse postale.",
|
|
3058
|
+
"consent.scope.phone.title": "Num\xE9ro de t\xE9l\xE9phone",
|
|
3059
|
+
"consent.scope.phone.description": "R\xE9cup\xE8re votre num\xE9ro de t\xE9l\xE9phone et son statut de v\xE9rification.",
|
|
3060
|
+
"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.",
|
|
3061
|
+
"identities.messages.1010017": "Se connecter et lier",
|
|
3062
|
+
"identities.messages.1010018": "Confirmer avec {provider}",
|
|
3063
|
+
"identities.messages.1010019": "Demander un code pour continuer",
|
|
3064
|
+
"identities.messages.1010021": "Se connecter avec une cl\xE9 d'acc\xE8s",
|
|
3065
|
+
"identities.messages.1010022": "Se connecter avec un mot de passe",
|
|
3066
|
+
"identities.messages.1010023": "Envoyer le code \xE0 {address}",
|
|
3067
|
+
"identities.messages.1040007": "S'inscrire avec une cl\xE9 d'acc\xE8s",
|
|
3068
|
+
"identities.messages.1040008": "Retour",
|
|
3069
|
+
"identities.messages.1040009": "Veuillez choisir une identification pour vous authentifier.",
|
|
3070
|
+
"identities.messages.1050019": "Ajouter une cl\xE9 d'acc\xE8s",
|
|
3071
|
+
"identities.messages.1050020": "Supprimer la cl\xE9 d'acc\xE8s \xAB {display_name} \xBB",
|
|
3072
|
+
"identities.messages.1070014": "Se connecter et lier l'identification",
|
|
3073
|
+
"identities.messages.1070015": "Veuillez compl\xE9ter le d\xE9fi captcha pour continuer.",
|
|
3074
|
+
"identities.messages.4000037": "Ce compte n'existe pas ou n'a aucune m\xE9thode de connexion configur\xE9e.",
|
|
3075
|
+
"identities.messages.4000038": "La v\xE9rification Captcha a \xE9chou\xE9, veuillez r\xE9essayer.",
|
|
3076
|
+
"identities.messages.4010009": "Les identifications li\xE9es ne correspondent pas.",
|
|
3077
|
+
"identities.messages.4010010": "L'adresse que vous avez saisie ne correspond \xE0 aucune adresse connue dans le compte actuel.",
|
|
3078
|
+
"login.cancel-button": "Annuler",
|
|
3079
|
+
"login.cancel-label": "Ce n'est pas le bon compte\xA0?",
|
|
3080
|
+
"login.subtitle": "Se connecter avec {parts}",
|
|
3081
|
+
"login.subtitle-refresh": "Confirmez votre identit\xE9 avec {parts}",
|
|
3082
|
+
"recovery.subtitle": "Saisissez l'adresse e-mail associ\xE9e \xE0 votre compte pour recevoir un code d'acc\xE8s unique",
|
|
3083
|
+
"registration.subtitle": "S'inscrire avec {parts}",
|
|
3084
|
+
"settings.subtitle": "Mettre \xE0 jour les param\xE8tres de votre compte",
|
|
3085
|
+
"settings.title-lookup-secret": "G\xE9rer les codes de r\xE9cup\xE9ration de sauvegarde 2FA",
|
|
3086
|
+
"settings.title-navigation": "Param\xE8tres du compte",
|
|
3087
|
+
"settings.title-oidc": "Connexion via les r\xE9seaux sociaux",
|
|
3088
|
+
"settings.title-password": "Changer le mot de passe",
|
|
3089
|
+
"settings.title-profile": "Param\xE8tres du profil",
|
|
3090
|
+
"settings.title-totp": "G\xE9rer l'application d'authentification 2FA TOTP",
|
|
3091
|
+
"settings.title-webauthn": "G\xE9rer les jetons mat\xE9riels",
|
|
3092
|
+
"settings.title-passkey": "G\xE9rer les cl\xE9s d'acc\xE8s",
|
|
3093
|
+
"settings.navigation.title": "Param\xE8tres du compte",
|
|
3094
|
+
"settings.password.title": "Changer le mot de passe",
|
|
3095
|
+
"settings.password.description": "Modifier votre mot de passe",
|
|
3096
|
+
"settings.profile.title": "Param\xE8tres du profil",
|
|
3097
|
+
"settings.profile.description": "Mettre \xE0 jour les informations de votre profil",
|
|
3098
|
+
"settings.webauthn.title": "G\xE9rer les jetons mat\xE9riels",
|
|
3099
|
+
"settings.webauthn.description": "G\xE9rer les param\xE8tres de votre jeton mat\xE9riel",
|
|
3100
|
+
"verification.subtitle": "Saisissez l'adresse e-mail associ\xE9e \xE0 votre compte pour la v\xE9rifier",
|
|
3101
|
+
"input.placeholder": "Saisissez votre {placeholder}",
|
|
3102
|
+
"card.header.parts.oidc": "un fournisseur de r\xE9seaux sociaux",
|
|
3103
|
+
"card.header.parts.password.registration": "votre {identifierLabel} et un mot de passe",
|
|
3104
|
+
"card.header.parts.password.login": "votre {identifierLabel} et votre mot de passe",
|
|
3105
|
+
"card.header.parts.passkey": "une cl\xE9 d'acc\xE8s",
|
|
3106
|
+
"card.header.parts.webauthn": "une cl\xE9 de s\xE9curit\xE9",
|
|
3107
|
+
"card.header.parts.identifier-first": "votre {identifierLabel}",
|
|
3108
|
+
"card.header.parts.code": "un code qui vous a \xE9t\xE9 envoy\xE9",
|
|
3109
|
+
"card.header.parts.totp": "votre application d'authentification",
|
|
3110
|
+
"card.header.parts.lookup_secret": "un code de r\xE9cup\xE9ration de secours",
|
|
3111
|
+
"card.header.description.login": "Se connecter avec {identifierLabel}",
|
|
3112
|
+
"card.header.description.registration": "S'inscrire avec {identifierLabel}",
|
|
3113
|
+
"misc.or": "ou",
|
|
3114
|
+
"forms.label.forgot-password": "Mot de passe oubli\xE9?",
|
|
3115
|
+
"settings.lookup_secret.title": "Codes de r\xE9cup\xE9ration de sauvegarde (second facteur)",
|
|
3116
|
+
"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.",
|
|
3117
|
+
"settings.oidc.title": "Comptes connect\xE9s",
|
|
3118
|
+
"settings.oidc.description": "Connectez un fournisseur de connexion sociale \xE0 votre compte.",
|
|
3119
|
+
"settings.oidc.info": "Les comptes connect\xE9s de ces fournisseurs peuvent \xEAtre utilis\xE9s pour vous connecter \xE0 votre compte",
|
|
3120
|
+
"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",
|
|
3121
|
+
"settings.passkey.title": "G\xE9rer les cl\xE9s d'acc\xE8s",
|
|
3122
|
+
"settings.passkey.description": "G\xE9rer les param\xE8tres de vos cl\xE9s d'acc\xE8s",
|
|
3123
|
+
"settings.passkey.info": "G\xE9rer les param\xE8tres de vos cl\xE9s d'acc\xE8s",
|
|
3124
|
+
"card.footer.select-another-method": "S\xE9lectionner une autre m\xE9thode",
|
|
3125
|
+
"account-linking.title": "Lier le compte",
|
|
3126
|
+
"property.password": "mot de passe",
|
|
3127
|
+
"property.email": "e-mail",
|
|
3128
|
+
"property.phone": "t\xE9l\xE9phone",
|
|
3129
|
+
"property.username": "nom d'utilisateur",
|
|
3130
|
+
"property.identifier": "identifiant",
|
|
3131
|
+
"property.code": "code",
|
|
3132
|
+
"error.title.what-happened": "Que s'est-il pass\xE9?",
|
|
3133
|
+
"error.title.what-can-i-do": "Que puis-je faire?",
|
|
3134
|
+
"error.instructions": "Veuillez r\xE9essayer dans quelques minutes ou contacter l'op\xE9rateur du site Web.",
|
|
3135
|
+
"error.footer.text": "Lorsque vous signalez cette erreur, veuillez inclure les informations suivantes:",
|
|
3136
|
+
"error.footer.copy": "Copier",
|
|
3137
|
+
"error.action.go-back": "Retour",
|
|
3138
|
+
"identities.messages.1010020": ""
|
|
2851
3139
|
};
|
|
2852
3140
|
|
|
2853
3141
|
// src/locales/nl.json
|
|
@@ -3062,7 +3350,9 @@ var nl_default = {
|
|
|
3062
3350
|
"input.placeholder": "",
|
|
3063
3351
|
"card.header.description.login": "",
|
|
3064
3352
|
"card.header.description.registration": "",
|
|
3065
|
-
"card.header.parts.code": "",
|
|
3353
|
+
"card.header.parts.code": "een code die naar je is verzonden",
|
|
3354
|
+
"card.header.parts.totp": "je authenticator-app",
|
|
3355
|
+
"card.header.parts.lookup_secret": "een backup herstelcode",
|
|
3066
3356
|
"card.header.parts.identifier-first": "",
|
|
3067
3357
|
"card.header.parts.oidc": "",
|
|
3068
3358
|
"card.header.parts.passkey": "",
|
|
@@ -3113,6 +3403,20 @@ var nl_default = {
|
|
|
3113
3403
|
"property.password": "",
|
|
3114
3404
|
"property.phone": "",
|
|
3115
3405
|
"property.username": "",
|
|
3406
|
+
"consent.title": "Autoriseren {party}",
|
|
3407
|
+
"consent.subtitle": "Een derde partij applicatie wil toegang tot informatie die aan uw account {identifier} is gekoppeld.",
|
|
3408
|
+
"consent.scope.openid.title": "Identiteit",
|
|
3409
|
+
"consent.scope.openid.description": "Stelt de applicatie in staat uw identiteit te verifi\xEBren. Dit is vereist voor authenticatie en een betrouwbare inlogervaring.",
|
|
3410
|
+
"consent.scope.offline_access.title": "Offline toegang",
|
|
3411
|
+
"consent.scope.offline_access.description": "Stelt deze applicatie in staat u ingelogd te houden, zelfs wanneer u deze niet actief gebruikt.",
|
|
3412
|
+
"consent.scope.profile.title": "Profielinformatie",
|
|
3413
|
+
"consent.scope.profile.description": "Geeft toegang tot uw basisprofielgegevens, inclusief uw gebruikersnaam, voornaam en achternaam.",
|
|
3414
|
+
"consent.scope.email.title": "E-mailadres",
|
|
3415
|
+
"consent.scope.email.description": "Haal uw e-mailadres en de verificatiestatus ervan op.",
|
|
3416
|
+
"consent.scope.address.title": "Fysiek adres",
|
|
3417
|
+
"consent.scope.address.description": "Toegang tot uw postadres.",
|
|
3418
|
+
"consent.scope.phone.title": "Telefoonnummer",
|
|
3419
|
+
"consent.scope.phone.description": "Haal uw telefoonnummer en de verificatiestatus ervan op.",
|
|
3116
3420
|
"error.action.go-back": "",
|
|
3117
3421
|
"error.footer.copy": "",
|
|
3118
3422
|
"error.footer.text": "",
|
|
@@ -3333,13 +3637,15 @@ var pl_default = {
|
|
|
3333
3637
|
"input.placeholder": "",
|
|
3334
3638
|
"card.header.description.login": "",
|
|
3335
3639
|
"card.header.description.registration": "",
|
|
3336
|
-
"card.header.parts.code": "",
|
|
3337
3640
|
"card.header.parts.identifier-first": "",
|
|
3338
3641
|
"card.header.parts.oidc": "",
|
|
3339
3642
|
"card.header.parts.passkey": "",
|
|
3340
3643
|
"card.header.parts.password.login": "",
|
|
3341
3644
|
"card.header.parts.password.registration": "",
|
|
3342
3645
|
"card.header.parts.webauthn": "",
|
|
3646
|
+
"card.header.parts.code": "kod wys\u0142any do Ciebie",
|
|
3647
|
+
"card.header.parts.totp": "Twoja aplikacja uwierzytelniaj\u0105ca",
|
|
3648
|
+
"card.header.parts.lookup_secret": "kod odzyskiwania kopii zapasowej",
|
|
3343
3649
|
"forms.label.forgot-password": "",
|
|
3344
3650
|
"login.subtitle": "",
|
|
3345
3651
|
"login.subtitle-refresh": "",
|
|
@@ -3384,6 +3690,20 @@ var pl_default = {
|
|
|
3384
3690
|
"property.phone": "",
|
|
3385
3691
|
"property.username": "",
|
|
3386
3692
|
"property.identifier": "",
|
|
3693
|
+
"consent.title": "Autoryzuj {party}",
|
|
3694
|
+
"consent.subtitle": "Aplikacja trzeciej strony chce uzyska\u0107 dost\u0119p do informacji powi\u0105zanych z Twoim kontem {identifier}.",
|
|
3695
|
+
"consent.scope.openid.title": "To\u017Csamo\u015B\u0107",
|
|
3696
|
+
"consent.scope.openid.description": "Pozwala aplikacji zweryfikowa\u0107 Twoj\u0105 to\u017Csamo\u015B\u0107. Jest to wymagane do uwierzytelniania i zapewnienia zaufanej sesji logowania.",
|
|
3697
|
+
"consent.scope.offline_access.title": "Dost\u0119p offline",
|
|
3698
|
+
"consent.scope.offline_access.description": "Pozwala aplikacji utrzyma\u0107 Twoje logowanie, nawet gdy nie korzystasz z niej aktywnie.",
|
|
3699
|
+
"consent.scope.profile.title": "Informacje profilowe",
|
|
3700
|
+
"consent.scope.profile.description": "Pozwala na dost\u0119p do podstawowych danych profilowych, w tym nazwy u\u017Cytkownika, imienia i nazwiska.",
|
|
3701
|
+
"consent.scope.email.title": "Adres e-mail",
|
|
3702
|
+
"consent.scope.email.description": "Pobierz sw\xF3j adres e-mail oraz status jego weryfikacji.",
|
|
3703
|
+
"consent.scope.address.title": "Adres fizyczny",
|
|
3704
|
+
"consent.scope.address.description": "Dost\u0119p do Twojego adresu pocztowego.",
|
|
3705
|
+
"consent.scope.phone.title": "Numer telefonu",
|
|
3706
|
+
"consent.scope.phone.description": "Pobierz sw\xF3j numer telefonu oraz status jego weryfikacji.",
|
|
3387
3707
|
"error.action.go-back": "",
|
|
3388
3708
|
"error.footer.copy": "",
|
|
3389
3709
|
"error.footer.text": "",
|
|
@@ -3604,7 +3924,9 @@ var pt_default = {
|
|
|
3604
3924
|
"input.placeholder": "",
|
|
3605
3925
|
"card.header.description.login": "",
|
|
3606
3926
|
"card.header.description.registration": "",
|
|
3607
|
-
"card.header.parts.code": "",
|
|
3927
|
+
"card.header.parts.code": "um c\xF3digo enviado para voc\xEA",
|
|
3928
|
+
"card.header.parts.totp": "seu aplicativo autenticador",
|
|
3929
|
+
"card.header.parts.lookup_secret": "um c\xF3digo de recupera\xE7\xE3o de backup",
|
|
3608
3930
|
"card.header.parts.identifier-first": "",
|
|
3609
3931
|
"card.header.parts.oidc": "",
|
|
3610
3932
|
"card.header.parts.passkey": "",
|
|
@@ -3655,6 +3977,20 @@ var pt_default = {
|
|
|
3655
3977
|
"property.password": "",
|
|
3656
3978
|
"property.phone": "",
|
|
3657
3979
|
"property.username": "",
|
|
3980
|
+
"consent.title": "Autorizar {party}",
|
|
3981
|
+
"consent.subtitle": "Um aplicativo de terceiros deseja acessar as informa\xE7\xF5es associadas \xE0 sua conta {identifier}.",
|
|
3982
|
+
"consent.scope.openid.title": "Identidade",
|
|
3983
|
+
"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.",
|
|
3984
|
+
"consent.scope.offline_access.title": "Acesso Offline",
|
|
3985
|
+
"consent.scope.offline_access.description": "Permite que este aplicativo mantenha voc\xEA conectado mesmo quando n\xE3o estiver usando-o ativamente.",
|
|
3986
|
+
"consent.scope.profile.title": "Informa\xE7\xF5es do Perfil",
|
|
3987
|
+
"consent.scope.profile.description": "Permite o acesso aos detalhes b\xE1sicos do seu perfil, incluindo seu nome de usu\xE1rio, primeiro nome e sobrenome.",
|
|
3988
|
+
"consent.scope.email.title": "Endere\xE7o de E-mail",
|
|
3989
|
+
"consent.scope.email.description": "Recupere seu endere\xE7o de e-mail e seu status de verifica\xE7\xE3o.",
|
|
3990
|
+
"consent.scope.address.title": "Endere\xE7o F\xEDsico",
|
|
3991
|
+
"consent.scope.address.description": "Acesse seu endere\xE7o postal.",
|
|
3992
|
+
"consent.scope.phone.title": "N\xFAmero de Telefone",
|
|
3993
|
+
"consent.scope.phone.description": "Recupere seu n\xFAmero de telefone e seu status de verifica\xE7\xE3o.",
|
|
3658
3994
|
"error.action.go-back": "",
|
|
3659
3995
|
"error.footer.copy": "",
|
|
3660
3996
|
"error.footer.text": "",
|
|
@@ -3875,7 +4211,9 @@ var sv_default = {
|
|
|
3875
4211
|
"input.placeholder": "Ange din {placeholder}",
|
|
3876
4212
|
"card.header.description.login": "Logga in med {identifierLabel}",
|
|
3877
4213
|
"card.header.description.registration": "Registrera dig med {identifierLabel}",
|
|
3878
|
-
"card.header.parts.code": "en kod skickad till
|
|
4214
|
+
"card.header.parts.code": "en kod skickad till dig",
|
|
4215
|
+
"card.header.parts.totp": "din autentiseringsapp",
|
|
4216
|
+
"card.header.parts.lookup_secret": "en s\xE4kerhetskopieringskod",
|
|
3879
4217
|
"card.header.parts.identifier-first": "din {identifierLabel}",
|
|
3880
4218
|
"card.header.parts.oidc": "en social leverant\xF6r",
|
|
3881
4219
|
"card.header.parts.passkey": "en Passkey",
|
|
@@ -3926,6 +4264,20 @@ var sv_default = {
|
|
|
3926
4264
|
"property.username": "anv\xE4ndarnamn",
|
|
3927
4265
|
"property.identifier": "identifier",
|
|
3928
4266
|
"property.code": "kod",
|
|
4267
|
+
"consent.title": "Auktorisera {party}",
|
|
4268
|
+
"consent.subtitle": "En tredjepartsapplikation vill f\xE5 tillg\xE5ng till information kopplad till ditt konto {identifier}.",
|
|
4269
|
+
"consent.scope.openid.title": "Identitet",
|
|
4270
|
+
"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.",
|
|
4271
|
+
"consent.scope.offline_access.title": "Offline-\xE5tkomst",
|
|
4272
|
+
"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.",
|
|
4273
|
+
"consent.scope.profile.title": "Profilinformation",
|
|
4274
|
+
"consent.scope.profile.description": "Ger tillg\xE5ng till dina grundl\xE4ggande profiluppgifter, inklusive ditt anv\xE4ndarnamn, f\xF6rnamn och efternamn.",
|
|
4275
|
+
"consent.scope.email.title": "E-postadress",
|
|
4276
|
+
"consent.scope.email.description": "H\xE4mta din e-postadress och dess verifieringsstatus.",
|
|
4277
|
+
"consent.scope.address.title": "Fysisk adress",
|
|
4278
|
+
"consent.scope.address.description": "F\xE5 \xE5tkomst till din postadress.",
|
|
4279
|
+
"consent.scope.phone.title": "Telefonnummer",
|
|
4280
|
+
"consent.scope.phone.description": "H\xE4mta ditt telefonnummer och dess verifieringsstatus.",
|
|
3929
4281
|
"error.action.go-back": "",
|
|
3930
4282
|
"error.footer.copy": "",
|
|
3931
4283
|
"error.footer.text": "",
|
|
@@ -3946,6 +4298,6 @@ var OryLocales = {
|
|
|
3946
4298
|
sv: sv_default
|
|
3947
4299
|
};
|
|
3948
4300
|
|
|
3949
|
-
export { HeadlessPageHeader, OryCard, OryCardContent, OryCardFooter, OryCardHeader, OryCardValidationMessages, OryForm, OryFormGroupDivider, OryFormGroups, OryFormOidcButtons, OryFormSection, OryFormSocialButtonsForm, OryLocales, OryProvider, OrySettingsCard, OryTwoStepCard, messageTestId, uiTextToFormattedMessage, useComponents, useNodeSorter, useOryFlow };
|
|
4301
|
+
export { HeadlessPageHeader, OryCard, OryCardContent, OryCardFooter, OryCardHeader, OryCardValidationMessages, OryConsentCard, OryForm, OryFormGroupDivider, OryFormGroups, OryFormOidcButtons, OryFormSection, OryFormSocialButtonsForm, OryLocales, OryProvider, OrySettingsCard, OryTwoStepCard, messageTestId, uiTextToFormattedMessage, useComponents, useNodeSorter, useOryFlow };
|
|
3950
4302
|
//# sourceMappingURL=index.mjs.map
|
|
3951
4303
|
//# sourceMappingURL=index.mjs.map
|