@ory/elements-react 1.0.0-next.16 → 1.0.0-next.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/api-report/elements-react-client.api.json +144 -16
  3. package/api-report/elements-react-client.api.md +19 -8
  4. package/api-report/elements-react-theme.api.json +197 -0
  5. package/api-report/elements-react-theme.api.md +17 -2
  6. package/api-report/elements-react.api.json +7 -3
  7. package/api-report/elements-react.api.md +4 -2
  8. package/api-report/temp/elements-react-client.api.md +33 -0
  9. package/api-report/temp/elements-react-theme.api.md +149 -0
  10. package/api-report/temp/elements-react.api.md +423 -0
  11. package/dist/client/config.d.mts +21 -0
  12. package/dist/client/config.d.ts +21 -0
  13. package/dist/client/config.js +77 -0
  14. package/dist/client/config.js.map +1 -0
  15. package/dist/client/config.mjs +51 -0
  16. package/dist/client/config.mjs.map +1 -0
  17. package/dist/client/frontendClient.d.mts +3 -1
  18. package/dist/client/frontendClient.d.ts +3 -1
  19. package/dist/client/frontendClient.js +14 -2
  20. package/dist/client/frontendClient.js.map +1 -1
  21. package/dist/client/frontendClient.mjs +14 -2
  22. package/dist/client/frontendClient.mjs.map +1 -1
  23. package/dist/client/index.d.mts +3 -1
  24. package/dist/client/index.d.ts +3 -1
  25. package/dist/client/index.js +4 -0
  26. package/dist/client/index.js.map +1 -1
  27. package/dist/client/index.mjs +5 -0
  28. package/dist/client/index.mjs.map +1 -1
  29. package/dist/client/session-provider.d.mts +62 -0
  30. package/dist/client/session-provider.d.ts +62 -0
  31. package/dist/client/session-provider.js +96 -0
  32. package/dist/client/session-provider.js.map +1 -0
  33. package/dist/client/session-provider.mjs +71 -0
  34. package/dist/client/session-provider.mjs.map +1 -0
  35. package/dist/client/useSession.d.mts +22 -31
  36. package/dist/client/useSession.d.ts +22 -31
  37. package/dist/client/useSession.js +7 -49
  38. package/dist/client/useSession.js.map +1 -1
  39. package/dist/client/useSession.mjs +8 -49
  40. package/dist/client/useSession.mjs.map +1 -1
  41. package/dist/index.d.mts +5 -4
  42. package/dist/index.d.ts +5 -4
  43. package/dist/index.js +148 -62
  44. package/dist/index.js.map +1 -1
  45. package/dist/index.mjs +151 -65
  46. package/dist/index.mjs.map +1 -1
  47. package/dist/theme/default/index.css +358 -251
  48. package/dist/theme/default/index.css.map +1 -1
  49. package/dist/theme/default/index.d.mts +14 -3
  50. package/dist/theme/default/index.d.ts +14 -3
  51. package/dist/theme/default/index.js +932 -837
  52. package/dist/theme/default/index.js.map +1 -1
  53. package/dist/theme/default/index.mjs +815 -715
  54. package/dist/theme/default/index.mjs.map +1 -1
  55. package/jest.config.ts +7 -1
  56. package/package.json +2 -1
  57. package/postcss.config.ts +1 -0
  58. package/tailwind.config.ts +14 -13
  59. package/tsconfig.json +4 -3
  60. package/variables-processed.json +385 -187
  61. package/.eslintrc.js +0 -63
@@ -6,8 +6,8 @@ import { jsx, jsxs } from "react/jsx-runtime";
6
6
  var SvgOryBadgeHorizontal = (props) => {
7
7
  var _a, _b;
8
8
  return /* @__PURE__ */ jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, fill: "none", ...props, children: [
9
- /* @__PURE__ */ jsx("path", { fill: "#fff", d: "M18.007 8h-1.71l2.007-3.996L16.296 0h1.711l1.145 2.301L20.327 0H22z" }),
10
- /* @__PURE__ */ jsx("path", { fill: "#fff", fillRule: "evenodd", d: "M12.902 4.86a2.47 2.47 0 0 0 1.796-2.365v-.038C14.687 1.097 13.592 0 12.245 0H9.037v1.44l1.208 1.985H9.04V8h1.51V4.949h.633L13.04 8h1.775zm-.876-1.431h.223c.52 0 .943-.427.943-.953a.95.95 0 0 0-.943-.952h-1.39zM4 0a4 4 0 1 0-.001 7.999A4 4 0 0 0 4 0M1.524 4a2.476 2.476 0 1 0 4.952 0 2.476 2.476 0 0 0-4.952 0", clipRule: "evenodd" })
9
+ /* @__PURE__ */ jsx("path", { fill: "#0F172A", d: "M18.007 8h-1.71l2.007-3.996L16.296 0h1.711l1.145 2.301L20.327 0H22z" }),
10
+ /* @__PURE__ */ jsx("path", { fill: "#0F172A", fillRule: "evenodd", d: "M12.902 4.86a2.47 2.47 0 0 0 1.796-2.365v-.038C14.687 1.097 13.592 0 12.245 0H9.037v1.44l1.208 1.985H9.04V8h1.51V4.949h.633L13.04 8h1.775zm-.876-1.431h.223c.52 0 .943-.427.943-.953a.95.95 0 0 0-.943-.952h-1.39zM4 0a4 4 0 1 0-.001 7.999A4 4 0 0 0 4 0M1.524 4a2.476 2.476 0 1 0 4.952 0 2.476 2.476 0 0 0-4.952 0", clipRule: "evenodd" })
11
11
  ] });
12
12
  };
13
13
  var ory_badge_horizontal_default = SvgOryBadgeHorizontal;
