lesli 5.0.2 → 5.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (166) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/config/lesli_manifest.js +2 -1
  3. data/app/assets/javascripts/lesli/users/confirmations.js +32 -0
  4. data/app/assets/javascripts/lesli/users/passwords.js +3 -3
  5. data/app/assets/javascripts/lesli/users/registrations.js +2 -2
  6. data/app/assets/javascripts/lesli/users/sessions.js +2 -2
  7. data/app/assets/stylesheets/lesli/users/confirmations.scss +28 -6
  8. data/app/controllers/lesli/abouts_controller.rb +66 -0
  9. data/app/controllers/lesli/interfaces/application/authorization.rb +2 -2
  10. data/app/controllers/lesli/interfaces/application/logger.rb +14 -38
  11. data/app/controllers/lesli/roles_controller.rb +3 -1
  12. data/app/controllers/users/confirmations_controller.rb +63 -27
  13. data/app/controllers/users/passwords_controller.rb +70 -30
  14. data/app/controllers/users/sessions_controller.rb +2 -4
  15. data/app/lib/lesli/system.rb +13 -5
  16. data/app/mailers/lesli/application_lesli_mailer.rb +8 -19
  17. data/app/mailers/lesli/devise_mailer.rb +29 -3
  18. data/app/models/concerns/account_initializer.rb +91 -0
  19. data/app/models/concerns/{user_guard.rb → user_security.rb} +7 -8
  20. data/app/models/lesli/account.rb +8 -26
  21. data/app/models/lesli/application_lesli_record.rb +1 -0
  22. data/app/models/lesli/descriptor/privilege.rb +38 -0
  23. data/app/models/lesli/descriptor.rb +18 -1
  24. data/app/models/lesli/role/power.rb +70 -0
  25. data/app/models/lesli/role/privilege.rb +38 -0
  26. data/app/models/lesli/role.rb +20 -15
  27. data/app/models/lesli/user/{role.rb → power.rb} +1 -1
  28. data/app/{services/lesli/role_service.rb → models/lesli/user/setting.rb} +10 -9
  29. data/app/models/lesli/user.rb +11 -20
  30. data/app/operators/lesli/descriptor_privilege_operator.rb +75 -0
  31. data/app/operators/lesli/role_power_operator.rb +108 -0
  32. data/app/operators/lesli/user_registration_operator.rb +121 -0
  33. data/app/services/lesli/user_service.rb +2 -4
  34. data/app/services/lesli/{user/session_service.rb → user_session_service.rb} +11 -4
  35. data/app/views/devise/confirmations/new.html.erb +0 -14
  36. data/app/views/devise/confirmations/show.html.erb +63 -0
  37. data/app/views/devise/passwords/edit.html.erb +78 -24
  38. data/app/views/devise/passwords/new.html.erb +1 -2
  39. data/app/views/lesli/emails/devise_mailer/confirmation_instructions.html.erb +1 -1
  40. data/app/views/lesli/emails/devise_mailer/reset_password_instructions.html.erb +23 -0
  41. data/app/views/lesli/partials/_application-lesli-header.html.erb +3 -1
  42. data/config/initializers/devise.rb +2 -0
  43. data/config/routes.rb +2 -0
  44. data/db/migrate/v1.0/0010000110_create_lesli_accounts.rb +2 -0
  45. data/db/{tables/0010001010_create_account_settings.rb → migrate/v1.0/0010001010_create_lesli_account_settings.rb} +5 -5
  46. data/db/{tables/0010003110_create_user_settings.rb → migrate/v1.0/0010003110_create_lesli_user_settings.rb} +4 -4
  47. data/db/migrate/v1.0/0010003210_create_lesli_user_sessions.rb +6 -2
  48. data/db/migrate/v1.0/{0010003410_create_lesli_user_roles.rb → 0010003410_create_lesli_user_powers.rb} +4 -4
  49. data/db/migrate/v1.0/0010005010_create_lesli_descriptors.rb +1 -1
  50. data/db/migrate/v1.0/{0010003910_create_lesli_user_agents.rb → 0010005510_create_lesli_role_powers.rb} +7 -9
  51. data/db/{tables/0010005710_create_role_privileges.rb → migrate/v1.0/0010005710_create_lesli_role_privileges.rb} +6 -6
  52. data/db/seed/development/users.rb +4 -4
  53. data/db/seed/tools.rb +4 -4
  54. data/lib/lesli/engine.rb +33 -10
  55. data/lib/lesli/version.rb +1 -1
  56. data/lib/sass/lesli/bulma/loader.scss +3 -0
  57. data/lib/sass/lesli/pages/devise-simple.scss +2 -1
  58. data/lib/tasks/lesli/controllers.rake +3 -6
  59. data/lib/tasks/lesli/db.rake +11 -1
  60. data/lib/tasks/lesli/role.rake +54 -0
  61. data/lib/vue/application.js +9 -2
  62. data/lib/vue/devise/passwords.js +3 -3
  63. data/lib/vue/layouts/application-header.vue +10 -3
  64. data/lib/webpack/core.js +2 -1
  65. data/readme.md +23 -7
  66. data/vendor/bulma/LICENSE +21 -0
  67. data/vendor/bulma/bulma.sass +10 -0
  68. data/vendor/bulma/css/bulma-rtl.css +11851 -0
  69. data/vendor/bulma/css/bulma-rtl.min.css +1 -0
  70. data/vendor/bulma/css/bulma.css +11851 -0
  71. data/vendor/bulma/css/bulma.min.css +1 -0
  72. data/vendor/bulma/sass/base/_all.sass +6 -0
  73. data/vendor/bulma/sass/base/animations.sass +5 -0
  74. data/vendor/bulma/sass/base/generic.sass +145 -0
  75. data/vendor/bulma/sass/base/helpers.sass +1 -0
  76. data/vendor/bulma/sass/base/minireset.sass +79 -0
  77. data/vendor/bulma/sass/components/_all.sass +15 -0
  78. data/vendor/bulma/sass/components/breadcrumb.sass +77 -0
  79. data/vendor/bulma/sass/components/card.sass +103 -0
  80. data/vendor/bulma/sass/components/dropdown.sass +83 -0
  81. data/vendor/bulma/sass/components/level.sass +79 -0
  82. data/vendor/bulma/sass/components/media.sass +59 -0
  83. data/vendor/bulma/sass/components/menu.sass +59 -0
  84. data/vendor/bulma/sass/components/message.sass +101 -0
  85. data/vendor/bulma/sass/components/modal.sass +117 -0
  86. data/vendor/bulma/sass/components/navbar.sass +446 -0
  87. data/vendor/bulma/sass/components/pagination.sass +167 -0
  88. data/vendor/bulma/sass/components/panel.sass +121 -0
  89. data/vendor/bulma/sass/components/tabs.sass +176 -0
  90. data/vendor/bulma/sass/elements/_all.sass +16 -0
  91. data/vendor/bulma/sass/elements/box.sass +26 -0
  92. data/vendor/bulma/sass/elements/button.sass +357 -0
  93. data/vendor/bulma/sass/elements/container.sass +29 -0
  94. data/vendor/bulma/sass/elements/content.sass +162 -0
  95. data/vendor/bulma/sass/elements/form.sass +1 -0
  96. data/vendor/bulma/sass/elements/icon.sass +46 -0
  97. data/vendor/bulma/sass/elements/image.sass +73 -0
  98. data/vendor/bulma/sass/elements/notification.sass +52 -0
  99. data/vendor/bulma/sass/elements/other.sass +31 -0
  100. data/vendor/bulma/sass/elements/progress.sass +73 -0
  101. data/vendor/bulma/sass/elements/table.sass +134 -0
  102. data/vendor/bulma/sass/elements/tag.sass +140 -0
  103. data/vendor/bulma/sass/elements/title.sass +70 -0
  104. data/vendor/bulma/sass/form/_all.sass +9 -0
  105. data/vendor/bulma/sass/form/checkbox-radio.sass +22 -0
  106. data/vendor/bulma/sass/form/file.sass +184 -0
  107. data/vendor/bulma/sass/form/input-textarea.sass +66 -0
  108. data/vendor/bulma/sass/form/select.sass +88 -0
  109. data/vendor/bulma/sass/form/shared.sass +60 -0
  110. data/vendor/bulma/sass/form/tools.sass +215 -0
  111. data/vendor/bulma/sass/grid/_all.sass +5 -0
  112. data/vendor/bulma/sass/grid/columns.sass +513 -0
  113. data/vendor/bulma/sass/grid/tiles.sass +36 -0
  114. data/vendor/bulma/sass/helpers/_all.sass +12 -0
  115. data/vendor/bulma/sass/helpers/color.sass +39 -0
  116. data/vendor/bulma/sass/helpers/flexbox.sass +35 -0
  117. data/vendor/bulma/sass/helpers/float.sass +10 -0
  118. data/vendor/bulma/sass/helpers/other.sass +14 -0
  119. data/vendor/bulma/sass/helpers/overflow.sass +2 -0
  120. data/vendor/bulma/sass/helpers/position.sass +7 -0
  121. data/vendor/bulma/sass/helpers/spacing.sass +31 -0
  122. data/vendor/bulma/sass/helpers/typography.sass +103 -0
  123. data/vendor/bulma/sass/helpers/visibility.sass +122 -0
  124. data/vendor/bulma/sass/layout/_all.sass +6 -0
  125. data/vendor/bulma/sass/layout/footer.sass +11 -0
  126. data/vendor/bulma/sass/layout/hero.sass +153 -0
  127. data/vendor/bulma/sass/layout/section.sass +17 -0
  128. data/vendor/bulma/sass/utilities/_all.sass +9 -0
  129. data/vendor/bulma/sass/utilities/animations.sass +1 -0
  130. data/vendor/bulma/sass/utilities/controls.sass +49 -0
  131. data/vendor/bulma/sass/utilities/derived-variables.sass +114 -0
  132. data/vendor/bulma/sass/utilities/extends.sass +25 -0
  133. data/vendor/bulma/sass/utilities/functions.sass +135 -0
  134. data/vendor/bulma/sass/utilities/initial-variables.sass +79 -0
  135. data/vendor/bulma/sass/utilities/mixins.sass +303 -0
  136. data/vendor/lesli-css/_index.scss +34 -0
  137. data/vendor/lesli-css/lesli.scss +51 -0
  138. data/vendor/lesli-css/license +28 -0
  139. data/vendor/lesli-css/src/base/fonts.scss +50 -0
  140. data/vendor/lesli-css/src/base/normalize.scss +118 -0
  141. data/vendor/lesli-css/src/components/blockquote.scss +61 -0
  142. data/vendor/lesli-css/src/components/columns.scss +92 -0
  143. data/vendor/lesli-css/src/components/container.scss +47 -0
  144. data/vendor/lesli-css/src/components/grid.scss +0 -0
  145. data/vendor/lesli-css/src/components/navigation.scss +59 -0
  146. data/vendor/lesli-css/src/functions/colors.scss +184 -0
  147. data/vendor/lesli-css/src/helpers/units.scss +44 -0
  148. data/vendor/lesli-css/src/mixins/breakpoint.scss +184 -0
  149. data/vendor/lesli-css/src/mixins/flex.scss +80 -0
  150. data/vendor/lesli-css/src/mixins/scrollbar.scss +46 -0
  151. data/vendor/lesli-css/src/settings/variables.scss +26 -0
  152. data/vendor/lesli-css/tests/base/normalize.spec.scss +125 -0
  153. data/vendor/lesli-css/tests/functions/colors.spec.scss +117 -0
  154. data/vendor/lesli-css/tests/mixins/breakpoint.spec.scss +429 -0
  155. data/vendor/lesli-css/tests/mixins/scrollbar.spec.scss +82 -0
  156. data/vendor/lesli-css/vendor/normalize.scss +351 -0
  157. data/vendor/remixicon/License +201 -0
  158. data/vendor/remixicon/fonts/remixicon.css +2583 -0
  159. metadata +116 -18
  160. data/app/models/concerns/account_engines.rb +0 -249
  161. data/app/models/concerns/user_polyfill.rb +0 -134
  162. data/config/locales/translations.en.yml +0 -7
  163. data/config/locales/translations.es.yml +0 -7
  164. data/db/migrate/v1.0/0010001510_create_lesli_account_requests.rb +0 -45
  165. data/db/migrate/v1.0/0010003810_create_lesli_user_requests.rb +0 -44
  166. data/db/tables/0010005510_create_role_descriptors.rb +0 -44
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lesli
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.0.2
4
+ version: 5.0.4
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: 2023-10-15 00:00:00.000000000 Z
11
+ date: 2023-11-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -250,6 +250,7 @@ files:
250
250
  - app/assets/images/lesli/brand/favicon.png
