lesli_shield 0.1.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/lesli_shield/application.js +1 -4415
  3. data/app/assets/javascripts/lesli_shield/confirmations.js +1 -47
  4. data/app/assets/javascripts/lesli_shield/passwords.js +1 -699
  5. data/app/assets/javascripts/lesli_shield/registrations.js +1 -699
  6. data/app/assets/javascripts/lesli_shield/sessions.js +1 -699
  7. data/app/assets/stylesheets/lesli_shield/application.css +0 -3
  8. data/app/assets/stylesheets/lesli_shield/confirmations.css +0 -19218
  9. data/app/assets/stylesheets/lesli_shield/devise/oauth.css +1 -0
  10. data/app/assets/stylesheets/lesli_shield/passwords.css +1 -19202
  11. data/app/assets/stylesheets/lesli_shield/registrations.css +1 -19588
  12. data/app/assets/stylesheets/lesli_shield/sessions.css +1 -19588
  13. data/app/assets/stylesheets/lesli_shield/users.css +1 -0
  14. data/app/controllers/lesli_shield/application_controller.rb +2 -2
  15. data/app/controllers/lesli_shield/dashboards_controller.rb +8 -1
  16. data/app/controllers/lesli_shield/role/actions_controller.rb +13 -0
  17. data/app/controllers/lesli_shield/roles_controller.rb +182 -0
  18. data/app/controllers/lesli_shield/sessions_controller.rb +67 -0
  19. data/app/controllers/lesli_shield/settings_controller.rb +61 -0
  20. data/app/controllers/lesli_shield/users_controller.rb +90 -0
  21. data/app/controllers/users/confirmations_controller.rb +2 -1
  22. data/app/controllers/users/passwords_controller.rb +31 -35
  23. data/app/controllers/users/registrations_controller.rb +28 -33
  24. data/app/controllers/users/sessions_controller.rb +38 -48
  25. data/app/helpers/lesli_shield/sessions_helper.rb +4 -0
  26. data/app/helpers/lesli_shield/settings_helper.rb +4 -0
  27. data/app/helpers/lesli_shield/users_helper.rb +4 -0
  28. data/app/interfaces/lesli_shield/authentication_interface.rb +64 -0
  29. data/app/interfaces/lesli_shield/authorization_interface.rb +40 -0
  30. data/app/models/lesli_shield/application_record.rb +3 -3
  31. data/app/models/lesli_shield/setting.rb +4 -0
  32. data/app/models/lesli_shield/user.rb +5 -0
  33. data/app/views/devise/confirmations/new.html.erb +14 -0
  34. data/app/views/devise/passwords/edit.html.erb +27 -69
  35. data/app/views/devise/passwords/new.html.erb +31 -73
  36. data/app/views/devise/registrations/new.html.erb +43 -97
  37. data/app/views/devise/sessions/new.html.erb +48 -68
  38. data/app/views/devise/shared/_demo.html.erb +6 -7
  39. data/app/views/devise/shared/_error_messages.html.erb +27 -13
  40. data/app/views/devise/shared/_links.html.erb +1 -1
  41. data/app/views/lesli_shield/dashboards/index.html.erb +8 -0
  42. data/app/views/lesli_shield/dashboards/show.html.erb +1 -1
  43. data/{db/migrate/v1/0801050210_create_lesli_shield_dashboard_components.rb → app/views/lesli_shield/partials/_navigation.html.erb} +7 -21
  44. data/app/views/lesli_shield/roles/_form-information.html.erb +21 -0
  45. data/app/views/lesli_shield/roles/_form-privileges.html.erb +78 -0
  46. data/app/views/lesli_shield/roles/_session.html.erb +2 -0
  47. data/app/views/lesli_shield/roles/edit.html.erb +12 -0
  48. data/app/views/lesli_shield/roles/index.html.erb +45 -0
  49. data/app/views/lesli_shield/roles/new.html.erb +11 -0
  50. data/app/views/lesli_shield/roles/show.html.erb +13 -0
  51. data/app/views/lesli_shield/roles/update.turbo_stream.erb +3 -0
  52. data/app/views/lesli_shield/sessions/_form.html.erb +17 -0
  53. data/app/views/lesli_shield/sessions/_session.html.erb +2 -0
  54. data/app/views/lesli_shield/sessions/edit.html.erb +12 -0
  55. data/app/views/lesli_shield/sessions/index.html.erb +37 -0
  56. data/app/views/lesli_shield/sessions/new.html.erb +11 -0
  57. data/app/views/lesli_shield/sessions/show.html.erb +6 -0
  58. data/app/views/lesli_shield/settings/_form.html.erb +17 -0
  59. data/app/views/lesli_shield/settings/_setting.html.erb +2 -0
  60. data/app/views/lesli_shield/settings/edit.html.erb +12 -0
  61. data/app/views/lesli_shield/settings/index.html.erb +16 -0
  62. data/app/views/lesli_shield/settings/new.html.erb +11 -0
  63. data/app/views/lesli_shield/settings/show.html.erb +9 -0
  64. data/app/views/lesli_shield/users/_information-card.html.erb +49 -0
  65. data/app/views/lesli_shield/users/_information-form.html.erb +12 -0
  66. data/app/views/lesli_shield/users/_management-sessions.html.erb +27 -0
  67. data/app/views/lesli_shield/users/_viewer-activities.html.erb +5 -0
  68. data/app/views/lesli_shield/users/edit.html.erb +0 -0
  69. data/app/views/lesli_shield/users/index.html.erb +45 -0
  70. data/app/views/lesli_shield/users/new.html.erb +11 -0
  71. data/app/views/lesli_shield/users/show.html.erb +27 -0
  72. data/app/views/lesli_shield/users/update.turbo_stream.erb +3 -0
  73. data/config/locales/translations.en.yml +1 -20
  74. data/config/locales/translations.es.yml +1 -20
  75. data/config/locales/translations.fr.yml +1 -20
  76. data/config/locales/translations.it.yml +1 -20
  77. data/config/locales/translations.pt.yml +1 -20
  78. data/config/routes.rb +33 -8
  79. data/db/migrate/v1/0801000110_create_lesli_shield_accounts.rb +3 -8
  80. data/db/migrate/v1/0801001710_create_lesli_shield_settings.rb +37 -0
  81. data/db/migrate/v1/{0801050110_create_lesli_shield_dashboards.rb → 0801003010_create_lesli_shield_dashboards.rb} +3 -17
  82. data/db/migrate/v1/0801120310_create_lesli_shield_user_shortcuts.rb +44 -0
  83. data/db/migrate/v1/0801120410_create_lesli_shield_user_tokens.rb +46 -0
  84. data/lib/lesli_shield/engine.rb +1 -1
  85. data/lib/lesli_shield/routing.rb +0 -3
  86. data/lib/lesli_shield/version.rb +2 -2
  87. data/lib/scss/_devise-simple.scss +90 -0
  88. data/lib/scss/_devise.scss +162 -0
  89. data/lib/scss/application.scss +6 -0
  90. data/lib/scss/confirmations.scss +24 -24
  91. data/lib/scss/devise/oauth.scss +1 -1
  92. data/lib/scss/passwords.scss +4 -2
  93. data/lib/scss/registrations.scss +2 -2
  94. data/lib/scss/sessions.scss +2 -2
  95. data/lib/scss/users.scss +58 -0
  96. data/lib/tasks/lesli_shield_tasks.rake +49 -4
  97. data/lib/vue/application.js +7 -0
  98. data/lib/vue/apps/sessions/index.vue +50 -0
  99. data/lib/vue/stores/sessions.js +43 -0
  100. data/lib/vue/stores/translations.json +10 -0
  101. data/readme.md +3 -3
  102. metadata +65 -29
  103. data/app/views/layouts/lesli_shield/application.html.erb +0 -15
