@tomny-dev/uzi 0.2.6 → 0.2.7

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.
@@ -0,0 +1,24 @@
1
+ import * as React from "react";
2
+ export interface AuthCardProps {
3
+ /** Title displayed at the top of the card. */
4
+ title: React.ReactNode;
5
+ /** Subtitle displayed below the title. */
6
+ subtitle?: React.ReactNode;
7
+ /** Primary form content rendered in the card body. */
8
+ children: React.ReactNode;
9
+ /** Footer links rendered below the divider (e.g., "No account? Sign up"). */
10
+ footer?: React.ReactNode;
11
+ /** Optional brand/logo element rendered above the title. */
12
+ brand?: React.ReactNode;
13
+ /** Additional class name for the outer wrapper. */
14
+ className?: string;
15
+ }
16
+ /**
17
+ * AuthCard — a centered card layout for auth pages.
18
+ *
19
+ * - Centered vertically and horizontally on screen
20
+ * - Brand → title → subtitle → form → divider → footer
21
+ * - No auth logic — just the visual template
22
+ */
23
+ export declare const AuthCard: React.ForwardRefExoticComponent<AuthCardProps & React.RefAttributes<HTMLDivElement>>;
24
+ //# sourceMappingURL=AuthCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthCard.d.ts","sourceRoot":"","sources":["../../../src/components/auth-card/AuthCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,MAAM,WAAW,aAAa;IAC5B,8CAA8C;IAC9C,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,sDAAsD;IACtD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,6EAA6E;IAC7E,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,4DAA4D;IAC5D,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,QAAQ,sFAqBpB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=AuthCard.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthCard.test.d.ts","sourceRoot":"","sources":["../../../src/components/auth-card/AuthCard.test.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,58 @@
1
+ import * as React from "react";
2
+ interface BaseAuthPageProps {
3
+ /** Page title */
4
+ title: string;
5
+ /** Page subtitle */
6
+ subtitle?: string;
7
+ /** Footer content (e.g., "No account? Sign up") */
8
+ footer?: React.ReactNode;
9
+ /** Called with form data on valid submit */
10
+ onSubmit?: (data: Record<string, string | boolean>) => void;
11
+ /** Loading state for the submit button */
12
+ loading?: boolean;
13
+ /** Optional brand/logo element */
14
+ brand?: React.ReactNode;
15
+ /** Extra class for the outer wrapper */
16
+ className?: string;
17
+ }
18
+ export interface SignInPageProps extends BaseAuthPageProps {
19
+ /** Email placeholder (default "Email address") */
20
+ emailPlaceholder?: string;
21
+ /** Password placeholder (default "Password") */
22
+ passwordPlaceholder?: string;
23
+ /** "Remember me" checkbox label */
24
+ rememberLabel?: string;
25
+ /** "Forgot password" link text */
26
+ forgotLinkText?: string;
27
+ /** "Forgot password" link href */
28
+ forgotLinkHref?: string;
29
+ }
30
+ export declare function SignInPage({ title, subtitle, footer, onSubmit, loading, brand, className, emailPlaceholder, passwordPlaceholder, rememberLabel, forgotLinkText, forgotLinkHref, }: SignInPageProps): import("react/jsx-runtime").JSX.Element;
31
+ export interface SignUpPageProps extends BaseAuthPageProps {
32
+ /** Email placeholder */
33
+ emailPlaceholder?: string;
34
+ /** Password placeholder */
35
+ passwordPlaceholder?: string;
36
+ /** Confirm password placeholder */
37
+ confirmPasswordPlaceholder?: string;
38
+ /** Checkbox label (e.g., "I agree to the Terms of Service") */
39
+ checkboxLabel?: string;
40
+ /** Checkbox href */
41
+ checkboxLinkText?: string;
42
+ /** Checkbox href */
43
+ checkboxLinkHref?: string;
44
+ }
45
+ export declare function SignUpPage({ title, subtitle, footer, onSubmit, loading, brand, className, emailPlaceholder, passwordPlaceholder, confirmPasswordPlaceholder, checkboxLabel, checkboxLinkText, checkboxLinkHref, }: SignUpPageProps): import("react/jsx-runtime").JSX.Element;
46
+ export interface ForgotPasswordPageProps extends BaseAuthPageProps {
47
+ /** Email placeholder */
48
+ emailPlaceholder?: string;
49
+ /** Button text */
50
+ buttonText?: string;
51
+ /** Back to sign in link text */
52
+ backLinkText?: string;
53
+ /** Back to sign in link href */
54
+ backLinkHref?: string;
55
+ }
56
+ export declare function ForgotPasswordPage({ title, subtitle, footer, onSubmit, loading, brand, className, emailPlaceholder, buttonText, backLinkText, backLinkHref, }: ForgotPasswordPageProps): import("react/jsx-runtime").JSX.Element;
57
+ export {};
58
+ //# sourceMappingURL=AuthPages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthPages.d.ts","sourceRoot":"","sources":["../../../src/components/auth-pages/AuthPages.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAqH/B,UAAU,iBAAiB;IACzB,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,oBAAoB;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mDAAmD;IACnD,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,IAAI,CAAC;IAC5D,0CAA0C;IAC1C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kCAAkC;IAClC,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAGD,MAAM,WAAW,eAAgB,SAAQ,iBAAiB;IACxD,kDAAkD;IAClD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gDAAgD;IAChD,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mCAAmC;IACnC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kCAAkC;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kCAAkC;IAClC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,UAAU,CAAC,EACzB,KAAiB,EACjB,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,OAAe,EACf,KAAK,EACL,SAAS,EACT,gBAAkC,EAClC,mBAAgC,EAChC,aAA6B,EAC7B,cAAmC,EACnC,cAAc,GACf,EAAE,eAAe,2CAoFjB;AAGD,MAAM,WAAW,eAAgB,SAAQ,iBAAiB;IACxD,wBAAwB;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,2BAA2B;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mCAAmC;IACnC,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,+DAA+D;IAC/D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oBAAoB;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oBAAoB;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,UAAU,CAAC,EACzB,KAA2B,EAC3B,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,OAAe,EACf,KAAK,EACL,SAAS,EACT,gBAAkC,EAClC,mBAAgC,EAChC,0BAA+C,EAC/C,aAAa,EACb,gBAAgB,EAChB,gBAAgB,GACjB,EAAE,eAAe,2CAmHjB;AAGD,MAAM,WAAW,uBAAwB,SAAQ,iBAAiB;IAChE,wBAAwB;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gCAAgC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gCAAgC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,kBAAkB,CAAC,EACjC,KAAwB,EACxB,QAAyD,EACzD,MAAM,EACN,QAAQ,EACR,OAAe,EACf,KAAK,EACL,SAAS,EACT,gBAAkC,EAClC,UAA8B,EAC9B,YAAgC,EAChC,YAAwB,GACzB,EAAE,uBAAuB,2CAsEzB"}
@@ -0,0 +1,2 @@
1
+ import "@testing-library/jest-dom/vitest";
2
+ //# sourceMappingURL=AuthPages.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthPages.test.d.ts","sourceRoot":"","sources":["../../../src/components/auth-pages/AuthPages.test.tsx"],"names":[],"mappings":"AAEA,OAAO,kCAAkC,CAAC"}
package/dist/index.cjs CHANGED
@@ -23,8 +23,11 @@ const require_SidebarNav = require("./index41.cjs");
23
23
  const require_Skeleton = require("./index43.cjs");