251
251
  - app/assets/images/lesli/brand/favicon.svg
252
252
  - app/assets/images/lesli/brand/login-background.jpg
253
+ - app/assets/javascripts/lesli/users/confirmations.js
253
254
  - app/assets/javascripts/lesli/users/passwords.js
254
255
  - app/assets/javascripts/lesli/users/registrations.js
255
256
  - app/assets/javascripts/lesli/users/sessions.js
@@ -258,6 +259,7 @@ files:
258
259
  - app/assets/stylesheets/lesli/users/passwords.scss
259
260
  - app/assets/stylesheets/lesli/users/registrations.scss
260
261
  - app/assets/stylesheets/lesli/users/sessions.scss
262
+ - app/controllers/lesli/abouts_controller.rb
261
263
  - app/controllers/lesli/application_controller.rb
262
264
  - app/controllers/lesli/application_devise_controller.rb
263
265
  - app/controllers/lesli/application_lesli_controller.rb
@@ -284,33 +286,39 @@ files:
284
286
  - app/mailers/lesli/application_lesli_mailer.rb
285
287
  - app/mailers/lesli/application_mailer.rb
286
288
  - app/mailers/lesli/devise_mailer.rb
287
- - app/models/concerns/account_engines.rb
289
+ - app/models/concerns/account_initializer.rb
288
290
  - app/models/concerns/user_activities.rb
