lesli 5.0.5 → 5.0.6

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 (48) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/icons/lesli/cloud-letter.svg +1 -0
  3. data/app/assets/icons/readme.md +1 -1
  4. data/app/assets/javascripts/lesli/users/passwords.js +84 -118
  5. data/app/assets/javascripts/lesli/users/registrations.js +85 -119
  6. data/app/assets/javascripts/lesli/users/sessions.js +76 -130
  7. data/app/controllers/lesli/system_controllers_controller.rb +63 -0
  8. data/app/controllers/users/sessions_controller.rb +2 -1
  9. data/app/helpers/lesli/navigation_helper.rb +9 -9
  10. data/app/lib/lesli/system.rb +2 -1
  11. data/app/models/concerns/account_initializer.rb +27 -9
  12. data/app/models/concerns/user_extensions.rb +8 -6
  13. data/app/models/concerns/user_security.rb +1 -1
  14. data/app/models/lesli/account.rb +3 -1
  15. data/app/models/lesli/descriptor/privilege.rb +1 -0
  16. data/app/models/lesli/descriptor.rb +1 -4
  17. data/app/models/lesli/role/power.rb +3 -3
  18. data/app/models/lesli/user/session.rb +4 -27
  19. data/app/models/lesli/user.rb +2 -3
  20. data/app/operators/lesli/descriptor_privilege_operator.rb +1 -1
  21. data/app/operators/lesli/{role_power_operator.rb → role_descriptor_operator.rb} +24 -7
  22. data/app/views/lesli/partials/_application-data.html.erb +7 -0
  23. data/app/views/lesli/partials/_application-lesli-engines.html.erb +2 -2
  24. data/app/views/lesli/partials/_application-lesli-icons.html.erb +1 -1
  25. data/config/initializers/lesli.rb +2 -0
  26. data/config/locales/translations.en.yml +9 -2
  27. data/config/locales/translations.es.yml +9 -2
  28. data/config/routes.rb +2 -0
  29. data/db/migrate/v1.0/0010005010_create_lesli_descriptors.rb +1 -1
  30. data/db/migrate/v1.0/0010005510_create_lesli_role_powers.rb +7 -0
  31. data/lib/lesli/version.rb +1 -1
  32. data/lib/sass/lesli/components/editor-richtext.scss +10 -0
  33. data/lib/sass/lesli/templates/application.scss +4 -0
  34. data/lib/{tasks/lesli/privileges.rake → sass/lesli/templates/component.scss} +6 -21
  35. data/lib/tasks/lesli/db.rake +2 -1
  36. data/lib/tasks/lesli_tasks.rake +8 -0
  37. data/lib/vue/application.js +64 -62
  38. data/lib/vue/devise/sessions.js +1 -1
  39. data/lib/vue/layouts/application-header.vue +6 -7
  40. data/lib/vue/public.js +2 -5
  41. data/lib/vue/shared/stores/systemController.js +67 -0
  42. data/lib/vue/stores/translations.json +24 -2
  43. data/lib/vue/stores/users.js +2 -6
  44. data/lib/webpack/base.js +3 -2
  45. data/lib/webpack/core.js +1 -1
  46. data/readme.md +1 -1
  47. metadata +22 -5
  48. /data/app/assets/icons/lesli/{cloud-help.svg → cloud-support.svg} +0 -0
@@ -47,6 +47,7 @@ import lesliApplicationEngines from "Lesli/layouts/application-engines.vue"
47
47
  import lesliApplicationContainer from "Lesli/layouts/application-container.vue"
48
48
  import lesliApplicationComponent from "Lesli/layouts/application-component.vue"
49
49
 
50
+
50
51
  /*
51
52
  import componentApplicationFooter from "Lesli/layouts/application-footer.vue"
52
53
  import componentApplicationSearch from "Lesli/layouts/application-search.vue"
@@ -60,39 +61,40 @@ import componentApplicationPanelNotifications from "Lesli/panels/panel-notificat
60
61
  import componentApplicationPanelAnnouncements from "Lesli/panels/panel-announcements.vue"
61
62
  */
62
63
 
64
+
63
65
  // · Loading global layout components