@@ -0,0 +1,43 @@
1
+ /*
2
+ Copyright (c) 2022, all rights reserved.
3
+
4
+ All the information provided by this platform is protected by international laws related to
5
+ industrial property, intellectual property, copyright and relative international laws.
6
+ All intellectual or industrial property rights of the code, texts, trade mark, design,
7
+ pictures and any other information belongs to the owner of this platform.
8
+
9
+ Without the written permission of the owner, any replication, modification,
10
+ transmission, publication is strictly forbidden.
11
+
12
+ For more information read the license file including with this software.
13
+
14
+ // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
15
+ // ·
16
+ */
17
+
18
+
19
+ // ·
20
+ import { defineStore } from "pinia"
21
+
22
+
23
+ // ·
24
+ export const useSessions = defineStore("shield.sessions", {
25
+ state: () => {
26
+ return {
27
+ sessions: {
28
+ pagination: {},
29
+ records: {}
30
+ }
31
+ }
32
+ },
33
+ actions: {
34
+
35
+ get() {
36
+ this.http.get(this.url.shield("sessions")).then(result => {
37
+ this.sessions = result
38
+ }).catch(error => {
39
+ console.log(error)
40
+ })
41
+ }
42
+ }
43
+ })
@@ -20,6 +20,8 @@
20
20
  "button_save": "Save",
