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.
- checksums.yaml +4 -4
- data/app/assets/icons/lesli/cloud-letter.svg +1 -0
- data/app/assets/icons/readme.md +1 -1
- data/app/assets/javascripts/lesli/users/passwords.js +84 -118
- data/app/assets/javascripts/lesli/users/registrations.js +85 -119
- data/app/assets/javascripts/lesli/users/sessions.js +76 -130
- data/app/controllers/lesli/system_controllers_controller.rb +63 -0
- data/app/controllers/users/sessions_controller.rb +2 -1
- data/app/helpers/lesli/navigation_helper.rb +9 -9
- data/app/lib/lesli/system.rb +2 -1
- data/app/models/concerns/account_initializer.rb +27 -9
- data/app/models/concerns/user_extensions.rb +8 -6
- data/app/models/concerns/user_security.rb +1 -1
- data/app/models/lesli/account.rb +3 -1
- data/app/models/lesli/descriptor/privilege.rb +1 -0
- data/app/models/lesli/descriptor.rb +1 -4
- data/app/models/lesli/role/power.rb +3 -3
- data/app/models/lesli/user/session.rb +4 -27
- data/app/models/lesli/user.rb +2 -3
- data/app/operators/lesli/descriptor_privilege_operator.rb +1 -1
- data/app/operators/lesli/{role_power_operator.rb → role_descriptor_operator.rb} +24 -7
- data/app/views/lesli/partials/_application-data.html.erb +7 -0
- data/app/views/lesli/partials/_application-lesli-engines.html.erb +2 -2
- data/app/views/lesli/partials/_application-lesli-icons.html.erb +1 -1
- data/config/initializers/lesli.rb +2 -0
- data/config/locales/translations.en.yml +9 -2
- data/config/locales/translations.es.yml +9 -2
- data/config/routes.rb +2 -0
- data/db/migrate/v1.0/0010005010_create_lesli_descriptors.rb +1 -1
- data/db/migrate/v1.0/0010005510_create_lesli_role_powers.rb +7 -0
- data/lib/lesli/version.rb +1 -1
- data/lib/sass/lesli/components/editor-richtext.scss +10 -0
- data/lib/sass/lesli/templates/application.scss +4 -0
- data/lib/{tasks/lesli/privileges.rake → sass/lesli/templates/component.scss} +6 -21
- data/lib/tasks/lesli/db.rake +2 -1
- data/lib/tasks/lesli_tasks.rake +8 -0
- data/lib/vue/application.js +64 -62
- data/lib/vue/devise/sessions.js +1 -1
- data/lib/vue/layouts/application-header.vue +6 -7
- data/lib/vue/public.js +2 -5
- data/lib/vue/shared/stores/systemController.js +67 -0
- data/lib/vue/stores/translations.json +24 -2
- data/lib/vue/stores/users.js +2 -6
- data/lib/webpack/base.js +3 -2
- data/lib/webpack/core.js +1 -1
- data/readme.md +1 -1
- metadata +22 -5
- /data/app/assets/icons/lesli/{cloud-help.svg → cloud-support.svg} +0 -0
data/lib/vue/application.js
CHANGED
@@ -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
|
-
|
68
|
-
lesliElementButtonLink,
|
69
|
-
lesliElementCalendar,
|
70
|
-
|
71
|
-
lesliElementCollapse,
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
lesliElementDropdown,
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
lesliElementIcon,
|
80
|
-
lesliElementInput,
|
81
|
-
lesliElementInputTag,
|
82
|
-
|
83
|
-
|
84
|
-
lesliElementMap,
|
85
|
-
lesliElementNavbar,
|
86
|
-
lesliElementFileUploader,
|
87
|
-
lesliElementNavigationList,
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
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",
|
225
|
-
application.component("lesli-header",
|
226
|
-
application.component("lesli-select",
|
227
|
-
application.component("lesli-toolbar",
|
228
|
-
application.component("lesli-loading",
|
229
|
-
application.component("lesli-table",
|
230
|
-
application.component("lesli-collapse", lesliElementCollapse)
|
231
|
-
application.component("lesli-column",
|
232
|
-
application.component("lesli-columns",
|
233
|
-
application.component("lesli-card",
|
234
|
-
application.component("lesli-control",
|
235
|
-
application.component("lesli-
|
236
|
-
application.component("lesli-
|
237
|
-
application.component("lesli-panel",
|
238
|
-
application.component("lesli-button",
|
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",
|
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",
|
251
|
-
application.component("lesli-form",
|
252
|
-
application.component("lesli-input", lesliElementInput)
|
253
|
-
application.component("lesli-link",
|
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
|
|
data/lib/vue/devise/sessions.js
CHANGED
@@ -88,9 +88,8 @@ const props = defineProps({
|
|
88
88
|
|
89
89
|
// · translations
|
90
90
|
const translations = {
|
91
|
-
|
92
|
-
|
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.
|
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
|
-
<!--
|
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.
|
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.
|
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
|
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"
|
data/lib/vue/stores/users.js
CHANGED
@@ -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
|
-
|
69
|
+
|
70
70
|
},
|
71
71
|
output: {
|
72
72
|
path: path.resolve("app", "assets", "javascripts")
|
data/readme.md
CHANGED
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.
|
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:
|
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/
|
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
|
File without changes
|