@thunderid/javascript 1.9.0 → 1.10.0

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.
@@ -209,6 +209,33 @@ var IsomorphicCrypto = class {
209
209
  }
210
210
  };
211
211
 
212
+ //#endregion
213
+ //#region src/api/auth/flowSessions.ts
214
+ const collectedSessions = /* @__PURE__ */ new Map();
215
+ /**
216
+ * Holds the sessions a flow step started under its authorization request, and drops the ones it ended.
217
+ */
218
+ const collectFlowSessions = (authId, step) => {
219
+ if (!step.sessionData?.length && !step.clearedSessions?.length) return;
220
+ const held = collectedSessions.get(authId) ?? /* @__PURE__ */ new Map();
221
+ step.sessionData?.forEach(({ flowIdentifier, sessionHandle }) => {
222
+ held.set(flowIdentifier, {
223
+ flowIdentifier,
224
+ sessionHandle
225
+ });
226
+ });
227
+ step.clearedSessions?.forEach((flowIdentifier) => held.delete(flowIdentifier));
228
+ collectedSessions.set(authId, held);
229
+ };
230
+ /**
231
+ * Returns the sessions held for an authorization request and forgets them.
232
+ */
233
+ const takeFlowSessions = (authId) => {
234
+ const held = collectedSessions.get(authId);
235
+ collectedSessions.delete(authId);
236
+ return held ? [...held.values()] : [];
237
+ };
238
+
212
239
  //#endregion
213
240
  //#region src/errors/ThunderIDError.ts