21
21
  "button_settings": "Settings",
22
22
  "button_show": "Show",
23
+ "message_operation_error": "Operation failed. Please try again.",
24
+ "message_operation_success": "Operation completed successfully",
23
25
  "toolbar_search": "Search...",
24
26
  "view_discussions": "Discussions",
25
27
  "view_files": "Files",
@@ -50,6 +52,8 @@
50
52
  "button_save": "Guardar",
51
53
  "button_settings": "Configuración",
52
54
  "button_show": "Ver",
55
+ "message_operation_error": "Operación fallida. Por favor, inténtelo de nuevo.",
56
+ "message_operation_success": "Operacion realizada satisfactoriamente",
53
57
  "toolbar_search": "Buscar...",
54
58
  "view_discussions": "Discusiones",
55
59
  "view_files": "Archivos",
@@ -80,6 +84,8 @@
80
84
  "button_save": ":lesli.shared.button_save:",
81
85
  "button_settings": ":lesli.shared.button_settings:",
82
86
  "button_show": ":lesli.shared.button_show:",
87
+ "message_operation_error": ":lesli.shared.message_operation_error:",
88
+ "message_operation_success": ":lesli.shared.message_operation_success:",
83
89
  "toolbar_search": ":lesli.shared.toolbar_search:",
84
90
  "view_discussions": ":lesli.shared.view_discussions:",
85
91
  "view_files": ":lesli.shared.view_files:",
@@ -110,6 +116,8 @@
110
116
  "button_save": ":lesli.shared.button_save:",
111
117
  "button_settings": ":lesli.shared.button_settings:",
112
118
  "button_show": ":lesli.shared.button_show:",
119
+ "message_operation_error": ":lesli.shared.message_operation_error:",
120
+ "message_operation_success": ":lesli.shared.message_operation_success:",
113
121
  "toolbar_search": ":lesli.shared.toolbar_search:",
114
122
  "view_discussions": ":lesli.shared.view_discussions:",
115
123
  "view_files": ":lesli.shared.view_files:",
@@ -140,6 +148,8 @@
140
148
  "button_save": ":lesli.shared.button_save:",
141
149
  "button_settings": ":lesli.shared.button_settings:",
142
150
  "button_show": ":lesli.shared.button_show:",
151
+ "message_operation_error": ":lesli.shared.message_operation_error:",
152
+ "message_operation_success": ":lesli.shared.message_operation_success:",
143
153
  "toolbar_search": ":lesli.shared.toolbar_search:",
144
154
  "view_discussions": ":lesli.shared.view_discussions:",
145
155
  "view_files": ":lesli.shared.view_files:",
data/readme.md CHANGED
@@ -1,7 +1,7 @@
1
- <p align="center">
2
- <img width="90" alt="Lesli Shield logo" src="./app/assets/images/lesli_shield/shield-logo.svg" />
1
+ <div align="center">
2
+ <img width="90" alt="Lesli Shield logo" src="../app/assets/images/lesli_shield/shield-logo.svg" />
3
3
  <h3 align="center">Authentication & Authorization for the Lesli Framework.</h3>
4
- </p>
4
+ </div>
5
5
 
6
6
  <hr/>
7
7
  <p align="center">
metadata CHANGED
@@ -1,58 +1,44 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lesli_shield
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - The Lesli Development Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-05-10 00:00:00.000000000 Z
11
+ date: 2025-07-01 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: rails
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: 7.0.6
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: 7.0.6
27
13
  - !ruby/object:Gem::Dependency
28
14
  name: lesli
29
15
  requirement: !ruby/object:Gem::Requirement
30
16
  requirements:
31
- - - "~>"
17
+ - - ">="
32
18
  - !ruby/object:Gem::Version
33
- version: '5'
19
+ version: '5.0'
34
20
  type: :runtime
35
21
  prerelease: false
36
22
  version_requirements: !ruby/object:Gem::Requirement
37
23
  requirements:
38
- - - "~>"
24
+ - - ">="
39
25
  - !ruby/object:Gem::Version
40
- version: '5'
26
+ version: '5.0'
41
27
  - !ruby/object:Gem::Dependency
42
28
  name: devise
43
29
  requirement: !ruby/object:Gem::Requirement
44
30
  requirements:
45
31
  - - "~>"
46
32
  - !ruby/object:Gem::Version
47
- version: 4.9.2
33
+ version: '4.9'
48
34
  type: :runtime