289
291
  - app/models/concerns/user_extensions.rb
290
- - app/models/concerns/user_guard.rb
291
- - app/models/concerns/user_polyfill.rb
292
+ - app/models/concerns/user_security.rb
292
293
  - app/models/lesli/account.rb
293
294
  - app/models/lesli/account/log.rb
294
295
  - app/models/lesli/account/request.rb
295
296
  - app/models/lesli/application_lesli_record.rb
296
297
  - app/models/lesli/descriptor.rb
298
+ - app/models/lesli/descriptor/privilege.rb
297
299
  - app/models/lesli/role.rb
300
+ - app/models/lesli/role/power.rb
301
+ - app/models/lesli/role/privilege.rb
298
302
  - app/models/lesli/system_controller.rb
299
303
  - app/models/lesli/system_controller/action.rb
300
304
  - app/models/lesli/user.rb
301
305
  - app/models/lesli/user/agent.rb
302
306
  - app/models/lesli/user/detail.rb
303
307
  - app/models/lesli/user/log.rb
308
+ - app/models/lesli/user/power.rb
304
309
  - app/models/lesli/user/request.rb
305
- - app/models/lesli/user/role.rb
306
310
  - app/models/lesli/user/session.rb
311
+ - app/models/lesli/user/setting.rb
312
+ - app/operators/lesli/descriptor_privilege_operator.rb
313
+ - app/operators/lesli/role_power_operator.rb
314
+ - app/operators/lesli/user_registration_operator.rb
307
315
  - app/services/lesli/application_lesli_service.rb
