lesli 5.0.11 → 5.0.13
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/config/lesli_manifest.js +0 -13
- data/app/assets/icons/lesli/engine-security.svg +1 -0
- data/app/assets/icons/lesli/engine-shield.svg +1 -0
- data/app/assets/images/lesli/brand/app-logo.png +0 -0
- data/app/assets/images/lesli/lesli-logo.svg +4 -0
- data/app/assets/javascripts/lesli/templates/application.js +14 -0
- data/app/assets/javascripts/lesli/templates/public.js +14 -0
- data/app/assets/stylesheets/lesli/templates/application.css +1365 -293
- data/app/assets/stylesheets/lesli/templates/public.css +1 -1
- data/app/controllers/lesli/abouts_controller.rb +12 -18
- data/app/controllers/lesli/application_controller.rb +26 -25
- data/app/controllers/lesli/application_lesli_controller.rb +5 -6
- data/app/controllers/lesli/interfaces/application/authorization.rb +2 -2
- data/app/controllers/lesli/interfaces/application/customization.rb +1 -1
- data/app/controllers/lesli/interfaces/application/requester.rb +2 -2
- data/app/controllers/lesli/interfaces/application/responder.rb +8 -8
- data/app/controllers/lesli/interfaces/controllers/actions.rb +250 -0
- data/app/controllers/lesli/interfaces/controllers/activities.rb +215 -0
- data/app/controllers/lesli/interfaces/controllers/discussions.rb +270 -0
- data/app/controllers/lesli/interfaces/controllers/files.rb +467 -0
- data/app/controllers/lesli/interfaces/controllers/subscribers.rb +234 -0
- data/app/helpers/lesli/assets_helper.rb +26 -8
- data/app/helpers/lesli/navigation_helper.rb +53 -92
- data/app/lib/date2.rb +8 -0
- data/app/lib/lesli/system.rb +17 -4
- data/app/models/concerns/account_initializer.rb +46 -42
- data/app/models/concerns/user_extensions.rb +6 -0
- data/{lib/scss/devise/registrations.scss → app/models/lesli/account/detail.rb} +7 -3
- data/app/models/lesli/account.rb +12 -5
- data/app/models/lesli/cloud_object/action.rb +70 -0
- data/app/models/lesli/cloud_object/activity.rb +311 -0
- data/app/models/lesli/cloud_object/custom_field.rb +158 -0
- data/app/models/lesli/cloud_object/discussion.rb +219 -0
- data/app/models/lesli/cloud_object/subscriber.rb +186 -0
- data/app/models/lesli/shared/dashboard.rb +16 -5
- data/app/models/lesli/user/session.rb +0 -2
- data/app/models/lesli/user.rb +13 -13
- data/app/operators/lesli/controller_operator.rb +4 -1
- data/app/operators/lesli/user_registration_operator.rb +3 -3
- data/app/services/lesli/user_service.rb +1 -1
- data/app/views/lesli/layouts/application-devise.html.erb +6 -6
- data/app/views/lesli/layouts/application-lesli.html.erb +3 -1
- data/app/views/lesli/partials/_application-data.html.erb +5 -4
- data/app/views/lesli/partials/_application-lesli-engines.html.erb +14 -39
- data/app/views/lesli/partials/_application-lesli-header.html.erb +50 -25
- data/app/views/lesli/partials/_application-lesli-icons.html.erb +1 -1
- data/app/views/lesli/partials/_application-lesli-javascript.html.erb +2 -2
- data/app/views/lesli/partials/_application-lesli-navigation.html.erb +8 -1
- data/app/views/lesli/partials/_application-lesli-panels.html.erb +7 -7
- data/app/views/lesli/partials/_application-lesli-scss.html.erb +2 -2
- data/app/views/lesli/wrappers/_application-devise-simple.erb +1 -1
- data/app/views/lesli/wrappers/_application-devise.html.erb +5 -7
- data/config/initializers/devise.rb +335 -335
- data/config/initializers/lesli.rb +9 -2
- data/config/locales/translations.en.yml +9 -3
- data/config/locales/translations.es.yml +9 -3
- data/config/locales/translations.fr.yml +30 -0
- data/config/locales/translations.it.yml +30 -0
- data/config/locales/translations.pt.yml +30 -0
- data/config/routes.rb +1 -10
- data/db/migrate/{v1.0/0010003010_create_lesli_user_details.rb → v1/0010000110_create_lesli_accounts.rb} +19 -13
- data/db/migrate/{v1.0/0010000110_create_lesli_accounts.rb → v1/0010001010_create_lesli_account_details.rb} +5 -7
- data/db/migrate/{v1.0/0010001010_create_lesli_account_settings.rb → v1/0010001110_create_lesli_account_settings.rb} +2 -2
- data/db/seed/development/accounts.rb +10 -7
- data/db/seed/development/users.rb +20 -20
- data/db/seed/production/accounts.rb +10 -7
- data/lib/generators/application_lesli_generator.rb +164 -0
- data/lib/generators/lesli/spec/USAGE +8 -0
- data/lib/generators/lesli/spec/spec_generator.rb +25 -0
- data/lib/generators/lesli/spec/templates/spec-factory.template +17 -0
- data/lib/generators/lesli/spec/templates/spec-model.template +70 -0
- data/lib/lesli/configuration.rb +1 -1
- data/lib/lesli/engine.rb +3 -14
- data/lib/{scss/devise/passwords.scss → lesli/r_spec.rb} +12 -5
- data/lib/lesli/routing.rb +51 -20
- data/lib/lesli/version.rb +2 -2
- data/lib/lesli.rb +1 -0
- data/lib/scss/cloud-objects/discussion.scss +8 -5
- data/lib/scss/layouts/application-component.scss +1 -1
- data/lib/scss/{devise/sessions.scss → layouts/application-content.scss} +4 -4
- data/lib/scss/layouts/application-header.scss +38 -108
- data/lib/scss/layouts/{application-navbar.scss → application-navigation.scss} +23 -5
- data/lib/scss/layouts/application-search.scss +1 -1
- data/lib/scss/{elements/msg.scss → overrides/notification.scss} +16 -18
- data/lib/scss/pages/devise-simple.scss +4 -2
- data/lib/scss/pages/devise.scss +111 -107
- data/lib/scss/panels/panel-notification.scss +1 -1
- data/lib/scss/panels/{panel-ticket.scss → panel-support-ticket.scss} +3 -4
- data/lib/scss/settings/variables.scss +1 -1
- data/lib/scss/templates/application.scss +14 -41
- data/lib/scss/templates/public.scss +6 -4
- data/lib/tasks/lesli/controllers.rake +1 -1
- data/lib/tasks/lesli/db.rake +24 -12
- data/lib/tasks/lesli_tasks.rake +7 -7
- data/lib/vue/application.js +18 -15
- data/lib/vue/{refactor/shared/cloudobjects → cloudobjects}/discussion/content.vue +10 -8
- data/lib/vue/cloudobjects/discussion/element.vue +170 -0
- data/lib/vue/{refactor/shared/cloudobjects → cloudobjects}/discussion/filters.vue +1 -1
- data/lib/vue/{refactor/shared/cloudobjects → cloudobjects}/discussion/new.vue +20 -16
- data/lib/vue/{refactor/shared/cloudobjects → cloudobjects}/discussion.vue +25 -24
- data/lib/vue/{refactor/stores/cloudobjects → cloudobjects/stores}/discussion.js +7 -16
- data/lib/vue/layouts/application-component.vue +2 -2
- data/lib/vue/layouts/application-header.vue +109 -88
- data/lib/vue/panels/{panel-notifications.vue → panel-bell-notifications.vue} +15 -19
- data/lib/vue/panels/panel-support-tickets.vue +163 -0
- data/lib/vue/panels/stores/bell-notifications.js +46 -0
- data/lib/vue/panels/stores/support-tickets.js +103 -0
- data/lib/vue/shared/dashboards/apps/edit.vue +10 -10
- data/lib/vue/shared/dashboards/components/form.vue +31 -40
- data/lib/vue/shared/stores/dashboard.js +2 -0
- data/lib/vue/shared/stores/layout.js +2 -1
- data/lib/{scss/devise/confirmations.scss → vue/shared/stores/users.js} +22 -21
- data/lib/vue/stores/translations.json +119 -2
- data/lib/webpack/base.js +18 -12
- data/lib/webpack/core.js +16 -12
- data/lib/webpack/engines.js +3 -1
- data/lib/webpack/root.js +105 -0
- data/lib/webpack/version.js +37 -0
- data/readme.md +16 -15
- metadata +58 -92
- data/app/assets/icons/lesli/engine-guard.svg +0 -1
- data/app/assets/javascripts/lesli/users/sessions.js +0 -1
- data/app/assets/stylesheets/lesli/users/sessions.css +0 -1
- data/app/controllers/users/confirmations_controller.rb +0 -66
- data/app/controllers/users/omniauth_callbacks_controller.rb +0 -30
- data/app/controllers/users/passwords_controller.rb +0 -71
- data/app/controllers/users/registrations_controller.rb +0 -141
- data/app/controllers/users/sessions_controller.rb +0 -141
- data/app/controllers/users/unlocks_controller.rb +0 -30
- data/app/views/devise/confirmations/new.html.erb +0 -2
- data/app/views/devise/confirmations/show.html.erb +0 -63
- data/app/views/devise/mailer/confirmation_instructions.html.erb +0 -5
- data/app/views/devise/mailer/email_changed.html.erb +0 -7
- data/app/views/devise/mailer/password_change.html.erb +0 -3
- data/app/views/devise/mailer/reset_password_instructions.html.erb +0 -8
- data/app/views/devise/mailer/unlock_instructions.html.erb +0 -7
- data/app/views/devise/passwords/edit.html.erb +0 -79
- data/app/views/devise/passwords/new.html.erb +0 -75
- data/app/views/devise/registrations/edit.html.erb +0 -43
- data/app/views/devise/registrations/new.html.erb +0 -147
- data/app/views/devise/sessions/new.html.erb +0 -114
- data/app/views/devise/shared/_demo.html.erb +0 -7
- data/app/views/devise/shared/_error_messages.html.erb +0 -15
- data/app/views/devise/shared/_links.html.erb +0 -96
- data/app/views/devise/unlocks/new.html.erb +0 -16
- data/db/migrate/v1.0/0010000210_create_lesli_roles.rb +0 -59
- data/db/migrate/v1.0/0010000310_create_lesli_users.rb +0 -97
- data/db/migrate/v1.0/0010003110_create_lesli_user_settings.rb +0 -44
- data/db/migrate/v1.0/0010003210_create_lesli_user_sessions.rb +0 -55
- data/db/migrate/v1.0/0010003410_create_lesli_user_powers.rb +0 -43
- data/db/migrate/v1.0/0010004010_create_lesli_user_logs.rb +0 -45
- data/db/migrate/v1.0/0010005010_create_lesli_descriptors.rb +0 -44
- data/db/migrate/v1.0/0010005110_create_lesli_descriptor_privileges.rb +0 -45
- data/db/migrate/v1.0/0010005210_create_lesli_descriptor_activities.rb +0 -49
- data/db/migrate/v1.0/0010005510_create_lesli_role_powers.rb +0 -51
- data/db/migrate/v1.0/0010005710_create_lesli_role_privileges.rb +0 -45
- data/lib/scss/bulma/loader.scss +0 -92
- data/lib/scss/components/editor-richtext.scss +0 -88
- data/lib/scss/devise/oauth.scss +0 -34
- data/lib/scss/elements/avatar.scss +0 -48
- data/lib/scss/elements/calendar.scss +0 -47
- data/lib/scss/elements/toggle.scss +0 -102
- data/lib/vue/devise/confirmations.js +0 -33
- data/lib/vue/devise/passwords.js +0 -137
- data/lib/vue/devise/registrations.js +0 -157
- data/lib/vue/devise/sessions.js +0 -148
- data/lib/vue/panels/panel-tickets.vue +0 -181
- data/lib/vue/refactor/shared/cloudobjects/discussion/element.vue +0 -132
- data/lib/vue/shared/stores/account.js +0 -113
- /data/app/assets/icons/lesli/{engine-driver.svg → engine-calendar.svg} +0 -0
- /data/db/migrate/{v1.0 → v1}/0010000610_create_lesli_system_controllers.rb +0 -0
- /data/db/migrate/{v1.0 → v1}/0010000710_create_lesli_system_controller_actions.rb +0 -0
- /data/db/migrate/{v1.0 → v1}/0010001210_create_lesli_account_activities.rb +0 -0
- /data/db/migrate/{v1.0 → v1}/0010001410_create_lesli_account_logs.rb +0 -0
data/lib/scss/pages/devise.scss
CHANGED
|
@@ -17,9 +17,9 @@ GNU General Public License for more details.
|
|
|
17
17
|
You should have received a copy of the GNU General Public License
|
|
18
18
|
along with this program. If not, see http://www.gnu.org/licenses/.
|
|
19
19
|
|
|
20
|
-
Lesli · Ruby on Rails SaaS
|
|
20
|
+
Lesli · Ruby on Rails SaaS Development Framework.
|
|
21
21
|
|
|
22
|
-
Made with ♥ by
|
|
22
|
+
Made with ♥ by LesliTech
|
|
23
23
|
Building a better future, one line of code at a time.
|
|
24
24
|
|
|
25
25
|
@contact hello@lesli.tech
|
|
@@ -27,7 +27,7 @@ Building a better future, one line of code at a time.
|
|
|
27
27
|
@license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
|
|
28
28
|
|
|
29
29
|
// · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
|
|
30
|
-
// ·
|
|
30
|
+
// ·
|
|
31
31
|
*/
|
|
32
32
|
|
|
33
33
|
|
|
@@ -36,7 +36,27 @@ Building a better future, one line of code at a time.
|
|
|
36
36
|
|
|
37
37
|
|
|
38
38
|
// ·
|
|
39
|
-
@import "
|
|
39
|
+
@import "Lesli/scss/templates/public";
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
// · reusable background styles
|
|
43
|
+
@mixin lesli-login-background() {
|
|
44
|
+
background: linear-gradient(0deg,
|
|
45
|
+
rgba(49, 106, 255, 0.4),
|
|
46
|
+
rgba(49, 106, 255, 0.4)),
|
|
47
|
+
url("lesli/brand/login-background.jpg");
|
|
48
|
+
background-position: center;
|
|
49
|
+
background-size: cover;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
// ·
|
|
54
|
+
h1,
|
|
55
|
+
.links,
|
|
56
|
+
.terms {
|
|
57
|
+
width: 100%;
|
|
58
|
+
max-width: 320px;
|
|
59
|
+
}
|
|
40
60
|
|
|
41
61
|
|
|
42
62
|
// ·
|
|
@@ -47,129 +67,113 @@ h1 {
|
|
|
47
67
|
}
|
|
48
68
|
|
|
49
69
|
|
|
50
|
-
//
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
.columns {
|
|
55
|
-
width: 100%;
|
|
56
|
-
}
|
|
70
|
+
// column container
|
|
71
|
+
.column.login-form {
|
|
72
|
+
max-width: 550px;
|
|
73
|
+
margin: 0 auto;
|
|
57
74
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
75
|
+
// logo container
|
|
76
|
+
.logo {
|
|
77
|
+
img {
|
|
78
|
+
width: initial;
|
|
79
|
+
height: initial;
|
|
80
|
+
}
|
|
81
|
+
p {
|
|
82
|
+
font-weight: 600;
|
|
83
|
+
text-align: left;
|
|
84
|
+
}
|
|
61
85
|
}
|
|
62
86
|
|
|
63
|
-
|
|
64
|
-
min-height: 100vh;
|
|
87
|
+
form {
|
|
65
88
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
max-width: 320px;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
// logo container
|
|
75
|
-
.logo {
|
|
76
|
-
img {
|
|
77
|
-
width: initial;
|
|
78
|
-
height: initial;
|
|
79
|
-
}
|
|
80
|
-
p {
|
|
81
|
-
font-weight: 600;
|
|
82
|
-
text-align: left;
|
|
89
|
+
.demo {
|
|
90
|
+
fieldset {
|
|
91
|
+
padding: 4px 8px;
|
|
92
|
+
border-radius: 4px;
|
|
93
|
+
border: 1px solid silver;
|
|
83
94
|
}
|
|
84
95
|
}
|
|
85
96
|
|
|
86
|
-
|
|
97
|
+
label {
|
|
98
|
+
font-weight: 400;
|
|
99
|
+
font-size: 15px;
|
|
100
|
+
line-height: 150%;
|
|
101
|
+
}
|
|
87
102
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
103
|
+
input {
|
|
104
|
+
border-radius: 6px;
|
|
105
|
+
box-shadow: none;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
input[type="password"] {
|
|
109
|
+
font-family: Verdana;
|
|
110
|
+
letter-spacing: 0.1rem;
|
|
111
|
+
}
|
|
95
112
|
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
font-size: 15px;
|
|
99
|
-
line-height: 150%;
|
|
100
|
-
}
|
|
101
|
-
input {
|
|
102
|
-
border-radius: 6px;
|
|
103
|
-
box-shadow: none;
|
|
104
|
-
}
|
|
105
|
-
input[type="submit"] {
|
|
106
|
-
font-weight: 600;
|
|
107
|
-
}
|
|
108
|
-
input[type="password"] {
|
|
109
|
-
font-family: Verdana;
|
|
110
|
-
letter-spacing: 0.125em;
|
|
111
|
-
}
|
|
112
|
-
p.help {
|
|
113
|
-
font-weight: 600;
|
|
114
|
-
}
|
|
115
|
-
p.account {
|
|
116
|
-
font-size: 15px;
|
|
117
|
-
font-weight: 400;
|
|
118
|
-
}
|
|
113
|
+
p.help {
|
|
114
|
+
font-weight: 600;
|
|
119
115
|
}
|
|
120
116
|
|
|
121
|
-
.
|
|
122
|
-
font-
|
|
123
|
-
|
|
124
|
-
font-family: "Exo";
|
|
117
|
+
p.account {
|
|
118
|
+
font-size: 15px;
|
|
119
|
+
font-weight: 400;
|
|
125
120
|
}
|
|
121
|
+
}
|
|
126
122
|
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
}
|
|
137
|
-
span {
|
|
138
|
-
font-family: "Domine";
|
|
139
|
-
font-weight: 500;
|
|
140
|
-
font-size: 14px;
|
|
141
|
-
//color: lesli-css-color(lesli, navy);
|
|
123
|
+
.links {
|
|
124
|
+
|
|
125
|
+
a {
|
|
126
|
+
width: 100%;
|
|
127
|
+
display: flex;
|
|
128
|
+
flex-grow: 1;
|
|
129
|
+
padding: .8rem 0;
|
|
130
|
+
&:not(:last-child) {
|
|
131
|
+
border-bottom: 1px solid lesli-css-color(silver, 300);
|
|
142
132
|
}
|
|
143
133
|
}
|
|
144
134
|
|
|
145
|
-
|
|
135
|
+
span {
|
|
146
136
|
font-family: "Domine";
|
|
147
|
-
font-weight:
|
|
148
|
-
font-size:
|
|
149
|
-
line-height: 19px;
|
|
150
|
-
letter-spacing: -44%;
|
|
137
|
+
font-weight: 500;
|
|
138
|
+
font-size: 14px;
|
|
151
139
|
}
|
|
140
|
+
}
|
|
152
141
|
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
font-family: "Exo";
|
|
160
|
-
font-weight: 600;
|
|
161
|
-
font-size: 12px;
|
|
162
|
-
line-height: 18px;
|
|
163
|
-
}
|
|
164
|
-
}
|
|
142
|
+
.terms {
|
|
143
|
+
font-family: "Domine";
|
|
144
|
+
font-weight: 400;
|
|
145
|
+
font-size: 12px;
|
|
146
|
+
line-height: 19px;
|
|
147
|
+
letter-spacing: -44%;
|
|
165
148
|
}
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
// column with image background right side
|
|
153
|
+
.column.background {
|
|
154
|
+
@include lesli-login-background;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
|
|
158
|
+
@include lesli-css-breakpoint-until-tablet() {
|
|
166
159
|
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
160
|
+
// login column must be full width on mobile
|
|
161
|
+
.column.login-form {
|
|
162
|
+
width: 100%;
|
|
163
|
+
max-width: 100%;
|
|
164
|
+
@include lesli-login-background;
|
|
165
|
+
|
|
166
|
+
.hero {
|
|
167
|
+
padding: 2rem 0;
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
// center the form
|
|
171
|
+
.hero-body {
|
|
172
|
+
margin: 0 auto;
|
|
173
|
+
max-width: 500px;
|
|
174
|
+
background-color: white;
|
|
175
|
+
border-radius: 6px;
|
|
176
|
+
padding: 1rem 3rem;
|
|
177
|
+
}
|
|
174
178
|
}
|
|
175
179
|
}
|
|
@@ -17,9 +17,9 @@ GNU General Public License for more details.
|
|
|
17
17
|
You should have received a copy of the GNU General Public License
|
|
18
18
|
along with this program. If not, see http://www.gnu.org/licenses/.
|
|
19
19
|
|
|
20
|
-
Lesli · Ruby on Rails SaaS
|
|
20
|
+
Lesli · Ruby on Rails SaaS Development Framework.
|
|
21
21
|
|
|
22
|
-
Made with ♥ by
|
|
22
|
+
Made with ♥ by LesliTech
|
|
23
23
|
Building a better future, one line of code at a time.
|
|
24
24
|
|
|
25
25
|
@contact hello@lesli.tech
|
|
@@ -27,8 +27,7 @@ Building a better future, one line of code at a time.
|
|
|
27
27
|
@license GPLv3 http://www.gnu.org/licenses/gpl-3.0.en.html
|
|
28
28
|
|
|
29
29
|
// · ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~ ~·~
|
|
30
|
-
// ·
|
|
31
|
-
|
|
30
|
+
// ·
|
|
32
31
|
*/
|
|
33
32
|
|
|
34
33
|
|
|
@@ -33,44 +33,40 @@ Building a better future, one line of code at a time.
|
|
|
33
33
|
|
|
34
34
|
// ·
|
|
35
35
|
@import "lesli-css";
|
|
36
|
-
@import "lesli-
|
|
36
|
+
@import "lesli-css/bulma";
|
|
37
|
+
@import "lesli-vue/elements.css";
|
|
38
|
+
@import "lesli-vue/components.css";
|
|
39
|
+
|
|
37
40
|
|
|
38
41
|
// · Configuration & variables
|
|
39
42
|
@import "Lesli/scss/settings/variables";
|
|
40
43
|
|
|
41
44
|
|
|
42
|
-
// · Include Bulma
|
|
43
|
-
@import "lesli-css/bulma";
|
|
44
|
-
|
|
45
|
-
|
|
46
45
|
// · Font families and icons
|
|
47
46
|
@import "Lesli/scss/fonts/mdicons";
|
|
48
47
|
@import "Lesli/scss/fonts/families";
|
|
49
48
|
@import "Lesli/scss/fonts/remixicons";
|
|
50
49
|
|
|
51
50
|
|
|
52
|
-
// · Some home made helpers
|
|
53
|
-
@import "Lesli/scss/helpers/display";
|
|
54
|
-
@import "Lesli/scss/helpers/tooltip";
|
|
55
|
-
|
|
56
|
-
|
|
57
51
|
// · Lesli application layout
|
|
58
52
|
@import "Lesli/scss/layouts/application-announcements";
|
|
53
|
+
@import "Lesli/scss/layouts/application-navigation";
|
|
59
54
|
@import "Lesli/scss/layouts/application-component";
|
|
60
55
|
@import "Lesli/scss/layouts/application-container";
|
|
56
|
+
@import "Lesli/scss/layouts/application-content";
|
|
61
57
|
@import "Lesli/scss/layouts/application-engines";
|
|
62
58
|
@import "Lesli/scss/layouts/application-sidebar";
|
|
63
59
|
@import "Lesli/scss/layouts/application-header";
|
|
64
|
-
|
|
60
|
+
|
|
65
61
|
@import "Lesli/scss/layouts/application-footer";
|
|
66
62
|
@import "Lesli/scss/layouts/application-search";
|
|
67
63
|
|
|
68
64
|
|
|
69
65
|
// · Lesli core panels
|
|
70
66
|
// @import "lesli/panels/panel-tasks";
|
|
71
|
-
|
|
67
|
+
@import "Lesli/scss/panels/panel-support-ticket";
|
|
72
68
|
// @import "lesli/panels/panel-profile";
|
|
73
|
-
|
|
69
|
+
@import "Lesli/scss/panels/panel-notification";
|
|
74
70
|
// @import "lesli/panels/panel-announcements";
|
|
75
71
|
|
|
76
72
|
|
|
@@ -83,34 +79,18 @@ Building a better future, one line of code at a time.
|
|
|
83
79
|
|
|
84
80
|
|
|
85
81
|
// · Lesli cloud objects
|
|
86
|
-
|
|
82
|
+
@import "Lesli/scss/cloud-objects/discussion";
|
|
87
83
|
// @import "lesli/cloud-objects/file";
|
|
88
84
|
|
|
89
85
|
|
|
90
86
|
// · Overrides for vendor libraries
|
|
91
87
|
// @import "lesli/overrides/sweetalert";
|
|
88
|
+
@import "Lesli/scss/overrides/notification";
|
|
92
89
|
|
|
93
90
|
|
|
94
|
-
// ·
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
// @import "lesli/elements/empty";
|
|
98
|
-
// @import "lesli/elements/file-uploader";
|
|
99
|
-
// @import "lesli/elements/gallery";
|
|
100
|
-
//@import "Lesli/scss/elements/header";
|
|
101
|
-
// @import "lesli/elements/input-tag";
|
|
102
|
-
// @import "lesli/elements/loading";
|
|
103
|
-
// @import "lesli/elements/map";
|
|
104
|
-
// @import "lesli/elements/msg";
|
|
105
|
-
// @import "lesli/elements/navbar";
|
|
106
|
-
// @import "lesli/elements/panel";
|
|
107
|
-
//@import "Lesli/scss/elements/form";
|
|
108
|
-
//@import "Lesli/scss/elements/tab";
|
|
109
|
-
// @import "lesli/elements/table";
|
|
110
|
-
// @import "lesli/elements/toggle";
|
|
111
|
-
// @import "lesli/elements/toolbar";
|
|
112
|
-
// @import "lesli/elements/calendar";
|
|
113
|
-
// @import "lesli/elements/card";
|
|
91
|
+
// · Some home made helpers
|
|
92
|
+
@import "Lesli/scss/helpers/display";
|
|
93
|
+
@import "Lesli/scss/helpers/tooltip";
|
|
114
94
|
|
|
115
95
|
|
|
116
96
|
html,
|
|
@@ -126,13 +106,6 @@ body {
|
|
|
126
106
|
}
|
|
127
107
|
|
|
128
108
|
|
|
129
|
-
// ·
|
|
130
|
-
#lesli-application {
|
|
131
|
-
display: flex;
|
|
132
|
-
flex-wrap: wrap;
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
|
|
136
109
|
// · titles
|
|
137
110
|
h1, h2, h3, h4, h5, h6 {
|
|
138
111
|
font-family: "Domine", $family-primary;
|
|
@@ -36,16 +36,18 @@ Building a better future, one line of code at a time.
|
|
|
36
36
|
|
|
37
37
|
|
|
38
38
|
// · Configuration & variables
|
|
39
|
-
@import "
|
|
39
|
+
@import "Lesli/scss/settings/variables";
|
|
40
40
|
|
|
41
41
|
|
|
42
42
|
// · Include Bulma
|
|
43
|
-
@import "
|
|
43
|
+
@import "lesli-css/bulma";
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
// · Font families and icons
|
|
47
|
-
@import "
|
|
48
|
-
@import "
|
|
47
|
+
@import "Lesli/scss/fonts/mdicons";
|
|
48
|
+
@import "Lesli/scss/fonts/families";
|
|
49
|
+
@import "Lesli/scss/fonts/remixicons";
|
|
50
|
+
|
|
49
51
|
|
|
50
52
|
|
|
51
53
|
// ·
|
|
@@ -36,7 +36,7 @@ namespace :lesli do
|
|
|
36
36
|
|
|
37
37
|
desc "Scan new routes added and create role privileges"
|
|
38
38
|
task build: :environment do
|
|
39
|
-
L2.msg("Registering engines, controllers and actions")
|
|
39
|
+
L2.msg("Lesli: Registering engines, controllers and actions")
|
|
40
40
|
Lesli::ControllerOperator.new.build
|
|
41
41
|
end
|
|
42
42
|
end
|
data/lib/tasks/lesli/db.rake
CHANGED
|
@@ -19,7 +19,7 @@ along with this program. If not, see http://www.gnu.org/licenses/.
|
|
|
19
19
|
|
|
20
20
|
Lesli · Ruby on Rails SaaS Development Framework.
|
|
21
21
|
|
|
22
|
-
Made with ♥ by
|
|
22
|
+
Made with ♥ by LesliTech
|
|
23
23
|
Building a better future, one line of code at a time.
|
|
24
24
|
|
|
25
25
|
@contact hello@lesli.tech
|
|
@@ -41,11 +41,13 @@ namespace :lesli do
|
|
|
41
41
|
migrate()
|
|
42
42
|
prepare()
|
|
43
43
|
seed()
|
|
44
|
+
status()
|
|
44
45
|
end
|
|
45
46
|
|
|
46
47
|
desc "Seed & prepare Lesli database (development only)"
|
|
47
48
|
task :seed => :environment do |task, args|
|
|
48
49
|
seed()
|
|
50
|
+
status()
|
|
49
51
|
end
|
|
50
52
|
|
|
51
53
|
desc "Migrate, seed & prepare the Lesli database (development only)"
|
|
@@ -53,20 +55,22 @@ namespace :lesli do
|
|
|
53
55
|
migrate()
|
|
54
56
|
prepare()
|
|
55
57
|
seed()
|
|
58
|
+
status()
|
|
56
59
|
end
|
|
57
60
|
|
|
58
|
-
desc "Migrate
|
|
59
|
-
task :
|
|
61
|
+
desc "Migrate, prepare && user the Lesli database"
|
|
62
|
+
task :deploy => :environment do |task, args|
|
|
63
|
+
create()
|
|
60
64
|
migrate()
|
|
61
65
|
prepare()
|
|
66
|
+
status()
|
|
62
67
|
end
|
|
63
68
|
|
|
64
|
-
desc "Migrate
|
|
65
|
-
task :
|
|
66
|
-
create()
|
|
69
|
+
desc "Migrate & prepare the Lesli database"
|
|
70
|
+
task :setup => :environment do |task, args|
|
|
67
71
|
migrate()
|
|
68
72
|
prepare()
|
|
69
|
-
|
|
73
|
+
status()
|
|
70
74
|
end
|
|
71
75
|
end
|
|
72
76
|
|
|
@@ -100,7 +104,6 @@ namespace :lesli do
|
|
|
100
104
|
Rake::Task['db:migrate'].invoke
|
|
101
105
|
end
|
|
102
106
|
|
|
103
|
-
desc "Seed the Lesli database"
|
|
104
107
|
def seed
|
|
105
108
|
|
|
106
109
|
# print a message to let the users show the action running
|
|
@@ -113,26 +116,35 @@ namespace :lesli do
|
|
|
113
116
|
Lesli::Engine.load_seed
|
|
114
117
|
LesliBell::Engine.load_seed if defined?(LesliBell)
|
|
115
118
|
LesliHelp::Engine.load_seed if defined?(LesliHelp)
|
|
119
|
+
LesliAdmin::Engine.load_seed if defined?(LesliAdmin)
|
|
116
120
|
LesliAudit::Engine.load_seed if defined?(LesliAudit)
|
|
117
121
|
LesliLetter::Engine.load_seed if defined?(LesliLetter)
|
|
122
|
+
LesliSupport::Engine.load_seed if defined?(LesliSupport)
|
|
123
|
+
LesliCalendar::Engine.load_seed if defined?(LesliCalendar)
|
|
118
124
|
end
|
|
119
125
|
|
|
120
|
-
desc "Prepare the Lesli database"
|
|
121
126
|
def prepare
|
|
122
127
|
|
|
123
128
|
# print a message to let the users show the action running
|
|
124
129
|
L2.msg("Prepare the Lesli database")
|
|
125
130
|
|
|
131
|
+
Lesli::Account.all.each do |account|
|
|
132
|
+
account.initialize_account
|
|
133
|
+
account.initialize_engines
|
|
134
|
+
end
|
|
135
|
+
|
|
126
136
|
# scan rails routes to build the controllers index
|
|
127
137
|
Rake::Task['lesli:controllers:build'].invoke
|
|
128
138
|
|
|
129
139
|
# scan rails routes to build the controllers index
|
|
130
|
-
Rake::Task['lesli:
|
|
140
|
+
Rake::Task['lesli:security:privileges'].invoke if defined?(LesliSecurity)
|
|
131
141
|
|
|
132
142
|
# scan rails routes to build the base of translations
|
|
133
|
-
Rake::Task['lesli:babel:
|
|
143
|
+
Rake::Task['lesli:babel:scan'].invoke if defined?(LesliBabel)
|
|
144
|
+
end
|
|
134
145
|
|
|
146
|
+
def status
|
|
135
147
|
# print the lesli gems
|
|
136
148
|
Rake::Task['lesli:status'].invoke
|
|
137
|
-
end
|
|
149
|
+
end
|
|
138
150
|
end
|
data/lib/tasks/lesli_tasks.rake
CHANGED
|
@@ -37,13 +37,13 @@ namespace :lesli do
|
|
|
37
37
|
namespace :babel do
|
|
38
38
|
|
|
39
39
|
desc "Scan and register labels"
|
|
40
|
-
task :
|
|
41
|
-
Rake::Task['lesli_babel:
|
|
40
|
+
task :scan => :environment do |task, args|
|
|
41
|
+
Rake::Task['lesli_babel:scan'].invoke
|
|
42
42
|
end
|
|
43
43
|
|
|
44
|
-
desc "
|
|
45
|
-
task :
|
|
46
|
-
Rake::Task['lesli_babel:
|
|
44
|
+
desc "Import local translations into LesliBabel"
|
|
45
|
+
task :import => :environment do |task, args|
|
|
46
|
+
Rake::Task['lesli_babel:import'].invoke
|
|
47
47
|
end
|
|
48
48
|
|
|
49
49
|
desc "Export translations to json files"
|
|
@@ -52,11 +52,11 @@ namespace :lesli do
|
|
|
52
52
|
end
|
|
53
53
|
end
|
|
54
54
|
|
|
55
|
-
namespace :
|
|
55
|
+
namespace :security do
|
|
56
56
|
|
|
57
57
|
desc "Syncing privileges for all the available roles"
|
|
58
58
|
task :privileges => :environment do |task, args|
|
|
59
|
-
Rake::Task['
|
|
59
|
+
Rake::Task['lesli_security:privileges'].invoke
|
|
60
60
|
end
|
|
61
61
|
end
|
|
62
62
|
|