@insforge/react 0.3.4 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/README.md +485 -604
  2. package/dist/atoms.cjs +818 -0
  3. package/dist/atoms.cjs.map +1 -0
  4. package/dist/atoms.d.cts +222 -0
  5. package/dist/atoms.d.ts +72 -237
  6. package/dist/atoms.js +382 -456
  7. package/dist/atoms.js.map +1 -1
  8. package/dist/components.cjs +2254 -0
  9. package/dist/components.cjs.map +1 -0
  10. package/dist/{components.d.mts → components.d.cts} +10 -32
  11. package/dist/components.d.ts +9 -31
  12. package/dist/components.js +1049 -1183
  13. package/dist/components.js.map +1 -1
  14. package/dist/forms.cjs +1287 -0
  15. package/dist/forms.cjs.map +1 -0
  16. package/dist/forms.d.cts +138 -0
  17. package/dist/forms.d.ts +115 -162
  18. package/dist/forms.js +728 -921
  19. package/dist/forms.js.map +1 -1
  20. package/dist/{hooks.mjs → hooks.cjs} +15 -13
  21. package/dist/hooks.cjs.map +1 -0
  22. package/dist/{hooks.d.mts → hooks.d.cts} +1 -1
  23. package/dist/hooks.js +9 -15
  24. package/dist/hooks.js.map +1 -1
  25. package/dist/index.cjs +2674 -0
  26. package/dist/index.cjs.map +1 -0
  27. package/dist/{index.d.mts → index.d.cts} +10 -10
  28. package/dist/index.d.ts +4 -4
  29. package/dist/index.js +1096 -1238
  30. package/dist/index.js.map +1 -1
  31. package/dist/{lib.mjs → lib.cjs} +13 -11
  32. package/dist/lib.cjs.map +1 -0
  33. package/dist/{lib.d.mts → lib.d.cts} +1 -8
  34. package/dist/lib.d.ts +1 -8
  35. package/dist/lib.js +4 -17
  36. package/dist/lib.js.map +1 -1
  37. package/dist/{router.mjs → router.cjs} +14 -16
  38. package/dist/router.cjs.map +1 -0
  39. package/dist/router.js +10 -16
  40. package/dist/router.js.map +1 -1
  41. package/dist/styles.css +655 -2
  42. package/dist/types.cjs +4 -0
  43. package/dist/{types.mjs.map → types.cjs.map} +1 -1
  44. package/dist/{types.d.mts → types.d.cts} +2 -2
  45. package/dist/types.d.ts +2 -2
  46. package/dist/types.js +0 -1
  47. package/package.json +106 -98
  48. package/dist/atoms.d.mts +0 -387
  49. package/dist/atoms.mjs +0 -861
  50. package/dist/atoms.mjs.map +0 -1
  51. package/dist/components.mjs +0 -2327
  52. package/dist/components.mjs.map +0 -1
  53. package/dist/forms.d.mts +0 -185
  54. package/dist/forms.mjs +0 -1468
  55. package/dist/forms.mjs.map +0 -1
  56. package/dist/hooks.mjs.map +0 -1
  57. package/dist/index.mjs +0 -2724
  58. package/dist/index.mjs.map +0 -1
  59. package/dist/lib.mjs.map +0 -1
  60. package/dist/router.mjs.map +0 -1
  61. package/dist/types.mjs +0 -3
  62. package/src/styles.css +0 -15
  63. /package/dist/{router.d.mts → router.d.cts} +0 -0
package/dist/forms.js CHANGED
@@ -1,236 +1,180 @@
1
- 'use strict';
2
-
3
- var jsxRuntime = require('react/jsx-runtime');
4
- var clsx = require('clsx');
5
- var tailwindMerge = require('tailwind-merge');
6
- var lucideReact = require('lucide-react');
7
- var react = require('react');
8
- var sdk = require('@insforge/sdk');
1
+ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
2
+ import { AlertTriangle, EyeOff, Eye, Loader2, CircleCheck, Check } from 'lucide-react';
3
+ import { createContext, useState, useEffect, useContext, useRef } from 'react';
4
+ import { createClient } from '@insforge/sdk';
9
5
 