308
- - app/services/lesli/role_service.rb
309
- - app/services/lesli/user/session_service.rb
310
316
  - app/services/lesli/user_service.rb
317
+ - app/services/lesli/user_session_service.rb
311
318
  - app/validators/lesli/application_lesli_validator.rb
312
319
  - app/validators/lesli/users_validator.rb
313
320
  - app/views/devise/confirmations/new.html.erb
321
+ - app/views/devise/confirmations/show.html.erb
314
322
  - app/views/devise/mailer/confirmation_instructions.html.erb
315
323
  - app/views/devise/mailer/email_changed.html.erb
316
324
  - app/views/devise/mailer/password_change.html.erb
@@ -325,6 +333,7 @@ files:
325
333
  - app/views/devise/shared/_links.html.erb
326
334
  - app/views/devise/unlocks/new.html.erb
327
335
  - app/views/lesli/emails/devise_mailer/confirmation_instructions.html.erb
336
+ - app/views/lesli/emails/devise_mailer/reset_password_instructions.html.erb
328
337
  - app/views/lesli/emails/user_mailer/invitation.html.erb
329
338
  - app/views/lesli/layouts/application-devise.html.erb
330
339
  - app/views/lesli/layouts/application-lesli.html.erb
@@ -354,26 +363,25 @@ files:
354
363
  - config/initializers/devise.rb
355
364
  - config/initializers/lesli.rb
356
365
  - config/locales/devise.en.yml
357
- - config/locales/translations.en.yml
358
- - config/locales/translations.es.yml
359
366
  - config/routes.rb
360
367
  - db/migrate/v1.0/0010000110_create_lesli_accounts.rb
361
368
  - db/migrate/v1.0/0010000210_create_lesli_roles.rb
362
369
  - db/migrate/v1.0/0010000310_create_lesli_users.rb
363
370
  - db/migrate/v1.0/0010000610_create_lesli_system_controllers.rb
364
371
  - db/migrate/v1.0/0010000710_create_lesli_system_controller_actions.rb
372
+ - db/migrate/v1.0/0010001010_create_lesli_account_settings.rb
365
373
  - db/migrate/v1.0/0010001210_create_lesli_account_activities.rb
366
374
  - db/migrate/v1.0/0010001410_create_lesli_account_logs.rb
367
- - db/migrate/v1.0/0010001510_create_lesli_account_requests.rb
368
375
  - db/migrate/v1.0/0010003010_create_lesli_user_details.rb
376
+ - db/migrate/v1.0/0010003110_create_lesli_user_settings.rb
369
377
  - db/migrate/v1.0/0010003210_create_lesli_user_sessions.rb
370
- - db/migrate/v1.0/0010003410_create_lesli_user_roles.rb
371
- - db/migrate/v1.0/0010003810_create_lesli_user_requests.rb
372
- - db/migrate/v1.0/0010003910_create_lesli_user_agents.rb
378
+ - db/migrate/v1.0/0010003410_create_lesli_user_powers.rb
373
379
  - db/migrate/v1.0/0010004010_create_lesli_user_logs.rb
374
380
  - db/migrate/v1.0/0010005010_create_lesli_descriptors.rb
375
381
  - db/migrate/v1.0/0010005110_create_lesli_descriptor_privileges.rb
376
382
  - db/migrate/v1.0/0010005210_create_lesli_descriptor_activities.rb
383
+ - db/migrate/v1.0/0010005510_create_lesli_role_powers.rb
384
+ - db/migrate/v1.0/0010005710_create_lesli_role_privileges.rb
377
385
  - db/seed/development.rb
378
386
  - db/seed/development/accounts.rb
379
387
  - db/seed/development/users.rb
@@ -400,19 +408,15 @@ files:
400
408
  - db/structure/00000403_custom_validation_fields.json
401
409
  - db/structure/00000501_dashboards.json
402
410
  - db/structure/00000502_dashboard_components.json
403
- - db/tables/0010001010_create_account_settings.rb
404
411
  - db/tables/0010001110_create_account_locations.rb
405
412
  - db/tables/0010001410_create_account_files.rb
406
413
  - db/tables/0010001510_create_account_currencies.rb
407
414
  - db/tables/0010001610_create_account_currency_exchange_rates.rb
408
- - db/tables/0010003110_create_user_settings.rb
409
415
  - db/tables/0010003410_create_user_activities.rb