24
24
  const require_Progress = require("./index45.cjs");
25
25
  const require_SegmentedToggle = require("./index47.cjs");
26
+ const require_AuthCard = require("./index49.cjs");
27
+ const require_AuthPages = require("./index51.cjs");
26
28
  exports.Alert = require_Alert.Alert;
27
29
  exports.AppShell = require_AppShell.AppShell;
30
+ exports.AuthCard = require_AuthCard.AuthCard;
28
31
  exports.Avatar = require_Avatar.Avatar;
29
32
  exports.AvatarFallback = require_Avatar.AvatarFallback;
30
33
  exports.AvatarImage = require_Avatar.AvatarImage;
@@ -46,6 +49,7 @@ exports.DropdownMenuSub = require_DropdownMenu.DropdownMenuSub;
46
49
  exports.DropdownMenuSubContent = require_DropdownMenu.DropdownMenuSubContent;
47
50
  exports.DropdownMenuSubTrigger = require_DropdownMenu.DropdownMenuSubTrigger;
48
51
  exports.DropdownMenuTrigger = require_DropdownMenu.DropdownMenuTrigger;
52
+ exports.ForgotPasswordPage = require_AuthPages.ForgotPasswordPage;
49
53
  exports.Input = require_Input.Input;
50
54
  exports.Label = require_Label.Label;
51
55
  exports.Modal = require_Modal.Modal;
@@ -56,6 +60,8 @@ exports.Progress = require_Progress.Progress;
56
60
  exports.SegmentedToggle = require_SegmentedToggle.SegmentedToggle;
57
61
  exports.Select = require_Select.Select;
58
62
  exports.SidebarNav = require_SidebarNav.SidebarNav;
63
+ exports.SignInPage = require_AuthPages.SignInPage;
64
+ exports.SignUpPage = require_AuthPages.SignUpPage;
59
65
  exports.Skeleton = require_Skeleton.Skeleton;
60
66
  exports.ThemeProvider = require_ThemeProvider.ThemeProvider;
61
67
  exports.ThemeToggleButton = require_ThemeToggleButton.ThemeToggleButton;
package/dist/index.d.ts CHANGED
@@ -43,4 +43,8 @@ export type { SelectProps, SelectOption } from "./components/select/Select";
43
43
  export { Select } from "./components/select/Select";
44
44
  export type { SegmentedToggleProps, SegmentedToggleOption } from "./components/segmented-toggle/SegmentedToggle";
45
45
  export { SegmentedToggle } from "./components/segmented-toggle/SegmentedToggle";
46
+ export type { AuthCardProps } from "./components/auth-card/AuthCard";
47
+ export { AuthCard } from "./components/auth-card/AuthCard";
48
+ export type { SignInPageProps, SignUpPageProps, ForgotPasswordPageProps, } from "./components/auth-pages/AuthPages";
49
+ export { SignInPage, SignUpPage, ForgotPasswordPage } from "./components/auth-pages/AuthPages";
46
50
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -22,4 +22,6 @@ import { SidebarNav } from "./index40.js";
22
22
  import { Skeleton } from "./index42.js";
23
23
  import { Progress } from "./index44.js";
24
24
  import { SegmentedToggle } from "./index46.js";