@@ -18,8 +18,8 @@ import { jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
18
18
  var SvgOryBadgeVertical = (props) => {
19
19
  var _a, _b;
20
20
  return /* @__PURE__ */ jsxs2("svg", { xmlns: "http://www.w3.org/2000/svg", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, fill: "none", ...props, children: [
21
- /* @__PURE__ */ jsx2("path", { fill: "#fff", d: "M8 3.993v1.71L4.004 3.697 0 5.704V3.993l2.301-1.145L0 1.673V0z" }),
22
- /* @__PURE__ */ jsx2("path", { fill: "#fff", fillRule: "evenodd", d: "M4.86 9.099a2.47 2.47 0 0 0-2.365-1.797h-.038C1.097 7.313 0 8.408 0 9.755v3.208h1.44l1.985-1.208v1.204H8v-1.51H4.949v-.633L8 8.96V7.185zm-1.431.875v-.223a.95.95 0 0 0-.953-.943.95.95 0 0 0-.952.943v1.39zM0 18a4 4 0 1 0 8 0 4 4 0 0 0-8 0m4 2.476a2.476 2.476 0 1 0 0-4.952 2.476 2.476 0 0 0 0 4.952", clipRule: "evenodd" })
21
+ /* @__PURE__ */ jsx2("path", { fill: "#0F172A", d: "M8 3.993v1.71L4.004 3.697 0 5.704V3.993l2.301-1.145L0 1.673V0z" }),
22
+ /* @__PURE__ */ jsx2("path", { fill: "#0F172A", fillRule: "evenodd", d: "M4.86 9.099a2.47 2.47 0 0 0-2.365-1.797h-.038C1.097 7.313 0 8.408 0 9.755v3.208h1.44l1.985-1.208v1.204H8v-1.51H4.949v-.633L8 8.96V7.185zm-1.431.875v-.223a.95.95 0 0 0-.953-.943.95.95 0 0 0-.952.943v1.39zM0 18a4 4 0 1 0 8 0 4 4 0 0 0-8 0m4 2.476a2.476 2.476 0 1 0 0-4.952 2.476 2.476 0 0 0 0 4.952", clipRule: "evenodd" })
23
23
  ] });
24
24
  };
25
25
  var ory_badge_vertical_default = SvgOryBadgeVertical;
@@ -27,9 +27,9 @@ var ory_badge_vertical_default = SvgOryBadgeVertical;
27
27
  // src/theme/default/components/card/badge.tsx
28
28
  import { jsx as jsx3, jsxs as jsxs3 } from "react/jsx-runtime";
29
29
  function Badge() {
30
- return /* @__PURE__ */ jsxs3("div", { className: "font-bold bg-branding-bg-default absolute max-md:rounded-b-md p-2 max-md:bottom-0 max-md:translate-y-full max-md:left-8 md:right-0 md:translate-x-full md:top-8 md:rounded-r-md", children: [
31
- /* @__PURE__ */ jsx3(ory_badge_horizontal_default, { width: 22, height: 8, className: "md:hidden" }),
32
- /* @__PURE__ */ jsx3(ory_badge_vertical_default, { width: 8, height: 22, className: "max-md:hidden" })
30
+ return /* @__PURE__ */ jsxs3("div", { className: "absolute bg-ory-background-default p-2 font-bold max-sm:bottom-0 max-sm:left-8 max-sm:translate-y-full max-sm:rounded-b-md sm:right-0 sm:top-8 sm:translate-x-full sm:rounded-r-lg border-ory-border-default border max-sm:py-[7px] sm:pl-[7px]", children: [
31
+ /* @__PURE__ */ jsx3(ory_badge_horizontal_default, { width: 22, height: 8, className: "sm:hidden" }),
32
+ /* @__PURE__ */ jsx3(ory_badge_vertical_default, { width: 8, height: 22, className: "max-sm:hidden" })
33
33
  ] });
34
34
  }
35
35
 
@@ -76,7 +76,7 @@ function LoginCardFooter() {
76
76
  if (returnTo) {
77
77
  registrationLink += `?return_to=${returnTo}`;
78
78
  }
79
- return /* @__PURE__ */ jsxs4("span", { className: "text-sm font-normal antialiased leading-normal", children: [
79
+ return /* @__PURE__ */ jsxs4("span", { className: "font-normal leading-normal antialiased text-interface-foreground-default-primary", children: [
80
80
  intl.formatMessage({
81
81
  id: "login.registration-label",
82
82
  defaultMessage: "No account?"
@@ -85,7 +85,7 @@ function LoginCardFooter() {
85
85
  /* @__PURE__ */ jsx4(
86
86
  "a",
87
87
  {
88
- className: "text-links-link-default hover:underline hover:text-link-hover transition-colors",
88
+ className: "text-button-link-brand-brand transition-colors hover:text-button-link-brand-brand-hover underline",
89
89
  href: registrationLink,
90
90
  children: intl.formatMessage({
91
91
  id: "login.registration-button",
@@ -119,10 +119,10 @@ function RegistrationCardFooter() {
119
119
  if (returnTo) {
120
120
  loginLink += `?return_to=${returnTo}`;
121
121
  }
122
- return /* @__PURE__ */ jsx4("span", { className: "text-sm font-normal antialiased leading-normal", children: formState.current === "method_active" ? /* @__PURE__ */ jsx4(Fragment, { children: screenSelectionNode && /* @__PURE__ */ jsx4(
122
+ return /* @__PURE__ */ jsx4("span", { className: "font-normal leading-normal antialiased", children: formState.current === "method_active" ? /* @__PURE__ */ jsx4(Fragment, { children: screenSelectionNode && /* @__PURE__ */ jsx4(
123
123
  "button",
124
124
  {
125
- className: "font-medium text-links-link-default",
125
+ className: "font-medium text-button-link-brand-brand hover:text-button-link-brand-brand-hover",
126
126
  type: "submit",
127
127
  onClick: handleScreenSelection,
128
128
  children: intl.formatMessage({
@@ -139,7 +139,7 @@ function RegistrationCardFooter() {
139
139
  /* @__PURE__ */ jsx4(
140
140
  "a",
141
141
  {
142
- className: "text-links-link-default hover:underline hover:text-link-hover transition-colors",
142
+ className: "text-button-link-brand-brand transition-colors hover:text-button-link-brand-brand-hover underline",
143
143
  href: loginLink,
144
144
  children: intl.formatMessage({
145
145
  id: "registration.login-button",
@@ -160,7 +160,10 @@ function VerificationCardFooter() {
160
160
  import { useComponents, useOryFlow as useOryFlow3 } from "@ory/elements-react";
161
161
 
162
162
  // src/theme/default/utils/constructCardHeader.ts
163
- import { FlowType as FlowType2, isUiNodeInputAttributes } from "@ory/client-fetch";
163
+ import {
164
+ FlowType as FlowType2,
165
+ isUiNodeInputAttributes
166
+ } from "@ory/client-fetch";
164
167
  import { useIntl as useIntl2 } from "react-intl";
165
168
  function joinWithCommaOr(list, orText = "or") {
166
169
  if (list.length === 0) {
@@ -172,8 +175,9 @@ function joinWithCommaOr(list, orText = "or") {
172
175
  return `${list.join(", ")} ${orText} ${last}`;
173
176
  }
174
177
  }
175
- function useCardHeaderText(nodes, opts) {
176
- var _a;
178
+ function useCardHeaderText(container, opts) {
179
+ var _a, _b;
180
+ const nodes = container.nodes;
177
181
  const intl = useIntl2();
178
182
  switch (opts.flowType) {
179
183
  case FlowType2.Recovery:
@@ -227,6 +231,24 @@ function useCardHeaderText(nodes, opts) {
227
231
  id: "verification.subtitle"
228
232
  })
229
233
  };
234
+ case FlowType2.Login: {
235
+ const accountLinkingMessage = (_a = container.messages) == null ? void 0 : _a.find(
236
+ (m) => m.id === 1010016
237
+ );
238
+ if (accountLinkingMessage) {
239
+ return {
240
+ title: intl.formatMessage({
241
+ id: "account-linking.title"
242
+ }),
243
+ description: intl.formatMessage(
244
+ {
245
+ id: "identities.messages.1010016"
246
+ },
247
+ accountLinkingMessage.context
248
+ )
249
+ };
250
+ }
251
+ }
230
252
  }
231
253
  const parts = [];
232
254
  if (nodes.find((node) => node.group === "password")) {
@@ -277,7 +299,7 @@ function useCardHeaderText(nodes, opts) {
277
299
  id: "card.header.parts.identifier-first"
278
300
  },
279
301
  {
280
- identifierLabel: (_a = identifier.meta.label) == null ? void 0 : _a.text
302
+ identifierLabel: (_b = identifier.meta.label) == null ? void 0 : _b.text
281
303
  }
282
304
  )
283
305
  );
@@ -383,23 +405,24 @@ function DefaultCurrentIdentifierButton() {
383
405
  "autocomplete",
384
406
  "node_type"
385
407
  ]);
386
- return /* @__PURE__ */ jsxs5(
408
+ return /* @__PURE__ */ jsx6(
387
409
  "a",
388
410
  {
389
- className: "cursor-pointer py-[5px] px-3 rounded-full border border-button-identifier-border-default bg-button-identifier-bg-default hover:border-button-identifier-border-hover hover:bg-button-identifier-bg-hover transition-colors inline-flex gap-1 items-center self-start max-w-full",
411
+ className: "group inline-flex max-w-full cursor-pointer items-center gap-1 self-start rounded-full border px-[11px] py-[5px] transition-colors border-button-identifier-border-border-default bg-button-identifier-background-default hover:border-button-identifier-border-border-hover hover:bg-button-identifier-background-hover",
390
412
  ...attributes,
391
413
  href: initFlowUrl,
392
414
  title: `Adjust ${nodeBackButton == null ? void 0 : nodeBackButton.attributes.value}`,
393
- children: [
415
+ children: /* @__PURE__ */ jsxs5("span", { className: "inline-flex min-h-5 items-center gap-2 overflow-hidden text-ellipsis", children: [
394
416
  /* @__PURE__ */ jsx6(
395
417
  arrow_left_default,
396
418
  {
397
419
  size: 16,
398
- className: "text-button-identifier-fg-subtle shrink-0"
420
+ stroke: "1",
421
+ className: "shrink-0 text-button-identifier-foreground-default group-hover:text-button-identifier-foreground-hover"
399
422
  }
400
423
  ),
401
- /* @__PURE__ */ jsx6("span", { className: "text-sm font-medium text-button-identifier-fg-default text-ellipsis overflow-hidden text-nowrap", children: nodeBackButton == null ? void 0 : nodeBackButton.attributes.value })
402
- ]
424
+ /* @__PURE__ */ jsx6("span", { className: "overflow-hidden text-ellipsis text-nowrap text-sm font-medium text-button-identifier-foreground-default group-hover:text-button-identifier-foreground-hover", children: nodeBackButton == null ? void 0 : nodeBackButton.attributes.value })
425
+ ] })
403
426
  }
404
427
  );
405
428
  }
@@ -441,18 +464,15 @@ function InnerCardHeader({ title, text }) {
441
464
  return /* @__PURE__ */ jsxs6("header", { className: "flex flex-col gap-8 antialiased", children: [
442
465
  /* @__PURE__ */ jsx7(Card.Logo, {}),
443
466
  /* @__PURE__ */ jsxs6("div", { className: "flex flex-col gap-2", children: [
444
- /* @__PURE__ */ jsx7("h2", { className: "font-semibold text-lg text-dialog-fg-default leading-normal", children: title }),
445
- /* @__PURE__ */ jsx7("p", { className: "text-sm leading-normal text-dialog-fg-subtle", children: text }),
467
+ /* @__PURE__ */ jsx7("h2", { className: "text-lg font-semibold leading-normal text-interface-foreground-default-primary", children: title }),
468
+ /* @__PURE__ */ jsx7("p", { className: "leading-normal text-interface-foreground-default-secondary", children: text }),
446
469
  /* @__PURE__ */ jsx7(DefaultCurrentIdentifierButton, {})
447
470
  ] })
448
471
  ] });
449
472
  }
450
473
  function DefaultCardHeader() {
451
474
  const context = useOryFlow3();
452
- const { title, description } = useCardHeaderText(
453
- context.flow.ui.nodes,
454
- context
455
- );
475
+ const { title, description } = useCardHeaderText(context.flow.ui, context);
456
476
  return /* @__PURE__ */ jsx7(InnerCardHeader, { title, text: description });
457
477
  }
458
478
 
@@ -464,15 +484,21 @@ function DefaultCardLogo() {
464
484
  if (flow.config.logoUrl) {
465
485
  return /* @__PURE__ */ jsx8("img", { src: flow.config.logoUrl, width: 100, height: 36, alt: "Logo" });
466
486
  }
467
- return /* @__PURE__ */ jsx8("h1", { className: "text-xl font-semibold leading-normal text-dialog-fg-default", children: flow.config.name });
487
+ return /* @__PURE__ */ jsx8("h1", { className: "text-xl font-semibold leading-normal text-interface-foreground-default-primary", children: flow.config.name });
488
+ }
489
+
490
+ // src/theme/default/components/card/layout.tsx
491
+ import { jsx as jsx9 } from "react/jsx-runtime";
492
+ function DefaultCardLayout({ children }) {
493
+ return /* @__PURE__ */ jsx9("main", { className: "p-4 pb-8 flex items-center justify-center flex-col gap-8 min-h-screen", children });
468
494
  }
469
495
 
470
496
  // src/theme/default/components/card/index.tsx
471
- import { jsx as jsx9, jsxs as jsxs7 } from "react/jsx-runtime";
497
+ import { jsx as jsx10, jsxs as jsxs7 } from "react/jsx-runtime";
472
498
  function DefaultCard({ children }) {
473
- return /* @__PURE__ */ jsx9("div", { className: "flex-1 flex-col flex justify-center items-center font-sans", children: /* @__PURE__ */ jsxs7("div", { className: "grid grid-cols-1 max-w-sm md:max-w-[480px] md:w-[480px] gap-8 bg-dialog-bg-default px-8 md:px-12 py-12 md:py-14 relative rounded-border-radius-cards border border-dialog-border-default", children: [
499
+ return /* @__PURE__ */ jsx10("div", { className: "flex flex-1 sm:items-center justify-center font-sans items-start w-full sm:w-[480px] sm:max-w-[480px]", children: /* @__PURE__ */ jsxs7("div", { className: "relative grid grid-cols-1 gap-8 sm:rounded-cards sm:border border-form-border-default bg-form-background-default px-8 py-12 sm:px-12 sm:py-14 border-b w-full", children: [
474
500
  children,
475
- /* @__PURE__ */ jsx9(Badge, {})
501
+ /* @__PURE__ */ jsx10(Badge, {})
476
502
  ] }) });
477
503
  }
478
504
 
@@ -484,21 +510,319 @@ function cn(...inputs) {
484
510
  }
485
511
 
486
512
  // src/theme/default/components/form/index.tsx
487
- import { useIntl as useIntl3 } from "react-intl";
513
+ import { useIntl as useIntl4 } from "react-intl";
488
514
  import {
489
515
  messageTestId,
516
+ uiTextToFormattedMessage as uiTextToFormattedMessage2,
517
+ useOryFlow as useOryFlow6
518
+ } from "@ory/elements-react";
519
+ import { FlowType as FlowType4 } from "@ory/client-fetch";
520
+
521
+ // src/theme/default/components/form/social.tsx
522
+ import {
490
523
  uiTextToFormattedMessage,
491
524
  useOryFlow as useOryFlow5
492
525
  } from "@ory/elements-react";
493
- import { FlowType as FlowType4 } from "@ory/client-fetch";
494
- import { jsx as jsx10 } from "react/jsx-runtime";
526
+
527
+ // src/theme/default/provider-logos/apple.svg
528
+ import * as React4 from "react";
529
+ import { jsx as jsx11 } from "react/jsx-runtime";
530
+ var SvgApple = (props) => {
531
+ var _a, _b;
532
+ return /* @__PURE__ */ jsx11("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 32 32", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx11("path", { fill: "#283544", d: "M27.734 11.55c-.134.078-3.317 1.724-3.317 5.374.15 4.162 4.017 5.621 4.083 5.621-.066.078-.584 1.988-2.116 3.991C25.167 28.261 23.817 30 21.767 30c-1.95 0-2.65-1.15-4.9-1.15-2.416 0-3.1 1.15-4.95 1.15-2.05 0-3.5-1.832-4.782-3.541-1.667-2.236-3.083-5.746-3.133-9.116-.034-1.786.334-3.54 1.266-5.032 1.317-2.081 3.667-3.494 6.233-3.54 1.966-.063 3.716 1.257 4.916 1.257 1.15 0 3.3-1.258 5.733-1.258 1.05.001 3.85.296 5.584 2.78M16.25 8.414c-.35-1.631.616-3.262 1.516-4.302C18.917 2.854 20.734 2 22.3 2c.1 1.63-.534 3.23-1.666 4.395-1.017 1.258-2.767 2.205-4.383 2.019" }) });
533
+ };
534
+ var apple_default = SvgApple;
535
+
536
+ // src/theme/default/provider-logos/auth0.svg
537
+ import * as React5 from "react";
538
+ import { jsx as jsx12 } from "react/jsx-runtime";
539
+ var SvgAuth0 = (props) => {
540
+ var _a, _b;
541
+ return /* @__PURE__ */ jsx12("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 64 64", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx12("path", { fill: "#eb5424", d: "M49.012 51.774 42.514 32l17.008-12.22h-21.02L32.005 0h21.032l6.506 19.78c3.767 11.468-.118 24.52-10.53 31.993zm-34.023 0L31.998 64l17.015-12.226-17.008-12.22zm-10.516-32c-3.976 12.1.64 24.917 10.5 32.007v-.007L21.482 32 4.474 19.774l21.025.007L31.998 0H10.972z" }) });
542
+ };
543
+ var auth0_default = SvgAuth0;
544
+
545
+ // src/theme/default/provider-logos/discord.svg
546
+ import * as React6 from "react";
547
+ import { jsx as jsx13, jsxs as jsxs8 } from "react/jsx-runtime";
548
+ var SvgDiscord = (props) => {
549
+ var _a, _b;
550
+ return /* @__PURE__ */ jsxs8("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 32 32", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
551
+ /* @__PURE__ */ jsx13("path", { d: "M2 11.6c0-3.36 0-5.04.654-6.324a6 6 0 0 1 2.622-2.622C6.56 2 8.24 2 11.6 2h8.8c3.36 0 5.04 0 6.324.654a6 6 0 0 1 2.622 2.622C30 6.56 30 8.24 30 11.6v8.8c0 3.36 0 5.04-.654 6.324a6 6 0 0 1-2.622 2.622C25.44 30 23.76 30 20.4 30h-8.8c-3.36 0-5.04 0-6.324-.654a6 6 0 0 1-2.622-2.622C2 25.44 2 23.76 2 20.4z" }),
552
+ /* @__PURE__ */ jsx13("path", { fill: "#5865F2", d: "M23.636 9.34A18.8 18.8 0 0 0 19.097 8c-.195.332-.424.779-.581 1.134a17.7 17.7 0 0 0-5.03 0A12 12 0 0 0 12.897 8a18.7 18.7 0 0 0-4.542 1.343c-2.872 4.078-3.65 8.055-3.262 11.975a18.6 18.6 0 0 0 5.567 2.68c.448-.58.848-1.195 1.192-1.844a12 12 0 0 1-1.877-.859 9 9 0 0 0 .46-.342c3.62 1.59 7.553 1.59 11.13 0q.225.178.46.342c-.595.337-1.225.626-1.88.86q.516.974 1.191 1.845a18.6 18.6 0 0 0 5.57-2.682c.457-4.544-.78-8.484-3.27-11.978m-11.29 9.567c-1.087 0-1.978-.953-1.978-2.113s.872-2.116 1.977-2.116c1.106 0 1.997.953 1.978 2.116.002 1.16-.872 2.113-1.978 2.113m7.308 0c-1.086 0-1.977-.953-1.977-2.113s.872-2.116 1.977-2.116c1.106 0 1.997.953 1.978 2.116 0 1.16-.872 2.113-1.978 2.113" })
553
+ ] });
554
+ };
555
+ var discord_default = SvgDiscord;
556
+
557
+ // src/theme/default/provider-logos/facebook.svg
558
+ import * as React7 from "react";
559
+ import { jsx as jsx14, jsxs as jsxs9 } from "react/jsx-runtime";
560
+ var SvgFacebook = (props) => {
561
+ var _a, _b;
562
+ return /* @__PURE__ */ jsxs9("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
563
+ /* @__PURE__ */ jsxs9("g", { clipPath: "url(#facebook_svg__a)", children: [
564
+ /* @__PURE__ */ jsx14("path", { fill: "#1877F2", d: "M24 12c0-6.627-5.373-12-12-12C5.372 0 0 5.374 0 12c0 5.99 4.388 10.954 10.125 11.854V15.47H7.078V12h3.047V9.357c0-3.008 1.791-4.669 4.532-4.669 1.313 0 2.686.234 2.686.234v2.953H15.83c-1.49 0-1.955.925-1.955 1.874V12h3.328l-.532 3.469h-2.796v8.385c5.736-.9 10.124-5.864 10.124-11.854" }),
565
+ /* @__PURE__ */ jsx14("path", { fill: "#fff", d: "M16.67 15.469 17.204 12h-3.328V9.75c0-.95.465-1.875 1.955-1.875h1.513V4.922s-1.373-.234-2.686-.234c-2.74 0-4.532 1.661-4.532 4.669V12H7.078v3.469h3.047v8.385a12.1 12.1 0 0 0 3.75 0V15.47z" })
566
+ ] }),
567
+ /* @__PURE__ */ jsx14("defs", { children: /* @__PURE__ */ jsx14("clipPath", { id: "facebook_svg__a", children: /* @__PURE__ */ jsx14("rect", { fill: "#fff" }) }) })
568
+ ] });
569
+ };
570
+ var facebook_default = SvgFacebook;
571
+
572
+ // src/theme/default/provider-logos/generic.svg
573
+ import * as React8 from "react";
574
+ import { jsx as jsx15, jsxs as jsxs10 } from "react/jsx-runtime";
575
+ var SvgGeneric = (props) => {
576
+ var _a, _b;
577
+ return /* @__PURE__ */ jsxs10("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, className: "generic_svg__icon generic_svg__icon-tabler generic_svg__icon-tabler-brand-oauth", viewBox: "0 0 24 24", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
578
+ /* @__PURE__ */ jsx15("path", { stroke: "none", d: "M0 0h24v24H0z" }),
579
+ /* @__PURE__ */ jsx15("path", { d: "M2 12a10 10 0 1 0 20 0 10 10 0 1 0-20 0" }),
580
+ /* @__PURE__ */ jsx15("path", { d: "M12.556 6c.65 0 1.235.373 1.508.947l2.839 7.848a1.646 1.646 0 0 1-1.01 2.108 1.673 1.673 0 0 1-2.068-.851L13.365 15h-2.73l-.398.905A1.67 1.67 0 0 1 8.26 16.95l-.153-.047a1.647 1.647 0 0 1-1.056-1.956l2.824-7.852a1.66 1.66 0 0 1 1.409-1.087z" })
581
+ ] });
582
+ };
583
+ var generic_default = SvgGeneric;
584
+
585
+ // src/theme/default/provider-logos/github.svg
586
+ import * as React9 from "react";
587
+ import { jsx as jsx16 } from "react/jsx-runtime";
588
+ var SvgGithub = (props) => {
589
+ var _a, _b;
590
+ return /* @__PURE__ */ jsx16("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx16("path", { d: "M12 0C5.374 0 0 5.373 0 12c0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23A11.5 11.5 0 0 1 12 5.803c1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576C20.566 21.797 24 17.3 24 12c0-6.627-5.373-12-12-12" }) });
591
+ };
592
+ var github_default = SvgGithub;
593
+
594
+ // src/theme/default/provider-logos/gitlab.svg
595
+ import * as React10 from "react";
596
+ import { jsx as jsx17, jsxs as jsxs11 } from "react/jsx-runtime";
597
+ var SvgGitlab = (props) => {
598
+ var _a, _b;
599
+ return /* @__PURE__ */ jsxs11("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
600
+ /* @__PURE__ */ jsx17("path", { fill: "#E24329", d: "m22.708 10.691-.031-.072-3.015-7.167a.74.74 0 0 0-.31-.34.87.87 0 0 0-.923.045.73.73 0 0 0-.268.37L16.125 9.2H7.881L5.845 3.527a.72.72 0 0 0-.268-.371.87.87 0 0 0-.923-.045.74.74 0 0 0-.31.34l-3.021 7.164-.03.072a4.67 4.67 0 0 0-.153 3.23c.335 1.063 1.04 1.998 2.01 2.664l.01.007.028.018 4.594 3.132 2.272 1.567 1.384.952c.162.112.36.172.563.172s.401-.06.563-.172l1.384-.952 2.273-1.567 4.62-3.151.012-.009c.968-.666 1.671-1.6 2.006-2.661a4.67 4.67 0 0 0-.15-3.226" }),
601
+ /* @__PURE__ */ jsx17("path", { fill: "#FC6D26", d: "m22.708 10.691-.031-.072a10.7 10.7 0 0 0-4.055 1.66L12 16.839l4.218 2.904 4.621-3.152.012-.008c.969-.666 1.674-1.601 2.008-2.664a4.67 4.67 0 0 0-.15-3.228" }),
602
+ /* @__PURE__ */ jsx17("path", { fill: "#FCA326", d: "m7.781 19.743 2.273 1.566 1.384.952c.162.112.36.172.563.172s.401-.06.563-.172l1.384-.952 2.273-1.566S14.255 18.389 12 16.839c-2.255 1.55-4.219 2.904-4.219 2.904" }),
603
+ /* @__PURE__ */ jsx17("path", { fill: "#FC6D26", d: "M5.376 12.279a10.7 10.7 0 0 0-4.053-1.664l-.03.072a4.67 4.67 0 0 0-.153 3.23c.335 1.063 1.04 1.998 2.01 2.664l.01.007.028.018 4.594 3.132L12 16.836z" })
604
+ ] });
605
+ };
606
+ var gitlab_default = SvgGitlab;
607
+
608
+ // src/theme/default/provider-logos/google.svg
609
+ import * as React11 from "react";
610
+ import { jsx as jsx18, jsxs as jsxs12 } from "react/jsx-runtime";
611
+ var SvgGoogle = (props) => {
612
+ var _a, _b;
613
+ return /* @__PURE__ */ jsxs12("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 32 32", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
614
+ /* @__PURE__ */ jsx18("path", { fill: "#4285F4", d: "M30.001 16.31c0-1.15-.095-1.99-.301-2.861H16.287v5.195h7.873c-.159 1.291-1.016 3.236-2.92 4.542l-.027.174 4.24 3.22.294.029c2.699-2.443 4.254-6.036 4.254-10.298" }),
615
+ /* @__PURE__ */ jsx18("path", { fill: "#34A853", d: "M16.286 30c3.857 0 7.095-1.244 9.46-3.391l-4.507-3.423c-1.207.825-2.826 1.4-4.953 1.4A8.58 8.58 0 0 1 8.16 18.77l-.167.014-4.41 3.344-.058.157C5.874 26.858 10.7 30 16.286 30" }),
616
+ /* @__PURE__ */ jsx18("path", { fill: "#FBBC05", d: "M8.16 18.769a8.5 8.5 0 0 1-.476-2.77c0-.964.174-1.897.46-2.768l-.008-.185-4.465-3.399-.146.068A13.8 13.8 0 0 0 2.001 16c0 2.256.556 4.387 1.524 6.284z" }),
617
+ /* @__PURE__ */ jsx18("path", { fill: "#EB4335", d: "M16.286 7.413c2.683 0 4.492 1.136 5.524 2.085l4.032-3.858C23.366 3.384 20.143 2 16.286 2 10.7 2 5.874 5.142 3.524 9.715l4.62 3.516c1.158-3.375 4.365-5.818 8.142-5.818" })
618
+ ] });
619
+ };
620
+ var google_default = SvgGoogle;
621
+
622
+ // src/theme/default/provider-logos/linkedin.svg
623
+ import * as React12 from "react";
624
+ import { jsx as jsx19, jsxs as jsxs13 } from "react/jsx-runtime";
625
+ var SvgLinkedin = (props) => {
626
+ var _a, _b;
627
+ return /* @__PURE__ */ jsxs13("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 32 32", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
628
+ /* @__PURE__ */ jsx19("rect", { x: 2, y: 2, fill: "#1275B1", rx: 14 }),
629
+ /* @__PURE__ */ jsx19("path", { fill: "#fff", d: "M12.619 9.692c0 .935-.81 1.692-1.81 1.692C9.81 11.384 9 10.627 9 9.692S9.81 8 10.81 8c.999 0 1.809.758 1.809 1.692M9.247 12.628h3.093V22H9.247zM17.32 12.628h-3.093V22h3.093v-4.795c0-1.107.378-2.22 1.886-2.22 1.705 0 1.695 1.45 1.687 2.572-.01 1.467.014 2.965.014 4.443H24v-4.946c-.026-3.159-.85-4.614-3.557-4.614-1.608 0-2.604.73-3.123 1.39z" })
630
+ ] });
631
+ };
632
+ var linkedin_default = SvgLinkedin;
633
+
634
+ // src/theme/default/provider-logos/microsoft.svg
635
+ import * as React13 from "react";
636
+ import { jsx as jsx20, jsxs as jsxs14 } from "react/jsx-runtime";
637
+ var SvgMicrosoft = (props) => {
638
+ var _a, _b;
639
+ return /* @__PURE__ */ jsxs14("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 23 23", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
640
+ /* @__PURE__ */ jsx20("path", { fill: "#F35325", d: "M1 1h10v10H1z" }),
641
+ /* @__PURE__ */ jsx20("path", { fill: "#81BC06", d: "M12 1h10v10H12z" }),
642
+ /* @__PURE__ */ jsx20("path", { fill: "#05A6F0", d: "M1 12h10v10H1z" }),
643
+ /* @__PURE__ */ jsx20("path", { fill: "#FFBA08", d: "M12 12h10v10H12z" })
644
+ ] });
645
+ };
646
+ var microsoft_default = SvgMicrosoft;
647
+
648
+ // src/theme/default/provider-logos/slack.svg
649
+ import * as React14 from "react";
650
+ import { jsx as jsx21, jsxs as jsxs15 } from "react/jsx-runtime";
651
+ var SvgSlack = (props) => {
652
+ var _a, _b;
653
+ return /* @__PURE__ */ jsxs15("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 32 32", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
654
+ /* @__PURE__ */ jsx21("path", { fill: "#2EB67D", d: "M26.5 15a2.5 2.5 0 1 0-2.5-2.5V15zm-7 0a2.5 2.5 0 0 0 2.5-2.5v-7a2.5 2.5 0 0 0-5 0v7a2.5 2.5 0 0 0 2.5 2.5" }),
655
+ /* @__PURE__ */ jsx21("path", { fill: "#E01E5A", d: "M5.5 17A2.5 2.5 0 1 0 8 19.5V17zm7 0a2.5 2.5 0 0 0-2.5 2.5v7a2.5 2.5 0 0 0 5 0v-7a2.5 2.5 0 0 0-2.5-2.5" }),
656
+ /* @__PURE__ */ jsx21("path", { fill: "#ECB22E", d: "M17 26.5a2.5 2.5 0 1 0 2.5-2.5H17zm0-7a2.5 2.5 0 0 0 2.5 2.5h7a2.5 2.5 0 0 0 0-5h-7a2.5 2.5 0 0 0-2.5 2.5" }),
657
+ /* @__PURE__ */ jsx21("path", { fill: "#36C5F0", d: "M15 5.5A2.5 2.5 0 1 0 12.5 8H15zm0 7a2.5 2.5 0 0 0-2.5-2.5h-7a2.5 2.5 0 0 0 0 5h7a2.5 2.5 0 0 0 2.5-2.5" })
658
+ ] });
659
+ };
660
+ var slack_default = SvgSlack;
661
+
662
+ // src/theme/default/provider-logos/spotify.svg
663
+ import * as React15 from "react";
664
+ import { jsx as jsx22, jsxs as jsxs16 } from "react/jsx-runtime";
665
+ var SvgSpotify = (props) => {
666
+ var _a, _b;
667
+ return /* @__PURE__ */ jsxs16("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 32 32", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
668
+ /* @__PURE__ */ jsx22("circle", { cx: 16, cy: 16, r: 14, fill: "#1ED760" }),
669
+ /* @__PURE__ */ jsx22("path", { fill: "#fff", d: "M22.364 21.623c-.239.38-.75.486-1.148.258-3.141-1.822-7.08-2.232-11.736-1.23-.446.091-.893-.167-.988-.592a.786.786 0 0 1 .621-.94c5.087-1.11 9.456-.639 12.964 1.41a.77.77 0 0 1 .287 1.094m1.627-3.461c-.303.47-.941.607-1.435.334-3.588-2.11-9.058-2.718-13.299-1.488-.558.152-1.132-.137-1.292-.653-.16-.531.144-1.078.702-1.23 4.848-1.396 10.875-.728 15.005 1.686.462.273.622.88.319 1.35m.143-3.613c-4.305-2.43-11.4-2.657-15.515-1.473-.654.197-1.355-.152-1.563-.79-.207-.622.176-1.29.83-1.487 4.72-1.366 12.565-1.093 17.508 1.7.59.334.781 1.063.43 1.625-.334.576-1.1.774-1.69.425" })
670
+ ] });
671
+ };
672
+ var spotify_default = SvgSpotify;
673
+
674
+ // src/theme/default/provider-logos/yandex.svg
675
+ import * as React16 from "react";
676
+ import { jsx as jsx23, jsxs as jsxs17 } from "react/jsx-runtime";
677
+ var SvgYandex = (props) => {
678
+ var _a, _b;
679
+ return /* @__PURE__ */ jsxs17("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 32 32", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
680
+ /* @__PURE__ */ jsx23("circle", { cx: 16, cy: 16, r: 14, fill: "#fff" }),
681
+ /* @__PURE__ */ jsx23("path", { fill: "#FC3F1D", d: "M21 25h-3.143V9.435h-1.402c-2.572 0-3.922 1.294-3.922 3.211 0 2.175.935 3.185 2.857 4.48l1.584 1.063L12.403 25H9l4.104-6.086c-2.363-1.684-3.688-3.316-3.688-6.087C9.416 9.357 11.83 7 16.429 7H21z" })
682
+ ] });
683
+ };
684
+ var yandex_default = SvgYandex;
685
+
686
+ // src/theme/default/provider-logos/index.ts
687
+ var logos = {
688
+ apple: apple_default,
689
+ auth0: auth0_default,
690
+ discord: discord_default,
691
+ facebook: facebook_default,
692
+ generic: generic_default,
693
+ github: github_default,
694
+ gitlab: gitlab_default,
695
+ google: google_default,
696
+ linkedin: linkedin_default,
697
+ microsoft: microsoft_default,
698
+ slack: slack_default,
699
+ spotify: spotify_default,
700
+ yandex: yandex_default
701
+ };
702
+ var provider_logos_default = logos;
703
+
704
+ // src/theme/default/components/form/social.tsx
705
+ import { useIntl as useIntl3 } from "react-intl";
706
+ import { useFormContext as useFormContext2 } from "react-hook-form";
707
+
708
+ // src/theme/default/components/form/spinner.tsx
709
+ import { jsx as jsx24, jsxs as jsxs18 } from "react/jsx-runtime";
710
+ function Spinner({ className }) {
711
+ return /* @__PURE__ */ jsxs18(
712
+ "svg",
713
+ {
714
+ "aria-hidden": "true",
715
+ role: "status",
716
+ className: cn(
717
+ "absolute pointer-events-none inset-0 m-auto size-8 animate-spin",
718
+ className
719
+ ),
720
+ viewBox: "0 0 34 34",
721
+ fill: "none",
722
+ xmlns: "http://www.w3.org/2000/svg",
723
+ children: [
724
+ /* @__PURE__ */ jsx24("g", { clipPath: "url(#clip0_2572_1748)", children: /* @__PURE__ */ jsx24(
725
+ "path",
726
+ {
727
+ d: "M23.364 10.6362C22.1053 9.37751 20.5016 8.52034 18.7558 8.17307C17.01 7.82581 15.2004 8.00404 13.5559 8.68523C11.9113 9.36641 10.5057 10.52 9.51678 12C8.52784 13.4801 8 15.2201 8 17.0001C8 18.7802 8.52784 20.5202 9.51678 22.0003C10.5057 23.4803 11.9113 24.6339 13.5559 25.3151C15.2004 25.9962 17.01 26.1745 18.7558 25.8272C20.5016 25.4799 22.1053 24.6228 23.364 23.3641",
728
+ stroke: "currentColor",
729
+ strokeLinecap: "round",
730
+ strokeLinejoin: "round"
731
+ }
732
+ ) }),
733
+ /* @__PURE__ */ jsx24("defs", { children: /* @__PURE__ */ jsx24("clipPath", { id: "clip0_2572_1748", children: /* @__PURE__ */ jsx24(
734
+ "rect",
735
+ {
736
+ width: "24",
737
+ height: "24",
738
+ fill: "currentColor",
739
+ transform: "translate(17 0.029541) rotate(45)"
740
+ }
741
+ ) }) })
742
+ ]
743
+ }
744
+ );
745
+ }
746
+
747
+ // src/theme/default/components/form/social.tsx
748
+ import { jsx as jsx25, jsxs as jsxs19 } from "react/jsx-runtime";
749
+ function extractProvider(context) {
750
+ if (context && typeof context === "object" && "provider" in context && typeof context.provider === "string") {
751
+ return context.provider;
752
+ }
753
+ return void 0;
754
+ }
755
+ function DefaultButtonSocial({
756
+ attributes,
757
+ node,
758
+ onClick,
759
+ showLabel: _showLabel,
760
+ logos: providedLogos
761
+ }) {
762
+ var _a, _b, _c;
763
+ const logos2 = { ...provider_logos_default, ...providedLogos };
764
+ const {
765
+ node_type: _ignoredNodeType,
766
+ type: _ignoredType,
767
+ name: _ignoredName,
768
+ ...props
769
+ } = attributes;
770
+ const {
771
+ flow: { ui }
772
+ } = useOryFlow5();
773
+ const intl = useIntl3();
774
+ const {
775
+ formState: { isSubmitting }
776
+ } = useFormContext2();
777
+ const oidcNodeCount = (_a = ui.nodes.filter((node2) => node2.group === "oidc").length) != null ? _a : 0;
778
+ const Logo = logos2[attributes.value];
779
+ const showLabel = _showLabel != null ? _showLabel : oidcNodeCount % 3 !== 0 && oidcNodeCount % 4 !== 0;
780
+ const provider = (_c = extractProvider((_b = node.meta.label) == null ? void 0 : _b.context)) != null ? _c : "";
781
+ return /* @__PURE__ */ jsxs19(
782
+ "button",
783
+ {
784
+ className: "gap-3 border border-button-social-border-default bg-button-social-background-default hover:bg-button-social-background-hover transition-colors rounded flex items-center justify-center px-4 py-[13px] disabled:bg-button-social-background-disabled disabled:border-button-social-border-disabled disabled:text-button-social-foreground-disabled hover:text-button-social-foreground-disabled",
785
+ value: attributes.value,
786
+ type: "submit",
787
+ name: "provider",
788
+ ...props,
789
+ onClick,
790
+ disabled: isSubmitting,
791
+ children: [
792
+ /* @__PURE__ */ jsx25("span", { className: "size-5 relative", children: !isSubmitting ? Logo ? /* @__PURE__ */ jsx25(Logo, { size: 20 }) : /* @__PURE__ */ jsx25("span", { className: "flex aspect-square items-center justify-center rounded-full border text-xs", children: provider.slice(0, 2) }) : /* @__PURE__ */ jsx25(Spinner, { className: "size-5" }) }),
793
+ showLabel && node.meta.label ? /* @__PURE__ */ jsx25("span", { className: "grow text-left font-medium leading-none text-button-social-foreground-default", children: uiTextToFormattedMessage(node.meta.label, intl) }) : null
794
+ ]
795
+ }
796
+ );
797
+ }
798
+ DefaultButtonSocial.WithLogos = (logos2) => (props) => /* @__PURE__ */ jsx25(DefaultButtonSocial, { ...props, logos: logos2 });
799
+ function DefaultSocialButtonContainer({
800
+ children,
801
+ nodes
802
+ }) {
803
+ return /* @__PURE__ */ jsx25(
804
+ "div",
805
+ {
806
+ className: cn("grid gap-3", {
807
+ // needed because tailwind is not compiling dynamic classes
808
+ "grid-cols-1": nodes.length % 4 <= 2,
809
+ "grid-cols-3": nodes.length % 3 === 0,
810
+ "grid-cols-4": nodes.length > 1 && nodes.length % 4 === 0
811
+ }),
812
+ children
813
+ }
814
+ );
815
+ }
816
+
817
+ // src/theme/default/components/form/index.tsx
818
+ import { jsx as jsx26 } from "react/jsx-runtime";
495
819
  function DefaultFormContainer({
496
820
  children,
497
821
  onSubmit,
498
822
  action,
499
823
  method
500
824
  }) {
501
- return /* @__PURE__ */ jsx10(
825
+ return /* @__PURE__ */ jsx26(
502
826
  "form",
503
827
  {
504
828
  onSubmit,
@@ -511,11 +835,11 @@ function DefaultFormContainer({
511
835
  );
512
836
  }
513
837
  function DefaultMessageContainer({ children }) {
514
- const { flowType } = useOryFlow5();
838
+ const { flowType } = useOryFlow6();
515
839
  if (!children || Array.isArray(children) && children.length === 0) {
516
840
  return null;
517
841
  }
518
- return /* @__PURE__ */ jsx10(
842
+ return /* @__PURE__ */ jsx26(
519
843
  "section",
520
844
  {
521
845
  className: cn(
@@ -526,57 +850,58 @@ function DefaultMessageContainer({ children }) {
526
850
  );
527
851
  }
528
852
  function DefaultMessage({ message }) {
529
- const intl = useIntl3();
530
- return /* @__PURE__ */ jsx10(
853
+ const intl = useIntl4();
854
+ return /* @__PURE__ */ jsx26(
531
855
  "span",
532
856
  {
533
- className: cn("text-sm leading-normal", {
534
- "text-forms-fg-error": message.type === "error",
535
- "text-forms-fg-default": message.type === "info",
536
- "text-forms-fg-success": message.type === "success"
537
- }),
857
+ className: cn(
858
+ "leading-normal",
859
+ message.type === "error" && "text-interface-foreground-validation-danger",
860
+ message.type === "info" && "text-interface-foreground-default-secondary",
861
+ message.type === "success" && "text-interface-foreground-validation-success"
862
+ ),
538
863
  ...messageTestId(message),
539
- children: uiTextToFormattedMessage(message, intl)
864
+ children: uiTextToFormattedMessage2(message, intl)
540
865
  }
541
866
  );
542
867
  }
543
868
 
544
869
  // src/theme/default/components/card/auth-methods.tsx
545
- import { useIntl as useIntl4 } from "react-intl";
870
+ import { useIntl as useIntl5 } from "react-intl";
546
871
 
547
872
  // src/theme/default/assets/icons/code.svg
548
- import * as React4 from "react";
549
- import { jsx as jsx11 } from "react/jsx-runtime";
873
+ import * as React17 from "react";
874
+ import { jsx as jsx27 } from "react/jsx-runtime";
550
875
  var SvgCode = (props) => {
551
876
  var _a, _b;
552
- return /* @__PURE__ */ jsx11("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 15 13", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx11("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M6.333 10.666h-4A1.333 1.333 0 0 1 1 9.333V2.666m0 0a1.333 1.333 0 0 1 1.333-1.333h9.334A1.333 1.333 0 0 1 13 2.666m-12 0 6 4 6-4m0 0v4M12.333 12l1.334-1.334-1.334-1.333m-2 0L9 10.666 10.333 12" }) });
877
+ return /* @__PURE__ */ jsx27("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 15 13", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx27("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M6.333 10.666h-4A1.333 1.333 0 0 1 1 9.333V2.666m0 0a1.333 1.333 0 0 1 1.333-1.333h9.334A1.333 1.333 0 0 1 13 2.666m-12 0 6 4 6-4m0 0v4M12.333 12l1.334-1.334-1.334-1.333m-2 0L9 10.666 10.333 12" }) });
553
878
  };
554
879
  var code_default = SvgCode;
555
880
 
556
881
  // src/theme/default/assets/icons/passkey.svg
557
- import * as React5 from "react";
558
- import { jsx as jsx12 } from "react/jsx-runtime";
882
+ import * as React18 from "react";
883
+ import { jsx as jsx28 } from "react/jsx-runtime";
559
884
  var SvgPasskey = (props) => {
560
885
  var _a, _b;
561
- return /* @__PURE__ */ jsx12("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 13 14", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx12("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M10.602 3.667c.603 1 .86 2.171.733 3.333v.667a4 4 0 0 0 .533 2M3.335 6.333a2.667 2.667 0 0 1 5.333 0V7c0 1.442.468 2.846 1.334 4m-4-4.667v1.334A9.33 9.33 0 0 0 7.668 13M3.335 9a12 12 0 0 0 1.2 4m-3.267-1.333A14.7 14.7 0 0 1 .668 7v-.667a5.333 5.333 0 0 1 8-4.633" }) });
886
+ return /* @__PURE__ */ jsx28("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 13 14", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx28("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M10.602 3.667c.603 1 .86 2.171.733 3.333v.667a4 4 0 0 0 .533 2M3.335 6.333a2.667 2.667 0 0 1 5.333 0V7c0 1.442.468 2.846 1.334 4m-4-4.667v1.334A9.33 9.33 0 0 0 7.668 13M3.335 9a12 12 0 0 0 1.2 4m-3.267-1.333A14.7 14.7 0 0 1 .668 7v-.667a5.333 5.333 0 0 1 8-4.633" }) });
562
887
  };
563
888
  var passkey_default = SvgPasskey;
564
889
 
565
890
  // src/theme/default/assets/icons/password.svg
566
- import * as React6 from "react";
567
- import { jsx as jsx13 } from "react/jsx-runtime";
891
+ import * as React19 from "react";
892
+ import { jsx as jsx29 } from "react/jsx-runtime";
568
893
  var SvgPassword = (props) => {
569
894
  var _a, _b;
570
- return /* @__PURE__ */ jsx13("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 14 4", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx13("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M7 .667v2.667m-1.333-.667 2.666-1.333m-2.666 0 2.666 1.333m-6-2v2.667M1 2.667l2.667-1.333M1 1.334l2.667 1.333m8-2v2.667m-1.334-.667L13 1.334m-2.667 0L13 2.667" }) });
895
+ return /* @__PURE__ */ jsx29("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 14 4", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx29("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M7 .667v2.667m-1.333-.667 2.666-1.333m-2.666 0 2.666 1.333m-6-2v2.667M1 2.667l2.667-1.333M1 1.334l2.667 1.333m8-2v2.667m-1.334-.667L13 1.334m-2.667 0L13 2.667" }) });
571
896
  };
572
897
  var password_default = SvgPassword;
573
898
 
574
899
  // src/theme/default/assets/icons/webauthn.svg
575
- import * as React7 from "react";
576
- import { jsx as jsx14 } from "react/jsx-runtime";
900
+ import * as React20 from "react";
901
+ import { jsx as jsx30 } from "react/jsx-runtime";
577
902
  var SvgWebauthn = (props) => {
578
903
  var _a, _b;
579
- return /* @__PURE__ */ jsx14("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 14 14", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx14("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M9 5h.007m1.03-3.438 2.401 2.401a1.92 1.92 0 0 1 0 2.713l-1.762 1.762a1.92 1.92 0 0 1-2.713 0l-.2-.2-4.372 4.371a1.33 1.33 0 0 1-.826.386L2.448 13h-.781a.667.667 0 0 1-.662-.589L1 12.333v-.781c0-.313.11-.616.311-.856l.08-.087.276-.276H3V9h1.333V7.667l1.43-1.43-.201-.2a1.92 1.92 0 0 1 0-2.713l1.762-1.762a1.92 1.92 0 0 1 2.713 0" }) });
904
+ return /* @__PURE__ */ jsx30("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 14 14", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx30("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M9 5h.007m1.03-3.438 2.401 2.401a1.92 1.92 0 0 1 0 2.713l-1.762 1.762a1.92 1.92 0 0 1-2.713 0l-.2-.2-4.372 4.371a1.33 1.33 0 0 1-.826.386L2.448 13h-.781a.667.667 0 0 1-.662-.589L1 12.333v-.781c0-.313.11-.616.311-.856l.08-.087.276-.276H3V9h1.333V7.667l1.43-1.43-.201-.2a1.92 1.92 0 0 1 0-2.713l1.762-1.762a1.92 1.92 0 0 1 2.713 0" }) });
580
905
  };
581
906
  var webauthn_default = SvgWebauthn;
582
907
 
@@ -586,7 +911,7 @@ function isGroupImmediateSubmit(group) {
586
911
  }
587
912
 
588
913
  // src/theme/default/components/card/auth-methods.tsx
589
- import { jsx as jsx15, jsxs as jsxs8 } from "react/jsx-runtime";
914
+ import { jsx as jsx31, jsxs as jsxs20 } from "react/jsx-runtime";
590
915
  var iconsMap = {
591
916
  code: code_default,
592
917
  passkey: passkey_default,
@@ -597,22 +922,28 @@ function DefaultAuthMethodListItem({
597
922
  onClick,
598
923
  group
599
924
  }) {
600
- const intl = useIntl4();
925
+ const intl = useIntl5();
601
926
  const Icon = iconsMap[group] || null;
602
- return /* @__PURE__ */ jsx15("div", { className: "w-full hover:bg-forms-bg-hover px-2 py-1 rounded", children: /* @__PURE__ */ jsxs8(
927
+ return /* @__PURE__ */ jsx31("div", { className: "w-full rounded px-2 py-1 hover:bg-interface-background-default-primary-hover", children: /* @__PURE__ */ jsxs20(
603
928
  "button",
604
929
  {
605
- className: "flex text-left py-2 gap-3 cursor-pointer",
930
+ className: "flex cursor-pointer gap-3 py-2 text-left items-start",
606
931
  onClick,
607
932
  type: isGroupImmediateSubmit(group) ? "submit" : "button",
608
933
  id: `auth-method-list-item-${group}`,
609
934
  "data-testid": "auth-method-list-item",
610
935
  "aria-label": `Authenticate with ${group}`,
611
936
  children: [
612
- /* @__PURE__ */ jsx15("div", { className: "flex-none w-4 h-4 mt-[2px]", children: Icon && /* @__PURE__ */ jsx15(Icon, { size: 20, className: "text-forms-fg-default" }) }),
613
- /* @__PURE__ */ jsxs8("div", { className: "flex-1 text-sm leading-normal", children: [
614
- /* @__PURE__ */ jsx15("div", { className: "text-forms-fg-default text-sm", children: intl.formatMessage({ id: `two-step.${group}.title` }) }),
615
- /* @__PURE__ */ jsx15("div", { className: "text-forms-fg-mute text-sm", children: intl.formatMessage({ id: `two-step.${group}.description` }) })
937
+ /* @__PURE__ */ jsx31("span", { className: "mt-1", children: Icon && /* @__PURE__ */ jsx31(
938
+ Icon,
939
+ {
940
+ size: 16,
941
+ className: "text-interface-foreground-brand-primary"
942
+ }
943
+ ) }),
944
+ /* @__PURE__ */ jsxs20("span", { className: "flex-1 leading-normal inline-flex flex-col", children: [
945
+ /* @__PURE__ */ jsx31("span", { className: "text-interface-foreground-default-primary", children: intl.formatMessage({ id: `two-step.${group}.title` }) }),
946
+ /* @__PURE__ */ jsx31("span", { className: "text-interface-foreground-default-secondary", children: intl.formatMessage({ id: `two-step.${group}.description` }) })
616
947
  ] })
617
948
  ]
618
949
  }
@@ -620,87 +951,42 @@ function DefaultAuthMethodListItem({
620
951
  }
621
952
 
622
953
  // src/theme/default/components/form/button.tsx
623
- import { FlowType as FlowType5, getNodeLabel } from "@ory/client-fetch";
954
+ import { getNodeLabel } from "@ory/client-fetch";
624
955
  import {
625
- uiTextToFormattedMessage as uiTextToFormattedMessage2
956
+ uiTextToFormattedMessage as uiTextToFormattedMessage3
626
957
  } from "@ory/elements-react";
627
- import { useFormContext as useFormContext2 } from "react-hook-form";
628
- import { useIntl as useIntl5 } from "react-intl";
629
-
630
- // src/theme/default/components/form/spinner.tsx
631
- import { jsx as jsx16, jsxs as jsxs9 } from "react/jsx-runtime";
632
- function Spinner({ className }) {
633
- return /* @__PURE__ */ jsxs9(
634
- "svg",
635
- {
636
- "aria-hidden": "true",
637
- role: "status",
638
- className: cn(
639
- "absolute pointer-events-none inset-0 mx-auto my-auto w-8 h-8 animate-spin",
640
- className
641
- ),
642
- viewBox: "0 0 34 34",
643
- fill: "none",
644
- xmlns: "http://www.w3.org/2000/svg",
645
- children: [
646
- /* @__PURE__ */ jsx16("g", { clipPath: "url(#clip0_2572_1748)", children: /* @__PURE__ */ jsx16(
647
- "path",
648
- {
649
- d: "M23.364 10.6362C22.1053 9.37751 20.5016 8.52034 18.7558 8.17307C17.01 7.82581 15.2004 8.00404 13.5559 8.68523C11.9113 9.36641 10.5057 10.52 9.51678 12C8.52784 13.4801 8 15.2201 8 17.0001C8 18.7802 8.52784 20.5202 9.51678 22.0003C10.5057 23.4803 11.9113 24.6339 13.5559 25.3151C15.2004 25.9962 17.01 26.1745 18.7558 25.8272C20.5016 25.4799 22.1053 24.6228 23.364 23.3641",
650
- stroke: "currentColor",
651
- strokeLinecap: "round",
652
- strokeLinejoin: "round"
653
- }
654
- ) }),
655
- /* @__PURE__ */ jsx16("defs", { children: /* @__PURE__ */ jsx16("clipPath", { id: "clip0_2572_1748", children: /* @__PURE__ */ jsx16(
656
- "rect",
657
- {
658
- width: "24",
659
- height: "24",
660
- fill: "currentColor",
661
- transform: "translate(17 0.029541) rotate(45)"
662
- }
663
- ) }) })
664
- ]
665
- }
666
- );
667
- }
668
-
669
- // src/theme/default/components/form/button.tsx
670
- import { useOryFlow as useOryFlow6 } from "@ory/elements-react";
671
958
  import { cva } from "class-variance-authority";
672
- import { jsx as jsx17, jsxs as jsxs10 } from "react/jsx-runtime";
959
+ import { useFormContext as useFormContext3 } from "react-hook-form";
960
+ import { useIntl as useIntl6 } from "react-intl";
961
+ import { jsx as jsx32, jsxs as jsxs21 } from "react/jsx-runtime";
673
962
  var buttonStyles = cva(
674
963
  [
675
- "ring-1 relative overflow-hidden ring-inset rounded text-sm leading-none flex gap-3 justify-center",
676
- "disabled:cursor-not-allowed loading:before:pointer-events-none loading:cursor-wait",
677
- "transition-colors ease-linear duration-100"
964
+ "relative flex justify-center gap-3 overflow-hidden rounded leading-none ring-1 ring-inset font-medium",
965
+ "disabled:cursor-not-allowed loading:cursor-wait loading:before:pointer-events-none",
966
+ "transition-colors duration-100 ease-linear",
967
+ "p-4 max-w-[488px]"
678
968
  ],
679
969
  {
680
970
  variants: {
681
971
  intent: {
682
972
  primary: [
683
- "bg-button-primary-bg-default text-button-primary-fg-default ring-button-primary-border-default",
684
- "hover:bg-button-primary-bg-hover hover:text-button-primary-fg-hover hover:ring-button-primary-border-hover",
685
- "disabled:bg-button-primary-bg-disabled disabled:text-button-primary-fg-disabled disabled:ring-button-primary-border-disabled",
686
- "loading:bg-button-primary-bg-default loading:text-button-primary-fg-default loading:ring-button-primary-border-default",
687
- "loading:before:absolute loading:before:content-[''] loading:before:inset-0 loading:before:bg-button-primary-bg-default loading:before:opacity-80"
973
+ "bg-button-primary-background-default text-button-primary-foreground-default ring-button-primary-border-default",
974
+ "hover:bg-button-primary-background-hover hover:text-button-primary-foreground-hover hover:ring-button-primary-border-hover",
975
+ "disabled:bg-button-primary-background-disabled disabled:text-button-primary-foreground-disabled disabled:ring-button-primary-border-disabled",
976
+ "loading:bg-button-primary-background-default loading:text-button-primary-foreground-default loading:ring-button-primary-border-default",
977
+ "loading:before:absolute loading:before:inset-0 loading:before:bg-button-primary-background-default loading:before:opacity-80 loading:before:content-['']",
978
+ "disabled:bg-button-primary-background-disabled disabled:text-button-primary-foreground-disabled disabled:ring-button-primary-border-disabled"
688
979
  ],
689
980
  secondary: [
690
- "bg-button-secondary-bg-default text-button-secondary-fg-default ring-button-secondary-border-default",
691
- "hover:bg-button-secondary-bg-hover hover:text-button-secondary-fg-hover hover:ring-button-secondary-border-hover",
692
- "disabled:bg-button-secondary-bg-disabled disabled:text-button-secondary-fg-disabled disabled:ring-button-secondary-border-disabled",
693
- "loading:bg-button-secondary-bg-default loading:text-button-secondary-fg-default loading:ring-button-secondary-border-default",
694
- "loading:before:absolute loading:before:content-[''] loading:before:inset-0 loading:before:bg-button-secondary-bg-default loading:before:opacity-80"
981
+ "bg-button-secondary-background-default text-button-secondary-foreground-default ring-button-secondary-border-default",
982
+ "hover:bg-button-secondary-background-hover hover:text-button-secondary-foreground-hover hover:ring-button-secondary-border-hover",
983
+ "disabled:bg-button-secondary-background-disabled disabled:text-button-secondary-foreground-disabled disabled:ring-button-secondary-border-disabled",
984
+ "loading:bg-button-secondary-background-default loading:text-button-secondary-foreground-default loading:ring-button-secondary-border-default",
985
+ "loading:before:absolute loading:before:inset-0 loading:before:bg-button-secondary-background-default loading:before:opacity-80 loading:before:content-['']"
695
986
  ]
696
987
  },
697
- size: {
698
- default: ["px-4 py-3"],
699
- large: ["px-4 py-4.5 max-md:py-3"]
700
- },
701
988
  defaultVariants: {
702
- intent: "primary",
703
- size: "default"
989
+ intent: "primary"
704
990
  }
705
991
  }
706
992
  }
@@ -722,16 +1008,14 @@ var DefaultButton = ({
722
1008
  // End of skipped attributes
723
1009
  ...rest
724
1010
  } = attributes;
725
- const intl = useIntl5();
1011
+ const intl = useIntl6();
726
1012
  const label = getNodeLabel(node);
727
- const { flowType } = useOryFlow6();
728
1013
  const {
729
1014
  formState: { isSubmitting },
730
1015
  setValue
731
- } = useFormContext2();
1016
+ } = useFormContext3();
732
1017
  const isPrimary = attributes.name === "method" || attributes.name.includes("passkey") || attributes.name.includes("webauthn") || attributes.name.includes("lookup_secret");
733
- const isSmall = flowType === FlowType5.Settings && attributes.name !== "webauthn_register_trigger";
734
- return /* @__PURE__ */ jsxs10(
1018
+ return /* @__PURE__ */ jsxs21(
735
1019
  "button",
736
1020
  {
737
1021
  ...rest,
@@ -748,14 +1032,13 @@ var DefaultButton = ({
748
1032
  }
749
1033
  },
750
1034
  className: buttonStyles({
751
- intent: isPrimary ? "primary" : "secondary",
752
- size: isSmall ? "default" : "large"
1035
+ intent: isPrimary ? "primary" : "secondary"
753
1036
  }),
754
1037
  disabled: (_a = rest.disabled) != null ? _a : true,
755
1038
  "data-loading": isSubmitting,
756
1039
  children: [
757
- isSubmitting ? /* @__PURE__ */ jsx17(Spinner, {}) : null,
758
- label ? uiTextToFormattedMessage2(label, intl) : ""
1040
+ isSubmitting ? /* @__PURE__ */ jsx32(Spinner, {}) : null,
1041
+ label ? /* @__PURE__ */ jsx32("span", { children: uiTextToFormattedMessage3(label, intl) }) : ""
759
1042
  ]
760
1043
  }
761
1044
  );
@@ -766,17 +1049,16 @@ DefaultButton.displayName = "DefaultButton";
766
1049
  import { getNodeLabel as getNodeLabel2 } from "@ory/client-fetch";
767
1050
  import {
768
1051
  messageTestId as messageTestId2,
769
- uiTextToFormattedMessage as uiTextToFormattedMessage4
1052
+ uiTextToFormattedMessage as uiTextToFormattedMessage5
770
1053
  } from "@ory/elements-react";
771
- import { useState } from "react";
772
1054
  import { useForm } from "react-hook-form";
773
- import { useIntl as useIntl7 } from "react-intl";
1055
+ import { useIntl as useIntl8 } from "react-intl";
774
1056
 
775
1057
  // src/theme/default/components/ui/checkbox-label.tsx
776
- import { useIntl as useIntl6 } from "react-intl";
1058
+ import { useIntl as useIntl7 } from "react-intl";
777
1059
 
778
1060
  // src/util/i18n/index.ts
779
- var uiTextToFormattedMessage3 = ({ id, context = {}, text }, intl) => {
1061
+ var uiTextToFormattedMessage4 = ({ id, context = {}, text }, intl) => {
780
1062
  const contextInjectedMessage = Object.entries(context).reduce(
781
1063
  (accumulator, [key, value]) => {
782
1064
  if (Array.isArray(value)) {
@@ -824,7 +1106,7 @@ var uiTextToFormattedMessage3 = ({ id, context = {}, text }, intl) => {
824
1106
  };
825
1107
 
826
1108
  // src/theme/default/components/ui/checkbox-label.tsx
827
- import { Fragment as Fragment2, jsx as jsx18 } from "react/jsx-runtime";
1109
+ import { Fragment as Fragment2, jsx as jsx33 } from "react/jsx-runtime";
828
1110
  var linkRegex = /\[([^\]]+)\]\(([^)]+)\)/g;
829
1111
  function computeLabelElements(labelText) {
830
1112
  const elements = [];
@@ -840,13 +1122,13 @@ function computeLabelElements(labelText) {
840
1122
  elements.push(labelText.slice(lastIndex, matchStart));
841
1123
  }
842
1124
  elements.push(
843
- /* @__PURE__ */ jsx18(
1125
+ /* @__PURE__ */ jsx33(
844
1126
  "a",
845
1127
  {
846
1128
  href: url,
847
1129
  target: "_blank",
848
1130
  rel: "noopener noreferrer",
849
- className: "text-links-link-default hover:text-links-link-hover hover:underline",
1131
+ className: "text-button-link-brand-brand hover:text-button-link-brand-brand-hover underline",
850
1132
  children: linkText
851
1133
  },
852
1134
  matchStart
@@ -860,44 +1142,34 @@ function computeLabelElements(labelText) {
860
1142
  return elements;
861
1143
  }
862
1144
  function CheckboxLabel({ label }) {
863
- const intl = useIntl6();
1145
+ const intl = useIntl7();
864
1146
  if (!label) {
865
1147
  return null;
866
1148
  }
867
- const labelText = uiTextToFormattedMessage3(label, intl);
868
- return /* @__PURE__ */ jsx18(Fragment2, { children: computeLabelElements(labelText) });
1149
+ const labelText = uiTextToFormattedMessage4(label, intl);
1150
+ return /* @__PURE__ */ jsx33(Fragment2, { children: computeLabelElements(labelText) });
869
1151
  }
870
1152
 
871
1153
  // src/theme/default/components/form/checkbox.tsx
872
- import { jsx as jsx19, jsxs as jsxs11 } from "react/jsx-runtime";
1154
+ import { jsx as jsx34, jsxs as jsxs22 } from "react/jsx-runtime";
873
1155
  function CheckboxSVG() {
874
- return /* @__PURE__ */ jsxs11(
1156
+ return /* @__PURE__ */ jsx34(
875
1157
  "svg",
876
1158
  {
877
- className: "absolute w-4 h-4 hidden peer-checked:block",
1159
+ className: "absolute hidden size-4 peer-checked:block fill-checkbox-foreground-checked",
878
1160
  xmlns: "http://www.w3.org/2000/svg",
879
1161
  width: "16",
880
1162
  height: "16",
881
1163
  viewBox: "0 0 16 16",
882
1164
  fill: "none",
883
- children: [
884
- /* @__PURE__ */ jsx19(
885
- "path",
886
- {
887
- d: "M0 4C0 1.79086 1.79086 0 4 0H12C14.2091 0 16 1.79086 16 4V12C16 14.2091 14.2091 16 12 16H4C1.79086 16 0 14.2091 0 12V4Z",
888
- fill: "#0F172A"
889
- }
890
- ),
891
- /* @__PURE__ */ jsx19(
892
- "path",
893
- {
894
- fillRule: "evenodd",
895
- clipRule: "evenodd",
896
- d: "M11.6464 5.14645C11.8417 4.95118 12.1583 4.95118 12.3536 5.14645C12.5338 5.32669 12.5477 5.6103 12.3951 5.80645L12.3536 5.85355L7.35355 10.8536C7.17331 11.0338 6.8897 11.0477 6.69355 10.8951L6.64645 10.8536L4.14645 8.35355C3.95118 8.15829 3.95118 7.84171 4.14645 7.64645C4.32669 7.4662 4.6103 7.45234 4.80645 7.60485L4.85355 7.64645L7 9.7925L11.6464 5.14645Z",
897
- fill: "white"
898
- }
899
- )
900
- ]
1165
+ children: /* @__PURE__ */ jsx34(
1166
+ "path",
1167
+ {
1168
+ fillRule: "evenodd",
1169
+ clipRule: "evenodd",
1170
+ d: "M11.6464 5.14645C11.8417 4.95118 12.1583 4.95118 12.3536 5.14645C12.5338 5.32669 12.5477 5.6103 12.3951 5.80645L12.3536 5.85355L7.35355 10.8536C7.17331 11.0338 6.8897 11.0477 6.69355 10.8951L6.64645 10.8536L4.14645 8.35355C3.95118 8.15829 3.95118 7.84171 4.14645 7.64645C4.32669 7.4662 4.6103 7.45234 4.80645 7.60485L4.85355 7.64645L7 9.7925L11.6464 5.14645Z"
1171
+ }
1172
+ )
901
1173
  }
902
1174
  );
903
1175
  }
@@ -915,87 +1187,80 @@ var DefaultCheckbox = ({
915
1187
  // End of skipped attributes
916
1188
  ...attributes
917
1189
  } = initialAttributes;
918
- const intl = useIntl7();
1190
+ const intl = useIntl8();
919
1191
  const label = getNodeLabel2(node);
920
- const [checked, setChecked] = useState(Boolean(value));
921
1192
  const { register } = useForm();
922
- return /* @__PURE__ */ jsxs11(
923
- "div",
924
- {
925
- className: "flex antialiased gap-3 self-stretch item-start",
926
- onClick: () => {
927
- setChecked(!checked);
928
- },
929
- children: [
930
- /* @__PURE__ */ jsxs11("div", { className: "flex h-5 items-center", children: [
931
- /* @__PURE__ */ jsx19(
932
- "input",
933
- {
934
- ...attributes,
935
- checked,
936
- value: 1,
937
- type: "checkbox",
938
- className: cn(
939
- "peer w-4 h-4 border appearance-none rounded-border-radius-buttons",
940
- !checked && "bg-forms-checkbox-bg-default border-forms-checkbox-border-default",
941
- checked && "bg-forms-checkbox-bg-checked border-forms-checkbox-border-checked"
942
- ),
943
- ...register(name, { value })
944
- }
1193
+ const hasError = node.messages.some((m) => m.type === "error");
1194
+ return /* @__PURE__ */ jsxs22("label", { className: "flex items-start gap-3 self-stretch antialiased", children: [
1195
+ /* @__PURE__ */ jsxs22("span", { className: "flex h-5 items-center", children: [
1196
+ /* @__PURE__ */ jsx34(
1197
+ "input",
1198
+ {
1199
+ ...attributes,
1200
+ value: 1,
1201
+ defaultChecked: Boolean(value),
1202
+ type: "checkbox",
1203
+ className: cn(
1204
+ "peer size-4 border appearance-none rounded-forms bg-checkbox-background-default border-checkbox-border-checkbox-border-default checked:bg-checkbox-background-checked checked:border-checkbox-border-checkbox-border-checked",
1205
+ hasError && "border-interface-border-validation-danger"
945
1206
  ),
946
- /* @__PURE__ */ jsx19(CheckboxSVG, {})
947
- ] }),
948
- /* @__PURE__ */ jsxs11("div", { className: "text-sm items-center", children: [
949
- /* @__PURE__ */ jsx19("label", { className: "text-sm font-normal leading-normal text-forms-fg-default", children: /* @__PURE__ */ jsx19(CheckboxLabel, { label }) }),
950
- node.messages.map((message) => /* @__PURE__ */ jsx19(
951
- "span",
952
- {
953
- className: "text-sm text-red-900 mt-1",
954
- ...messageTestId2(message),
955
- children: uiTextToFormattedMessage4(message, intl)
956
- },
957
- message.id
958
- ))
959
- ] })
960
- ]
961
- }
962
- );
1207
+ ...register(name, { value })
1208
+ }
1209
+ ),
1210
+ /* @__PURE__ */ jsx34(CheckboxSVG, {})
1211
+ ] }),
1212
+ /* @__PURE__ */ jsxs22("span", { className: "flex flex-col", children: [
1213
+ /* @__PURE__ */ jsx34("span", { className: "font-normal leading-tight text-interface-foreground-default-primary", children: /* @__PURE__ */ jsx34(CheckboxLabel, { label }) }),
1214
+ node.messages.map((message) => /* @__PURE__ */ jsx34(
1215
+ "span",
1216
+ {
1217
+ className: cn(
1218
+ "mt-1",
1219
+ message.type === "error" ? "text-interface-foreground-validation-danger" : "text-interface-foreground-default-secondary"
1220
+ ),
1221
+ ...messageTestId2(message),
1222
+ children: uiTextToFormattedMessage5(message, intl)
1223
+ },
1224
+ message.id
1225
+ ))
1226
+ ] })
1227
+ ] });
963
1228
  };
964
1229
 
965
1230
  // src/theme/default/components/form/group-container.tsx
966
- import { jsx as jsx20 } from "react/jsx-runtime";
1231
+ import { jsx as jsx35 } from "react/jsx-runtime";
967
1232
  function DefaultGroupContainer({ children }) {
968
- return /* @__PURE__ */ jsx20("div", { className: "grid grid-cols-1 gap-6", children });
1233
+ return /* @__PURE__ */ jsx35("div", { className: "grid grid-cols-1 gap-8", children });
969
1234
  }
970
1235
 
971
1236
  // src/theme/default/components/form/horizontal-divider.tsx
972
- import { jsx as jsx21 } from "react/jsx-runtime";
1237
+ import { jsx as jsx36 } from "react/jsx-runtime";
973
1238
  function DefaultHorizontalDivider() {
974
- return /* @__PURE__ */ jsx21("hr", { className: "border-dialog-border-default" });
1239
+ return /* @__PURE__ */ jsx36("hr", { className: "border-interface-border-default-primary" });
975
1240
  }
976
1241
 
977
1242
  // src/theme/default/components/form/image.tsx
978
- import { jsx as jsx22 } from "react/jsx-runtime";
1243
+ import { jsx as jsx37 } from "react/jsx-runtime";
979
1244
  function DefaultImage({ attributes }) {
980
- return /* @__PURE__ */ jsx22("figure", { children: /* @__PURE__ */ jsx22("img", { ...attributes }) });
1245
+ return /* @__PURE__ */ jsx37("figure", { children: /* @__PURE__ */ jsx37("img", { ...attributes }) });
981
1246
  }
982
1247
 
983
1248
  // src/theme/default/components/form/input.tsx
984
- import { FlowType as FlowType6, getNodeLabel as getNodeLabel3 } from "@ory/client-fetch";
1249
+ import { FlowType as FlowType5, getNodeLabel as getNodeLabel3 } from "@ory/client-fetch";
985
1250
  import {
986
- uiTextToFormattedMessage as uiTextToFormattedMessage5,
1251
+ uiTextToFormattedMessage as uiTextToFormattedMessage6,
987
1252
  useOryFlow as useOryFlow7
988
1253
  } from "@ory/elements-react";
989
- import { useFormContext as useFormContext3 } from "react-hook-form";
990
- import { useIntl as useIntl8 } from "react-intl";
991
- import { jsx as jsx23 } from "react/jsx-runtime";
1254
+ import { useFormContext as useFormContext4 } from "react-hook-form";
1255
+ import { useIntl as useIntl9 } from "react-intl";
1256
+ import { jsx as jsx38 } from "react/jsx-runtime";
992
1257
  var DefaultInput = ({
993
1258
  node,
994
1259
  attributes,
995
1260
  onClick
996
1261
  }) => {
997
1262
  const label = getNodeLabel3(node);
998
- const { register } = useFormContext3();
1263
+ const { register } = useFormContext4();
999
1264
  const {
1000
1265
  value,
1001
1266
  autocomplete,
@@ -1004,7 +1269,7 @@ var DefaultInput = ({
1004
1269
  node_type: _,
1005
1270
  ...rest
1006
1271
  } = attributes;
1007
- const intl = useIntl8();
1272
+ const intl = useIntl9();
1008
1273
  const { flowType } = useOryFlow7();
1009
1274
  const formattedLabel = label ? intl.formatMessage(
1010
1275
  {
@@ -1012,10 +1277,10 @@ var DefaultInput = ({
1012
1277
  defaultMessage: "Enter your {placeholder}"
1013
1278
  },
1014
1279
  {
1015
- placeholder: uiTextToFormattedMessage5(label, intl)
1280
+ placeholder: uiTextToFormattedMessage6(label, intl)
1016
1281
  }
1017
1282
  ) : "";
1018
- return /* @__PURE__ */ jsx23(
1283
+ return /* @__PURE__ */ jsx38(
1019
1284
  "input",
1020
1285
  {
1021
1286
  ...rest,
@@ -1024,10 +1289,14 @@ var DefaultInput = ({
1024
1289
  autoComplete: autocomplete,
1025
1290
  placeholder: formattedLabel,
1026
1291
  className: cn(
1027
- "antialiased disabled:text-forms-fg-disabled disabled:bg-forms-bg-disabled bg-forms-bg-default rounded-border-radius-forms border border-forms-border-default leading-tight hover:border-forms-border-hover transition-colors text-sm",
1028
- "px-3 py-2.5",
1292
+ "antialiased rounded-forms border leading-tight transition-colors placeholder:h-[20px] placeholder:text-input-foreground-tertiary focus-visible:outline-none focus:ring-0",
1293
+ "bg-input-background-default border-input-border-default text-input-foreground-primary",
1294
+ "disabled:bg-input-background-disabled disabled:border-input-border-disabled disabled:text-input-foreground-disabled",
1295
+ "focus:border-input-border-focus focus-visible:border-input-border-focus",
1296
+ "hover:bg-input-background-hover hover:border-input-border-hover",
1297
+ "px-4 py-[13px]",
1029
1298
  // The settings flow input fields are supposed to be dense, so we don't need the extra padding we want on the user flows.
1030
- flowType === FlowType6.Settings ? "max-w-[488px]" : "md:px-4 md:py-4"
1299
+ flowType === FlowType5.Settings && "max-w-[488px]"
1031
1300
  ),
1032
1301
  ...register(name, { value })
1033
1302
  }
@@ -1035,16 +1304,20 @@ var DefaultInput = ({
1035
1304
  };
1036
1305
 
1037
1306
  // src/theme/default/components/form/label.tsx
1038
- import { FlowType as FlowType7, getNodeLabel as getNodeLabel4 } from "@ory/client-fetch";
1307
+ import {
1308
+ FlowType as FlowType6,
1309
+ getNodeLabel as getNodeLabel4,
1310
+ instanceOfUiText
1311
+ } from "@ory/client-fetch";
1039
1312
  import {
1040
1313
  messageTestId as messageTestId3,
1041
- uiTextToFormattedMessage as uiTextToFormattedMessage6,
1314
+ uiTextToFormattedMessage as uiTextToFormattedMessage7,
1042
1315
  useComponents as useComponents2,
1043
1316
  useOryFlow as useOryFlow8
1044
1317
  } from "@ory/elements-react";
1045
- import { useFormContext as useFormContext4 } from "react-hook-form";
1046
- import { useIntl as useIntl9 } from "react-intl";
1047
- import { jsx as jsx24, jsxs as jsxs12 } from "react/jsx-runtime";
1318
+ import { useFormContext as useFormContext5 } from "react-hook-form";
1319
+ import { useIntl as useIntl10 } from "react-intl";
1320
+ import { jsx as jsx39, jsxs as jsxs23 } from "react/jsx-runtime";
1048
1321
  function findResendNode(nodes) {
1049
1322
  return nodes.find(
1050
1323
  (n) => "name" in n.attributes && (n.attributes.name === "email" && n.attributes.type === "submit" || n.attributes.name === "resend")
@@ -1056,11 +1329,11 @@ function DefaultLabel({
1056
1329
  attributes,
1057
1330
  ...rest
1058
1331
  }) {
1059
- const intl = useIntl9();
1332
+ const intl = useIntl10();
1060
1333
  const label = getNodeLabel4(node);
1061
1334
  const { Message } = useComponents2();
1062
1335
  const { config, flowType, flow } = useOryFlow8();
1063
- const { setValue } = useFormContext4();
1336
+ const { setValue, formState } = useFormContext5();
1064
1337
  const isPassword = attributes.type === "password";
1065
1338
  const resendNode = findResendNode(flow.ui.nodes);
1066
1339
  const handleResend = () => {
@@ -1068,81 +1341,83 @@ function DefaultLabel({
1068
1341
  setValue(resendNode.attributes.name, resendNode.attributes.value);
1069
1342
  }
1070
1343
  };
1071
- return /* @__PURE__ */ jsxs12("div", { className: "flex flex-col antialiased gap-1", children: [
1072
- label && /* @__PURE__ */ jsxs12("span", { className: "inline-flex justify-between", children: [
1073
- /* @__PURE__ */ jsx24(
1344
+ const fieldError = formState.errors[attributes.name];
1345
+ return /* @__PURE__ */ jsxs23("div", { className: "flex flex-col gap-1 antialiased", children: [
1346
+ label && /* @__PURE__ */ jsxs23("span", { className: "inline-flex justify-between", children: [
1347
+ /* @__PURE__ */ jsx39(
1074
1348
  "label",
1075
1349
  {
1076
1350
  ...messageTestId3(label),
1077
- className: "text-sm font-medium leading-normal",
1351
+ className: "leading-normal text-input-foreground-primary",
1078
1352
  htmlFor: attributes.name,
1079
1353
  ...rest,
1080
- children: uiTextToFormattedMessage6(label, intl)
1354
+ children: uiTextToFormattedMessage7(label, intl)
1081
1355
  }
1082
1356
  ),
1083
- isPassword && config.project.recovery_enabled && flowType === FlowType7.Login && // TODO: make it possible to override with a custom component
1084
- /* @__PURE__ */ jsx24(
1357
+ isPassword && config.project.recovery_enabled && flowType === FlowType6.Login && // TODO: make it possible to override with a custom component
1358
+ /* @__PURE__ */ jsx39(
1085
1359
  "a",
1086
1360
  {
1087
1361
  href: config.project.recovery_ui_url,
1088
- className: "text-links-link-default hover:underline hover:text-link-hover transition-colors text-sm font-medium",
1362
+ className: "text-button-link-brand-brand transition-colors hover:text-button-link-brand-brand-hover underline",
1089
1363
  children: intl.formatMessage({
1090
1364
  id: "forms.label.forgot-password",
1091
1365
  defaultMessage: "Forgot password?"
1092
1366
  })
1093
1367
  }
1094
1368
  ),
1095
- (resendNode == null ? void 0 : resendNode.attributes.node_type) === "input" && /* @__PURE__ */ jsx24(
1369
+ (resendNode == null ? void 0 : resendNode.attributes.node_type) === "input" && /* @__PURE__ */ jsx39(
1096
1370
  "button",
1097
1371
  {
1098
1372
  type: "submit",
1099
1373
  name: resendNode.attributes.name,
1100
1374
  value: resendNode.attributes.value,
1101
1375
  onClick: handleResend,
1102
- className: "text-links-link-default hover:underline hover:text-link-hover transition-colors text-sm font-medium cursor-pointer",
1376
+ className: "cursor-pointer text-button-link-brand-brand transition-colors hover:text-button-link-brand-brand-hover underline",
1103
1377
  children: intl.formatMessage({ id: "identities.messages.1070008" })
1104
1378
  }
1105
1379
  )
1106
1380
  ] }),
1107
1381
  children,
1108
- node.messages.map((message) => /* @__PURE__ */ jsx24(Message.Content, { message }, message.id))
1382
+ node.messages.map((message) => /* @__PURE__ */ jsx39(Message.Content, { message }, message.id)),
1383
+ fieldError && instanceOfUiText(fieldError) && /* @__PURE__ */ jsx39(Message.Content, { message: fieldError })
1109
1384
  ] });
1110
1385
  }
1111
1386
 
1112
1387
  // src/theme/default/components/form/link-button.tsx
1113
1388
  import { getNodeLabel as getNodeLabel5 } from "@ory/client-fetch";
1114
1389
  import {
1115
- uiTextToFormattedMessage as uiTextToFormattedMessage7
1390
+ uiTextToFormattedMessage as uiTextToFormattedMessage8
1116
1391
  } from "@ory/elements-react";
1117
1392
  import { forwardRef } from "react";
1118
- import { useIntl as useIntl10 } from "react-intl";
1119
- import { jsx as jsx25 } from "react/jsx-runtime";
1393
+ import { useIntl as useIntl11 } from "react-intl";
1394
+ import { jsx as jsx40 } from "react/jsx-runtime";
1120
1395
  var DefaultLinkButton = forwardRef(({ attributes, node }, ref) => {
1121
- const intl = useIntl10();
1396
+ const intl = useIntl11();
1122
1397
  const label = getNodeLabel5(node);
1123
- return /* @__PURE__ */ jsx25(
1398
+ return /* @__PURE__ */ jsx40(
1124
1399
  "a",
1125
1400
  {
1126
1401
  ...attributes,
1127
1402
  ref,
1128
- title: label ? uiTextToFormattedMessage7(label, intl) : "",
1403
+ title: label ? uiTextToFormattedMessage8(label, intl) : "",
1129
1404
  className: cn(
1130
- "antialiased rounded cursor-pointer text-center border border-transparent gap-3 leading-none bg-button-primary-bg-default hover:bg-button-primary-bg-hover transition-colors text-button-primary-fg-default hover:text-button-primary-fg-hover px-4 py-4.5 text-sm font-medium"
1405
+ "antialiased rounded cursor-pointer text-center border gap-3 leading-none bg-button-primary-background-default hover:bg-button-primary-background-hover transition-colors text-button-primary-foreground-default hover:text-button-primary-foreground-hover p-4 font-medium"
1131
1406
  ),
1132
- children: label ? uiTextToFormattedMessage7(label, intl) : ""
1407
+ children: label ? uiTextToFormattedMessage8(label, intl) : ""
1133
1408
  }
1134
1409
  );
1135
1410
  });
1136
1411
  DefaultLinkButton.displayName = "DefaultLinkButton";
1137
1412
 
1138
1413
  // src/theme/default/components/form/pin-code-input.tsx
1139
- import { useFormContext as useFormContext5 } from "react-hook-form";
1414
+ import { useFormContext as useFormContext6 } from "react-hook-form";
1140
1415
 
1141
1416
  // src/theme/default/components/form/shadcn/otp-input.tsx
1142
1417
  import { OTPInput, OTPInputContext } from "input-otp";
1143
- import * as React8 from "react";
1144
- import { jsx as jsx26, jsxs as jsxs13 } from "react/jsx-runtime";
1145
- var InputOTP = React8.forwardRef(({ className, containerClassName, ...props }, ref) => /* @__PURE__ */ jsx26(
1418
+ import * as React21 from "react";
1419
+ import { jsx as jsx41, jsxs as jsxs24 } from "react/jsx-runtime";
1420
+ var InputOTP = React21.forwardRef(({ className, containerClassName, ...props }, ref) => /* @__PURE__ */ jsx41(
1146
1421
  OTPInput,
1147
1422
  {
1148
1423
  ref,
@@ -1155,24 +1430,25 @@ var InputOTP = React8.forwardRef(({ className, containerClassName, ...props }, r
1155
1430
  }
1156
1431
  ));
1157
1432
  InputOTP.displayName = "InputOTP";
1158
- var InputOTPGroup = React8.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx26("div", { ref, className: cn("flex items-center", className), ...props }));
1433
+ var InputOTPGroup = React21.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx41("div", { ref, className: cn("flex items-center", className), ...props }));
1159
1434
  InputOTPGroup.displayName = "InputOTPGroup";
1160
- var InputOTPSlot = React8.forwardRef(({ index, className, ...props }, ref) => {
1161
- const inputOTPContext = React8.useContext(OTPInputContext);
1435
+ var InputOTPSlot = React21.forwardRef(({ index, className, ...props }, ref) => {
1436
+ const inputOTPContext = React21.useContext(OTPInputContext);
1162
1437
  const { char, hasFakeCaret, isActive } = inputOTPContext.slots[index];
1163
- return /* @__PURE__ */ jsxs13(
1438
+ return /* @__PURE__ */ jsxs24(
1164
1439
  "div",
1165
1440
  {
1166
1441
  ref,
1167
1442
  className: cn(
1168
- "relative flex h-10 w-10 items-center justify-center border-y border-r border-input text-sm transition-all",
1169
- isActive && "z-10 ring-2 ring-ring ring-offset-background",
1443
+ "rounded-forms border border-solid bg-input-background-default py-[15px] text-center focus-visible:outline-none w-full",
1444
+ "relative flex items-center justify-center transition-all leading-none",
1445
+ isActive ? "border-input-border-focus" : "border-input-border-default",
1170
1446
  className
1171
1447
  ),
1172
1448
  ...props,
1173
1449
  children: [
1174
- char,
1175
- hasFakeCaret && /* @__PURE__ */ jsx26("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ jsx26("div", { className: "h-4 w-px animate-caret-blink bg-branding-bg-default duration-750" }) })
1450
+ /* @__PURE__ */ jsx41("span", { className: "inline-block size-4", children: char }),
1451
+ hasFakeCaret && /* @__PURE__ */ jsx41("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ jsx41("div", { className: "h-4 w-px animate-caret-blink bg-interface-background-brand-primary duration-700" }) })
1176
1452
  ]
1177
1453
  }
1178
1454
  );
@@ -1180,325 +1456,97 @@ var InputOTPSlot = React8.forwardRef(({ index, className, ...props }, ref) => {
1180
1456
  InputOTPSlot.displayName = "InputOTPSlot";
1181
1457
 
1182
1458
  // src/theme/default/components/form/pin-code-input.tsx
1183
- import { jsx as jsx27 } from "react/jsx-runtime";
1459
+ import { useOryFlow as useOryFlow9 } from "@ory/elements-react";
1460
+ import { FlowType as FlowType7 } from "@ory/client-fetch";
1461
+ import { jsx as jsx42 } from "react/jsx-runtime";
1184
1462
  var DefaultPinCodeInput = ({ attributes }) => {
1185
- const { setValue, watch } = useFormContext5();
1463
+ const { setValue, watch } = useFormContext6();
1186
1464
  const { maxlength, name } = attributes;
1187
1465
  const elements = maxlength != null ? maxlength : 6;
1466
+ const { flowType } = useOryFlow9();
1188
1467
  const handleInputChange = (v) => {
1189
1468
  setValue(name, v);
1190
1469
  };
1191
1470
  const value = watch(name);
1192
- return /* @__PURE__ */ jsx27(
1471
+ return /* @__PURE__ */ jsx42(
1193
1472
  InputOTP,
1194
1473
  {
1195
1474
  maxLength: maxlength != null ? maxlength : 6,
1196
1475
  onChange: handleInputChange,
1197
1476
  name,
1198
1477
  value,
1199
- children: /* @__PURE__ */ jsx27(InputOTPGroup, { className: "w-full space-x-2 justify-between", children: [...Array(elements)].map((_, index) => /* @__PURE__ */ jsx27(
1200
- InputOTPSlot,
1478
+ children: /* @__PURE__ */ jsx42(
1479
+ InputOTPGroup,
1201
1480
  {
1202
- index,
1203
- className: "text-center px-1.5 py-2.5 h-10 w-11 md:w-14 md:h-12 border border-radius border-solid rounded-border-radius-forms border-forms-border-default bg-forms-bg-default"
1204
- },
1205
- index
1206
- )) })
1481
+ className: cn(
1482
+ "w-full flex gap-2 justify-stretch",
1483
+ // The settings flow input fields are supposed to be dense, so we don't need the extra padding we want on the user flows.
1484
+ flowType === FlowType7.Settings && "max-w-[488px]"
1485
+ ),
1486
+ children: [...Array(elements)].map((_, index) => /* @__PURE__ */ jsx42(InputOTPSlot, { index }, index))
1487
+ }
1488
+ )
1207
1489
  }
1208
1490
  );
1209
1491
  };
1210
1492
 
1211
1493
  // src/theme/default/components/form/section.tsx
1212
- import { jsx as jsx28, jsxs as jsxs14 } from "react/jsx-runtime";
1213
- var DefaultFormSection = ({ children }) => {
1214
- return /* @__PURE__ */ jsx28("div", { className: "flex flex-col w-80 md:w-[712px] lg:w-[802px] xl:w-[896px]", children });
1494
+ import { jsx as jsx43, jsxs as jsxs25 } from "react/jsx-runtime";
1495
+ var DefaultFormSection = ({
1496
+ children,
1497
+ nodes: _nodes,
1498
+ ...rest
1499
+ }) => {
1500
+ return /* @__PURE__ */ jsx43(
1501
+ "form",
1502
+ {
1503
+ className: "flex w-full max-w-screen-sm flex-col md:max-w-[712px] lg:max-w-[802px] xl:max-w-[896px] px-4",
1504
+ ...rest,
1505
+ children
1506
+ }
1507
+ );
1215
1508
  };
1216
1509
  var DefaultFormSectionContent = ({
1217
1510
  title,
1218
1511
  description,
1219
1512
  children
1220
1513
  }) => {
1221
- return /* @__PURE__ */ jsxs14("div", { className: "border rounded-t-xl border-b-0 border-dialog-border-default bg-forms-bg-default px-6 py-8 flex flex-col gap-8", children: [
1222
- /* @__PURE__ */ jsxs14("div", { className: "flex flex-col gap-2", children: [
1223
- /* @__PURE__ */ jsx28("h3", { className: "font-medium text-dialog-fg-default", children: title }),
1224
- /* @__PURE__ */ jsx28("span", { className: "text-sm text-dialog-fg-subtle", children: description })
1514
+ return /* @__PURE__ */ jsxs25("div", { className: "flex flex-col gap-8 rounded-t-xl border border-b-0 border-interface-border-default-primary bg-interface-background-default-primary px-6 py-8", children: [
1515
+ /* @__PURE__ */ jsxs25("div", { className: "flex flex-col gap-2", children: [
1516
+ /* @__PURE__ */ jsx43("h3", { className: "font-medium text-interface-foreground-default-primary", children: title }),
1517
+ /* @__PURE__ */ jsx43("span", { className: "text-interface-foreground-default-secondary", children: description })
1225
1518
  ] }),
1226
1519
  children
1227
1520
  ] });
1228
1521
  };
1229
- var DefaultFormSectionFooter = ({ children }) => {
1230
- return /* @__PURE__ */ jsx28("div", { className: "rounded-b-xl gap-2 flex justify-end px-6 py-4 bg-dialog-bg-subtle border border-dialog-border-default text-sm text-dialog-fg-mute items-center [&>span]:mr-auto min-h-[72px]", children });
1231
- };
1232
-
1233
- // src/theme/default/components/form/social.tsx
1234
- import {
1235
- uiTextToFormattedMessage as uiTextToFormattedMessage8,
1236
- useOryFlow as useOryFlow9
1237
- } from "@ory/elements-react";
1238
-
1239
- // src/theme/default/provider-logos/apple.svg
1240
- import * as React9 from "react";
1241
- import { jsx as jsx29, jsxs as jsxs15 } from "react/jsx-runtime";
1242
- var SvgApple = (props) => {
1243
- var _a, _b;
1244
- return /* @__PURE__ */ jsxs15("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 32 32", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
1245
- /* @__PURE__ */ jsx29("path", { fill: "#283544", d: "M30 16c0 7.728-6.265 14-14 14S2 23.728 2 16C2 8.265 8.265 2 16 2s14 6.265 14 14" }),
1246
- /* @__PURE__ */ jsx29("path", { fill: "#fff", d: "M22.562 12.457c-.076.045-1.895.986-1.895 3.07.086 2.38 2.295 3.213 2.333 3.213-.038.045-.334 1.136-1.21 2.28-.694.986-1.466 1.98-2.637 1.98-1.114 0-1.514-.657-2.8-.657-1.381 0-1.772.657-2.829.657-1.171 0-2-1.047-2.733-2.023-.952-1.278-1.761-3.284-1.79-5.21-.02-1.02.19-2.023.724-2.875.752-1.19 2.095-1.997 3.561-2.023 1.124-.036 2.124.719 2.81.719.657 0 1.885-.72 3.275-.72.6.001 2.2.17 3.191 1.59m-6.561-1.792c-.2-.932.352-1.864.866-2.458.657-.72 1.695-1.207 2.59-1.207a3.33 3.33 0 0 1-.952 2.511c-.58.72-1.58 1.26-2.504 1.154" })
1247
- ] });
1248
- };
1249
- var apple_default = SvgApple;
1250
-
1251
- // src/theme/default/provider-logos/auth0.svg
1252
- import * as React10 from "react";
1253
- import { jsx as jsx30 } from "react/jsx-runtime";
1254
- var SvgAuth0 = (props) => {
1255
- var _a, _b;
1256
- return /* @__PURE__ */ jsx30("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 64 64", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx30("path", { fill: "#eb5424", d: "M49.012 51.774 42.514 32l17.008-12.22h-21.02L32.005 0h21.032l6.506 19.78c3.767 11.468-.118 24.52-10.53 31.993zm-34.023 0L31.998 64l17.015-12.226-17.008-12.22zm-10.516-32c-3.976 12.1.64 24.917 10.5 32.007v-.007L21.482 32 4.474 19.774l21.025.007L31.998 0H10.972z" }) });
1257
- };
1258
- var auth0_default = SvgAuth0;
1259
-
1260
- // src/theme/default/provider-logos/discord.svg
1261
- import * as React11 from "react";
1262
- import { jsx as jsx31, jsxs as jsxs16 } from "react/jsx-runtime";
1263
- var SvgDiscord = (props) => {
1264
- var _a, _b;
1265
- return /* @__PURE__ */ jsxs16("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 32 32", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
1266
- /* @__PURE__ */ jsx31("path", { d: "M2 11.6c0-3.36 0-5.04.654-6.324a6 6 0 0 1 2.622-2.622C6.56 2 8.24 2 11.6 2h8.8c3.36 0 5.04 0 6.324.654a6 6 0 0 1 2.622 2.622C30 6.56 30 8.24 30 11.6v8.8c0 3.36 0 5.04-.654 6.324a6 6 0 0 1-2.622 2.622C25.44 30 23.76 30 20.4 30h-8.8c-3.36 0-5.04 0-6.324-.654a6 6 0 0 1-2.622-2.622C2 25.44 2 23.76 2 20.4z" }),
1267
- /* @__PURE__ */ jsx31("path", { fill: "#5865F2", d: "M23.636 9.34A18.8 18.8 0 0 0 19.097 8c-.195.332-.424.779-.581 1.134a17.7 17.7 0 0 0-5.03 0A12 12 0 0 0 12.897 8a18.7 18.7 0 0 0-4.542 1.343c-2.872 4.078-3.65 8.055-3.262 11.975a18.6 18.6 0 0 0 5.567 2.68c.448-.58.848-1.195 1.192-1.844a12 12 0 0 1-1.877-.859 9 9 0 0 0 .46-.342c3.62 1.59 7.553 1.59 11.13 0q.225.178.46.342c-.595.337-1.225.626-1.88.86q.516.974 1.191 1.845a18.6 18.6 0 0 0 5.57-2.682c.457-4.544-.78-8.484-3.27-11.978m-11.29 9.567c-1.087 0-1.978-.953-1.978-2.113s.872-2.116 1.977-2.116c1.106 0 1.997.953 1.978 2.116.002 1.16-.872 2.113-1.978 2.113m7.308 0c-1.086 0-1.977-.953-1.977-2.113s.872-2.116 1.977-2.116c1.106 0 1.997.953 1.978 2.116 0 1.16-.872 2.113-1.978 2.113" })
1268
- ] });
1269
- };
1270
- var discord_default = SvgDiscord;
1271
-
1272
- // src/theme/default/provider-logos/facebook.svg
1273
- import * as React12 from "react";
1274
- import { jsx as jsx32, jsxs as jsxs17 } from "react/jsx-runtime";
1275
- var SvgFacebook = (props) => {
1276
- var _a, _b;
1277
- return /* @__PURE__ */ jsxs17("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
1278
- /* @__PURE__ */ jsxs17("g", { clipPath: "url(#facebook_svg__a)", children: [
1279
- /* @__PURE__ */ jsx32("path", { fill: "#1877F2", d: "M24 12c0-6.627-5.373-12-12-12C5.372 0 0 5.374 0 12c0 5.99 4.388 10.954 10.125 11.854V15.47H7.078V12h3.047V9.357c0-3.008 1.791-4.669 4.532-4.669 1.313 0 2.686.234 2.686.234v2.953H15.83c-1.49 0-1.955.925-1.955 1.874V12h3.328l-.532 3.469h-2.796v8.385c5.736-.9 10.124-5.864 10.124-11.854" }),
1280
- /* @__PURE__ */ jsx32("path", { fill: "#fff", d: "M16.67 15.469 17.204 12h-3.328V9.75c0-.95.465-1.875 1.955-1.875h1.513V4.922s-1.373-.234-2.686-.234c-2.74 0-4.532 1.661-4.532 4.669V12H7.078v3.469h3.047v8.385a12.1 12.1 0 0 0 3.75 0V15.47z" })
1281
- ] }),
1282
- /* @__PURE__ */ jsx32("defs", { children: /* @__PURE__ */ jsx32("clipPath", { id: "facebook_svg__a", children: /* @__PURE__ */ jsx32("rect", { fill: "#fff" }) }) })
1283
- ] });
1284
- };
1285
- var facebook_default = SvgFacebook;
1286
-
1287
- // src/theme/default/provider-logos/generic.svg
1288
- import * as React13 from "react";
1289
- import { jsx as jsx33, jsxs as jsxs18 } from "react/jsx-runtime";
1290
- var SvgGeneric = (props) => {
1291
- var _a, _b;
1292
- return /* @__PURE__ */ jsxs18("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, className: "generic_svg__icon generic_svg__icon-tabler generic_svg__icon-tabler-brand-oauth", viewBox: "0 0 24 24", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
1293
- /* @__PURE__ */ jsx33("path", { stroke: "none", d: "M0 0h24v24H0z" }),
1294
- /* @__PURE__ */ jsx33("path", { d: "M2 12a10 10 0 1 0 20 0 10 10 0 1 0-20 0" }),
1295
- /* @__PURE__ */ jsx33("path", { d: "M12.556 6c.65 0 1.235.373 1.508.947l2.839 7.848a1.646 1.646 0 0 1-1.01 2.108 1.673 1.673 0 0 1-2.068-.851L13.365 15h-2.73l-.398.905A1.67 1.67 0 0 1 8.26 16.95l-.153-.047a1.647 1.647 0 0 1-1.056-1.956l2.824-7.852a1.66 1.66 0 0 1 1.409-1.087z" })
1296
- ] });
1297
- };
1298
- var generic_default = SvgGeneric;
1299
-
1300
- // src/theme/default/provider-logos/github.svg
1301
- import * as React14 from "react";
1302
- import { jsx as jsx34 } from "react/jsx-runtime";
1303
- var SvgGithub = (props) => {
1304
- var _a, _b;
1305
- return /* @__PURE__ */ jsx34("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx34("path", { d: "M12 0C5.374 0 0 5.373 0 12c0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 3.301 1.23A11.5 11.5 0 0 1 12 5.803c1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 2.222v3.293c0 .319.192.694.801.576C20.566 21.797 24 17.3 24 12c0-6.627-5.373-12-12-12" }) });
1306
- };
1307
- var github_default = SvgGithub;
1308
-
1309
- // src/theme/default/provider-logos/gitlab.svg
1310
- import * as React15 from "react";
1311
- import { jsx as jsx35, jsxs as jsxs19 } from "react/jsx-runtime";
1312
- var SvgGitlab = (props) => {
1313
- var _a, _b;
1314
- return /* @__PURE__ */ jsxs19("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
1315
- /* @__PURE__ */ jsx35("path", { fill: "#E24329", d: "m22.708 10.691-.031-.072-3.015-7.167a.74.74 0 0 0-.31-.34.87.87 0 0 0-.923.045.73.73 0 0 0-.268.37L16.125 9.2H7.881L5.845 3.527a.72.72 0 0 0-.268-.371.87.87 0 0 0-.923-.045.74.74 0 0 0-.31.34l-3.021 7.164-.03.072a4.67 4.67 0 0 0-.153 3.23c.335 1.063 1.04 1.998 2.01 2.664l.01.007.028.018 4.594 3.132 2.272 1.567 1.384.952c.162.112.36.172.563.172s.401-.06.563-.172l1.384-.952 2.273-1.567 4.62-3.151.012-.009c.968-.666 1.671-1.6 2.006-2.661a4.67 4.67 0 0 0-.15-3.226" }),
1316
- /* @__PURE__ */ jsx35("path", { fill: "#FC6D26", d: "m22.708 10.691-.031-.072a10.7 10.7 0 0 0-4.055 1.66L12 16.839l4.218 2.904 4.621-3.152.012-.008c.969-.666 1.674-1.601 2.008-2.664a4.67 4.67 0 0 0-.15-3.228" }),
1317
- /* @__PURE__ */ jsx35("path", { fill: "#FCA326", d: "m7.781 19.743 2.273 1.566 1.384.952c.162.112.36.172.563.172s.401-.06.563-.172l1.384-.952 2.273-1.566S14.255 18.389 12 16.839c-2.255 1.55-4.219 2.904-4.219 2.904" }),
1318
- /* @__PURE__ */ jsx35("path", { fill: "#FC6D26", d: "M5.376 12.279a10.7 10.7 0 0 0-4.053-1.664l-.03.072a4.67 4.67 0 0 0-.153 3.23c.335 1.063 1.04 1.998 2.01 2.664l.01.007.028.018 4.594 3.132L12 16.836z" })
1319
- ] });
1320
- };
1321
- var gitlab_default = SvgGitlab;
1322
-
1323
- // src/theme/default/provider-logos/google.svg
1324
- import * as React16 from "react";
1325
- import { jsx as jsx36, jsxs as jsxs20 } from "react/jsx-runtime";
1326
- var SvgGoogle = (props) => {
1327
- var _a, _b;
1328
- return /* @__PURE__ */ jsxs20("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
1329
- /* @__PURE__ */ jsx36("path", { fill: "#4285F4", d: "M23.745 12.27c0-.79-.07-1.54-.19-2.27h-11.3v4.51h6.47c-.29 1.48-1.14 2.73-2.4 3.58v3h3.86c2.26-2.09 3.56-5.17 3.56-8.82" }),
1330
- /* @__PURE__ */ jsx36("path", { fill: "#34A853", d: "M12.255 24c3.24 0 5.95-1.08 7.93-2.91l-3.86-3c-1.08.72-2.45 1.16-4.07 1.16-3.13 0-5.78-2.11-6.73-4.96h-3.98v3.09C3.515 21.3 7.565 24 12.255 24" }),
1331
- /* @__PURE__ */ jsx36("path", { fill: "#FBBC05", d: "M5.525 14.29c-.25-.72-.38-1.49-.38-2.29s.14-1.57.38-2.29V6.62h-3.98a11.86 11.86 0 0 0 0 10.76z" }),
1332
- /* @__PURE__ */ jsx36("path", { fill: "#EA4335", d: "M12.255 4.75c1.77 0 3.35.61 4.6 1.8l3.42-3.42C18.205 1.19 15.495 0 12.255 0c-4.69 0-8.74 2.7-10.71 6.62l3.98 3.09c.95-2.85 3.6-4.96 6.73-4.96" })
1333
- ] });
1334
- };
1335
- var google_default = SvgGoogle;
1336
-
1337
- // src/theme/default/provider-logos/linkedin.svg
1338
- import * as React17 from "react";
1339
- import { jsx as jsx37, jsxs as jsxs21 } from "react/jsx-runtime";
1340
- var SvgLinkedin = (props) => {
1341
- var _a, _b;
1342
- return /* @__PURE__ */ jsxs21("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 32 32", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
1343
- /* @__PURE__ */ jsx37("rect", { x: 2, y: 2, fill: "#1275B1", rx: 14 }),
1344
- /* @__PURE__ */ jsx37("path", { fill: "#fff", d: "M12.619 9.692c0 .935-.81 1.692-1.81 1.692C9.81 11.384 9 10.627 9 9.692S9.81 8 10.81 8c.999 0 1.809.758 1.809 1.692M9.247 12.628h3.093V22H9.247zM17.32 12.628h-3.093V22h3.093v-4.795c0-1.107.378-2.22 1.886-2.22 1.705 0 1.695 1.45 1.687 2.572-.01 1.467.014 2.965.014 4.443H24v-4.946c-.026-3.159-.85-4.614-3.557-4.614-1.608 0-2.604.73-3.123 1.39z" })
1345
- ] });
1346
- };
1347
- var linkedin_default = SvgLinkedin;
1348
-
1349
- // src/theme/default/provider-logos/microsoft.svg
1350
- import * as React18 from "react";
1351
- import { jsx as jsx38, jsxs as jsxs22 } from "react/jsx-runtime";
1352
- var SvgMicrosoft = (props) => {
1353
- var _a, _b;
1354
- return /* @__PURE__ */ jsxs22("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 23 23", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
1355
- /* @__PURE__ */ jsx38("path", { fill: "#F35325", d: "M1 1h10v10H1z" }),
1356
- /* @__PURE__ */ jsx38("path", { fill: "#81BC06", d: "M12 1h10v10H12z" }),
1357
- /* @__PURE__ */ jsx38("path", { fill: "#05A6F0", d: "M1 12h10v10H1z" }),
1358
- /* @__PURE__ */ jsx38("path", { fill: "#FFBA08", d: "M12 12h10v10H12z" })
1359
- ] });
1360
- };
1361
- var microsoft_default = SvgMicrosoft;
1362
-
1363
- // src/theme/default/provider-logos/slack.svg
1364
- import * as React19 from "react";
1365
- import { jsx as jsx39, jsxs as jsxs23 } from "react/jsx-runtime";
1366
- var SvgSlack = (props) => {
1367
- var _a, _b;
1368
- return /* @__PURE__ */ jsxs23("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 32 32", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
1369
- /* @__PURE__ */ jsx39("path", { fill: "#2EB67D", d: "M26.5 15a2.5 2.5 0 1 0-2.5-2.5V15zm-7 0a2.5 2.5 0 0 0 2.5-2.5v-7a2.5 2.5 0 0 0-5 0v7a2.5 2.5 0 0 0 2.5 2.5" }),
1370
- /* @__PURE__ */ jsx39("path", { fill: "#E01E5A", d: "M5.5 17A2.5 2.5 0 1 0 8 19.5V17zm7 0a2.5 2.5 0 0 0-2.5 2.5v7a2.5 2.5 0 0 0 5 0v-7a2.5 2.5 0 0 0-2.5-2.5" }),
1371
- /* @__PURE__ */ jsx39("path", { fill: "#ECB22E", d: "M17 26.5a2.5 2.5 0 1 0 2.5-2.5H17zm0-7a2.5 2.5 0 0 0 2.5 2.5h7a2.5 2.5 0 0 0 0-5h-7a2.5 2.5 0 0 0-2.5 2.5" }),
1372
- /* @__PURE__ */ jsx39("path", { fill: "#36C5F0", d: "M15 5.5A2.5 2.5 0 1 0 12.5 8H15zm0 7a2.5 2.5 0 0 0-2.5-2.5h-7a2.5 2.5 0 0 0 0 5h7a2.5 2.5 0 0 0 2.5-2.5" })
1373
- ] });
1374
- };
1375
- var slack_default = SvgSlack;
1376
-
1377
- // src/theme/default/provider-logos/spotify.svg
1378
- import * as React20 from "react";
1379
- import { jsx as jsx40, jsxs as jsxs24 } from "react/jsx-runtime";
1380
- var SvgSpotify = (props) => {
1381
- var _a, _b;
1382
- return /* @__PURE__ */ jsxs24("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 32 32", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
1383
- /* @__PURE__ */ jsx40("circle", { cx: 16, cy: 16, r: 14, fill: "#1ED760" }),
1384
- /* @__PURE__ */ jsx40("path", { fill: "#fff", d: "M22.364 21.623c-.239.38-.75.486-1.148.258-3.141-1.822-7.08-2.232-11.736-1.23-.446.091-.893-.167-.988-.592a.786.786 0 0 1 .621-.94c5.087-1.11 9.456-.639 12.964 1.41a.77.77 0 0 1 .287 1.094m1.627-3.461c-.303.47-.941.607-1.435.334-3.588-2.11-9.058-2.718-13.299-1.488-.558.152-1.132-.137-1.292-.653-.16-.531.144-1.078.702-1.23 4.848-1.396 10.875-.728 15.005 1.686.462.273.622.88.319 1.35m.143-3.613c-4.305-2.43-11.4-2.657-15.515-1.473-.654.197-1.355-.152-1.563-.79-.207-.622.176-1.29.83-1.487 4.72-1.366 12.565-1.093 17.508 1.7.59.334.781 1.063.43 1.625-.334.576-1.1.774-1.69.425" })
1385
- ] });
1386
- };
1387
- var spotify_default = SvgSpotify;
1388
-
1389
- // src/theme/default/provider-logos/yandex.svg
1390
- import * as React21 from "react";
1391
- import { jsx as jsx41, jsxs as jsxs25 } from "react/jsx-runtime";
1392
- var SvgYandex = (props) => {
1393
- var _a, _b;
1394
- return /* @__PURE__ */ jsxs25("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 32 32", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: [
1395
- /* @__PURE__ */ jsx41("circle", { cx: 16, cy: 16, r: 14, fill: "#fff" }),
1396
- /* @__PURE__ */ jsx41("path", { fill: "#FC3F1D", d: "M21 25h-3.143V9.435h-1.402c-2.572 0-3.922 1.294-3.922 3.211 0 2.175.935 3.185 2.857 4.48l1.584 1.063L12.403 25H9l4.104-6.086c-2.363-1.684-3.688-3.316-3.688-6.087C9.416 9.357 11.83 7 16.429 7H21z" })
1397
- ] });
1398
- };
1399
- var yandex_default = SvgYandex;
1400
-
1401
- // src/theme/default/provider-logos/index.ts
1402
- var logos = {
1403
- apple: apple_default,
1404
- auth0: auth0_default,
1405
- discord: discord_default,
1406
- facebook: facebook_default,
1407
- generic: generic_default,
1408
- github: github_default,
1409
- gitlab: gitlab_default,
1410
- google: google_default,
1411
- linkedin: linkedin_default,
1412
- microsoft: microsoft_default,
1413
- slack: slack_default,
1414
- spotify: spotify_default,
1415
- yandex: yandex_default
1416
- };
1417
- var provider_logos_default = logos;
1418
-
1419
- // src/theme/default/components/form/social.tsx
1420
- import { useIntl as useIntl11 } from "react-intl";
1421
- import { jsx as jsx42, jsxs as jsxs26 } from "react/jsx-runtime";
1422
- function extractProvider(context) {
1423
- if (context && typeof context === "object" && "provider" in context && typeof context.provider === "string") {
1424
- return context.provider;
1425
- }
1426
- return void 0;
1427
- }
1428
- function DefaultButtonSocial({
1429
- attributes,
1430
- node,
1431
- onClick,
1432
- showLabel: _showLabel
1433
- }) {
1434
- var _a, _b, _c;
1435
- const {
1436
- node_type: _ignoredNodeType,
1437
- type: _ignoredType,
1438
- name: _ignoredName,
1439
- ...props
1440
- } = attributes;
1441
- const {
1442
- flow: { ui }
1443
- } = useOryFlow9();
1444
- const intl = useIntl11();
1445
- const oidcNodeCount = (_a = ui.nodes.filter((node2) => node2.group === "oidc").length) != null ? _a : 0;
1446
- const Logo = provider_logos_default[attributes.value];
1447
- const showLabel = _showLabel != null ? _showLabel : oidcNodeCount % 3 !== 0 && oidcNodeCount % 4 !== 0;
1448
- const provider = (_c = extractProvider((_b = node.meta.label) == null ? void 0 : _b.context)) != null ? _c : "";
1449
- return /* @__PURE__ */ jsxs26(
1450
- "button",
1522
+ var DefaultFormSectionFooter = ({
1523
+ children,
1524
+ text
1525
+ }) => {
1526
+ return /* @__PURE__ */ jsxs25(
1527
+ "div",
1451
1528
  {
1452
1529
  className: cn(
1453
- "gap-3 ring-1 ring-forms-border-default bg-button-secondary-bg-default hover:bg-button-secondary-bg-hover transition-colors rounded flex items-center justify-center py-2.5 px-4 md:py-4",
1454
- { "py-2.5": showLabel }
1530
+ "flex min-h-[72px] items-center justify-between gap-2 rounded-b-xl border border-interface-border-default-primary bg-interface-background-default-secondary px-6 py-4 text-interface-foreground-default-tertiary"
1455
1531
  ),
1456
- value: attributes.value,
1457
- type: "submit",
1458
- name: "provider",
1459
- ...props,
1460
- onClick,
1461
1532
  children: [
1462
- /* @__PURE__ */ jsx42("span", { className: "w-5 h-5", children: Logo ? /* @__PURE__ */ jsx42(
1463
- Logo,
1464
- {
1465
- size: 20,
1466
- className: "object-fill w-full h-full"
1467
- }
1468
- ) : /* @__PURE__ */ jsx42("span", { className: "rounded-full aspect-square border flex items-center justify-center text-xs", children: provider.slice(0, 2) }) }),
1469
- showLabel && node.meta.label ? /* @__PURE__ */ jsx42("span", { className: "text-sm text-left leading-none font-medium text-forms-fg-default flex-grow", children: uiTextToFormattedMessage8(node.meta.label, intl) }) : null
1533
+ /* @__PURE__ */ jsx43("span", { children: text }),
1534
+ children
1470
1535
  ]
1471
1536
  }
1472
1537
  );
1473
- }
1474
- function DefaultSocialButtonContainer({
1475
- children,
1476
- nodes
1477
- }) {
1478
- return /* @__PURE__ */ jsx42(
1479
- "div",
1480
- {
1481
- className: cn("grid gap-3", {
1482
- // needed because tailwind is not compiling dynamic classes
1483
- "grid-cols-1": nodes.length % 4 <= 2,
1484
- "grid-cols-3": nodes.length % 3 === 0,
1485
- "grid-cols-4": nodes.length > 1 && nodes.length % 4 === 0
1486
- }),
1487
- children
1488
- }
1489
- );
1490
- }
1538
+ };
1491
1539
 
1492
1540
  // src/theme/default/components/form/text.tsx
1493
1541
  import { uiTextToFormattedMessage as uiTextToFormattedMessage9 } from "@ory/elements-react";
1494
1542
  import { useIntl as useIntl12 } from "react-intl";
1495
- import { Fragment as Fragment3, jsx as jsx43, jsxs as jsxs27 } from "react/jsx-runtime";
1543
+ import { Fragment as Fragment3, jsx as jsx44, jsxs as jsxs26 } from "react/jsx-runtime";
1496
1544
  function DefaultText({ node, attributes }) {
1497
1545
  var _a;
1498
1546
  const intl = useIntl12();
1499
- return /* @__PURE__ */ jsxs27(Fragment3, { children: [
1500
- /* @__PURE__ */ jsx43("p", { "data-testid": `node/text/${attributes.id}/label`, children: node.meta.label ? uiTextToFormattedMessage9(node.meta.label, intl) : "" }),
1501
- (_a = attributes.text.context.secrets) == null ? void 0 : _a.map((text, index) => /* @__PURE__ */ jsx43("pre", { "data-testid": `node/text/lookup_secret_codes/text`, children: /* @__PURE__ */ jsx43("code", { children: text ? uiTextToFormattedMessage9(text, intl) : "" }) }, index))
1547
+ return /* @__PURE__ */ jsxs26(Fragment3, { children: [
1548
+ /* @__PURE__ */ jsx44("p", { "data-testid": `node/text/${attributes.id}/label`, children: node.meta.label ? uiTextToFormattedMessage9(node.meta.label, intl) : "" }),
1549
+ (_a = attributes.text.context.secrets) == null ? void 0 : _a.map((text, index) => /* @__PURE__ */ jsx44("pre", { "data-testid": `node/text/lookup_secret_codes/text`, children: /* @__PURE__ */ jsx44("code", { children: text ? uiTextToFormattedMessage9(text, intl) : "" }) }, index))
1502
1550
  ] });
1503
1551
  }
1504
1552
 
@@ -1507,7 +1555,7 @@ import { useComponents as useComponents3 } from "@ory/elements-react";
1507
1555
 
1508
1556
  // src/theme/default/components/ui/user-menu.tsx
1509
1557
  import { DropdownMenuLabel as DropdownMenuLabel2 } from "@radix-ui/react-dropdown-menu";
1510
- import { useCallback, useEffect, useState as useState2 } from "react";
1558
+ import { useCallback, useEffect, useState } from "react";
1511
1559
  import { useOryFlow as useOryFlow10 } from "@ory/elements-react";
1512
1560
 
1513
1561
  // src/util/client.ts
@@ -1529,32 +1577,35 @@ function frontendClient(sdkUrl, opts = {}) {
1529
1577
 
1530
1578
  // src/theme/default/assets/icons/logout.svg
1531
1579
  import * as React22 from "react";
1532
- import { jsx as jsx44 } from "react/jsx-runtime";
1580
+ import { jsx as jsx45 } from "react/jsx-runtime";
1533
1581
  var SvgLogout = (props) => {
1534
1582
  var _a, _b;
1535
- return /* @__PURE__ */ jsx44("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 16 16", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx44("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M9.333 5.334V4A1.333 1.333 0 0 0 8 2.667H3.333A1.333 1.333 0 0 0 2 4v8a1.333 1.333 0 0 0 1.333 1.334H8A1.333 1.333 0 0 0 9.333 12v-1.333M4.667 8H14m0 0-2-2m2 2-2 2" }) });
1583
+ return /* @__PURE__ */ jsx45("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 16 16", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx45("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M9.333 5.334V4A1.333 1.333 0 0 0 8 2.667H3.333A1.333 1.333 0 0 0 2 4v8a1.333 1.333 0 0 0 1.333 1.334H8A1.333 1.333 0 0 0 9.333 12v-1.333M4.667 8H14m0 0-2-2m2 2-2 2" }) });
1536
1584
  };
1537
1585
  var logout_default = SvgLogout;
1538
1586
 
1539
1587
  // src/theme/default/assets/icons/settings.svg
1540
1588
  import * as React23 from "react";
1541
- import { jsx as jsx45, jsxs as jsxs28 } from "react/jsx-runtime";
1589
+ import { jsx as jsx46, jsxs as jsxs27 } from "react/jsx-runtime";
1542
1590
  var SvgSettings = (props) => {
1543
1591
  var _a, _b;
1544
- return /* @__PURE__ */ jsx45("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 16 16", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsxs28("g", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", children: [
1545
- /* @__PURE__ */ jsx45("path", { d: "M6.883 2.878c.284-1.17 1.95-1.17 2.234 0a1.15 1.15 0 0 0 1.715.71c1.029-.626 2.207.551 1.58 1.58a1.148 1.148 0 0 0 .71 1.715c1.17.284 1.17 1.95 0 2.234a1.15 1.15 0 0 0-.71 1.715c.626 1.029-.551 2.207-1.58 1.58a1.148 1.148 0 0 0-1.715.71c-.284 1.17-1.95 1.17-2.234 0a1.15 1.15 0 0 0-1.715-.71c-1.029.626-2.207-.551-1.58-1.58a1.15 1.15 0 0 0-.71-1.715c-1.17-.284-1.17-1.95 0-2.234a1.15 1.15 0 0 0 .71-1.715c-.626-1.029.551-2.207 1.58-1.58.667.405 1.531.047 1.715-.71" }),
1546
- /* @__PURE__ */ jsx45("path", { d: "M6 8a2 2 0 1 0 4 0 2 2 0 0 0-4 0" })
1592
+ return /* @__PURE__ */ jsx46("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 16 16", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsxs27("g", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", children: [
1593
+ /* @__PURE__ */ jsx46("path", { d: "M6.883 2.878c.284-1.17 1.95-1.17 2.234 0a1.15 1.15 0 0 0 1.715.71c1.029-.626 2.207.551 1.58 1.58a1.148 1.148 0 0 0 .71 1.715c1.17.284 1.17 1.95 0 2.234a1.15 1.15 0 0 0-.71 1.715c.626 1.029-.551 2.207-1.58 1.58a1.148 1.148 0 0 0-1.715.71c-.284 1.17-1.95 1.17-2.234 0a1.15 1.15 0 0 0-1.715-.71c-1.029.626-2.207-.551-1.58-1.58a1.15 1.15 0 0 0-.71-1.715c-1.17-.284-1.17-1.95 0-2.234a1.15 1.15 0 0 0 .71-1.715c-.626-1.029.551-2.207 1.58-1.58.667.405 1.531.047 1.715-.71" }),
1594
+ /* @__PURE__ */ jsx46("path", { d: "M6 8a2 2 0 1 0 4 0 2 2 0 0 0-4 0" })
1547
1595
  ] }) });
1548
1596
  };
1549
1597
  var settings_default = SvgSettings;
1550
1598
 
1551
1599
  // src/theme/default/utils/user.ts
1600
+ function isTraitsIndexable(traits) {
1601
+ return typeof traits === "object" && traits !== null;
1602
+ }
1552
1603
  var getUserInitials = (session) => {
1553
1604
  var _a, _b;
1554
1605
  const avatar = "";
1555
1606
  let primary = "";
1556
1607
  let secondary = "";
1557
- if (!((_a = session == null ? void 0 : session.identity) == null ? void 0 : _a.traits)) {
1608
+ if (!((_a = session == null ? void 0 : session.identity) == null ? void 0 : _a.traits) || !isTraitsIndexable(session.identity.traits)) {
1558
1609
  return {
1559
1610
  primary,
1560
1611
  secondary,
@@ -1562,14 +1613,14 @@ var getUserInitials = (session) => {
1562
1613
  };
1563
1614
  }
1564
1615
  const traits = (_b = session.identity) == null ? void 0 : _b.traits;
1565
- if (traits.email) {
1616
+ if (traits.email && typeof traits.email === "string") {
1566
1617
  secondary = traits.email;
1567
1618
  }
1568
1619
  if (traits.name) {
1569
1620
  if (typeof traits.name === "string") {
1570
1621
  primary = traits.name;
1571
1622
  }
1572
- if (traits.name.first && traits.name.last) {
1623
+ if (typeof traits.name === "object" && traits.name && traits.name.first && traits.name.last) {
1573
1624
  primary = traits.name.first + " " + traits.name.last;
1574
1625
  }
1575
1626
  }
@@ -1587,10 +1638,10 @@ var getUserInitials = (session) => {
1587
1638
  // src/theme/default/components/ui/dropdown-menu.tsx
1588
1639
  import { forwardRef as forwardRef3 } from "react";
1589
1640
  import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
1590
- import { jsx as jsx46 } from "react/jsx-runtime";
1641
+ import { jsx as jsx47 } from "react/jsx-runtime";
1591
1642
  var DropdownMenu = DropdownMenuPrimitive.Root;
1592
1643
  var DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;
1593
- var DropdownMenuContent = forwardRef3(({ className, sideOffset = 16, ...props }, ref) => /* @__PURE__ */ jsx46(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx46(
1644
+ var DropdownMenuContent = forwardRef3(({ className, sideOffset = 16, ...props }, ref) => /* @__PURE__ */ jsx47(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx47(
1594
1645
  DropdownMenuPrimitive.Content,
1595
1646
  {
1596
1647
  ref,
@@ -1598,24 +1649,24 @@ var DropdownMenuContent = forwardRef3(({ className, sideOffset = 16, ...props },
1598
1649
  align: "end",
1599
1650
  className: cn(
1600
1651
  "z-50 min-w-[19rem] overflow-hidden data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
1601
- "border border-dialog-border-default bg-dialog-bg-default rounded-border-radius-cards",
1652
+ "border border-interface-border-default-primary bg-interface-background-default-primary rounded-cards",
1602
1653
  className
1603
1654
  ),
1604
1655
  ...props
1605
1656
  }
1606
1657
  ) }));
1607
1658
  DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
1608
- var DropdownMenuItem = forwardRef3(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx46(
1659
+ var DropdownMenuItem = forwardRef3(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx47(
1609
1660
  DropdownMenuPrimitive.Item,
1610
1661
  {
1611
1662
  ref,
1612
1663
  className: cn(
1613
1664
  "relative flex cursor-pointer select-none items-center outline-none transition-colors data-[disabled]:pointer-events-none",
1614
1665
  "px-8 py-3 lg:py-4.5 text-sm gap-6",
1615
- "first:border-0 border-t border-button-secondary-border-default hover:border-button-social-border-hover data-[disabled]:border-button-secondary-border-disabled",
1616
- "text-button-secondary-fg-default bg-button-secondary-bg-default",
1617
- "hover:text-button-secondary-fg-hover hover:bg-button-secondary-bg-hover",
1618
- "data-[disabled]:text-button-secondary-fg-disabled data-[disabled]:bg-button-secondary-bg-disabled",
1666
+ "first:border-0 border-t border-button-secondary-border-default hover:border-button-social-border-hover",
1667
+ "text-button-secondary-foreground-default bg-button-secondary-background-default",
1668
+ "hover:text-button-secondary-foreground-hover hover:bg-button-secondary-background-hover",
1669
+ "data-[disabled]:text-button-secondary-foreground-disabled data-[disabled]:bg-button-secondary-background-disabled",
1619
1670
  inset && "pl-8",
1620
1671
  className
1621
1672
  ),
@@ -1623,7 +1674,7 @@ var DropdownMenuItem = forwardRef3(({ className, inset, ...props }, ref) => /* @
1623
1674
  }
1624
1675
  ));
1625
1676
  DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
1626
- var DropdownMenuLabel = forwardRef3(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx46(
1677
+ var DropdownMenuLabel = forwardRef3(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx47(
1627
1678
  DropdownMenuPrimitive.Label,
1628
1679
  {
1629
1680
  ref,
@@ -1642,31 +1693,37 @@ import { forwardRef as forwardRef4 } from "react";
1642
1693
 
1643
1694
  // src/theme/default/assets/icons/user.svg
1644
1695
  import * as React24 from "react";
1645
- import { jsx as jsx47 } from "react/jsx-runtime";
1696
+ import { jsx as jsx48 } from "react/jsx-runtime";
1646
1697
  var SvgUser = (props) => {
1647
1698
  var _a, _b;
1648
- return /* @__PURE__ */ jsx47("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx47("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M6 21v-2a4 4 0 0 1 4-4h4a4 4 0 0 1 4 4v2M8 7a4 4 0 1 0 8 0 4 4 0 0 0-8 0" }) });
1699
+ return /* @__PURE__ */ jsx48("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx48("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M6 21v-2a4 4 0 0 1 4-4h4a4 4 0 0 1 4 4v2M8 7a4 4 0 1 0 8 0 4 4 0 0 0-8 0" }) });
1649
1700
  };
1650
1701
  var user_default = SvgUser;
1651
1702
 
1652
1703
  // src/theme/default/components/ui/user-avater.tsx
1653
- import { jsx as jsx48 } from "react/jsx-runtime";
1704
+ import { jsx as jsx49 } from "react/jsx-runtime";
1654
1705
  var UserAvatar = forwardRef4(
1655
1706
  ({ initials, ...rest }, ref) => {
1656
- return /* @__PURE__ */ jsx48(
1707
+ return /* @__PURE__ */ jsx49(
1657
1708
  "button",
1658
1709
  {
1659
1710
  ref,
1660
- className: "size-10 relative flex overflow-hidden items-center justify-center rounded-full bg-button-primary-bg-default disabled:hover:bg-button-primary-bg-default hover:bg-button-primary-bg-hover",
1711
+ className: "relative flex size-10 items-center justify-center overflow-hidden rounded-full bg-button-primary-background-default hover:bg-button-primary-background-hover",
1661
1712
  ...rest,
1662
- children: /* @__PURE__ */ jsx48("div", { className: "relative size-full flex items-center justify-center", children: initials.avatar ? /* @__PURE__ */ jsx48(
1713
+ children: /* @__PURE__ */ jsx49("div", { className: "relative flex size-full items-center justify-center", children: initials.avatar ? /* @__PURE__ */ jsx49(
1663
1714
  "img",
1664
1715
  {
1665
1716
  src: initials.avatar,
1666
1717
  alt: initials.primary,
1667
1718
  className: "w-full object-contain"
1668
1719
  }
1669
- ) : /* @__PURE__ */ jsx48(user_default, { size: 24, className: "text-button-primary-fg-default" }) })
1720
+ ) : /* @__PURE__ */ jsx49(
1721
+ user_default,
1722
+ {
1723
+ size: 24,
1724
+ className: "text-button-primary-foreground-default"
1725
+ }
1726
+ ) })
1670
1727
  }
1671
1728
  );
1672
1729
  }
@@ -1674,11 +1731,11 @@ var UserAvatar = forwardRef4(
1674
1731
  UserAvatar.displayName = "UserAvatar";
1675
1732
 
1676
1733
  // src/theme/default/components/ui/user-menu.tsx
1677
- import { jsx as jsx49, jsxs as jsxs29 } from "react/jsx-runtime";
1734
+ import { jsx as jsx50, jsxs as jsxs28 } from "react/jsx-runtime";
1678
1735
  var UserMenu = ({ session }) => {
1679
1736
  const { config } = useOryFlow10();
1680
1737
  const initials = getUserInitials(session);
1681
- const [logoutFlow, setLogoutFlow] = useState2();
1738
+ const [logoutFlow, setLogoutFlow] = useState();
1682
1739
  const fetchLogoutFlow = useCallback(async () => {
1683
1740
  const flow = await frontendClient(config.sdk.url).createBrowserLogoutFlow();
1684
1741
  setLogoutFlow(flow);
@@ -1686,22 +1743,22 @@ var UserMenu = ({ session }) => {
1686
1743
  useEffect(() => {
1687
1744
  void fetchLogoutFlow();
1688
1745
  }, [fetchLogoutFlow]);
1689
- return /* @__PURE__ */ jsxs29(DropdownMenu, { children: [
1690
- /* @__PURE__ */ jsx49(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsx49(UserAvatar, { initials }) }),
1691
- /* @__PURE__ */ jsxs29(DropdownMenuContent, { children: [
1692
- /* @__PURE__ */ jsxs29(DropdownMenuLabel2, { className: "px-5 py-4.5 flex gap-3", children: [
1693
- /* @__PURE__ */ jsx49(UserAvatar, { disabled: true, initials }),
1694
- /* @__PURE__ */ jsxs29("div", { className: "flex flex-col text-sm leading-tight justify-center", children: [
1695
- /* @__PURE__ */ jsx49("div", { className: "text-dialog-fg-default", children: initials.primary }),
1696
- initials.secondary && /* @__PURE__ */ jsx49("div", { className: "text-dialog-fg-mute", children: initials.secondary })
1746
+ return /* @__PURE__ */ jsxs28(DropdownMenu, { children: [
1747
+ /* @__PURE__ */ jsx50(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsx50(UserAvatar, { initials }) }),
1748
+ /* @__PURE__ */ jsxs28(DropdownMenuContent, { children: [
1749
+ /* @__PURE__ */ jsxs28(DropdownMenuLabel2, { className: "flex gap-3 px-5 py-4.5", children: [
1750
+ /* @__PURE__ */ jsx50(UserAvatar, { disabled: true, initials }),
1751
+ /* @__PURE__ */ jsxs28("div", { className: "flex flex-col justify-center text-sm leading-tight", children: [
1752
+ /* @__PURE__ */ jsx50("div", { className: "text-interface-foreground-default-primary leading-tight font-medium", children: initials.primary }),
1753
+ initials.secondary && /* @__PURE__ */ jsx50("div", { className: "text-interface-foreground-default-tertiary leading-tight", children: initials.secondary })
1697
1754
  ] })
1698
1755
  ] }),
1699
- /* @__PURE__ */ jsx49(DropdownMenuItem, { asChild: true, children: /* @__PURE__ */ jsxs29("a", { href: "/settings", children: [
1700
- /* @__PURE__ */ jsx49(settings_default, { size: 16 }),
1756
+ /* @__PURE__ */ jsx50(DropdownMenuItem, { asChild: true, children: /* @__PURE__ */ jsxs28("a", { href: "/settings", children: [
1757
+ /* @__PURE__ */ jsx50(settings_default, { size: 16 }),
1701
1758
  " User settings"
1702
1759
  ] }) }),
1703
- /* @__PURE__ */ jsx49(DropdownMenuItem, { asChild: true, disabled: !(logoutFlow == null ? void 0 : logoutFlow.logout_url), children: /* @__PURE__ */ jsxs29("a", { href: logoutFlow == null ? void 0 : logoutFlow.logout_url, children: [
1704
- /* @__PURE__ */ jsx49(logout_default, { size: 16 }),
1760
+ /* @__PURE__ */ jsx50(DropdownMenuItem, { asChild: true, disabled: !(logoutFlow == null ? void 0 : logoutFlow.logout_url), children: /* @__PURE__ */ jsxs28("a", { href: logoutFlow == null ? void 0 : logoutFlow.logout_url, children: [
1761
+ /* @__PURE__ */ jsx50(logout_default, { size: 16 }),
1705
1762
  " Logout"
1706
1763
  ] }) })
1707
1764
  ] })
@@ -1710,39 +1767,39 @@ var UserMenu = ({ session }) => {
1710
1767
 
1711
1768
  // src/theme/default/components/generic/page-header.tsx
1712
1769
  import { useSession } from "@ory/elements-react/client";
1713
- import { jsx as jsx50, jsxs as jsxs30 } from "react/jsx-runtime";
1770
+ import { jsx as jsx51, jsxs as jsxs29 } from "react/jsx-runtime";
1714
1771
  var DefaultPageHeader = (_props) => {
1715
1772
  const { Card } = useComponents3();
1716
1773
  const { session } = useSession();
1717
- return /* @__PURE__ */ jsx50("div", { className: "flex max-w-[896px] flex-col w-full gap-3 mt-16", children: /* @__PURE__ */ jsx50("div", { className: "flex flex-col gap-12", children: /* @__PURE__ */ jsxs30("div", { className: "flex gap-2 max-h-10 justify-between flex-1", children: [
1718
- /* @__PURE__ */ jsx50("div", { className: "h-10 flex-1 relative", children: /* @__PURE__ */ jsx50(Card.Logo, {}) }),
1719
- /* @__PURE__ */ jsx50(UserMenu, { session })
1774
+ return /* @__PURE__ */ jsx51("div", { className: "mt-16 flex w-full max-w-[896px] flex-col gap-3", children: /* @__PURE__ */ jsx51("div", { className: "flex flex-col gap-12", children: /* @__PURE__ */ jsxs29("div", { className: "flex max-h-10 flex-1 justify-between gap-2", children: [
1775
+ /* @__PURE__ */ jsx51("div", { className: "relative h-10 flex-1", children: /* @__PURE__ */ jsx51(Card.Logo, {}) }),
1776
+ /* @__PURE__ */ jsx51(UserMenu, { session })
1720
1777
  ] }) }) });
1721
1778
  };
1722
1779
 
1723
1780
  // src/theme/default/assets/icons/trash.svg
1724
1781
  import * as React25 from "react";
1725
- import { jsx as jsx51 } from "react/jsx-runtime";
1782
+ import { jsx as jsx52 } from "react/jsx-runtime";
1726
1783
  var SvgTrash = (props) => {
1727
1784
  var _a, _b;
1728
- return /* @__PURE__ */ jsx51("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx51("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M4 7h16m-10 4v6m4-6v6M5 7l1 12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2l1-12M9 7V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v3" }) });
1785
+ return /* @__PURE__ */ jsx52("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx52("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M4 7h16m-10 4v6m4-6v6M5 7l1 12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2l1-12M9 7V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v3" }) });
1729
1786
  };
1730
1787
  var trash_default = SvgTrash;
1731
1788
 
1732
1789
  // src/theme/default/components/settings/settings-oidc.tsx
1733
- import { useFormContext as useFormContext6 } from "react-hook-form";
1734
- import { jsx as jsx52, jsxs as jsxs31 } from "react/jsx-runtime";
1790
+ import { useFormContext as useFormContext7 } from "react-hook-form";
1791
+ import { jsx as jsx53, jsxs as jsxs30 } from "react/jsx-runtime";
1735
1792
  function DefaultSettingsOidc({
1736
1793
  linkButtons,
1737
1794
  unlinkButtons
1738
1795
  }) {
1739
1796
  const hasLinkButtons = linkButtons.length > 0;
1740
1797
  const hasUnlinkButtons = unlinkButtons.length > 0;
1741
- const { setValue } = useFormContext6();
1742
- return /* @__PURE__ */ jsxs31("div", { className: "flex flex-col gap-8", children: [
1743
- hasLinkButtons && /* @__PURE__ */ jsx52("div", { className: "flex gap-3 items-start [&>button]:w-[79px]", children: linkButtons.map((button) => {
1798
+ const { setValue } = useFormContext7();
1799
+ return /* @__PURE__ */ jsxs30("div", { className: "flex flex-col gap-8", children: [
1800
+ hasLinkButtons && /* @__PURE__ */ jsx53("div", { className: "flex items-start gap-3 [&>button]:w-[79px]", children: linkButtons.map((button) => {
1744
1801
  const attrs = button.attributes;
1745
- return /* @__PURE__ */ jsx52(
1802
+ return /* @__PURE__ */ jsx53(
1746
1803
  DefaultButtonSocial,
1747
1804
  {
1748
1805
  showLabel: false,
@@ -1756,18 +1813,18 @@ function DefaultSettingsOidc({
1756
1813
  attrs.value
1757
1814
  );
1758
1815
  }) }),
1759
- hasUnlinkButtons && hasLinkButtons ? /* @__PURE__ */ jsx52(DefaultHorizontalDivider, {}) : null,
1816
+ hasUnlinkButtons && hasLinkButtons ? /* @__PURE__ */ jsx53(DefaultHorizontalDivider, {}) : null,
1760
1817
  unlinkButtons.map((button) => {
1761
1818
  var _a, _b;
1762
1819
  const attrs = button.attributes;
1763
1820
  const provider = (_b = extractProvider((_a = button.meta.label) == null ? void 0 : _a.context)) != null ? _b : "";
1764
1821
  const Logo = attrs.value in provider_logos_default ? provider_logos_default[attrs.value] : provider_logos_default.generic;
1765
- return /* @__PURE__ */ jsxs31("div", { className: "flex justify-between", children: [
1766
- /* @__PURE__ */ jsxs31("div", { className: "flex gap-6 items-center", children: [
1767
- /* @__PURE__ */ jsx52(Logo, { size: 32 }),
1768
- /* @__PURE__ */ jsx52("p", { className: "text-dialog-fg-subtle text-sm font-medium", children: provider })
1822
+ return /* @__PURE__ */ jsxs30("div", { className: "flex justify-between", children: [
1823
+ /* @__PURE__ */ jsxs30("div", { className: "flex items-center gap-6", children: [
1824
+ /* @__PURE__ */ jsx53(Logo, { size: 32 }),
1825
+ /* @__PURE__ */ jsx53("p", { className: "text-sm font-medium text-interface-foreground-default-secondary", children: provider })
1769
1826
  ] }),
1770
- /* @__PURE__ */ jsx52(
1827
+ /* @__PURE__ */ jsx53(
1771
1828
  "button",
1772
1829
  {
1773
1830
  ...attrs,
@@ -1776,7 +1833,13 @@ function DefaultSettingsOidc({
1776
1833
  setValue("unlink", attrs.value);
1777
1834
  setValue("method", "oidc");
1778
1835
  },
1779
- children: /* @__PURE__ */ jsx52(trash_default, { className: "cursor-pointer text-links-link-mute-default hover:text-links-link-mute-hover" })
1836
+ children: /* @__PURE__ */ jsx53(
1837
+ trash_default,
1838
+ {
1839
+ className: "text-button-link-default-secondary hover:text-button-link-default-secondary-hover",
1840
+ size: 24
1841
+ }
1842
+ )
1780
1843
  }
1781
1844
  )
1782
1845
  ] }, attrs.value);
@@ -1785,47 +1848,62 @@ function DefaultSettingsOidc({
1785
1848
  }
1786
1849
 
1787
1850
  // src/theme/default/components/settings/settings-passkey.tsx
1788
- import { jsx as jsx53, jsxs as jsxs32 } from "react/jsx-runtime";
1851
+ import { useComponents as useComponents4 } from "@ory/elements-react";
1852
+ import { jsx as jsx54, jsxs as jsxs31 } from "react/jsx-runtime";
1789
1853
  function DefaultSettingsPasskey({
1790
1854
  triggerButton,
1791
1855
  removeButtons
1792
1856
  }) {
1857
+ const { Node } = useComponents4();
1793
1858
  const hasRemoveButtons = removeButtons.length > 0;
1794
- return /* @__PURE__ */ jsxs32("div", { className: "flex flex-col gap-8", children: [
1795
- /* @__PURE__ */ jsx53("div", { className: "flex gap-3 items-end max-w-[60%]", children: triggerButton ? /* @__PURE__ */ jsx53(
1796
- DefaultButton,
1859
+ return /* @__PURE__ */ jsxs31("div", { className: "flex flex-col gap-8", children: [
1860
+ /* @__PURE__ */ jsx54("div", { className: "flex max-w-[60%] items-end gap-3", children: triggerButton && /* @__PURE__ */ jsx54(
1861
+ Node.Button,
1797
1862
  {
1798
1863
  node: triggerButton,
1799
1864
  attributes: triggerButton.attributes,
1800
1865
  onClick: triggerButton.onClick
1801
1866
  }
1802
- ) : null }),
1803
- hasRemoveButtons ? /* @__PURE__ */ jsxs32("div", { className: "flex flex-col gap-8", children: [
1804
- /* @__PURE__ */ jsx53(DefaultHorizontalDivider, {}),
1805
- /* @__PURE__ */ jsx53("div", { className: "flex flex-col gap-2", children: removeButtons.map((node, i) => {
1867
+ ) }),
1868
+ hasRemoveButtons ? /* @__PURE__ */ jsxs31("div", { className: "flex flex-col gap-8", children: [
1869
+ /* @__PURE__ */ jsx54(DefaultHorizontalDivider, {}),
1870
+ /* @__PURE__ */ jsx54("div", { className: "flex flex-col gap-2", children: removeButtons.map((node, i) => {
1806
1871
  var _a, _b;
1807
1872
  const context = (_b = (_a = node.meta.label) == null ? void 0 : _a.context) != null ? _b : {};
1808
1873
  const addedAt = "added_at" in context ? context.added_at : null;
1809
- const diaplyName = "display_name" in context ? context.display_name : null;
1874
+ const displayName = "display_name" in context ? context.display_name : null;
1810
1875
  const keyId = "value" in node.attributes ? node.attributes.value : null;
1811
- return /* @__PURE__ */ jsxs32(
1876
+ return /* @__PURE__ */ jsxs31(
1812
1877
  "div",
1813
1878
  {
1814
1879
  className: "flex justify-between gap-6",
1815
1880
  children: [
1816
- /* @__PURE__ */ jsx53(passkey_default, { size: 32, className: "text-dialog-fg-default" }),
1817
- /* @__PURE__ */ jsxs32("div", { className: "flex-1 flex-col", children: [
1818
- /* @__PURE__ */ jsx53("p", { className: "text-sm font-medium text-dialog-fg-subtle", children: diaplyName }),
1819
- /* @__PURE__ */ jsx53("span", { className: "text-sm text-dialog-fg-mute", children: keyId })
1881
+ /* @__PURE__ */ jsx54(
1882
+ passkey_default,
1883
+ {
1884
+ size: 32,
1885
+ className: "text-interface-foreground-default-primary"
1886
+ }
1887
+ ),
1888
+ /* @__PURE__ */ jsxs31("div", { className: "flex-1 flex-col", children: [
1889
+ /* @__PURE__ */ jsx54("p", { className: "text-sm font-medium text-interface-foreground-default-secondary", children: displayName }),
1890
+ /* @__PURE__ */ jsx54("span", { className: "text-sm text-interface-foreground-default-tertiary", children: keyId })
1820
1891
  ] }),
1821
- addedAt && /* @__PURE__ */ jsx53("p", { className: "text-sm self-center text-dialog-fg-mute", children: new Date(addedAt).toLocaleDateString() }),
1822
- /* @__PURE__ */ jsx53(
1892
+ addedAt && /* @__PURE__ */ jsx54("p", { className: "self-center text-sm text-interface-foreground-default-tertiary", children: new Intl.DateTimeFormat(void 0, {
1893
+ dateStyle: "long"
1894
+ }).format(new Date(addedAt)) }),
1895
+ /* @__PURE__ */ jsx54(
1823
1896
  "button",
1824
1897
  {
1825
1898
  ...node.attributes,
1826
1899
  type: "submit",
1827
- className: "cursor-pointer text-links-link-mute-default hover:text-links-link-mute-hover",
1828
- children: /* @__PURE__ */ jsx53(trash_default, { size: 20 })
1900
+ children: /* @__PURE__ */ jsx54(
1901
+ trash_default,
1902
+ {
1903
+ className: "text-button-link-default-secondary hover:text-button-link-default-secondary-hover",
1904
+ size: 24
1905
+ }
1906
+ )
1829
1907
  }
1830
1908
  )
1831
1909
  ]
@@ -1839,36 +1917,36 @@ function DefaultSettingsPasskey({
1839
1917
 
1840
1918
  // src/theme/default/assets/icons/download.svg
1841
1919
  import * as React26 from "react";
1842
- import { jsx as jsx54 } from "react/jsx-runtime";
1920
+ import { jsx as jsx55 } from "react/jsx-runtime";
1843
1921
  var SvgDownload = (props) => {
1844
1922
  var _a, _b;
1845
- return /* @__PURE__ */ jsx54("svg", { xmlns: "http://www.w3.org/2000/svg", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, fill: "none", ...props, children: /* @__PURE__ */ jsx54("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2M7 11l5 5m0 0 5-5m-5 5V4" }) });
1923
+ return /* @__PURE__ */ jsx55("svg", { xmlns: "http://www.w3.org/2000/svg", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, fill: "none", ...props, children: /* @__PURE__ */ jsx55("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2M7 11l5 5m0 0 5-5m-5 5V4" }) });
1846
1924
  };
1847
1925
  var download_default = SvgDownload;
1848
1926
 
1849
1927
  // src/theme/default/assets/icons/eye.svg
1850
1928
  import * as React27 from "react";
1851
- import { jsx as jsx55, jsxs as jsxs33 } from "react/jsx-runtime";
1929
+ import { jsx as jsx56, jsxs as jsxs32 } from "react/jsx-runtime";
1852
1930
  var SvgEye = (props) => {
1853
1931
  var _a, _b;
1854
- return /* @__PURE__ */ jsx55("svg", { xmlns: "http://www.w3.org/2000/svg", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, fill: "none", ...props, children: /* @__PURE__ */ jsxs33("g", { strokeLinecap: "round", strokeLinejoin: "round", children: [
1855
- /* @__PURE__ */ jsx55("path", { stroke: "currentColor", d: "M10 12a2 2 0 1 0 4 0 2 2 0 0 0-4 0" }),
1856
- /* @__PURE__ */ jsx55("path", { stroke: "#64748B", d: "M21 12q-3.6 6-9 6t-9-6q3.6-6 9-6t9 6" })
1932
+ return /* @__PURE__ */ jsx56("svg", { xmlns: "http://www.w3.org/2000/svg", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, fill: "none", ...props, children: /* @__PURE__ */ jsxs32("g", { strokeLinecap: "round", strokeLinejoin: "round", children: [
1933
+ /* @__PURE__ */ jsx56("path", { stroke: "currentColor", d: "M10 12a2 2 0 1 0 4 0 2 2 0 0 0-4 0" }),
1934
+ /* @__PURE__ */ jsx56("path", { stroke: "#64748B", d: "M21 12q-3.6 6-9 6t-9-6q3.6-6 9-6t9 6" })
1857
1935
  ] }) });
1858
1936
  };
1859
1937
  var eye_default = SvgEye;
1860
1938
 
1861
1939
  // src/theme/default/assets/icons/refresh.svg
1862
1940
  import * as React28 from "react";
1863
- import { jsx as jsx56 } from "react/jsx-runtime";
1941
+ import { jsx as jsx57 } from "react/jsx-runtime";
1864
1942
  var SvgRefresh = (props) => {
1865
1943
  var _a, _b;
1866
- return /* @__PURE__ */ jsx56("svg", { xmlns: "http://www.w3.org/2000/svg", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, fill: "none", ...props, children: /* @__PURE__ */ jsx56("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M20 11A8.1 8.1 0 0 0 4.5 9M4 5v4h4m-4 4a8.1 8.1 0 0 0 15.5 2m.5 4v-4h-4" }) });
1944
+ return /* @__PURE__ */ jsx57("svg", { xmlns: "http://www.w3.org/2000/svg", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, fill: "none", ...props, children: /* @__PURE__ */ jsx57("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M20 11A8.1 8.1 0 0 0 4.5 9M4 5v4h4m-4 4a8.1 8.1 0 0 0 15.5 2m.5 4v-4h-4" }) });
1867
1945
  };
1868
1946
  var refresh_default = SvgRefresh;
1869
1947
 
1870
1948
  // src/theme/default/components/settings/settings-recovery-codes.tsx
1871
- import { jsx as jsx57, jsxs as jsxs34 } from "react/jsx-runtime";
1949
+ import { jsx as jsx58, jsxs as jsxs33 } from "react/jsx-runtime";
1872
1950
  function DefaultSettingsRecoveryCodes({
1873
1951
  codes,
1874
1952
  regnerateButton,
@@ -1885,63 +1963,66 @@ function DefaultSettingsRecoveryCodes({
1885
1963
  element.click();
1886
1964
  };
1887
1965
  const hasCodes = codes.length >= 1;
1888
- return /* @__PURE__ */ jsxs34("div", { className: "flex flex-col gap-8", children: [
1889
- /* @__PURE__ */ jsx57(DefaultHorizontalDivider, {}),
1890
- /* @__PURE__ */ jsxs34("div", { className: "flex justify-end gap-4", children: [
1891
- regnerateButton && /* @__PURE__ */ jsx57(
1966
+ return /* @__PURE__ */ jsxs33("div", { className: "flex flex-col gap-8", children: [
1967
+ /* @__PURE__ */ jsx58(DefaultHorizontalDivider, {}),
1968
+ /* @__PURE__ */ jsxs33("div", { className: "flex justify-end gap-4", children: [
1969
+ regnerateButton && /* @__PURE__ */ jsx58(
1892
1970
  "button",
1893
1971
  {
1894
1972
  ...regnerateButton.attributes,
1895
1973
  type: "submit",
1896
- children: /* @__PURE__ */ jsx57(
1974
+ children: /* @__PURE__ */ jsx58(
1897
1975
  refresh_default,
1898
1976
  {
1899
1977
  size: 24,
1900
- className: "cursor-pointer text-links-link-mute-default hover:text-links-link-mute-hover"
1978
+ className: "text-button-link-default-secondary hover:text-button-link-default-secondary-hover"
1901
1979
  }
1902
1980
  )
1903
1981
  }
1904
1982
  ),
1905
- revealButton && /* @__PURE__ */ jsx57(
1983
+ revealButton && /* @__PURE__ */ jsx58(
1906
1984
  "button",
1907
1985
  {
1908
1986
  ...revealButton.attributes,
1909
1987
  type: "submit",
1910
- children: /* @__PURE__ */ jsx57(
1988
+ children: /* @__PURE__ */ jsx58(
1911
1989
  eye_default,
1912
1990
  {
1913
1991
  size: 24,
1914
- className: "cursor-pointer text-links-link-mute-default hover:text-links-link-mute-hover"
1992
+ className: "text-button-link-default-secondary hover:text-button-link-default-secondary-hover"
1915
1993
  }
1916
1994
  )
1917
1995
  }
1918
1996
  ),
1919
- hasCodes ? /* @__PURE__ */ jsx57(
1997
+ hasCodes && /* @__PURE__ */ jsx58("button", { onClick: onDownload, type: "button", children: /* @__PURE__ */ jsx58(
1920
1998
  download_default,
1921
1999
  {
1922
2000
  size: 24,
1923
- onClick: onDownload,
1924
- className: "cursor-pointer text-links-link-mute-default hover:text-links-link-mute-hover"
2001
+ className: "text-button-link-default-secondary hover:text-button-link-default-secondary-hover"
1925
2002
  }
1926
- ) : null
2003
+ ) })
1927
2004
  ] }),
1928
- hasCodes ? /* @__PURE__ */ jsx57("div", { className: "rounded-border-radius-cards bg-bg-default ring-1 ring-dialog-border-default p-6", children: /* @__PURE__ */ jsx57("div", { className: "grid grid-cols-6 gap-4 flex-wrap text-dialog-fg-default text-sm", children: codes.map((code) => /* @__PURE__ */ jsx57("p", { children: code }, code)) }) }) : null
2005
+ hasCodes ? /* @__PURE__ */ jsx58("div", { className: "rounded-general p-6 bg-interface-background-default-secondary border-interface-border-default-primary", children: /* @__PURE__ */ jsx58("div", { className: "grid grid-cols-5 flex-wrap gap-4 text-sm text-interface-foreground-default-primary", children: codes.map((code) => /* @__PURE__ */ jsx58("p", { children: code }, code)) }) }) : null
1929
2006
  ] });
1930
2007
  }
1931
2008
 
2009
+ // src/theme/default/components/settings/settings-top.tsx
2010
+ import { useComponents as useComponents5 } from "@ory/elements-react";
2011
+
1932
2012
  // src/theme/default/assets/icons/qrcode.svg
1933
2013
  import * as React29 from "react";
1934
- import { jsx as jsx58 } from "react/jsx-runtime";
2014
+ import { jsx as jsx59 } from "react/jsx-runtime";
1935
2015
  var SvgQrcode = (props) => {
1936
2016
  var _a, _b;
1937
- return /* @__PURE__ */ jsx58("svg", { xmlns: "http://www.w3.org/2000/svg", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, fill: "none", ...props, children: /* @__PURE__ */ jsx58("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M9.333 22.667v.013m0-13.346v.013m13.333-.013v.013m0 9.32h-4v4m8-4v.013m-8 7.987h4m0-4h4v4m-21.333-20a1.333 1.333 0 0 1 1.333-1.333H12a1.333 1.333 0 0 1 1.333 1.333V12A1.334 1.334 0 0 1 12 13.334H6.666A1.334 1.334 0 0 1 5.333 12zm13.333 0A1.333 1.333 0 0 1 20 5.334h5.333a1.333 1.333 0 0 1 1.333 1.333V12a1.333 1.333 0 0 1-1.333 1.334H20A1.333 1.333 0 0 1 18.666 12zM5.333 20a1.333 1.333 0 0 1 1.333-1.333H12A1.333 1.333 0 0 1 13.333 20v5.334A1.333 1.333 0 0 1 12 26.667H6.666a1.333 1.333 0 0 1-1.333-1.334z" }) });
2017
+ return /* @__PURE__ */ jsx59("svg", { xmlns: "http://www.w3.org/2000/svg", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, fill: "none", ...props, children: /* @__PURE__ */ jsx59("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M9.333 22.667v.013m0-13.346v.013m13.333-.013v.013m0 9.32h-4v4m8-4v.013m-8 7.987h4m0-4h4v4m-21.333-20a1.333 1.333 0 0 1 1.333-1.333H12a1.333 1.333 0 0 1 1.333 1.333V12A1.334 1.334 0 0 1 12 13.334H6.666A1.334 1.334 0 0 1 5.333 12zm13.333 0A1.333 1.333 0 0 1 20 5.334h5.333a1.333 1.333 0 0 1 1.333 1.333V12a1.333 1.333 0 0 1-1.333 1.334H20A1.333 1.333 0 0 1 18.666 12zM5.333 20a1.333 1.333 0 0 1 1.333-1.333H12A1.333 1.333 0 0 1 13.333 20v5.334A1.333 1.333 0 0 1 12 26.667H6.666a1.333 1.333 0 0 1-1.333-1.334z" }) });
1938
2018
  };
1939
2019
  var qrcode_default = SvgQrcode;
1940
2020
 
1941
2021
  // src/theme/default/components/settings/settings-top.tsx
1942
- import { jsx as jsx59, jsxs as jsxs35 } from "react/jsx-runtime";
2022
+ import { jsx as jsx60, jsxs as jsxs34 } from "react/jsx-runtime";
1943
2023
  function DefaultSettingsTotp(props) {
1944
2024
  var _a;
2025
+ const { Node, Card } = useComponents5();
1945
2026
  if ("totpUnlink" in props && props.totpUnlink) {
1946
2027
  const {
1947
2028
  type,
@@ -1950,21 +2031,21 @@ function DefaultSettingsTotp(props) {
1950
2031
  node_type: _ignoredNodeType,
1951
2032
  ...buttonAttrs
1952
2033
  } = (_a = props.totpUnlink) == null ? void 0 : _a.attributes;
1953
- return /* @__PURE__ */ jsxs35("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-8", children: [
1954
- /* @__PURE__ */ jsx59("div", { className: "col-span-full", children: /* @__PURE__ */ jsx59(DefaultHorizontalDivider, {}) }),
1955
- /* @__PURE__ */ jsxs35("div", { className: "flex gap-6 items-center col-span-full", children: [
1956
- /* @__PURE__ */ jsx59("div", { className: "size-8 aspect-square ", children: /* @__PURE__ */ jsx59(qrcode_default, { size: 32 }) }),
1957
- /* @__PURE__ */ jsx59("div", { className: "flex flex-col mr-auto", children: /* @__PURE__ */ jsx59("p", { className: "text-dialog-fg-subtle text-sm font-medium", children: "Authenticator app" }) }),
1958
- /* @__PURE__ */ jsx59(
2034
+ return /* @__PURE__ */ jsxs34("div", { className: "grid grid-cols-1 gap-8 md:grid-cols-2", children: [
2035
+ /* @__PURE__ */ jsx60("div", { className: "col-span-full", children: /* @__PURE__ */ jsx60(Card.Divider, {}) }),
2036
+ /* @__PURE__ */ jsxs34("div", { className: "col-span-full flex items-center gap-6", children: [
2037
+ /* @__PURE__ */ jsx60("div", { className: "aspect-square size-8 ", children: /* @__PURE__ */ jsx60(qrcode_default, { size: 32 }) }),
2038
+ /* @__PURE__ */ jsx60("div", { className: "mr-auto flex flex-col", children: /* @__PURE__ */ jsx60("p", { className: "text-sm font-medium text-interface-foreground-default-primary", children: "Authenticator app" }) }),
2039
+ /* @__PURE__ */ jsx60(
1959
2040
  "button",
1960
2041
  {
1961
2042
  type: type === "button" ? "button" : "submit",
1962
2043
  ...buttonAttrs,
1963
- children: /* @__PURE__ */ jsx59(
2044
+ children: /* @__PURE__ */ jsx60(
1964
2045
  trash_default,
1965
2046
  {
1966
- size: 24,
1967
- className: "text-links-link-mute-default hover:text-links-link-mute-hover"
2047
+ className: "text-button-link-default-secondary hover:text-button-link-default-secondary-hover",
2048
+ size: 24
1968
2049
  }
1969
2050
  )
1970
2051
  }
@@ -1973,10 +2054,10 @@ function DefaultSettingsTotp(props) {
1973
2054
  ] });
1974
2055
  }
1975
2056
  if ("totpSecret" in props) {
1976
- return /* @__PURE__ */ jsxs35("div", { className: "grid grid-cols-1 md:grid-cols-2 gap-8", children: [
1977
- /* @__PURE__ */ jsx59("div", { className: "col-span-full", children: /* @__PURE__ */ jsx59(DefaultHorizontalDivider, {}) }),
1978
- /* @__PURE__ */ jsx59("div", { className: "bg-dialog-bg-subtle p-8 rounded-xl flex justify-center", children: /* @__PURE__ */ jsx59("div", { className: "h-44 aspect-square bg-[white] rounded", children: /* @__PURE__ */ jsx59("div", { className: "mix-blend-multiply -m-3 antialiased", children: /* @__PURE__ */ jsx59(
1979
- DefaultImage,
2057
+ return /* @__PURE__ */ jsxs34("div", { className: "grid grid-cols-1 gap-8 md:grid-cols-2", children: [
2058
+ /* @__PURE__ */ jsx60("div", { className: "col-span-full", children: /* @__PURE__ */ jsx60(DefaultHorizontalDivider, {}) }),
2059
+ /* @__PURE__ */ jsx60("div", { className: "flex justify-center rounded-cards bg-interface-background-default-secondary p-8", children: /* @__PURE__ */ jsx60("div", { className: "aspect-square h-44 rounded bg-[white]", children: /* @__PURE__ */ jsx60("div", { className: "-m-3 antialiased mix-blend-multiply", children: /* @__PURE__ */ jsx60(
2060
+ Node.Image,
1980
2061
  {
1981
2062
  node: props.totpImage,
1982
2063
  attributes: {
@@ -1984,14 +2065,14 @@ function DefaultSettingsTotp(props) {
1984
2065
  }
1985
2066
  }
1986
2067
  ) }) }) }),
1987
- /* @__PURE__ */ jsxs35("div", { className: "flex flex-col gap-6", children: [
1988
- /* @__PURE__ */ jsx59(
1989
- DefaultLabel,
2068
+ /* @__PURE__ */ jsxs34("div", { className: "flex flex-col gap-6", children: [
2069
+ /* @__PURE__ */ jsx60(
2070
+ Node.Label,
1990
2071
  {
1991
2072
  node: props.totpSecret,
1992
2073
  attributes: props.totpSecret.attributes,
1993
- children: /* @__PURE__ */ jsx59(
1994
- DefaultInput,
2074
+ children: /* @__PURE__ */ jsx60(
2075
+ Node.Input,
1995
2076
  {
1996
2077
  node: props.totpSecret,
1997
2078
  attributes: {
@@ -2005,13 +2086,13 @@ function DefaultSettingsTotp(props) {
2005
2086
  )
2006
2087
  }
2007
2088
  ),
2008
- /* @__PURE__ */ jsx59(
2009
- DefaultLabel,
2089
+ /* @__PURE__ */ jsx60(
2090
+ Node.Label,
2010
2091
  {
2011
2092
  attributes: props.totpInput.attributes,
2012
2093
  node: props.totpInput,
2013
- children: /* @__PURE__ */ jsx59(
2014
- DefaultInput,
2094
+ children: /* @__PURE__ */ jsx60(
2095
+ Node.Input,
2015
2096
  {
2016
2097
  node: props.totpInput,
2017
2098
  attributes: props.totpInput.attributes
@@ -2024,32 +2105,36 @@ function DefaultSettingsTotp(props) {
2024
2105
  }
2025
2106
  }
2026
2107
 
2108
+ // src/theme/default/components/settings/settings-webauthn.tsx
2109
+ import { useComponents as useComponents6 } from "@ory/elements-react";
2110
+
2027
2111
  // src/theme/default/assets/icons/key.svg
2028
2112
  import * as React30 from "react";
2029
- import { jsx as jsx60 } from "react/jsx-runtime";
2113
+ import { jsx as jsx61 } from "react/jsx-runtime";
2030
2114
  var SvgKey = (props) => {
2031
2115
  var _a, _b;
2032
- return /* @__PURE__ */ jsx60("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 32 32", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx60("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M20 12h.013m2.06-6.876 4.803 4.803a3.836 3.836 0 0 1 0 5.425l-3.524 3.524a3.835 3.835 0 0 1-5.425 0l-.402-.401-8.744 8.744a2.67 2.67 0 0 1-1.652.77L6.896 28H5.333a1.334 1.334 0 0 1-1.324-1.177L4 26.667v-1.563c0-.626.22-1.232.623-1.712l.158-.173.552-.552H8V20h2.667v-2.667l2.858-2.858-.401-.402a3.835 3.835 0 0 1 0-5.425l3.524-3.524a3.835 3.835 0 0 1 5.425 0" }) });
2116
+ return /* @__PURE__ */ jsx61("svg", { xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 32 32", width: (props == null ? void 0 : props.width) ? props.width : (_a = props == null ? void 0 : props.size) != null ? _a : 20, height: (props == null ? void 0 : props.height) ? props.height : (_b = props == null ? void 0 : props.size) != null ? _b : 20, ...props, children: /* @__PURE__ */ jsx61("path", { stroke: "currentColor", strokeLinecap: "round", strokeLinejoin: "round", d: "M20 12h.013m2.06-6.876 4.803 4.803a3.836 3.836 0 0 1 0 5.425l-3.524 3.524a3.835 3.835 0 0 1-5.425 0l-.402-.401-8.744 8.744a2.67 2.67 0 0 1-1.652.77L6.896 28H5.333a1.334 1.334 0 0 1-1.324-1.177L4 26.667v-1.563c0-.626.22-1.232.623-1.712l.158-.173.552-.552H8V20h2.667v-2.667l2.858-2.858-.401-.402a3.835 3.835 0 0 1 0-5.425l3.524-3.524a3.835 3.835 0 0 1 5.425 0" }) });
2033
2117
  };
2034
2118
  var key_default = SvgKey;
2035
2119
 
2036
2120
  // src/theme/default/components/settings/settings-webauthn.tsx
2037
- import { jsx as jsx61, jsxs as jsxs36 } from "react/jsx-runtime";
2121
+ import { jsx as jsx62, jsxs as jsxs35 } from "react/jsx-runtime";
2038
2122
  function DefaultSettingsWebauthn({
2039
2123
  nameInput,
2040
2124
  triggerButton,
2041
2125
  removeButtons
2042
2126
  }) {
2127
+ const { Node, Card } = useComponents6();
2043
2128
  const hasRemoveButtons = removeButtons.length > 0;
2044
- return /* @__PURE__ */ jsxs36("div", { className: "flex flex-col gap-8", children: [
2045
- /* @__PURE__ */ jsxs36("div", { className: "flex gap-3 items-end max-w-[60%]", children: [
2046
- /* @__PURE__ */ jsx61("div", { className: "flex-1", children: /* @__PURE__ */ jsx61(
2047
- DefaultLabel,
2129
+ return /* @__PURE__ */ jsxs35("div", { className: "flex flex-col gap-8", children: [
2130
+ /* @__PURE__ */ jsxs35("div", { className: "flex max-w-[60%] items-end gap-3", children: [
2131
+ /* @__PURE__ */ jsx62("div", { className: "flex-1", children: /* @__PURE__ */ jsx62(
2132
+ Node.Label,
2048
2133
  {
2049
2134
  node: nameInput,
2050
2135
  attributes: nameInput.attributes,
2051
- children: /* @__PURE__ */ jsx61(
2052
- DefaultInput,
2136
+ children: /* @__PURE__ */ jsx62(
2137
+ Node.Input,
2053
2138
  {
2054
2139
  node: nameInput,
2055
2140
  attributes: nameInput.attributes
@@ -2057,8 +2142,8 @@ function DefaultSettingsWebauthn({
2057
2142
  )
2058
2143
  }
2059
2144
  ) }),
2060
- triggerButton ? /* @__PURE__ */ jsx61(
2061
- DefaultButton,
2145
+ triggerButton ? /* @__PURE__ */ jsx62(
2146
+ Node.Button,
2062
2147
  {
2063
2148
  node: triggerButton,
2064
2149
  attributes: triggerButton.attributes,
@@ -2066,32 +2151,45 @@ function DefaultSettingsWebauthn({
2066
2151
  }
2067
2152
  ) : null
2068
2153
  ] }),
2069
- hasRemoveButtons ? /* @__PURE__ */ jsxs36("div", { className: "flex flex-col gap-8", children: [
2070
- /* @__PURE__ */ jsx61(DefaultHorizontalDivider, {}),
2071
- /* @__PURE__ */ jsx61("div", { className: "flex flex-col gap-2", children: removeButtons.map((node, i) => {
2154
+ hasRemoveButtons ? /* @__PURE__ */ jsxs35("div", { className: "flex flex-col gap-8", children: [
2155
+ /* @__PURE__ */ jsx62(Card.Divider, {}),
2156
+ /* @__PURE__ */ jsx62("div", { className: "flex flex-col gap-2", children: removeButtons.map((node, i) => {
2072
2157
  var _a, _b;
2073
2158
  const context = (_b = (_a = node.meta.label) == null ? void 0 : _a.context) != null ? _b : {};
2074
2159
  const addedAt = "added_at" in context ? context.added_at : null;
2075
2160
  const diaplyName = "display_name" in context ? context.display_name : null;
2076
2161
  const keyId = "value" in node.attributes ? node.attributes.value : null;
2077
- return /* @__PURE__ */ jsxs36(
2162
+ return /* @__PURE__ */ jsxs35(
2078
2163
  "div",
2079
2164
  {
2080
2165
  className: "flex justify-between gap-6",
2081
2166
  children: [
2082
- /* @__PURE__ */ jsx61(key_default, { size: 32, className: "text-dialog-fg-default" }),
2083
- /* @__PURE__ */ jsxs36("div", { className: "flex-1 flex-col", children: [
2084
- /* @__PURE__ */ jsx61("p", { className: "text-sm font-medium text-dialog-fg-subtle", children: diaplyName }),
2085
- /* @__PURE__ */ jsx61("span", { className: "text-sm text-dialog-fg-mute", children: keyId })
2167
+ /* @__PURE__ */ jsx62(
2168
+ key_default,
2169
+ {
2170
+ size: 32,
2171
+ className: "text-interface-foreground-default-primary"
2172
+ }
2173
+ ),
2174
+ /* @__PURE__ */ jsxs35("div", { className: "flex-1 flex-col", children: [
2175
+ /* @__PURE__ */ jsx62("p", { className: "text-sm font-medium text-interface-foreground-default-secondary", children: diaplyName }),
2176
+ /* @__PURE__ */ jsx62("span", { className: "text-sm text-interface-foreground-default-tertiary", children: keyId })
2086
2177
  ] }),
2087
- addedAt && /* @__PURE__ */ jsx61("p", { className: "text-sm self-center text-dialog-fg-mute", children: new Date(addedAt).toLocaleDateString() }),
2088
- /* @__PURE__ */ jsx61(
2178
+ addedAt && /* @__PURE__ */ jsx62("p", { className: "self-center text-sm text-interface-foreground-default-tertiary", children: new Intl.DateTimeFormat(void 0, {
2179
+ dateStyle: "long"
2180
+ }).format(new Date(addedAt)) }),
2181
+ /* @__PURE__ */ jsx62(
2089
2182
  "button",
2090
2183
  {
2091
2184
  ...node.attributes,
2092
2185
  type: "submit",
2093
- className: "cursor-pointer text-links-link-mute-default hover:text-links-link-mute-hover",
2094
- children: /* @__PURE__ */ jsx61(trash_default, { size: 20 })
2186
+ children: /* @__PURE__ */ jsx62(
2187
+ trash_default,
2188
+ {
2189
+ className: "text-button-link-default-secondary hover:text-button-link-default-secondary-hover",
2190
+ size: 24
2191
+ }
2192
+ )
2095
2193
  }
2096
2194
  )
2097
2195
  ]
@@ -2151,12 +2249,12 @@ function getOryComponents(overrides) {
2151
2249
  }
2152
2250
 
2153
2251
  // src/theme/default/flows/error.tsx
2154
- import { jsx as jsx62 } from "react/jsx-runtime";
2252
+ import { jsx as jsx63 } from "react/jsx-runtime";
2155
2253
  function Error({
2156
2254
  error,
2157
2255
  children
2158
2256
  }) {
2159
- return /* @__PURE__ */ jsx62("div", { children: JSON.stringify(error) || children });
2257
+ return /* @__PURE__ */ jsx63("div", { children: JSON.stringify(error) || children });
2160
2258
  }
2161
2259
 
2162
2260
  // src/theme/default/flows/login.tsx
@@ -2165,7 +2263,7 @@ import {
2165
2263
  OryProvider,
2166
2264
  OryTwoStepCard
2167
2265
  } from "@ory/elements-react";
2168
- import { jsx as jsx63 } from "react/jsx-runtime";
2266
+ import { jsx as jsx64 } from "react/jsx-runtime";
2169
2267
  function Login({
2170
2268
  flow,
2171
2269
  config,
@@ -2173,14 +2271,14 @@ function Login({
2173
2271
  components: flowOverrideComponents
2174
2272
  }) {
2175
2273
  const components = getOryComponents(flowOverrideComponents);
2176
- return /* @__PURE__ */ jsx63(
2274
+ return /* @__PURE__ */ jsx64(
2177
2275
  OryProvider,
2178
2276
  {
2179
2277
  config,
2180
2278
  flow,
2181
2279
  flowType: FlowType8.Login,
2182
2280
  components,
2183
- children: children != null ? children : /* @__PURE__ */ jsx63(OryTwoStepCard, {})
2281
+ children: children != null ? children : /* @__PURE__ */ jsx64(OryTwoStepCard, {})
2184
2282
  }
2185
2283
  );
2186
2284
  }
@@ -2191,7 +2289,7 @@ import {
2191
2289
  OryProvider as OryProvider2,
2192
2290
  OryTwoStepCard as OryTwoStepCard2
2193
2291
  } from "@ory/elements-react";
2194
- import { jsx as jsx64 } from "react/jsx-runtime";
2292
+ import { jsx as jsx65 } from "react/jsx-runtime";
2195
2293
  function Recovery({
2196
2294
  flow,
2197
2295
  config,
@@ -2199,14 +2297,14 @@ function Recovery({
2199
2297
  components: flowOverrideComponents
2200
2298
  }) {
2201
2299
  const components = getOryComponents(flowOverrideComponents);
2202
- return /* @__PURE__ */ jsx64(
2300
+ return /* @__PURE__ */ jsx65(
2203
2301
  OryProvider2,
2204
2302
  {
2205
2303
  config,
2206
2304
  flow,
2207
2305
  flowType: FlowType9.Recovery,
2208
2306
  components,
2209
- children: children != null ? children : /* @__PURE__ */ jsx64(OryTwoStepCard2, {})
2307
+ children: children != null ? children : /* @__PURE__ */ jsx65(OryTwoStepCard2, {})
2210
2308
  }
2211
2309
  );
2212
2310
  }
@@ -2217,7 +2315,7 @@ import {
2217
2315
  OryProvider as OryProvider3,
2218
2316
  OryTwoStepCard as OryTwoStepCard3
2219
2317
  } from "@ory/elements-react";
2220
- import { jsx as jsx65 } from "react/jsx-runtime";
2318
+ import { jsx as jsx66 } from "react/jsx-runtime";
2221
2319
  function Registration({
2222
2320
  flow,
2223
2321
  children,
@@ -2225,14 +2323,14 @@ function Registration({
2225
2323
  config
2226
2324
  }) {
2227
2325
  const components = getOryComponents(flowOverrideComponents);
2228
- return /* @__PURE__ */ jsx65(
2326
+ return /* @__PURE__ */ jsx66(
2229
2327
  OryProvider3,
2230
2328
  {
2231
2329
  config,
2232
2330
  flow,
2233
2331
  flowType: FlowType10.Registration,
2234
2332
  components,
2235
- children: children != null ? children : /* @__PURE__ */ jsx65(OryTwoStepCard3, {})
2333
+ children: children != null ? children : /* @__PURE__ */ jsx66(OryTwoStepCard3, {})
2236
2334
  }
2237
2335
  );
2238
2336
  }
@@ -2244,7 +2342,7 @@ import {
2244
2342
  OryProvider as OryProvider4,
2245
2343
  OrySettingsCard
2246
2344
  } from "@ory/elements-react";
2247
- import { Fragment as Fragment4, jsx as jsx66, jsxs as jsxs37 } from "react/jsx-runtime";
2345
+ import { Fragment as Fragment4, jsx as jsx67, jsxs as jsxs36 } from "react/jsx-runtime";
2248
2346
  function Settings({
2249
2347
  flow,
2250
2348
  config,
@@ -2252,16 +2350,16 @@ function Settings({
2252
2350
  components: flowOverrideComponents
2253
2351
  }) {
2254
2352
  const components = getOryComponents(flowOverrideComponents);
2255
- return /* @__PURE__ */ jsx66(
2353
+ return /* @__PURE__ */ jsx67(
2256
2354
  OryProvider4,
2257
2355
  {
2258
2356
  config,
2259
2357
  flow,
2260
2358
  flowType: FlowType11.Settings,
2261
2359
  components,
2262
- children: children != null ? children : /* @__PURE__ */ jsxs37(Fragment4, { children: [
2263
- /* @__PURE__ */ jsx66(HeadlessPageHeader, {}),
2264
- /* @__PURE__ */ jsx66(OrySettingsCard, {})
2360
+ children: children != null ? children : /* @__PURE__ */ jsxs36(Fragment4, { children: [
2361
+ /* @__PURE__ */ jsx67(HeadlessPageHeader, {}),
2362
+ /* @__PURE__ */ jsx67(OrySettingsCard, {})
2265
2363
  ] })
2266
2364
  }
2267
2365
  );
@@ -2273,7 +2371,7 @@ import {
2273
2371
  OryProvider as OryProvider5,
2274
2372
  OryTwoStepCard as OryTwoStepCard4
2275
2373
  } from "@ory/elements-react";
2276
- import { jsx as jsx67 } from "react/jsx-runtime";
2374
+ import { jsx as jsx68 } from "react/jsx-runtime";
2277
2375
  function Verification({
2278
2376
  flow,
2279
2377
  config,
@@ -2281,22 +2379,24 @@ function Verification({
2281
2379
  components: flowOverrideComponents
2282
2380
  }) {
2283
2381
  const components = getOryComponents(flowOverrideComponents);
2284
- return /* @__PURE__ */ jsx67(
2382
+ return /* @__PURE__ */ jsx68(
2285
2383
  OryProvider5,
2286
2384
  {
2287
2385
  config,
2288
2386
  flow,
2289
2387
  flowType: FlowType12.Verification,
2290
2388
  components,
2291
- children: children != null ? children : /* @__PURE__ */ jsx67(OryTwoStepCard4, {})
2389
+ children: children != null ? children : /* @__PURE__ */ jsx68(OryTwoStepCard4, {})
2292
2390
  }
2293
2391
  );
2294
2392
  }
2295
2393
  export {
2394
+ DefaultButtonSocial,
2296
2395
  DefaultCard,
2297
2396
  DefaultCardContent,
2298
2397
  DefaultCardFooter,
2299
2398
  DefaultCardHeader,
2399
+ DefaultCardLayout,
2300
2400
  DefaultCardLogo,
2301
2401
  DefaultCurrentIdentifierButton,
2302
2402
  DefaultFormContainer,