410
416
  - db/tables/0010003710_create_user_codes.rb
411
417
  - db/tables/0010003810_create_user_shortcuts.rb
412
418
  - db/tables/0010004110_create_user_tokens.rb
413
- - db/tables/0010005510_create_role_descriptors.rb
414
419
  - db/tables/0010005610_create_role_activities.rb
415
- - db/tables/0010005710_create_role_privileges.rb
416
420
  - db/tables/0010009010_create_feedbacks.rb
417
421
  - lib/assets/javascripts/lesli/i18n.js
418
422
  - lib/assets/javascripts/lesli/translations.js
@@ -479,6 +483,7 @@ files:
479
483
  - lib/tasks/lesli/controllers.rake
480
484
  - lib/tasks/lesli/db.rake
481
485
  - lib/tasks/lesli/git.rake
486
+ - lib/tasks/lesli/role.rake
482
487
  - lib/tasks/lesli_tasks.rake
483
488
  - lib/vue/application.js
484
489
  - lib/vue/apps/cloudobjects/action.vue
@@ -576,6 +581,99 @@ files:
576
581
  - lib/webpack/version.js
577
582
  - license
578
583
  - readme.md
584
+ - vendor/bulma/LICENSE
585
+ - vendor/bulma/bulma.sass
586
+ - vendor/bulma/css/bulma-rtl.css
587
+ - vendor/bulma/css/bulma-rtl.min.css
588
+ - vendor/bulma/css/bulma.css
589
+ - vendor/bulma/css/bulma.min.css
590
+ - vendor/bulma/sass/base/_all.sass
591
+ - vendor/bulma/sass/base/animations.sass
592
+ - vendor/bulma/sass/base/generic.sass
593
+ - vendor/bulma/sass/base/helpers.sass
594
+ - vendor/bulma/sass/base/minireset.sass
595
+ - vendor/bulma/sass/components/_all.sass
596
+ - vendor/bulma/sass/components/breadcrumb.sass
597
+ - vendor/bulma/sass/components/card.sass
598
+ - vendor/bulma/sass/components/dropdown.sass
599
+ - vendor/bulma/sass/components/level.sass
600
+ - vendor/bulma/sass/components/media.sass
601
+ - vendor/bulma/sass/components/menu.sass
602
+ - vendor/bulma/sass/components/message.sass
603
+ - vendor/bulma/sass/components/modal.sass
604
+ - vendor/bulma/sass/components/navbar.sass
605
+ - vendor/bulma/sass/components/pagination.sass
606
+ - vendor/bulma/sass/components/panel.sass
607
+ - vendor/bulma/sass/components/tabs.sass
608
+ - vendor/bulma/sass/elements/_all.sass
609
+ - vendor/bulma/sass/elements/box.sass
610
+ - vendor/bulma/sass/elements/button.sass
611
+ - vendor/bulma/sass/elements/container.sass
612
+ - vendor/bulma/sass/elements/content.sass
613
+ - vendor/bulma/sass/elements/form.sass
614
+ - vendor/bulma/sass/elements/icon.sass
615
+ - vendor/bulma/sass/elements/image.sass
616
+ - vendor/bulma/sass/elements/notification.sass
617
+ - vendor/bulma/sass/elements/other.sass
618
+ - vendor/bulma/sass/elements/progress.sass
619
+ - vendor/bulma/sass/elements/table.sass
620
+ - vendor/bulma/sass/elements/tag.sass
621
+ - vendor/bulma/sass/elements/title.sass
622
+ - vendor/bulma/sass/form/_all.sass
623
+ - vendor/bulma/sass/form/checkbox-radio.sass
624
+ - vendor/bulma/sass/form/file.sass
625
+ - vendor/bulma/sass/form/input-textarea.sass
626
+ - vendor/bulma/sass/form/select.sass
627
+ - vendor/bulma/sass/form/shared.sass
628
+ - vendor/bulma/sass/form/tools.sass
629
+ - vendor/bulma/sass/grid/_all.sass
630
+ - vendor/bulma/sass/grid/columns.sass
631
+ - vendor/bulma/sass/grid/tiles.sass
632
+ - vendor/bulma/sass/helpers/_all.sass
633
+ - vendor/bulma/sass/helpers/color.sass
634
+ - vendor/bulma/sass/helpers/flexbox.sass
635
+ - vendor/bulma/sass/helpers/float.sass
636
+ - vendor/bulma/sass/helpers/other.sass
637
+ - vendor/bulma/sass/helpers/overflow.sass
638
+ - vendor/bulma/sass/helpers/position.sass
639
+ - vendor/bulma/sass/helpers/spacing.sass
640
+ - vendor/bulma/sass/helpers/typography.sass
641
+ - vendor/bulma/sass/helpers/visibility.sass
642
+ - vendor/bulma/sass/layout/_all.sass
643
+ - vendor/bulma/sass/layout/footer.sass
644
+ - vendor/bulma/sass/layout/hero.sass
645
+ - vendor/bulma/sass/layout/section.sass
646
+ - vendor/bulma/sass/utilities/_all.sass
647
+ - vendor/bulma/sass/utilities/animations.sass
648
+ - vendor/bulma/sass/utilities/controls.sass
649
+ - vendor/bulma/sass/utilities/derived-variables.sass
650
+ - vendor/bulma/sass/utilities/extends.sass
651
+ - vendor/bulma/sass/utilities/functions.sass
652
+ - vendor/bulma/sass/utilities/initial-variables.sass
653
+ - vendor/bulma/sass/utilities/mixins.sass
654
+ - vendor/lesli-css/_index.scss
655
+ - vendor/lesli-css/lesli.scss
656
+ - vendor/lesli-css/license
657
+ - vendor/lesli-css/src/base/fonts.scss
658
+ - vendor/lesli-css/src/base/normalize.scss
659
+ - vendor/lesli-css/src/components/blockquote.scss
660
+ - vendor/lesli-css/src/components/columns.scss
661
+ - vendor/lesli-css/src/components/container.scss
662
+ - vendor/lesli-css/src/components/grid.scss
663
+ - vendor/lesli-css/src/components/navigation.scss
664
+ - vendor/lesli-css/src/functions/colors.scss
665
+ - vendor/lesli-css/src/helpers/units.scss
666
+ - vendor/lesli-css/src/mixins/breakpoint.scss
667
+ - vendor/lesli-css/src/mixins/flex.scss
668
+ - vendor/lesli-css/src/mixins/scrollbar.scss
669
+ - vendor/lesli-css/src/settings/variables.scss
670
+ - vendor/lesli-css/tests/base/normalize.spec.scss
671
+ - vendor/lesli-css/tests/functions/colors.spec.scss
672
+ - vendor/lesli-css/tests/mixins/breakpoint.spec.scss
673
+ - vendor/lesli-css/tests/mixins/scrollbar.spec.scss
674
+ - vendor/lesli-css/vendor/normalize.scss
675
+ - vendor/remixicon/License
676
+ - vendor/remixicon/fonts/remixicon.css
579
677
  homepage: https://www.lesli.dev/