25
- export { Alert, AppShell, Avatar, AvatarFallback, AvatarImage, Button, Card, Checkbox, Dropdown, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Input, Label, Modal, ModalOverlay, MultiSelect, Pill, Progress, SegmentedToggle, Select, SidebarNav, Skeleton, ThemeProvider, ThemeToggleButton, ToastProvider, TopBar, cx, useTheme, useToast };
25
+ import { AuthCard } from "./index48.js";
26
+ import { ForgotPasswordPage, SignInPage, SignUpPage } from "./index50.js";
27
+ export { Alert, AppShell, AuthCard, Avatar, AvatarFallback, AvatarImage, Button, Card, Checkbox, Dropdown, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, ForgotPasswordPage, Input, Label, Modal, ModalOverlay, MultiSelect, Pill, Progress, SegmentedToggle, Select, SidebarNav, SignInPage, SignUpPage, Skeleton, ThemeProvider, ThemeToggleButton, ToastProvider, TopBar, cx, useTheme, useToast };
@@ -0,0 +1,25 @@
1
+ //#region src/components/auth-card/auth-card.module.css
2
+ var authLayout = "uzi-auth-card-module__authLayout__GHr1j";
3
+ var authCard = "uzi-auth-card-module__authCard__ZYYit";
4
+ var authBrand = "uzi-auth-card-module__authBrand__ZCDVm";
5
+ var authHeader = "uzi-auth-card-module__authHeader__NB6UQ";
6
+ var authTitle = "uzi-auth-card-module__authTitle__VtHLn";
7
+ var authSubtitle = "uzi-auth-card-module__authSubtitle__ZupId";
8
+ var authBody = "uzi-auth-card-module__authBody__PTyaL";
9
+ var divider = "uzi-auth-card-module__divider__D8r12";
10
+ var authFooter = "uzi-auth-card-module__authFooter__C5s--";
11
+ var auth_card_module_default = {
12
+ authLayout,
13
+ authCard,
14
+ authBrand,
15
+ authHeader,
16
+ authTitle,
17
+ authSubtitle,
18
+ authBody,
19
+ divider,
20
+ authFooter
21
+ };
22
+ //#endregion
23
+ export { authBody, authBrand, authCard, authFooter, authHeader, authLayout, authSubtitle, authTitle, auth_card_module_default as default, divider };
24
+
25
+ //# sourceMappingURL=index47.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index47.js","names":[],"sources":["../src/components/auth-card/auth-card.module.css"],"sourcesContent":[".authLayout {\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 100vh;\n min-height: 100dvh;\n padding: 24px;\n background: var(--background);\n}\n\n.authCard {\n width: 100%;\n max-width: 400px;\n border-radius: var(--ts-card-radius, 12px);\n border: 1px solid var(--ts-card-border, var(--border));\n background: var(--ts-card-bg, var(--card));\n color: var(--ts-card-fg, var(--foreground));\n box-shadow: var(--ts-card-shadow, 0 16px 36px rgba(0, 0, 0, 0.28));\n padding: 20px;\n display: flex;\n flex-direction: column;\n gap: 16px;\n}\n\n.authBrand {\n display: flex;\n justify-content: center;\n margin-bottom: 4px;\n}\n\n.authBrand svg {\n width: 40px;\n height: 40px;\n color: var(--primary);\n}\n\n.authHeader {\n text-align: center;\n}\n\n.authTitle {\n font-size: 1.25rem;\n font-weight: 600;\n line-height: 1.4;\n margin: 0;\n color: var(--foreground);\n}\n\n.authSubtitle {\n font-size: 0.875rem;\n color: var(--muted-foreground);\n margin-top: 4px;\n margin-bottom: 0;\n line-height: 1.4;\n}\n\n.authBody {\n display: flex;\n flex-direction: column;\n gap: 14px;\n}\n\n.divider {\n border: none;\n border-top: 1px solid var(--border);\n margin: 0;\n}\n\n.authFooter {\n text-align: center;\n font-size: 0.875rem;\n color: var(--muted-foreground);\n margin: 0;\n}\n\n.authFooter a {\n color: var(--primary);\n text-decoration: none;\n font-weight: 500;\n}\n\n.authFooter a:hover {\n text-decoration: underline;\n}\n"],"mappings":""}
@@ -0,0 +1,34 @@
1
+ //#region src/components/auth-card/auth-card.module.css
2
+ var authLayout = "uzi-auth-card-module__authLayout__GHr1j";
3
+ var authCard = "uzi-auth-card-module__authCard__ZYYit";
4
+ var authBrand = "uzi-auth-card-module__authBrand__ZCDVm";
5
+ var authHeader = "uzi-auth-card-module__authHeader__NB6UQ";
6
+ var authTitle = "uzi-auth-card-module__authTitle__VtHLn";
7
+ var authSubtitle = "uzi-auth-card-module__authSubtitle__ZupId";
8
+ var authBody = "uzi-auth-card-module__authBody__PTyaL";
9
+ var divider = "uzi-auth-card-module__divider__D8r12";
10
+ var authFooter = "uzi-auth-card-module__authFooter__C5s--";
11
+ var auth_card_module_default = {
12
+ authLayout,
13
+ authCard,
14
+ authBrand,
15
+ authHeader,
16
+ authTitle,
17
+ authSubtitle,
18
+ authBody,
19
+ divider,
20
+ authFooter
21
+ };
22
+ //#endregion
23
+ exports.authBody = authBody;
24
+ exports.authBrand = authBrand;
25
+ exports.authCard = authCard;
26
+ exports.authFooter = authFooter;
27
+ exports.authHeader = authHeader;
28
+ exports.authLayout = authLayout;
29
+ exports.authSubtitle = authSubtitle;
30
+ exports.authTitle = authTitle;
31
+ exports.default = auth_card_module_default;
32
+ exports.divider = divider;
33
+
34
+ //# sourceMappingURL=index48.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index48.cjs","names":[],"sources":["../src/components/auth-card/auth-card.module.css"],"sourcesContent":[".authLayout {\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 100vh;\n min-height: 100dvh;\n padding: 24px;\n background: var(--background);\n}\n\n.authCard {\n width: 100%;\n max-width: 400px;\n border-radius: var(--ts-card-radius, 12px);\n border: 1px solid var(--ts-card-border, var(--border));\n background: var(--ts-card-bg, var(--card));\n color: var(--ts-card-fg, var(--foreground));\n box-shadow: var(--ts-card-shadow, 0 16px 36px rgba(0, 0, 0, 0.28));\n padding: 20px;\n display: flex;\n flex-direction: column;\n gap: 16px;\n}\n\n.authBrand {\n display: flex;\n justify-content: center;\n margin-bottom: 4px;\n}\n\n.authBrand svg {\n width: 40px;\n height: 40px;\n color: var(--primary);\n}\n\n.authHeader {\n text-align: center;\n}\n\n.authTitle {\n font-size: 1.25rem;\n font-weight: 600;\n line-height: 1.4;\n margin: 0;\n color: var(--foreground);\n}\n\n.authSubtitle {\n font-size: 0.875rem;\n color: var(--muted-foreground);\n margin-top: 4px;\n margin-bottom: 0;\n line-height: 1.4;\n}\n\n.authBody {\n display: flex;\n flex-direction: column;\n gap: 14px;\n}\n\n.divider {\n border: none;\n border-top: 1px solid var(--border);\n margin: 0;\n}\n\n.authFooter {\n text-align: center;\n font-size: 0.875rem;\n color: var(--muted-foreground);\n margin: 0;\n}\n\n.authFooter a {\n color: var(--primary);\n text-decoration: none;\n font-weight: 500;\n}\n\n.authFooter a:hover {\n text-decoration: underline;\n}\n"],"mappings":""}
@@ -0,0 +1,50 @@
1
+ import { cx } from "./index3.js";
2
+ import auth_card_module_default from "./index47.js";
3
+ import * as React from "react";
4
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
5
+ //#region src/components/auth-card/AuthCard.tsx
6
+ /**
7
+ * AuthCard — a centered card layout for auth pages.
8
+ *
9
+ * - Centered vertically and horizontally on screen
10
+ * - Brand → title → subtitle → form → divider → footer
11
+ * - No auth logic — just the visual template
12
+ */
13
+ var AuthCard = React.forwardRef(({ title, subtitle, children, footer, brand, className }, ref) => {
14
+ return /* @__PURE__ */ jsx("div", {
15
+ className: cx(auth_card_module_default.authLayout, className),
16
+ ref,
17
+ children: /* @__PURE__ */ jsxs("div", {
18
+ className: auth_card_module_default.authCard,
19
+ children: [
20
+ brand && /* @__PURE__ */ jsx("div", {
21
+ className: auth_card_module_default.authBrand,
22
+ children: brand
23
+ }),
24
+ /* @__PURE__ */ jsxs("div", {
25
+ className: auth_card_module_default.authHeader,
26
+ children: [/* @__PURE__ */ jsx("h1", {
27
+ className: auth_card_module_default.authTitle,
28
+ children: title
29
+ }), subtitle && /* @__PURE__ */ jsx("p", {
30
+ className: auth_card_module_default.authSubtitle,
31
+ children: subtitle
32
+ })]
33
+ }),
34
+ /* @__PURE__ */ jsx("div", {
35
+ className: auth_card_module_default.authBody,
36
+ children
37
+ }),
38
+ footer && /* @__PURE__ */ jsxs(Fragment, { children: [/* @__PURE__ */ jsx("hr", { className: auth_card_module_default.divider }), /* @__PURE__ */ jsx("p", {
39
+ className: auth_card_module_default.authFooter,
40
+ children: footer
41
+ })] })
42
+ ]
43
+ })
44
+ });
45
+ });
46
+ AuthCard.displayName = "AuthCard";
47
+ //#endregion
48
+ export { AuthCard };
49
+
50
+ //# sourceMappingURL=index48.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index48.js","names":[],"sources":["../src/components/auth-card/AuthCard.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { cx } from \"../../utils/cx\";\nimport styles from \"./auth-card.module.css\";\n\nexport interface AuthCardProps {\n /** Title displayed at the top of the card. */\n title: React.ReactNode;\n /** Subtitle displayed below the title. */\n subtitle?: React.ReactNode;\n /** Primary form content rendered in the card body. */\n children: React.ReactNode;\n /** Footer links rendered below the divider (e.g., \"No account? Sign up\"). */\n footer?: React.ReactNode;\n /** Optional brand/logo element rendered above the title. */\n brand?: React.ReactNode;\n /** Additional class name for the outer wrapper. */\n className?: string;\n}\n\n/**\n * AuthCard — a centered card layout for auth pages.\n *\n * - Centered vertically and horizontally on screen\n * - Brand → title → subtitle → form → divider → footer\n * - No auth logic — just the visual template\n */\nexport const AuthCard = React.forwardRef<HTMLDivElement, AuthCardProps>(\n ({ title, subtitle, children, footer, brand, className }, ref) => {\n return (\n <div className={cx(styles.authLayout, className)} ref={ref}>\n <div className={styles.authCard}>\n {brand && <div className={styles.authBrand}>{brand}</div>}\n <div className={styles.authHeader}>\n <h1 className={styles.authTitle}>{title}</h1>\n {subtitle && <p className={styles.authSubtitle}>{subtitle}</p>}\n </div>\n <div className={styles.authBody}>{children}</div>\n {footer && (\n <>\n <hr className={styles.divider} />\n <p className={styles.authFooter}>{footer}</p>\n </>\n )}\n </div>\n </div>\n );\n },\n);\n\nAuthCard.displayName = \"AuthCard\";\n"],"mappings":";;;;;;;;;;;;AA0BA,IAAa,WAAW,MAAM,YAC3B,EAAE,OAAO,UAAU,UAAU,QAAQ,OAAO,aAAa,QAAQ;CAChE,OACE,oBAAC,OAAD;EAAK,WAAW,GAAG,yBAAO,YAAY,SAAS;EAAQ;YACrD,qBAAC,OAAD;GAAK,WAAW,yBAAO;aAAvB;IACG,SAAS,oBAAC,OAAD;KAAK,WAAW,yBAAO;eAAY;IAAW,CAAA;IACxD,qBAAC,OAAD;KAAK,WAAW,yBAAO;eAAvB,CACE,oBAAC,MAAD;MAAI,WAAW,yBAAO;gBAAY;KAAU,CAAA,GAC3C,YAAY,oBAAC,KAAD;MAAG,WAAW,yBAAO;gBAAe;KAAY,CAAA,CAC1D;;IACL,oBAAC,OAAD;KAAK,WAAW,yBAAO;KAAW;IAAc,CAAA;IAC/C,UACC,qBAAA,UAAA,EAAA,UAAA,CACE,oBAAC,MAAD,EAAI,WAAW,yBAAO,QAAU,CAAA,GAChC,oBAAC,KAAD;KAAG,WAAW,yBAAO;eAAa;IAAU,CAAA,CAC5C,EAAA,CAAA;GAED;;CACF,CAAA;AAET,CACF;AAEA,SAAS,cAAc"}
@@ -0,0 +1,52 @@
1
+ const require_runtime = require("./index2.cjs");
2
+ const require_cx = require("./index4.cjs");
3
+ const require_auth_card_module = require("./index48.cjs");
4
+ let react = require("react");
5
+ react = require_runtime.__toESM(react, 1);
6
+ let react_jsx_runtime = require("react/jsx-runtime");
7
+ //#region src/components/auth-card/AuthCard.tsx
8
+ /**
9
+ * AuthCard — a centered card layout for auth pages.
10
+ *
11
+ * - Centered vertically and horizontally on screen
12
+ * - Brand → title → subtitle → form → divider → footer
13
+ * - No auth logic — just the visual template
14
+ */
15
+ var AuthCard = react.forwardRef(({ title, subtitle, children, footer, brand, className }, ref) => {
16
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
17
+ className: require_cx.cx(require_auth_card_module.default.authLayout, className),
18
+ ref,
19
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
20
+ className: require_auth_card_module.default.authCard,
21
+ children: [
22
+ brand && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
23
+ className: require_auth_card_module.default.authBrand,
24
+ children: brand
25
+ }),
26
+ /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
27
+ className: require_auth_card_module.default.authHeader,
28
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("h1", {
29
+ className: require_auth_card_module.default.authTitle,
30
+ children: title
31
+ }), subtitle && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
32
+ className: require_auth_card_module.default.authSubtitle,
33
+ children: subtitle
34
+ })]
35
+ }),
36
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
37
+ className: require_auth_card_module.default.authBody,
38
+ children
39
+ }),
40
+ footer && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("hr", { className: require_auth_card_module.default.divider }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)("p", {
41
+ className: require_auth_card_module.default.authFooter,
42
+ children: footer
43
+ })] })
44
+ ]
45
+ })
46
+ });
47
+ });
48
+ AuthCard.displayName = "AuthCard";
49
+ //#endregion
50
+ exports.AuthCard = AuthCard;
51
+
52
+ //# sourceMappingURL=index49.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index49.cjs","names":[],"sources":["../src/components/auth-card/AuthCard.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { cx } from \"../../utils/cx\";\nimport styles from \"./auth-card.module.css\";\n\nexport interface AuthCardProps {\n /** Title displayed at the top of the card. */\n title: React.ReactNode;\n /** Subtitle displayed below the title. */\n subtitle?: React.ReactNode;\n /** Primary form content rendered in the card body. */\n children: React.ReactNode;\n /** Footer links rendered below the divider (e.g., \"No account? Sign up\"). */\n footer?: React.ReactNode;\n /** Optional brand/logo element rendered above the title. */\n brand?: React.ReactNode;\n /** Additional class name for the outer wrapper. */\n className?: string;\n}\n\n/**\n * AuthCard — a centered card layout for auth pages.\n *\n * - Centered vertically and horizontally on screen\n * - Brand → title → subtitle → form → divider → footer\n * - No auth logic — just the visual template\n */\nexport const AuthCard = React.forwardRef<HTMLDivElement, AuthCardProps>(\n ({ title, subtitle, children, footer, brand, className }, ref) => {\n return (\n <div className={cx(styles.authLayout, className)} ref={ref}>\n <div className={styles.authCard}>\n {brand && <div className={styles.authBrand}>{brand}</div>}\n <div className={styles.authHeader}>\n <h1 className={styles.authTitle}>{title}</h1>\n {subtitle && <p className={styles.authSubtitle}>{subtitle}</p>}\n </div>\n <div className={styles.authBody}>{children}</div>\n {footer && (\n <>\n <hr className={styles.divider} />\n <p className={styles.authFooter}>{footer}</p>\n </>\n )}\n </div>\n </div>\n );\n },\n);\n\nAuthCard.displayName = \"AuthCard\";\n"],"mappings":";;;;;;;;;;;;;;AA0BA,IAAa,WAAW,MAAM,YAC3B,EAAE,OAAO,UAAU,UAAU,QAAQ,OAAO,aAAa,QAAQ;CAChE,OACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;EAAK,WAAW,WAAA,GAAG,yBAAA,QAAO,YAAY,SAAS;EAAQ;YACrD,iBAAA,GAAA,kBAAA,KAAA,CAAC,OAAD;GAAK,WAAW,yBAAA,QAAO;aAAvB;IACG,SAAS,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;KAAK,WAAW,yBAAA,QAAO;eAAY;IAAW,CAAA;IACxD,iBAAA,GAAA,kBAAA,KAAA,CAAC,OAAD;KAAK,WAAW,yBAAA,QAAO;eAAvB,CACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,MAAD;MAAI,WAAW,yBAAA,QAAO;gBAAY;KAAU,CAAA,GAC3C,YAAY,iBAAA,GAAA,kBAAA,IAAA,CAAC,KAAD;MAAG,WAAW,yBAAA,QAAO;gBAAe;KAAY,CAAA,CAC1D;;IACL,iBAAA,GAAA,kBAAA,IAAA,CAAC,OAAD;KAAK,WAAW,yBAAA,QAAO;KAAW;IAAc,CAAA;IAC/C,UACC,iBAAA,GAAA,kBAAA,KAAA,CAAA,kBAAA,UAAA,EAAA,UAAA,CACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,MAAD,EAAI,WAAW,yBAAA,QAAO,QAAU,CAAA,GAChC,iBAAA,GAAA,kBAAA,IAAA,CAAC,KAAD;KAAG,WAAW,yBAAA,QAAO;eAAa;IAAU,CAAA,CAC5C,EAAA,CAAA;GAED;;CACF,CAAA;AAET,CACF;AAEA,SAAS,cAAc"}
@@ -0,0 +1,61 @@
1
+ //#region src/components/auth-pages/auth-pages.module.css
2
+ var authLayout = "uzi-auth-pages-module__authLayout__i-FlB";
3
+ var authCard = "uzi-auth-pages-module__authCard__toOGS";
4
+ var authBrand = "uzi-auth-pages-module__authBrand__7yOdw";
5
+ var authHeader = "uzi-auth-pages-module__authHeader__V-wcl";
6
+ var authTitle = "uzi-auth-pages-module__authTitle__1bgLI";
7
+ var authSubtitle = "uzi-auth-pages-module__authSubtitle__sGXxg";
8
+ var authForm = "uzi-auth-pages-module__authForm__4MucP";
9
+ var field = "uzi-auth-pages-module__field__Ajl6w";
10
+ var label = "uzi-auth-pages-module__label__MdsqJ";
11
+ var input = "uzi-auth-pages-module__input__yijT9";
12
+ var error = "uzi-auth-pages-module__error__7Mhyi";
13
+ var passwordWrapper = "uzi-auth-pages-module__passwordWrapper__P0bez";
14
+ var toggle = "uzi-auth-pages-module__toggle__T7HaZ";
15
+ var eyeIcon = "uzi-auth-pages-module__eyeIcon__ab2Ts";
16
+ var checkboxRow = "uzi-auth-pages-module__checkboxRow__Rq-84";
17
+ var checkboxLabel = "uzi-auth-pages-module__checkboxLabel__poKs-";
18
+ var checkbox = "uzi-auth-pages-module__checkbox__KOQQe";
19
+ var forgotLink = "uzi-auth-pages-module__forgotLink__5q-vL";
20
+ var checkboxLink = "uzi-auth-pages-module__checkboxLink__kAkKg";
21
+ var submitButton = "uzi-auth-pages-module__submitButton__mlGxT";
22
+ var spinner = "uzi-auth-pages-module__spinner__seK4F";
23
+ var spin = "uzi-auth-pages-module__spin__hYpWH";
24
+ var divider = "uzi-auth-pages-module__divider__Debmu";
25
+ var authFooter = "uzi-auth-pages-module__authFooter__SEaGh";
26
+ var sentMessage = "uzi-auth-pages-module__sentMessage__vLBoY";
27
+ var sentText = "uzi-auth-pages-module__sentText__qyJkF";
28
+ var backLink = "uzi-auth-pages-module__backLink__ezB3X";
29
+ var auth_pages_module_default = {
30
+ authLayout,
31
+ authCard,
32
+ authBrand,
33
+ authHeader,
34
+ authTitle,
35
+ authSubtitle,
36
+ authForm,
37
+ field,
38
+ label,
39
+ input,
40
+ error,
41
+ passwordWrapper,
42
+ toggle,
43
+ eyeIcon,
44
+ checkboxRow,
45
+ checkboxLabel,
46
+ checkbox,
47
+ forgotLink,
48
+ checkboxLink,
49
+ submitButton,
50
+ spinner,
51
+ spin,
52
+ divider,
53
+ authFooter,
54
+ sentMessage,
55
+ sentText,
56
+ backLink
57
+ };
58
+ //#endregion
59
+ export { authBrand, authCard, authFooter, authForm, authHeader, authLayout, authSubtitle, authTitle, backLink, checkbox, checkboxLabel, checkboxLink, checkboxRow, auth_pages_module_default as default, divider, error, eyeIcon, field, forgotLink, input, label, passwordWrapper, sentMessage, sentText, spin, spinner, submitButton, toggle };
60
+
61
+ //# sourceMappingURL=index49.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index49.js","names":[],"sources":["../src/components/auth-pages/auth-pages.module.css"],"sourcesContent":["/* ── Layout ── */\n.authLayout {\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 100vh;\n min-height: 100dvh;\n padding: 24px;\n background: var(--background);\n}\n\n.authCard {\n width: 100%;\n max-width: 400px;\n border-radius: var(--ts-card-radius, 12px);\n border: 1px solid var(--ts-card-border, var(--border));\n background: var(--ts-card-bg, var(--card));\n color: var(--ts-card-fg, var(--foreground));\n box-shadow: var(--ts-card-shadow, 0 16px 36px rgba(0, 0, 0, 0.28));\n padding: 20px;\n display: flex;\n flex-direction: column;\n gap: 16px;\n}\n\n.authBrand {\n display: flex;\n justify-content: center;\n margin-bottom: 4px;\n}\n\n.authBrand svg {\n width: 40px;\n height: 40px;\n color: var(--primary);\n}\n\n.authHeader {\n text-align: center;\n}\n\n.authTitle {\n font-size: 1.25rem;\n font-weight: 600;\n line-height: 1.4;\n margin: 0;\n color: var(--foreground);\n}\n\n.authSubtitle {\n font-size: 0.875rem;\n color: var(--muted-foreground);\n margin-top: 4px;\n margin-bottom: 0;\n line-height: 1.4;\n}\n\n/* ── Form ── */\n.authForm {\n display: flex;\n flex-direction: column;\n gap: 14px;\n}\n\n/* ── Field ── */\n.field {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.label {\n font-size: 0.875rem;\n font-weight: 500;\n line-height: 1.2;\n color: var(--foreground);\n}\n\n.input {\n display: flex;\n width: 100%;\n min-height: 2.25rem;\n border-radius: 0.5rem;\n border: 1px solid var(--input);\n background: var(--background);\n color: var(--foreground);\n padding: 0.25rem 0.75rem;\n font-size: 0.875rem;\n line-height: 1.25rem;\n box-shadow: var(--ts-input-shadow, 0 1px 2px rgba(0, 0, 0, 0.04));\n transition: border-color 0.15s ease, background 0.15s ease;\n font-family: inherit;\n}\n\n.input::placeholder {\n color: var(--muted-foreground);\n}\n\n.input:focus-visible {\n outline: var(--focus-ring);\n outline-offset: var(--focus-ring-offset);\n}\n\n.input:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n/* ── Error ── */\n.error {\n font-size: 0.8rem;\n color: var(--destructive);\n margin-top: 2px;\n}\n\n/* ── Password wrapper ── */\n.passwordWrapper {\n position: relative;\n}\n\n.passwordWrapper .input {\n padding-right: 2.5rem;\n}\n\n.toggle {\n position: absolute;\n right: 0.5rem;\n top: 50%;\n transform: translateY(-50%);\n background: none;\n border: none;\n padding: 0.25rem;\n cursor: pointer;\n color: var(--muted-foreground);\n border-radius: 4px;\n transition: color 0.15s, background 0.15s;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.toggle:hover {\n color: var(--foreground);\n background: var(--accent);\n}\n\n.toggle:focus-visible {\n outline: var(--focus-ring);\n outline-offset: var(--focus-ring-offset);\n}\n\n.eyeIcon {\n width: 1.125rem;\n height: 1.125rem;\n}\n\n/* ── Checkbox row ── */\n.checkboxRow {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n flex-wrap: wrap;\n}\n\n.checkboxLabel {\n display: flex;\n align-items: center;\n gap: 8px;\n font-size: 0.875rem;\n color: var(--foreground);\n cursor: pointer;\n}\n\n.checkbox {\n width: 1rem;\n height: 1rem;\n accent-color: var(--primary);\n border-radius: 4px;\n cursor: pointer;\n}\n\n.checkbox:focus-visible {\n outline: var(--focus-ring);\n outline-offset: var(--focus-ring-offset);\n}\n\n.forgotLink {\n font-size: 0.875rem;\n color: var(--primary);\n text-decoration: none;\n font-weight: 500;\n}\n\n.forgotLink:hover {\n text-decoration: underline;\n}\n\n.checkboxLink {\n color: var(--primary);\n text-decoration: none;\n font-weight: 500;\n}\n\n.checkboxLink:hover {\n text-decoration: underline;\n}\n\n/* ── Submit button ── */\n.submitButton {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n font-family: inherit;\n font-weight: 600;\n border-radius: 8px;\n border: 1px solid transparent;\n cursor: pointer;\n text-decoration: none;\n transition: opacity 0.15s, border-color 0.15s, color 0.15s, background 0.15s;\n white-space: nowrap;\n line-height: 1;\n font-size: 0.95rem;\n min-height: 2.25rem;\n padding: 10px 22px;\n background: var(--primary);\n color: var(--primary-foreground);\n}\n\n.submitButton:focus-visible {\n outline: var(--focus-ring);\n outline-offset: var(--focus-ring-offset);\n}\n\n.submitButton:disabled {\n opacity: 0.45;\n cursor: not-allowed;\n}\n\n.submitButton:hover:not(:disabled) {\n opacity: 0.88;\n}\n\n/* ── Spinner ── */\n.spinner {\n width: 1rem;\n height: 1rem;\n border: 2px solid rgba(255, 255, 255, 0.3);\n border-top-color: white;\n border-radius: 50%;\n animation: spin 0.6s linear infinite;\n}\n\n@keyframes spin {\n to { transform: rotate(360deg); }\n}\n\n/* ── Divider ── */\n.divider {\n border: none;\n border-top: 1px solid var(--border);\n margin: 0;\n}\n\n/* ── Footer ── */\n.authFooter {\n text-align: center;\n font-size: 0.875rem;\n color: var(--muted-foreground);\n margin: 0;\n}\n\n.authFooter a {\n color: var(--primary);\n text-decoration: none;\n font-weight: 500;\n}\n\n.authFooter a:hover {\n text-decoration: underline;\n}\n\n/* ── Sent state ── */\n.sentMessage {\n text-align: center;\n display: flex;\n flex-direction: column;\n gap: 12px;\n}\n\n.sentText {\n font-size: 0.875rem;\n color: var(--foreground);\n line-height: 1.5;\n}\n\n.sentText strong {\n font-weight: 600;\n}\n\n.backLink {\n font-size: 0.875rem;\n color: var(--primary);\n text-decoration: none;\n font-weight: 500;\n}\n\n.backLink:hover {\n text-decoration: underline;\n}\n"],"mappings":""}
@@ -0,0 +1,88 @@
1
+ //#region src/components/auth-pages/auth-pages.module.css
2
+ var authLayout = "uzi-auth-pages-module__authLayout__i-FlB";
3
+ var authCard = "uzi-auth-pages-module__authCard__toOGS";
4
+ var authBrand = "uzi-auth-pages-module__authBrand__7yOdw";
5
+ var authHeader = "uzi-auth-pages-module__authHeader__V-wcl";
6
+ var authTitle = "uzi-auth-pages-module__authTitle__1bgLI";
7
+ var authSubtitle = "uzi-auth-pages-module__authSubtitle__sGXxg";
8
+ var authForm = "uzi-auth-pages-module__authForm__4MucP";
9
+ var field = "uzi-auth-pages-module__field__Ajl6w";
10
+ var label = "uzi-auth-pages-module__label__MdsqJ";
11
+ var input = "uzi-auth-pages-module__input__yijT9";
12
+ var error = "uzi-auth-pages-module__error__7Mhyi";
13
+ var passwordWrapper = "uzi-auth-pages-module__passwordWrapper__P0bez";
14
+ var toggle = "uzi-auth-pages-module__toggle__T7HaZ";
15
+ var eyeIcon = "uzi-auth-pages-module__eyeIcon__ab2Ts";
16
+ var checkboxRow = "uzi-auth-pages-module__checkboxRow__Rq-84";
17
+ var checkboxLabel = "uzi-auth-pages-module__checkboxLabel__poKs-";
18
+ var checkbox = "uzi-auth-pages-module__checkbox__KOQQe";
19
+ var forgotLink = "uzi-auth-pages-module__forgotLink__5q-vL";
20
+ var checkboxLink = "uzi-auth-pages-module__checkboxLink__kAkKg";
21
+ var submitButton = "uzi-auth-pages-module__submitButton__mlGxT";
22
+ var spinner = "uzi-auth-pages-module__spinner__seK4F";
23
+ var spin = "uzi-auth-pages-module__spin__hYpWH";
24
+ var divider = "uzi-auth-pages-module__divider__Debmu";
25
+ var authFooter = "uzi-auth-pages-module__authFooter__SEaGh";
26
+ var sentMessage = "uzi-auth-pages-module__sentMessage__vLBoY";
27
+ var sentText = "uzi-auth-pages-module__sentText__qyJkF";
28
+ var backLink = "uzi-auth-pages-module__backLink__ezB3X";
29
+ var auth_pages_module_default = {
30
+ authLayout,
31
+ authCard,
32
+ authBrand,
33
+ authHeader,
34
+ authTitle,
35
+ authSubtitle,
36
+ authForm,
37
+ field,
38
+ label,
39
+ input,
40
+ error,
41
+ passwordWrapper,
42
+ toggle,
43
+ eyeIcon,
44
+ checkboxRow,
45
+ checkboxLabel,
46
+ checkbox,
47
+ forgotLink,
48
+ checkboxLink,
49
+ submitButton,
50
+ spinner,
51
+ spin,
52
+ divider,
53
+ authFooter,
54
+ sentMessage,
55
+ sentText,
56
+ backLink
57
+ };
58
+ //#endregion
59
+ exports.authBrand = authBrand;
60
+ exports.authCard = authCard;
61
+ exports.authFooter = authFooter;
62
+ exports.authForm = authForm;
63
+ exports.authHeader = authHeader;
64
+ exports.authLayout = authLayout;
65
+ exports.authSubtitle = authSubtitle;
66
+ exports.authTitle = authTitle;
67
+ exports.backLink = backLink;
68
+ exports.checkbox = checkbox;
69
+ exports.checkboxLabel = checkboxLabel;
70
+ exports.checkboxLink = checkboxLink;
71
+ exports.checkboxRow = checkboxRow;
72
+ exports.default = auth_pages_module_default;
73
+ exports.divider = divider;
74
+ exports.error = error;
75
+ exports.eyeIcon = eyeIcon;
76
+ exports.field = field;
77
+ exports.forgotLink = forgotLink;
78
+ exports.input = input;
79
+ exports.label = label;
80
+ exports.passwordWrapper = passwordWrapper;
81
+ exports.sentMessage = sentMessage;
82
+ exports.sentText = sentText;
83
+ exports.spin = spin;
84
+ exports.spinner = spinner;
85
+ exports.submitButton = submitButton;
86
+ exports.toggle = toggle;
87
+
88
+ //# sourceMappingURL=index50.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index50.cjs","names":[],"sources":["../src/components/auth-pages/auth-pages.module.css"],"sourcesContent":["/* ── Layout ── */\n.authLayout {\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 100vh;\n min-height: 100dvh;\n padding: 24px;\n background: var(--background);\n}\n\n.authCard {\n width: 100%;\n max-width: 400px;\n border-radius: var(--ts-card-radius, 12px);\n border: 1px solid var(--ts-card-border, var(--border));\n background: var(--ts-card-bg, var(--card));\n color: var(--ts-card-fg, var(--foreground));\n box-shadow: var(--ts-card-shadow, 0 16px 36px rgba(0, 0, 0, 0.28));\n padding: 20px;\n display: flex;\n flex-direction: column;\n gap: 16px;\n}\n\n.authBrand {\n display: flex;\n justify-content: center;\n margin-bottom: 4px;\n}\n\n.authBrand svg {\n width: 40px;\n height: 40px;\n color: var(--primary);\n}\n\n.authHeader {\n text-align: center;\n}\n\n.authTitle {\n font-size: 1.25rem;\n font-weight: 600;\n line-height: 1.4;\n margin: 0;\n color: var(--foreground);\n}\n\n.authSubtitle {\n font-size: 0.875rem;\n color: var(--muted-foreground);\n margin-top: 4px;\n margin-bottom: 0;\n line-height: 1.4;\n}\n\n/* ── Form ── */\n.authForm {\n display: flex;\n flex-direction: column;\n gap: 14px;\n}\n\n/* ── Field ── */\n.field {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.label {\n font-size: 0.875rem;\n font-weight: 500;\n line-height: 1.2;\n color: var(--foreground);\n}\n\n.input {\n display: flex;\n width: 100%;\n min-height: 2.25rem;\n border-radius: 0.5rem;\n border: 1px solid var(--input);\n background: var(--background);\n color: var(--foreground);\n padding: 0.25rem 0.75rem;\n font-size: 0.875rem;\n line-height: 1.25rem;\n box-shadow: var(--ts-input-shadow, 0 1px 2px rgba(0, 0, 0, 0.04));\n transition: border-color 0.15s ease, background 0.15s ease;\n font-family: inherit;\n}\n\n.input::placeholder {\n color: var(--muted-foreground);\n}\n\n.input:focus-visible {\n outline: var(--focus-ring);\n outline-offset: var(--focus-ring-offset);\n}\n\n.input:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n/* ── Error ── */\n.error {\n font-size: 0.8rem;\n color: var(--destructive);\n margin-top: 2px;\n}\n\n/* ── Password wrapper ── */\n.passwordWrapper {\n position: relative;\n}\n\n.passwordWrapper .input {\n padding-right: 2.5rem;\n}\n\n.toggle {\n position: absolute;\n right: 0.5rem;\n top: 50%;\n transform: translateY(-50%);\n background: none;\n border: none;\n padding: 0.25rem;\n cursor: pointer;\n color: var(--muted-foreground);\n border-radius: 4px;\n transition: color 0.15s, background 0.15s;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.toggle:hover {\n color: var(--foreground);\n background: var(--accent);\n}\n\n.toggle:focus-visible {\n outline: var(--focus-ring);\n outline-offset: var(--focus-ring-offset);\n}\n\n.eyeIcon {\n width: 1.125rem;\n height: 1.125rem;\n}\n\n/* ── Checkbox row ── */\n.checkboxRow {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 8px;\n flex-wrap: wrap;\n}\n\n.checkboxLabel {\n display: flex;\n align-items: center;\n gap: 8px;\n font-size: 0.875rem;\n color: var(--foreground);\n cursor: pointer;\n}\n\n.checkbox {\n width: 1rem;\n height: 1rem;\n accent-color: var(--primary);\n border-radius: 4px;\n cursor: pointer;\n}\n\n.checkbox:focus-visible {\n outline: var(--focus-ring);\n outline-offset: var(--focus-ring-offset);\n}\n\n.forgotLink {\n font-size: 0.875rem;\n color: var(--primary);\n text-decoration: none;\n font-weight: 500;\n}\n\n.forgotLink:hover {\n text-decoration: underline;\n}\n\n.checkboxLink {\n color: var(--primary);\n text-decoration: none;\n font-weight: 500;\n}\n\n.checkboxLink:hover {\n text-decoration: underline;\n}\n\n/* ── Submit button ── */\n.submitButton {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n gap: 8px;\n font-family: inherit;\n font-weight: 600;\n border-radius: 8px;\n border: 1px solid transparent;\n cursor: pointer;\n text-decoration: none;\n transition: opacity 0.15s, border-color 0.15s, color 0.15s, background 0.15s;\n white-space: nowrap;\n line-height: 1;\n font-size: 0.95rem;\n min-height: 2.25rem;\n padding: 10px 22px;\n background: var(--primary);\n color: var(--primary-foreground);\n}\n\n.submitButton:focus-visible {\n outline: var(--focus-ring);\n outline-offset: var(--focus-ring-offset);\n}\n\n.submitButton:disabled {\n opacity: 0.45;\n cursor: not-allowed;\n}\n\n.submitButton:hover:not(:disabled) {\n opacity: 0.88;\n}\n\n/* ── Spinner ── */\n.spinner {\n width: 1rem;\n height: 1rem;\n border: 2px solid rgba(255, 255, 255, 0.3);\n border-top-color: white;\n border-radius: 50%;\n animation: spin 0.6s linear infinite;\n}\n\n@keyframes spin {\n to { transform: rotate(360deg); }\n}\n\n/* ── Divider ── */\n.divider {\n border: none;\n border-top: 1px solid var(--border);\n margin: 0;\n}\n\n/* ── Footer ── */\n.authFooter {\n text-align: center;\n font-size: 0.875rem;\n color: var(--muted-foreground);\n margin: 0;\n}\n\n.authFooter a {\n color: var(--primary);\n text-decoration: none;\n font-weight: 500;\n}\n\n.authFooter a:hover {\n text-decoration: underline;\n}\n\n/* ── Sent state ── */\n.sentMessage {\n text-align: center;\n display: flex;\n flex-direction: column;\n gap: 12px;\n}\n\n.sentText {\n font-size: 0.875rem;\n color: var(--foreground);\n line-height: 1.5;\n}\n\n.sentText strong {\n font-weight: 600;\n}\n\n.backLink {\n font-size: 0.875rem;\n color: var(--primary);\n text-decoration: none;\n font-weight: 500;\n}\n\n.backLink:hover {\n text-decoration: underline;\n}\n"],"mappings":""}