lesli 5.0.2 → 5.0.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/config/lesli_manifest.js +2 -1
- data/app/assets/javascripts/lesli/users/confirmations.js +32 -0
- data/app/assets/javascripts/lesli/users/passwords.js +3 -3
- data/app/assets/javascripts/lesli/users/registrations.js +2 -2
- data/app/assets/javascripts/lesli/users/sessions.js +2 -2
- data/app/assets/stylesheets/lesli/users/confirmations.scss +28 -6
- data/app/controllers/lesli/abouts_controller.rb +66 -0
- data/app/controllers/lesli/interfaces/application/authorization.rb +2 -2
- data/app/controllers/lesli/interfaces/application/logger.rb +14 -38
- data/app/controllers/lesli/roles_controller.rb +3 -1
- data/app/controllers/users/confirmations_controller.rb +63 -27
- data/app/controllers/users/passwords_controller.rb +70 -30
- data/app/controllers/users/sessions_controller.rb +2 -4
- data/app/lib/lesli/system.rb +13 -5
- data/app/mailers/lesli/application_lesli_mailer.rb +8 -19
- data/app/mailers/lesli/devise_mailer.rb +29 -3
- data/app/models/concerns/account_initializer.rb +91 -0
- data/app/models/concerns/{user_guard.rb → user_security.rb} +7 -8
- data/app/models/lesli/account.rb +8 -26
- data/app/models/lesli/application_lesli_record.rb +1 -0
- data/app/models/lesli/descriptor/privilege.rb +38 -0
- data/app/models/lesli/descriptor.rb +18 -1
- data/app/models/lesli/role/power.rb +70 -0
- data/app/models/lesli/role/privilege.rb +38 -0
- data/app/models/lesli/role.rb +20 -15
- data/app/models/lesli/user/{role.rb → power.rb} +1 -1
- data/app/{services/lesli/role_service.rb → models/lesli/user/setting.rb} +10 -9
- data/app/models/lesli/user.rb +11 -20
- data/app/operators/lesli/descriptor_privilege_operator.rb +75 -0
- data/app/operators/lesli/role_power_operator.rb +108 -0
- data/app/operators/lesli/user_registration_operator.rb +121 -0
- data/app/services/lesli/user_service.rb +2 -4
- data/app/services/lesli/{user/session_service.rb → user_session_service.rb} +11 -4
- data/app/views/devise/confirmations/new.html.erb +0 -14
- data/app/views/devise/confirmations/show.html.erb +63 -0
- data/app/views/devise/passwords/edit.html.erb +78 -24
- data/app/views/devise/passwords/new.html.erb +1 -2
- data/app/views/lesli/emails/devise_mailer/confirmation_instructions.html.erb +1 -1
- data/app/views/lesli/emails/devise_mailer/reset_password_instructions.html.erb +23 -0
- data/app/views/lesli/partials/_application-lesli-header.html.erb +3 -1
- data/config/initializers/devise.rb +2 -0
- data/config/routes.rb +2 -0
- data/db/migrate/v1.0/0010000110_create_lesli_accounts.rb +2 -0
- data/db/{tables/0010001010_create_account_settings.rb → migrate/v1.0/0010001010_create_lesli_account_settings.rb} +5 -5
- data/db/{tables/0010003110_create_user_settings.rb → migrate/v1.0/0010003110_create_lesli_user_settings.rb} +4 -4
- data/db/migrate/v1.0/0010003210_create_lesli_user_sessions.rb +6 -2
- data/db/migrate/v1.0/{0010003410_create_lesli_user_roles.rb → 0010003410_create_lesli_user_powers.rb} +4 -4
- data/db/migrate/v1.0/0010005010_create_lesli_descriptors.rb +1 -1
- data/db/migrate/v1.0/{0010003910_create_lesli_user_agents.rb → 0010005510_create_lesli_role_powers.rb} +7 -9
- data/db/{tables/0010005710_create_role_privileges.rb → migrate/v1.0/0010005710_create_lesli_role_privileges.rb} +6 -6
- data/db/seed/development/users.rb +4 -4
- data/db/seed/tools.rb +4 -4
- data/lib/lesli/engine.rb +33 -10
- data/lib/lesli/version.rb +1 -1
- data/lib/sass/lesli/bulma/loader.scss +3 -0
- data/lib/sass/lesli/pages/devise-simple.scss +2 -1
- data/lib/tasks/lesli/controllers.rake +3 -6
- data/lib/tasks/lesli/db.rake +11 -1
- data/lib/tasks/lesli/role.rake +54 -0
- data/lib/vue/application.js +9 -2
- data/lib/vue/devise/passwords.js +3 -3
- data/lib/vue/layouts/application-header.vue +10 -3
- data/lib/webpack/core.js +2 -1
- data/readme.md +23 -7
- data/vendor/bulma/LICENSE +21 -0
- data/vendor/bulma/bulma.sass +10 -0
- data/vendor/bulma/css/bulma-rtl.css +11851 -0
- data/vendor/bulma/css/bulma-rtl.min.css +1 -0
- data/vendor/bulma/css/bulma.css +11851 -0
- data/vendor/bulma/css/bulma.min.css +1 -0
- data/vendor/bulma/sass/base/_all.sass +6 -0
- data/vendor/bulma/sass/base/animations.sass +5 -0
- data/vendor/bulma/sass/base/generic.sass +145 -0
- data/vendor/bulma/sass/base/helpers.sass +1 -0
- data/vendor/bulma/sass/base/minireset.sass +79 -0
- data/vendor/bulma/sass/components/_all.sass +15 -0
- data/vendor/bulma/sass/components/breadcrumb.sass +77 -0
- data/vendor/bulma/sass/components/card.sass +103 -0
- data/vendor/bulma/sass/components/dropdown.sass +83 -0
- data/vendor/bulma/sass/components/level.sass +79 -0
- data/vendor/bulma/sass/components/media.sass +59 -0
- data/vendor/bulma/sass/components/menu.sass +59 -0
- data/vendor/bulma/sass/components/message.sass +101 -0
- data/vendor/bulma/sass/components/modal.sass +117 -0
- data/vendor/bulma/sass/components/navbar.sass +446 -0
- data/vendor/bulma/sass/components/pagination.sass +167 -0
- data/vendor/bulma/sass/components/panel.sass +121 -0
- data/vendor/bulma/sass/components/tabs.sass +176 -0
- data/vendor/bulma/sass/elements/_all.sass +16 -0
- data/vendor/bulma/sass/elements/box.sass +26 -0
- data/vendor/bulma/sass/elements/button.sass +357 -0
- data/vendor/bulma/sass/elements/container.sass +29 -0
- data/vendor/bulma/sass/elements/content.sass +162 -0
- data/vendor/bulma/sass/elements/form.sass +1 -0
- data/vendor/bulma/sass/elements/icon.sass +46 -0
- data/vendor/bulma/sass/elements/image.sass +73 -0
- data/vendor/bulma/sass/elements/notification.sass +52 -0
- data/vendor/bulma/sass/elements/other.sass +31 -0
- data/vendor/bulma/sass/elements/progress.sass +73 -0
- data/vendor/bulma/sass/elements/table.sass +134 -0
- data/vendor/bulma/sass/elements/tag.sass +140 -0
- data/vendor/bulma/sass/elements/title.sass +70 -0
- data/vendor/bulma/sass/form/_all.sass +9 -0
- data/vendor/bulma/sass/form/checkbox-radio.sass +22 -0
- data/vendor/bulma/sass/form/file.sass +184 -0
- data/vendor/bulma/sass/form/input-textarea.sass +66 -0
- data/vendor/bulma/sass/form/select.sass +88 -0
- data/vendor/bulma/sass/form/shared.sass +60 -0
- data/vendor/bulma/sass/form/tools.sass +215 -0
- data/vendor/bulma/sass/grid/_all.sass +5 -0
- data/vendor/bulma/sass/grid/columns.sass +513 -0
- data/vendor/bulma/sass/grid/tiles.sass +36 -0
- data/vendor/bulma/sass/helpers/_all.sass +12 -0
- data/vendor/bulma/sass/helpers/color.sass +39 -0
- data/vendor/bulma/sass/helpers/flexbox.sass +35 -0
- data/vendor/bulma/sass/helpers/float.sass +10 -0
- data/vendor/bulma/sass/helpers/other.sass +14 -0
- data/vendor/bulma/sass/helpers/overflow.sass +2 -0
- data/vendor/bulma/sass/helpers/position.sass +7 -0
- data/vendor/bulma/sass/helpers/spacing.sass +31 -0
- data/vendor/bulma/sass/helpers/typography.sass +103 -0
- data/vendor/bulma/sass/helpers/visibility.sass +122 -0
- data/vendor/bulma/sass/layout/_all.sass +6 -0
- data/vendor/bulma/sass/layout/footer.sass +11 -0
- data/vendor/bulma/sass/layout/hero.sass +153 -0
- data/vendor/bulma/sass/layout/section.sass +17 -0
- data/vendor/bulma/sass/utilities/_all.sass +9 -0
- data/vendor/bulma/sass/utilities/animations.sass +1 -0
- data/vendor/bulma/sass/utilities/controls.sass +49 -0
- data/vendor/bulma/sass/utilities/derived-variables.sass +114 -0
- data/vendor/bulma/sass/utilities/extends.sass +25 -0
- data/vendor/bulma/sass/utilities/functions.sass +135 -0
- data/vendor/bulma/sass/utilities/initial-variables.sass +79 -0
- data/vendor/bulma/sass/utilities/mixins.sass +303 -0
- data/vendor/lesli-css/_index.scss +34 -0
- data/vendor/lesli-css/lesli.scss +51 -0
- data/vendor/lesli-css/license +28 -0
- data/vendor/lesli-css/src/base/fonts.scss +50 -0
- data/vendor/lesli-css/src/base/normalize.scss +118 -0
- data/vendor/lesli-css/src/components/blockquote.scss +61 -0
- data/vendor/lesli-css/src/components/columns.scss +92 -0
- data/vendor/lesli-css/src/components/container.scss +47 -0
- data/vendor/lesli-css/src/components/grid.scss +0 -0
- data/vendor/lesli-css/src/components/navigation.scss +59 -0
- data/vendor/lesli-css/src/functions/colors.scss +184 -0
- data/vendor/lesli-css/src/helpers/units.scss +44 -0
- data/vendor/lesli-css/src/mixins/breakpoint.scss +184 -0
- data/vendor/lesli-css/src/mixins/flex.scss +80 -0
- data/vendor/lesli-css/src/mixins/scrollbar.scss +46 -0
- data/vendor/lesli-css/src/settings/variables.scss +26 -0
- data/vendor/lesli-css/tests/base/normalize.spec.scss +125 -0
- data/vendor/lesli-css/tests/functions/colors.spec.scss +117 -0
- data/vendor/lesli-css/tests/mixins/breakpoint.spec.scss +429 -0
- data/vendor/lesli-css/tests/mixins/scrollbar.spec.scss +82 -0
- data/vendor/lesli-css/vendor/normalize.scss +351 -0
- data/vendor/remixicon/License +201 -0
- data/vendor/remixicon/fonts/remixicon.css +2583 -0
- metadata +116 -18
- data/app/models/concerns/account_engines.rb +0 -249
- data/app/models/concerns/user_polyfill.rb +0 -134
- data/config/locales/translations.en.yml +0 -7
- data/config/locales/translations.es.yml +0 -7
- data/db/migrate/v1.0/0010001510_create_lesli_account_requests.rb +0 -45
- data/db/migrate/v1.0/0010003810_create_lesli_user_requests.rb +0 -44
- data/db/tables/0010005510_create_role_descriptors.rb +0 -44
@@ -0,0 +1,357 @@
|
|
1
|
+
@import "../utilities/controls"
|
2
|
+
@import "../utilities/mixins"
|
3
|
+
|
4
|
+
$button-color: $text-strong !default
|
5
|
+
$button-background-color: $scheme-main !default
|
6
|
+
$button-family: false !default
|
7
|
+
|
8
|
+
$button-border-color: $border !default
|
9
|
+
$button-border-width: $control-border-width !default
|
10
|
+
|
11
|
+
$button-padding-vertical: calc(0.5em - #{$button-border-width}) !default
|
12
|
+
$button-padding-horizontal: 1em !default
|
13
|
+
|
14
|
+
$button-hover-color: $link-hover !default
|
15
|
+
$button-hover-border-color: $link-hover-border !default
|
16
|
+
|
17
|
+
$button-focus-color: $link-focus !default
|
18
|
+
$button-focus-border-color: $link-focus-border !default
|
19
|
+
$button-focus-box-shadow-size: 0 0 0 0.125em !default
|
20
|
+
$button-focus-box-shadow-color: bulmaRgba($link, 0.25) !default
|
21
|
+
|
22
|
+
$button-active-color: $link-active !default
|
23
|
+
$button-active-border-color: $link-active-border !default
|
24
|
+
|
25
|
+
$button-text-color: $text !default
|
26
|
+
$button-text-decoration: underline !default
|
27
|
+
$button-text-hover-background-color: $background !default
|
28
|
+
$button-text-hover-color: $text-strong !default
|
29
|
+
|
30
|
+
$button-ghost-background: none !default
|
31
|
+
$button-ghost-border-color: transparent !default
|
32
|
+
$button-ghost-color: $link !default
|
33
|
+
$button-ghost-decoration: none !default
|
34
|
+
$button-ghost-hover-color: $link !default
|
35
|
+
$button-ghost-hover-decoration: underline !default
|
36
|
+
|
37
|
+
$button-disabled-background-color: $scheme-main !default
|
38
|
+
$button-disabled-border-color: $border !default
|
39
|
+
$button-disabled-shadow: none !default
|
40
|
+
$button-disabled-opacity: 0.5 !default
|
41
|
+
|
42
|
+
$button-static-color: $text-light !default
|
43
|
+
$button-static-background-color: $scheme-main-ter !default
|
44
|
+
$button-static-border-color: $border !default
|
45
|
+
|
46
|
+
$button-colors: $colors !default
|
47
|
+
$button-responsive-sizes: ("mobile": ("small": ($size-small * 0.75), "normal": ($size-small * 0.875), "medium": $size-small, "large": $size-normal), "tablet-only": ("small": ($size-small * 0.875), "normal": ($size-small), "medium": $size-normal, "large": $size-medium)) !default
|
48
|
+
|
49
|
+
// The button sizes use mixins so they can be used at different breakpoints
|
50
|
+
=button-small
|
51
|
+
&:not(.is-rounded)
|
52
|
+
border-radius: $radius-small
|
53
|
+
font-size: $size-small
|
54
|
+
=button-normal
|
55
|
+
font-size: $size-normal
|
56
|
+
=button-medium
|
57
|
+
font-size: $size-medium
|
58
|
+
=button-large
|
59
|
+
font-size: $size-large
|
60
|
+
|
61
|
+
.button
|
62
|
+
@extend %control
|
63
|
+
@extend %unselectable
|
64
|
+
background-color: $button-background-color
|
65
|
+
border-color: $button-border-color
|
66
|
+
border-width: $button-border-width
|
67
|
+
color: $button-color
|
68
|
+
cursor: pointer
|
69
|
+
@if $button-family
|
70
|
+
font-family: $button-family
|
71
|
+
justify-content: center
|
72
|
+
padding-bottom: $button-padding-vertical
|
73
|
+
padding-left: $button-padding-horizontal
|
74
|
+
padding-right: $button-padding-horizontal
|
75
|
+
padding-top: $button-padding-vertical
|
76
|
+
text-align: center
|
77
|
+
white-space: nowrap
|
78
|
+
strong
|
79
|
+
color: inherit
|
80
|
+
.icon
|
81
|
+
&,
|
82
|
+
&.is-small,
|
83
|
+
&.is-medium,
|
84
|
+
&.is-large
|
85
|
+
height: 1.5em
|
86
|
+
width: 1.5em
|
87
|
+
&:first-child:not(:last-child)
|
88
|
+
+ltr-property("margin", calc(#{-0.5 * $button-padding-horizontal} - #{$button-border-width}), false)
|
89
|
+
+ltr-property("margin", $button-padding-horizontal * 0.25)
|
90
|
+
&:last-child:not(:first-child)
|
91
|
+
+ltr-property("margin", $button-padding-horizontal * 0.25, false)
|
92
|
+
+ltr-property("margin", calc(#{-0.5 * $button-padding-horizontal} - #{$button-border-width}))
|
93
|
+
&:first-child:last-child
|
94
|
+
margin-left: calc(#{-0.5 * $button-padding-horizontal} - #{$button-border-width})
|
95
|
+
margin-right: calc(#{-0.5 * $button-padding-horizontal} - #{$button-border-width})
|
96
|
+
// States
|
97
|
+
&:hover,
|
98
|
+
&.is-hovered
|
99
|
+
border-color: $button-hover-border-color
|
100
|
+
color: $button-hover-color
|
101
|
+
&:focus,
|
102
|
+
&.is-focused
|
103
|
+
border-color: $button-focus-border-color
|
104
|
+
color: $button-focus-color
|
105
|
+
&:not(:active)
|
106
|
+
box-shadow: $button-focus-box-shadow-size $button-focus-box-shadow-color
|
107
|
+
&:active,
|
108
|
+
&.is-active
|
109
|
+
border-color: $button-active-border-color
|
110
|
+
color: $button-active-color
|
111
|
+
// Colors
|
112
|
+
&.is-text
|
113
|
+
background-color: transparent
|
114
|
+
border-color: transparent
|
115
|
+
color: $button-text-color
|
116
|
+
text-decoration: $button-text-decoration
|
117
|
+
&:hover,
|
118
|
+
&.is-hovered,
|
119
|
+
&:focus,
|
120
|
+
&.is-focused
|
121
|
+
background-color: $button-text-hover-background-color
|
122
|
+
color: $button-text-hover-color
|
123
|
+
&:active,
|
124
|
+
&.is-active
|
125
|
+
background-color: bulmaDarken($button-text-hover-background-color, 5%)
|
126
|
+
color: $button-text-hover-color
|
127
|
+
&[disabled],
|
128
|
+
fieldset[disabled] &
|
129
|
+
background-color: transparent
|
130
|
+
border-color: transparent
|
131
|
+
box-shadow: none
|
132
|
+
&.is-ghost
|
133
|
+
background: $button-ghost-background
|
134
|
+
border-color: $button-ghost-border-color
|
135
|
+
color: $button-ghost-color
|
136
|
+
text-decoration: $button-ghost-decoration
|
137
|
+
&:hover,
|
138
|
+
&.is-hovered
|
139
|
+
color: $button-ghost-hover-color
|
140
|
+
text-decoration: $button-ghost-hover-decoration
|
141
|
+
@each $name, $pair in $button-colors
|
142
|
+
$color: nth($pair, 1)
|
143
|
+
$color-invert: nth($pair, 2)
|
144
|
+
&.is-#{$name}
|
145
|
+
background-color: $color
|
146
|
+
border-color: transparent
|
147
|
+
color: $color-invert
|
148
|
+
&:hover,
|
149
|
+
&.is-hovered
|
150
|
+
background-color: bulmaDarken($color, 2.5%)
|
151
|
+
border-color: transparent
|
152
|
+
color: $color-invert
|
153
|
+
&:focus,
|
154
|
+
&.is-focused
|
155
|
+
border-color: transparent
|
156
|
+
color: $color-invert
|
157
|
+
&:not(:active)
|
158
|
+
box-shadow: $button-focus-box-shadow-size bulmaRgba($color, 0.25)
|
159
|
+
&:active,
|
160
|
+
&.is-active
|
161
|
+
background-color: bulmaDarken($color, 5%)
|
162
|
+
border-color: transparent
|
163
|
+
color: $color-invert
|
164
|
+
&[disabled],
|
165
|
+
fieldset[disabled] &
|
166
|
+
background-color: $color
|
167
|
+
border-color: $color
|
168
|
+
box-shadow: none
|
169
|
+
&.is-inverted
|
170
|
+
background-color: $color-invert
|
171
|
+
color: $color
|
172
|
+
&:hover,
|
173
|
+
&.is-hovered
|
174
|
+
background-color: bulmaDarken($color-invert, 5%)
|
175
|
+
&[disabled],
|
176
|
+
fieldset[disabled] &
|
177
|
+
background-color: $color-invert
|
178
|
+
border-color: transparent
|
179
|
+
box-shadow: none
|
180
|
+
color: $color
|
181
|
+
&.is-loading
|
182
|
+
&::after
|
183
|
+
border-color: transparent transparent $color-invert $color-invert !important
|
184
|
+
&.is-outlined
|
185
|
+
background-color: transparent
|
186
|
+
border-color: $color
|
187
|
+
color: $color
|
188
|
+
&:hover,
|
189
|
+
&.is-hovered,
|
190
|
+
&:focus,
|
191
|
+
&.is-focused
|
192
|
+
background-color: $color
|
193
|
+
border-color: $color
|
194
|
+
color: $color-invert
|
195
|
+
&.is-loading
|
196
|
+
&::after
|
197
|
+
border-color: transparent transparent $color $color !important
|
198
|
+
&:hover,
|
199
|
+
&.is-hovered,
|
200
|
+
&:focus,
|
201
|
+
&.is-focused
|
202
|
+
&::after
|
203
|
+
border-color: transparent transparent $color-invert $color-invert !important
|
204
|
+
&[disabled],
|
205
|
+
fieldset[disabled] &
|
206
|
+
background-color: transparent
|
207
|
+
border-color: $color
|
208
|
+
box-shadow: none
|
209
|
+
color: $color
|
210
|
+
&.is-inverted.is-outlined
|
211
|
+
background-color: transparent
|
212
|
+
border-color: $color-invert
|
213
|
+
color: $color-invert
|
214
|
+
&:hover,
|
215
|
+
&.is-hovered,
|
216
|
+
&:focus,
|
217
|
+
&.is-focused
|
218
|
+
background-color: $color-invert
|
219
|
+
color: $color
|
220
|
+
&.is-loading
|
221
|
+
&:hover,
|
222
|
+
&.is-hovered,
|
223
|
+
&:focus,
|
224
|
+
&.is-focused
|
225
|
+
&::after
|
226
|
+
border-color: transparent transparent $color $color !important
|
227
|
+
&[disabled],
|
228
|
+
fieldset[disabled] &
|
229
|
+
background-color: transparent
|
230
|
+
border-color: $color-invert
|
231
|
+
box-shadow: none
|
232
|
+
color: $color-invert
|
233
|
+
// If light and dark colors are provided
|
234
|
+
@if length($pair) >= 4
|
235
|
+
$color-light: nth($pair, 3)
|
236
|
+
$color-dark: nth($pair, 4)
|
237
|
+
&.is-light
|
238
|
+
background-color: $color-light
|
239
|
+
color: $color-dark
|
240
|
+
&:hover,
|
241
|
+
&.is-hovered
|
242
|
+
background-color: bulmaDarken($color-light, 2.5%)
|
243
|
+
border-color: transparent
|
244
|
+
color: $color-dark
|
245
|
+
&:active,
|
246
|
+
&.is-active
|
247
|
+
background-color: bulmaDarken($color-light, 5%)
|
248
|
+
border-color: transparent
|
249
|
+
color: $color-dark
|
250
|
+
// Sizes
|
251
|
+
&.is-small
|
252
|
+
+button-small
|
253
|
+
&.is-normal
|
254
|
+
+button-normal
|
255
|
+
&.is-medium
|
256
|
+
+button-medium
|
257
|
+
&.is-large
|
258
|
+
+button-large
|
259
|
+
// Modifiers
|
260
|
+
&[disabled],
|
261
|
+
fieldset[disabled] &
|
262
|
+
background-color: $button-disabled-background-color
|
263
|
+
border-color: $button-disabled-border-color
|
264
|
+
box-shadow: $button-disabled-shadow
|
265
|
+
opacity: $button-disabled-opacity
|
266
|
+
&.is-fullwidth
|
267
|
+
display: flex
|
268
|
+
width: 100%
|
269
|
+
&.is-loading
|
270
|
+
color: transparent !important
|
271
|
+
pointer-events: none
|
272
|
+
&::after
|
273
|
+
@extend %loader
|
274
|
+
+center(1em)
|
275
|
+
position: absolute !important
|
276
|
+
&.is-static
|
277
|
+
background-color: $button-static-background-color
|
278
|
+
border-color: $button-static-border-color
|
279
|
+
color: $button-static-color
|
280
|
+
box-shadow: none
|
281
|
+
pointer-events: none
|
282
|
+
&.is-rounded
|
283
|
+
border-radius: $radius-rounded
|
284
|
+
padding-left: calc(#{$button-padding-horizontal} + 0.25em)
|
285
|
+
padding-right: calc(#{$button-padding-horizontal} + 0.25em)
|
286
|
+
|
287
|
+
.buttons
|
288
|
+
align-items: center
|
289
|
+
display: flex
|
290
|
+
flex-wrap: wrap
|
291
|
+
justify-content: flex-start
|
292
|
+
.button
|
293
|
+
margin-bottom: 0.5rem
|
294
|
+
&:not(:last-child):not(.is-fullwidth)
|
295
|
+
+ltr-property("margin", 0.5rem)
|
296
|
+
&:last-child
|
297
|
+
margin-bottom: -0.5rem
|
298
|
+
&:not(:last-child)
|
299
|
+
margin-bottom: 1rem
|
300
|
+
// Sizes
|
301
|
+
&.are-small
|
302
|
+
.button:not(.is-normal):not(.is-medium):not(.is-large)
|
303
|
+
+button-small
|
304
|
+
&.are-medium
|
305
|
+
.button:not(.is-small):not(.is-normal):not(.is-large)
|
306
|
+
+button-medium
|
307
|
+
&.are-large
|
308
|
+
.button:not(.is-small):not(.is-normal):not(.is-medium)
|
309
|
+
+button-large
|
310
|
+
&.has-addons
|
311
|
+
.button
|
312
|
+
&:not(:first-child)
|
313
|
+
border-bottom-left-radius: 0
|
314
|
+
border-top-left-radius: 0
|
315
|
+
&:not(:last-child)
|
316
|
+
border-bottom-right-radius: 0
|
317
|
+
border-top-right-radius: 0
|
318
|
+
+ltr-property("margin", -1px)
|
319
|
+
&:last-child
|
320
|
+
+ltr-property("margin", 0)
|
321
|
+
&:hover,
|
322
|
+
&.is-hovered
|
323
|
+
z-index: 2
|
324
|
+
&:focus,
|
325
|
+
&.is-focused,
|
326
|
+
&:active,
|
327
|
+
&.is-active,
|
328
|
+
&.is-selected
|
329
|
+
z-index: 3
|
330
|
+
&:hover
|
331
|
+
z-index: 4
|
332
|
+
&.is-expanded
|
333
|
+
flex-grow: 1
|
334
|
+
flex-shrink: 1
|
335
|
+
&.is-centered
|
336
|
+
justify-content: center
|
337
|
+
&:not(.has-addons)
|
338
|
+
.button:not(.is-fullwidth)
|
339
|
+
margin-left: 0.25rem
|
340
|
+
margin-right: 0.25rem
|
341
|
+
&.is-right
|
342
|
+
justify-content: flex-end
|
343
|
+
&:not(.has-addons)
|
344
|
+
.button:not(.is-fullwidth)
|
345
|
+
margin-left: 0.25rem
|
346
|
+
margin-right: 0.25rem
|
347
|
+
|
348
|
+
@each $bp-name, $bp-sizes in $button-responsive-sizes
|
349
|
+
+breakpoint($bp-name)
|
350
|
+
@each $size, $value in $bp-sizes
|
351
|
+
@if $size != "normal"
|
352
|
+
.button.is-responsive.is-#{$size}
|
353
|
+
font-size: $value
|
354
|
+
@else
|
355
|
+
.button.is-responsive,
|
356
|
+
.button.is-responsive.is-normal
|
357
|
+
font-size: $value
|
@@ -0,0 +1,29 @@
|
|
1
|
+
@import "../utilities/mixins"
|
2
|
+
|
3
|
+
$container-offset: (2 * $gap) !default
|
4
|
+
$container-max-width: $fullhd !default
|
5
|
+
|
6
|
+
.container
|
7
|
+
flex-grow: 1
|
8
|
+
margin: 0 auto
|
9
|
+
position: relative
|
10
|
+
width: auto
|
11
|
+
&.is-fluid
|
12
|
+
max-width: none !important
|
13
|
+
padding-left: $gap
|
14
|
+
padding-right: $gap
|
15
|
+
width: 100%
|
16
|
+
+desktop
|
17
|
+
max-width: $desktop - $container-offset
|
18
|
+
+until-widescreen
|
19
|
+
&.is-widescreen:not(.is-max-desktop)
|
20
|
+
max-width: min($widescreen, $container-max-width) - $container-offset
|
21
|
+
+until-fullhd
|
22
|
+
&.is-fullhd:not(.is-max-desktop):not(.is-max-widescreen)
|
23
|
+
max-width: min($fullhd, $container-max-width) - $container-offset
|
24
|
+
+widescreen
|
25
|
+
&:not(.is-max-desktop)
|
26
|
+
max-width: min($widescreen, $container-max-width) - $container-offset
|
27
|
+
+fullhd
|
28
|
+
&:not(.is-max-desktop):not(.is-max-widescreen)
|
29
|
+
max-width: min($fullhd, $container-max-width) - $container-offset
|
@@ -0,0 +1,162 @@
|
|
1
|
+
@import "../utilities/mixins"
|
2
|
+
|
3
|
+
$content-heading-color: $text-strong !default
|
4
|
+
$content-heading-weight: $weight-semibold !default
|
5
|
+
$content-heading-line-height: 1.125 !default
|
6
|
+
|
7
|
+
$content-block-margin-bottom: 1em !default
|
8
|
+
|
9
|
+
$content-blockquote-background-color: $background !default
|
10
|
+
$content-blockquote-border-left: 5px solid $border !default
|
11
|
+
$content-blockquote-padding: 1.25em 1.5em !default
|
12
|
+
|
13
|
+
$content-pre-padding: 1.25em 1.5em !default
|
14
|
+
|
15
|
+
$content-table-cell-border: 1px solid $border !default
|
16
|
+
$content-table-cell-border-width: 0 0 1px !default
|
17
|
+
$content-table-cell-padding: 0.5em 0.75em !default
|
18
|
+
$content-table-cell-heading-color: $text-strong !default
|
19
|
+
$content-table-head-cell-border-width: 0 0 2px !default
|
20
|
+
$content-table-head-cell-color: $text-strong !default
|
21
|
+
$content-table-body-last-row-cell-border-bottom-width: 0 !default
|
22
|
+
$content-table-foot-cell-border-width: 2px 0 0 !default
|
23
|
+
$content-table-foot-cell-color: $text-strong !default
|
24
|
+
|
25
|
+
.content
|
26
|
+
@extend %block
|
27
|
+
// Inline
|
28
|
+
li + li
|
29
|
+
margin-top: 0.25em
|
30
|
+
// Block
|
31
|
+
p,
|
32
|
+
dl,
|
33
|
+
ol,
|
34
|
+
ul,
|
35
|
+
blockquote,
|
36
|
+
pre,
|
37
|
+
table
|
38
|
+
&:not(:last-child)
|
39
|
+
margin-bottom: $content-block-margin-bottom
|
40
|
+
h1,
|
41
|
+
h2,
|
42
|
+
h3,
|
43
|
+
h4,
|
44
|
+
h5,
|
45
|
+
h6
|
46
|
+
color: $content-heading-color
|
47
|
+
font-weight: $content-heading-weight
|
48
|
+
line-height: $content-heading-line-height
|
49
|
+
h1
|
50
|
+
font-size: 2em
|
51
|
+
margin-bottom: 0.5em
|
52
|
+
&:not(:first-child)
|
53
|
+
margin-top: 1em
|
54
|
+
h2
|
55
|
+
font-size: 1.75em
|
56
|
+
margin-bottom: 0.5714em
|
57
|
+
&:not(:first-child)
|
58
|
+
margin-top: 1.1428em
|
59
|
+
h3
|
60
|
+
font-size: 1.5em
|
61
|
+
margin-bottom: 0.6666em
|
62
|
+
&:not(:first-child)
|
63
|
+
margin-top: 1.3333em
|
64
|
+
h4
|
65
|
+
font-size: 1.25em
|
66
|
+
margin-bottom: 0.8em
|
67
|
+
h5
|
68
|
+
font-size: 1.125em
|
69
|
+
margin-bottom: 0.8888em
|
70
|
+
h6
|
71
|
+
font-size: 1em
|
72
|
+
margin-bottom: 1em
|
73
|
+
blockquote
|
74
|
+
background-color: $content-blockquote-background-color
|
75
|
+
+ltr-property("border", $content-blockquote-border-left, false)
|
76
|
+
padding: $content-blockquote-padding
|
77
|
+
ol
|
78
|
+
list-style-position: outside
|
79
|
+
+ltr-property("margin", 2em, false)
|
80
|
+
margin-top: 1em
|
81
|
+
&:not([type])
|
82
|
+
list-style-type: decimal
|
83
|
+
&.is-lower-alpha
|
84
|
+
list-style-type: lower-alpha
|
85
|
+
&.is-lower-roman
|
86
|
+
list-style-type: lower-roman
|
87
|
+
&.is-upper-alpha
|
88
|
+
list-style-type: upper-alpha
|
89
|
+
&.is-upper-roman
|
90
|
+
list-style-type: upper-roman
|
91
|
+
ul
|
92
|
+
list-style: disc outside
|
93
|
+
+ltr-property("margin", 2em, false)
|
94
|
+
margin-top: 1em
|
95
|
+
ul
|
96
|
+
list-style-type: circle
|
97
|
+
margin-top: 0.5em
|
98
|
+
ul
|
99
|
+
list-style-type: square
|
100
|
+
dd
|
101
|
+
+ltr-property("margin", 2em, false)
|
102
|
+
figure
|
103
|
+
margin-left: 2em
|
104
|
+
margin-right: 2em
|
105
|
+
text-align: center
|
106
|
+
&:not(:first-child)
|
107
|
+
margin-top: 2em
|
108
|
+
&:not(:last-child)
|
109
|
+
margin-bottom: 2em
|
110
|
+
img
|
111
|
+
display: inline-block
|
112
|
+
figcaption
|
113
|
+
font-style: italic
|
114
|
+
pre
|
115
|
+
+overflow-touch
|
116
|
+
overflow-x: auto
|
117
|
+
padding: $content-pre-padding
|
118
|
+
white-space: pre
|
119
|
+
word-wrap: normal
|
120
|
+
sup,
|
121
|
+
sub
|
122
|
+
font-size: 75%
|
123
|
+
table
|
124
|
+
width: 100%
|
125
|
+
td,
|
126
|
+
th
|
127
|
+
border: $content-table-cell-border
|
128
|
+
border-width: $content-table-cell-border-width
|
129
|
+
padding: $content-table-cell-padding
|
130
|
+
vertical-align: top
|
131
|
+
th
|
132
|
+
color: $content-table-cell-heading-color
|
133
|
+
&:not([align])
|
134
|
+
text-align: inherit
|
135
|
+
thead
|
136
|
+
td,
|
137
|
+
th
|
138
|
+
border-width: $content-table-head-cell-border-width
|
139
|
+
color: $content-table-head-cell-color
|
140
|
+
tfoot
|
141
|
+
td,
|
142
|
+
th
|
143
|
+
border-width: $content-table-foot-cell-border-width
|
144
|
+
color: $content-table-foot-cell-color
|
145
|
+
tbody
|
146
|
+
tr
|
147
|
+
&:last-child
|
148
|
+
td,
|
149
|
+
th
|
150
|
+
border-bottom-width: $content-table-body-last-row-cell-border-bottom-width
|
151
|
+
.tabs
|
152
|
+
li + li
|
153
|
+
margin-top: 0
|
154
|
+
// Sizes
|
155
|
+
&.is-small
|
156
|
+
font-size: $size-small
|
157
|
+
&.is-normal
|
158
|
+
font-size: $size-normal
|
159
|
+
&.is-medium
|
160
|
+
font-size: $size-medium
|
161
|
+
&.is-large
|
162
|
+
font-size: $size-large
|
@@ -0,0 +1 @@
|
|
1
|
+
@warn "The form.sass file is DEPRECATED. It has moved into its own /form folder. Please import sass/form/_all instead."
|
@@ -0,0 +1,46 @@
|
|
1
|
+
$icon-dimensions: 1.5rem !default
|
2
|
+
$icon-dimensions-small: 1rem !default
|
3
|
+
$icon-dimensions-medium: 2rem !default
|
4
|
+
$icon-dimensions-large: 3rem !default
|
5
|
+
$icon-text-spacing: 0.25em !default
|
6
|
+
|
7
|
+
.icon
|
8
|
+
align-items: center
|
9
|
+
display: inline-flex
|
10
|
+
justify-content: center
|
11
|
+
height: $icon-dimensions
|
12
|
+
width: $icon-dimensions
|
13
|
+
// Sizes
|
14
|
+
&.is-small
|
15
|
+
height: $icon-dimensions-small
|
16
|
+
width: $icon-dimensions-small
|
17
|
+
&.is-medium
|
18
|
+
height: $icon-dimensions-medium
|
19
|
+
width: $icon-dimensions-medium
|
20
|
+
&.is-large
|
21
|
+
height: $icon-dimensions-large
|
22
|
+
width: $icon-dimensions-large
|
23
|
+
|
24
|
+
.icon-text
|
25
|
+
align-items: flex-start
|
26
|
+
color: inherit
|
27
|
+
display: inline-flex
|
28
|
+
flex-wrap: wrap
|
29
|
+
line-height: $icon-dimensions
|
30
|
+
vertical-align: top
|
31
|
+
.icon
|
32
|
+
flex-grow: 0
|
33
|
+
flex-shrink: 0
|
34
|
+
&:not(:last-child)
|
35
|
+
+ltr
|
36
|
+
margin-right: $icon-text-spacing
|
37
|
+
+rtl
|
38
|
+
margin-left: $icon-text-spacing
|
39
|
+
&:not(:first-child)
|
40
|
+
+ltr
|
41
|
+
margin-left: $icon-text-spacing
|
42
|
+
+rtl
|
43
|
+
margin-right: $icon-text-spacing
|
44
|
+
|
45
|
+
div.icon-text
|
46
|
+
display: flex
|
@@ -0,0 +1,73 @@
|
|
1
|
+
@import "../utilities/mixins"
|
2
|
+
|
3
|
+
$dimensions: 16 24 32 48 64 96 128 !default
|
4
|
+
|
5
|
+
.image
|
6
|
+
display: block
|
7
|
+
position: relative
|
8
|
+
img
|
9
|
+
display: block
|
10
|
+
height: auto
|
11
|
+
width: 100%
|
12
|
+
&.is-rounded
|
13
|
+
border-radius: $radius-rounded
|
14
|
+
&.is-fullwidth
|
15
|
+
width: 100%
|
16
|
+
// Ratio
|
17
|
+
&.is-square,
|
18
|
+
&.is-1by1,
|
19
|
+
&.is-5by4,
|
20
|
+
&.is-4by3,
|
21
|
+
&.is-3by2,
|
22
|
+
&.is-5by3,
|
23
|
+
&.is-16by9,
|
24
|
+
&.is-2by1,
|
25
|
+
&.is-3by1,
|
26
|
+
&.is-4by5,
|
27
|
+
&.is-3by4,
|
28
|
+
&.is-2by3,
|
29
|
+
&.is-3by5,
|
30
|
+
&.is-9by16,
|
31
|
+
&.is-1by2,
|
32
|
+
&.is-1by3
|
33
|
+
img,
|
34
|
+
.has-ratio
|
35
|
+
@extend %overlay
|
36
|
+
height: 100%
|
37
|
+
width: 100%
|
38
|
+
&.is-square,
|
39
|
+
&.is-1by1
|
40
|
+
padding-top: 100%
|
41
|
+
&.is-5by4
|
42
|
+
padding-top: 80%
|
43
|
+
&.is-4by3
|
44
|
+
padding-top: 75%
|
45
|
+
&.is-3by2
|
46
|
+
padding-top: 66.6666%
|
47
|
+
&.is-5by3
|
48
|
+
padding-top: 60%
|
49
|
+
&.is-16by9
|
50
|
+
padding-top: 56.25%
|
51
|
+
&.is-2by1
|
52
|
+
padding-top: 50%
|
53
|
+
&.is-3by1
|
54
|
+
padding-top: 33.3333%
|
55
|
+
&.is-4by5
|
56
|
+
padding-top: 125%
|
57
|
+
&.is-3by4
|
58
|
+
padding-top: 133.3333%
|
59
|
+
&.is-2by3
|
60
|
+
padding-top: 150%
|
61
|
+
&.is-3by5
|
62
|
+
padding-top: 166.6666%
|
63
|
+
&.is-9by16
|
64
|
+
padding-top: 177.7777%
|
65
|
+
&.is-1by2
|
66
|
+
padding-top: 200%
|
67
|
+
&.is-1by3
|
68
|
+
padding-top: 300%
|
69
|
+
// Sizes
|
70
|
+
@each $dimension in $dimensions
|
71
|
+
&.is-#{$dimension}x#{$dimension}
|
72
|
+
height: $dimension * 1px
|
73
|
+
width: $dimension * 1px
|