kaze 0.8.0 → 0.9.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/kaze/commands/install_command.rb +3 -1
- data/lib/kaze/commands/installs_hotwire_stack.rb +2 -2
- data/lib/kaze/commands/installs_inertia_stacks.rb +7 -7
- data/lib/kaze/version.rb +1 -1
- data/stubs/default/app/mailers/application_mailer.rb +1 -1
- data/stubs/default/app/mailers/user_mailer.rb +16 -1
- data/stubs/default/app/models/concerns/can_reset_password.rb +1 -1
- data/stubs/default/app/models/concerns/must_verify_email.rb +15 -0
- data/stubs/default/app/models/user.rb +1 -0
- data/stubs/default/app/views/user_mailer/reset_password.html.erb +2 -2
- data/stubs/default/app/views/user_mailer/verify_email.html.erb +33 -0
- data/stubs/default/config/routes.rb +4 -0
- data/stubs/default/db/migrate/20240101000000_create_users.rb +1 -0
- data/stubs/default/test/factories/users.rb +5 -0
- data/stubs/default/test/integration/auth/authentication_test.rb +4 -6
- data/stubs/default/test/integration/auth/email_verification_test.rb +40 -0
- data/stubs/default/test/integration/auth/password_reset_test.rb +3 -3
- data/stubs/default/test/integration/password_update_test.rb +2 -2
- data/stubs/default/test/integration/profile_test.rb +4 -4
- data/stubs/hotwire/app/components/modal_component.rb +5 -5
- data/stubs/hotwire/app/controllers/auth/authenticated_session_controller.rb +3 -2
- data/stubs/hotwire/app/controllers/auth/email_verification_notification_controller.rb +21 -0
- data/stubs/hotwire/app/controllers/auth/new_password_controller.rb +2 -2
- data/stubs/hotwire/app/controllers/auth/password_reset_link_controller.rb +1 -1
- data/stubs/hotwire/app/controllers/auth/registered_user_controller.rb +6 -2
- data/stubs/hotwire/app/controllers/auth/verified_email_controller.rb +23 -0
- data/stubs/hotwire/app/controllers/concerns/authenticate.rb +10 -0
- data/stubs/hotwire/app/controllers/concerns/validate_signature.rb +17 -0
- data/stubs/hotwire/app/controllers/password_controller.rb +1 -1
- data/stubs/hotwire/app/controllers/profile_controller.rb +2 -2
- data/stubs/hotwire/app/views/auth/verify_email.html.erb +23 -0
- data/stubs/hotwire/app/views/profile/partials/_delete_user_form.html.erb +1 -1
- data/stubs/inertia-common/app/controllers/auth/authenticated_session_controller.rb +3 -3
- data/stubs/inertia-common/app/controllers/auth/email_verification_notification_controller.rb +21 -0
- data/stubs/inertia-common/app/controllers/auth/new_password_controller.rb +2 -3
- data/stubs/inertia-common/app/controllers/auth/password_reset_link_controller.rb +3 -3
- data/stubs/inertia-common/app/controllers/auth/registered_user_controller.rb +6 -2
- data/stubs/inertia-common/app/controllers/auth/verified_email_controller.rb +23 -0
- data/stubs/inertia-common/app/controllers/concerns/authenticate.rb +10 -0
- data/stubs/inertia-common/app/controllers/concerns/validate_signature.rb +17 -0
- data/stubs/inertia-common/app/controllers/password_controller.rb +1 -1
- data/stubs/inertia-common/app/controllers/profile_controller.rb +2 -2
- data/stubs/inertia-common/test/integration/password_update_test.rb +2 -2
- data/stubs/inertia-common/test/integration/profile_test.rb +4 -4
- data/stubs/inertia-react-ts/app/javascript/Components/Checkbox.tsx +1 -4
- data/stubs/inertia-react-ts/app/javascript/Components/DangerButton.tsx +3 -5
- data/stubs/inertia-react-ts/app/javascript/Components/Dropdown.tsx +4 -25
- data/stubs/inertia-react-ts/app/javascript/Components/InputError.tsx +1 -4
- data/stubs/inertia-react-ts/app/javascript/Components/InputLabel.tsx +1 -4
- data/stubs/inertia-react-ts/app/javascript/Components/NavLink.tsx +3 -5
- data/stubs/inertia-react-ts/app/javascript/Components/PrimaryButton.tsx +3 -5
- data/stubs/inertia-react-ts/app/javascript/Components/SecondaryButton.tsx +3 -5
- data/stubs/inertia-react-ts/app/javascript/Components/TextInput.tsx +1 -7
- data/stubs/inertia-react-ts/app/javascript/Layouts/AuthenticatedLayout.tsx +14 -52
- data/stubs/inertia-react-ts/app/javascript/Pages/Auth/ForgotPassword.tsx +3 -6
- data/stubs/inertia-react-ts/app/javascript/Pages/Auth/Login.tsx +9 -23
- data/stubs/inertia-react-ts/app/javascript/Pages/Auth/Register.tsx +1 -4
- data/stubs/inertia-react-ts/app/javascript/Pages/Auth/ResetPassword.tsx +1 -4
- data/stubs/inertia-react-ts/app/javascript/Pages/Auth/VerifyEmail.tsx +47 -0
- data/stubs/inertia-react-ts/app/javascript/Pages/Dashboard.tsx +2 -8
- data/stubs/inertia-react-ts/app/javascript/Pages/Profile/Edit.tsx +1 -5
- data/stubs/inertia-react-ts/app/javascript/Pages/Profile/Partials/DeleteUserForm.tsx +7 -19
- data/stubs/inertia-react-ts/app/javascript/Pages/Profile/Partials/UpdatePasswordForm.tsx +7 -15
- data/stubs/inertia-react-ts/app/javascript/Pages/Profile/Partials/UpdateProfileInformationForm.tsx +7 -16
- data/stubs/inertia-react-ts/app/javascript/Pages/Welcome.tsx +1 -2
- data/stubs/inertia-react-ts/app/javascript/entrypoints/application.tsx +1 -5
- data/stubs/inertia-react-ts/config/tailwind.config.js +1 -6
- data/stubs/inertia-vue-ts/app/javascript/Components/ApplicationLogo.vue +3 -1
- data/stubs/inertia-vue-ts/app/javascript/Components/Dropdown.vue +1 -4
- data/stubs/inertia-vue-ts/app/javascript/Components/Modal.vue +3 -13
- data/stubs/inertia-vue-ts/app/javascript/Layouts/AuthenticatedLayout.vue +10 -45
- data/stubs/inertia-vue-ts/app/javascript/Layouts/GuestLayout.vue +2 -6
- data/stubs/inertia-vue-ts/app/javascript/Pages/Auth/ForgotPassword.vue +4 -11
- data/stubs/inertia-vue-ts/app/javascript/Pages/Auth/Login.vue +2 -10
- data/stubs/inertia-vue-ts/app/javascript/Pages/Auth/Register.vue +1 -5
- data/stubs/inertia-vue-ts/app/javascript/Pages/Auth/ResetPassword.vue +1 -4
- data/stubs/inertia-vue-ts/app/javascript/Pages/Auth/VerifyEmail.vue +50 -0
- data/stubs/inertia-vue-ts/app/javascript/Pages/Dashboard.vue +3 -11
- data/stubs/inertia-vue-ts/app/javascript/Pages/Profile/Edit.vue +2 -10
- data/stubs/inertia-vue-ts/app/javascript/Pages/Profile/Partials/DeleteUserForm.vue +5 -9
- data/stubs/inertia-vue-ts/app/javascript/Pages/Profile/Partials/UpdatePasswordForm.vue +2 -9
- data/stubs/inertia-vue-ts/app/javascript/Pages/Profile/Partials/UpdateProfileInformationForm.vue +3 -13
- data/stubs/inertia-vue-ts/app/javascript/Pages/Welcome.vue +2 -5
- data/stubs/inertia-vue-ts/config/tailwind.config.js +1 -6
- metadata +14 -2
@@ -43,14 +43,11 @@ const closeModal = () => {
|
|
43
43
|
<template>
|
44
44
|
<section class="space-y-6">
|
45
45
|
<header>
|
46
|
-
<h2 class="text-lg font-medium text-gray-900 dark:text-gray-100">
|
47
|
-
Delete Account
|
48
|
-
</h2>
|
46
|
+
<h2 class="text-lg font-medium text-gray-900 dark:text-gray-100">Delete Account</h2>
|
49
47
|
|
50
48
|
<p class="mt-1 text-sm text-gray-600 dark:text-gray-400">
|
51
|
-
Once your account is deleted, all of its resources and data will be
|
52
|
-
|
53
|
-
data or information that you wish to retain.
|
49
|
+
Once your account is deleted, all of its resources and data will be permanently deleted. Before deleting your
|
50
|
+
account, please download any data or information that you wish to retain.
|
54
51
|
</p>
|
55
52
|
</header>
|
56
53
|
|
@@ -63,9 +60,8 @@ const closeModal = () => {
|
|
63
60
|
</h2>
|
64
61
|
|
65
62
|
<p class="mt-1 text-sm text-gray-600 dark:text-gray-400">
|
66
|
-
Once your account is deleted, all of its resources and data will be
|
67
|
-
|
68
|
-
like to permanently delete your account.
|
63
|
+
Once your account is deleted, all of its resources and data will be permanently deleted. Please enter your
|
64
|
+
password to confirm you would like to permanently delete your account.
|
69
65
|
</p>
|
70
66
|
|
71
67
|
<div class="mt-6">
|
@@ -39,9 +39,7 @@ const updatePassword = () => {
|
|
39
39
|
<template>
|
40
40
|
<section>
|
41
41
|
<header>
|
42
|
-
<h2 class="text-lg font-medium text-gray-900 dark:text-gray-100">
|
43
|
-
Update Password
|
44
|
-
</h2>
|
42
|
+
<h2 class="text-lg font-medium text-gray-900 dark:text-gray-100">Update Password</h2>
|
45
43
|
|
46
44
|
<p class="mt-1 text-sm text-gray-600 dark:text-gray-400">
|
47
45
|
Ensure your account is using a long, random password to stay secure.
|
@@ -102,12 +100,7 @@ const updatePassword = () => {
|
|
102
100
|
leave-active-class="transition ease-in-out"
|
103
101
|
leave-to-class="opacity-0"
|
104
102
|
>
|
105
|
-
<p
|
106
|
-
v-if="form.recentlySuccessful"
|
107
|
-
class="text-sm text-gray-600 dark:text-gray-400"
|
108
|
-
>
|
109
|
-
Saved.
|
110
|
-
</p>
|
103
|
+
<p v-if="form.recentlySuccessful" class="text-sm text-gray-600 dark:text-gray-400">Saved.</p>
|
111
104
|
</Transition>
|
112
105
|
</div>
|
113
106
|
</form>
|
data/stubs/inertia-vue-ts/app/javascript/Pages/Profile/Partials/UpdateProfileInformationForm.vue
CHANGED
@@ -22,19 +22,14 @@ const form = useForm({
|
|
22
22
|
<template>
|
23
23
|
<section>
|
24
24
|
<header>
|
25
|
-
<h2 class="text-lg font-medium text-gray-900 dark:text-gray-100">
|
26
|
-
Profile Information
|
27
|
-
</h2>
|
25
|
+
<h2 class="text-lg font-medium text-gray-900 dark:text-gray-100">Profile Information</h2>
|
28
26
|
|
29
27
|
<p class="mt-1 text-sm text-gray-600 dark:text-gray-400">
|
30
28
|
Update your account's profile information and email address.
|
31
29
|
</p>
|
32
30
|
</header>
|
33
31
|
|
34
|
-
<form
|
35
|
-
@submit.prevent="form.patch(profile_update_path())"
|
36
|
-
class="mt-6 space-y-6"
|
37
|
-
>
|
32
|
+
<form @submit.prevent="form.patch(profile_update_path())" class="mt-6 space-y-6">
|
38
33
|
<div>
|
39
34
|
<InputLabel for="name" value="Name" />
|
40
35
|
|
@@ -75,12 +70,7 @@ const form = useForm({
|
|
75
70
|
leave-active-class="transition ease-in-out"
|
76
71
|
leave-to-class="opacity-0"
|
77
72
|
>
|
78
|
-
<p
|
79
|
-
v-if="form.recentlySuccessful"
|
80
|
-
class="text-sm text-gray-600 dark:text-gray-400"
|
81
|
-
>
|
82
|
-
Saved.
|
83
|
-
</p>
|
73
|
+
<p v-if="form.recentlySuccessful" class="text-sm text-gray-600 dark:text-gray-400">Saved.</p>
|
84
74
|
</Transition>
|
85
75
|
</div>
|
86
76
|
</form>
|
@@ -18,9 +18,7 @@ defineProps<{
|
|
18
18
|
font-size: calc(0.9em + 0.5vw);
|
19
19
|
"
|
20
20
|
>
|
21
|
-
<header
|
22
|
-
class="absolute top-0 right-0 grid grid-cols-2 items-center gap-2 py-10 lg:grid-cols-3"
|
23
|
-
>
|
21
|
+
<header class="absolute top-0 right-0 grid grid-cols-2 items-center gap-2 py-10 lg:grid-cols-3">
|
24
22
|
<div class="-mx-3 flex flex-1 justify-end">
|
25
23
|
<Link
|
26
24
|
:href="dashboard_path()"
|
@@ -63,8 +61,7 @@ defineProps<{
|
|
63
61
|
target="_blank"
|
64
62
|
style="
|
65
63
|
transition: background 0.25s cubic-bezier(0.33, 1, 0.68, 1);
|
66
|
-
filter: drop-shadow(0 20px 13px rgb(0 0 0 / 0.03))
|
67
|
-
drop-shadow(0 8px 5px rgb(0 0 0 / 0.08));
|
64
|
+
filter: drop-shadow(0 20px 13px rgb(0 0 0 / 0.03)) drop-shadow(0 8px 5px rgb(0 0 0 / 0.08));
|
68
65
|
"
|
69
66
|
>
|
70
67
|
<img
|
@@ -3,12 +3,7 @@ import forms from '@tailwindcss/forms'
|
|
3
3
|
|
4
4
|
/** @type {import('tailwindcss').Config} */
|
5
5
|
export default {
|
6
|
-
content: [
|
7
|
-
'./public/*.html',
|
8
|
-
'./app/helpers/**/*.rb',
|
9
|
-
'./app/views/**/*',
|
10
|
-
'./app/javascript/**/*.vue',
|
11
|
-
],
|
6
|
+
content: ['./public/*.html', './app/helpers/**/*.rb', './app/views/**/*', './app/javascript/**/*.vue'],
|
12
7
|
|
13
8
|
theme: {
|
14
9
|
extend: {
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kaze
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.9.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Cuong Giang
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-06-
|
11
|
+
date: 2024-06-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -84,6 +84,7 @@ files:
|
|
84
84
|
- stubs/default/app/mailers/user_mailer.rb
|
85
85
|
- stubs/default/app/models/application_record.rb
|
86
86
|
- stubs/default/app/models/concerns/can_reset_password.rb
|
87
|
+
- stubs/default/app/models/concerns/must_verify_email.rb
|
87
88
|
- stubs/default/app/models/current.rb
|
88
89
|
- stubs/default/app/models/session_guard.rb
|
89
90
|
- stubs/default/app/models/user.rb
|
@@ -94,12 +95,14 @@ files:
|
|
94
95
|
- stubs/default/app/views/layouts/mailer.html.erb
|
95
96
|
- stubs/default/app/views/layouts/mailer.text.erb
|
96
97
|
- stubs/default/app/views/user_mailer/reset_password.html.erb
|
98
|
+
- stubs/default/app/views/user_mailer/verify_email.html.erb
|
97
99
|
- stubs/default/bin/dev
|
98
100
|
- stubs/default/config/routes.rb
|
99
101
|
- stubs/default/db/migrate/20240101000000_create_users.rb
|
100
102
|
- stubs/default/db/migrate/20240101000001_create_delayed_jobs.rb
|
101
103
|
- stubs/default/test/factories/users.rb
|
102
104
|
- stubs/default/test/integration/auth/authentication_test.rb
|
105
|
+
- stubs/default/test/integration/auth/email_verification_test.rb
|
103
106
|
- stubs/default/test/integration/auth/password_reset_test.rb
|
104
107
|
- stubs/default/test/integration/auth/registration_test.rb
|
105
108
|
- stubs/default/test/integration/password_update_test.rb
|
@@ -122,12 +125,15 @@ files:
|
|
122
125
|
- stubs/hotwire/app/components/text_input_component.rb
|
123
126
|
- stubs/hotwire/app/controllers/application_controller.rb
|
124
127
|
- stubs/hotwire/app/controllers/auth/authenticated_session_controller.rb
|
128
|
+
- stubs/hotwire/app/controllers/auth/email_verification_notification_controller.rb
|
125
129
|
- stubs/hotwire/app/controllers/auth/new_password_controller.rb
|
126
130
|
- stubs/hotwire/app/controllers/auth/password_reset_link_controller.rb
|
127
131
|
- stubs/hotwire/app/controllers/auth/registered_user_controller.rb
|
132
|
+
- stubs/hotwire/app/controllers/auth/verified_email_controller.rb
|
128
133
|
- stubs/hotwire/app/controllers/concerns/authenticate.rb
|
129
134
|
- stubs/hotwire/app/controllers/concerns/redirect_if_authenticated.rb
|
130
135
|
- stubs/hotwire/app/controllers/concerns/set_current_auth.rb
|
136
|
+
- stubs/hotwire/app/controllers/concerns/validate_signature.rb
|
131
137
|
- stubs/hotwire/app/controllers/dashboard_controller.rb
|
132
138
|
- stubs/hotwire/app/controllers/password_controller.rb
|
133
139
|
- stubs/hotwire/app/controllers/profile_controller.rb
|
@@ -138,6 +144,7 @@ files:
|
|
138
144
|
- stubs/hotwire/app/views/auth/login.html.erb
|
139
145
|
- stubs/hotwire/app/views/auth/register.html.erb
|
140
146
|
- stubs/hotwire/app/views/auth/reset_password.html.erb
|
147
|
+
- stubs/hotwire/app/views/auth/verify_email.html.erb
|
141
148
|
- stubs/hotwire/app/views/dashboard/index.html.erb
|
142
149
|
- stubs/hotwire/app/views/layouts/_navigation.html.erb
|
143
150
|
- stubs/hotwire/app/views/layouts/application.html.erb
|
@@ -151,13 +158,16 @@ files:
|
|
151
158
|
- stubs/hotwire/config/tailwind.config.js
|
152
159
|
- stubs/inertia-common/app/controllers/application_controller.rb
|
153
160
|
- stubs/inertia-common/app/controllers/auth/authenticated_session_controller.rb
|
161
|
+
- stubs/inertia-common/app/controllers/auth/email_verification_notification_controller.rb
|
154
162
|
- stubs/inertia-common/app/controllers/auth/new_password_controller.rb
|
155
163
|
- stubs/inertia-common/app/controllers/auth/password_reset_link_controller.rb
|
156
164
|
- stubs/inertia-common/app/controllers/auth/registered_user_controller.rb
|
165
|
+
- stubs/inertia-common/app/controllers/auth/verified_email_controller.rb
|
157
166
|
- stubs/inertia-common/app/controllers/concerns/authenticate.rb
|
158
167
|
- stubs/inertia-common/app/controllers/concerns/handle_inertia_requests.rb
|
159
168
|
- stubs/inertia-common/app/controllers/concerns/redirect_if_authenticated.rb
|
160
169
|
- stubs/inertia-common/app/controllers/concerns/set_current_auth.rb
|
170
|
+
- stubs/inertia-common/app/controllers/concerns/validate_signature.rb
|
161
171
|
- stubs/inertia-common/app/controllers/concerns/verify_csrf_token.rb
|
162
172
|
- stubs/inertia-common/app/controllers/dashboard_controller.rb
|
163
173
|
- stubs/inertia-common/app/controllers/password_controller.rb
|
@@ -185,6 +195,7 @@ files:
|
|
185
195
|
- stubs/inertia-react-ts/app/javascript/Pages/Auth/Login.tsx
|
186
196
|
- stubs/inertia-react-ts/app/javascript/Pages/Auth/Register.tsx
|
187
197
|
- stubs/inertia-react-ts/app/javascript/Pages/Auth/ResetPassword.tsx
|
198
|
+
- stubs/inertia-react-ts/app/javascript/Pages/Auth/VerifyEmail.tsx
|
188
199
|
- stubs/inertia-react-ts/app/javascript/Pages/Dashboard.tsx
|
189
200
|
- stubs/inertia-react-ts/app/javascript/Pages/Profile/Edit.tsx
|
190
201
|
- stubs/inertia-react-ts/app/javascript/Pages/Profile/Partials/DeleteUserForm.tsx
|
@@ -220,6 +231,7 @@ files:
|
|
220
231
|
- stubs/inertia-vue-ts/app/javascript/Pages/Auth/Login.vue
|
221
232
|
- stubs/inertia-vue-ts/app/javascript/Pages/Auth/Register.vue
|
222
233
|
- stubs/inertia-vue-ts/app/javascript/Pages/Auth/ResetPassword.vue
|
234
|
+
- stubs/inertia-vue-ts/app/javascript/Pages/Auth/VerifyEmail.vue
|
223
235
|
- stubs/inertia-vue-ts/app/javascript/Pages/Dashboard.vue
|
224
236
|
- stubs/inertia-vue-ts/app/javascript/Pages/Profile/Edit.vue
|
225
237
|
- stubs/inertia-vue-ts/app/javascript/Pages/Profile/Partials/DeleteUserForm.vue
|