@tanglemedia/svelte-starter-auth-shadcn 0.0.2 → 0.1.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.
- package/dist/app.css +174 -0
- package/dist/app.html +0 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/lib/components/types.d.ts +13 -0
- package/dist/lib/components/types.js +1 -0
- package/dist/lib/components/ui/auth-layout/auth-layout-content-top.svelte +15 -0
- package/dist/lib/components/ui/auth-layout/auth-layout-content-top.svelte.d.ts +8 -0
- package/dist/lib/components/ui/auth-layout/auth-layout-content.svelte +15 -0
- package/dist/lib/components/ui/auth-layout/auth-layout-content.svelte.d.ts +8 -0
- package/dist/lib/components/ui/auth-layout/auth-layout-feature-info.svelte +45 -0
- package/dist/lib/components/ui/auth-layout/auth-layout-feature-info.svelte.d.ts +12 -0
- package/dist/lib/components/ui/auth-layout/auth-layout-feature.svelte +24 -0
- package/dist/lib/components/ui/auth-layout/auth-layout-feature.svelte.d.ts +8 -0
- package/dist/lib/components/ui/auth-layout/auth-layout-logo.svelte +99 -0
- package/dist/lib/components/ui/auth-layout/auth-layout-logo.svelte.d.ts +63 -0
- package/dist/lib/components/ui/auth-layout/auth-layout-main.svelte +17 -0
- package/dist/lib/components/ui/auth-layout/auth-layout-main.svelte.d.ts +8 -0
- package/dist/lib/components/ui/auth-layout/auth-layout.svelte +22 -82
- package/dist/lib/components/ui/auth-layout/auth-layout.svelte.d.ts +4 -11
- package/dist/lib/components/ui/auth-layout/index.d.ts +8 -2
- package/dist/lib/components/ui/auth-layout/index.js +10 -2
- package/dist/lib/components/ui/forgot-password/forgot-password-container.svelte +27 -0
- package/dist/lib/components/ui/forgot-password/forgot-password-container.svelte.d.ts +8 -0
- package/dist/lib/components/ui/forgot-password/forgot-password-form.svelte +70 -81
- package/dist/lib/components/ui/forgot-password/forgot-password-form.svelte.d.ts +12 -7
- package/dist/lib/components/ui/forgot-password/forgot-password-header.svelte +34 -0
- package/dist/lib/components/ui/forgot-password/forgot-password-header.svelte.d.ts +13 -0
- package/dist/lib/components/ui/forgot-password/forgot-password-login.svelte +19 -0
- package/dist/lib/components/ui/forgot-password/forgot-password-login.svelte.d.ts +9 -0
- package/dist/lib/components/ui/forgot-password/forgot-password-provider.svelte +13 -0
- package/dist/lib/components/ui/forgot-password/forgot-password-provider.svelte.d.ts +25 -0
- package/dist/lib/components/ui/forgot-password/forgot-password-submit.svelte +17 -0
- package/dist/lib/components/ui/forgot-password/forgot-password-submit.svelte.d.ts +7 -0
- package/dist/lib/components/ui/forgot-password/forgot-password-user-input.svelte +21 -0
- package/dist/lib/components/ui/forgot-password/forgot-password-user-input.svelte.d.ts +26 -0
- package/dist/lib/components/ui/forgot-password/forgot-password.schema.d.ts +5 -0
- package/dist/lib/components/ui/forgot-password/forgot-password.schema.js +4 -0
- package/dist/lib/components/ui/forgot-password/index.d.ts +9 -2
- package/dist/lib/components/ui/forgot-password/index.js +9 -2
- package/dist/lib/components/ui/index.d.ts +5 -0
- package/dist/lib/components/ui/index.js +6 -0
- package/dist/lib/components/ui/login-form/index.d.ts +11 -2
- package/dist/lib/components/ui/login-form/index.js +13 -2
- package/dist/lib/components/ui/login-form/login-container.svelte +27 -0
- package/dist/lib/components/ui/login-form/login-container.svelte.d.ts +8 -0
- package/dist/lib/components/ui/login-form/login-context.d.ts +2 -0
- package/dist/lib/components/ui/login-form/login-context.js +13 -0
- package/dist/lib/components/ui/login-form/login-forgot-password.svelte +19 -0
- package/dist/lib/components/ui/login-form/login-forgot-password.svelte.d.ts +9 -0
- package/dist/lib/components/ui/login-form/login-form.svelte +68 -111
- package/dist/lib/components/ui/login-form/login-form.svelte.d.ts +10 -7
- package/dist/lib/components/ui/login-form/login-header.svelte +34 -0
- package/dist/lib/components/ui/login-form/login-header.svelte.d.ts +13 -0
- package/dist/lib/components/ui/login-form/login-password-input.svelte +21 -0
- package/dist/lib/components/ui/login-form/login-password-input.svelte.d.ts +26 -0
- package/dist/lib/components/ui/login-form/login-provider.svelte +13 -0
- package/dist/lib/components/ui/login-form/login-provider.svelte.d.ts +25 -0
- package/dist/lib/components/ui/login-form/login-submit.svelte +17 -0
- package/dist/lib/components/ui/login-form/login-submit.svelte.d.ts +7 -0
- package/dist/lib/components/ui/login-form/login-user-input.svelte +21 -0
- package/dist/lib/components/ui/login-form/login-user-input.svelte.d.ts +26 -0
- package/dist/lib/components/ui/login-form/login.schema.d.ts +6 -0
- package/dist/lib/components/ui/login-form/login.schema.js +5 -0
- package/dist/lib/components/ui/register-form/index.d.ts +10 -2
- package/dist/lib/components/ui/register-form/index.js +10 -2
- package/dist/lib/components/ui/register-form/register-container.svelte +27 -0
- package/dist/lib/components/ui/register-form/register-container.svelte.d.ts +8 -0
- package/dist/lib/components/ui/register-form/register-form.svelte +67 -170
- package/dist/lib/components/ui/register-form/register-form.svelte.d.ts +10 -5
- package/dist/lib/components/ui/register-form/register-header.svelte +34 -0
- package/dist/lib/components/ui/register-form/register-header.svelte.d.ts +13 -0
- package/dist/lib/components/ui/register-form/register-name-input.svelte +21 -0
- package/dist/lib/components/ui/register-form/register-name-input.svelte.d.ts +26 -0
- package/dist/lib/components/ui/register-form/register-password-input.svelte +21 -0
- package/dist/lib/components/ui/register-form/register-password-input.svelte.d.ts +26 -0
- package/dist/lib/components/ui/register-form/register-provider.svelte +13 -0
- package/dist/lib/components/ui/register-form/register-provider.svelte.d.ts +25 -0
- package/dist/lib/components/ui/register-form/register-submit.svelte +17 -0
- package/dist/lib/components/ui/register-form/register-submit.svelte.d.ts +7 -0
- package/dist/lib/components/ui/register-form/register-user-input.svelte +21 -0
- package/dist/lib/components/ui/register-form/register-user-input.svelte.d.ts +26 -0
- package/dist/lib/components/ui/register-form/register.schema.d.ts +8 -0
- package/dist/lib/components/ui/register-form/register.schema.js +7 -0
- package/dist/lib/components/ui/reset-password/index.d.ts +8 -2
- package/dist/lib/components/ui/reset-password/index.js +8 -2
- package/dist/lib/components/ui/reset-password/reset-password-container.svelte +27 -0
- package/dist/lib/components/ui/reset-password/reset-password-container.svelte.d.ts +8 -0
- package/dist/lib/components/ui/reset-password/reset-password-form.svelte +91 -0
- package/dist/lib/components/ui/reset-password/reset-password-form.svelte.d.ts +20 -0
- package/dist/lib/components/ui/reset-password/reset-password-header.svelte +34 -0
- package/dist/lib/components/ui/reset-password/reset-password-header.svelte.d.ts +13 -0
- package/dist/lib/components/ui/reset-password/reset-password-password-input.svelte +21 -0
- package/dist/lib/components/ui/reset-password/reset-password-password-input.svelte.d.ts +26 -0
- package/dist/lib/components/ui/reset-password/reset-password-provider.svelte +13 -0
- package/dist/lib/components/ui/reset-password/reset-password-provider.svelte.d.ts +25 -0
- package/dist/lib/components/ui/reset-password/reset-password-submit.svelte +17 -0
- package/dist/lib/components/ui/reset-password/reset-password-submit.svelte.d.ts +7 -0
- package/dist/lib/components/ui/reset-password/reset-password.schema.d.ts +6 -0
- package/dist/lib/components/ui/reset-password/reset-password.schema.js +9 -0
- package/dist/lib/hooks/index.d.ts +1 -0
- package/dist/lib/hooks/index.js +1 -0
- package/dist/lib/index.d.ts +2 -0
- package/dist/lib/index.js +3 -0
- package/dist/lib/utils.d.ts +10 -0
- package/package.json +40 -69
- package/src/app.css +174 -0
- package/src/app.html +0 -1
- package/src/index.ts +1 -0
- package/src/lib/components/types.ts +24 -0
- package/src/lib/components/ui/auth-layout/auth-layout-content-top.svelte +15 -0
- package/src/lib/components/ui/auth-layout/auth-layout-content.svelte +15 -0
- package/src/lib/components/ui/auth-layout/auth-layout-feature-info.svelte +45 -0
- package/src/lib/components/ui/auth-layout/auth-layout-feature.svelte +24 -0
- package/src/lib/components/ui/auth-layout/auth-layout-logo.svelte +99 -0
- package/src/lib/components/ui/auth-layout/auth-layout-main.svelte +17 -0
- package/src/lib/components/ui/auth-layout/auth-layout.svelte +22 -88
- package/src/lib/components/ui/auth-layout/index.ts +20 -2
- package/src/lib/components/ui/forgot-password/forgot-password-container.svelte +27 -0
- package/src/lib/components/ui/forgot-password/forgot-password-form.svelte +70 -81
- package/src/lib/components/ui/forgot-password/forgot-password-header.svelte +34 -0
- package/src/lib/components/ui/forgot-password/forgot-password-login.svelte +19 -0
- package/src/lib/components/ui/forgot-password/forgot-password-provider.svelte +13 -0
- package/src/lib/components/ui/forgot-password/forgot-password-submit.svelte +17 -0
- package/src/lib/components/ui/forgot-password/forgot-password-user-input.svelte +21 -0
- package/src/lib/components/ui/forgot-password/forgot-password.schema.ts +7 -0
- package/src/lib/components/ui/forgot-password/index.ts +19 -2
- package/src/lib/components/ui/index.ts +6 -0
- package/src/lib/components/ui/login-form/index.ts +26 -2
- package/src/lib/components/ui/login-form/login-container.svelte +27 -0
- package/src/lib/components/ui/login-form/login-context.ts +16 -0
- package/src/lib/components/ui/login-form/login-forgot-password.svelte +19 -0
- package/src/lib/components/ui/login-form/login-form.svelte +68 -111
- package/src/lib/components/ui/login-form/login-header.svelte +34 -0
- package/src/lib/components/ui/login-form/login-password-input.svelte +21 -0
- package/src/lib/components/ui/login-form/login-provider.svelte +13 -0
- package/src/lib/components/ui/login-form/login-submit.svelte +17 -0
- package/src/lib/components/ui/login-form/login-user-input.svelte +21 -0
- package/src/lib/components/ui/login-form/login.schema.ts +8 -0
- package/src/lib/components/ui/register-form/index.ts +21 -2
- package/src/lib/components/ui/register-form/register-container.svelte +27 -0
- package/src/lib/components/ui/register-form/register-form.svelte +67 -170
- package/src/lib/components/ui/register-form/register-header.svelte +34 -0
- package/src/lib/components/ui/register-form/register-name-input.svelte +21 -0
- package/src/lib/components/ui/register-form/register-password-input.svelte +21 -0
- package/src/lib/components/ui/register-form/register-provider.svelte +13 -0
- package/src/lib/components/ui/register-form/register-submit.svelte +17 -0
- package/src/lib/components/ui/register-form/register-user-input.svelte +21 -0
- package/src/lib/components/ui/register-form/register.schema.ts +10 -0
- package/src/lib/components/ui/reset-password/index.ts +17 -2
- package/src/lib/components/ui/reset-password/reset-password-container.svelte +27 -0
- package/src/lib/components/ui/reset-password/reset-password-form.svelte +91 -0
- package/src/lib/components/ui/reset-password/reset-password-header.svelte +34 -0
- package/src/lib/components/ui/reset-password/reset-password-password-input.svelte +21 -0
- package/src/lib/components/ui/reset-password/reset-password-provider.svelte +13 -0
- package/src/lib/components/ui/reset-password/reset-password-submit.svelte +17 -0
- package/src/lib/components/ui/reset-password/reset-password.schema.ts +12 -0
- package/src/lib/hooks/index.ts +1 -0
- package/src/lib/index.ts +3 -0
- package/src/lib/utils.ts +8 -1
- package/dist/lib/components/ui/reset-password/reset-form.svelte +0 -120
- package/dist/lib/components/ui/reset-password/reset-form.svelte.d.ts +0 -16
- package/src/lib/components/ui/reset-password/reset-form.svelte +0 -120
package/dist/app.css
ADDED
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
@import "tailwindcss";
|
|
2
|
+
|
|
3
|
+
@import "tw-animate-css";
|
|
4
|
+
|
|
5
|
+
@source "../node_modules/@tanglemedia/svelte-starter-form-shadcn/dist/**/*.{html,js,svelte,ts}";
|
|
6
|
+
@source "src/**/*.{html,js,svelte,ts}";
|
|
7
|
+
/*
|
|
8
|
+
The default border color has changed to `currentcolor` in Tailwind CSS v4,
|
|
9
|
+
so we've added these compatibility styles to make sure everything still
|
|
10
|
+
looks the same as it did with Tailwind CSS v3.
|
|
11
|
+
|
|
12
|
+
If we ever want to remove these styles, we need to add an explicit border
|
|
13
|
+
color utility to any element that depends on these defaults.
|
|
14
|
+
*/
|
|
15
|
+
@layer base {
|
|
16
|
+
*,
|
|
17
|
+
::after,
|
|
18
|
+
::before,
|
|
19
|
+
::backdrop,
|
|
20
|
+
::file-selector-button {
|
|
21
|
+
border-color: var(--color-gray-200, currentcolor);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
@custom-variant dark (&:is(.dark *));
|
|
26
|
+
|
|
27
|
+
:root {
|
|
28
|
+
--radius: 0.625rem;
|
|
29
|
+
--background: oklch(1 0 0);
|
|
30
|
+
--foreground: oklch(0.129 0.042 264.695);
|
|
31
|
+
--card: oklch(1 0 0);
|
|
32
|
+
--card-foreground: oklch(0.129 0.042 264.695);
|
|
33
|
+
--popover: oklch(1 0 0);
|
|
34
|
+
--popover-foreground: oklch(0.129 0.042 264.695);
|
|
35
|
+
--primary: oklch(0.208 0.042 265.755);
|
|
36
|
+
--primary-foreground: oklch(0.984 0.003 247.858);
|
|
37
|
+
--secondary: oklch(0.968 0.007 247.896);
|
|
38
|
+
--secondary-foreground: oklch(0.208 0.042 265.755);
|
|
39
|
+
--muted: oklch(0.968 0.007 247.896);
|
|
40
|
+
--muted-foreground: oklch(0.554 0.046 257.417);
|
|
41
|
+
--accent: oklch(0.968 0.007 247.896);
|
|
42
|
+
--accent-foreground: oklch(0.208 0.042 265.755);
|
|
43
|
+
--destructive: oklch(0.577 0.245 27.325);
|
|
44
|
+
--border: oklch(0.929 0.013 255.508);
|
|
45
|
+
--input: oklch(0.929 0.013 255.508);
|
|
46
|
+
--ring: oklch(0.704 0.04 256.788);
|
|
47
|
+
--chart-1: oklch(0.646 0.222 41.116);
|
|
48
|
+
--chart-2: oklch(0.6 0.118 184.704);
|
|
49
|
+
--chart-3: oklch(0.398 0.07 227.392);
|
|
50
|
+
--chart-4: oklch(0.828 0.189 84.429);
|
|
51
|
+
--chart-5: oklch(0.769 0.188 70.08);
|
|
52
|
+
--sidebar: oklch(0.984 0.003 247.858);
|
|
53
|
+
--sidebar-foreground: oklch(0.129 0.042 264.695);
|
|
54
|
+
--sidebar-primary: oklch(0.208 0.042 265.755);
|
|
55
|
+
--sidebar-primary-foreground: oklch(0.984 0.003 247.858);
|
|
56
|
+
--sidebar-accent: oklch(0.968 0.007 247.896);
|
|
57
|
+
--sidebar-accent-foreground: oklch(0.208 0.042 265.755);
|
|
58
|
+
--sidebar-border: oklch(0.929 0.013 255.508);
|
|
59
|
+
--sidebar-ring: oklch(0.704 0.04 256.788);
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.dark {
|
|
63
|
+
--background: oklch(0.129 0.042 264.695);
|
|
64
|
+
--foreground: oklch(0.984 0.003 247.858);
|
|
65
|
+
--card: oklch(0.208 0.042 265.755);
|
|
66
|
+
--card-foreground: oklch(0.984 0.003 247.858);
|
|
67
|
+
--popover: oklch(0.208 0.042 265.755);
|
|
68
|
+
--popover-foreground: oklch(0.984 0.003 247.858);
|
|
69
|
+
--primary: oklch(0.929 0.013 255.508);
|
|
70
|
+
--primary-foreground: oklch(0.208 0.042 265.755);
|
|
71
|
+
--secondary: oklch(0.279 0.041 260.031);
|
|
72
|
+
--secondary-foreground: oklch(0.984 0.003 247.858);
|
|
73
|
+
--muted: oklch(0.279 0.041 260.031);
|
|
74
|
+
--muted-foreground: oklch(0.704 0.04 256.788);
|
|
75
|
+
--accent: oklch(0.279 0.041 260.031);
|
|
76
|
+
--accent-foreground: oklch(0.984 0.003 247.858);
|
|
77
|
+
--destructive: oklch(0.704 0.191 22.216);
|
|
78
|
+
--border: oklch(1 0 0 / 10%);
|
|
79
|
+
--input: oklch(1 0 0 / 15%);
|
|
80
|
+
--ring: oklch(0.551 0.027 264.364);
|
|
81
|
+
--chart-1: oklch(0.488 0.243 264.376);
|
|
82
|
+
--chart-2: oklch(0.696 0.17 162.48);
|
|
83
|
+
--chart-3: oklch(0.769 0.188 70.08);
|
|
84
|
+
--chart-4: oklch(0.627 0.265 303.9);
|
|
85
|
+
--chart-5: oklch(0.645 0.246 16.439);
|
|
86
|
+
--sidebar: oklch(0.208 0.042 265.755);
|
|
87
|
+
--sidebar-foreground: oklch(0.984 0.003 247.858);
|
|
88
|
+
--sidebar-primary: oklch(0.488 0.243 264.376);
|
|
89
|
+
--sidebar-primary-foreground: oklch(0.984 0.003 247.858);
|
|
90
|
+
--sidebar-accent: oklch(0.279 0.041 260.031);
|
|
91
|
+
--sidebar-accent-foreground: oklch(0.984 0.003 247.858);
|
|
92
|
+
--sidebar-border: oklch(1 0 0 / 10%);
|
|
93
|
+
--sidebar-ring: oklch(0.551 0.027 264.364);
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
@theme inline {
|
|
97
|
+
--radius-sm: calc(var(--radius) - 4px);
|
|
98
|
+
--radius-md: calc(var(--radius) - 2px);
|
|
99
|
+
--radius-lg: var(--radius);
|
|
100
|
+
--radius-xl: calc(var(--radius) + 4px);
|
|
101
|
+
--color-background: var(--background);
|
|
102
|
+
--color-foreground: var(--foreground);
|
|
103
|
+
--color-card: var(--card);
|
|
104
|
+
--color-card-foreground: var(--card-foreground);
|
|
105
|
+
--color-popover: var(--popover);
|
|
106
|
+
--color-popover-foreground: var(--popover-foreground);
|
|
107
|
+
--color-primary: var(--primary);
|
|
108
|
+
--color-primary-foreground: var(--primary-foreground);
|
|
109
|
+
--color-secondary: var(--secondary);
|
|
110
|
+
--color-secondary-foreground: var(--secondary-foreground);
|
|
111
|
+
--color-muted: var(--muted);
|
|
112
|
+
--color-muted-foreground: var(--muted-foreground);
|
|
113
|
+
--color-accent: var(--accent);
|
|
114
|
+
--color-accent-foreground: var(--accent-foreground);
|
|
115
|
+
--color-destructive: var(--destructive);
|
|
116
|
+
--color-border: var(--border);
|
|
117
|
+
--color-input: var(--input);
|
|
118
|
+
--color-ring: var(--ring);
|
|
119
|
+
--color-chart-1: var(--chart-1);
|
|
120
|
+
--color-chart-2: var(--chart-2);
|
|
121
|
+
--color-chart-3: var(--chart-3);
|
|
122
|
+
--color-chart-4: var(--chart-4);
|
|
123
|
+
--color-chart-5: var(--chart-5);
|
|
124
|
+
--color-sidebar: var(--sidebar);
|
|
125
|
+
--color-sidebar-foreground: var(--sidebar-foreground);
|
|
126
|
+
--color-sidebar-primary: var(--sidebar-primary);
|
|
127
|
+
--color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
|
|
128
|
+
--color-sidebar-accent: var(--sidebar-accent);
|
|
129
|
+
--color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
|
|
130
|
+
--color-sidebar-border: var(--sidebar-border);
|
|
131
|
+
--color-sidebar-ring: var(--sidebar-ring);
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
@layer base {
|
|
135
|
+
* {
|
|
136
|
+
@apply border-border outline-ring/50;
|
|
137
|
+
}
|
|
138
|
+
body {
|
|
139
|
+
@apply bg-background text-foreground;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
@keyframes accordion-down {
|
|
144
|
+
from {
|
|
145
|
+
height: 0;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
to {
|
|
149
|
+
height: var(--bits-accordion-content-height);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
@keyframes accordion-up {
|
|
154
|
+
from {
|
|
155
|
+
height: var(--bits-accordion-content-height);
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
to {
|
|
159
|
+
height: 0;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
@keyframes caret-blink {
|
|
164
|
+
0%,
|
|
165
|
+
70%,
|
|
166
|
+
100% {
|
|
167
|
+
opacity: 1;
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
20%,
|
|
171
|
+
50% {
|
|
172
|
+
opacity: 0;
|
|
173
|
+
}
|
|
174
|
+
}
|
package/dist/app.html
CHANGED
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './lib/index.ts';
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./lib/index.js";
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { FsSuperForm } from 'formsnap';
|
|
2
|
+
import type { WithChild } from 'svelte-toolbelt';
|
|
3
|
+
import type { SuperForm } from 'sveltekit-superforms';
|
|
4
|
+
export type FsSuperFormPrimitive<T extends Record<string, unknown>> = FsSuperForm<T>;
|
|
5
|
+
export type LoginProviderProps<T extends Record<string, unknown>> = WithChild<{
|
|
6
|
+
superforms: SuperForm<T>;
|
|
7
|
+
action?: string;
|
|
8
|
+
method?: 'dialog' | 'get' | 'post' | 'DIALOG' | 'GET' | 'POST' | null | undefined;
|
|
9
|
+
}, {
|
|
10
|
+
props: {
|
|
11
|
+
superforms: SuperForm<T>;
|
|
12
|
+
};
|
|
13
|
+
}>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import { cn } from "@tanglemedia/svelte-starter-ui-shadcn";
|
|
3
|
+
import type { Snippet } from "svelte";
|
|
4
|
+
|
|
5
|
+
type Props = {
|
|
6
|
+
children?: Snippet<[]>;
|
|
7
|
+
class?: string;
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
const { children, class: cls }: Props = $props();
|
|
11
|
+
</script>
|
|
12
|
+
|
|
13
|
+
<div class={cn("flex justify-center gap-2 md:justify-start", cls)}>
|
|
14
|
+
{@render children?.()}
|
|
15
|
+
</div>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Snippet } from "svelte";
|
|
2
|
+
type Props = {
|
|
3
|
+
children?: Snippet<[]>;
|
|
4
|
+
class?: string;
|
|
5
|
+
};
|
|
6
|
+
declare const AuthLayoutContentTop: import("svelte").Component<Props, {}, "">;
|
|
7
|
+
type AuthLayoutContentTop = ReturnType<typeof AuthLayoutContentTop>;
|
|
8
|
+
export default AuthLayoutContentTop;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import { cn } from "@tanglemedia/svelte-starter-ui-shadcn";
|
|
3
|
+
import type { Snippet } from "svelte";
|
|
4
|
+
|
|
5
|
+
type Props = {
|
|
6
|
+
children?: Snippet<[]>;
|
|
7
|
+
class?: string;
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
const { children, class: cls }: Props = $props();
|
|
11
|
+
</script>
|
|
12
|
+
|
|
13
|
+
<div class={cn("flex flex-col gap-4 p-6 md:p-10", cls)}>
|
|
14
|
+
{@render children?.()}
|
|
15
|
+
</div>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Snippet } from "svelte";
|
|
2
|
+
type Props = {
|
|
3
|
+
children?: Snippet<[]>;
|
|
4
|
+
class?: string;
|
|
5
|
+
};
|
|
6
|
+
declare const AuthLayoutContent: import("svelte").Component<Props, {}, "">;
|
|
7
|
+
type AuthLayoutContent = ReturnType<typeof AuthLayoutContent>;
|
|
8
|
+
export default AuthLayoutContent;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import type { Snippet } from "svelte";
|
|
3
|
+
|
|
4
|
+
interface Props {
|
|
5
|
+
logo?: string | null;
|
|
6
|
+
logoClass?: string | null;
|
|
7
|
+
name?: string | null;
|
|
8
|
+
quote?: string | null;
|
|
9
|
+
quoteAuthor?: string | null;
|
|
10
|
+
children?: Snippet;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
let {
|
|
14
|
+
logo = null,
|
|
15
|
+
name = "Tangle Media Inc.",
|
|
16
|
+
quote = "",
|
|
17
|
+
quoteAuthor = "",
|
|
18
|
+
logoClass,
|
|
19
|
+
children,
|
|
20
|
+
}: Props = $props();
|
|
21
|
+
</script>
|
|
22
|
+
|
|
23
|
+
<div
|
|
24
|
+
class="text-white top-6 left-6 right-6 bottom-6 absolute text-lg font-medium text-shadow-lg"
|
|
25
|
+
>
|
|
26
|
+
{@render renderLogoName()}
|
|
27
|
+
{@render children?.()}
|
|
28
|
+
<blockquote class="space-y-2 mt-2 lg:mt-0 mr-4 lg:mr-0 hidden lg:block lg:absolute bottom-6">
|
|
29
|
+
<p class="text-sm text-shadow-lg">
|
|
30
|
+
{quote}
|
|
31
|
+
</p>
|
|
32
|
+
<footer class="text-xs text-shadow-lg">{quoteAuthor}</footer>
|
|
33
|
+
</blockquote>
|
|
34
|
+
</div>
|
|
35
|
+
|
|
36
|
+
{#snippet renderLogoName()}
|
|
37
|
+
<div class="flex items-center gap-4">
|
|
38
|
+
{#if logo}
|
|
39
|
+
<img src={logo} alt="logo" class={logoClass} />
|
|
40
|
+
{/if}
|
|
41
|
+
{#if name}
|
|
42
|
+
{name}
|
|
43
|
+
{/if}
|
|
44
|
+
</div>
|
|
45
|
+
{/snippet}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { Snippet } from "svelte";
|
|
2
|
+
interface Props {
|
|
3
|
+
logo?: string | null;
|
|
4
|
+
logoClass?: string | null;
|
|
5
|
+
name?: string | null;
|
|
6
|
+
quote?: string | null;
|
|
7
|
+
quoteAuthor?: string | null;
|
|
8
|
+
children?: Snippet;
|
|
9
|
+
}
|
|
10
|
+
declare const AuthLayoutFeatureInfo: import("svelte").Component<Props, {}, "">;
|
|
11
|
+
type AuthLayoutFeatureInfo = ReturnType<typeof AuthLayoutFeatureInfo>;
|
|
12
|
+
export default AuthLayoutFeatureInfo;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import type { Snippet } from "svelte";
|
|
3
|
+
|
|
4
|
+
interface Props {
|
|
5
|
+
image?: string | null;
|
|
6
|
+
children?: Snippet;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
let {
|
|
10
|
+
image = "https://images.unsplash.com/photo-1590069261209-f8e9b8642343?ixlib=rb-4.0.3&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=1376&q=80",
|
|
11
|
+
children,
|
|
12
|
+
}: Props = $props();
|
|
13
|
+
</script>
|
|
14
|
+
|
|
15
|
+
<div
|
|
16
|
+
class="absolute top-0 left-0 right-0 bottom-0 z-[-1]"
|
|
17
|
+
style="
|
|
18
|
+
background-image:
|
|
19
|
+
url({image});
|
|
20
|
+
background-size: cover;
|
|
21
|
+
background-position: center"
|
|
22
|
+
>
|
|
23
|
+
{@render children?.()}
|
|
24
|
+
</div>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Snippet } from "svelte";
|
|
2
|
+
interface Props {
|
|
3
|
+
image?: string | null;
|
|
4
|
+
children?: Snippet;
|
|
5
|
+
}
|
|
6
|
+
declare const AuthLayoutFeature: import("svelte").Component<Props, {}, "">;
|
|
7
|
+
type AuthLayoutFeature = ReturnType<typeof AuthLayoutFeature>;
|
|
8
|
+
export default AuthLayoutFeature;
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
<script lang="ts" module>
|
|
2
|
+
import { type VariantProps, tv } from 'tailwind-variants';
|
|
3
|
+
|
|
4
|
+
const authLogoSizeVariants = tv({
|
|
5
|
+
base: 'flex shrink-0 overflow-hidden rounded-lg',
|
|
6
|
+
variants: {
|
|
7
|
+
size: {
|
|
8
|
+
default: 'size-8',
|
|
9
|
+
lg: 'size-16',
|
|
10
|
+
xl: 'size-24',
|
|
11
|
+
'2xl': 'size-32',
|
|
12
|
+
'3xl': 'size-40',
|
|
13
|
+
},
|
|
14
|
+
},
|
|
15
|
+
defaultVariants: {
|
|
16
|
+
size: 'default',
|
|
17
|
+
},
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
const authLogoTextSizeVariants = tv({
|
|
21
|
+
base: '',
|
|
22
|
+
variants: {
|
|
23
|
+
size: {
|
|
24
|
+
default: '',
|
|
25
|
+
lg: 'text-2xl',
|
|
26
|
+
xl: 'text-5xl',
|
|
27
|
+
'2xl': 'text-6xl',
|
|
28
|
+
'3xl': 'text-9xl',
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
defaultVariants: {
|
|
32
|
+
size: 'default',
|
|
33
|
+
},
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
const authLogoAlignVariants = tv({
|
|
37
|
+
base: 'flex items-center gap-2 font-medium',
|
|
38
|
+
variants: {
|
|
39
|
+
align: {
|
|
40
|
+
default: 'self-auto',
|
|
41
|
+
left: 'self-start',
|
|
42
|
+
right: 'self-end',
|
|
43
|
+
center: 'self-center',
|
|
44
|
+
},
|
|
45
|
+
},
|
|
46
|
+
defaultVariants: {
|
|
47
|
+
align: 'default',
|
|
48
|
+
},
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
export type AuthLogoSize = VariantProps<typeof authLogoSizeVariants>['size'];
|
|
52
|
+
export type AuthLogoAlign = VariantProps<
|
|
53
|
+
typeof authLogoAlignVariants
|
|
54
|
+
>['align'];
|
|
55
|
+
</script>
|
|
56
|
+
|
|
57
|
+
<script lang="ts">
|
|
58
|
+
import { cn } from '@tanglemedia/svelte-starter-ui-shadcn';
|
|
59
|
+
import type { Snippet } from 'svelte';
|
|
60
|
+
|
|
61
|
+
type Props = {
|
|
62
|
+
children?: Snippet<[]>;
|
|
63
|
+
class?: string;
|
|
64
|
+
src?: string | null;
|
|
65
|
+
logoClass?: string | null;
|
|
66
|
+
href?: string;
|
|
67
|
+
size?: AuthLogoSize;
|
|
68
|
+
align?: AuthLogoAlign;
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
const {
|
|
72
|
+
children,
|
|
73
|
+
class: cls,
|
|
74
|
+
src,
|
|
75
|
+
logoClass,
|
|
76
|
+
href,
|
|
77
|
+
size,
|
|
78
|
+
align,
|
|
79
|
+
}: Props = $props();
|
|
80
|
+
|
|
81
|
+
// cn(authLogoVariants({ size }));
|
|
82
|
+
</script>
|
|
83
|
+
|
|
84
|
+
<svelte:element
|
|
85
|
+
this={href ? 'a' : 'span'}
|
|
86
|
+
class={cn(authLogoAlignVariants({ align }), cls)}
|
|
87
|
+
{href}
|
|
88
|
+
>
|
|
89
|
+
<div class={cn(authLogoSizeVariants({ size }))}>
|
|
90
|
+
{#if src}
|
|
91
|
+
<img {src} alt="logo" class={cn('aspect-square size-full', logoClass)} />
|
|
92
|
+
{/if}
|
|
93
|
+
</div>
|
|
94
|
+
{#if children}
|
|
95
|
+
<div class={cn(authLogoTextSizeVariants({ size }))}>
|
|
96
|
+
{@render children?.()}
|
|
97
|
+
</div>
|
|
98
|
+
{/if}
|
|
99
|
+
</svelte:element>
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { type VariantProps } from 'tailwind-variants';
|
|
2
|
+
declare const authLogoSizeVariants: import("tailwind-variants").TVReturnType<{
|
|
3
|
+
size: {
|
|
4
|
+
default: string;
|
|
5
|
+
lg: string;
|
|
6
|
+
xl: string;
|
|
7
|
+
'2xl': string;
|
|
8
|
+
'3xl': string;
|
|
9
|
+
};
|
|
10
|
+
}, undefined, "flex shrink-0 overflow-hidden rounded-lg", {
|
|
11
|
+
size: {
|
|
12
|
+
default: string;
|
|
13
|
+
lg: string;
|
|
14
|
+
xl: string;
|
|
15
|
+
'2xl': string;
|
|
16
|
+
'3xl': string;
|
|
17
|
+
};
|
|
18
|
+
}, undefined, import("tailwind-variants").TVReturnType<{
|
|
19
|
+
size: {
|
|
20
|
+
default: string;
|
|
21
|
+
lg: string;
|
|
22
|
+
xl: string;
|
|
23
|
+
'2xl': string;
|
|
24
|
+
'3xl': string;
|
|
25
|
+
};
|
|
26
|
+
}, undefined, "flex shrink-0 overflow-hidden rounded-lg", unknown, unknown, undefined>>;
|
|
27
|
+
declare const authLogoAlignVariants: import("tailwind-variants").TVReturnType<{
|
|
28
|
+
align: {
|
|
29
|
+
default: string;
|
|
30
|
+
left: string;
|
|
31
|
+
right: string;
|
|
32
|
+
center: string;
|
|
33
|
+
};
|
|
34
|
+
}, undefined, "flex items-center gap-2 font-medium", {
|
|
35
|
+
align: {
|
|
36
|
+
default: string;
|
|
37
|
+
left: string;
|
|
38
|
+
right: string;
|
|
39
|
+
center: string;
|
|
40
|
+
};
|
|
41
|
+
}, undefined, import("tailwind-variants").TVReturnType<{
|
|
42
|
+
align: {
|
|
43
|
+
default: string;
|
|
44
|
+
left: string;
|
|
45
|
+
right: string;
|
|
46
|
+
center: string;
|
|
47
|
+
};
|
|
48
|
+
}, undefined, "flex items-center gap-2 font-medium", unknown, unknown, undefined>>;
|
|
49
|
+
export type AuthLogoSize = VariantProps<typeof authLogoSizeVariants>['size'];
|
|
50
|
+
export type AuthLogoAlign = VariantProps<typeof authLogoAlignVariants>['align'];
|
|
51
|
+
import type { Snippet } from 'svelte';
|
|
52
|
+
type Props = {
|
|
53
|
+
children?: Snippet<[]>;
|
|
54
|
+
class?: string;
|
|
55
|
+
src?: string | null;
|
|
56
|
+
logoClass?: string | null;
|
|
57
|
+
href?: string;
|
|
58
|
+
size?: AuthLogoSize;
|
|
59
|
+
align?: AuthLogoAlign;
|
|
60
|
+
};
|
|
61
|
+
declare const AuthLayoutLogo: import("svelte").Component<Props, {}, "">;
|
|
62
|
+
type AuthLayoutLogo = ReturnType<typeof AuthLayoutLogo>;
|
|
63
|
+
export default AuthLayoutLogo;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import { cn } from '@tanglemedia/svelte-starter-ui-shadcn';
|
|
3
|
+
import type { Snippet } from 'svelte';
|
|
4
|
+
|
|
5
|
+
type Props = {
|
|
6
|
+
children?: Snippet<[]>;
|
|
7
|
+
class?: string;
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
const { children, class: cls }: Props = $props();
|
|
11
|
+
</script>
|
|
12
|
+
|
|
13
|
+
<div class={cn('flex flex-1 items-center justify-center', cls)}>
|
|
14
|
+
<div class="w-full max-w-sm lg:max-w-md flex flex-col gap-6">
|
|
15
|
+
{@render children?.()}
|
|
16
|
+
</div>
|
|
17
|
+
</div>
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Snippet } from 'svelte';
|
|
2
|
+
type Props = {
|
|
3
|
+
children?: Snippet<[]>;
|
|
4
|
+
class?: string;
|
|
5
|
+
};
|
|
6
|
+
declare const AuthLayoutMain: import("svelte").Component<Props, {}, "">;
|
|
7
|
+
type AuthLayoutMain = ReturnType<typeof AuthLayoutMain>;
|
|
8
|
+
export default AuthLayoutMain;
|
|
@@ -1,91 +1,31 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
|
-
import {
|
|
3
|
-
// import { getConfig } from '@tanglemedia/svelte-starter-core';
|
|
2
|
+
import type { Snippet } from "svelte";
|
|
4
3
|
|
|
5
4
|
interface Props {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
quoteAuthor?: string;
|
|
10
|
-
layoutMode?: string;
|
|
11
|
-
leftSideBackground?: string;
|
|
12
|
-
rightSideBackground?: string;
|
|
13
|
-
opacity?: number;
|
|
14
|
-
logoClass?: string;
|
|
15
|
-
filterClass?: string;
|
|
16
|
-
imageClass?: string;
|
|
5
|
+
side?: "left" | "right";
|
|
6
|
+
feature?: Snippet;
|
|
7
|
+
children: Snippet;
|
|
17
8
|
}
|
|
18
9
|
|
|
19
|
-
|
|
20
|
-
logo,
|
|
21
|
-
name,
|
|
22
|
-
quote,
|
|
23
|
-
quoteAuthor,
|
|
24
|
-
layoutMode,
|
|
25
|
-
leftSideBackground,
|
|
26
|
-
rightSideBackground,
|
|
27
|
-
opacity,
|
|
28
|
-
logoClass,
|
|
29
|
-
filterClass,
|
|
30
|
-
imageClass,
|
|
31
|
-
children
|
|
32
|
-
}: Props = $props();
|
|
10
|
+
let { side = "left", feature, children }: Props = $props();
|
|
33
11
|
</script>
|
|
34
12
|
|
|
35
|
-
<div
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
</div>
|
|
48
|
-
<div class="relative z-20 mt-auto">
|
|
49
|
-
<blockquote class="space-y-2">
|
|
50
|
-
<p class="text-lg text-shadow-lg">
|
|
51
|
-
“This library has saved me countless hours of work and helped me deliver
|
|
52
|
-
stunning designs to my clients faster than ever before. Highly
|
|
53
|
-
recommended!”
|
|
54
|
-
</p>
|
|
55
|
-
<footer class="text-sm text-shadow-lg">Sofia Davis</footer>
|
|
56
|
-
</blockquote>
|
|
57
|
-
</div>
|
|
58
|
-
<div class="absolute top-0 bottom-0 left-0 right-0 bg-primary-500/10 filter blur(2px)"></div>
|
|
59
|
-
</div>
|
|
60
|
-
<div class="lg:hidden absolute top-0 left-0 right-0 bottom-1/2 z-[-1]" style="
|
|
61
|
-
mask-image: linear-gradient(to bottom, black 50%, transparent 100%);
|
|
62
|
-
background-image:
|
|
63
|
-
url(https://images.unsplash.com/photo-1590069261209-f8e9b8642343?ixlib=rb-4.0.3&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx);
|
|
64
|
-
background-size: cover;
|
|
65
|
-
background-position: center">
|
|
66
|
-
<div class="text-white top-6 left-6 absolute text-lg font-medium z-20 text-shadow-lg">
|
|
67
|
-
Acme Inc
|
|
68
|
-
<blockquote class="space-y-2 mt-2 mr-4">
|
|
69
|
-
<p class="text-sm text-shadow-lg">
|
|
70
|
-
“This library has saved me countless hours of work and helped me deliver
|
|
71
|
-
stunning designs to my clients faster than ever before. Highly
|
|
72
|
-
recommended!”
|
|
73
|
-
</p>
|
|
74
|
-
<footer class="text-xs text-shadow-lg">Sofia Davis</footer>
|
|
75
|
-
</blockquote>
|
|
76
|
-
</div>
|
|
77
|
-
<div class="absolute top-0 bottom-0 left-0 right-0 bg-primary-500/10 filter blur(2px)"></div>
|
|
78
|
-
<div class="absolute bottom-0 left-0 right-0 h-20 bg-gradient-to-b from-gray-900/10 to-background transition duration-500 ease-in-out"></div>
|
|
79
|
-
</div>
|
|
80
|
-
<div class="lg:p-8">
|
|
81
|
-
<div class="mx-auto flex w-full flex-col justify-center space-y-6">
|
|
82
|
-
{@render children()}
|
|
83
|
-
</div>
|
|
84
|
-
</div>
|
|
13
|
+
<div class="relative min-h-svh grid grid-cols-1 lg:grid-cols-2">
|
|
14
|
+
{#if side === "left"}
|
|
15
|
+
{#if feature}
|
|
16
|
+
{@render renderFeature()}
|
|
17
|
+
{/if}
|
|
18
|
+
{/if}
|
|
19
|
+
{@render children()}
|
|
20
|
+
{#if side === "right"}
|
|
21
|
+
{#if feature}
|
|
22
|
+
{@render renderFeature()}
|
|
23
|
+
{/if}
|
|
24
|
+
{/if}
|
|
85
25
|
</div>
|
|
86
26
|
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
27
|
+
{#snippet renderFeature()}
|
|
28
|
+
<div class="w-full absolute h-[50vh] lg:h-screen lg:relative lg:block">
|
|
29
|
+
{@render feature?.()}
|
|
30
|
+
</div>
|
|
31
|
+
{/snippet}
|
|
@@ -1,15 +1,8 @@
|
|
|
1
|
+
import type { Snippet } from "svelte";
|
|
1
2
|
interface Props {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
quoteAuthor?: string;
|
|
6
|
-
layoutMode?: string;
|
|
7
|
-
leftSideBackground?: string;
|
|
8
|
-
rightSideBackground?: string;
|
|
9
|
-
opacity?: number;
|
|
10
|
-
logoClass?: string;
|
|
11
|
-
filterClass?: string;
|
|
12
|
-
imageClass?: string;
|
|
3
|
+
side?: "left" | "right";
|
|
4
|
+
feature?: Snippet;
|
|
5
|
+
children: Snippet;
|
|
13
6
|
}
|
|
14
7
|
declare const AuthLayout: import("svelte").Component<Props, {}, "">;
|
|
15
8
|
type AuthLayout = ReturnType<typeof AuthLayout>;
|