64
66
  import {
65
- lesliElementAutocomplete,
66
- lesliElementAvatar,
67
- lesliElementButton,
68
- lesliElementButtonLink,
69
- lesliElementCalendar,
70
- lesliElementCard,
71
- lesliElementCollapse,
72
- lesliElementColumn,
73
- lesliElementColumns,
74
- lesliElementControl,
75
- lesliElementDropdown,
76
- lesliElementEmpty,
77
- lesliElementForm,
78
- lesliElementHeader,
79
- lesliElementIcon,
80
- lesliElementInput,
81
- lesliElementInputTag,
82
- lesliElementLink,
83
- lesliElementLoading,
84
- lesliElementMap,
85
- lesliElementNavbar,
86
- lesliElementFileUploader,
87
- lesliElementNavigationList,
88
- lesliElementPagination,
89
- lesliElementPanel,
90
- lesliElementSelect,
91
- lesliElementTable,
92
- lesliElementTabs,
93
- lesliElementTabItem,
94
- lesliElementToggle,
95
- lesliElementToolbar
67
+ // lesliElementAutocomplete,
68
+ // lesliElementAvatar,
69
+ LesliButton,
70
+ // lesliElementButtonLink,
71
+ // lesliElementCalendar,
72
+ LesliCard,
73
+ // lesliElementCollapse,
74
+ LesliColumn,
75
+ LesliColumns,
76
+ LesliControl,
77
+ // lesliElementDropdown,
78
+ LesliEmpty,
79
+ LesliForm,
80
+ LesliHeader,
81
+ // lesliElementIcon,
82
+ // lesliElementInput,
83
+ // lesliElementInputTag,
84
+ LesliLink,
85
+ LesliLoading,
86
+ // lesliElementMap,
87
+ // lesliElementNavbar,
88
+ // lesliElementFileUploader,
89
+ // lesliElementNavigationList,
90
+ LesliPagination,
91
+ LesliPanel,
92
+ LesliSelect,
93
+ LesliTable,
94
+ LesliTabs,
95
+ LesliTabItem,
96
+ LesliToggle,
97
+ LesliToolbar
96
98
  } from "lesli-vue/elements"
97
99
 
98
100
 