214
241
  /**
@@ -773,7 +800,7 @@ const readErrorAssertion = (body) => {
773
800
  return;
774
801
  }
775
802
  };
776
- const postAuthCallback = async (baseUrl, body, headers) => {
803
+ const postAuthCallback$1 = async (baseUrl, body, headers) => {
777
804
  const oauth2Response = await fetch(`${baseUrl}/oauth2/auth/callback`, {
778
805
  body: JSON.stringify(body),
779
806
  credentials: "include",
@@ -792,7 +819,8 @@ const postAuthCallback = async (baseUrl, body, headers) => {
792
819
  return oauth2Response.json();
793
820
  };
794
821
  const relayFailure = async (baseUrl, authId, errorAssertion, headers, flowResponse) => {
795
- const oauth2Result = await postAuthCallback(baseUrl, {
822
+ takeFlowSessions(authId);
823
+ const oauth2Result = await postAuthCallback$1(baseUrl, {
796
824
  assertion: errorAssertion,
797
825
  authId
798
826
  }, headers);
@@ -832,10 +860,13 @@ const executeEmbeddedSignInFlow = async ({ url, baseUrl, payload, authId, flowSe
832
860
  throw new ThunderIDAPIError(errorText, "executeEmbeddedSignInFlow-ResponseError-001", "javascript", response.status, response.statusText, "Authorization request failed");
833
861
  }
834
862
  const flowResponse = await response.json();
863
+ if (authId) collectFlowSessions(authId, flowResponse);
835
864
  if (flowResponse.flowStatus === EmbeddedSignInFlowStatus.Complete && flowResponse.assertion && authId) try {
836
- const oauth2Result = await postAuthCallback(baseUrl, {
865
+ const sessionData = takeFlowSessions(authId);
866
+ const oauth2Result = await postAuthCallback$1(baseUrl, {
837
867
  assertion: flowResponse.assertion,
838
- authId
868
+ authId,
869
+ ...sessionData.length > 0 ? { sessionData } : {}
839
870
  }, requestConfig.headers);
840
871
  return {
841
872
  flowStatus: flowResponse.flowStatus,
@@ -850,6 +881,257 @@ const executeEmbeddedSignInFlow = async ({ url, baseUrl, payload, authId, flowSe
850
881
  };
851
882
  var executeEmbeddedSignInFlow_default = executeEmbeddedSignInFlow;
852
883
 
884
+ //#endregion
885
+ //#region src/models/embedded-flow.ts
886
+ let EmbeddedFlowType = /* @__PURE__ */ function(EmbeddedFlowType$1) {
887
+ EmbeddedFlowType$1["Authentication"] = "AUTHENTICATION";
888
+ EmbeddedFlowType$1["DeviceGrant"] = "DEVICE_GRANT";
889
+ EmbeddedFlowType$1["Recovery"] = "RECOVERY";
890
+ EmbeddedFlowType$1["Registration"] = "REGISTRATION";
891
+ EmbeddedFlowType$1["UserOnboarding"] = "USER_ONBOARDING";
892
+ return EmbeddedFlowType$1;
893
+ }({});
894
+ let EmbeddedFlowResponseType = /* @__PURE__ */ function(EmbeddedFlowResponseType$1) {
895
+ EmbeddedFlowResponseType$1["Redirection"] = "REDIRECTION";
896
+ EmbeddedFlowResponseType$1["View"] = "VIEW";
897
+ return EmbeddedFlowResponseType$1;
898
+ }({});
899
+ /**
900
+ * Component types supported by the ThunderID embedded flow API.
901
+ *
902
+ * These types define the different UI components that can be rendered
903
+ * as part of the embedded authentication flows. Each type corresponds
904
+ * to a specific UI element with its own behavior and properties.
905
+ *
906
+ * @example
907
+ * ```typescript
908
+ * // Check component type to render appropriate UI
909
+ * if (component.type === EmbeddedFlowComponentType.TextInput) {
910
+ * // Render text input field
911
+ * } else if (component.type === EmbeddedFlowComponentType.Action) {
912
+ * // Render button/action
913
+ * }
914
+ * ```
915
+ *
916
+ * @experimental This API may change in future versions
917
+ */
918
+ let EmbeddedFlowComponentType = /* @__PURE__ */ function(EmbeddedFlowComponentType$1) {
919
+ /** Interactive action component (buttons, links) for user interactions */
920
+ EmbeddedFlowComponentType$1["Action"] = "ACTION";
921
+ /** Container block component that groups other components */
922
+ EmbeddedFlowComponentType$1["Block"] = "BLOCK";
923
+ /** Consent component for displaying consent purposes and attributes */
924
+ EmbeddedFlowComponentType$1["Consent"] = "CONSENT";
925
+ /** Copyable text display component that shows text with a copy-to-clipboard action */
926
+ EmbeddedFlowComponentType$1["CopyableText"] = "COPYABLE_TEXT";
927
+ /** Date input field for selecting a calendar date */
928
+ EmbeddedFlowComponentType$1["DateInput"] = "DATE_INPUT";
929
+ /** Divider component for visual separation of content */
930
+ EmbeddedFlowComponentType$1["Divider"] = "DIVIDER";
931
+ /** Email input field with validation for email addresses. */
932
+ EmbeddedFlowComponentType$1["EmailInput"] = "EMAIL_INPUT";
933
+ /** Icon display component for rendering named vector icons */
934
+ EmbeddedFlowComponentType$1["Icon"] = "ICON";
935
+ /** Image display component for logos and illustrations */
936
+ EmbeddedFlowComponentType$1["Image"] = "IMAGE";
937
+ /** Key-value list display component that shows label and value pairs published in additionalData */
938
+ EmbeddedFlowComponentType$1["KeyValueList"] = "KEY_VALUE_LIST";
939
+ /** One-time password input field for multi-factor authentication */
940
+ EmbeddedFlowComponentType$1["OtpInput"] = "OTP_INPUT";
941
+ /** Organization unit tree picker for selecting an OU */
942
+ EmbeddedFlowComponentType$1["OuSelect"] = "OU_SELECT";
943
+ /** Password input field with masking for sensitive data */
944
+ EmbeddedFlowComponentType$1["PasswordInput"] = "PASSWORD_INPUT";
945
+ /** Phone number input field with country code support */
946
+ EmbeddedFlowComponentType$1["PhoneInput"] = "PHONE_INPUT";
947
+ /** Rich text display component that renders formatted HTML content */
948
+ EmbeddedFlowComponentType$1["RichText"] = "RICH_TEXT";
949
+ /** Select/dropdown input component for single choice selection */
950
+ EmbeddedFlowComponentType$1["Select"] = "SELECT";
951
+ /** Stack layout component for arranging children in a row or column */
952
+ EmbeddedFlowComponentType$1["Stack"] = "STACK";
953
+ /** Text display component for labels, headings, and messages */
954
+ EmbeddedFlowComponentType$1["Text"] = "TEXT";
955
+ /** Standard text input field for user data entry */
956
+ EmbeddedFlowComponentType$1["TextInput"] = "TEXT_INPUT";
957
+ /** Timer component for displaying a countdown */
958
+ EmbeddedFlowComponentType$1["Timer"] = "TIMER";
959
+ /** QR code display component for wallet-based flows (e.g. OpenID4VP) */
960
+ EmbeddedFlowComponentType$1["QrCode"] = "QR_CODE";
961
+ /** Single-user picker with incremental, paginated directory loading */
962
+ EmbeddedFlowComponentType$1["UserSelect"] = "USER_SELECT";
963
+ /** Authentication-flow picker with incremental, paginated loading; submits the flow ID */
964
+ EmbeddedFlowComponentType$1["AuthFlowSelect"] = "AUTH_FLOW_SELECT";
965
+ /** User-type picker with incremental, paginated loading; submits the user type handle */
966
+ EmbeddedFlowComponentType$1["UserTypeSelect"] = "USER_TYPE_SELECT";
967
+ return EmbeddedFlowComponentType$1;
968
+ }({});
969
+ /**
970
+ * Action variant types for buttons and interactive elements.
971
+ *
972
+ * @experimental This API may change in future versions
973
+ */
974
+ let EmbeddedFlowActionVariant = /* @__PURE__ */ function(EmbeddedFlowActionVariant$1) {
975
+ /** Danger action button for destructive operations */
976
+ EmbeddedFlowActionVariant$1["Danger"] = "DANGER";
977
+ /** Info action button for informational purposes */
978
+ EmbeddedFlowActionVariant$1["Info"] = "INFO";
979
+ /** Link-styled action button */
980
+ EmbeddedFlowActionVariant$1["Link"] = "LINK";
981
+ /** Outlined action button for secondary emphasis */
982
+ EmbeddedFlowActionVariant$1["Outlined"] = "OUTLINED";
983
+ /** Primary action button with highest visual emphasis */
984
+ EmbeddedFlowActionVariant$1["Primary"] = "PRIMARY";
985
+ /** Secondary action button with moderate visual emphasis */
986
+ EmbeddedFlowActionVariant$1["Secondary"] = "SECONDARY";
987
+ /** Success action button for positive confirmations */
988
+ EmbeddedFlowActionVariant$1["Success"] = "SUCCESS";
989
+ /** Tertiary action button with minimal visual emphasis */
990
+ EmbeddedFlowActionVariant$1["Tertiary"] = "TERTIARY";
991
+ /** Warning action button for cautionary actions */
992
+ EmbeddedFlowActionVariant$1["Warning"] = "WARNING";
993
+ return EmbeddedFlowActionVariant$1;
994
+ }({});
995
+ /**
996
+ * Text variant types for typography components.
997
+ *
998
+ * @experimental This API may change in future versions
999
+ */
1000
+ let EmbeddedFlowTextVariant = /* @__PURE__ */ function(EmbeddedFlowTextVariant$1) {
1001
+ /** Primary body text for main content */
1002
+ EmbeddedFlowTextVariant$1["Body1"] = "BODY_1";
1003
+ /** Secondary body text for supplementary content */
1004
+ EmbeddedFlowTextVariant$1["Body2"] = "BODY_2";
1005
+ /** Text styled for button labels */
1006
+ EmbeddedFlowTextVariant$1["ButtonText"] = "BUTTON_TEXT";
1007
+ /** Small caption text for annotations and descriptions */
1008
+ EmbeddedFlowTextVariant$1["Caption"] = "CAPTION";
1009
+ /** Largest heading level for main titles */
1010
+ EmbeddedFlowTextVariant$1["Heading1"] = "HEADING_1";
1011
+ /** Second level heading for major sections */
1012
+ EmbeddedFlowTextVariant$1["Heading2"] = "HEADING_2";
1013
+ /** Third level heading for subsections */
1014
+ EmbeddedFlowTextVariant$1["Heading3"] = "HEADING_3";
1015
+ /** Fourth level heading for minor sections */
1016
+ EmbeddedFlowTextVariant$1["Heading4"] = "HEADING_4";
1017
+ /** Fifth level heading for detailed sections */
1018
+ EmbeddedFlowTextVariant$1["Heading5"] = "HEADING_5";
1019
+ /** Smallest heading level for fine-grained sections */
1020
+ EmbeddedFlowTextVariant$1["Heading6"] = "HEADING_6";
1021
+ /** Overline text for labels and categories */
1022
+ EmbeddedFlowTextVariant$1["Overline"] = "OVERLINE";
1023
+ /** Primary subtitle text with larger emphasis */
1024
+ EmbeddedFlowTextVariant$1["Subtitle1"] = "SUBTITLE_1";
1025
+ /** Secondary subtitle text with moderate emphasis */
1026
+ EmbeddedFlowTextVariant$1["Subtitle2"] = "SUBTITLE_2";
1027
+ return EmbeddedFlowTextVariant$1;
1028
+ }({});
1029
+ /**
1030
+ * Event types for action components.
1031
+ *
1032
+ * @experimental This API may change in future versions
1033
+ */
1034
+ let EmbeddedFlowEventType = /* @__PURE__ */ function(EmbeddedFlowEventType$1) {
1035
+ /** Navigate back to the previous step */
1036
+ EmbeddedFlowEventType$1["Back"] = "BACK";
1037
+ /** Cancel the current operation */
1038
+ EmbeddedFlowEventType$1["Cancel"] = "CANCEL";
1039
+ /** Navigate to a different flow step or page */
1040
+ EmbeddedFlowEventType$1["Navigate"] = "NAVIGATE";
1041
+ /** Reset form fields to initial state */
1042
+ EmbeddedFlowEventType$1["Reset"] = "RESET";
1043
+ /** Submit form data to the server */
1044
+ EmbeddedFlowEventType$1["Submit"] = "SUBMIT";
1045
+ /** Trigger an action or event */
1046
+ EmbeddedFlowEventType$1["Trigger"] = "TRIGGER";
1047
+ return EmbeddedFlowEventType$1;
1048
+ }({});
1049
+
1050
+ //#endregion
1051
+ //#region src/api/auth/executeEmbeddedDeviceGrantFlow.ts
1052
+ const resolveCallbackUrl = (endpoint, baseUrl) => {
1053
+ if (baseUrl) return `${baseUrl.replace(/\/$/, "")}/oauth2/auth/callback`;
1054
+ const flowEndpoint = new URL(endpoint);
1055
+ const basePath = flowEndpoint.pathname.replace(/\/flow\/execute\/?$/, "");
1056
+ return new URL(`${basePath}/oauth2/auth/callback`, flowEndpoint.origin).toString();
1057
+ };
1058
+ const postAuthCallback = async (callbackUrl, body, headers, allowAccessDenied) => {
1059
+ const callbackResponse = await fetch(callbackUrl, {
1060
+ body: JSON.stringify(body),
1061
+ credentials: "include",
1062
+ headers: {
1063
+ Accept: "application/json",
1064
+ "Content-Type": "application/json",
1065
+ ...headers
1066
+ },
1067
+ method: "POST"
1068
+ });
1069
+ if (!callbackResponse.ok) {
1070
+ const errorText = await callbackResponse.text();
1071
+ let errorPayload;
1072
+ try {
1073
+ errorPayload = JSON.parse(errorText);
1074
+ } catch {
1075
+ errorPayload = void 0;
1076
+ }
1077
+ const isAccessDenied = typeof errorPayload === "object" && errorPayload !== null && "error" in errorPayload && errorPayload.error === "access_denied";
1078
+ if (allowAccessDenied && callbackResponse.status === 400 && isAccessDenied) return {};
1079
+ throw new ThunderIDAPIError(errorText, "executeEmbeddedDeviceGrantFlow-CallbackError-001", "javascript", callbackResponse.status, callbackResponse.statusText);
1080
+ }
1081
+ return await callbackResponse.json();
1082
+ };
1083
+ /**
1084
+ * Executes or continues the application's configured Device Grant flow.
1085
+ *
1086
+ * The request starts at the existing flow execution endpoint. When the terminal flow response
1087
+ * carries the server-issued authorization request ID and assertion, this function relays them
1088
+ * to the existing OAuth callback endpoint. A start request requires its application ID; an optional
1089
+ * user code is submitted as flow input.
1090
+ */
1091
+ const executeEmbeddedDeviceGrantFlow = async ({ baseUrl, payload, url,...requestConfig }) => {
1092
+ if (!payload) throw new ThunderIDAPIError("A flow payload is required", "executeEmbeddedDeviceGrantFlow-ValidationError-001", "javascript", 400, "The Device Grant flow cannot be executed without a request payload.");
1093
+ if (!url && !baseUrl) throw new ThunderIDAPIError("A server URL is required", "executeEmbeddedDeviceGrantFlow-ValidationError-002", "javascript", 400, "The Device Grant flow endpoint cannot be resolved without a server URL.");
1094
+ const isContinuation = typeof payload === "object" && payload !== null && "executionId" in payload && typeof payload.executionId === "string" && payload.executionId.length > 0;
1095
+ const isNewDeviceGrantFlow = typeof payload === "object" && payload !== null && "flowType" in payload && payload.flowType === EmbeddedFlowType.DeviceGrant && "inputs" in payload && typeof payload.applicationId === "string" && payload.applicationId.trim().length > 0;
1096
+ if (!isContinuation && !isNewDeviceGrantFlow) throw new ThunderIDAPIError("The Device Grant flow payload is invalid", "executeEmbeddedDeviceGrantFlow-ValidationError-003", "javascript", 400, "Start requests require the DEVICE_GRANT flow type and a non-empty application ID; continuation requests require an execution ID.");
1097
+ const endpoint = url ?? `${baseUrl}/flow/execute`;
1098
+ const callbackUrl = resolveCallbackUrl(endpoint, baseUrl);
1099
+ const cleanPayload = typeof payload === "object" && payload !== null ? Object.fromEntries(Object.entries(payload).filter(([key]) => key !== "verbose")) : payload;
1100
+ const hasOnlyFlowId = typeof cleanPayload === "object" && cleanPayload !== null && "executionId" in cleanPayload && Object.keys(cleanPayload).length === 1;
1101
+ const requestPayload = isNewDeviceGrantFlow || hasOnlyFlowId ? {
1102
+ ...cleanPayload,
1103
+ verbose: true
1104
+ } : cleanPayload;
1105
+ const response = await fetch(endpoint, {
1106
+ credentials: "include",
1107
+ ...requestConfig,
1108
+ body: JSON.stringify(requestPayload),
1109
+ headers: {
1110
+ Accept: "application/json",
1111
+ "Content-Type": "application/json",
1112
+ ...requestConfig.headers
1113
+ },
1114
+ method: requestConfig.method ?? "POST"
1115
+ });
1116
+ if (!response.ok) throw new ThunderIDAPIError(await response.text(), "executeEmbeddedDeviceGrantFlow-FlowError-001", "javascript", response.status, response.statusText);
1117
+ const flowResponse = await response.json();
1118
+ const additionalData = flowResponse.data?.additionalData;
1119
+ const authId = additionalData?.["authId"];
1120
+ const callbackType = additionalData?.["callbackType"];
1121
+ const assertion = flowResponse.flowStatus === EmbeddedSignInFlowStatus.Complete ? flowResponse.assertion : flowResponse.errorAssertion;
1122
+ if (flowResponse.flowStatus === EmbeddedSignInFlowStatus.Complete || flowResponse.flowStatus === EmbeddedSignInFlowStatus.Error) {
1123
+ if (typeof authId !== "string" || typeof callbackType !== "string" || typeof assertion !== "string") throw new ThunderIDAPIError("The completed Device Grant flow did not include its callback data.", "executeEmbeddedDeviceGrantFlow-CallbackError-002", "javascript");
1124
+ const redirectUri = (await postAuthCallback(callbackUrl, {
1125
+ assertion,
1126
+ authId,
1127
+ type: callbackType
1128
+ }, requestConfig.headers, flowResponse.flowStatus === EmbeddedSignInFlowStatus.Error))["redirect_uri"];
1129
+ if (typeof redirectUri === "string") flowResponse.redirectUrl = redirectUri;
1130
+ }
1131
+ return flowResponse;
1132
+ };
1133
+ var executeEmbeddedDeviceGrantFlow_default = executeEmbeddedDeviceGrantFlow;
1134
+
853
1135
  //#endregion