49
35
  prerelease: false
50
36
  version_requirements: !ruby/object:Gem::Requirement
51
37
  requirements:
52
38
  - - "~>"
53
39
  - !ruby/object:Gem::Version
54
- version: 4.9.2
55
- description: Authentication & Authorization for the Lesli Framework.
40
+ version: '4.9'
41
+ description: Authentication & Authorization management for the Lesli Framework.
56
42
  email:
57
43
  - hello@lesli.tech
58
44
  executables: []
@@ -69,12 +55,19 @@ files:
69
55
  - app/assets/javascripts/lesli_shield/sessions.js
70
56
  - app/assets/stylesheets/lesli_shield/application.css
71
57
  - app/assets/stylesheets/lesli_shield/confirmations.css
58
+ - app/assets/stylesheets/lesli_shield/devise/oauth.css
72
59
  - app/assets/stylesheets/lesli_shield/passwords.css
73
60
  - app/assets/stylesheets/lesli_shield/registrations.css
74
61
  - app/assets/stylesheets/lesli_shield/sessions.css
62
+ - app/assets/stylesheets/lesli_shield/users.css
75
63
  - app/controllers/lesli_shield/application_controller.rb
76
64
  - app/controllers/lesli_shield/dashboard/components_controller.rb
77
65
  - app/controllers/lesli_shield/dashboards_controller.rb
66
+ - app/controllers/lesli_shield/role/actions_controller.rb
67
+ - app/controllers/lesli_shield/roles_controller.rb
68
+ - app/controllers/lesli_shield/sessions_controller.rb
69
+ - app/controllers/lesli_shield/settings_controller.rb
70
+ - app/controllers/lesli_shield/users_controller.rb
78
71
  - app/controllers/users/confirmations_controller.rb
79
72
  - app/controllers/users/omniauth_callbacks_controller.rb
80
73
  - app/controllers/users/passwords_controller.rb
@@ -83,11 +76,18 @@ files:
83
76
  - app/controllers/users/unlocks_controller.rb
84
77
  - app/helpers/lesli_shield/application_helper.rb
85
78
  - app/helpers/lesli_shield/dashboards_helper.rb
79
+ - app/helpers/lesli_shield/sessions_helper.rb
80
+ - app/helpers/lesli_shield/settings_helper.rb
81
+ - app/helpers/lesli_shield/users_helper.rb
82
+ - app/interfaces/lesli_shield/authentication_interface.rb
83
+ - app/interfaces/lesli_shield/authorization_interface.rb
86
84
  - app/jobs/lesli_shield/application_job.rb
87
85
  - app/mailers/lesli_shield/application_mailer.rb
88
86
  - app/models/lesli_shield/application_record.rb
89
87
  - app/models/lesli_shield/dashboard.rb
90
88
  - app/models/lesli_shield/dashboard/component.rb
89
+ - app/models/lesli_shield/setting.rb
90
+ - app/models/lesli_shield/user.rb
91
91
  - app/views/devise/confirmations/new.html.erb
92
92
  - app/views/devise/confirmations/show.html.erb
93
93
  - app/views/devise/mailer/confirmation_instructions.html.erb
@@ -104,11 +104,40 @@ files:
104
104
  - app/views/devise/shared/_error_messages.html.erb
105
105
  - app/views/devise/shared/_links.html.erb
106
106
  - app/views/devise/unlocks/new.html.erb
107
- - app/views/layouts/lesli_shield/application.html.erb
108
107
  - app/views/lesli_shield/dashboards/edit.html.erb
109
108
  - app/views/lesli_shield/dashboards/index.html.erb
110
109
  - app/views/lesli_shield/dashboards/new.html.erb
111
110
  - app/views/lesli_shield/dashboards/show.html.erb