10
6
  function AuthBranding() {
11
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "bg-[#FAFAFA] px-2 py-4 flex flex-row justify-center items-center gap-1", children: [
12
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs font-medium text-black font-manrope", children: "Secured by" }),
13
- /* @__PURE__ */ jsxRuntime.jsx("a", { href: "https://insforge.dev", target: "_blank", rel: "noopener noreferrer", children: /* @__PURE__ */ jsxRuntime.jsxs("svg", { width: "83", height: "20", viewBox: "0 0 83 20", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [
14
- /* @__PURE__ */ jsxRuntime.jsx(
15
- "path",
16
- {
17
- d: "M2.16783 8.46797C1.9334 8.23325 1.9334 7.85269 2.16783 7.61797L8.11049 1.66797L16.6 1.66797L6.41259 11.868C6.17815 12.1027 5.79807 12.1027 5.56363 11.868L2.16783 8.46797Z",
18
- fill: "url(#paint0_linear_2976_9475)"
19
- }
20
- ),
21
- /* @__PURE__ */ jsxRuntime.jsx(
22
- "path",
23
- {
24
- d: "M12.8858 6.44922L16.6 10.168V18.668L8.64108 10.6992L12.8858 6.44922Z",
25
- fill: "url(#paint1_linear_2976_9475)"
26
- }
27
- ),
28
- /* @__PURE__ */ jsxRuntime.jsx(
29
- "path",
30
- {
31
- d: "M67.5439 6.48828C68.2894 6.48828 68.9145 6.67064 69.418 7.03516C69.5229 7.10943 69.6214 7.1907 69.7158 7.27637V6.70703H71.248V14.959C71.248 15.1583 71.2381 15.3485 71.2188 15.5283C71.2042 15.7129 71.1774 15.8925 71.1387 16.0674C71.0225 16.5776 70.7998 16.9957 70.4707 17.3213C70.1415 17.6518 69.7321 17.8972 69.2432 18.0576C68.7592 18.2179 68.2222 18.2988 67.6318 18.2988C67.1962 18.2988 66.7768 18.2308 66.375 18.0947C65.9782 17.9587 65.6202 17.7614 65.3008 17.5039C64.9813 17.2512 64.7199 16.9446 64.5166 16.585L66.1289 15.7832C66.2789 16.0698 66.4888 16.2819 66.7598 16.418C67.0356 16.5589 67.3289 16.6289 67.6387 16.6289C68.0016 16.6289 68.3258 16.5628 68.6113 16.4316C68.8969 16.3053 69.1176 16.116 69.2725 15.8633C69.4321 15.6155 69.5077 15.3047 69.498 14.9307V14.1797C69.4665 14.2037 69.4359 14.229 69.4033 14.252C68.8855 14.6164 68.2441 14.7988 67.4795 14.7988C66.7582 14.7988 66.1281 14.6165 65.5908 14.252C65.0537 13.8875 64.637 13.3915 64.3418 12.7646C64.0467 12.1378 63.8994 11.4307 63.8994 10.6436C63.8994 9.84651 64.0465 9.13673 64.3418 8.51465C64.6419 7.88768 65.0663 7.39481 65.6133 7.03516C66.1601 6.67077 66.8036 6.48836 67.5439 6.48828ZM37.5 6.48828C38.1099 6.48828 38.6496 6.58294 39.1191 6.77246C39.5935 6.96201 39.9762 7.2321 40.2666 7.58203C40.5569 7.93184 40.7359 8.34227 40.8037 8.81348L39.0176 9.13477C38.974 8.79951 38.8218 8.53424 38.5605 8.33984C38.304 8.14547 37.96 8.03605 37.5293 8.01172C37.1178 7.98742 36.7859 8.05051 36.5342 8.20117C36.2825 8.34698 36.1562 8.55398 36.1562 8.82129C36.1563 8.97184 36.208 9.10017 36.3096 9.20703C36.4112 9.31394 36.614 9.42141 36.9189 9.52832C37.2288 9.63524 37.6889 9.76635 38.2988 9.92188C38.9232 10.0823 39.4222 10.2666 39.7949 10.4756C40.1722 10.6796 40.4428 10.9254 40.6074 11.2119C40.7768 11.4987 40.8623 11.8466 40.8623 12.2549C40.8623 13.047 40.574 13.6691 39.998 14.1211C39.4268 14.5731 38.6348 14.7988 37.623 14.7988C36.6551 14.7988 35.8687 14.5799 35.2637 14.1426C34.6587 13.7052 34.2909 13.0908 34.1602 12.2988L35.9463 12.0215C36.0383 12.4102 36.2411 12.7169 36.5557 12.9404C36.8703 13.164 37.2678 13.2754 37.7471 13.2754C38.1681 13.2754 38.4922 13.1926 38.7197 13.0273C38.9521 12.8572 39.0684 12.6266 39.0684 12.335C39.0684 12.1552 39.0245 12.0122 38.9375 11.9053C38.8552 11.7935 38.6713 11.686 38.3857 11.584C38.1001 11.4819 37.6618 11.3528 37.0713 11.1973C36.4131 11.0223 35.8901 10.8359 35.5029 10.6367C35.1158 10.4327 34.8374 10.192 34.668 9.91504C34.4985 9.63801 34.4141 9.30188 34.4141 8.9082C34.4141 8.41746 34.5423 7.98943 34.7988 7.625C35.0553 7.26073 35.4135 6.98146 35.873 6.78711C36.3329 6.58784 36.8755 6.48828 37.5 6.48828ZM53.3047 6.48828C54.0937 6.48828 54.7815 6.66572 55.3672 7.02051C55.9527 7.37528 56.4072 7.86634 56.7314 8.49316C57.0558 9.11525 57.2187 9.83193 57.2188 10.6436C57.2188 11.46 57.0537 12.1817 56.7246 12.8086C56.4003 13.4307 55.9451 13.9196 55.3594 14.2744C54.7737 14.6242 54.0888 14.7988 53.3047 14.7988C52.5205 14.7988 51.8357 14.6214 51.25 14.2666C50.6643 13.9118 50.2091 13.4238 49.8848 12.8018C49.5653 12.1748 49.4053 11.4552 49.4053 10.6436C49.4053 9.81735 49.5703 9.09279 49.8994 8.4707C50.2286 7.8488 50.6859 7.36255 51.2715 7.0127C51.8572 6.66281 52.5351 6.48828 53.3047 6.48828ZM76.7471 6.48828C77.5603 6.48828 78.25 6.68053 78.8164 7.06445C79.3876 7.44351 79.812 7.97991 80.0879 8.6748C80.3638 9.36976 80.4672 10.189 80.3994 11.1318H74.7256C74.7843 11.6972 74.949 12.1516 75.2227 12.4951C75.5711 12.9325 76.0792 13.1513 76.7471 13.1514C77.1779 13.1514 77.5486 13.0567 77.8584 12.8672C78.173 12.6728 78.4146 12.3928 78.584 12.0283L80.3125 12.5537C80.0124 13.2633 79.5473 13.8153 78.918 14.209C78.2936 14.6025 77.6036 14.7988 76.8486 14.7988C76.0549 14.7988 75.358 14.6263 74.7578 14.2812C74.1576 13.9362 73.6875 13.458 73.3486 12.8457C73.0147 12.2334 72.8477 11.5284 72.8477 10.7314C72.8477 9.87126 73.0127 9.12495 73.3418 8.49316C73.671 7.85651 74.1282 7.36263 74.7139 7.0127C75.2995 6.6628 75.9775 6.48832 76.7471 6.48828ZM23.3301 14.5801H21.5801V4.08203H23.3301V14.5801ZM29.6152 6.48047C30.1959 6.48052 30.6753 6.5781 31.0527 6.77246C31.4301 6.96681 31.7305 7.21443 31.9531 7.51562C32.1758 7.81695 32.3398 8.13831 32.4463 8.47852C32.5528 8.81873 32.6213 9.14205 32.6504 9.44824C32.6843 9.74946 32.7012 9.99508 32.7012 10.1846V14.5801H30.9287V10.7891C30.9287 10.5413 30.9118 10.2669 30.8779 9.96582C30.844 9.66449 30.7645 9.37469 30.6387 9.09766C30.5177 8.81592 30.3337 8.58503 30.0869 8.40527C29.8449 8.22551 29.5157 8.13579 29.0996 8.13574C28.8769 8.13574 28.6563 8.17221 28.4385 8.24512C28.2206 8.31802 28.0219 8.4442 27.8428 8.62402C27.6685 8.79899 27.5284 9.04249 27.4219 9.35352C27.3154 9.65965 27.2617 10.0532 27.2617 10.5342V14.5801H25.4902V6.70703H27.0518V7.58301C27.2521 7.34675 27.486 7.14172 27.7559 6.96973C28.2593 6.64409 28.8794 6.48047 29.6152 6.48047ZM48.748 5.83887H44.2021V8.45605H47.876V10.2061H44.2021V14.5801H42.4521V4.08203H48.748V5.83887ZM62.5137 6.67773C62.7606 6.65829 63.001 6.66815 63.2334 6.70703V8.34766C63.001 8.27961 62.7317 8.25695 62.4268 8.28125C62.1267 8.30557 61.8553 8.39134 61.6133 8.53711C61.3715 8.66829 61.1733 8.83606 61.0186 9.04004C60.8686 9.24404 60.7572 9.47701 60.6846 9.73926C60.612 9.99685 60.5752 10.2768 60.5752 10.5781V14.5801H58.8184V6.70703H60.3652V7.96582C60.4243 7.85986 60.4888 7.75824 60.5605 7.66211C60.7251 7.4434 60.9219 7.26302 61.1494 7.12207C61.3429 6.99098 61.5559 6.88926 61.7881 6.81641C62.0251 6.73869 62.267 6.69235 62.5137 6.67773ZM67.8057 8.0625C67.3362 8.06252 66.9485 8.17982 66.6436 8.41309C66.3389 8.64144 66.1139 8.95232 65.9688 9.3457C65.8235 9.7345 65.751 10.1673 65.751 10.6436C65.751 11.1247 65.8215 11.5624 65.9619 11.9561C66.1071 12.3447 66.3269 12.6535 66.6221 12.8818C66.9174 13.1103 67.293 13.2246 67.748 13.2246C68.2174 13.2246 68.5953 13.1171 68.8809 12.9033C69.1711 12.6846 69.3811 12.3808 69.5117 11.9922C69.6473 11.6034 69.7158 11.1539 69.7158 10.6436C69.7158 10.1284 69.6473 9.67886 69.5117 9.29492C69.381 8.90617 69.1753 8.60445 68.8945 8.39062C68.6138 8.17213 68.2508 8.0625 67.8057 8.0625ZM53.3047 8.13574C52.8351 8.13574 52.4475 8.24222 52.1426 8.45605C51.8425 8.66504 51.6198 8.95977 51.4746 9.33887C51.3295 9.71303 51.2568 10.148 51.2568 10.6436C51.2568 11.4066 51.4288 12.0168 51.7725 12.4736C52.121 12.9256 52.6318 13.1514 53.3047 13.1514C54.0017 13.1514 54.5196 12.9177 54.8584 12.4512C55.1971 11.9846 55.3672 11.3822 55.3672 10.6436C55.3672 9.8807 55.1951 9.27324 54.8516 8.82129C54.5079 8.36444 53.9921 8.13575 53.3047 8.13574ZM76.8203 8.02637C76.1039 8.02637 75.5712 8.25013 75.2227 8.69727C74.9987 8.98144 74.8476 9.35094 74.7676 9.80566H78.6221C78.5589 9.29301 78.4236 8.89686 78.2139 8.61719C77.9186 8.22359 77.4543 8.02645 76.8203 8.02637Z",
32
- fill: "black"
33
- }
34
- ),
35
- /* @__PURE__ */ jsxRuntime.jsxs("defs", { children: [
36
- /* @__PURE__ */ jsxRuntime.jsxs(
37
- "linearGradient",
38
- {
39
- id: "paint0_linear_2976_9475",
40
- x1: "1.85883",
41
- y1: "1.92425",
42
- x2: "24.3072",
43
- y2: "9.64016",
44
- gradientUnits: "userSpaceOnUse",
45
- children: [
46
- /* @__PURE__ */ jsxRuntime.jsx("stop", {}),
47
- /* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "1", stopOpacity: "0.4" })
48
- ]
49
- }
50
- ),
51
- /* @__PURE__ */ jsxRuntime.jsxs(
52
- "linearGradient",
53
- {
54
- id: "paint1_linear_2976_9475",
55
- x1: "25.6475",
56
- y1: "8.65468",
57
- x2: "10.7901",
58
- y2: "8.65468",
59
- gradientUnits: "userSpaceOnUse",
60
- children: [
61
- /* @__PURE__ */ jsxRuntime.jsx("stop", {}),
62
- /* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "1", stopOpacity: "0.4" })
63
- ]
64
- }
65
- )
66
- ] })
67
- ] }) })
7
+ return /* @__PURE__ */ jsxs("div", { className: "if-authBranding if-internal-ab4k9w", children: [
8
+ /* @__PURE__ */ jsx("p", { className: "if-authBranding-text", children: "Secured by" }),
9
+ /* @__PURE__ */ jsx("a", { href: "https://insforge.dev", target: "_blank", rel: "noopener noreferrer", children: /* @__PURE__ */ jsxs(
10
+ "svg",
11
+ {
12
+ width: "83",
13
+ height: "20",
14
+ viewBox: "0 0 83 20",
15
+ fill: "none",
16
+ xmlns: "http://www.w3.org/2000/svg",
17
+ children: [
18
+ /* @__PURE__ */ jsx(
19
+ "path",
20
+ {
21
+ d: "M2.16783 8.46797C1.9334 8.23325 1.9334 7.85269 2.16783 7.61797L8.11049 1.66797L16.6 1.66797L6.41259 11.868C6.17815 12.1027 5.79807 12.1027 5.56363 11.868L2.16783 8.46797Z",
22
+ fill: "url(#paint0_linear_2976_9475)"
23
+ }
24
+ ),
25
+ /* @__PURE__ */ jsx(
26
+ "path",
27
+ {
28
+ d: "M12.8858 6.44922L16.6 10.168V18.668L8.64108 10.6992L12.8858 6.44922Z",
29
+ fill: "url(#paint1_linear_2976_9475)"
30
+ }
31
+ ),
32
+ /* @__PURE__ */ jsx(
33
+ "path",
34
+ {
35
+ d: "M67.5439 6.48828C68.2894 6.48828 68.9145 6.67064 69.418 7.03516C69.5229 7.10943 69.6214 7.1907 69.7158 7.27637V6.70703H71.248V14.959C71.248 15.1583 71.2381 15.3485 71.2188 15.5283C71.2042 15.7129 71.1774 15.8925 71.1387 16.0674C71.0225 16.5776 70.7998 16.9957 70.4707 17.3213C70.1415 17.6518 69.7321 17.8972 69.2432 18.0576C68.7592 18.2179 68.2222 18.2988 67.6318 18.2988C67.1962 18.2988 66.7768 18.2308 66.375 18.0947C65.9782 17.9587 65.6202 17.7614 65.3008 17.5039C64.9813 17.2512 64.7199 16.9446 64.5166 16.585L66.1289 15.7832C66.2789 16.0698 66.4888 16.2819 66.7598 16.418C67.0356 16.5589 67.3289 16.6289 67.6387 16.6289C68.0016 16.6289 68.3258 16.5628 68.6113 16.4316C68.8969 16.3053 69.1176 16.116 69.2725 15.8633C69.4321 15.6155 69.5077 15.3047 69.498 14.9307V14.1797C69.4665 14.2037 69.4359 14.229 69.4033 14.252C68.8855 14.6164 68.2441 14.7988 67.4795 14.7988C66.7582 14.7988 66.1281 14.6165 65.5908 14.252C65.0537 13.8875 64.637 13.3915 64.3418 12.7646C64.0467 12.1378 63.8994 11.4307 63.8994 10.6436C63.8994 9.84651 64.0465 9.13673 64.3418 8.51465C64.6419 7.88768 65.0663 7.39481 65.6133 7.03516C66.1601 6.67077 66.8036 6.48836 67.5439 6.48828ZM37.5 6.48828C38.1099 6.48828 38.6496 6.58294 39.1191 6.77246C39.5935 6.96201 39.9762 7.2321 40.2666 7.58203C40.5569 7.93184 40.7359 8.34227 40.8037 8.81348L39.0176 9.13477C38.974 8.79951 38.8218 8.53424 38.5605 8.33984C38.304 8.14547 37.96 8.03605 37.5293 8.01172C37.1178 7.98742 36.7859 8.05051 36.5342 8.20117C36.2825 8.34698 36.1562 8.55398 36.1562 8.82129C36.1563 8.97184 36.208 9.10017 36.3096 9.20703C36.4112 9.31394 36.614 9.42141 36.9189 9.52832C37.2288 9.63524 37.6889 9.76635 38.2988 9.92188C38.9232 10.0823 39.4222 10.2666 39.7949 10.4756C40.1722 10.6796 40.4428 10.9254 40.6074 11.2119C40.7768 11.4987 40.8623 11.8466 40.8623 12.2549C40.8623 13.047 40.574 13.6691 39.998 14.1211C39.4268 14.5731 38.6348 14.7988 37.623 14.7988C36.6551 14.7988 35.8687 14.5799 35.2637 14.1426C34.6587 13.7052 34.2909 13.0908 34.1602 12.2988L35.9463 12.0215C36.0383 12.4102 36.2411 12.7169 36.5557 12.9404C36.8703 13.164 37.2678 13.2754 37.7471 13.2754C38.1681 13.2754 38.4922 13.1926 38.7197 13.0273C38.9521 12.8572 39.0684 12.6266 39.0684 12.335C39.0684 12.1552 39.0245 12.0122 38.9375 11.9053C38.8552 11.7935 38.6713 11.686 38.3857 11.584C38.1001 11.4819 37.6618 11.3528 37.0713 11.1973C36.4131 11.0223 35.8901 10.8359 35.5029 10.6367C35.1158 10.4327 34.8374 10.192 34.668 9.91504C34.4985 9.63801 34.4141 9.30188 34.4141 8.9082C34.4141 8.41746 34.5423 7.98943 34.7988 7.625C35.0553 7.26073 35.4135 6.98146 35.873 6.78711C36.3329 6.58784 36.8755 6.48828 37.5 6.48828ZM53.3047 6.48828C54.0937 6.48828 54.7815 6.66572 55.3672 7.02051C55.9527 7.37528 56.4072 7.86634 56.7314 8.49316C57.0558 9.11525 57.2187 9.83193 57.2188 10.6436C57.2188 11.46 57.0537 12.1817 56.7246 12.8086C56.4003 13.4307 55.9451 13.9196 55.3594 14.2744C54.7737 14.6242 54.0888 14.7988 53.3047 14.7988C52.5205 14.7988 51.8357 14.6214 51.25 14.2666C50.6643 13.9118 50.2091 13.4238 49.8848 12.8018C49.5653 12.1748 49.4053 11.4552 49.4053 10.6436C49.4053 9.81735 49.5703 9.09279 49.8994 8.4707C50.2286 7.8488 50.6859 7.36255 51.2715 7.0127C51.8572 6.66281 52.5351 6.48828 53.3047 6.48828ZM76.7471 6.48828C77.5603 6.48828 78.25 6.68053 78.8164 7.06445C79.3876 7.44351 79.812 7.97991 80.0879 8.6748C80.3638 9.36976 80.4672 10.189 80.3994 11.1318H74.7256C74.7843 11.6972 74.949 12.1516 75.2227 12.4951C75.5711 12.9325 76.0792 13.1513 76.7471 13.1514C77.1779 13.1514 77.5486 13.0567 77.8584 12.8672C78.173 12.6728 78.4146 12.3928 78.584 12.0283L80.3125 12.5537C80.0124 13.2633 79.5473 13.8153 78.918 14.209C78.2936 14.6025 77.6036 14.7988 76.8486 14.7988C76.0549 14.7988 75.358 14.6263 74.7578 14.2812C74.1576 13.9362 73.6875 13.458 73.3486 12.8457C73.0147 12.2334 72.8477 11.5284 72.8477 10.7314C72.8477 9.87126 73.0127 9.12495 73.3418 8.49316C73.671 7.85651 74.1282 7.36263 74.7139 7.0127C75.2995 6.6628 75.9775 6.48832 76.7471 6.48828ZM23.3301 14.5801H21.5801V4.08203H23.3301V14.5801ZM29.6152 6.48047C30.1959 6.48052 30.6753 6.5781 31.0527 6.77246C31.4301 6.96681 31.7305 7.21443 31.9531 7.51562C32.1758 7.81695 32.3398 8.13831 32.4463 8.47852C32.5528 8.81873 32.6213 9.14205 32.6504 9.44824C32.6843 9.74946 32.7012 9.99508 32.7012 10.1846V14.5801H30.9287V10.7891C30.9287 10.5413 30.9118 10.2669 30.8779 9.96582C30.844 9.66449 30.7645 9.37469 30.6387 9.09766C30.5177 8.81592 30.3337 8.58503 30.0869 8.40527C29.8449 8.22551 29.5157 8.13579 29.0996 8.13574C28.8769 8.13574 28.6563 8.17221 28.4385 8.24512C28.2206 8.31802 28.0219 8.4442 27.8428 8.62402C27.6685 8.79899 27.5284 9.04249 27.4219 9.35352C27.3154 9.65965 27.2617 10.0532 27.2617 10.5342V14.5801H25.4902V6.70703H27.0518V7.58301C27.2521 7.34675 27.486 7.14172 27.7559 6.96973C28.2593 6.64409 28.8794 6.48047 29.6152 6.48047ZM48.748 5.83887H44.2021V8.45605H47.876V10.2061H44.2021V14.5801H42.4521V4.08203H48.748V5.83887ZM62.5137 6.67773C62.7606 6.65829 63.001 6.66815 63.2334 6.70703V8.34766C63.001 8.27961 62.7317 8.25695 62.4268 8.28125C62.1267 8.30557 61.8553 8.39134 61.6133 8.53711C61.3715 8.66829 61.1733 8.83606 61.0186 9.04004C60.8686 9.24404 60.7572 9.47701 60.6846 9.73926C60.612 9.99685 60.5752 10.2768 60.5752 10.5781V14.5801H58.8184V6.70703H60.3652V7.96582C60.4243 7.85986 60.4888 7.75824 60.5605 7.66211C60.7251 7.4434 60.9219 7.26302 61.1494 7.12207C61.3429 6.99098 61.5559 6.88926 61.7881 6.81641C62.0251 6.73869 62.267 6.69235 62.5137 6.67773ZM67.8057 8.0625C67.3362 8.06252 66.9485 8.17982 66.6436 8.41309C66.3389 8.64144 66.1139 8.95232 65.9688 9.3457C65.8235 9.7345 65.751 10.1673 65.751 10.6436C65.751 11.1247 65.8215 11.5624 65.9619 11.9561C66.1071 12.3447 66.3269 12.6535 66.6221 12.8818C66.9174 13.1103 67.293 13.2246 67.748 13.2246C68.2174 13.2246 68.5953 13.1171 68.8809 12.9033C69.1711 12.6846 69.3811 12.3808 69.5117 11.9922C69.6473 11.6034 69.7158 11.1539 69.7158 10.6436C69.7158 10.1284 69.6473 9.67886 69.5117 9.29492C69.381 8.90617 69.1753 8.60445 68.8945 8.39062C68.6138 8.17213 68.2508 8.0625 67.8057 8.0625ZM53.3047 8.13574C52.8351 8.13574 52.4475 8.24222 52.1426 8.45605C51.8425 8.66504 51.6198 8.95977 51.4746 9.33887C51.3295 9.71303 51.2568 10.148 51.2568 10.6436C51.2568 11.4066 51.4288 12.0168 51.7725 12.4736C52.121 12.9256 52.6318 13.1514 53.3047 13.1514C54.0017 13.1514 54.5196 12.9177 54.8584 12.4512C55.1971 11.9846 55.3672 11.3822 55.3672 10.6436C55.3672 9.8807 55.1951 9.27324 54.8516 8.82129C54.5079 8.36444 53.9921 8.13575 53.3047 8.13574ZM76.8203 8.02637C76.1039 8.02637 75.5712 8.25013 75.2227 8.69727C74.9987 8.98144 74.8476 9.35094 74.7676 9.80566H78.6221C78.5589 9.29301 78.4236 8.89686 78.2139 8.61719C77.9186 8.22359 77.4543 8.02645 76.8203 8.02637Z",
36
+ fill: "black"
37
+ }
38
+ ),
39
+ /* @__PURE__ */ jsxs("defs", { children: [
40
+ /* @__PURE__ */ jsxs(
41
+ "linearGradient",
42
+ {
43
+ id: "paint0_linear_2976_9475",
44
+ x1: "1.85883",
45
+ y1: "1.92425",
46
+ x2: "24.3072",
47
+ y2: "9.64016",
48
+ gradientUnits: "userSpaceOnUse",
49
+ children: [
50
+ /* @__PURE__ */ jsx("stop", {}),
51
+ /* @__PURE__ */ jsx("stop", { offset: "1", stopOpacity: "0.4" })
52
+ ]
53
+ }
54
+ ),
55
+ /* @__PURE__ */ jsxs(
56
+ "linearGradient",
57
+ {
58
+ id: "paint1_linear_2976_9475",
59
+ x1: "25.6475",
60
+ y1: "8.65468",
61
+ x2: "10.7901",
62
+ y2: "8.65468",
63
+ gradientUnits: "userSpaceOnUse",
64
+ children: [
65
+ /* @__PURE__ */ jsx("stop", {}),
66
+ /* @__PURE__ */ jsx("stop", { offset: "1", stopOpacity: "0.4" })
67
+ ]
68
+ }
69
+ )
70
+ ] })
71
+ ]
72
+ }
73
+ ) })
68
74
  ] });
69
75
  }
70
- function cn(...inputs) {
71
- return tailwindMerge.twMerge(clsx.clsx(inputs));
72
- }
73
- function AuthContainer({ children, appearance = {} }) {
74
- return /* @__PURE__ */ jsxRuntime.jsxs(
75
- "div",
76
- {
77
- className: cn(
78
- "w-full max-w-[400px] rounded-xl overflow-hidden shadow-lg",
79
- appearance.containerClassName
80
- ),
81
- children: [
82
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn(
83
- "bg-white p-6 flex flex-col justify-center items-stretch gap-6",
84
- appearance.cardClassName
85
- ), children }),
86
- /* @__PURE__ */ jsxRuntime.jsx(AuthBranding, {})
87
- ]
88
- }
89
- );
76
+ function AuthContainer({ children }) {
77
+ return /* @__PURE__ */ jsxs("div", { className: "if-authContainer if-internal-a8f3d2", children: [
78
+ /* @__PURE__ */ jsx("div", { className: "if-authCard if-internal-b2k9x1", children }),
79
+ /* @__PURE__ */ jsx(AuthBranding, {})
80
+ ] });
90
81
  }
91
- function AuthHeader({
92
- title,
93
- subtitle,
94
- appearance = {}
95
- }) {
96
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn(
97
- "flex flex-col justify-start items-start gap-2",
98
- appearance.containerClassName
99
- ), children: [
100
- /* @__PURE__ */ jsxRuntime.jsx("h1", { className: cn(
101
- "text-2xl font-semibold text-black leading-8",
102
- appearance.titleClassName
103
- ), children: title }),
104
- subtitle && /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn(
105
- "text-sm font-normal text-[#828282] leading-6",
106
- appearance.subtitleClassName
107
- ), children: subtitle })
82
+ function AuthHeader({ title, subtitle }) {
83
+ return /* @__PURE__ */ jsxs("div", { className: "if-authHeader if-internal-h3m7w5", children: [
84
+ /* @__PURE__ */ jsx("h1", { className: "if-authHeader-title if-internal-t4p1k9", children: title }),
85
+ subtitle && /* @__PURE__ */ jsx("p", { className: "if-authHeader-subtitle if-internal-s7q2m3", children: subtitle })
108
86
  ] });
109
87
  }
110
- function AuthErrorBanner({ error, className }) {
111
- if (!error) return null;
112
- return /* @__PURE__ */ jsxRuntime.jsxs(
113
- "div",
114
- {
115
- className: cn(
116
- "flex items-center gap-2 mb-4 pl-3 py-2 pr-2 bg-red-50 border-2 border-red-600 rounded",
117
- className
118
- ),
119
- children: [
120
- /* @__PURE__ */ jsxRuntime.jsx(lucideReact.AlertTriangle, { className: "w-6 h-6 text-red-500 shrink-0" }),
121
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm text-red-600 flex-1", children: error })
122
- ]
123
- }
124
- );
88
+ function AuthErrorBanner({ error }) {
89
+ if (!error) {
90
+ return null;
91
+ }
92
+ return /* @__PURE__ */ jsx("div", { className: "if-errorBanner if-internal-eb2m7k", children: /* @__PURE__ */ jsxs("div", { style: { display: "flex", alignItems: "center", gap: "0.5rem" }, children: [
93
+ /* @__PURE__ */ jsx(
94
+ AlertTriangle,
95
+ {
96
+ style: { width: "1.5rem", height: "1.5rem", flexShrink: 0, color: "#dc2626" }
97
+ }
98
+ ),
99
+ /* @__PURE__ */ jsx("span", { className: "if-errorBanner-text", children: error })
100
+ ] }) });
125
101
  }
126
102
  function AuthFormField({
127
103
  label,
128
104
  id,
129
- appearance = {},
130
105
  ...props
131
106
  }) {
132
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn(
133
- "flex flex-col justify-center items-stretch gap-1",
134
- appearance.containerClassName
135
- ), children: [
136
- /* @__PURE__ */ jsxRuntime.jsx(
137
- "label",
138
- {
139
- htmlFor: id,
140
- className: cn(
141
- "text-sm font-normal text-black leading-6",
142
- appearance.labelClassName
143
- ),
144
- children: label
145
- }
146
- ),
147
- /* @__PURE__ */ jsxRuntime.jsx(
148
- "input",
149
- {
150
- id,
151
- className: cn(
152
- "w-full flex items-center gap-2 self-stretch",
153
- "pl-3 pr-2 py-2 rounded-sm border border-[#D4D4D4] bg-white",
154
- "text-sm font-normal leading-5",
155
- "placeholder:text-[#A3A3A3] placeholder:font-sm placeholder:font-normal",
156
- "focus:outline-none focus:border-black",
157
- appearance.inputClassName
158
- ),
159
- ...props
160
- }
161
- )
107
+ return /* @__PURE__ */ jsxs("div", { className: "if-formField if-internal-f9n6p2", children: [
108
+ /* @__PURE__ */ jsx("label", { htmlFor: id, className: "if-formField-label if-internal-l3k8m1", children: label }),
109
+ /* @__PURE__ */ jsx("input", { id, className: "if-formField-input if-internal-i2v8k4", ...props })
162
110
  ] });
163
111
  }
164
112
  function AuthPasswordStrengthIndicator({
165
113
  password,
166
- config,
167
- appearance = {}
114
+ config
168
115
  }) {
169
116
  const requirements = createRequirements(config);
170
- return /* @__PURE__ */ jsxRuntime.jsx(
117
+ return /* @__PURE__ */ jsx("div", { className: "if-passwordStrength if-internal-ps6w3k", children: /* @__PURE__ */ jsx("div", { className: "if-passwordStrength-requirements", children: requirements.map((req) => /* @__PURE__ */ jsxs(
171
118
  "div",
172
119
  {
173
- className: cn("mt-3 flex flex-col gap-3", appearance.containerClassName),
174
- children: requirements.map((req) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
175
- /* @__PURE__ */ jsxRuntime.jsx(
120
+ className: `if-passwordStrength-requirement ${req.test(password) ? "met" : "unmet"}`,
121
+ children: [
122
+ /* @__PURE__ */ jsx(
176
123
  "div",
177
124
  {
178
- className: cn(
179
- "flex items-center justify-center w-4 h-4 rounded-full border-2 transition-colors",
180
- req.test(password) ? "bg-[#059669] border-transparent" : "border-neutral-400 bg-white"
181
- ),
182
- children: req.test(password) && /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Check, { className: "w-3 h-3 text-white" })
125
+ style: {
126
+ display: "flex",
127
+ alignItems: "center",
128
+ justifyContent: "center",
129
+ width: "1rem",
130
+ height: "1rem",
131
+ borderRadius: "50%",
132
+ border: "2px solid",
133
+ borderColor: req.test(password) ? "transparent" : "#9ca3af",
134
+ backgroundColor: req.test(password) ? "#059669" : "white",
135
+ transition: "all 0.2s"
136
+ },
137
+ children: req.test(password) && /* @__PURE__ */ jsx(Check, { style: { width: "0.75rem", height: "0.75rem", color: "white" } })
183
138
  }
184
139
  ),
185
- /* @__PURE__ */ jsxRuntime.jsx(
186
- "span",
187
- {
188
- className: cn(
189
- "text-sm font-normal leading-5 text-[#525252]",
190
- appearance.requirementClassName
191
- ),
192
- children: req.label
193
- }
194
- )
195
- ] }, req.label))
196
- }
197
- );
140
+ /* @__PURE__ */ jsx("span", { children: req.label })
141
+ ]
142
+ },
143
+ req.label
144
+ )) }) });
198
145
  }
199
146
  function createRequirements(config) {
200
147
  const requirements = [];
201
- const minLength = config.passwordMinLength;
202
- const requireUppercase = config.requireUppercase;
203
- const requireLowercase = config.requireLowercase;
204
- const requireNumber = config.requireNumber;
205
- const requireSpecialChar = config.requireSpecialChar;
206
- if (requireUppercase) {
148
+ if (config.passwordMinLength) {
149
+ requirements.push({
150
+ label: `At least ${config.passwordMinLength} characters`,
151
+ test: (password) => password.length >= config.passwordMinLength
152
+ });
153
+ }
154
+ if (config.requireLowercase) {
207
155
  requirements.push({
208
- label: "At least 1 Uppercase letter",
209
- test: (pwd) => /[A-Z]/.test(pwd)
156
+ label: "Contains lowercase letter",
157
+ test: (password) => /[a-z]/.test(password)
210
158
  });
211
159
  }
212
- if (requireLowercase) {
160
+ if (config.requireUppercase) {
213
161
  requirements.push({
214
- label: "At least 1 Lowercase letter",
215
- test: (pwd) => /[a-z]/.test(pwd)
162
+ label: "Contains uppercase letter",
163
+ test: (password) => /[A-Z]/.test(password)
216
164
  });
217
165
  }
218
- if (requireNumber) {
166
+ if (config.requireNumber) {
219
167
  requirements.push({
220
- label: "At least 1 Number",
221
- test: (pwd) => /\d/.test(pwd)
168
+ label: "Contains number",
169
+ test: (password) => /\d/.test(password)
222
170
  });
223
171
  }
224
- if (requireSpecialChar) {
172
+ if (config.requireSpecialChar) {
225
173
  requirements.push({
226
- label: "Special character (e.g. !?<>@#$%)",
227
- test: (pwd) => /[!@#$%^&*()_+\-=[\]{};\\|,.<>/?]/.test(pwd)
174
+ label: "Contains special character",
175
+ test: (password) => /[!@#$%^&*()_+\-=[\]{};':"\\|,.<>/?]/.test(password)
228
176
  });
229
177
  }
230
- requirements.push({
231
- label: `${minLength} characters or more`,
232
- test: (pwd) => pwd.length >= minLength
233
- });
234
178
  return requirements;
235
179
  }
236
180
  function AuthPasswordField({
@@ -240,121 +184,78 @@ function AuthPasswordField({
240
184
  authConfig,
241
185
  forgotPasswordLink,
242
186
  value,
243
- appearance = {},
244
187
  onFocus,
245
188
  ...props
246
189
  }) {
247
- const [showPassword, setShowPassword] = react.useState(false);
248
- const [showStrength, setShowStrength] = react.useState(false);
190
+ const [showPassword, setShowPassword] = useState(false);
191
+ const [showStrength, setShowStrength] = useState(false);
249
192
  const handleFocus = (e) => {
250
193
  if (showStrengthIndicator) {
251
194
  setShowStrength(true);
252
195
  }
253
196
  onFocus?.(e);
254
197
  };
255
- return /* @__PURE__ */ jsxRuntime.jsxs(
256
- "div",
257
- {
258
- className: cn(
259
- "flex flex-col justify-center items-stretch gap-1",
260
- appearance.containerClassName
198
+ return /* @__PURE__ */ jsxs("div", { className: "if-passwordField if-internal-p5w9m7", children: [
199
+ (label || forgotPasswordLink) && /* @__PURE__ */ jsxs("div", { className: "if-passwordField-labelRow", children: [
200
+ /* @__PURE__ */ jsx("label", { htmlFor: id, className: "if-passwordField-label", children: label }),
201
+ forgotPasswordLink && /* @__PURE__ */ jsx("a", { href: forgotPasswordLink.href, className: "if-passwordField-forgotLink", children: forgotPasswordLink.text || "Forget Password?" })
202
+ ] }),
203
+ /* @__PURE__ */ jsxs("div", { className: "if-passwordField-inputWrapper", children: [
204
+ /* @__PURE__ */ jsx(
205
+ "input",
206
+ {
207
+ id,
208
+ type: showPassword ? "text" : "password",
209
+ className: "if-passwordField-input",
210
+ value,
211
+ onFocus: handleFocus,
212
+ ...props
213
+ }
261
214
  ),
262
- children: [
263
- (label || forgotPasswordLink) && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-between items-center", children: [
264
- /* @__PURE__ */ jsxRuntime.jsx(
265
- "label",
266
- {
267
- htmlFor: id,
268
- className: cn(
269
- "text-sm font-normal text-black leading-6",
270
- appearance.labelClassName
271
- ),
272
- children: label
273
- }
274
- ),
275
- forgotPasswordLink && /* @__PURE__ */ jsxRuntime.jsx(
276
- "a",
277
- {
278
- href: forgotPasswordLink.href,
279
- className: "text-right text-sm font-normal text-[#737373] leading-6",
280
- children: forgotPasswordLink.text || "Forget Password?"
281
- }
282
- )
283
- ] }),
284
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative", children: [
285
- /* @__PURE__ */ jsxRuntime.jsx(
286
- "input",
287
- {
288
- id,
289
- type: showPassword ? "text" : "password",
290
- className: cn(
291
- "w-full flex items-center gap-2 self-stretch",
292
- "pl-3 py-2 pr-8 rounded border border-[#D4D4D4] bg-white",
293
- "text-sm font-normal leading-5",
294
- "placeholder:text-[#A3A3A3] placeholder:font-sm placeholder:font-normal",
295
- "focus:outline-none focus:border-black",
296
- appearance.inputClassName
297
- ),
298
- value,
299
- onFocus: handleFocus,
300
- ...props
301
- }
302
- ),
303
- /* @__PURE__ */ jsxRuntime.jsx(
304
- "button",
305
- {
306
- type: "button",
307
- onClick: () => setShowPassword(!showPassword),
308
- className: "absolute right-2 top-1/2 -translate-y-1/2 bg-transparent border-none text-[#A6A6A6] cursor-pointer transition-colors hover:text-gray-600 flex items-center justify-center",
309
- "aria-label": showPassword ? "Hide password" : "Show password",
310
- children: showPassword ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.EyeOff, { size: 20 }) : /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Eye, { size: 20 })
311
- }
312
- )
313
- ] }),
314
- showStrengthIndicator && showStrength && /* @__PURE__ */ jsxRuntime.jsx(
315
- AuthPasswordStrengthIndicator,
316
- {
317
- password: String(value || ""),
318
- config: authConfig
319
- }
320
- )
321
- ]
322
- }
323
- );
215
+ /* @__PURE__ */ jsx(
216
+ "button",
217
+ {
218
+ type: "button",
219
+ onClick: () => setShowPassword(!showPassword),
220
+ className: "if-passwordField-toggleButton",
221
+ "aria-label": showPassword ? "Hide password" : "Show password",
222
+ children: showPassword ? /* @__PURE__ */ jsx(EyeOff, { size: 20 }) : /* @__PURE__ */ jsx(Eye, { size: 20 })
223
+ }
224
+ )
225
+ ] }),
226
+ showStrengthIndicator && showStrength && /* @__PURE__ */ jsx(AuthPasswordStrengthIndicator, { password: String(value || ""), config: authConfig })
227
+ ] });
324
228
  }
325
229
  function AuthSubmitButton({
326
230
  children,
327
231
  isLoading = false,
328
232
  confirmed = false,
329
- disabled = false,
330
- className
233
+ disabled = false
331
234
  }) {
332
- return /* @__PURE__ */ jsxRuntime.jsxs(
235
+ return /* @__PURE__ */ jsxs(
333
236
  "button",
334
237
  {
335
238
  type: "submit",
336
- className: cn(
337
- "rounded-sm bg-black w-full flex mt-4 px-4 py-2",
338
- "justify-center items-center gap-2.5 self-stretch",
339
- "text-white font-semibold font-manrope text-base leading-normal",
340
- "border-none cursor-pointer transition-colors",
341
- "hover:bg-gray-800",
342
- "disabled:opacity-50 disabled:cursor-not-allowed",
343
- className
344
- ),
239
+ className: "if-submitButton if-internal-b8p3m4",
345
240
  disabled: disabled || isLoading || confirmed,
346
241
  children: [
347
- isLoading && /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Loader2, { className: "w-5 h-5 animate-spin", size: 20 }),
348
- confirmed && /* @__PURE__ */ jsxRuntime.jsx(lucideReact.CircleCheck, { className: "w-5 h-5", size: 20 }),
242
+ isLoading && /* @__PURE__ */ jsx(Loader2, { className: "if-submitButton-icon if-submitButton-spinner", size: 20 }),
243
+ confirmed && /* @__PURE__ */ jsx(CircleCheck, { className: "if-submitButton-icon", size: 20 }),
349
244
  children
350
245
  ]
351
246
  }
352
247
  );
353
248
  }
354
- function AuthLink({ text, linkText, href, appearance = {} }) {
249
+ function AuthLink({
250
+ text,
251
+ linkText,
252
+ href
253
+ }) {
355
254
  const currentSearch = typeof window !== "undefined" ? window.location.search : "";
356
255
  const finalHref = (() => {
357
- if (!currentSearch) return href;
256
+ if (!currentSearch) {
257
+ return href;
258
+ }
358
259
  try {
359
260
  const url = new URL(href, window.location.origin);
360
261
  const currentParams = new URLSearchParams(currentSearch);
@@ -368,59 +269,45 @@ function AuthLink({ text, linkText, href, appearance = {} }) {
368
269
  return href;
369
270
  }
370
271
  })();
371
- return /* @__PURE__ */ jsxRuntime.jsxs("p", { className: cn(
372
- "text-center text-sm font-normal text-[#828282] leading-6",
373
- appearance.containerClassName
374
- ), children: [
375
- text,
376
- " ",
377
- /* @__PURE__ */ jsxRuntime.jsx(
378
- "a",
379
- {
380
- href: finalHref,
381
- className: cn(
382
- "text-sm font-medium text-black leading-6",
383
- appearance.linkClassName
384
- ),
385
- children: linkText
386
- }
387
- )
272
+ return /* @__PURE__ */ jsxs("p", { className: "if-authLink if-internal-al5w9p", children: [
273
+ text && /* @__PURE__ */ jsx("span", { className: "if-authLink-text", children: text }),
274
+ text && " ",
275
+ /* @__PURE__ */ jsx("a", { href: finalHref, className: "if-authLink-link", children: linkText })
388
276
  ] });
389
277
  }
390
- function AuthDivider({ text = "or", className }) {
391
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn(
392
- "flex justify-center items-center gap-6 self-stretch",
393
- "before:content-[''] before:flex-1 before:h-px before:bg-[#E5E5E5]",
394
- "after:content-[''] after:flex-1 after:h-px after:bg-[#E5E5E5]",
395
- className
396
- ), children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-semibold font-manrope text-[#A3A3A3] leading-normal", children: text }) });
278
+ function AuthDivider({ text = "or" }) {
279
+ return /* @__PURE__ */ jsxs("div", { className: "if-authDivider if-internal-ad7k3m", children: [
280
+ /* @__PURE__ */ jsx("div", { className: "if-authDivider-line" }),
281
+ /* @__PURE__ */ jsx("span", { className: "if-authDivider-text", children: text }),
282
+ /* @__PURE__ */ jsx("div", { className: "if-authDivider-line" })
283
+ ] });
397
284
  }
398
285
  var OAUTH_PROVIDER_CONFIG = {
399
286
  google: {
400
287
  name: "Google",
401
- svg: /* @__PURE__ */ jsxRuntime.jsxs("svg", { width: "18", height: "18", viewBox: "0 0 18 18", fill: "none", children: [
402
- /* @__PURE__ */ jsxRuntime.jsx(
288
+ svg: /* @__PURE__ */ jsxs("svg", { width: "18", height: "18", viewBox: "0 0 18 18", fill: "none", children: [
289
+ /* @__PURE__ */ jsx(
403
290
  "path",
404
291
  {
405
292
  d: "M17.64 9.2c0-.637-.057-1.251-.164-1.84H9v3.481h4.844c-.209 1.125-.843 2.078-1.796 2.717v2.258h2.908c1.702-1.567 2.684-3.874 2.684-6.615z",
406
293
  fill: "#4285F4"
407
294
  }
408
295
  ),
409
- /* @__PURE__ */ jsxRuntime.jsx(
296
+ /* @__PURE__ */ jsx(
410
297
  "path",
411
298
  {
412
299
  d: "M9 18c2.43 0 4.467-.806 5.956-2.184l-2.908-2.258c-.806.54-1.837.86-3.048.86-2.344 0-4.328-1.584-5.036-3.711H.957v2.332C2.438 15.983 5.482 18 9 18z",
413
300
  fill: "#34A853"
414
301
  }
415
302
  ),
416
- /* @__PURE__ */ jsxRuntime.jsx(
303
+ /* @__PURE__ */ jsx(
417
304
  "path",
418
305
  {
419
306
  d: "M3.964 10.707c-.18-.54-.282-1.117-.282-1.707 0-.593.102-1.17.282-1.709V4.958H.957C.347 6.173 0 7.548 0 9c0 1.452.348 2.827.957 4.042l3.007-2.335z",
420
307
  fill: "#FBBC05"
421
308
  }
422
309
  ),
423
- /* @__PURE__ */ jsxRuntime.jsx(
310
+ /* @__PURE__ */ jsx(
424
311
  "path",
425
312
  {
426
313
  d: "M9 3.58c1.321 0 2.508.454 3.44 1.345l2.582-2.58C13.463.891 11.426 0 9 0 5.482 0 2.438 2.017.957 4.958L3.964 7.29C4.672 5.163 6.656 3.58 9 3.58z",
@@ -432,12 +319,12 @@ var OAUTH_PROVIDER_CONFIG = {
432
319
  },
433
320
  github: {
434
321
  name: "GitHub",
435
- svg: /* @__PURE__ */ jsxRuntime.jsx("svg", { width: "18", height: "18", viewBox: "0 0 16 16", fill: "currentColor", children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z" }) }),
322
+ svg: /* @__PURE__ */ jsx("svg", { width: "18", height: "18", viewBox: "0 0 16 16", fill: "currentColor", children: /* @__PURE__ */ jsx("path", { d: "M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z" }) }),
436
323
  className: "insforge-oauth-github"
437
324
  },
438
325
  discord: {
439
326
  name: "Discord",
440
- svg: /* @__PURE__ */ jsxRuntime.jsx("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", children: /* @__PURE__ */ jsxRuntime.jsx(
327
+ svg: /* @__PURE__ */ jsx("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", children: /* @__PURE__ */ jsx(
441
328
  "path",
442
329
  {
443
330
  d: "M20.317 4.37a19.791 19.791 0 00-4.885-1.515.074.074 0 00-.079.037c-.21.375-.444.864-.608 1.25a18.27 18.27 0 00-5.487 0 12.64 12.64 0 00-.617-1.25.077.077 0 00-.079-.037A19.736 19.736 0 003.677 4.37a.07.07 0 00-.032.027C.533 9.046-.32 13.58.099 18.057a.082.082 0 00.031.057 19.9 19.9 0 005.993 3.03.078.078 0 00.084-.028c.462-.63.874-1.295 1.226-1.994a.076.076 0 00-.041-.106 13.107 13.107 0 01-1.872-.892.077.077 0 01-.008-.128 10.2 10.2 0 00.372-.292.074.074 0 01.077-.01c3.928 1.793 8.18 1.793 12.062 0a.074.074 0 01.078.01c.12.098.246.198.373.292a.077.077 0 01-.006.127 12.299 12.299 0 01-1.873.892.077.077 0 00-.041.107c.36.698.772 1.362 1.225 1.993a.076.076 0 00.084.028 19.839 19.839 0 006.002-3.03.077.077 0 00.032-.054c.5-5.177-.838-9.674-3.549-13.66a.061.061 0 00-.031-.03zM8.02 15.33c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.956-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.956 2.418-2.157 2.418zm7.975 0c-1.183 0-2.157-1.085-2.157-2.419 0-1.333.955-2.419 2.157-2.419 1.21 0 2.176 1.096 2.157 2.42 0 1.333-.946 2.418-2.157 2.418z",
@@ -448,7 +335,7 @@ var OAUTH_PROVIDER_CONFIG = {
448
335
  },
449
336
  facebook: {
450
337
  name: "Facebook",
451
- svg: /* @__PURE__ */ jsxRuntime.jsx("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", children: /* @__PURE__ */ jsxRuntime.jsx(
338
+ svg: /* @__PURE__ */ jsx("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", children: /* @__PURE__ */ jsx(
452
339
  "path",
453
340
  {
454
341
  d: "M24 12.073C24 5.405 18.627 0 12 0S0 5.405 0 12.073C0 18.1 4.388 23.094 10.125 24v-8.437H7.078v-3.49h3.047v-2.66c0-3.025 1.792-4.697 4.533-4.697 1.312 0 2.686.236 2.686.236v2.971H15.83c-1.49 0-1.955.93-1.955 1.886v2.264h3.328l-.532 3.49h-2.796V24C19.612 23.094 24 18.1 24 12.073z",
@@ -459,7 +346,7 @@ var OAUTH_PROVIDER_CONFIG = {
459
346
  },
460
347
  linkedin: {
461
348
  name: "LinkedIn",
462
- svg: /* @__PURE__ */ jsxRuntime.jsx("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", children: /* @__PURE__ */ jsxRuntime.jsx(
349
+ svg: /* @__PURE__ */ jsx("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", children: /* @__PURE__ */ jsx(
463
350
  "path",
464
351
  {
465
352
  d: "M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.062 2.062 0 01-2.063-2.065 2.064 2.064 0 112.063 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z",
@@ -470,45 +357,45 @@ var OAUTH_PROVIDER_CONFIG = {
470
357
  },
471
358
  microsoft: {
472
359
  name: "Microsoft",
473
- svg: /* @__PURE__ */ jsxRuntime.jsxs("svg", { width: "18", height: "18", viewBox: "0 0 23 23", fill: "none", children: [
474
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M0 0h11v11H0z", fill: "#F25022" }),
475
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M12 0h11v11H12z", fill: "#7FBA00" }),
476
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M0 12h11v11H0z", fill: "#00A4EF" }),
477
- /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M12 12h11v11H12z", fill: "#FFB900" })
360
+ svg: /* @__PURE__ */ jsxs("svg", { width: "18", height: "18", viewBox: "0 0 23 23", fill: "none", children: [
361
+ /* @__PURE__ */ jsx("path", { d: "M0 0h11v11H0z", fill: "#F25022" }),
362
+ /* @__PURE__ */ jsx("path", { d: "M12 0h11v11H12z", fill: "#7FBA00" }),
363
+ /* @__PURE__ */ jsx("path", { d: "M0 12h11v11H0z", fill: "#00A4EF" }),
364
+ /* @__PURE__ */ jsx("path", { d: "M12 12h11v11H12z", fill: "#FFB900" })
478
365
  ] }),
479
366
  className: "insforge-oauth-microsoft"
480
367
  },
481
368
  apple: {
482
369
  name: "Apple",
483
- svg: /* @__PURE__ */ jsxRuntime.jsx("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M17.05 20.28c-.98.95-2.05.8-3.08.35-1.09-.46-2.09-.48-3.24 0-1.44.62-2.2.44-3.06-.35C2.79 15.25 3.51 7.59 9.05 7.31c1.35.07 2.29.74 3.08.8 1.18-.24 2.31-.93 3.57-.84 1.51.12 2.65.72 3.4 1.8-3.12 1.87-2.38 5.98.48 7.13-.57 1.5-1.31 2.99-2.54 4.09l.01-.01zM12.03 7.25c-.15-2.23 1.66-4.07 3.74-4.25.29 2.58-2.34 4.5-3.74 4.25z" }) }),
370
+ svg: /* @__PURE__ */ jsx("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ jsx("path", { d: "M17.05 20.28c-.98.95-2.05.8-3.08.35-1.09-.46-2.09-.48-3.24 0-1.44.62-2.2.44-3.06-.35C2.79 15.25 3.51 7.59 9.05 7.31c1.35.07 2.29.74 3.08.8 1.18-.24 2.31-.93 3.57-.84 1.51.12 2.65.72 3.4 1.8-3.12 1.87-2.38 5.98.48 7.13-.57 1.5-1.31 2.99-2.54 4.09l.01-.01zM12.03 7.25c-.15-2.23 1.66-4.07 3.74-4.25.29 2.58-2.34 4.5-3.74 4.25z" }) }),
484
371
  className: "insforge-oauth-apple"
485
372
  },
486
373
  x: {
487
374
  name: "X",
488
- svg: /* @__PURE__ */ jsxRuntime.jsx("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z" }) }),
375
+ svg: /* @__PURE__ */ jsx("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ jsx("path", { d: "M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z" }) }),
489
376
  className: "insforge-oauth-x"
490
377
  },
491
378
  instagram: {
492
379
  name: "Instagram",
493
- svg: /* @__PURE__ */ jsxRuntime.jsxs("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", children: [
494
- /* @__PURE__ */ jsxRuntime.jsx(
380
+ svg: /* @__PURE__ */ jsxs("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", children: [
381
+ /* @__PURE__ */ jsx(
495
382
  "path",
496
383
  {
497
384
  d: "M12 2.163c3.204 0 3.584.012 4.85.07 3.252.148 4.771 1.691 4.919 4.919.058 1.265.069 1.645.069 4.849 0 3.205-.012 3.584-.069 4.849-.149 3.225-1.664 4.771-4.919 4.919-1.266.058-1.644.07-4.85.07-3.204 0-3.584-.012-4.849-.07-3.26-.149-4.771-1.699-4.919-4.92-.058-1.265-.07-1.644-.07-4.849 0-3.204.013-3.583.07-4.849.149-3.227 1.664-4.771 4.919-4.919 1.266-.057 1.645-.069 4.849-.069zM12 0C8.741 0 8.333.014 7.053.072 2.695.272.273 2.69.073 7.052.014 8.333 0 8.741 0 12c0 3.259.014 3.668.072 4.948.2 4.358 2.618 6.78 6.98 6.98C8.333 23.986 8.741 24 12 24c3.259 0 3.668-.014 4.948-.072 4.354-.2 6.782-2.618 6.979-6.98.059-1.28.073-1.689.073-4.948 0-3.259-.014-3.667-.072-4.947-.196-4.354-2.617-6.78-6.979-6.98C15.668.014 15.259 0 12 0zm0 5.838a6.162 6.162 0 100 12.324 6.162 6.162 0 000-12.324zM12 16a4 4 0 110-8 4 4 0 010 8zm6.406-11.845a1.44 1.44 0 100 2.881 1.44 1.44 0 000-2.881z",
498
385
  fill: "url(#instagram-gradient)"
499
386
  }
500
387
  ),
501
- /* @__PURE__ */ jsxRuntime.jsx("defs", { children: /* @__PURE__ */ jsxRuntime.jsxs("linearGradient", { id: "instagram-gradient", x1: "0%", y1: "100%", x2: "100%", y2: "0%", children: [
502
- /* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "0%", stopColor: "#FD5949" }),
503
- /* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "50%", stopColor: "#D6249F" }),
504
- /* @__PURE__ */ jsxRuntime.jsx("stop", { offset: "100%", stopColor: "#285AEB" })
388
+ /* @__PURE__ */ jsx("defs", { children: /* @__PURE__ */ jsxs("linearGradient", { id: "instagram-gradient", x1: "0%", y1: "100%", x2: "100%", y2: "0%", children: [
389
+ /* @__PURE__ */ jsx("stop", { offset: "0%", stopColor: "#FD5949" }),
390
+ /* @__PURE__ */ jsx("stop", { offset: "50%", stopColor: "#D6249F" }),
391
+ /* @__PURE__ */ jsx("stop", { offset: "100%", stopColor: "#285AEB" })
505
392
  ] }) })
506
393
  ] }),
507
394
  className: "insforge-oauth-instagram"
508
395
  },
509
396
  tiktok: {
510
397
  name: "TikTok",
511
- svg: /* @__PURE__ */ jsxRuntime.jsx("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", children: /* @__PURE__ */ jsxRuntime.jsx(
398
+ svg: /* @__PURE__ */ jsx("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", children: /* @__PURE__ */ jsx(
512
399
  "path",
513
400
  {
514
401
  d: "M19.589 6.686a4.793 4.793 0 01-3.77-4.245V2h-3.445v13.672a2.896 2.896 0 01-5.201 1.743l-.002-.001.002.001a2.895 2.895 0 013.183-4.51v-3.5a6.329 6.329 0 00-5.394 10.692 6.33 6.33 0 0010.857-4.424V8.687a8.182 8.182 0 004.773 1.526V6.79a4.831 4.831 0 01-1.003-.104z",
@@ -519,7 +406,7 @@ var OAUTH_PROVIDER_CONFIG = {
519
406
  },
520
407
  spotify: {
521
408
  name: "Spotify",
522
- svg: /* @__PURE__ */ jsxRuntime.jsx("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", children: /* @__PURE__ */ jsxRuntime.jsx(
409
+ svg: /* @__PURE__ */ jsx("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", children: /* @__PURE__ */ jsx(
523
410
  "path",
524
411
  {
525
412
  d: "M12 0C5.4 0 0 5.4 0 12s5.4 12 12 12 12-5.4 12-12S18.66 0 12 0zm5.521 17.34c-.24.359-.66.48-1.021.24-2.82-1.74-6.36-2.101-10.561-1.141-.418.122-.779-.179-.899-.539-.12-.421.18-.78.54-.9 4.56-1.021 8.52-.6 11.64 1.32.42.18.479.659.301 1.02zm1.44-3.3c-.301.42-.841.6-1.262.3-3.239-1.98-8.159-2.58-11.939-1.38-.479.12-1.02-.12-1.14-.6-.12-.48.12-1.021.6-1.141C9.6 9.9 15 10.561 18.72 12.84c.361.181.54.78.241 1.2zm.12-3.36C15.24 8.4 8.82 8.16 5.16 9.301c-.6.179-1.2-.181-1.38-.721-.18-.601.18-1.2.72-1.381 4.26-1.26 11.28-1.02 15.721 1.621.539.3.719 1.02.419 1.56-.299.421-1.02.599-1.559.3z",
@@ -538,43 +425,39 @@ function AuthOAuthButton({
538
425
  disabled,
539
426
  loading,
540
427
  displayMode = "full",
541
- style,
542
- className
428
+ style
543
429
  }) {
544
430
  const config = getProviderConfig(provider);
545
431
  if (!config) {
546
432
  return null;
547
433
  }
548
434
  const getButtonText = () => {
549
- if (loading) return "Authenticating...";
550
- if (displayMode === "full") return `Continue with ${config.name}`;
551
- if (displayMode === "short") return config.name;
435
+ if (displayMode === "full") {
436
+ return `Continue with ${config.name}`;
437
+ }
438
+ if (displayMode === "short") {
439
+ return config.name;
440
+ }
552
441
  return "";
553
442
  };
554
- return /* @__PURE__ */ jsxRuntime.jsxs(
443
+ const className = [
444
+ "if-oauthButton",
445
+ "if-internal-o4k7w2",
446
+ displayMode === "full" && "if-oauthButton-full",
447
+ displayMode === "short" && "if-oauthButton-short",
448
+ displayMode === "icon" && "if-oauthButton-icon-only"
449
+ ].filter(Boolean).join(" ");
450
+ return /* @__PURE__ */ jsxs(
555
451
  "button",
556
452
  {
557
453
  type: "button",
558
454
  onClick: () => onClick(provider),
559
- className: cn(
560
- "flex w-full h-9 px-3 py-2",
561
- "flex-row justify-center items-center gap-3",
562
- "rounded-md border border-[#E4E4E7] bg-white",
563
- "shadow-[0_1px_2px_0_rgba(0,0,0,0.10)]",
564
- "text-[#09090B] text-center text-sm font-medium leading-5",
565
- "cursor-pointer transition-all duration-200",
566
- "hover:bg-[#f9fafb] hover:border-[#9ca3af]",
567
- "disabled:opacity-60 disabled:cursor-not-allowed",
568
- displayMode === "full" && "justify-center",
569
- displayMode === "short" && "justify-center px-2 gap-2",
570
- displayMode === "icon" && "justify-center gap-0",
571
- className
572
- ),
455
+ className,
573
456
  disabled: disabled || loading,
574
457
  style,
575
458
  children: [
576
- loading ? /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Loader2, { className: "w-[18px] h-[18px] animate-spin", size: 18 }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: "flex items-center justify-center shrink-0", children: config.svg }),
577
- getButtonText() && /* @__PURE__ */ jsxRuntime.jsx("span", { children: getButtonText() })
459
+ loading ? /* @__PURE__ */ jsx(Loader2, { className: "if-oauthButton-icon if-submitButton-spinner", size: 18 }) : /* @__PURE__ */ jsx("span", { className: "if-oauthButton-icon", children: config.svg }),
460
+ getButtonText() && /* @__PURE__ */ jsx("span", { children: getButtonText() })
578
461
  ]
579
462
  }
580
463
  );
@@ -583,16 +466,19 @@ function AuthOAuthProviders({
583
466
  providers,
584
467
  onClick,
585
468
  disabled,
586
- loading,
587
- appearance = {}
469
+ loading
588
470
  }) {
589
471
  if (!providers || providers.length === 0) {
590
472
  return null;
591
473
  }
592
474
  const count = providers.length;
593
475
  const getDisplayMode = () => {
594
- if (count === 1) return "full";
595
- if (count === 2 || count === 4) return "short";
476
+ if (count === 1) {
477
+ return "full";
478
+ }
479
+ if (count === 2 || count === 4) {
480
+ return "short";
481
+ }
596
482
  return "icon";
597
483
  };
598
484
  const getGridColumnStyle = (index) => {
@@ -628,22 +514,30 @@ function AuthOAuthProviders({
628
514
  return { gridColumn: "span 2 / span 2" };
629
515
  }
630
516
  };
631
- return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn(
632
- "grid gap-3 w-full grid-cols-6",
633
- appearance.containerClassName
634
- ), children: providers.map((provider, index) => /* @__PURE__ */ jsxRuntime.jsx(
635
- AuthOAuthButton,
517
+ return /* @__PURE__ */ jsx(
518
+ "div",
636
519
  {
637
- provider,
638
- onClick,
639
- disabled,
640
- loading: loading === provider,
641
- displayMode: getDisplayMode(),
642
- style: getGridColumnStyle(index),
643
- className: appearance.buttonClassName
644
- },
645
- provider
646
- )) });
520
+ className: "if-oauthProviders if-internal-op3m8k",
521
+ style: {
522
+ display: "grid",
523
+ gridTemplateColumns: "repeat(6, 1fr)",
524
+ gap: "0.75rem",
525
+ width: "100%"
526
+ },
527
+ children: providers.map((provider, index) => /* @__PURE__ */ jsx(
528
+ AuthOAuthButton,
529
+ {
530
+ provider,
531
+ onClick,
532
+ disabled,
533
+ loading: loading === provider,
534
+ displayMode: getDisplayMode(),
535
+ style: getGridColumnStyle(index)
536
+ },
537
+ provider
538
+ ))
539
+ }
540
+ );
647
541
  }
648
542
  function AuthVerificationCodeInput({
649
543
  length = 6,
@@ -651,13 +545,16 @@ function AuthVerificationCodeInput({
651
545
  email,
652
546
  onChange,
653
547
  disabled = false,
654
- onComplete,
655
- appearance = {}
548
+ onComplete
656
549
  }) {
657
- const inputRefs = react.useRef([]);
550
+ const inputRefs = useRef([]);
658
551
  const handleChange = (index, digit) => {
659
- if (digit.length > 1) return;
660
- if (digit && !/^\d$/.test(digit)) return;
552
+ if (digit.length > 1) {
553
+ return;
554
+ }
555
+ if (digit && !/^\d$/.test(digit)) {
556
+ return;
557
+ }
661
558
  const newValue = value.split("");
662
559
  newValue[index] = digit;
663
560
  const updatedValue = newValue.join("");
@@ -693,17 +590,14 @@ function AuthVerificationCodeInput({
693
590
  }
694
591
  }
695
592
  };
696
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn(
697
- "flex flex-col justify-center items-center gap-6",
698
- appearance.containerClassName
699
- ), children: [
700
- /* @__PURE__ */ jsxRuntime.jsxs("p", { className: "text-sm font-normal text-[#525252] leading-5", children: [
593
+ return /* @__PURE__ */ jsxs("div", { className: "if-verificationCode if-internal-vc8m4p", children: [
594
+ /* @__PURE__ */ jsxs("p", { className: "if-verificationCode-description", children: [
701
595
  "We've sent a verification code to your inbox at",
702
596
  " ",
703
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-semibold text-black leading-5", children: email }),
597
+ /* @__PURE__ */ jsx("span", { className: "if-verificationCode-email", children: email }),
704
598
  ". Enter it below to proceed."
705
599
  ] }),
706
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-row gap-3 justify-center items-center", children: Array.from({ length }).map((_, index) => /* @__PURE__ */ jsxRuntime.jsx(
600
+ /* @__PURE__ */ jsx("div", { className: "if-verificationCode-inputContainer", children: Array.from({ length }).map((_, index) => /* @__PURE__ */ jsx(
707
601
  "input",
708
602
  {
709
603
  ref: (el) => {
@@ -717,25 +611,16 @@ function AuthVerificationCodeInput({
717
611
  onKeyDown: (e) => handleKeyDown(index, e),
718
612
  onPaste: handlePaste,
719
613
  disabled,
720
- className: cn(
721
- "w-full h-12 px-3 py-2 rounded border border-[#E0E0E0] bg-white",
722
- "text-center text-base font-semibold leading-5 text-black",
723
- "transition-all duration-200 outline-none",
724
- "focus:border-black focus:shadow-[0_0_0_2px_rgba(0,0,0,0.1)]",
725
- "disabled:bg-[#F5F5F5] disabled:cursor-not-allowed disabled:opacity-60",
726
- appearance.inputClassName
727
- ),
614
+ className: "if-verificationCode-input",
728
615
  autoComplete: "one-time-code"
729
616
  },
730
617
  index
731
618
  )) })
732
619
  ] });
733
620
  }
734
- var InsforgeContext = react.createContext(
735
- void 0
736
- );
621
+ var InsforgeContext = createContext(void 0);
737
622
  function useInsforge() {
738
- const context = react.useContext(InsforgeContext);
623
+ const context = useContext(InsforgeContext);
739
624
  if (!context) {
740
625
  throw new Error("useInsforge must be used within InsforgeProvider");
741
626
  }
@@ -748,15 +633,15 @@ function AuthEmailVerificationStep({
748
633
  onVerifyCode
749
634
  }) {
750
635
  const { baseUrl } = useInsforge();
751
- const [insforge] = react.useState(() => sdk.createClient({ baseUrl }));
752
- const [resendDisabled, setResendDisabled] = react.useState(true);
753
- const [resendCountdown, setResendCountdown] = react.useState(60);
754
- const [isSending, setIsSending] = react.useState(false);
755
- const [verificationCode, setVerificationCode] = react.useState("");
756
- const [isVerifying, setIsVerifying] = react.useState(false);
757
- const [verificationError, setVerificationError] = react.useState("");
636
+ const [insforge] = useState(() => createClient({ baseUrl }));
637
+ const [resendDisabled, setResendDisabled] = useState(true);
638
+ const [resendCountdown, setResendCountdown] = useState(60);
639
+ const [isSending, setIsSending] = useState(false);
640
+ const [verificationCode, setVerificationCode] = useState("");
641
+ const [isVerifying, setIsVerifying] = useState(false);
642
+ const [verificationError, setVerificationError] = useState("");
758
643
  const defaultDescription = method === "code" ? "We've sent a 6-digit verification code to {email}. Please enter it below to verify your account. The code will expire in 10 minutes." : "We've sent a verification link to {email}. Please check your email and click the link to verify your account. The link will expire in 10 minutes.";
759
- react.useEffect(() => {
644
+ useEffect(() => {
760
645
  const sendInitialEmail = async () => {
761
646
  try {
762
647
  await insforge.auth.sendVerificationEmail({ email });
@@ -765,7 +650,7 @@ function AuthEmailVerificationStep({
765
650
  };
766
651
  void sendInitialEmail();
767
652
  }, [email, method, insforge.auth]);
768
- react.useEffect(() => {
653
+ useEffect(() => {
769
654
  if (resendCountdown > 0) {
770
655
  const timer = setInterval(() => {
771
656
  setResendCountdown((prev) => {
@@ -811,45 +696,105 @@ function AuthEmailVerificationStep({
811
696
  }
812
697
  };
813
698
  const displayDescription = description || defaultDescription;
814
- return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-6 items-stretch", children: [
815
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-neutral-600 dark:text-neutral-400 leading-relaxed", children: displayDescription.split("{email}").map((part, index, array) => /* @__PURE__ */ jsxRuntime.jsxs("span", { children: [
699
+ return /* @__PURE__ */ jsxs("div", { style: { display: "flex", flexDirection: "column", gap: "1.5rem", alignItems: "stretch" }, children: [
700
+ /* @__PURE__ */ jsx("p", { className: "if-verificationCode-description", children: displayDescription.split("{email}").map((part, index, array) => /* @__PURE__ */ jsxs("span", { children: [
816
701
  part,
817
- index < array.length - 1 && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-medium text-black dark:text-white", children: email })
702
+ index < array.length - 1 && /* @__PURE__ */ jsx("span", { className: "if-verificationCode-email", children: email })
818
703
  ] }, index)) }),
819
- verificationError && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pl-3 py-2 pr-2 bg-red-50 border-2 border-red-600 rounded", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
820
- /* @__PURE__ */ jsxRuntime.jsx("svg", { className: "w-6 h-6 text-red-500 shrink-0", fill: "none", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2", viewBox: "0 0 24 24", stroke: "currentColor", children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z" }) }),
821
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-red-600 flex-1", children: verificationError })
822
- ] }) }),
823
- method === "code" && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "w-full bg-neutral-100 dark:bg-neutral-800 rounded-lg px-4 pt-4 pb-6 flex flex-col gap-4", children: [
824
- /* @__PURE__ */ jsxRuntime.jsx(
825
- AuthVerificationCodeInput,
704
+ verificationError && /* @__PURE__ */ jsx("div", { className: "if-errorBanner if-internal-eb2m7k", children: /* @__PURE__ */ jsxs("div", { style: { display: "flex", alignItems: "center", gap: "0.5rem" }, children: [
705
+ /* @__PURE__ */ jsx(
706
+ "svg",
826
707
  {
827
- value: verificationCode,
828
- onChange: setVerificationCode,
829
- email,
830
- disabled: isVerifying,
831
- onComplete: (code) => {
832
- void handleVerifyCode(code);
833
- }
708
+ style: { width: "1.5rem", height: "1.5rem", flexShrink: 0, color: "#DC2626" },
709
+ fill: "none",
710
+ strokeLinecap: "round",
711
+ strokeLinejoin: "round",
712
+ strokeWidth: "2",
713
+ viewBox: "0 0 24 24",
714
+ stroke: "currentColor",
715
+ children: /* @__PURE__ */ jsx("path", { d: "M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z" })
834
716
  }
835
717
  ),
836
- isVerifying && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-neutral-600 dark:text-neutral-400 text-center", children: "Verifying..." })
837
- ] }),
838
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "w-full text-sm text-center text-neutral-600 dark:text-neutral-400", children: [
839
- "Didn't receive the email?",
840
- " ",
841
- /* @__PURE__ */ jsxRuntime.jsx(
842
- "button",
843
- {
844
- onClick: () => {
845
- void handleResend();
846
- },
847
- disabled: resendDisabled || isSending,
848
- className: "text-black dark:text-white font-medium transition-colors disabled:cursor-not-allowed cursor-pointer hover:underline disabled:no-underline disabled:opacity-50",
849
- children: isSending ? "Sending..." : resendDisabled ? `Retry in (${resendCountdown}s)` : "Click to resend"
850
- }
851
- )
852
- ] })
718
+ /* @__PURE__ */ jsx("p", { className: "if-errorBanner-text", children: verificationError })
719
+ ] }) }),
720
+ method === "code" && /* @__PURE__ */ jsxs(
721
+ "div",
722
+ {
723
+ style: {
724
+ width: "100%",
725
+ backgroundColor: "#F5F5F5",
726
+ borderRadius: "0.5rem",
727
+ padding: "1rem 1rem 1.5rem",
728
+ display: "flex",
729
+ flexDirection: "column",
730
+ gap: "1rem"
731
+ },
732
+ children: [
733
+ /* @__PURE__ */ jsx(
734
+ AuthVerificationCodeInput,
735
+ {
736
+ value: verificationCode,
737
+ onChange: setVerificationCode,
738
+ email,
739
+ disabled: isVerifying,
740
+ onComplete: (code) => {
741
+ void handleVerifyCode(code);
742
+ }
743
+ }
744
+ ),
745
+ isVerifying && /* @__PURE__ */ jsx(
746
+ "p",
747
+ {
748
+ style: {
749
+ fontSize: "0.875rem",
750
+ color: "#828282",
751
+ textAlign: "center",
752
+ fontFamily: "var(--if-font-family)"
753
+ },
754
+ children: "Verifying..."
755
+ }
756
+ )
757
+ ]
758
+ }
759
+ ),
760
+ /* @__PURE__ */ jsxs(
761
+ "div",
762
+ {
763
+ style: {
764
+ width: "100%",
765
+ fontSize: "0.875rem",
766
+ textAlign: "center",
767
+ color: "#828282",
768
+ fontFamily: "var(--if-font-family)"
769
+ },
770
+ children: [
771
+ "Didn't receive the email?",
772
+ " ",
773
+ /* @__PURE__ */ jsx(
774
+ "button",
775
+ {
776
+ onClick: () => {
777
+ void handleResend();
778
+ },
779
+ disabled: resendDisabled || isSending,
780
+ style: {
781
+ color: "#000",
782
+ fontWeight: 500,
783
+ transition: "all 0.2s",
784
+ cursor: resendDisabled || isSending ? "not-allowed" : "pointer",
785
+ background: "none",
786
+ border: "none",
787
+ padding: 0,
788
+ textDecoration: resendDisabled || isSending ? "none" : "underline",
789
+ opacity: resendDisabled || isSending ? 0.5 : 1,
790
+ fontFamily: "var(--if-font-family)"
791
+ },
792
+ children: isSending ? "Sending..." : resendDisabled ? `Retry in (${resendCountdown}s)` : "Click to resend"
793
+ }
794
+ )
795
+ ]
796
+ }
797
+ )
853
798
  ] });
854
799
  }
855
800
  function SignInForm({
@@ -864,7 +809,6 @@ function SignInForm({
864
809
  availableProviders = [],
865
810
  onOAuthClick,
866
811
  authConfig,
867
- appearance = {},
868
812
  title = "Welcome Back",
869
813
  subtitle = "Login to your account",
870
814
  emailLabel = "Email",
@@ -879,143 +823,75 @@ function SignInForm({
879
823
  signUpLinkText = "Sign Up Now",
880
824
  signUpUrl = "/sign-up",
881
825
  dividerText = "or",
882
- // Email verification step props
883
826
  showVerificationStep = false,
884
827
  onVerifyCode,
885
828
  verificationDescription
886
829
  }) {
887
- return /* @__PURE__ */ jsxRuntime.jsxs(
888
- AuthContainer,
889
- {
890
- appearance: {
891
- containerClassName: appearance.container,
892
- cardClassName: appearance.card
893
- },
894
- children: [
895
- /* @__PURE__ */ jsxRuntime.jsx(
896
- AuthHeader,
897
- {
898
- title: showVerificationStep ? "Verify Your Email" : title,
899
- subtitle: showVerificationStep ? "" : subtitle,
900
- appearance: {
901
- containerClassName: appearance.header?.container,
902
- titleClassName: appearance.header?.title,
903
- subtitleClassName: appearance.header?.subtitle
904
- }
905
- }
906
- ),
907
- /* @__PURE__ */ jsxRuntime.jsx(
908
- AuthErrorBanner,
909
- {
910
- error: error || "",
911
- className: appearance.errorBanner
912
- }
913
- ),
914
- showVerificationStep ? /* @__PURE__ */ jsxRuntime.jsx(
915
- AuthEmailVerificationStep,
916
- {
917
- email,
918
- description: verificationDescription,
919
- onVerifyCode
920
- }
921
- ) : /* @__PURE__ */ jsxRuntime.jsxs(
922
- "form",
830
+ return /* @__PURE__ */ jsxs(AuthContainer, { children: [
831
+ /* @__PURE__ */ jsx(
832
+ AuthHeader,
833
+ {
834
+ title: showVerificationStep ? "Verify Your Email" : title,
835
+ subtitle: showVerificationStep ? "" : subtitle
836
+ }
837
+ ),
838
+ /* @__PURE__ */ jsx(AuthErrorBanner, { error: error || "" }),
839
+ showVerificationStep ? /* @__PURE__ */ jsx(
840
+ AuthEmailVerificationStep,
841
+ {
842
+ email,
843
+ description: verificationDescription,
844
+ onVerifyCode
845
+ }
846
+ ) : /* @__PURE__ */ jsxs("form", { onSubmit, noValidate: true, className: "if-form if-internal-fm9k2p", children: [
847
+ /* @__PURE__ */ jsx(
848
+ AuthFormField,
849
+ {
850
+ id: "email",
851
+ type: "email",
852
+ label: emailLabel,
853
+ placeholder: emailPlaceholder,
854
+ value: email,
855
+ onChange: (e) => onEmailChange(e.target.value),
856
+ required: true,
857
+ autoComplete: "email"
858
+ }
859
+ ),
860
+ /* @__PURE__ */ jsx(
861
+ AuthPasswordField,
862
+ {
863
+ id: "password",
864
+ label: passwordLabel,
865
+ placeholder: passwordPlaceholder,
866
+ value: password,
867
+ onChange: (e) => onPasswordChange(e.target.value),
868
+ required: true,
869
+ autoComplete: "current-password",
870
+ authConfig,
871
+ forgotPasswordLink: forgotPasswordUrl ? {
872
+ href: forgotPasswordUrl,
873
+ text: forgotPasswordText
874
+ } : void 0
875
+ }
876
+ ),
877
+ /* @__PURE__ */ jsx(AuthSubmitButton, { isLoading: loading, disabled: loading || oauthLoading !== null, children: loading ? loadingButtonText : submitButtonText })
878
+ ] }),
879
+ !showVerificationStep && /* @__PURE__ */ jsxs(Fragment, { children: [
880
+ /* @__PURE__ */ jsx(AuthLink, { text: signUpText, linkText: signUpLinkText, href: signUpUrl }),
881
+ availableProviders.length > 0 && onOAuthClick && /* @__PURE__ */ jsxs(Fragment, { children: [
882
+ /* @__PURE__ */ jsx(AuthDivider, { text: dividerText }),
883
+ /* @__PURE__ */ jsx(
884
+ AuthOAuthProviders,
923
885
  {
924
- onSubmit,
925
- noValidate: true,
926
- className: appearance.form?.container || "flex flex-col items-stretch justify-center gap-6",
927
- children: [
928
- /* @__PURE__ */ jsxRuntime.jsx(
929
- AuthFormField,
930
- {
931
- id: "email",
932
- type: "email",
933
- label: emailLabel,
934
- placeholder: emailPlaceholder,
935
- value: email,
936
- onChange: (e) => onEmailChange(e.target.value),
937
- required: true,
938
- autoComplete: "email",
939
- appearance: {
940
- containerClassName: appearance.form?.emailField?.container,
941
- labelClassName: appearance.form?.emailField?.label,
942
- inputClassName: appearance.form?.emailField?.input
943
- }
944
- }
945
- ),
946
- /* @__PURE__ */ jsxRuntime.jsx(
947
- AuthPasswordField,
948
- {
949
- id: "password",
950
- label: passwordLabel,
951
- placeholder: passwordPlaceholder,
952
- value: password,
953
- onChange: (e) => onPasswordChange(e.target.value),
954
- required: true,
955
- autoComplete: "current-password",
956
- authConfig,
957
- forgotPasswordLink: forgotPasswordUrl ? {
958
- href: forgotPasswordUrl,
959
- text: forgotPasswordText
960
- } : void 0,
961
- appearance: {
962
- containerClassName: appearance.form?.passwordField?.container,
963
- labelClassName: appearance.form?.passwordField?.label,
964
- inputClassName: appearance.form?.passwordField?.input
965
- }
966
- }
967
- ),
968
- /* @__PURE__ */ jsxRuntime.jsx(
969
- AuthSubmitButton,
970
- {
971
- isLoading: loading,
972
- disabled: loading || oauthLoading !== null,
973
- className: appearance.button,
974
- children: loading ? loadingButtonText : submitButtonText
975
- }
976
- )
977
- ]
886
+ providers: availableProviders,
887
+ onClick: onOAuthClick,
888
+ disabled: loading || oauthLoading !== null,
889
+ loading: oauthLoading
978
890
  }
979
- ),
980
- !showVerificationStep && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
981
- /* @__PURE__ */ jsxRuntime.jsx(
982
- AuthLink,
983
- {
984
- text: signUpText,
985
- linkText: signUpLinkText,
986
- href: signUpUrl,
987
- appearance: {
988
- containerClassName: appearance.link?.container,
989
- linkClassName: appearance.link?.link
990
- }
991
- }
992
- ),
993
- availableProviders.length > 0 && onOAuthClick && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
994
- /* @__PURE__ */ jsxRuntime.jsx(
995
- AuthDivider,
996
- {
997
- text: dividerText,
998
- className: appearance.divider
999
- }
1000
- ),
1001
- /* @__PURE__ */ jsxRuntime.jsx(
1002
- AuthOAuthProviders,
1003
- {
1004
- providers: availableProviders,
1005
- onClick: onOAuthClick,
1006
- disabled: loading || oauthLoading !== null,
1007
- loading: oauthLoading,
1008
- appearance: {
1009
- containerClassName: appearance.oauth?.container,
1010
- buttonClassName: appearance.oauth?.button
1011
- }
1012
- }
1013
- )
1014
- ] })
1015
- ] })
1016
- ]
1017
- }
1018
- );
891
+ )
892
+ ] })
893
+ ] })
894
+ ] });
1019
895
  }
1020
896
  function SignUpForm({
1021
897
  email,
@@ -1029,7 +905,6 @@ function SignUpForm({
1029
905
  availableProviders = [],
1030
906
  onOAuthClick,
1031
907
  authConfig,
1032
- appearance = {},
1033
908
  title = "Get Started",
1034
909
  subtitle = "Create your account",
1035
910
  emailLabel = "Email",
@@ -1042,141 +917,73 @@ function SignUpForm({
1042
917
  signInLinkText = "Login Now",
1043
918
  signInUrl = "/sign-in",
1044
919
  dividerText = "or",
1045
- // Email verification step props
1046
920
  showVerificationStep = false,
1047
921
  onVerifyCode,
1048
922
  verificationDescription
1049
923
  }) {
1050
- return /* @__PURE__ */ jsxRuntime.jsxs(
1051
- AuthContainer,
1052
- {
1053
- appearance: {
1054
- containerClassName: appearance.container,
1055
- cardClassName: appearance.card
1056
- },
1057
- children: [
1058
- /* @__PURE__ */ jsxRuntime.jsx(
1059
- AuthHeader,
1060
- {
1061
- title: showVerificationStep ? "Verify Your Email" : title,
1062
- subtitle: showVerificationStep ? "" : subtitle,
1063
- appearance: {
1064
- containerClassName: appearance.header?.container,
1065
- titleClassName: appearance.header?.title,
1066
- subtitleClassName: appearance.header?.subtitle
1067
- }
1068
- }
1069
- ),
1070
- /* @__PURE__ */ jsxRuntime.jsx(
1071
- AuthErrorBanner,
1072
- {
1073
- error: error || "",
1074
- className: appearance.errorBanner
1075
- }
1076
- ),
1077
- showVerificationStep ? /* @__PURE__ */ jsxRuntime.jsx(
1078
- AuthEmailVerificationStep,
1079
- {
1080
- email,
1081
- description: verificationDescription,
1082
- onVerifyCode
1083
- }
1084
- ) : /* @__PURE__ */ jsxRuntime.jsxs(
1085
- "form",
924
+ return /* @__PURE__ */ jsxs(AuthContainer, { children: [
925
+ /* @__PURE__ */ jsx(
926
+ AuthHeader,
927
+ {
928
+ title: showVerificationStep ? "Verify Your Email" : title,
929
+ subtitle: showVerificationStep ? "" : subtitle
930
+ }
931
+ ),
932
+ /* @__PURE__ */ jsx(AuthErrorBanner, { error: error || "" }),
933
+ showVerificationStep ? /* @__PURE__ */ jsx(
934
+ AuthEmailVerificationStep,
935
+ {
936
+ email,
937
+ description: verificationDescription,
938
+ onVerifyCode
939
+ }
940
+ ) : /* @__PURE__ */ jsxs("form", { onSubmit, noValidate: true, className: "if-form if-internal-fm9k2p", children: [
941
+ /* @__PURE__ */ jsx(
942
+ AuthFormField,
943
+ {
944
+ id: "email",
945
+ type: "email",
946
+ label: emailLabel,
947
+ placeholder: emailPlaceholder,
948
+ value: email,
949
+ onChange: (e) => onEmailChange(e.target.value),
950
+ required: true,
951
+ autoComplete: "email"
952
+ }
953
+ ),
954
+ /* @__PURE__ */ jsx(
955
+ AuthPasswordField,
956
+ {
957
+ id: "password",
958
+ label: passwordLabel,
959
+ placeholder: passwordPlaceholder,
960
+ value: password,
961
+ onChange: (e) => onPasswordChange(e.target.value),
962
+ required: true,
963
+ minLength: authConfig.passwordMinLength,
964
+ autoComplete: "new-password",
965
+ showStrengthIndicator: true,
966
+ authConfig
967
+ }
968
+ ),
969
+ /* @__PURE__ */ jsx(AuthSubmitButton, { isLoading: loading, disabled: loading || oauthLoading !== null, children: loading ? loadingButtonText : submitButtonText })
970
+ ] }),
971
+ !showVerificationStep && /* @__PURE__ */ jsxs(Fragment, { children: [
972
+ /* @__PURE__ */ jsx(AuthLink, { text: signInText, linkText: signInLinkText, href: signInUrl }),
973
+ availableProviders.length > 0 && onOAuthClick && /* @__PURE__ */ jsxs(Fragment, { children: [
974
+ /* @__PURE__ */ jsx(AuthDivider, { text: dividerText }),
975
+ /* @__PURE__ */ jsx(
976
+ AuthOAuthProviders,
1086
977
  {
1087
- onSubmit,
1088
- noValidate: true,
1089
- className: appearance.form?.container || "flex flex-col items-stretch justify-center gap-6",
1090
- children: [
1091
- /* @__PURE__ */ jsxRuntime.jsx(
1092
- AuthFormField,
1093
- {
1094
- id: "email",
1095
- type: "email",
1096
- label: emailLabel,
1097
- placeholder: emailPlaceholder,
1098
- value: email,
1099
- onChange: (e) => onEmailChange(e.target.value),
1100
- required: true,
1101
- autoComplete: "email",
1102
- appearance: {
1103
- containerClassName: appearance.form?.emailField?.container,
1104
- labelClassName: appearance.form?.emailField?.label,
1105
- inputClassName: appearance.form?.emailField?.input
1106
- }
1107
- }
1108
- ),
1109
- /* @__PURE__ */ jsxRuntime.jsx(
1110
- AuthPasswordField,
1111
- {
1112
- id: "password",
1113
- label: passwordLabel,
1114
- placeholder: passwordPlaceholder,
1115
- value: password,
1116
- onChange: (e) => onPasswordChange(e.target.value),
1117
- required: true,
1118
- minLength: authConfig.passwordMinLength,
1119
- autoComplete: "new-password",
1120
- showStrengthIndicator: true,
1121
- authConfig,
1122
- appearance: {
1123
- containerClassName: appearance.form?.passwordField?.container,
1124
- labelClassName: appearance.form?.passwordField?.label,
1125
- inputClassName: appearance.form?.passwordField?.input
1126
- }
1127
- }
1128
- ),
1129
- /* @__PURE__ */ jsxRuntime.jsx(
1130
- AuthSubmitButton,
1131
- {
1132
- isLoading: loading,
1133
- disabled: loading || oauthLoading !== null,
1134
- className: appearance.button,
1135
- children: loading ? loadingButtonText : submitButtonText
1136
- }
1137
- )
1138
- ]
978
+ providers: availableProviders,
979
+ onClick: onOAuthClick,
980
+ disabled: loading || oauthLoading !== null,
981
+ loading: oauthLoading
1139
982
  }
1140
- ),
1141
- !showVerificationStep && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1142
- /* @__PURE__ */ jsxRuntime.jsx(
1143
- AuthLink,
1144
- {
1145
- text: signInText,
1146
- linkText: signInLinkText,
1147
- href: signInUrl,
1148
- appearance: {
1149
- containerClassName: appearance.link?.container,
1150
- linkClassName: appearance.link?.link
1151
- }
1152
- }
1153
- ),
1154
- availableProviders.length > 0 && onOAuthClick && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1155
- /* @__PURE__ */ jsxRuntime.jsx(
1156
- AuthDivider,
1157
- {
1158
- text: dividerText,
1159
- className: appearance.divider
1160
- }
1161
- ),
1162
- /* @__PURE__ */ jsxRuntime.jsx(
1163
- AuthOAuthProviders,
1164
- {
1165
- providers: availableProviders,
1166
- onClick: onOAuthClick,
1167
- disabled: loading || oauthLoading !== null,
1168
- loading: oauthLoading,
1169
- appearance: {
1170
- containerClassName: appearance.oauth?.container,
1171
- buttonClassName: appearance.oauth?.button
1172
- }
1173
- }
1174
- )
1175
- ] })
1176
- ] })
1177
- ]
1178
- }
1179
- );
983
+ )
984
+ ] })
985
+ ] })
986
+ ] });
1180
987
  }
1181
988
  function ForgotPasswordForm({
1182
989
  email,
@@ -1185,7 +992,6 @@ function ForgotPasswordForm({
1185
992
  error,
1186
993
  loading = false,
1187
994
  success = false,
1188
- appearance = {},
1189
995
  title = "Forgot Password?",
1190
996
  subtitle = "Enter your email address and we'll send you a code to reset your password.",
1191
997
  emailLabel = "Email",
@@ -1198,101 +1004,66 @@ function ForgotPasswordForm({
1198
1004
  successMessage
1199
1005
  }) {
1200
1006
  if (success) {
1201
- return /* @__PURE__ */ jsxRuntime.jsx(
1202
- AuthContainer,
1007
+ return /* @__PURE__ */ jsx(AuthContainer, { children: /* @__PURE__ */ jsxs(
1008
+ "div",
1203
1009
  {
1204
- appearance: {
1205
- containerClassName: appearance.container,
1206
- cardClassName: appearance.card
1207
- },
1208
- children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-center gap-4", children: [
1209
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-16 h-16 rounded-full bg-green-100 dark:bg-green-900 flex items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx("svg", { className: "w-8 h-8 text-green-600 dark:text-green-400", fill: "none", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2", viewBox: "0 0 24 24", stroke: "currentColor", children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M5 13l4 4L19 7" }) }) }),
1210
- /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "text-2xl font-semibold text-black dark:text-white text-center", children: successTitle }),
1211
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-neutral-600 dark:text-neutral-400 text-center", children: successMessage || `We've sent a password reset link to ${email}. Please check your email and follow the instructions.` }),
1212
- /* @__PURE__ */ jsxRuntime.jsx("a", { href: backToSignInUrl, className: "mt-4 text-black dark:text-white font-medium", children: "Back to Sign In" })
1213
- ] })
1214
- }
1215
- );
1216
- }
1217
- return /* @__PURE__ */ jsxRuntime.jsxs(
1218
- AuthContainer,
1219
- {
1220
- appearance: {
1221
- containerClassName: appearance.container,
1222
- cardClassName: appearance.card
1223
- },
1224
- children: [
1225
- /* @__PURE__ */ jsxRuntime.jsx(
1226
- AuthHeader,
1227
- {
1228
- title,
1229
- subtitle,
1230
- appearance: {
1231
- containerClassName: appearance.header?.container,
1232
- titleClassName: appearance.header?.title,
1233
- subtitleClassName: appearance.header?.subtitle
1234
- }
1235
- }
1236
- ),
1237
- /* @__PURE__ */ jsxRuntime.jsx(
1238
- AuthErrorBanner,
1239
- {
1240
- error: error || "",
1241
- className: appearance.errorBanner
1242
- }
1243
- ),
1244
- /* @__PURE__ */ jsxRuntime.jsxs(
1245
- "form",
1246
- {
1247
- onSubmit,
1248
- noValidate: true,
1249
- className: appearance.form?.container || "flex flex-col items-stretch justify-center gap-6",
1250
- children: [
1251
- /* @__PURE__ */ jsxRuntime.jsx(
1252
- AuthFormField,
1253
- {
1254
- id: "email",
1255
- type: "email",
1256
- label: emailLabel,
1257
- placeholder: emailPlaceholder,
1258
- value: email,
1259
- onChange: (e) => onEmailChange(e.target.value),
1260
- required: true,
1261
- autoComplete: "email",
1262
- appearance: {
1263
- containerClassName: appearance.form?.emailField?.container,
1264
- labelClassName: appearance.form?.emailField?.label,
1265
- inputClassName: appearance.form?.emailField?.input
1266
- }
1267
- }
1268
- ),
1269
- /* @__PURE__ */ jsxRuntime.jsx(
1270
- AuthSubmitButton,
1010
+ style: { display: "flex", flexDirection: "column", alignItems: "center", gap: "1rem" },
1011
+ children: [
1012
+ /* @__PURE__ */ jsx(
1013
+ "div",
1014
+ {
1015
+ style: {
1016
+ width: "4rem",
1017
+ height: "4rem",
1018
+ borderRadius: "50%",
1019
+ backgroundColor: "#D1FAE5",
1020
+ display: "flex",
1021
+ alignItems: "center",
1022
+ justifyContent: "center"
1023
+ },
1024
+ children: /* @__PURE__ */ jsx(
1025
+ "svg",
1271
1026
  {
1272
- isLoading: loading,
1273
- disabled: loading,
1274
- className: appearance.button,
1275
- children: loading ? loadingButtonText : submitButtonText
1027
+ style: { width: "2rem", height: "2rem", color: "#059669" },
1028
+ fill: "none",
1029
+ strokeLinecap: "round",
1030
+ strokeLinejoin: "round",
1031
+ strokeWidth: "2",
1032
+ viewBox: "0 0 24 24",
1033
+ stroke: "currentColor",
1034
+ children: /* @__PURE__ */ jsx("path", { d: "M5 13l4 4L19 7" })
1276
1035
  }
1277
1036
  )
1278
- ]
1279
- }
1280
- ),
1281
- /* @__PURE__ */ jsxRuntime.jsx(
1282
- AuthLink,
1283
- {
1284
- text: backToSignInText,
1285
- linkText: "Back to Sign In",
1286
- href: backToSignInUrl,
1287
- appearance: {
1288
- containerClassName: appearance.link?.container,
1289
- linkClassName: appearance.link?.link
1290
1037
  }
1291
- }
1292
- )
1293
- ]
1294
- }
1295
- );
1038
+ ),
1039
+ /* @__PURE__ */ jsx("h2", { className: "if-authHeader-title", style: { textAlign: "center" }, children: successTitle }),
1040
+ /* @__PURE__ */ jsx("p", { className: "if-authHeader-subtitle", style: { textAlign: "center" }, children: successMessage || `We've sent a password reset link to ${email}. Please check your email and follow the instructions.` }),
1041
+ /* @__PURE__ */ jsx("a", { href: backToSignInUrl, className: "if-authLink-link", style: { marginTop: "1rem" }, children: "Back to Sign In" })
1042
+ ]
1043
+ }
1044
+ ) });
1045
+ }
1046
+ return /* @__PURE__ */ jsxs(AuthContainer, { children: [
1047
+ /* @__PURE__ */ jsx(AuthHeader, { title, subtitle }),
1048
+ /* @__PURE__ */ jsx(AuthErrorBanner, { error: error || "" }),
1049
+ /* @__PURE__ */ jsxs("form", { onSubmit, noValidate: true, className: "if-form if-internal-fm9k2p", children: [
1050
+ /* @__PURE__ */ jsx(
1051
+ AuthFormField,
1052
+ {
1053
+ id: "email",
1054
+ type: "email",
1055
+ label: emailLabel,
1056
+ placeholder: emailPlaceholder,
1057
+ value: email,
1058
+ onChange: (e) => onEmailChange(e.target.value),
1059
+ required: true,
1060
+ autoComplete: "email"
1061
+ }
1062
+ ),
1063
+ /* @__PURE__ */ jsx(AuthSubmitButton, { isLoading: loading, disabled: loading, children: loading ? loadingButtonText : submitButtonText })
1064
+ ] }),
1065
+ /* @__PURE__ */ jsx(AuthLink, { text: backToSignInText, linkText: "Back to Sign In", href: backToSignInUrl })
1066
+ ] });
1296
1067
  }
1297
1068
  function ResetPasswordForm({
1298
1069
  newPassword,
@@ -1304,7 +1075,6 @@ function ResetPasswordForm({
1304
1075
  loading = false,
1305
1076
  success = false,
1306
1077
  authConfig,
1307
- appearance = {},
1308
1078
  title = "Reset Password",
1309
1079
  subtitle = "Enter your new password below.",
1310
1080
  newPasswordLabel = "New Password",
@@ -1319,156 +1089,193 @@ function ResetPasswordForm({
1319
1089
  successMessage = "Your password has been successfully reset. You can now sign in with your new password."
1320
1090
  }) {
1321
1091
  if (success) {
1322
- return /* @__PURE__ */ jsxRuntime.jsx(
1323
- AuthContainer,
1092
+ return /* @__PURE__ */ jsx(AuthContainer, { children: /* @__PURE__ */ jsxs(
1093
+ "div",
1324
1094
  {
1325
- appearance: {
1326
- containerClassName: appearance.container,
1327
- cardClassName: appearance.card
1328
- },
1329
- children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-center gap-4", children: [
1330
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-16 h-16 rounded-full bg-green-100 dark:bg-green-900 flex items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx("svg", { className: "w-8 h-8 text-green-600 dark:text-green-400", fill: "none", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2", viewBox: "0 0 24 24", stroke: "currentColor", children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M5 13l4 4L19 7" }) }) }),
1331
- /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "text-2xl font-semibold text-black dark:text-white text-center", children: successTitle }),
1332
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-neutral-600 dark:text-neutral-400 text-center", children: successMessage }),
1333
- /* @__PURE__ */ jsxRuntime.jsx("a", { href: backToSignInUrl, className: "mt-4 text-black dark:text-white font-medium", children: "Back to Sign In" })
1334
- ] })
1335
- }
1336
- );
1337
- }
1338
- return /* @__PURE__ */ jsxRuntime.jsxs(
1339
- AuthContainer,
1340
- {
1341
- appearance: {
1342
- containerClassName: appearance.container,
1343
- cardClassName: appearance.card
1344
- },
1345
- children: [
1346
- /* @__PURE__ */ jsxRuntime.jsx(
1347
- AuthHeader,
1348
- {
1349
- title,
1350
- subtitle,
1351
- appearance: {
1352
- containerClassName: appearance.header?.container,
1353
- titleClassName: appearance.header?.title,
1354
- subtitleClassName: appearance.header?.subtitle
1355
- }
1356
- }
1357
- ),
1358
- /* @__PURE__ */ jsxRuntime.jsx(
1359
- AuthErrorBanner,
1360
- {
1361
- error: error || "",
1362
- className: appearance.errorBanner
1363
- }
1364
- ),
1365
- /* @__PURE__ */ jsxRuntime.jsxs(
1366
- "form",
1367
- {
1368
- onSubmit,
1369
- noValidate: true,
1370
- className: appearance.form?.container || "flex flex-col items-stretch justify-center gap-6",
1371
- children: [
1372
- /* @__PURE__ */ jsxRuntime.jsx(
1373
- AuthPasswordField,
1374
- {
1375
- id: "newPassword",
1376
- label: newPasswordLabel,
1377
- placeholder: newPasswordPlaceholder,
1378
- value: newPassword,
1379
- onChange: (e) => onNewPasswordChange(e.target.value),
1380
- required: true,
1381
- autoComplete: "new-password",
1382
- showStrengthIndicator: true,
1383
- authConfig,
1384
- appearance: {
1385
- containerClassName: appearance.form?.newPasswordField?.container,
1386
- labelClassName: appearance.form?.newPasswordField?.label,
1387
- inputClassName: appearance.form?.newPasswordField?.input
1388
- }
1389
- }
1390
- ),
1391
- /* @__PURE__ */ jsxRuntime.jsx(
1392
- AuthPasswordField,
1393
- {
1394
- id: "confirmPassword",
1395
- label: confirmPasswordLabel,
1396
- placeholder: confirmPasswordPlaceholder,
1397
- value: confirmPassword,
1398
- onChange: (e) => onConfirmPasswordChange(e.target.value),
1399
- required: true,
1400
- autoComplete: "new-password",
1401
- authConfig,
1402
- appearance: {
1403
- containerClassName: appearance.form?.confirmPasswordField?.container,
1404
- labelClassName: appearance.form?.confirmPasswordField?.label,
1405
- inputClassName: appearance.form?.confirmPasswordField?.input
1406
- }
1407
- }
1408
- ),
1409
- /* @__PURE__ */ jsxRuntime.jsx(
1410
- AuthSubmitButton,
1095
+ style: { display: "flex", flexDirection: "column", alignItems: "center", gap: "1rem" },
1096
+ children: [
1097
+ /* @__PURE__ */ jsx(
1098
+ "div",
1099
+ {
1100
+ style: {
1101
+ width: "4rem",
1102
+ height: "4rem",
1103
+ borderRadius: "50%",
1104
+ backgroundColor: "#D1FAE5",
1105
+ display: "flex",
1106
+ alignItems: "center",
1107
+ justifyContent: "center"
1108
+ },
1109
+ children: /* @__PURE__ */ jsx(
1110
+ "svg",
1411
1111
  {
1412
- isLoading: loading,
1413
- disabled: loading,
1414
- className: appearance.button,
1415
- children: loading ? loadingButtonText : submitButtonText
1112
+ style: { width: "2rem", height: "2rem", color: "#059669" },
1113
+ fill: "none",
1114
+ strokeLinecap: "round",
1115
+ strokeLinejoin: "round",
1116
+ strokeWidth: "2",
1117
+ viewBox: "0 0 24 24",
1118
+ stroke: "currentColor",
1119
+ children: /* @__PURE__ */ jsx("path", { d: "M5 13l4 4L19 7" })
1416
1120
  }
1417
1121
  )
1418
- ]
1419
- }
1420
- ),
1421
- /* @__PURE__ */ jsxRuntime.jsx(
1422
- AuthLink,
1423
- {
1424
- text: backToSignInText,
1425
- linkText: "Back to Sign In",
1426
- href: backToSignInUrl,
1427
- appearance: {
1428
- containerClassName: appearance.link?.container,
1429
- linkClassName: appearance.link?.link
1430
1122
  }
1431
- }
1432
- )
1433
- ]
1434
- }
1435
- );
1123
+ ),
1124
+ /* @__PURE__ */ jsx("h2", { className: "if-authHeader-title", style: { textAlign: "center" }, children: successTitle }),
1125
+ /* @__PURE__ */ jsx("p", { className: "if-authHeader-subtitle", style: { textAlign: "center" }, children: successMessage }),
1126
+ /* @__PURE__ */ jsx("a", { href: backToSignInUrl, className: "if-authLink-link", style: { marginTop: "1rem" }, children: "Back to Sign In" })
1127
+ ]
1128
+ }
1129
+ ) });
1130
+ }
1131
+ return /* @__PURE__ */ jsxs(AuthContainer, { children: [
1132
+ /* @__PURE__ */ jsx(AuthHeader, { title, subtitle }),
1133
+ /* @__PURE__ */ jsx(AuthErrorBanner, { error: error || "" }),
1134
+ /* @__PURE__ */ jsxs("form", { onSubmit, noValidate: true, className: "if-form if-internal-fm9k2p", children: [
1135
+ /* @__PURE__ */ jsx(
1136
+ AuthPasswordField,
1137
+ {
1138
+ id: "newPassword",
1139
+ label: newPasswordLabel,
1140
+ placeholder: newPasswordPlaceholder,
1141
+ value: newPassword,
1142
+ onChange: (e) => onNewPasswordChange(e.target.value),
1143
+ required: true,
1144
+ autoComplete: "new-password",
1145
+ showStrengthIndicator: true,
1146
+ authConfig
1147
+ }
1148
+ ),
1149
+ /* @__PURE__ */ jsx(
1150
+ AuthPasswordField,
1151
+ {
1152
+ id: "confirmPassword",
1153
+ label: confirmPasswordLabel,
1154
+ placeholder: confirmPasswordPlaceholder,
1155
+ value: confirmPassword,
1156
+ onChange: (e) => onConfirmPasswordChange(e.target.value),
1157
+ required: true,
1158
+ autoComplete: "new-password",
1159
+ authConfig
1160
+ }
1161
+ ),
1162
+ /* @__PURE__ */ jsx(AuthSubmitButton, { isLoading: loading, disabled: loading, children: loading ? loadingButtonText : submitButtonText })
1163
+ ] }),
1164
+ /* @__PURE__ */ jsx(AuthLink, { text: backToSignInText, linkText: "Back to Sign In", href: backToSignInUrl })
1165
+ ] });
1436
1166
  }
1437
1167
  function VerifyEmailStatus({
1438
1168
  status,
1439
1169
  error,
1440
- appearance = {},
1441
1170
  verifyingTitle = "Verifying your email...",
1442
1171
  successTitle = "Email Verified!",
1443
1172
  successMessage = "Your email has been verified successfully. You can close this page and return to your app.",
1444
1173
  errorTitle = "Verification Failed"
1445
1174
  }) {
1446
1175
  if (status === "verifying") {
1447
- return /* @__PURE__ */ jsxRuntime.jsx(AuthContainer, { appearance, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "w-full flex flex-col items-center justify-center gap-6", children: [
1448
- /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "text-2xl font-semibold text-black dark:text-white", children: verifyingTitle }),
1449
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "animate-spin rounded-full h-12 w-12 border-b-2 border-black dark:border-white" })
1450
- ] }) });
1176
+ return /* @__PURE__ */ jsx(AuthContainer, { children: /* @__PURE__ */ jsxs(
1177
+ "div",
1178
+ {
1179
+ style: {
1180
+ width: "100%",
1181
+ display: "flex",
1182
+ flexDirection: "column",
1183
+ alignItems: "center",
1184
+ justifyContent: "center",
1185
+ gap: "1.5rem"
1186
+ },
1187
+ children: [
1188
+ /* @__PURE__ */ jsx("h2", { className: "if-authHeader-title", children: verifyingTitle }),
1189
+ /* @__PURE__ */ jsx(
1190
+ "div",
1191
+ {
1192
+ className: "if-submitButton-spinner",
1193
+ style: {
1194
+ borderRadius: "50%",
1195
+ height: "3rem",
1196
+ width: "3rem",
1197
+ borderBottom: "2px solid black"
1198
+ }
1199
+ }
1200
+ )
1201
+ ]
1202
+ }
1203
+ ) });
1451
1204
  }
1452
1205
  if (status === "error") {
1453
- return /* @__PURE__ */ jsxRuntime.jsx(AuthContainer, { appearance, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-full flex flex-col items-stretch justify-center gap-6", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-start justify-center gap-2", children: [
1454
- /* @__PURE__ */ jsxRuntime.jsx("h1", { className: "text-2xl font-semibold text-black dark:text-white", children: errorTitle }),
1455
- /* @__PURE__ */ jsxRuntime.jsxs("p", { className: "text-sm text-neutral-600 dark:text-neutral-400 leading-relaxed", children: [
1456
- error || "The verification link is invalid or has expired.",
1457
- " Please try again or contact support if the problem persists. You can close this page and return to your app."
1458
- ] })
1459
- ] }) }) });
1206
+ return /* @__PURE__ */ jsx(AuthContainer, { children: /* @__PURE__ */ jsx(
1207
+ "div",
1208
+ {
1209
+ style: {
1210
+ width: "100%",
1211
+ display: "flex",
1212
+ flexDirection: "column",
1213
+ alignItems: "stretch",
1214
+ justifyContent: "center",
1215
+ gap: "1.5rem"
1216
+ },
1217
+ children: /* @__PURE__ */ jsxs("div", { className: "if-authHeader if-internal-h3m7w5", children: [
1218
+ /* @__PURE__ */ jsx("h1", { className: "if-authHeader-title if-internal-t4p1k9", children: errorTitle }),
1219
+ /* @__PURE__ */ jsxs("p", { className: "if-authHeader-subtitle if-internal-s7q2m3", style: { lineHeight: "1.5" }, children: [
1220
+ error || "The verification link is invalid or has expired.",
1221
+ " Please try again or contact support if the problem persists. You can close this page and return to your app."
1222
+ ] })
1223
+ ] })
1224
+ }
1225
+ ) });
1460
1226
  }
1461
- return /* @__PURE__ */ jsxRuntime.jsx(AuthContainer, { appearance, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-full flex flex-col items-stretch justify-center gap-6", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col items-center gap-4", children: [
1462
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-16 h-16 rounded-full bg-green-100 dark:bg-green-900 flex items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx("svg", { className: "w-8 h-8 text-green-600 dark:text-green-400", fill: "none", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2", viewBox: "0 0 24 24", stroke: "currentColor", children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M5 13l4 4L19 7" }) }) }),
1463
- /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "text-2xl font-semibold text-black dark:text-white text-center", children: successTitle }),
1464
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-neutral-600 dark:text-neutral-400 text-center", children: successMessage })
1465
- ] }) }) });
1227
+ return /* @__PURE__ */ jsx(AuthContainer, { children: /* @__PURE__ */ jsx(
1228
+ "div",
1229
+ {
1230
+ style: {
1231
+ width: "100%",
1232
+ display: "flex",
1233
+ flexDirection: "column",
1234
+ alignItems: "stretch",
1235
+ justifyContent: "center",
1236
+ gap: "1.5rem"
1237
+ },
1238
+ children: /* @__PURE__ */ jsxs(
1239
+ "div",
1240
+ {
1241
+ style: { display: "flex", flexDirection: "column", alignItems: "center", gap: "1rem" },
1242
+ children: [
1243
+ /* @__PURE__ */ jsx(
1244
+ "div",
1245
+ {
1246
+ style: {
1247
+ width: "4rem",
1248
+ height: "4rem",
1249
+ borderRadius: "50%",
1250
+ backgroundColor: "#D1FAE5",
1251
+ display: "flex",
1252
+ alignItems: "center",
1253
+ justifyContent: "center"
1254
+ },
1255
+ children: /* @__PURE__ */ jsx(
1256
+ "svg",
1257
+ {
1258
+ style: { width: "2rem", height: "2rem", color: "#059669" },
1259
+ fill: "none",
1260
+ strokeLinecap: "round",
1261
+ strokeLinejoin: "round",
1262
+ strokeWidth: "2",
1263
+ viewBox: "0 0 24 24",
1264
+ stroke: "currentColor",
1265
+ children: /* @__PURE__ */ jsx("path", { d: "M5 13l4 4L19 7" })
1266
+ }
1267
+ )
1268
+ }
1269
+ ),
1270
+ /* @__PURE__ */ jsx("h2", { className: "if-authHeader-title", style: { textAlign: "center" }, children: successTitle }),
1271
+ /* @__PURE__ */ jsx("p", { className: "if-authHeader-subtitle", style: { textAlign: "center" }, children: successMessage })
1272
+ ]
1273
+ }
1274
+ )
1275
+ }
1276
+ ) });
1466
1277
  }
1467
1278
 
1468
- exports.ForgotPasswordForm = ForgotPasswordForm;
1469
- exports.ResetPasswordForm = ResetPasswordForm;
1470
- exports.SignInForm = SignInForm;
1471
- exports.SignUpForm = SignUpForm;
1472
- exports.VerifyEmailStatus = VerifyEmailStatus;
1279
+ export { ForgotPasswordForm, ResetPasswordForm, SignInForm, SignUpForm, VerifyEmailStatus };
1473
1280
  //# sourceMappingURL=forms.js.map
1474
1281
  //# sourceMappingURL=forms.js.map