580
678
  licenses:
581
679
  - GPL-3.0
@@ -1,249 +0,0 @@
1
- =begin
2
-
3
- Lesli
4
-
5
- Copyright (c) 2023, Lesli Technologies, S. A.
6
-
7
- This program is free software: you can redistribute it and/or modify
8
- it under the terms of the GNU General Public License as published by
9
- the Free Software Foundation, either version 3 of the License, or
10
- (at your option) any later version.
11
-
12
- This program is distributed in the hope that it will be useful,
13
- but WITHOUT ANY WARRANTY; without even the implied warranty of
14
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
- GNU General Public License for more details.
16
-
17
- You should have received a copy of the GNU General Public License
18
- along with this program. If not, see http://www.gnu.org/licenses/.
19
-
20
- Lesli · Ruby on Rails SaaS development platform.
21
-
22
- Made with ♥ by https://www.lesli.tech
23
- Building a better future, one line of code at a time.
24
-
25
- @contact hello@lesli.tech
26
- @website https://www.lesli.tech
27
- @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
28
-
29
- // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
30
- // ·
31
- =end
32
-
33
- module AccountEngines
34
- extend ActiveSupport::Concern
35
-
36
-
37
- # initialize engines for new accounts
38
- def initialize_engines
39
-
40
- if defined? CloudDispatcher
41
- if self.dispatcher.blank?
42
- self.dispatcher = CloudDispatcher::Account.new
43
- self.dispatcher.account = self
44
- self.dispatcher.save!
45
- end
46
- end
47
-
48
- if defined? CloudKb
49
- if self.kb.blank?
50
- self.kb = CloudKb::Account.new
51
- self.kb.account = self
52
- self.kb.save!
53
- end
54
- end
55
-
56
- if defined? CloudOne
57
- if self.one.blank?
58
- self.one = CloudOne::Account.new
59
- self.one.account = self
60
- self.one.save!
61
- end
62
- end
63
-
64
- if defined? CloudTeam
65
- if self.team.blank?
66
- self.team = CloudTeam::Account.new
67
- self.team.account = self
68
- self.team.save!
69
- end
70
- end
71
-
72
- if defined? CloudBell
73
- if self.bell.blank?
74
- self.bell = CloudBell::Account.new
75
- self.bell.account = self
76
- self.bell.save!
77
- end
78
- end
79
-
80
- if defined? CloudDriver
81
- if self.driver.blank?
82
- self.driver = CloudDriver::Account.new
83
- self.driver.account = self
84
- self.driver.save!
85
- end
86
- end
87
-
88
- if defined? CloudFocus
89
- if self.focus.blank?
90
- self.focus = CloudFocus::Account.new
91
- self.focus.account = self
92
- self.focus.save!
93
- end
94
- end
95
-
96
- if defined? CloudHelp
97
- if self.help.blank?
98
- self.help = CloudHelp::Account.new
99
- self.help.account = self
100
- self.help.save!
101
- end
102
- end
103
-
104
- if defined? CloudMailer
105
- if self.mailer.blank?
106
- self.mailer = CloudMailer::Account.new
107
- self.mailer.account = self
108
- self.mailer.save!
109
- end
110
- end
111
-
112
- if defined? CloudText
113
- if self.text.blank?
114
- self.text = CloudText::Account.new
115
- self.text.account = self
116
- self.text.save!
117
- end
118
- end
119
-
120
- if defined? CloudTalk
121
- if self.talk.blank?
122
- self.talk = CloudTalk::Account.new
123
- self.talk.account = self
124
- self.talk.save!
125
- end
126
- end
127
-
128
- if defined? CloudStorage
129
- if self.storage.blank?
130
- self.storage = CloudStorage::Account.new
131
- self.storage.account = self
132
- self.storage.save!
133
- end
134
- end
135
-
136
- if defined? CloudBooks
137
- if self.books.blank?
138
- self.books = CloudBooks::Account.new
139
- self.books.account = self
140
- self.books.save!
141
- end
142
- end
143
-
144
- if defined? CloudHouse
145
- if self.house.blank?
146
- self.house = CloudHouse::Account.new
147
- self.house.account = self
148
- self.house.save!
149
- end
150
- end
151
-
152
- if defined? CloudAudit
153
- if self.audit.blank?
154
- self.audit = CloudAudit::Account.new
155
- self.audit.account = self
156
- self.audit.save!
157
- end
158
- end
159
-
160
- if defined? CloudThings
161
- if self.things.blank?
162
- self.things = CloudThings::Account.new
163
- self.things.account = self
164
- self.things.save!
165
- end
166
- end
167
-
168
- if defined? CloudProposal
169
- if self.proposal.blank?
170
- self.proposal = CloudProposal::Account.new
171
- self.proposal.account = self
172
- self.proposal.save!
173
- end
174
- end
175
-
176
- if defined? CloudRealty
177
- if self.realty.blank?
178
- self.realty = CloudRealty::Account.new
179
- self.realty.account = self
180
- self.realty.save!
181
- end
182
- end
183
-
184
- if defined? CloudLesli
185
- if self.lesli.blank?
186
- self.lesli = CloudLesli::Account.new
187
- self.lesli.account = self
188
- self.lesli.save!
189
- end
190
- end
191
-
192
- if defined? CloudShared
193
- if self.shared.blank?
194
- self.shared = CloudShared::Account.new
195
- self.shared.account = self
196
- self.shared.save!
197
- end
198
- end
199
-
200
- if defined? CloudPortal
201
- if self.portal.blank?
202
- self.portal = CloudPortal::Account.new
203
- self.portal.account = self
204
- self.portal.save!
205
- end
206
- end
207
-
208
- if defined? CloudWork
209
- if self.work.blank?
210
- self.work = CloudWork::Account.new
211
- self.work.account = self
212
- self.work.save!
213
- end
214
- end
215
-
216
- if defined? CloudWord
217
- if self.word.blank?
218
- self.word = CloudWord::Account.new
219
- self.word.account = self
220
- self.word.save!
221
- end
222
- end
223
-
224
- if defined? CloudSocial
225
- if self.social.blank?
226
- self.social = CloudSocial::Account.new
227
- self.social.account = self
228
- self.social.save!
229
- end
230
- end
231
-
232
- if defined? CloudScraper
233
- if self.scraper.blank?
234
- self.scraper = CloudScraper::Account.new
235
- self.scraper.account = self
236
- self.scraper.save!
237
- end
238
- end
239
-
240
- if defined? CloudTime
241
- if self.time.blank?
242
- self.time = CloudTime::Account.new
243
- self.time.account = self
244
- self.time.save!
245
- end
246
- end
247
-
248
- end
249
- end
@@ -1,134 +0,0 @@
1
- =begin
2
-
3
- Lesli
4
-
5
- Copyright (c) 2023, Lesli Technologies, S. A.
6
-
7
- This program is free software: you can redistribute it and/or modify
8
- it under the terms of the GNU General Public License as published by
9
- the Free Software Foundation, either version 3 of the License, or
10
- (at your option) any later version.
11
-
12
- This program is distributed in the hope that it will be useful,
13
- but WITHOUT ANY WARRANTY; without even the implied warranty of
14
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
- GNU General Public License for more details.
16
-
17
- You should have received a copy of the GNU General Public License
18
- along with this program. If not, see http://www.gnu.org/licenses/.
19
-
20
- Lesli · Your Smart Business Assistant.
21
-
22
- Made with ♥ by https://www.lesli.tech
23
- Building a better future, one line of code at a time.
24
-
25
- @contact hello@lesli.tech
26
- @website https://lesli.tech
27
- @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
28
-
29
- // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
30
- // ·
31
-
32
- =end
33
-
34
-
35
- # DEPRECATED METHODS
36
- # We still need to keep the definition of this methods to bring compatibility to old installations of Lesli
37
- module UserPolyfill
38
- extend ActiveSupport::Concern
39
-
40
- def has_privileges3?(controllers, actions)
41
-
42
- begin
43
-
44
- # This query fetch all the privileges actions that the user have through role descriptor assignments
45
- sql_role_privile_actions = self.role_privilege_actions
46
- .select(
47
- "status",
48
- "system_controller_actions.name as action",
49
- "system_controllers.name as controller"
50
- )
51
- .joins(system_action: [:system_controller])
52
- .where("system_controllers.name in (?)", controllers)
53
- .where("system_controller_actions.name in (?)", actions)
54
- .to_sql
55
-
56
-
57
- # This query fetch all the privileges actions that the user have through privileges actions added to the specific user
58
- sql_user_privilege_actions = self.user_privilege_actions
59
- .select(
60
- "status",
61
- "system_controller_actions.name as action",
62
- "system_controllers.name as controller"
63
- )
64
- .joins(system_action: [:system_controller])
65
- .where("system_controllers.name in (?)", controllers)
66
- .where("system_controller_actions.name in (?)", actions)
67
- .to_sql
68
-
69
-
70
- # This query is on charge of evaluate if the user have every specific privilege action
71
- # no matter if is given indirectly by role or directly to the user. Then, after getting each
72
- # specific boolean value of every privilege action, the query evalueate if is there some privilege
73
- # action on false, if there is a false then the return of the method will be false, but if every
74
- # privilege action is on true the permission is granted.
75
- # This is possible by the union of the two previous queries
76
- granted = ActiveRecord::Base.connection.exec_query("
77
- select
78
- bool_and(grouped_privileges.status) as value
79
- from (
80
- select
81
- privilege_actions.controller,
82
- privilege_actions.action,
83
- BOOL_OR(privilege_actions.status) as status
84
- from (
85
- #{sql_role_privile_actions}
86
- union
87
- #{sql_user_privilege_actions}
88
- ) AS privilege_actions
89
- group by (
90
- controller,
91
- action
92
- )
93
- ) AS grouped_privileges
94
- ")
95
- .first["value"]
96
-
97
- return false if granted.blank?
98
-
99
- return granted
100
-
101
- rescue => exception
102
-
103
- Honeybadger.notify(exception)
104
- return false
105
-
106
- end
107
-
108
- end
109
-
110
-
111
- # @return [void]
112
- # @description After creating a user, creates the necessary resources for them to access the different engines.
113
- # check role of the user
114
- def is_role? *roles
115
- LC::Debug.deprecation("Use has_roles?(role1, role2 ... rolen) instead")
116
- return has_roles?(roles)
117
- end
118
-
119
- def log_activity request_method, request_controller, request_action, request_url, description = nil
120
- LC::Debug.deprecation("Use user.activities, user.logs or log_user_comments instead")
121
- end
122
-
123
- def generate_password_token
124
- LC::Debug.deprecation("use generate_reset_password_token instead and build the email manually")
125
- end
126
-
127
- def self.send_password_reset(user)
128
- LC::Debug.deprecation("use generate_reset_password_token instead and build the email manually")
129
- end
130
-
131
- def send_welcome_email
132
- LC::Debug.deprecation("use generate_reset_password_token instead and build the email manually")
133
- end
134
- end
@@ -1,7 +0,0 @@
1
- ---
2
- :en:
3
- lesli:
4
- shared:
5
- title_lesli: ":lesli.shared.title_lesli:"
6
- users:
7
- title_users: Users
@@ -1,7 +0,0 @@
1
- ---
2
- :es:
3
- lesli:
4
- shared:
5
- title_lesli: 'Lesli en español '
6
- users:
7
- title_users: Usuarios
@@ -1,45 +0,0 @@
1
- =begin
2
-
3
- Lesli
4
-
5
- Copyright (c) 2023, Lesli Technologies, S. A.
6
-
7
- This program is free software: you can redistribute it and/or modify
8
- it under the terms of the GNU General Public License as published by
9
- the Free Software Foundation, either version 3 of the License, or
10
- (at your option) any later version.
11
-
12
- This program is distributed in the hope that it will be useful,
13
- but WITHOUT ANY WARRANTY; without even the implied warranty of
14
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
- GNU General Public License for more details.
16
-
17
- You should have received a copy of the GNU General Public License
18
- along with this program. If not, see http://www.gnu.org/licenses/.
19
-
20
- Lesli · Ruby on Rails Development Platform.
21
-
22
- Made with ♥ by https://www.lesli.tech
23
- Building a better future, one line of code at a time.
24
-
25
- @contact hello@lesli.tech
26
- @website https://www.lesli.tech
27
- @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
28
-
29
- // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
30
- // ·
31
- =end
32
-
33
- class CreateLesliAccountRequests < ActiveRecord::Migration[6.0]
34
- def change
35
- create_table :lesli_account_requests do |t|
36
- t.string :request_controller
37
- t.string :request_action
38
- t.string :request_method
39
- t.integer :request_count
40
- t.date :created_at
41
- end
42
- add_reference(:lesli_account_requests, :account, foreign_key: { to_table: :lesli_accounts })
43
- add_index(:lesli_account_requests, %i[request_controller request_action created_at account_id], unique: true, name: "lesli_account_requests_index")
44
- end
45
- end