854
1136
  //#region src/models/embedded-signup-flow.ts
855
1137
  /**
@@ -963,11 +1245,14 @@ const executeEmbeddedSignUpFlow = async ({ url, baseUrl, payload, authId,...requ
963
1245
  });
964
1246
  if (!response.ok) throw new ThunderIDAPIError(await response.text(), "executeEmbeddedSignUpFlow-ResponseError-001", "javascript", response.status, response.statusText, "Registration request failed");
965
1247
  const flowResponse = await response.json();
1248
+ if (authId) collectFlowSessions(authId, flowResponse);
966
1249
  if (flowResponse.flowStatus === EmbeddedSignUpFlowStatus.Complete && flowResponse.assertion && authId) try {
1250
+ const sessionData = takeFlowSessions(authId);
967
1251
  const oauth2Response = await fetch(`${baseUrl}/oauth2/auth/callback`, {
968
1252
  body: JSON.stringify({
969
1253
  assertion: flowResponse.assertion,
970
- authId
1254
+ authId,
1255
+ ...sessionData.length > 0 ? { sessionData } : {}
971
1256
  }),
972
1257
  credentials: "include",
973
1258
  headers: {
@@ -1053,171 +1338,6 @@ const executeEmbeddedRecoveryFlow = async ({ url, baseUrl, payload,...requestCon
1053
1338
  };
1054
1339
  var executeEmbeddedRecoveryFlow_default = executeEmbeddedRecoveryFlow;
1055
1340
 
1056
- //#endregion
1057
- //#region src/models/embedded-flow.ts
1058
- let EmbeddedFlowType = /* @__PURE__ */ function(EmbeddedFlowType$1) {
1059
- EmbeddedFlowType$1["Authentication"] = "AUTHENTICATION";
1060
- EmbeddedFlowType$1["Recovery"] = "RECOVERY";
1061
- EmbeddedFlowType$1["Registration"] = "REGISTRATION";
1062
- EmbeddedFlowType$1["UserOnboarding"] = "USER_ONBOARDING";
1063
- return EmbeddedFlowType$1;
1064
- }({});
1065
- let EmbeddedFlowResponseType = /* @__PURE__ */ function(EmbeddedFlowResponseType$1) {
1066
- EmbeddedFlowResponseType$1["Redirection"] = "REDIRECTION";
1067
- EmbeddedFlowResponseType$1["View"] = "VIEW";
1068
- return EmbeddedFlowResponseType$1;
1069
- }({});
1070
- /**
1071
- * Component types supported by the ThunderID embedded flow API.
1072
- *
1073
- * These types define the different UI components that can be rendered
1074
- * as part of the embedded authentication flows. Each type corresponds
1075
- * to a specific UI element with its own behavior and properties.
1076
- *
1077
- * @example
1078
- * ```typescript
1079
- * // Check component type to render appropriate UI
1080
- * if (component.type === EmbeddedFlowComponentType.TextInput) {
1081
- * // Render text input field
1082
- * } else if (component.type === EmbeddedFlowComponentType.Action) {
1083
- * // Render button/action
1084
- * }
1085
- * ```
1086
- *
1087
- * @experimental This API may change in future versions
1088
- */
1089
- let EmbeddedFlowComponentType = /* @__PURE__ */ function(EmbeddedFlowComponentType$1) {
1090
- /** Interactive action component (buttons, links) for user interactions */
1091
- EmbeddedFlowComponentType$1["Action"] = "ACTION";
1092
- /** Container block component that groups other components */
1093
- EmbeddedFlowComponentType$1["Block"] = "BLOCK";
1094
- /** Consent component for displaying consent purposes and attributes */
1095
- EmbeddedFlowComponentType$1["Consent"] = "CONSENT";
1096
- /** Copyable text display component that shows text with a copy-to-clipboard action */
1097
- EmbeddedFlowComponentType$1["CopyableText"] = "COPYABLE_TEXT";
1098
- /** Date input field for selecting a calendar date */
1099
- EmbeddedFlowComponentType$1["DateInput"] = "DATE_INPUT";
1100
- /** Divider component for visual separation of content */
1101
- EmbeddedFlowComponentType$1["Divider"] = "DIVIDER";
1102
- /** Email input field with validation for email addresses. */
1103
- EmbeddedFlowComponentType$1["EmailInput"] = "EMAIL_INPUT";
1104
- /** Icon display component for rendering named vector icons */
1105
- EmbeddedFlowComponentType$1["Icon"] = "ICON";
1106
- /** Image display component for logos and illustrations */
1107
- EmbeddedFlowComponentType$1["Image"] = "IMAGE";
1108
- /** Key-value list display component that shows label and value pairs published in additionalData */
1109
- EmbeddedFlowComponentType$1["KeyValueList"] = "KEY_VALUE_LIST";
1110
- /** One-time password input field for multi-factor authentication */
1111
- EmbeddedFlowComponentType$1["OtpInput"] = "OTP_INPUT";
1112
- /** Organization unit tree picker for selecting an OU */
1113
- EmbeddedFlowComponentType$1["OuSelect"] = "OU_SELECT";
1114
- /** Password input field with masking for sensitive data */
1115
- EmbeddedFlowComponentType$1["PasswordInput"] = "PASSWORD_INPUT";
1116
- /** Phone number input field with country code support */
1117
- EmbeddedFlowComponentType$1["PhoneInput"] = "PHONE_INPUT";
1118
- /** Rich text display component that renders formatted HTML content */
1119
- EmbeddedFlowComponentType$1["RichText"] = "RICH_TEXT";
1120
- /** Select/dropdown input component for single choice selection */
1121
- EmbeddedFlowComponentType$1["Select"] = "SELECT";
1122
- /** Stack layout component for arranging children in a row or column */
1123
- EmbeddedFlowComponentType$1["Stack"] = "STACK";
1124
- /** Text display component for labels, headings, and messages */
1125
- EmbeddedFlowComponentType$1["Text"] = "TEXT";
1126
- /** Standard text input field for user data entry */
1127
- EmbeddedFlowComponentType$1["TextInput"] = "TEXT_INPUT";
1128
- /** Timer component for displaying a countdown */
1129
- EmbeddedFlowComponentType$1["Timer"] = "TIMER";
1130
- /** QR code display component for wallet-based flows (e.g. OpenID4VP) */
1131
- EmbeddedFlowComponentType$1["QrCode"] = "QR_CODE";
1132
- /** Single-user picker with incremental, paginated directory loading */
1133
- EmbeddedFlowComponentType$1["UserSelect"] = "USER_SELECT";
1134
- /** Authentication-flow picker with incremental, paginated loading; submits the flow ID */
1135
- EmbeddedFlowComponentType$1["AuthFlowSelect"] = "AUTH_FLOW_SELECT";
1136
- /** User-type picker with incremental, paginated loading; submits the user type handle */
1137
- EmbeddedFlowComponentType$1["UserTypeSelect"] = "USER_TYPE_SELECT";
1138
- return EmbeddedFlowComponentType$1;
1139
- }({});
1140
- /**
1141
- * Action variant types for buttons and interactive elements.
1142
- *
1143
- * @experimental This API may change in future versions
1144
- */
1145
- let EmbeddedFlowActionVariant = /* @__PURE__ */ function(EmbeddedFlowActionVariant$1) {
1146
- /** Danger action button for destructive operations */
1147
- EmbeddedFlowActionVariant$1["Danger"] = "DANGER";
1148
- /** Info action button for informational purposes */
1149
- EmbeddedFlowActionVariant$1["Info"] = "INFO";
1150
- /** Link-styled action button */
1151
- EmbeddedFlowActionVariant$1["Link"] = "LINK";
1152
- /** Outlined action button for secondary emphasis */
1153
- EmbeddedFlowActionVariant$1["Outlined"] = "OUTLINED";
1154
- /** Primary action button with highest visual emphasis */
1155
- EmbeddedFlowActionVariant$1["Primary"] = "PRIMARY";
1156
- /** Secondary action button with moderate visual emphasis */
1157
- EmbeddedFlowActionVariant$1["Secondary"] = "SECONDARY";
1158
- /** Success action button for positive confirmations */
1159
- EmbeddedFlowActionVariant$1["Success"] = "SUCCESS";
1160
- /** Tertiary action button with minimal visual emphasis */
1161
- EmbeddedFlowActionVariant$1["Tertiary"] = "TERTIARY";
1162
- /** Warning action button for cautionary actions */
1163
- EmbeddedFlowActionVariant$1["Warning"] = "WARNING";
1164
- return EmbeddedFlowActionVariant$1;
1165
- }({});
1166
- /**
1167
- * Text variant types for typography components.
1168
- *
1169
- * @experimental This API may change in future versions
1170
- */
1171
- let EmbeddedFlowTextVariant = /* @__PURE__ */ function(EmbeddedFlowTextVariant$1) {
1172
- /** Primary body text for main content */
1173
- EmbeddedFlowTextVariant$1["Body1"] = "BODY_1";
1174
- /** Secondary body text for supplementary content */
1175
- EmbeddedFlowTextVariant$1["Body2"] = "BODY_2";
1176
- /** Text styled for button labels */
1177
- EmbeddedFlowTextVariant$1["ButtonText"] = "BUTTON_TEXT";
1178
- /** Small caption text for annotations and descriptions */
1179
- EmbeddedFlowTextVariant$1["Caption"] = "CAPTION";
1180
- /** Largest heading level for main titles */
1181
- EmbeddedFlowTextVariant$1["Heading1"] = "HEADING_1";
1182
- /** Second level heading for major sections */
1183
- EmbeddedFlowTextVariant$1["Heading2"] = "HEADING_2";
1184
- /** Third level heading for subsections */
1185
- EmbeddedFlowTextVariant$1["Heading3"] = "HEADING_3";
1186
- /** Fourth level heading for minor sections */
1187
- EmbeddedFlowTextVariant$1["Heading4"] = "HEADING_4";
1188
- /** Fifth level heading for detailed sections */
1189
- EmbeddedFlowTextVariant$1["Heading5"] = "HEADING_5";
1190
- /** Smallest heading level for fine-grained sections */
1191
- EmbeddedFlowTextVariant$1["Heading6"] = "HEADING_6";
1192
- /** Overline text for labels and categories */
1193
- EmbeddedFlowTextVariant$1["Overline"] = "OVERLINE";
1194
- /** Primary subtitle text with larger emphasis */
1195
- EmbeddedFlowTextVariant$1["Subtitle1"] = "SUBTITLE_1";
1196
- /** Secondary subtitle text with moderate emphasis */
1197
- EmbeddedFlowTextVariant$1["Subtitle2"] = "SUBTITLE_2";
1198
- return EmbeddedFlowTextVariant$1;
1199
- }({});
1200
- /**
1201
- * Event types for action components.
1202
- *
1203
- * @experimental This API may change in future versions
1204
- */
1205
- let EmbeddedFlowEventType = /* @__PURE__ */ function(EmbeddedFlowEventType$1) {
1206
- /** Navigate back to the previous step */
1207
- EmbeddedFlowEventType$1["Back"] = "BACK";
1208
- /** Cancel the current operation */
1209
- EmbeddedFlowEventType$1["Cancel"] = "CANCEL";
1210
- /** Navigate to a different flow step or page */
1211
- EmbeddedFlowEventType$1["Navigate"] = "NAVIGATE";
1212
- /** Reset form fields to initial state */
1213
- EmbeddedFlowEventType$1["Reset"] = "RESET";
1214
- /** Submit form data to the server */
1215
- EmbeddedFlowEventType$1["Submit"] = "SUBMIT";
1216
- /** Trigger an action or event */
1217
- EmbeddedFlowEventType$1["Trigger"] = "TRIGGER";
1218
- return EmbeddedFlowEventType$1;
1219
- }({});
1220
-
1221
1341
  //#endregion