@@ -220,37 +222,37 @@ export default (engine, routes=[]) => {
220
222
 
221
223
 
222
224
  // · Loading Lesli handmade global components
223
- application.component("lesli-icon", lesliElementIcon)
224
- application.component("lesli-empty", lesliElementEmpty)
225
- application.component("lesli-header", lesliElementHeader)
226
- application.component("lesli-select", lesliElementSelect)
227
- application.component("lesli-toolbar", lesliElementToolbar)
228
- application.component("lesli-loading", lesliElementLoading)
229
- application.component("lesli-table", lesliElementTable)
230
- application.component("lesli-collapse", lesliElementCollapse)
231
- application.component("lesli-column", lesliElementColumn)
232
- application.component("lesli-columns", lesliElementColumns)
233
- application.component("lesli-card", lesliElementCard)
234
- application.component("lesli-control", lesliElementControl)
235
- application.component("lesli-tab-item", lesliElementTabItem)
236
- application.component("lesli-tabs", lesliElementTabs)
237
- application.component("lesli-panel", lesliElementPanel)
238
- application.component("lesli-button", lesliElementButton)
239
- application.component("lesli-button-link", lesliElementButtonLink)
240
- application.component("lesli-calendar", lesliElementCalendar)
241
- application.component("lesli-input-tag", lesliElementInputTag)
242
- application.component("lesli-file-uploader", lesliElementFileUploader)
243
- application.component("lesli-navigation-list", lesliElementNavigationList)
244
- application.component("lesli-avatar", lesliElementAvatar)
245
- application.component("lesli-toggle", lesliElementToggle)
246
- application.component("lesli-dropdown", lesliElementDropdown)
247
- application.component("lesli-map", lesliElementMap)
248
- //application.component("lesli-gallery", lesliElementGallery)
249
- application.component("lesli-autocomplete", lesliElementAutocomplete)
250
- application.component("lesli-pagination", lesliElementPagination)
251
- application.component("lesli-form", lesliElementForm)
252
- application.component("lesli-input", lesliElementInput)
253
- application.component("lesli-link", lesliElementLink)
225
+ // application.component("lesli-icon", lesliElementIcon)
226
+ application.component("lesli-empty", LesliEmpty)
227
+ application.component("lesli-header", LesliHeader)
228
+ application.component("lesli-select", LesliSelect)
229
+ application.component("lesli-toolbar", LesliToolbar)
230
+ application.component("lesli-loading", LesliLoading)
231
+ application.component("lesli-table", LesliTable)
232
+ // application.component("lesli-collapse", lesliElementCollapse)
233
+ application.component("lesli-column", LesliColumn)
234
+ application.component("lesli-columns", LesliColumns)
235
+ application.component("lesli-card", LesliCard)
236
+ application.component("lesli-control", LesliControl)
237
+ application.component("lesli-tabs", LesliTabs)
238
+ application.component("lesli-tab-item", LesliTabItem)
239
+ application.component("lesli-panel", LesliPanel)
240
+ application.component("lesli-button", LesliButton)
241
+ // application.component("lesli-button-link", lesliElementButtonLink)
242
+ // application.component("lesli-calendar", lesliElementCalendar)
243
+ // application.component("lesli-input-tag", lesliElementInputTag)
244
+ // application.component("lesli-file-uploader", lesliElementFileUploader)
245
+ // application.component("lesli-navigation-list", lesliElementNavigationList)
246
+ // application.component("lesli-avatar", lesliElementAvatar)
247
+ application.component("lesli-toggle", LesliToggle)
248
+ // application.component("lesli-dropdown", lesliElementDropdown)
249
+ // application.component("lesli-map", lesliElementMap)
250
+ // //application.component("lesli-gallery", lesliElementGallery)
251
+ // application.component("lesli-autocomplete", lesliElementAutocomplete)
252
+ application.component("lesli-pagination", LesliPagination)
253
+ application.component("lesli-form", LesliForm)
254
+ // application.component("lesli-input", lesliElementInput)
255
+ application.component("lesli-link", LesliLink)
254
256
 
255
257
 
256
258
 
@@ -57,7 +57,7 @@ application({
57
57
 
58
58
  if (lesli_application_development) {
59
59
  this.sign_in.email = "hello@lesli.tech"
60
- this.sign_in.password = "tardis2023$"
60
+ this.sign_in.password = "tardis2024$"
61
61
  }
62
62
  },
63
63
  methods: {
@@ -88,9 +88,8 @@ const props = defineProps({
88
88
 
89
89
  // · translations
90
90
  const translations = {
91
- core: {
92
- shared: I18n.t("core.shared"),
93
- users: I18n.t('deutscheleibrenten.users'),
91
+ lesli: {
92
+ application: i18n.t("lesli.application"),
94
93
  }
95
94
  }
96
95
 
@@ -142,7 +141,7 @@ function safeEngineUrl() {
142
141
  type="email"
143
142
  name="global_search"
144
143
  class="input is-shadowless"
145
- :placeholder="translations.core.shared.search_placeholder || 'Ask to Lesli...'"
144
+ :placeholder="translations.lesli.application.navigation_chat_with_lesli || ''"
146
145
  @input="storeSearch.doSearch"
147
146
  v-model="storeSearch.text"
148
147
  />
@@ -150,7 +149,7 @@ function safeEngineUrl() {
150
149
  </div>
151
150
  <div class="lesli-application-header-right">
152
151
 
153
- <!-- funciona -->
152
+ <!-- -->
154
153
  <slot></slot>
155
154
 
156
155
 
@@ -211,7 +210,7 @@ function safeEngineUrl() {
211
210
  <span class="icon has-text-grey-dark">
212
211
  <span class="ri-user-line"></span>
213
212
  </span>
214
- <span>{{ translations.core.shared.view_text_profile }}</span>
213
+ <span>{{ translations.lesli.application.navigation_my_profile }}</span>
215
214
  </span>
216
215
  </a>
217
216
  <hr class="dropdown-divider">
@@ -220,7 +219,7 @@ function safeEngineUrl() {
220
219
  <span class="icon has-text-grey-dark">
221
220
  <span class="ri-logout-box-r-line"></span>
222
221
  </span>
223
- <span>{{ translations.core.shared.view_text_logout }}</span>
222
+ <span>{{ translations.lesli.application.navigation_logout }}</span>
224
223
  </span>
225
224
  </a>
226
225
  </div>
data/lib/vue/public.js CHANGED
@@ -16,7 +16,7 @@ GNU General Public License for more details.
16
16
  You should have received a copy of the GNU General Public License
17
17
  along with this program. If not, see http://www.gnu.org/licenses/.
18
18
 
19
- Lesli · Ruby on Rails SaaS development platform.
19
+ Lesli · Ruby on Rails SaaS Development Framework.
20
20
 
21
21
  Made with ♥ by https://www.lesli.tech
22
22
  Building a better future, one line of code at a time.
@@ -39,10 +39,7 @@ import debug from "lesli-js/debug/browser"
39
39
 
40
40
 
41
41
  // · Loading app plugins
42
- import {
43
- useLesliUrl,
44
- useLesliHttp
45
- } from "lesli-vue/composables"
42
+ import { useLesliUrl, useLesliHttp } from "lesli-vue/composables"
46
43
 
47
44
 
48
45
  // · module: Engine name
@@ -0,0 +1,67 @@
1
+ /*
2
+ Lesli
3
+
4
+ Copyright (c) 2023, Lesli Technologies, S. A.
5
+
6
+ This program is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU General Public License as published by
8
+ the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ This program is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU General Public License for more details.
15
+
16
+ You should have received a copy of the GNU General Public License
17
+ along with this program. If not, see http://www.gnu.org/licenses/.
18
+
19
+ Lesli · Ruby on Rails SaaS Development Framework.
20
+
21
+ Made with ♥ by https://www.lesli.tech
22
+ Building a better future, one line of code at a time.
23
+
24
+ @contact hello@lesli.tech
25
+ @website https://www.lesli.tech
26
+ @license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
27
+
28
+ // · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
29
+ // ·
30
+ */
31
+
32
+
33
+ // ·
34
+ import { defineStore } from "pinia"
35
+
36
+
37
+ // ·
38
+ export const useSystemController = defineStore("lesli.systemController", {
39
+ state: () => {
40
+ return {
41
+ options: { categories: []},
42
+ controllerActions: {},
43
+ }
44
+ },
45
+ actions: {
46
+
47
+ fetchControllers() {
48
+ this.http.get(this.url.lesli("system_controllers")).then(result => {
49
+ result.forEach(controllerAction => {
50
+ if (!this.controllerActions[controllerAction.action]) {
51
+ this.controllerActions[controllerAction.action] = []
52
+ }
53
+ controllerAction['active'] = false
54
+ this.controllerActions[controllerAction.action].push(controllerAction)
55
+ })
56
+ }).catch(error => {
57
+ console.log(error)
58
+ })
59
+ },
60
+
61
+ fetchOptions() {
62
+ this.http.get(this.url.admin("system_controllers/options")).then(result => {
63
+ this.options = result
64
+ })
65
+ }
66
+ }
67
+ })
@@ -1,6 +1,13 @@
1
1
  {
2
2
  "en": {
3
3
  "lesli": {
4
+ "application": {
5
+ "navigation_logout": "Logout",
6
+ "navigation_my_profile": "My profile"
7
+ },
8
+ "dashboards": {
9
+ "title": "Dashboards"
10
+ },
4
11
  "shared": {
5
12
  "button_add_new": "Add new",
6
13
  "button_delete": "Delete",
@@ -8,9 +15,13 @@
8
15
  "button_list": "List",
9
16
  "button_reload": "Reload",
10
17
  "button_save": "Save",
18
+ "button_settings": "Settings",
19
+ "button_show": "Show",
11
20
  "view_discussions": "Discussions",
12
21
  "view_files": "Files",
13
- "view_quick_actions": "Quick actions"
22
+ "view_quick_actions": "Quick actions",
23
+ "view_status_active": "Active",
24
+ "view_status_inactive": "Inactive"
14
25
  },
15
26
  "users/sessions": {
16
27
  "view_username": "Username"
@@ -19,6 +30,13 @@
19
30
  },
20
31
  "es": {
21
32
  "lesli": {
33
+ "application": {
34
+ "navigation_logout": "Cerrar sesión",
35
+ "navigation_my_profile": "Mi perfil"
36
+ },
37
+ "dashboards": {
38
+ "title": "Dashboards"
39
+ },
22
40
  "shared": {
23
41
  "button_add_new": "Agregar nuevo",
24
42
  "button_delete": "Eliminar",
@@ -26,9 +44,13 @@
26
44
  "button_list": "Lista",
27
45
  "button_reload": "Recargar",
28
46
  "button_save": "Guardar",
47
+ "button_settings": "Configuración",
48
+ "button_show": "Ver",
29
49
  "view_discussions": "Discusiones",
30
50
  "view_files": "Archivos",
31
- "view_quick_actions": "Acciones rapidas"
51
+ "view_quick_actions": "Acciones rapidas",
52
+ "view_status_active": "Activo",
53
+ "view_status_inactive": "Inactivo"
32
54
  },
33
55
  "users/sessions": {
34
56
  "view_username": "Usuario"
@@ -38,20 +38,16 @@ import { defineStore } from "pinia"
38
38
  export const useUsers = defineStore("lesli.users", {
39
39
  state: () => {
40
40
  return {
41
-
41
+ list: []
42
42
  }
43
43
  },
44
44
  actions: {
45
45
 
46
46
  getUsersList() {
47
-
48
- // get an specifick user if id is provided
49
47
  this.http.get(this.url.lesli("users/list")).then(result => {
50
-
48
+ this.list = result
51
49
  }).catch(error => {
52
50
  this.msg.danger(I18n.t("core.shared.messages_danger_internal_error"))
53
- }).finally(() => {
54
- this.loading = false
55
51
  })
56
52
  }
57
53
  }
data/lib/webpack/base.js CHANGED
@@ -113,13 +113,14 @@ module.exports = env => {
113
113
  // Set aliases as shortcuts to import modules
114
114
  Lesli: path.resolve("lib", "vue"),
115
115
  LesliBell: path.resolve("../", "LesliBell", "lib", "vue"),
116
- LesliHelp: path.resolve("../", "Leslihelp", "lib", "vue"),
117
116
  LesliAdmin: path.resolve("../", "LesliAdmin", "lib", "vue"),
118
117
  LesliAudit: path.resolve("../", "LesliAudit", "lib", "vue"),
119
118
  LesliBabel: path.resolve("../", "LesliBabel", "lib", "vue"),
120
119
  LesliGuard: path.resolve("../", "LesliGuard", "lib", "vue"),
120
+ LesliLetter: path.resolve("../", "LesliLetter", "lib", "vue"),
121
121
  LesliDriver: path.resolve("../", "LesliDriver", "lib", "vue"),
122
-
122
+ LesliSupport: path.resolve("../", "LesliSupport", "lib", "vue"),
123
+
123
124
 
124
125
 
125
126
  CloudAdmin: path.resolve("app", "vue", "admin"),
data/lib/webpack/core.js CHANGED
@@ -66,7 +66,7 @@ module.exports = (env, requestedEngines) => {
66
66
  "lesli/users/registrations": "Lesli/devise/registrations.js",
67
67
  "lesli/users/confirmations": "Lesli/devise/confirmations.js",
68
68
  "lesli/users/passwords": "Lesli/devise/passwords.js",
69
- "lesli/users/sessions": "Lesli/devise/sessions.js"
69
+
70
70
  },
71
71
  output: {
72
72
  path: path.resolve("app", "assets", "javascripts")
data/readme.md CHANGED
@@ -56,7 +56,7 @@ Lesli is officially released and will be supported as of version 5.1
56
56
  ### Demo
57
57
 
58
58
  * online demo (soon)
59
- * [docker demo](https://github.com/LesliTech/lesli-docker-demo)
59
+ * docker run leslitech/lesli-demo:5.0
60
60
 
61
61
 
62
62
  <br />
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.5
4
+ version: 5.0.6
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-12-25 00:00:00.000000000 Z
11
+ date: 2024-02-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -114,6 +114,20 @@ dependencies:
114
114
  - - "~>"
115
115
  - !ruby/object:Gem::Version
116
116
  version: 1.2.2
117
+ - !ruby/object:Gem::Dependency
118
+ name: L2
119
+ requirement: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - "~>"
122
+ - !ruby/object:Gem::Version
123
+ version: 0.5.2
124
+ type: :runtime
125
+ prerelease: false
126
+ version_requirements: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - "~>"
129
+ - !ruby/object:Gem::Version
130
+ version: 0.5.2
117
131
  - !ruby/object:Gem::Dependency
118
132
  name: devise
119
133
  requirement: !ruby/object:Gem::Requirement
@@ -200,10 +214,10 @@ files:
200
214
  - app/assets/icons/lesli/cloud-driver.svg
201
215
  - app/assets/icons/lesli/cloud-focus.svg
202
216
  - app/assets/icons/lesli/cloud-guard.svg
203
- - app/assets/icons/lesli/cloud-help.svg
204
217
  - app/assets/icons/lesli/cloud-kb.svg
205
218
  - app/assets/icons/lesli/cloud-leaf.svg
206
219
  - app/assets/icons/lesli/cloud-lesli.svg
220
+ - app/assets/icons/lesli/cloud-letter.svg
207
221
  - app/assets/icons/lesli/cloud-mailer.svg
208
222
  - app/assets/icons/lesli/cloud-one.svg
209
223
  - app/assets/icons/lesli/cloud-profile.svg
@@ -211,6 +225,7 @@ files:
211
225
  - app/assets/icons/lesli/cloud-scraper.svg
212
226
  - app/assets/icons/lesli/cloud-shared.svg
213
227
  - app/assets/icons/lesli/cloud-storage.svg
228
+ - app/assets/icons/lesli/cloud-support.svg
214
229
  - app/assets/icons/lesli/cloud-talk.svg
215
230
  - app/assets/icons/lesli/cloud-team.svg
216
231
  - app/assets/icons/lesli/cloud-time.svg
@@ -257,6 +272,7 @@ files:
257
272
  - app/controllers/lesli/interfaces/application/responder.rb
258
273
  - app/controllers/lesli/roles_controller.rb
259
274
  - app/controllers/lesli/shared/dashboards_controller.rb
275
+ - app/controllers/lesli/system_controllers_controller.rb
260
276
  - app/controllers/lesli/users_controller.rb
261
277
  - app/controllers/users/confirmations_controller.rb
262
278
  - app/controllers/users/omniauth_callbacks_controller.rb
@@ -300,7 +316,7 @@ files:
300
316
  - app/models/lesli/user/setting.rb
301
317
  - app/operators/lesli/controller_operator.rb
302
318
  - app/operators/lesli/descriptor_privilege_operator.rb
303
- - app/operators/lesli/role_power_operator.rb
319
+ - app/operators/lesli/role_descriptor_operator.rb
304
320
  - app/operators/lesli/user_registration_operator.rb
305
321
  - app/services/lesli/application_lesli_service.rb
306
322
  - app/services/lesli/user_service.rb
@@ -468,6 +484,7 @@ files:
468
484
  - lib/sass/lesli/settings/variables.scss
469
485
  - lib/sass/lesli/shared/workflow-status-progress.scss
470
486
  - lib/sass/lesli/templates/application.scss
487
+ - lib/sass/lesli/templates/component.scss
471
488
  - lib/sass/lesli/templates/dashboards.scss
472
489
  - lib/sass/lesli/templates/empty.scss
473
490
  - lib/sass/lesli/templates/pdf.scss
@@ -477,7 +494,6 @@ files:
477
494
  - lib/tasks/lesli/dev.rake
478
495
  - lib/tasks/lesli/engine.rake
479
496
  - lib/tasks/lesli/git.rake
480
- - lib/tasks/lesli/privileges.rake
481
497
  - lib/tasks/lesli_tasks.rake
482
498
  - lib/vue/application.js
483
499
  - lib/vue/devise/confirmations.js
@@ -532,6 +548,7 @@ files:
532
548
  - lib/vue/shared/dashboards/apps/show.vue
533
549
  - lib/vue/shared/dashboards/components/form.vue
534
550
  - lib/vue/shared/stores/dashboard.js
551
+ - lib/vue/shared/stores/systemController.js
535
552
  - lib/vue/shared/workflows2/apps/actions/form.vue
536
553
  - lib/vue/shared/workflows2/apps/actions/forms/chatroom-form.vue
537
554
  - lib/vue/shared/workflows2/apps/actions/forms/cloud-object-clone-form.vue