@actuate-media/cms-admin 0.9.0 → 0.11.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/AdminRoot.d.ts.map +1 -1
- package/dist/AdminRoot.js +8 -5
- package/dist/AdminRoot.js.map +1 -1
- package/dist/__tests__/layout/primitives.test.d.ts +2 -0
- package/dist/__tests__/layout/primitives.test.d.ts.map +1 -0
- package/dist/__tests__/layout/primitives.test.js +34 -0
- package/dist/__tests__/layout/primitives.test.js.map +1 -0
- package/dist/__tests__/lib/cv.test.d.ts +2 -0
- package/dist/__tests__/lib/cv.test.d.ts.map +1 -0
- package/dist/__tests__/lib/cv.test.js +66 -0
- package/dist/__tests__/lib/cv.test.js.map +1 -0
- package/dist/actuate-admin.css +1 -1
- package/dist/assets/actuate-logo.d.ts +36 -0
- package/dist/assets/actuate-logo.d.ts.map +1 -0
- package/dist/assets/actuate-logo.js +15 -0
- package/dist/assets/actuate-logo.js.map +1 -0
- package/dist/components/Breadcrumbs.js +2 -2
- package/dist/components/CommandPalette.js +10 -10
- package/dist/components/ContentOverviewChart.js +3 -3
- package/dist/components/ErrorBoundary.js +1 -1
- package/dist/components/FocalPointPicker.js +2 -2
- package/dist/components/FolderTree.js +20 -20
- package/dist/components/LivePreview.js +3 -3
- package/dist/components/LocaleSwitcher.js +1 -1
- package/dist/components/MediaPickerModal.js +4 -4
- package/dist/components/PresenceIndicator.js +1 -1
- package/dist/components/SEOConfigPanel.d.ts +2 -0
- package/dist/components/SEOConfigPanel.d.ts.map +1 -0
- package/dist/components/SEOConfigPanel.js +174 -0
- package/dist/components/SEOConfigPanel.js.map +1 -0
- package/dist/components/SEOPanel.js +9 -9
- package/dist/components/SEOPerformance.js +2 -2
- package/dist/components/SchedulePublishDialog.d.ts +18 -0
- package/dist/components/SchedulePublishDialog.d.ts.map +1 -0
- package/dist/components/SchedulePublishDialog.js +106 -0
- package/dist/components/SchedulePublishDialog.js.map +1 -0
- package/dist/components/SharePreviewLinkDialog.d.ts +17 -0
- package/dist/components/SharePreviewLinkDialog.d.ts.map +1 -0
- package/dist/components/SharePreviewLinkDialog.js +83 -0
- package/dist/components/SharePreviewLinkDialog.js.map +1 -0
- package/dist/components/TipTapEditor.js +5 -5
- package/dist/components/VersionHistory.js +2 -2
- package/dist/components/ui/Badge.d.ts +33 -3
- package/dist/components/ui/Badge.d.ts.map +1 -1
- package/dist/components/ui/Badge.js +42 -8
- package/dist/components/ui/Badge.js.map +1 -1
- package/dist/components/ui/Button.d.ts +19 -8
- package/dist/components/ui/Button.d.ts.map +1 -1
- package/dist/components/ui/Button.js +35 -14
- package/dist/components/ui/Button.js.map +1 -1
- package/dist/components/ui/Card.d.ts +26 -0
- package/dist/components/ui/Card.d.ts.map +1 -0
- package/dist/components/ui/Card.js +45 -0
- package/dist/components/ui/Card.js.map +1 -0
- package/dist/components/ui/DataTable.js +1 -1
- package/dist/components/ui/Input.d.ts +15 -0
- package/dist/components/ui/Input.d.ts.map +1 -0
- package/dist/components/ui/Input.js +23 -0
- package/dist/components/ui/Input.js.map +1 -0
- package/dist/components/ui/SearchInput.js +1 -1
- package/dist/components/ui/Select.d.ts +16 -0
- package/dist/components/ui/Select.d.ts.map +1 -0
- package/dist/components/ui/Select.js +25 -0
- package/dist/components/ui/Select.js.map +1 -0
- package/dist/components/ui/Toast.js +1 -1
- package/dist/components/ui/index.d.ts +10 -4
- package/dist/components/ui/index.d.ts.map +1 -1
- package/dist/components/ui/index.js +5 -2
- package/dist/components/ui/index.js.map +1 -1
- package/dist/fields/BlockBuilderField.js +3 -3
- package/dist/fields/DateField.js +1 -1
- package/dist/fields/RelationshipField.js +3 -3
- package/dist/fields/TextField.js +1 -1
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/dist/layout/Header.js +1 -1
- package/dist/layout/Layout.d.ts +14 -0
- package/dist/layout/Layout.d.ts.map +1 -1
- package/dist/layout/Layout.js +17 -11
- package/dist/layout/Layout.js.map +1 -1
- package/dist/layout/Sidebar.d.ts.map +1 -1
- package/dist/layout/Sidebar.js +21 -11
- package/dist/layout/Sidebar.js.map +1 -1
- package/dist/layout/primitives/AdminShell.d.ts +43 -0
- package/dist/layout/primitives/AdminShell.d.ts.map +1 -0
- package/dist/layout/primitives/AdminShell.js +51 -0
- package/dist/layout/primitives/AdminShell.js.map +1 -0
- package/dist/layout/primitives/Box.d.ts +19 -0
- package/dist/layout/primitives/Box.d.ts.map +1 -0
- package/dist/layout/primitives/Box.js +12 -0
- package/dist/layout/primitives/Box.js.map +1 -0
- package/dist/layout/primitives/Cluster.d.ts +27 -0
- package/dist/layout/primitives/Cluster.d.ts.map +1 -0
- package/dist/layout/primitives/Cluster.js +37 -0
- package/dist/layout/primitives/Cluster.js.map +1 -0
- package/dist/layout/primitives/Grid.d.ts +45 -0
- package/dist/layout/primitives/Grid.d.ts.map +1 -0
- package/dist/layout/primitives/Grid.js +59 -0
- package/dist/layout/primitives/Grid.js.map +1 -0
- package/dist/layout/primitives/PageContainer.d.ts +36 -0
- package/dist/layout/primitives/PageContainer.d.ts.map +1 -0
- package/dist/layout/primitives/PageContainer.js +41 -0
- package/dist/layout/primitives/PageContainer.js.map +1 -0
- package/dist/layout/primitives/Split.d.ts +34 -0
- package/dist/layout/primitives/Split.d.ts.map +1 -0
- package/dist/layout/primitives/Split.js +27 -0
- package/dist/layout/primitives/Split.js.map +1 -0
- package/dist/layout/primitives/Stack.d.ts +23 -0
- package/dist/layout/primitives/Stack.d.ts.map +1 -0
- package/dist/layout/primitives/Stack.js +34 -0
- package/dist/layout/primitives/Stack.js.map +1 -0
- package/dist/layout/primitives/index.d.ts +30 -0
- package/dist/layout/primitives/index.d.ts.map +1 -0
- package/dist/layout/primitives/index.js +22 -0
- package/dist/layout/primitives/index.js.map +1 -0
- package/dist/layout/primitives/tokens.d.ts +48 -0
- package/dist/layout/primitives/tokens.d.ts.map +1 -0
- package/dist/layout/primitives/tokens.js +54 -0
- package/dist/layout/primitives/tokens.js.map +1 -0
- package/dist/lib/cv.d.ts +53 -0
- package/dist/lib/cv.d.ts.map +1 -0
- package/dist/lib/cv.js +39 -0
- package/dist/lib/cv.js.map +1 -0
- package/dist/views/ApiKeys.d.ts.map +1 -1
- package/dist/views/ApiKeys.js +13 -11
- package/dist/views/ApiKeys.js.map +1 -1
- package/dist/views/CollectionList.js +8 -8
- package/dist/views/Dashboard.d.ts.map +1 -1
- package/dist/views/Dashboard.js +333 -78
- package/dist/views/Dashboard.js.map +1 -1
- package/dist/views/DocumentEdit.d.ts.map +1 -1
- package/dist/views/DocumentEdit.js +17 -5
- package/dist/views/DocumentEdit.js.map +1 -1
- package/dist/views/ForgotPassword.js +2 -2
- package/dist/views/FormEditor.js +5 -5
- package/dist/views/FormSubmissions.js +6 -6
- package/dist/views/Forms.js +2 -2
- package/dist/views/Login.d.ts +16 -1
- package/dist/views/Login.d.ts.map +1 -1
- package/dist/views/Login.js +17 -7
- package/dist/views/Login.js.map +1 -1
- package/dist/views/MediaBrowser.js +16 -16
- package/dist/views/PageEditor.js +2 -2
- package/dist/views/Pages.js +10 -10
- package/dist/views/PostEditor.js +2 -2
- package/dist/views/Posts.js +4 -4
- package/dist/views/Redirects.js +4 -4
- package/dist/views/ResetPassword.js +2 -2
- package/dist/views/SEO.js +6 -6
- package/dist/views/ScriptTagEditor.js +4 -4
- package/dist/views/ScriptTags.js +2 -2
- package/dist/views/Settings.d.ts.map +1 -1
- package/dist/views/Settings.js +9 -8
- package/dist/views/Settings.js.map +1 -1
- package/dist/views/SetupWizard.js +2 -2
- package/dist/views/Users.js +4 -4
- package/dist/views/page-builder/AIBlockAssist.js +1 -1
- package/dist/views/page-builder/AIGenerateDialog.js +10 -10
- package/dist/views/page-builder/BlockEditor.js +10 -10
- package/dist/views/page-builder/BlockPicker.js +4 -4
- package/dist/views/page-builder/BottomBar.js +1 -1
- package/dist/views/page-builder/BuilderToolbar.js +2 -2
- package/dist/views/page-builder/ContextPanel.js +2 -2
- package/dist/views/page-builder/DesignScore.js +9 -9
- package/dist/views/page-builder/NodeSettings.js +8 -8
- package/dist/views/page-builder/PageBuilder.js +3 -3
- package/dist/views/page-builder/PageSettings.js +1 -1
- package/dist/views/page-builder/PageTemplates.js +2 -2
- package/dist/views/page-builder/SEOPanel.js +13 -13
- package/dist/views/page-builder/SavedSections.js +5 -5
- package/dist/views/page-builder/TemplatePicker.js +2 -2
- package/dist/views/page-builder/block-renderers/CTAPreview.js +5 -5
- package/dist/views/page-builder/block-renderers/CardsPreview.js +1 -1
- package/dist/views/page-builder/block-renderers/CodePreview.js +1 -1
- package/dist/views/page-builder/block-renderers/FAQPreview.js +3 -3
- package/dist/views/page-builder/block-renderers/FallbackPreview.js +1 -1
- package/dist/views/page-builder/block-renderers/FormPreview.js +3 -3
- package/dist/views/page-builder/block-renderers/GalleryPreview.js +5 -5
- package/dist/views/page-builder/block-renderers/HeroPreview.js +3 -3
- package/dist/views/page-builder/block-renderers/ImagePreview.js +3 -3
- package/dist/views/page-builder/block-renderers/TextPreview.js +3 -3
- package/dist/views/page-builder/block-renderers/VideoPreview.js +4 -4
- package/dist/views/page-builder/canvas/BlockRenderer.js +1 -1
- package/dist/views/page-builder/canvas/BuilderCanvas.js +3 -3
- package/dist/views/page-builder/canvas/ColumnRenderer.js +2 -2
- package/dist/views/page-builder/canvas/ContainerRenderer.js +2 -2
- package/dist/views/page-builder/canvas/RowRenderer.js +2 -2
- package/dist/views/page-builder/canvas/SectionRenderer.js +2 -2
- package/package.json +6 -2
- package/src/AdminRoot.tsx +21 -11
- package/src/__tests__/layout/primitives.test.ts +37 -0
- package/src/__tests__/lib/cv.test.ts +74 -0
- package/src/assets/actuate-logo.tsx +72 -0
- package/src/components/Breadcrumbs.tsx +6 -6
- package/src/components/CommandPalette.tsx +34 -34
- package/src/components/ContentOverviewChart.tsx +3 -3
- package/src/components/ErrorBoundary.tsx +3 -3
- package/src/components/FocalPointPicker.tsx +4 -4
- package/src/components/FolderTree.tsx +38 -38
- package/src/components/LivePreview.tsx +16 -16
- package/src/components/LocaleSwitcher.tsx +7 -7
- package/src/components/MediaPickerModal.tsx +21 -21
- package/src/components/PresenceIndicator.tsx +2 -2
- package/src/components/SEOConfigPanel.tsx +582 -0
- package/src/components/SEOPanel.tsx +46 -46
- package/src/components/SEOPerformance.tsx +21 -21
- package/src/components/SchedulePublishDialog.tsx +241 -0
- package/src/components/SharePreviewLinkDialog.tsx +227 -0
- package/src/components/TipTapEditor.tsx +33 -33
- package/src/components/VersionHistory.tsx +16 -16
- package/src/components/ui/Badge.tsx +66 -14
- package/src/components/ui/Button.tsx +70 -33
- package/src/components/ui/Card.tsx +101 -0
- package/src/components/ui/DataTable.tsx +1 -1
- package/src/components/ui/Input.tsx +35 -0
- package/src/components/ui/SearchInput.tsx +4 -4
- package/src/components/ui/Select.tsx +56 -0
- package/src/components/ui/Toast.tsx +1 -1
- package/src/components/ui/index.ts +18 -4
- package/src/fields/BlockBuilderField.tsx +3 -3
- package/src/fields/DateField.tsx +1 -1
- package/src/fields/RelationshipField.tsx +10 -10
- package/src/fields/TextField.tsx +1 -1
- package/src/index.ts +32 -0
- package/src/layout/Header.tsx +28 -28
- package/src/layout/Layout.tsx +39 -46
- package/src/layout/Sidebar.tsx +37 -64
- package/src/layout/primitives/AdminShell.tsx +118 -0
- package/src/layout/primitives/Box.tsx +30 -0
- package/src/layout/primitives/Cluster.tsx +74 -0
- package/src/layout/primitives/Grid.tsx +120 -0
- package/src/layout/primitives/PageContainer.tsx +96 -0
- package/src/layout/primitives/Split.tsx +73 -0
- package/src/layout/primitives/Stack.tsx +67 -0
- package/src/layout/primitives/index.ts +36 -0
- package/src/layout/primitives/tokens.ts +76 -0
- package/src/lib/cv.ts +96 -0
- package/src/styles/build-input.css +1 -1
- package/src/views/ApiKeys.tsx +57 -57
- package/src/views/CollectionList.tsx +30 -30
- package/src/views/Dashboard.tsx +737 -186
- package/src/views/DocumentEdit.tsx +90 -10
- package/src/views/ForgotPassword.tsx +18 -18
- package/src/views/FormEditor.tsx +75 -75
- package/src/views/FormSubmissions.tsx +76 -76
- package/src/views/Forms.tsx +27 -27
- package/src/views/Login.tsx +65 -25
- package/src/views/MediaBrowser.tsx +127 -127
- package/src/views/PageEditor.tsx +25 -25
- package/src/views/Pages.tsx +59 -59
- package/src/views/PostEditor.tsx +37 -37
- package/src/views/Posts.tsx +48 -48
- package/src/views/Redirects.tsx +21 -21
- package/src/views/ResetPassword.tsx +28 -28
- package/src/views/SEO.tsx +144 -144
- package/src/views/ScriptTagEditor.tsx +24 -24
- package/src/views/ScriptTags.tsx +10 -10
- package/src/views/Settings.tsx +88 -80
- package/src/views/SetupWizard.tsx +28 -28
- package/src/views/Users.tsx +20 -20
- package/src/views/page-builder/AIBlockAssist.tsx +1 -1
- package/src/views/page-builder/AIGenerateDialog.tsx +63 -63
- package/src/views/page-builder/BlockEditor.tsx +26 -26
- package/src/views/page-builder/BlockPicker.tsx +22 -22
- package/src/views/page-builder/BottomBar.tsx +8 -8
- package/src/views/page-builder/BuilderToolbar.tsx +17 -17
- package/src/views/page-builder/ContextPanel.tsx +3 -3
- package/src/views/page-builder/DesignScore.tsx +21 -21
- package/src/views/page-builder/NodeSettings.tsx +27 -27
- package/src/views/page-builder/PageBuilder.tsx +11 -11
- package/src/views/page-builder/PageSettings.tsx +4 -4
- package/src/views/page-builder/PageTemplates.tsx +18 -18
- package/src/views/page-builder/SEOPanel.tsx +53 -53
- package/src/views/page-builder/SavedSections.tsx +37 -37
- package/src/views/page-builder/TemplatePicker.tsx +17 -17
- package/src/views/page-builder/block-renderers/CTAPreview.tsx +13 -13
- package/src/views/page-builder/block-renderers/CardsPreview.tsx +5 -5
- package/src/views/page-builder/block-renderers/CodePreview.tsx +6 -6
- package/src/views/page-builder/block-renderers/FAQPreview.tsx +13 -13
- package/src/views/page-builder/block-renderers/FallbackPreview.tsx +3 -3
- package/src/views/page-builder/block-renderers/FormPreview.tsx +20 -20
- package/src/views/page-builder/block-renderers/GalleryPreview.tsx +8 -8
- package/src/views/page-builder/block-renderers/HeroPreview.tsx +16 -16
- package/src/views/page-builder/block-renderers/ImagePreview.tsx +4 -4
- package/src/views/page-builder/block-renderers/TextPreview.tsx +14 -14
- package/src/views/page-builder/block-renderers/VideoPreview.tsx +12 -12
- package/src/views/page-builder/canvas/BlockRenderer.tsx +4 -4
- package/src/views/page-builder/canvas/BuilderCanvas.tsx +6 -6
- package/src/views/page-builder/canvas/ColumnRenderer.tsx +3 -3
- package/src/views/page-builder/canvas/ContainerRenderer.tsx +2 -2
- package/src/views/page-builder/canvas/RowRenderer.tsx +2 -2
- package/src/views/page-builder/canvas/SectionRenderer.tsx +2 -2
|
@@ -19,29 +19,29 @@ export function ResetPassword({ onNavigate, token }: ResetPasswordProps) {
|
|
|
19
19
|
|
|
20
20
|
if (!token) {
|
|
21
21
|
return (
|
|
22
|
-
<div className="min-h-screen
|
|
22
|
+
<div className="flex min-h-screen items-center justify-center bg-gray-50 px-4">
|
|
23
23
|
<div className="w-full max-w-md">
|
|
24
|
-
<div className="text-center
|
|
25
|
-
<div className="mx-auto mb-4
|
|
26
|
-
<XCircle className="
|
|
24
|
+
<div className="mb-8 text-center">
|
|
25
|
+
<div className="mx-auto mb-4 flex h-14 w-14 items-center justify-center rounded-xl bg-red-100">
|
|
26
|
+
<XCircle className="h-7 w-7 text-red-600" />
|
|
27
27
|
</div>
|
|
28
28
|
<h1 className="text-2xl font-bold text-gray-900">Invalid Reset Link</h1>
|
|
29
|
-
<p className="text-gray-600
|
|
29
|
+
<p className="mt-2 text-gray-600">
|
|
30
30
|
This password reset link is invalid or has expired.
|
|
31
31
|
</p>
|
|
32
32
|
</div>
|
|
33
|
-
<div className="
|
|
33
|
+
<div className="space-y-4 rounded-xl border border-gray-200 bg-white p-6 text-center shadow-sm">
|
|
34
34
|
<button
|
|
35
35
|
type="button"
|
|
36
36
|
onClick={() => onNavigate('/forgot-password')}
|
|
37
|
-
className="w-full
|
|
37
|
+
className="w-full rounded-lg bg-blue-600 py-2.5 font-medium text-white transition-colors hover:bg-blue-700"
|
|
38
38
|
>
|
|
39
39
|
Request New Reset Link
|
|
40
40
|
</button>
|
|
41
41
|
<button
|
|
42
42
|
type="button"
|
|
43
43
|
onClick={() => onNavigate('/login')}
|
|
44
|
-
className="w-full text-sm text-gray-600 hover:text-gray-800
|
|
44
|
+
className="w-full text-sm text-gray-600 transition-colors hover:text-gray-800"
|
|
45
45
|
>
|
|
46
46
|
Back to Sign In
|
|
47
47
|
</button>
|
|
@@ -81,25 +81,25 @@ export function ResetPassword({ onNavigate, token }: ResetPasswordProps) {
|
|
|
81
81
|
}
|
|
82
82
|
|
|
83
83
|
return (
|
|
84
|
-
<div className="min-h-screen
|
|
84
|
+
<div className="flex min-h-screen items-center justify-center bg-gray-50 px-4">
|
|
85
85
|
<div className="w-full max-w-md">
|
|
86
|
-
<div className="text-center
|
|
87
|
-
<div className="mx-auto mb-4
|
|
88
|
-
<Shield className="
|
|
86
|
+
<div className="mb-8 text-center">
|
|
87
|
+
<div className="mx-auto mb-4 flex h-14 w-14 items-center justify-center rounded-xl bg-blue-600">
|
|
88
|
+
<Shield className="h-7 w-7 text-white" />
|
|
89
89
|
</div>
|
|
90
90
|
<h1 className="text-2xl font-bold text-gray-900">
|
|
91
91
|
{success ? 'Password Reset' : 'Choose New Password'}
|
|
92
92
|
</h1>
|
|
93
|
-
<p className="text-gray-600
|
|
93
|
+
<p className="mt-2 text-gray-600">
|
|
94
94
|
{success ? 'Your password has been updated' : 'Enter your new password below'}
|
|
95
95
|
</p>
|
|
96
96
|
</div>
|
|
97
97
|
|
|
98
|
-
<div className="
|
|
98
|
+
<div className="space-y-5 rounded-xl border border-gray-200 bg-white p-6 shadow-sm">
|
|
99
99
|
{success ? (
|
|
100
|
-
<div className="
|
|
101
|
-
<div className="mx-auto
|
|
102
|
-
<CheckCircle2 className="
|
|
100
|
+
<div className="space-y-4 text-center">
|
|
101
|
+
<div className="mx-auto flex h-12 w-12 items-center justify-center rounded-full bg-green-100">
|
|
102
|
+
<CheckCircle2 className="h-6 w-6 text-green-600" />
|
|
103
103
|
</div>
|
|
104
104
|
<p className="text-sm text-gray-600">
|
|
105
105
|
Your password has been successfully reset. All existing sessions have been revoked
|
|
@@ -108,7 +108,7 @@ export function ResetPassword({ onNavigate, token }: ResetPasswordProps) {
|
|
|
108
108
|
<button
|
|
109
109
|
type="button"
|
|
110
110
|
onClick={() => onNavigate('/login')}
|
|
111
|
-
className="w-full
|
|
111
|
+
className="w-full rounded-lg bg-blue-600 py-2.5 font-medium text-white transition-colors hover:bg-blue-700"
|
|
112
112
|
>
|
|
113
113
|
Sign In with New Password
|
|
114
114
|
</button>
|
|
@@ -116,8 +116,8 @@ export function ResetPassword({ onNavigate, token }: ResetPasswordProps) {
|
|
|
116
116
|
) : (
|
|
117
117
|
<form onSubmit={handleSubmit} className="space-y-5">
|
|
118
118
|
{error && (
|
|
119
|
-
<div className="flex items-start gap-3
|
|
120
|
-
<AlertTriangle className="
|
|
119
|
+
<div className="flex items-start gap-3 rounded-lg border border-red-200 bg-red-50 p-3">
|
|
120
|
+
<AlertTriangle className="mt-0.5 h-5 w-5 shrink-0 text-red-600" />
|
|
121
121
|
<p className="text-sm text-red-800">{error}</p>
|
|
122
122
|
</div>
|
|
123
123
|
)}
|
|
@@ -125,7 +125,7 @@ export function ResetPassword({ onNavigate, token }: ResetPasswordProps) {
|
|
|
125
125
|
<div>
|
|
126
126
|
<label
|
|
127
127
|
htmlFor="reset-password"
|
|
128
|
-
className="block text-sm font-medium text-gray-700
|
|
128
|
+
className="mb-1.5 block text-sm font-medium text-gray-700"
|
|
129
129
|
>
|
|
130
130
|
New Password
|
|
131
131
|
</label>
|
|
@@ -136,7 +136,7 @@ export function ResetPassword({ onNavigate, token }: ResetPasswordProps) {
|
|
|
136
136
|
value={password}
|
|
137
137
|
onChange={(e) => setPassword(e.target.value)}
|
|
138
138
|
placeholder="Enter new password"
|
|
139
|
-
className="w-full px-3 py-2.5 pr-10
|
|
139
|
+
className="w-full rounded-lg border border-gray-300 px-3 py-2.5 pr-10 text-sm focus:border-blue-500 focus:ring-2 focus:ring-blue-500 focus:outline-none"
|
|
140
140
|
required
|
|
141
141
|
autoFocus
|
|
142
142
|
autoComplete="new-password"
|
|
@@ -145,10 +145,10 @@ export function ResetPassword({ onNavigate, token }: ResetPasswordProps) {
|
|
|
145
145
|
<button
|
|
146
146
|
type="button"
|
|
147
147
|
onClick={() => setShowPassword(!showPassword)}
|
|
148
|
-
className="absolute
|
|
148
|
+
className="absolute top-1/2 right-3 -translate-y-1/2 text-gray-400 hover:text-gray-600"
|
|
149
149
|
tabIndex={-1}
|
|
150
150
|
>
|
|
151
|
-
{showPassword ? <EyeOff className="
|
|
151
|
+
{showPassword ? <EyeOff className="h-4 w-4" /> : <Eye className="h-4 w-4" />}
|
|
152
152
|
</button>
|
|
153
153
|
</div>
|
|
154
154
|
{password && !meetsLength && (
|
|
@@ -161,7 +161,7 @@ export function ResetPassword({ onNavigate, token }: ResetPasswordProps) {
|
|
|
161
161
|
<div>
|
|
162
162
|
<label
|
|
163
163
|
htmlFor="reset-confirm"
|
|
164
|
-
className="block text-sm font-medium text-gray-700
|
|
164
|
+
className="mb-1.5 block text-sm font-medium text-gray-700"
|
|
165
165
|
>
|
|
166
166
|
Confirm Password
|
|
167
167
|
</label>
|
|
@@ -171,7 +171,7 @@ export function ResetPassword({ onNavigate, token }: ResetPasswordProps) {
|
|
|
171
171
|
value={confirmPassword}
|
|
172
172
|
onChange={(e) => setConfirmPassword(e.target.value)}
|
|
173
173
|
placeholder="Confirm new password"
|
|
174
|
-
className="w-full
|
|
174
|
+
className="w-full rounded-lg border border-gray-300 px-3 py-2.5 text-sm focus:border-blue-500 focus:ring-2 focus:ring-blue-500 focus:outline-none"
|
|
175
175
|
required
|
|
176
176
|
autoComplete="new-password"
|
|
177
177
|
/>
|
|
@@ -183,11 +183,11 @@ export function ResetPassword({ onNavigate, token }: ResetPasswordProps) {
|
|
|
183
183
|
<button
|
|
184
184
|
type="submit"
|
|
185
185
|
disabled={!canSubmit}
|
|
186
|
-
className="w-full
|
|
186
|
+
className="flex w-full items-center justify-center gap-2 rounded-lg bg-blue-600 py-2.5 font-medium text-white transition-colors hover:bg-blue-700 disabled:cursor-not-allowed disabled:opacity-50"
|
|
187
187
|
>
|
|
188
188
|
{submitting ? (
|
|
189
189
|
<>
|
|
190
|
-
<Loader2 className="
|
|
190
|
+
<Loader2 className="h-4 w-4 animate-spin" />
|
|
191
191
|
Resetting...
|
|
192
192
|
</>
|
|
193
193
|
) : (
|