1222
1342
  //#region src/api/auth/executeEmbeddedUserOnboardingFlow.ts
1223
1343
  /**
@@ -10869,6 +10989,12 @@ const en_US = {
10869
10989
  "validation.pattern.invalid": "This value does not match the required format.",
10870
10990
  "validation.minLength.invalid": "This value is too short.",
10871
10991
  "validation.maxLength.invalid": "This value is too long.",
10992
+ "deviceGrant.errors.start": "Could not start device verification. Please reload this page.",
10993
+ "deviceGrant.errors.continue": "Could not continue device authorization. Please try again.",
10994
+ "deviceGrant.messages.complete": "Device authorized",
10995
+ "deviceGrant.messages.completeDescription": "You can return to your device.",
10996
+ "deviceGrant.messages.failed": "Device authorization failed",
10997
+ "deviceGrant.messages.failedDescription": "Return to your device and start again.",
10872
10998
  "signin.heading": "Sign In",
10873
10999
  "signin.subheading": "Welcome back! Please sign in to continue.",
10874
11000
  "signin.images.app_logo.alt": "Application logo",
@@ -10937,6 +11063,8 @@ const en_US = {
10937
11063
  "consent.essential_claims": "Essential Attributes",
10938
11064
  "consent.optional_claims": "Optional Attributes",
10939
11065
  "consent.authorize_scope": "Permissions",
11066
+ "consent.essential_scope": "Essential Permissions",
11067
+ "consent.optional_scope": "Optional Permissions",
10940
11068
  "consent.essential_claims.info": "These attributes are required for the service to function properly.",
10941
11069
  "consent.optional_claims.info": "These attributes are optional and can be provided at your discretion.",
10942
11070
  "consent.authorize_scope.info": "These permissions allow the service to access additional features.",
@@ -10954,6 +11082,8 @@ const en_US = {
10954
11082
  "consent.authorization_details.add_item": "{item}, add",
10955
11083
  "consent.authorization_details.add_back_item": "{item}, add back",
10956
11084
  "consent.authorization_details.new_item": "{label}, add",
11085
+ "consent.essential_scope.info": "These permissions are required for the service to function properly.",
11086
+ "consent.optional_scope.info": "These permissions are optional and can be granted at your discretion.",
10957
11087
  "errors.heading": "Error",
10958
11088
  "errors.signin.components.not.available": "Sign-in form is not available at the moment. Please try again later.",
10959
11089
  "errors.signin.initialization": "An error occurred while initializing. Please try again later.",
@@ -11208,6 +11338,12 @@ const fr_FR = {
11208
11338
  "validation.pattern.invalid": "Cette valeur ne correspond pas au format requis.",
11209
11339
  "validation.minLength.invalid": "Cette valeur est trop courte.",
11210
11340
  "validation.maxLength.invalid": "Cette valeur est trop longue.",
11341
+ "deviceGrant.errors.start": "Impossible de démarrer la vérification de l’appareil. Rechargez cette page.",
11342
+ "deviceGrant.errors.continue": "Impossible de poursuivre l’autorisation de l’appareil. Réessayez.",
11343
+ "deviceGrant.messages.complete": "Appareil autorisé",
11344
+ "deviceGrant.messages.completeDescription": "Vous pouvez revenir à votre appareil.",
11345
+ "deviceGrant.messages.failed": "Échec de l’autorisation de l’appareil",
11346
+ "deviceGrant.messages.failedDescription": "Revenez à votre appareil et recommencez.",
11211
11347
  "signin.heading": "Se connecter",
11212
11348
  "signin.subheading": "Entrez vos identifiants pour continuer.",
11213
11349
  "signin.images.app_logo.alt": "Logo de l'application",
@@ -11276,9 +11412,13 @@ const fr_FR = {
11276
11412
  "consent.essential_claims": "Attributs essentiels",
11277
11413
  "consent.optional_claims": "Attributs facultatifs",
11278
11414
  "consent.authorize_scope": "Autorisations",
11415
+ "consent.essential_scope": "Autorisations essentielles",
11416
+ "consent.optional_scope": "Autorisations facultatives",
11279
11417
  "consent.essential_claims.info": "Ces attributs sont nécessaires au bon fonctionnement du service.",
11280
11418
  "consent.optional_claims.info": "Ces attributs sont facultatifs et peuvent être fournis à votre discrétion.",
11281
11419
  "consent.authorize_scope.info": "Ces autorisations permettent au service d'accéder à des fonctionnalités supplémentaires.",
11420
+ "consent.essential_scope.info": "Ces autorisations sont nécessaires au bon fonctionnement du service.",
11421
+ "consent.optional_scope.info": "Ces autorisations sont facultatives et peuvent être accordées à votre discrétion.",
11282
11422
  "errors.heading": "Erreur",
11283
11423
  "consent.authorization_details.approve": "Approuver",
11284
11424
  "consent.authorization_details.show_more": "Afficher plus",
@@ -11547,6 +11687,12 @@ const te_IN = {
11547
11687
  "validation.pattern.invalid": "ఈ విలువ అవసరమైన ఆకృతికి సరిపోలడం లేదు.",
11548
11688
  "validation.minLength.invalid": "ఈ విలువ చాలా చిన్నది.",
11549
11689
  "validation.maxLength.invalid": "ఈ విలువ చాలా పెద్దది.",
11690
+ "deviceGrant.errors.start": "పరికర ధృవీకరణను ప్రారంభించలేకపోయింది. ఈ పేజీని మళ్లీ లోడ్ చేయండి.",
11691
+ "deviceGrant.errors.continue": "పరికర అధికారాన్ని కొనసాగించలేకపోయింది. మళ్లీ ప్రయత్నించండి.",
11692
+ "deviceGrant.messages.complete": "పరికరానికి అధికారం ఇచ్చారు",
11693
+ "deviceGrant.messages.completeDescription": "మీరు మీ పరికరానికి తిరిగి వెళ్లవచ్చు.",
11694
+ "deviceGrant.messages.failed": "పరికర అధికారం విఫలమైంది",
11695
+ "deviceGrant.messages.failedDescription": "మీ పరికరానికి తిరిగి వెళ్లి మళ్లీ ప్రారంభించండి.",
11550
11696
  "signin.heading": "సైన్ ఇన్ చేయండి",
11551
11697
  "signin.subheading": "కొనసాగించడానికి మీ వివరాలు ఇవ్వండి.",
11552
11698
  "signin.images.app_logo.alt": "అప్లికేషన్ లోగో",
@@ -11615,6 +11761,8 @@ const te_IN = {
11615
11761
  "consent.essential_claims": "ఆవశ్యక లక్షణాలు",
11616
11762
  "consent.optional_claims": "ఐచ్ఛిక లక్షణాలు",
11617
11763
  "consent.authorize_scope": "అనుమతులు",
11764
+ "consent.essential_scope": "అవసరమైన అనుమతులు",
11765
+ "consent.optional_scope": "ఐచ్ఛిక అనుమతులు",
11618
11766
  "consent.essential_claims.info": "సేవ సరిగ్గా పనిచేయడానికి ఈ లక్షణాలు అవసరం.",
11619
11767
  "consent.optional_claims.info": "ఈ లక్షణాలు ఐచ్ఛికం మరియు మీ విచక్షణ మేరకు అందించవచ్చు.",
11620
11768
  "consent.authorize_scope.info": "ఈ అనుమతులు సేవను అదనపు ఫీచర్‌లను యాక్సెస్ చేయడానికి అనుమతిస్తాయి.",
@@ -11632,6 +11780,8 @@ const te_IN = {
11632
11780
  "consent.authorization_details.add_item": "{item}, జోడించు",
11633
11781
  "consent.authorization_details.add_back_item": "{item}, మళ్లీ జోడించు",
11634
11782
  "consent.authorization_details.new_item": "{label}, జోడించు",
11783
+ "consent.essential_scope.info": "సేవ సరిగ్గా పనిచేయడానికి ఈ అనుమతులు అవసరం.",
11784
+ "consent.optional_scope.info": "ఈ అనుమతులు ఐచ్ఛికం మరియు మీ విచక్షణ మేరకు మంజూరు చేయవచ్చు.",
11635
11785
  "errors.heading": "లోపం",
11636
11786
  "errors.signin.initialization": "ప్రారంభించేటప్పుడు లోపం వచ్చింది. దయచేసి తరువాత మళ్లీ ప్రయత్నించండి.",
11637
11787
  "errors.signin.flow.failure": "సైన్ ఇన్ ప్రక్రియలో లోపం వచ్చింది. దయచేసి తరువాత మళ్లీ ప్రయత్నించండి.",
@@ -11886,6 +12036,12 @@ const hi_IN = {
11886
12036
  "validation.pattern.invalid": "यह मान आवश्यक प्रारूप से मेल नहीं खाता।",
11887
12037
  "validation.minLength.invalid": "यह मान बहुत छोटा है।",
11888
12038
  "validation.maxLength.invalid": "यह मान बहुत लंबा है।",
12039
+ "deviceGrant.errors.start": "डिवाइस सत्यापन शुरू नहीं हो सका। कृपया यह पेज फिर से लोड करें।",
12040
+ "deviceGrant.errors.continue": "डिवाइस प्राधिकरण जारी नहीं रह सका। कृपया फिर से प्रयास करें।",
12041
+ "deviceGrant.messages.complete": "डिवाइस अधिकृत है",
12042
+ "deviceGrant.messages.completeDescription": "आप अपने डिवाइस पर लौट सकते हैं।",
12043
+ "deviceGrant.messages.failed": "डिवाइस प्राधिकरण विफल हुआ",
12044
+ "deviceGrant.messages.failedDescription": "अपने डिवाइस पर लौटें और फिर से शुरू करें।",
11889
12045
  "signin.heading": "साइन इन",
11890
12046
  "signin.subheading": "जारी रखने के लिए अपनी प्रमाणिक जानकारी दर्ज करें।",
11891
12047
  "signin.images.app_logo.alt": "एप्लिकेशन लोगो",
@@ -11954,6 +12110,8 @@ const hi_IN = {
11954
12110
  "consent.essential_claims": "आवश्यक विशेषताएँ",
11955
12111
  "consent.optional_claims": "वैकल्पिक विशेषताएँ",
11956
12112
  "consent.authorize_scope": "अनुमतियाँ",
12113
+ "consent.essential_scope": "आवश्यक अनुमतियाँ",
12114
+ "consent.optional_scope": "वैकल्पिक अनुमतियाँ",
11957
12115
  "consent.essential_claims.info": "सेवा के सही ढंग से कार्य करने के लिए ये विशेषताएँ आवश्यक हैं।",
11958
12116
  "consent.optional_claims.info": "ये विशेषताएँ वैकल्पिक हैं और आपके विवेकानुसार प्रदान की जा सकती हैं।",
11959
12117
  "consent.authorize_scope.info": "ये अनुमतियाँ सेवा को अतिरिक्त सुविधाओं तक पहुँचने की अनुमति देती हैं।",
@@ -11971,6 +12129,8 @@ const hi_IN = {
11971
12129
  "consent.authorization_details.add_item": "{item}, जोड़ें",
11972
12130
  "consent.authorization_details.add_back_item": "{item}, फिर से जोड़ें",
11973
12131
  "consent.authorization_details.new_item": "{label}, जोड़ें",
12132
+ "consent.essential_scope.info": "सेवा के सही ढंग से कार्य करने के लिए ये अनुमतियाँ आवश्यक हैं।",
12133
+ "consent.optional_scope.info": "ये अनुमतियाँ वैकल्पिक हैं और आपके विवेकानुसार दी जा सकती हैं।",
11974
12134
  "errors.heading": "त्रुटि",
11975
12135
  "errors.signin.initialization": "इनिशियलाइज़ेशन में त्रुटि हुई। कृपया बाद में पुनः प्रयास करें।",
11976
12136
  "errors.signin.flow.failure": "साइन-इन प्रक्रिया में त्रुटि। कृपया बाद में पुनः प्रयास करें।",
@@ -12225,6 +12385,12 @@ const pt_BR = {
12225
12385
  "validation.pattern.invalid": "Este valor não corresponde ao formato necessário.",
12226
12386
  "validation.minLength.invalid": "Este valor é muito curto.",
12227
12387
  "validation.maxLength.invalid": "Este valor é muito longo.",
12388
+ "deviceGrant.errors.start": "Não foi possível iniciar a verificação do dispositivo. Recarregue esta página.",
12389
+ "deviceGrant.errors.continue": "Não foi possível continuar a autorização do dispositivo. Tente novamente.",
12390
+ "deviceGrant.messages.complete": "Dispositivo autorizado",
12391
+ "deviceGrant.messages.completeDescription": "Você pode voltar ao seu dispositivo.",
12392
+ "deviceGrant.messages.failed": "Falha na autorização do dispositivo",
12393
+ "deviceGrant.messages.failedDescription": "Volte ao seu dispositivo e comece novamente.",
12228
12394
  "signin.heading": "Entrar",
12229
12395
  "signin.subheading": "Digite suas credencias para continuar.",
12230
12396
  "signin.images.app_logo.alt": "Logotipo do aplicativo",
@@ -12293,6 +12459,8 @@ const pt_BR = {
12293
12459
  "consent.essential_claims": "Atributos essenciais",
12294
12460
  "consent.optional_claims": "Atributos opcionais",
12295
12461
  "consent.authorize_scope": "Permissões",
12462
+ "consent.essential_scope": "Permissões essenciais",
12463
+ "consent.optional_scope": "Permissões opcionais",
12296
12464
  "consent.essential_claims.info": "Esses atributos são necessários para o funcionamento adequado do serviço.",
12297
12465
  "consent.optional_claims.info": "Esses atributos são opcionais e podem ser fornecidos a seu critério.",
12298
12466
  "consent.authorize_scope.info": "Essas permissões permitem que o serviço acesse recursos adicionais.",
@@ -12310,6 +12478,8 @@ const pt_BR = {
12310
12478
  "consent.authorization_details.add_item": "{item}, adicionar",
12311
12479
  "consent.authorization_details.add_back_item": "{item}, adicionar novamente",
12312
12480
  "consent.authorization_details.new_item": "{label}, adicionar",
12481
+ "consent.essential_scope.info": "Essas permissões são necessárias para o funcionamento adequado do serviço.",
12482
+ "consent.optional_scope.info": "Essas permissões são opcionais e podem ser concedidas a seu critério.",
12313
12483
  "errors.heading": "Erro",
12314
12484
  "errors.signin.initialization": "Ocorreu um erro ao inicializar. Tente novamente mais tarde.",
12315
12485
  "errors.signin.flow.failure": "Ocorreu um erro durante o login. Tente novamente mais tarde.",
@@ -12564,6 +12734,12 @@ const pt_PT = {
12564
12734
  "validation.pattern.invalid": "Este valor não corresponde ao formato necessário.",
12565
12735
  "validation.minLength.invalid": "Este valor é demasiado curto.",
12566
12736
  "validation.maxLength.invalid": "Este valor é demasiado longo.",
12737
+ "deviceGrant.errors.start": "Não foi possível iniciar a verificação do dispositivo. Atualize esta página.",
12738
+ "deviceGrant.errors.continue": "Não foi possível continuar a autorização do dispositivo. Tente novamente.",
12739
+ "deviceGrant.messages.complete": "Dispositivo autorizado",
12740
+ "deviceGrant.messages.completeDescription": "Pode regressar ao seu dispositivo.",
12741
+ "deviceGrant.messages.failed": "Falha na autorização do dispositivo",
12742
+ "deviceGrant.messages.failedDescription": "Regresse ao seu dispositivo e comece novamente.",
12567
12743
  "signin.heading": "Iniciar Sessão",
12568
12744
  "signin.subheading": "Introduza as suas credenciais para continuar.",
12569
12745
  "signin.images.app_logo.alt": "Logótipo da aplicação",
@@ -12632,6 +12808,8 @@ const pt_PT = {
12632
12808
  "consent.essential_claims": "Atributos essenciais",
12633
12809
  "consent.optional_claims": "Atributos opcionais",
12634
12810
  "consent.authorize_scope": "Permissões",
12811
+ "consent.essential_scope": "Permissões essenciais",
12812
+ "consent.optional_scope": "Permissões opcionais",
12635
12813
  "consent.essential_claims.info": "Estes atributos são necessários para o correto funcionamento do serviço.",
12636
12814
  "consent.optional_claims.info": "Estes atributos são opcionais e podem ser fornecidos ao seu critério.",
12637
12815
  "consent.authorize_scope.info": "Estas permissões permitem que o serviço aceda a funcionalidades adicionais.",
@@ -12649,6 +12827,8 @@ const pt_PT = {
12649
12827
  "consent.authorization_details.add_item": "{item}, adicionar",
12650
12828
  "consent.authorization_details.add_back_item": "{item}, adicionar novamente",
12651
12829
  "consent.authorization_details.new_item": "{label}, adicionar",
12830
+ "consent.essential_scope.info": "Estas permissões são necessárias para o correto funcionamento do serviço.",
12831
+ "consent.optional_scope.info": "Estas permissões são opcionais e podem ser concedidas ao seu critério.",
12652
12832
  "errors.heading": "Erro",
12653
12833
  "errors.signin.initialization": "Ocorreu um erro ao inicializar. Tente novamente mais tarde.",
12654
12834
  "errors.signin.flow.failure": "Ocorreu um erro durante o início de sessão. Tente novamente mais tarde.",
@@ -12903,6 +13083,12 @@ const ta_IN = {
12903
13083
  "validation.pattern.invalid": "இந்த மதிப்பு தேவையான வடிவத்துடன் பொருந்தவில்லை.",
12904
13084
  "validation.minLength.invalid": "இந்த மதிப்பு மிகவும் குறுகியது.",
12905
13085
  "validation.maxLength.invalid": "இந்த மதிப்பு மிகவும் நீளமானது.",
13086
+ "deviceGrant.errors.start": "சாதனச் சரிபார்ப்பைத் தொடங்க முடியவில்லை. இந்தப் பக்கத்தை மீண்டும் ஏற்றவும்.",
13087
+ "deviceGrant.errors.continue": "சாதன அங்கீகாரத்தைத் தொடர முடியவில்லை. மீண்டும் முயற்சிக்கவும்.",
13088
+ "deviceGrant.messages.complete": "சாதனத்திற்கு அங்கீகாரம் வழங்கப்பட்டது",
13089
+ "deviceGrant.messages.completeDescription": "உங்கள் சாதனத்திற்குத் திரும்பலாம்.",
13090
+ "deviceGrant.messages.failed": "சாதன அங்கீகாரம் தோல்வியடைந்தது",
13091
+ "deviceGrant.messages.failedDescription": "உங்கள் சாதனத்திற்குத் திரும்பி மீண்டும் தொடங்கவும்.",
12906
13092
  "signin.heading": "உள்நுழை",
12907
13093
  "signin.subheading": "தொடர உங்கள் சான்றுகளை உள்ளிடவும்.",
12908
13094
  "signin.images.app_logo.alt": "பயன்பாட்டு லோகோ",
@@ -12971,6 +13157,8 @@ const ta_IN = {
12971
13157
  "consent.essential_claims": "அத்தியாவசிய பண்புகள்",
12972
13158
  "consent.optional_claims": "விருப்பத் பண்புகள்",
12973
13159
  "consent.authorize_scope": "அனுமதிகள்",
13160
+ "consent.essential_scope": "அத்தியாவசிய அனுமதிகள்",
13161
+ "consent.optional_scope": "விருப்ப அனுமதிகள்",
12974
13162
  "consent.essential_claims.info": "சேவை சரியாக செயல்பட இந்த பண்புகள் தேவை.",
12975
13163
  "consent.optional_claims.info": "இந்த பண்புகள் விருப்பத்தேர்வு மற்றும் உங்கள் விருப்பப்படி வழங்கப்படலாம்.",
12976
13164
  "consent.authorize_scope.info": "இந்த அனுமதிகள் கூடுதல் அம்சங்களை அணுக சேவைக்கு உதவுகின்றன.",
@@ -12988,6 +13176,8 @@ const ta_IN = {
12988
13176
  "consent.authorization_details.add_item": "{item}, சேர்",
12989
13177
  "consent.authorization_details.add_back_item": "{item}, மீண்டும் சேர்",
12990
13178
  "consent.authorization_details.new_item": "{label}, சேர்",
13179
+ "consent.essential_scope.info": "சேவை சரியாக செயல்பட இந்த அனுமதிகள் தேவை.",
13180
+ "consent.optional_scope.info": "இந்த அனுமதிகள் விருப்பமானவை; உங்கள் விருப்பப்படி வழங்கலாம்.",
12991
13181
  "errors.heading": "பிழை",
12992
13182
  "errors.signin.initialization": "தொடக்கத்தில் பிழை ஏற்பட்டது. பின்னர் மீண்டும் முயற்சிக்கவும்.",
12993
13183
  "errors.signin.flow.failure": "உள்நுழைவு செயல்பாட்டின் போது பிழை ஏற்பட்டது. பின்னர் மீண்டும் முயற்சிக்கவும்.",
@@ -13242,6 +13432,12 @@ const si_LK = {
13242
13432
  "validation.pattern.invalid": "මෙම අගය අවශ්‍ය ආකෘතියට නොගැලපේ.",
13243
13433
  "validation.minLength.invalid": "මෙම අගය ඉතා කෙටියි.",
13244
13434
  "validation.maxLength.invalid": "මෙම අගය ඉතා දිගයි.",
13435
+ "deviceGrant.errors.start": "උපාංගය සත්‍යාපනය ආරම්භ කළ නොහැක. මෙම පිටුව නැවත පූරණය කරන්න.",
13436
+ "deviceGrant.errors.continue": "උපාංග අවසරය ඉදිරියට ගෙන යා නොහැක. නැවත උත්සාහ කරන්න.",
13437
+ "deviceGrant.messages.complete": "උපාංගයට අවසර ලබා දී ඇත",
13438
+ "deviceGrant.messages.completeDescription": "ඔබට ඔබගේ උපාංගය වෙත ආපසු යා හැක.",
13439
+ "deviceGrant.messages.failed": "උපාංග අවසරය අසාර්ථක විය",
13440
+ "deviceGrant.messages.failedDescription": "ඔබගේ උපාංගය වෙත ආපසු ගොස් නැවත ආරම්භ කරන්න.",
13245
13441
  "signin.heading": "ලොග් වෙන්න",
13246
13442
  "signin.subheading": "ඉදිරියට යාමට ඔබේ සත්‍යාපන තොරතුරු ඇතුළත් කරන්න.",
13247
13443
  "signin.images.app_logo.alt": "යෙදුමේ ලාංඡනය",
@@ -13310,6 +13506,8 @@ const si_LK = {
13310
13506
  "consent.essential_claims": "අත්‍යවශ්‍ය ගුණාංග",
13311
13507
  "consent.optional_claims": "විකල්ප ගුණාංග",
13312
13508
  "consent.authorize_scope": "අවසර",
13509
+ "consent.essential_scope": "අත්‍යවශ්‍ය අවසර",
13510
+ "consent.optional_scope": "විකල්ප අවසර",
13313
13511
  "consent.essential_claims.info": "සේවාව නිසි ලෙස ක්‍රියාත්මක වීම සඳහා මෙම ගුණාංග අවශ්‍ය වේ.",
13314
13512
  "consent.optional_claims.info": "මෙම ගුණාංග විකල්ප වන අතර ඔබේ අභිමතය පරිදි සැපයිය හැක.",
13315
13513
  "consent.authorize_scope.info": "මෙම අවසරයන් මගින් සේවාවට අමතර විශේෂාංග වෙත ප්‍රවේශ වීමට ඉඩ සලසයි.",
@@ -13327,6 +13525,8 @@ const si_LK = {
13327
13525
  "consent.authorization_details.add_item": "{item}, එක් කරන්න",
13328
13526
  "consent.authorization_details.add_back_item": "{item}, නැවත එක් කරන්න",
13329
13527
  "consent.authorization_details.new_item": "{label}, එක් කරන්න",
13528
+ "consent.essential_scope.info": "සේවාව නිසි ලෙස ක්‍රියාත්මක වීම සඳහා මෙම අවසර අවශ්‍ය වේ.",
13529
+ "consent.optional_scope.info": "මෙම අවසර විකල්ප වන අතර ඔබේ අභිමතය පරිදි ලබා දිය හැක.",
13330
13530
  "errors.heading": "දෝෂය",
13331
13531
  "errors.signin.initialization": "ආරම්භ කිරීමේදී දෝෂයක් සිදු විය. කරුණාකර පසුව නැවත උත්සාහ කරන්න.",
13332
13532
  "errors.signin.flow.failure": "ලොග් වීමේදී දෝෂයක් සිදු විය. කරුණාකර පසුව නැවත උත්සාහ කරන්න.",
@@ -14742,6 +14942,7 @@ exports.evaluateChangePasswordForm = evaluateChangePasswordForm_default;
14742
14942
  exports.evaluatePasswordPolicy = evaluatePasswordPolicy_default;
14743
14943
  exports.evaluateValidationRule = evaluateValidationRule_default;
14744
14944
  exports.executeAdministrationFlow = executeAdministrationFlow_default;
14945
+ exports.executeEmbeddedDeviceGrantFlow = executeEmbeddedDeviceGrantFlow_default;
14745
14946
  exports.executeEmbeddedRecoveryFlow = executeEmbeddedRecoveryFlow_default;
14746
14947
  exports.executeEmbeddedSignInFlow = executeEmbeddedSignInFlow_default;
14747
14948
  exports.executeEmbeddedSignUpFlow = executeEmbeddedSignUpFlow_default;