111
+ - app/views/lesli_shield/partials/_navigation.html.erb
112
+ - app/views/lesli_shield/roles/_form-information.html.erb
113
+ - app/views/lesli_shield/roles/_form-privileges.html.erb
114
+ - app/views/lesli_shield/roles/_session.html.erb
115
+ - app/views/lesli_shield/roles/edit.html.erb
116
+ - app/views/lesli_shield/roles/index.html.erb
117
+ - app/views/lesli_shield/roles/new.html.erb
118
+ - app/views/lesli_shield/roles/show.html.erb
119
+ - app/views/lesli_shield/roles/update.turbo_stream.erb
120
+ - app/views/lesli_shield/sessions/_form.html.erb
121
+ - app/views/lesli_shield/sessions/_session.html.erb
122
+ - app/views/lesli_shield/sessions/edit.html.erb
123
+ - app/views/lesli_shield/sessions/index.html.erb
124
+ - app/views/lesli_shield/sessions/new.html.erb
125
+ - app/views/lesli_shield/sessions/show.html.erb
126
+ - app/views/lesli_shield/settings/_form.html.erb
127
+ - app/views/lesli_shield/settings/_setting.html.erb
128
+ - app/views/lesli_shield/settings/edit.html.erb
129
+ - app/views/lesli_shield/settings/index.html.erb
130
+ - app/views/lesli_shield/settings/new.html.erb
131
+ - app/views/lesli_shield/settings/show.html.erb
132
+ - app/views/lesli_shield/users/_information-card.html.erb
133
+ - app/views/lesli_shield/users/_information-form.html.erb
134
+ - app/views/lesli_shield/users/_management-sessions.html.erb
135
+ - app/views/lesli_shield/users/_viewer-activities.html.erb
136
+ - app/views/lesli_shield/users/edit.html.erb
137
+ - app/views/lesli_shield/users/index.html.erb
138
+ - app/views/lesli_shield/users/new.html.erb
139
+ - app/views/lesli_shield/users/show.html.erb
140
+ - app/views/lesli_shield/users/update.turbo_stream.erb
112
141
  - config/initializers/devise.rb
113
142
  - config/locales/translations.en.yml
114
143
  - config/locales/translations.es.yml
@@ -117,25 +146,32 @@ files:
117
146
  - config/locales/translations.pt.yml
118
147
  - config/routes.rb
119
148
  - db/migrate/v1/0801000110_create_lesli_shield_accounts.rb
120
- - db/migrate/v1/0801050110_create_lesli_shield_dashboards.rb
121
- - db/migrate/v1/0801050210_create_lesli_shield_dashboard_components.rb
149
+ - db/migrate/v1/0801001710_create_lesli_shield_settings.rb
150
+ - db/migrate/v1/0801003010_create_lesli_shield_dashboards.rb
151
+ - db/migrate/v1/0801120310_create_lesli_shield_user_shortcuts.rb
152
+ - db/migrate/v1/0801120410_create_lesli_shield_user_tokens.rb
122
153
  - lib/lesli_shield.rb
123
154
  - lib/lesli_shield/engine.rb
124
155
  - lib/lesli_shield/routing.rb
125
156
  - lib/lesli_shield/version.rb
157
+ - lib/scss/_devise-simple.scss
158
+ - lib/scss/_devise.scss
126
159
  - lib/scss/application.scss
127
160
  - lib/scss/confirmations.scss
128
161
  - lib/scss/devise/oauth.scss
129
162
  - lib/scss/passwords.scss
130
163
  - lib/scss/registrations.scss
131
164
  - lib/scss/sessions.scss
165
+ - lib/scss/users.scss
132
166
  - lib/tasks/lesli_shield_tasks.rake
133
167
  - lib/vue/application.js
134
168
  - lib/vue/apps/dashboards/components/engine-version.vue
169
+ - lib/vue/apps/sessions/index.vue
135
170
  - lib/vue/confirmations.js
136
171
  - lib/vue/passwords.js
137
172
  - lib/vue/registrations.js
138
173
  - lib/vue/sessions.js
174
+ - lib/vue/stores/sessions.js
139
175
  - lib/vue/stores/translations.json
140
176
  - license
141
177
  - readme.md
@@ -154,15 +190,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
154
190
  requirements:
155
191
  - - ">="
156
192
  - !ruby/object:Gem::Version
157
- version: '2.7'
193
+ version: '0'
158
194
  required_rubygems_version: !ruby/object:Gem::Requirement
159
195
  requirements:
160
196
  - - ">="
161
197
  - !ruby/object:Gem::Version
162
198
  version: '0'
163
199
  requirements: []
164
- rubygems_version: 3.3.7
200
+ rubygems_version: 3.4.19
165
201
  signing_key:
166
202
  specification_version: 4
167
- summary: Authentication & Authorization for the Lesli Framework.
203
+ summary: Authentication & Authorization management for the Lesli Framework.
168
204
  test_files: []
@@ -1,15 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
- <head>
4
- <title>Lesli shield</title>
5
- <%= csrf_meta_tags %>
6
- <%= csp_meta_tag %>
7
-
8
- <%= stylesheet_link_tag "lesli_shield/application", media: "all" %>
9
- </head>
10
- <body>
11
-
12
- <%= yield %>
13
-
14
- </body>
15
- </html>