decidim-admin 0.8.4 → 0.9.0

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 (94) hide show
  1. checksums.yaml +5 -5
  2. data/README.md +1 -1
  3. data/app/assets/javascripts/decidim/admin/application.js.es6 +5 -2
  4. data/app/assets/stylesheets/decidim/admin/_decidim.scss +2 -5
  5. data/app/assets/stylesheets/decidim/admin/extra/_action-icon.scss +4 -4
  6. data/app/assets/stylesheets/decidim/admin/extra/_cards.scss +3 -2
  7. data/app/assets/stylesheets/decidim/admin/extra/_categories.scss +1 -1
  8. data/app/assets/stylesheets/decidim/admin/extra/_dropdown_inverted.scss +8 -1
  9. data/app/assets/stylesheets/decidim/admin/extra/_label-required.scss +1 -1
  10. data/app/assets/stylesheets/decidim/admin/extra/_login.scss +1 -0
  11. data/app/assets/stylesheets/decidim/admin/extra/_quill.scss +2 -2
  12. data/app/assets/stylesheets/decidim/admin/extra/_select_multiple.scss +1 -1
  13. data/app/assets/stylesheets/decidim/admin/extra/_sort.scss +5 -4
  14. data/app/assets/stylesheets/decidim/admin/extra/_title_bar.scss +17 -7
  15. data/app/assets/stylesheets/decidim/admin/modules/_action-icon.scss +2 -2
  16. data/app/assets/stylesheets/decidim/admin/modules/_buttons.scss +6 -2
  17. data/app/assets/stylesheets/decidim/admin/modules/_callouts.scss +3 -0
  18. data/app/assets/stylesheets/decidim/admin/modules/_cards.scss +12 -0
  19. data/app/assets/stylesheets/decidim/admin/modules/_char-counter.scss +2 -0
  20. data/app/assets/stylesheets/decidim/admin/modules/_forms.scss +5 -1
  21. data/app/assets/stylesheets/decidim/admin/modules/_icons.scss +1 -0
  22. data/app/assets/stylesheets/decidim/admin/modules/_layout.scss +9 -1
  23. data/app/assets/stylesheets/decidim/admin/modules/_main-nav.scss +5 -0
  24. data/app/assets/stylesheets/decidim/admin/modules/_process-header.scss +1 -0
  25. data/app/assets/stylesheets/decidim/admin/modules/_secondary-nav.scss +10 -5
  26. data/app/assets/stylesheets/decidim/admin/modules/_table-list.scss +7 -1
  27. data/app/assets/stylesheets/decidim/admin/modules/_tabs.scss +7 -0
  28. data/app/assets/stylesheets/decidim/admin/modules/_title-bar.scss +3 -0
  29. data/app/assets/stylesheets/decidim/admin/modules/_user-login.scss +2 -0
  30. data/app/assets/stylesheets/decidim/admin/plugins/_foundation-datepicker.scss +36 -36
  31. data/app/assets/stylesheets/decidim/admin/utils/_fontface.scss +22 -20
  32. data/app/assets/stylesheets/decidim/admin/utils/_helpers.scss +6 -6
  33. data/app/assets/stylesheets/decidim/admin/utils/_keyframes.scss +6 -6
  34. data/app/assets/stylesheets/decidim/admin/utils/_mixins.scss +2 -3
  35. data/app/assets/stylesheets/decidim/admin/utils/_settings.scss +406 -129
  36. data/app/assets/stylesheets/decidim/admin/utils/_toggle-expand.scss +1 -0
  37. data/app/commands/decidim/admin/create_attachment.rb +13 -3
  38. data/app/commands/decidim/admin/create_feature.rb +1 -0
  39. data/app/commands/decidim/admin/create_managed_user.rb +20 -10
  40. data/app/commands/decidim/admin/impersonate_managed_user.rb +7 -9
  41. data/app/commands/decidim/admin/officialize_user.rb +47 -0
  42. data/app/commands/decidim/admin/unofficialize_user.rb +35 -0
  43. data/app/commands/decidim/admin/update_organization_appearance.rb +32 -5
  44. data/app/controllers/decidim/admin/categories_controller.rb +1 -1
  45. data/app/controllers/decidim/admin/features/base_controller.rb +1 -1
  46. data/app/controllers/decidim/admin/features_controller.rb +7 -0
  47. data/app/controllers/decidim/admin/managed_users/impersonations_controller.rb +1 -1
  48. data/app/controllers/decidim/admin/managed_users_controller.rb +23 -9
  49. data/app/controllers/decidim/admin/newsletters_controller.rb +2 -2
  50. data/app/controllers/decidim/admin/officializations_controller.rb +64 -0
  51. data/app/events/decidim/attachment_created_event.rb +25 -0
  52. data/app/events/decidim/feature_published_event.rb +27 -0
  53. data/app/events/decidim/participatory_process_step_activated_event.rb +31 -0
  54. data/app/forms/decidim/admin/managed_user_form.rb +0 -11
  55. data/app/forms/decidim/admin/officialization_form.rb +30 -0
  56. data/app/forms/decidim/admin/organization_appearance_form.rb +46 -1
  57. data/app/helpers/decidim/admin/application_helper.rb +1 -3
  58. data/app/models/decidim/admin/abilities/admin_ability.rb +1 -0
  59. data/app/models/decidim/admin/abilities/participatory_process_moderator_ability.rb +1 -1
  60. data/app/queries/decidim/admin/user_groups_evaluation.rb +9 -8
  61. data/app/queries/decidim/admin/users_officialization.rb +53 -0
  62. data/app/views/decidim/admin/managed_users/new.html.erb +5 -5
  63. data/app/views/decidim/admin/officializations/index.html.erb +82 -0
  64. data/app/views/decidim/admin/officializations/new.html.erb +18 -0
  65. data/app/views/decidim/admin/organization_appearance/_form.html.erb +60 -0
  66. data/app/views/layouts/decidim/admin/_title_bar.html.erb +1 -1
  67. data/app/views/layouts/decidim/admin/users.html.erb +5 -0
  68. data/config/locales/ca.yml +44 -2
  69. data/config/locales/en.yml +44 -1
  70. data/config/locales/es.yml +47 -5
  71. data/config/locales/eu.yml +46 -3
  72. data/config/locales/fi.yml +55 -12
  73. data/config/locales/fr.yml +45 -2
  74. data/config/locales/gl.yml +514 -0
  75. data/config/locales/it.yml +47 -4
  76. data/config/locales/nl.yml +47 -4
  77. data/config/locales/pl.yml +44 -1
  78. data/config/locales/pt-BR.yml +514 -0
  79. data/config/locales/pt.yml +106 -63
  80. data/config/locales/ru.yml +36 -6
  81. data/config/locales/sv.yml +514 -0
  82. data/config/locales/uk.yml +36 -8
  83. data/config/routes.rb +2 -0
  84. data/db/migrate/20171219154507_add_officialization_to_users.rb +10 -0
  85. data/lib/decidim/admin/engine.rb +1 -2
  86. data/lib/decidim/admin/test/manage_feature_permissions_examples.rb +0 -1
  87. data/lib/decidim/admin/test/manage_moderations_examples.rb +64 -0
  88. data/lib/decidim/admin/test.rb +5 -0
  89. data/lib/decidim/admin/version.rb +1 -1
  90. data/vendor/assets/javascripts/moment.min.js +1 -7
  91. metadata +37 -38
  92. data/app/assets/javascripts/decidim/admin/scopes.js.es6 +0 -20
  93. data/app/assets/javascripts/decidim/admin/select2.js.es6 +0 -8
  94. data/app/assets/stylesheets/decidim/admin/plugins/_select2.scss +0 -27
@@ -1,27 +1,29 @@
1
- @font-face {
2
- font-family: 'Source Sans Pro';
3
- font-style: normal;
4
- font-weight: 400;
5
- src:
1
+ @font-face{
2
+ font-family: 'Source Sans Pro';
3
+ font-style: normal;
4
+ font-weight: 400;
5
+ src:
6
6
  font-url('decidim/Source_Sans_Pro_400.woff2') format('woff2'),
7
7
  font-url('decidim/Source_Sans_Pro_400.woff') format('woff'),
8
- font-url('decidim/Source_Sans_Pro_400.ttf') format('truetype');
8
+ font-url('decidim/Source_Sans_Pro_400.ttf') format('truetype');
9
9
  }
10
- @font-face {
11
- font-family: 'Source Sans Pro';
12
- font-style: normal;
13
- font-weight: 600;
14
- src:
10
+
11
+ @font-face{
12
+ font-family: 'Source Sans Pro';
13
+ font-style: normal;
14
+ font-weight: 600;
15
+ src:
15
16
  font-url('decidim/Source_Sans_Pro_600.woff2') format('woff2'),
16
- font-url('decidim/Source_Sans_Pro_600.woff') format('woff'),
17
- font-url('decidim/Source_Sans_Pro_600.ttf') format('truetype');
17
+ font-url('decidim/Source_Sans_Pro_600.woff') format('woff'),
18
+ font-url('decidim/Source_Sans_Pro_600.ttf') format('truetype');
18
19
  }
19
- @font-face {
20
- font-family: 'Source Sans Pro';
21
- font-style: normal;
22
- font-weight: 900;
23
- src:
20
+
21
+ @font-face{
22
+ font-family: 'Source Sans Pro';
23
+ font-style: normal;
24
+ font-weight: 900;
25
+ src:
24
26
  font-url('decidim/Source_Sans_Pro_900.woff2') format('woff2'),
25
- font-url('decidim/Source_Sans_Pro_900.woff') format('woff'),
26
- font-url('decidim/Source_Sans_Pro_900.ttf') format('truetype');
27
+ font-url('decidim/Source_Sans_Pro_900.woff') format('woff'),
28
+ font-url('decidim/Source_Sans_Pro_900.ttf') format('truetype');
27
29
  }
@@ -1,24 +1,24 @@
1
1
  // Helpers
2
2
 
3
- .list-reset {
3
+ .list-reset{
4
4
  margin: 0;
5
5
  padding: 0;
6
6
  list-style: none;
7
7
  }
8
8
 
9
- .list-inline {
10
- > li {
9
+ .list-inline{
10
+ > li{
11
11
  display: inline-block;
12
12
  vertical-align: top;
13
13
  }
14
14
 
15
- > dt {
15
+ > dt{
16
16
  clear: both;
17
- margin-right: 0.3em;
17
+ margin-right: .3em;
18
18
  }
19
19
 
20
20
  > dt,
21
- > dd {
21
+ > dd{
22
22
  float: left;
23
23
  margin-bottom: 0;
24
24
  }
@@ -1,21 +1,21 @@
1
1
  // Keyframes
2
2
 
3
- @keyframes fadeIn {
4
- 0% {
3
+ @keyframes fadeIn{
4
+ 0%{
5
5
  opacity: 0;
6
6
  }
7
7
 
8
- 100% {
8
+ 100%{
9
9
  opacity: 1;
10
10
  }
11
11
  }
12
12
 
13
- @keyframes fadeOut {
14
- 0% {
13
+ @keyframes fadeOut{
14
+ 0%{
15
15
  opacity: 1;
16
16
  }
17
17
 
18
- 100% {
18
+ 100%{
19
19
  opacity: 0;
20
20
  }
21
21
  }
@@ -1,16 +1,15 @@
1
1
  // Custom mixins and functions
2
2
 
3
3
  /// Slightly lighten a color
4
- @function tint($color, $percentage) {
4
+ @function tint($color, $percentage){
5
5
  @return mix(white, $color, $percentage);
6
6
  }
7
7
 
8
8
  /// Slightly darken a color
9
- @function shade($color, $percentage) {
9
+ @function shade($color, $percentage){
10
10
  @return mix(black, $color, $percentage);
11
11
  }
12
12
 
13
-
14
13
  //Small caps
15
14
  @mixin smallcaps{
16
15
  text-transform: uppercase;
@@ -16,30 +16,49 @@
16
16
  // 11. Button
17
17
  // 12. Button Group
18
18
  // 13. Callout
19
- // 14. Close Button
20
- // 15. Drilldown
21
- // 16. Dropdown
22
- // 17. Dropdown Menu
23
- // 18. Flex Video
24
- // 19. Forms
25
- // 20. Label
26
- // 21. Media Object
27
- // 22. Menu
28
- // 23. Meter
29
- // 24. Off-canvas
30
- // 25. Orbit
31
- // 26. Pagination
32
- // 27. Progress Bar
33
- // 28. Reveal
34
- // 29. Slider
35
- // 30. Switch
36
- // 31. Table
37
- // 32. Tabs
38
- // 33. Thumbnail
39
- // 34. Title Bar
40
- // 35. Tooltip
41
- // 36. Top Bar
42
- // 37. Cards
19
+ // 14. Card
20
+ // 15. Close Button
21
+ // 16. Drilldown
22
+ // 17. Dropdown
23
+ // 18. Dropdown Menu
24
+ // 19. Flexbox Utilities
25
+ // 20. Forms
26
+ // 21. Label
27
+ // 22. Media Object
28
+ // 23. Menu
29
+ // 24. Meter
30
+ // 25. Off-canvas
31
+ // 26. Orbit
32
+ // 27. Pagination
33
+ // 28. Progress Bar
34
+ // 29. Prototype Arrow
35
+ // 30. Prototype Border-Box
36
+ // 31. Prototype Border-None
37
+ // 32. Prototype Bordered
38
+ // 33. Prototype Display
39
+ // 34. Prototype Font-Styling
40
+ // 35. Prototype List-Style-Type
41
+ // 36. Prototype Overflow
42
+ // 37. Prototype Position
43
+ // 38. Prototype Rounded
44
+ // 39. Prototype Separator
45
+ // 40. Prototype Shadow
46
+ // 41. Prototype Sizing
47
+ // 42. Prototype Spacing
48
+ // 43. Prototype Text-Decoration
49
+ // 44. Prototype Text-Transformation
50
+ // 45. Prototype Text-Utilities
51
+ // 46. Responsive Embed
52
+ // 47. Reveal
53
+ // 48. Slider
54
+ // 49. Switch
55
+ // 50. Table
56
+ // 51. Tabs
57
+ // 52. Thumbnail
58
+ // 53. Title Bar
59
+ // 54. Tooltip
60
+ // 55. Top Bar
61
+ // 56. Xy Grid
43
62
 
44
63
  @import 'util/util';
45
64
 
@@ -50,7 +69,7 @@ $global-font-size: 100%;
50
69
  $global-width: rem-calc(1200);
51
70
  $global-lineheight: 1.5;
52
71
  $foundation-palette: (
53
- primary: #039BE5,
72
+ primary: #039be5,
54
73
  secondary: #eee,
55
74
  success: #5dc560,
56
75
  warning: #ffb300,
@@ -70,11 +89,17 @@ $body-font-family: 'Source Sans Pro', Helvetica, Roboto, Arial, sans-serif;
70
89
  $body-antialiased: true;
71
90
  $global-margin: 1rem;
72
91
  $global-padding: 1rem;
92
+ $global-position: 1rem;
73
93
  $global-weight-normal: normal;
74
94
  $global-weight-bold: 600;
75
95
  $global-radius: 4px;
96
+ $global-menu-padding: .7rem 1rem;
97
+ $global-menu-nested-margin: 1rem;
76
98
  $global-text-direction: ltr;
77
99
  $global-flexbox: false;
100
+ $global-prototype-breakpoints: false;
101
+ $global-button-cursor: auto;
102
+ $global-color-pick-contrast-tolerance: 0;
78
103
  $print-transparent-backgrounds: true;
79
104
 
80
105
  $border: 1px solid $medium-gray !default;
@@ -93,6 +118,7 @@ $breakpoints: (
93
118
  xlarge: 1200px,
94
119
  xxlarge: 1440px,
95
120
  );
121
+ $print-breakpoint: large;
96
122
  $breakpoint-classes: (small smallmedium medium mediumlarge large xlarge);
97
123
 
98
124
  // 3. The Grid
@@ -105,6 +131,7 @@ $grid-column-gutter: (
105
131
  medium: 30px,
106
132
  );
107
133
  $grid-column-align-edge: true;
134
+ $grid-column-alias: 'columns';
108
135
  $block-grid-max: 8;
109
136
 
110
137
  // 4. Base Typography
@@ -114,11 +141,11 @@ $header-font-family: $body-font-family;
114
141
  $header-font-weight: $global-weight-normal;
115
142
  $header-font-style: normal;
116
143
  $font-family-monospace: Consolas, 'Liberation Mono', Courier, monospace;
144
+ $header-color: inherit;
117
145
  $header-lineheight: 1.4;
118
- $header-margin-bottom: 0.5rem;
119
-
146
+ $header-margin-bottom: .5rem;
120
147
  $header-styles: (
121
- 'small': (
148
+ small: (
122
149
  'h1': ('font-size': 26),
123
150
  'h2': ('font-size': 22),
124
151
  'h3': ('font-size': 20),
@@ -126,7 +153,7 @@ $header-styles: (
126
153
  'h5': ('font-size': 16),
127
154
  'h6': ('font-size': 14)
128
155
  ),
129
- 'medium': (
156
+ medium: (
130
157
  'h1': ('font-size': 30),
131
158
  'h2': ('font-size': 22),
132
159
  'h3': ('font-size': 20),
@@ -135,8 +162,6 @@ $header-styles: (
135
162
  'h6': ('font-size': 14)
136
163
  )
137
164
  );
138
-
139
- $header-color: inherit;
140
165
  $header-text-rendering: optimizeLegibility;
141
166
  $small-font-size: 90%;
142
167
  $header-small-font-color: lighten($body-font-color, 30);
@@ -164,12 +189,13 @@ $list-side-margin: 1.25rem;
164
189
  $list-nested-side-margin: 1.25rem;
165
190
  $defnlist-margin-bottom: 1rem;
166
191
  $defnlist-term-weight: $global-weight-bold;
167
- $defnlist-term-margin-bottom: 0.3rem;
192
+ $defnlist-term-margin-bottom: .3rem;
168
193
  $blockquote-color: $dark-gray;
169
194
  $blockquote-padding: rem-calc(9 20 0 19);
170
195
  $blockquote-border: 1px solid $medium-gray;
171
196
  $cite-font-size: rem-calc(13);
172
197
  $cite-color: $dark-gray;
198
+ $cite-pseudo-content: '\2014 \0020';
173
199
  $keystroke-font: $font-family-monospace;
174
200
  $keystroke-color: $black;
175
201
  $keystroke-background: $light-gray;
@@ -185,8 +211,8 @@ $lead-lineheight: 1.45;
185
211
  $subheader-lineheight: 1.4;
186
212
  $subheader-color: $dark-gray;
187
213
  $subheader-font-weight: $global-weight-normal;
188
- $subheader-margin-top: 0.2rem;
189
- $subheader-margin-bottom: 0.5rem;
214
+ $subheader-margin-top: .2rem;
215
+ $subheader-margin-bottom: .5rem;
190
216
  $stat-font-size: 2.5rem;
191
217
 
192
218
  // 6. Abide
@@ -205,6 +231,7 @@ $input-error-font-weight: $global-weight-bold;
205
231
 
206
232
  $accordion-background: $primary-color;
207
233
  $accordion-plusminus: true;
234
+ $accordion-title-font-size: rem-calc(12);
208
235
  $accordion-item-color: $white;
209
236
  $accordion-item-background-hover: $light-gray;
210
237
  $accordion-item-padding: 1.25rem 1rem;
@@ -216,17 +243,29 @@ $accordion-content-padding: 1rem;
216
243
  // 8. Accordion Menu
217
244
  // -----------------
218
245
 
246
+ $accordionmenu-padding: $global-menu-padding;
247
+ $accordionmenu-nested-margin: $global-menu-nested-margin;
248
+ $accordionmenu-submenu-padding: $accordionmenu-padding;
219
249
  $accordionmenu-arrows: true;
220
250
  $accordionmenu-arrow-color: $primary-color;
251
+ $accordionmenu-item-background: null;
252
+ $accordionmenu-border: null;
253
+ $accordionmenu-submenu-toggle-background: null;
254
+ $accordion-submenu-toggle-border: $accordionmenu-border;
255
+ $accordionmenu-submenu-toggle-width: 40px;
256
+ $accordionmenu-submenu-toggle-height: $accordionmenu-submenu-toggle-width;
257
+ $accordionmenu-arrow-size: 6px;
221
258
 
222
259
  // 9. Badge
223
260
  // --------
224
261
 
225
- // $badge-background: $primary-color;
226
- // $badge-color: $white;
227
- // $badge-padding: 0.3em;
228
- // $badge-minwidth: 1.5em;
229
- // $badge-font-size: 0.6rem;
262
+ $badge-background: $primary-color;
263
+ $badge-color: $white;
264
+ $badge-color-alt: $black;
265
+ $badge-palette: $foundation-palette;
266
+ $badge-padding: .3em;
267
+ $badge-minwidth: 1.5em;
268
+ $badge-font-size: .6rem;
230
269
 
231
270
  // 10. Breadcrumbs
232
271
  // ---------------
@@ -236,29 +275,35 @@ $breadcrumbs-item-font-size: rem-calc(11);
236
275
  $breadcrumbs-item-color: $primary-color;
237
276
  $breadcrumbs-item-color-current: $black;
238
277
  $breadcrumbs-item-color-disabled: $medium-gray;
239
- $breadcrumbs-item-margin: 0.75rem;
278
+ $breadcrumbs-item-margin: .75rem;
240
279
  $breadcrumbs-item-uppercase: true;
241
- $breadcrumbs-item-slash: true;
280
+ $breadcrumbs-item-separator: true;
281
+ $breadcrumbs-item-separator-color: $medium-gray;
242
282
 
243
283
  // 11. Button
244
284
  // ----------
245
285
 
246
- // $button-padding: 0.2em 1em;
247
- // $button-margin: 0 0 $global-margin 0;
248
- // $button-fill: solid;
249
- // $button-background: $primary-color;
250
- // $button-background-hover: scale-color($button-background, $lightness: -15%);
251
- // $button-color: $white;
252
- // $button-color-alt: $black;
253
- // $button-radius: $global-radius;
254
-
286
+ $button-font-family: inherit;
287
+ $button-padding: .85em 1em;
288
+ $button-margin: 0 0 $global-margin 0;
289
+ $button-fill: solid;
290
+ $button-background: $primary-color;
291
+ $button-background-hover: scale-color($button-background, $lightness: -15%);
292
+ $button-color: $white;
293
+ $button-color-alt: $black;
294
+ $button-radius: $global-radius;
295
+ $button-hollow-border-width: 1px;
255
296
  $button-sizes: (
256
- tiny: 0.9rem,
257
- small: 0.9rem,
297
+ tiny: .9rem,
298
+ small: .9rem,
258
299
  default: 1rem,
259
300
  large: 1.25rem,
260
301
  );
261
- $button-opacity-disabled: 0.25;
302
+ $button-palette: $foundation-palette;
303
+ $button-opacity-disabled: .25;
304
+ $button-background-hover-lightness: -20%;
305
+ $button-hollow-hover-lightness: -50%;
306
+ $button-transition: background-color .25s ease-out, color .25s ease-out;
262
307
 
263
308
  // 12. Button Group
264
309
  // ----------------
@@ -267,6 +312,7 @@ $buttongroup-margin: 1rem;
267
312
  $buttongroup-spacing: 1px;
268
313
  $buttongroup-child-selector: '.button';
269
314
  $buttongroup-expand-max: 6;
315
+ $buttongroup-radius-on-each: true;
270
316
 
271
317
  // 13. Callout
272
318
  // -----------
@@ -281,29 +327,56 @@ $callout-font-color-alt: $body-background;
281
327
  $callout-radius: 0;
282
328
  $callout-link-tint: 30%;
283
329
 
284
- // 14. Close Button
330
+ // 14. Card
331
+ // --------
332
+
333
+ $card-background: $white;
334
+ $card-font-color: $body-font-color;
335
+ $card-divider-background: $light-gray;
336
+ $card-border: 1px solid $light-gray;
337
+ $card-shadow: none;
338
+ $card-border-radius: $global-radius;
339
+ $card-padding: $global-padding;
340
+ $card-margin-bottom: $global-margin;
341
+
342
+ // 15. Close Button
285
343
  // ----------------
286
344
 
287
345
  $closebutton-position: right top;
288
- $closebutton-offset-horizontal: 1rem;
289
- $closebutton-offset-vertical: 0.5rem;
290
- $closebutton-size: 2em;
346
+ $closebutton-offset-horizontal: (
347
+ small: .66rem,
348
+ medium: 1rem,
349
+ );
350
+ $closebutton-offset-vertical: (
351
+ small: .33em,
352
+ medium: .5rem,
353
+ );
354
+ $closebutton-size: (
355
+ small: 1.5em,
356
+ medium: 2em,
357
+ );
291
358
  $closebutton-lineheight: 1;
292
359
  $closebutton-color: $dark-gray;
293
360
  $closebutton-color-hover: map-get($foundation-palette, primary);
294
361
 
295
- // 15. Drilldown
362
+ // 16. Drilldown
296
363
  // -------------
297
364
 
298
- $drilldown-transition: transform 0.15s linear;
365
+ $drilldown-transition: transform .15s linear;
299
366
  $drilldown-arrows: true;
300
- $drilldown-arrow-color: $primary-color;
367
+ $drilldown-padding: $global-menu-padding;
368
+ $drilldown-nested-margin: 0;
301
369
  $drilldown-background: $white;
370
+ $drilldown-submenu-padding: $drilldown-padding;
371
+ $drilldown-submenu-background: $white;
372
+ $drilldown-arrow-color: $primary-color;
373
+ $drilldown-arrow-size: 6px;
302
374
 
303
- // 16. Dropdown
375
+ // 17. Dropdown
304
376
  // ------------
305
377
 
306
378
  $dropdown-padding: 1rem;
379
+ $dropdown-background: $body-background;
307
380
  $dropdown-border: 1px solid $medium-gray;
308
381
  $dropdown-font-size: 1rem;
309
382
  $dropdown-width: 300px;
@@ -314,23 +387,30 @@ $dropdown-sizes: (
314
387
  large: 400px,
315
388
  );
316
389
 
317
- // 17. Dropdown Menu
390
+ // 18. Dropdown Menu
318
391
  // -----------------
319
392
 
320
393
  $dropdownmenu-arrows: true;
321
394
  $dropdownmenu-arrow-color: $anchor-color;
395
+ $dropdownmenu-arrow-size: 6px;
396
+ $dropdownmenu-arrow-padding: 1.5rem;
322
397
  $dropdownmenu-min-width: 200px;
323
398
  $dropdownmenu-background: $white;
399
+ $dropdownmenu-submenu-background: $dropdownmenu-background;
400
+ $dropdownmenu-padding: $global-menu-padding;
401
+ $dropdownmenu-nested-margin: 0;
402
+ $dropdownmenu-submenu-padding: $dropdownmenu-padding;
324
403
  $dropdownmenu-border: 1px solid $medium-gray;
404
+ $dropdown-menu-item-color-active: get-color(secondary);
405
+ $dropdown-menu-item-background-active: transparent;
325
406
 
326
- // 18. Flex Video
327
- // --------------
407
+ // 19. Flexbox Utilities
408
+ // ---------------------
328
409
 
329
- $flexvideo-margin-bottom: rem-calc(16);
330
- $flexvideo-ratio: 4 by 3;
331
- $flexvideo-ratio-widescreen: 16 by 9;
410
+ $flex-source-ordering-count: 6;
411
+ $flexbox-responsive-breakpoints: true;
332
412
 
333
- // 19. Forms
413
+ // 20. Forms
334
414
  // ---------
335
415
 
336
416
  $fieldset-border: 1px solid $light-gray;
@@ -356,46 +436,56 @@ $input-color: $black;
356
436
  $input-placeholder-color: darken($medium-gray, 30);
357
437
  $input-font-family: inherit;
358
438
  $input-font-size: rem-calc(16);
439
+ $input-font-weight: $global-weight-normal;
440
+ $input-line-height: $global-lineheight;
359
441
  $input-background: $white;
360
442
  $input-background-focus: $white;
361
443
  $input-background-disabled: $light-gray;
362
444
  $input-border: 1px solid $light-gray;
363
445
  $input-border-focus: 1px solid map-get($foundation-palette, primary);
364
- $input-shadow: inset 0 1px 2px rgba($black, 0.1);
446
+ $input-padding: $form-spacing / 2;
447
+ $input-shadow: inset 0 1px 2px rgba($black, .1);
365
448
  $input-shadow-focus: 0 0 5px $medium-gray;
366
449
  $input-cursor-disabled: not-allowed;
367
- $input-transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
450
+ $input-transition: box-shadow .5s, border-color .25s ease-in-out;
368
451
  $input-number-spinners: true;
369
452
  $input-radius: $global-radius;
453
+ $form-button-radius: $global-radius;
370
454
 
371
- // 20. Label
455
+ // 21. Label
372
456
  // ---------
373
457
 
374
458
  $label-background: $primary-color;
375
459
  $label-color: $white;
376
460
  $label-color-alt: $body-font-color;
377
- $label-font-size: 0.8rem;
378
- $label-padding: 0.33333rem 0.5rem;
461
+ $label-font-size: .8rem;
462
+ $label-padding: .33333rem .5rem;
463
+ $label-palette: $foundation-palette;
379
464
  $label-radius: $global-radius;
380
465
 
381
- // 21. Media Object
466
+ // 22. Media Object
382
467
  // ----------------
383
468
 
384
469
  $mediaobject-margin-bottom: $global-margin;
385
470
  $mediaobject-section-padding: $global-padding;
386
471
  $mediaobject-image-width-stacked: 100%;
387
472
 
388
- // 22. Menu
473
+ // 23. Menu
389
474
  // --------
390
475
 
391
476
  $menu-margin: 0;
392
- $menu-margin-nested: 1rem;
393
- $menu-item-padding: 0.7rem 1rem;
477
+ $menu-nested-margin: 1rem;
478
+ $menu-items-padding: .7rem 1rem;
479
+ $menu-simple-margin: 1rem;
394
480
  $menu-item-color-active: $white;
395
481
  $menu-item-background-active: map-get($foundation-palette, primary);
396
- $menu-icon-spacing: 0.25rem;
482
+ $menu-icon-spacing: .25rem;
483
+ $menu-item-background-hover: $light-gray;
484
+ $menu-state-back-compat: true;
485
+ $menu-centered-back-compat: true;
486
+ $menu-icons-back-compat: true;
397
487
 
398
- // 23. Meter
488
+ // 24. Meter
399
489
  // ---------
400
490
 
401
491
  $meter-height: 1rem;
@@ -405,35 +495,40 @@ $meter-fill-good: $success-color;
405
495
  $meter-fill-medium: $warning-color;
406
496
  $meter-fill-bad: $alert-color;
407
497
 
408
- // 24. Off-canvas
498
+ // 25. Off-canvas
409
499
  // --------------
410
500
 
411
501
  $offcanvas-size: 250px;
412
502
  $offcanvas-background: $light-gray;
413
- $offcanvas-zindex: -1;
414
- $offcanvas-transition-length: 0.5s;
503
+ $offcanvas-shadow: 0 0 10px rgba($black, .7);
504
+ $offcanvas-inner-shadow-size: 20px;
505
+ $offcanvas-inner-shadow-color: rgba($black, .25);
506
+ $offcanvas-overlay-zindex: 11;
507
+ $offcanvas-push-zindex: 12;
508
+ $offcanvas-overlap-zindex: 13;
509
+ $offcanvas-reveal-zindex: 12;
510
+ $offcanvas-transition-length: .5s;
415
511
  $offcanvas-transition-timing: ease;
416
512
  $offcanvas-fixed-reveal: true;
417
- $offcanvas-exit-background: rgba($white, 0.25);
513
+ $offcanvas-exit-background: rgba($white, .25);
418
514
  $maincontent-class: 'off-canvas-content';
419
- $maincontent-shadow: 0 0 10px rgba($black, 0.5);
420
515
 
421
- // 25. Orbit
516
+ // 26. Orbit
422
517
  // ---------
423
518
 
424
519
  $orbit-bullet-background: $medium-gray;
425
520
  $orbit-bullet-background-active: $dark-gray;
426
521
  $orbit-bullet-diameter: 1.2rem;
427
- $orbit-bullet-margin: 0.1rem;
428
- $orbit-bullet-margin-top: 0.8rem;
429
- $orbit-bullet-margin-bottom: 0.8rem;
430
- $orbit-caption-background: rgba($black, 0.5);
522
+ $orbit-bullet-margin: .1rem;
523
+ $orbit-bullet-margin-top: .8rem;
524
+ $orbit-bullet-margin-bottom: .8rem;
525
+ $orbit-caption-background: rgba($black, .5);
431
526
  $orbit-caption-padding: 1rem;
432
- $orbit-control-background-hover: rgba($black, 0.5);
527
+ $orbit-control-background-hover: rgba($black, .5);
433
528
  $orbit-control-padding: 1rem;
434
529
  $orbit-control-zindex: 10;
435
530
 
436
- // 26. Pagination
531
+ // 27. Pagination
437
532
  // --------------
438
533
 
439
534
  $pagination-font-size: rem-calc(16);
@@ -448,9 +543,10 @@ $pagination-item-color-current: $white;
448
543
  $pagination-item-color-disabled: $muted;
449
544
  $pagination-ellipsis-color: $body-font-color;
450
545
  $pagination-mobile-items: false;
546
+ $pagination-mobile-current-item: false;
451
547
  $pagination-arrows: false;
452
548
 
453
- // 27. Progress Bar
549
+ // 28. Progress Bar
454
550
  // ----------------
455
551
 
456
552
  $progress-height: 1rem;
@@ -459,7 +555,177 @@ $progress-margin-bottom: $global-margin;
459
555
  $progress-meter-background: $primary-color;
460
556
  $progress-radius: $global-radius;
461
557
 
462
- // 28. Reveal
558
+ // 29. Prototype Arrow
559
+ // -------------------
560
+
561
+ $prototype-arrow-directions: (
562
+ down,
563
+ up,
564
+ right,
565
+ left
566
+ );
567
+ $prototype-arrow-size: .4375rem;
568
+ $prototype-arrow-color: $black;
569
+
570
+ // 30. Prototype Border-Box
571
+ // ------------------------
572
+
573
+ $prototype-border-box-breakpoints: $global-prototype-breakpoints;
574
+
575
+ // 31. Prototype Border-None
576
+ // -------------------------
577
+
578
+ $prototype-border-none-breakpoints: $global-prototype-breakpoints;
579
+
580
+ // 32. Prototype Bordered
581
+ // ----------------------
582
+
583
+ $prototype-bordered-breakpoints: $global-prototype-breakpoints;
584
+ $prototype-border-width: rem-calc(1);
585
+ $prototype-border-type: solid;
586
+ $prototype-border-color: $medium-gray;
587
+
588
+ // 33. Prototype Display
589
+ // ---------------------
590
+
591
+ $prototype-display-breakpoints: $global-prototype-breakpoints;
592
+ $prototype-display: (
593
+ inline,
594
+ inline-block,
595
+ block,
596
+ table,
597
+ table-cell
598
+ );
599
+
600
+ // 34. Prototype Font-Styling
601
+ // --------------------------
602
+
603
+ $prototype-font-breakpoints: $global-prototype-breakpoints;
604
+ $prototype-wide-letter-spacing: rem-calc(4);
605
+ $prototype-font-normal: $global-weight-normal;
606
+ $prototype-font-bold: $global-weight-bold;
607
+
608
+ // 35. Prototype List-Style-Type
609
+ // -----------------------------
610
+
611
+ $prototype-list-breakpoints: $global-prototype-breakpoints;
612
+ $prototype-style-type-unordered: (
613
+ disc,
614
+ circle,
615
+ square
616
+ );
617
+ $prototype-style-type-ordered: (
618
+ decimal,
619
+ lower-alpha,
620
+ lower-latin,
621
+ lower-roman,
622
+ upper-alpha,
623
+ upper-latin,
624
+ upper-roman
625
+ );
626
+
627
+ // 36. Prototype Overflow
628
+ // ----------------------
629
+
630
+ $prototype-overflow-breakpoints: $global-prototype-breakpoints;
631
+ $prototype-overflow: (
632
+ visible,
633
+ hidden,
634
+ scroll
635
+ );
636
+
637
+ // 37. Prototype Position
638
+ // ----------------------
639
+
640
+ $prototype-position-breakpoints: $global-prototype-breakpoints;
641
+ $prototype-position: (
642
+ static,
643
+ relative,
644
+ absolute,
645
+ fixed
646
+ );
647
+ $prototype-position-z-index: 975;
648
+
649
+ // 38. Prototype Rounded
650
+ // ---------------------
651
+
652
+ $prototype-rounded-breakpoints: $global-prototype-breakpoints;
653
+ $prototype-border-radius: rem-calc(3);
654
+
655
+ // 39. Prototype Separator
656
+ // -----------------------
657
+
658
+ $prototype-separator-breakpoints: $global-prototype-breakpoints;
659
+ $prototype-separator-align: center;
660
+ $prototype-separator-height: rem-calc(2);
661
+ $prototype-separator-width: 3rem;
662
+ $prototype-separator-background: $primary-color;
663
+ $prototype-separator-margin-top: $global-margin;
664
+
665
+ // 40. Prototype Shadow
666
+ // --------------------
667
+
668
+ $prototype-shadow-breakpoints: $global-prototype-breakpoints;
669
+ $prototype-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .16),
670
+ 0 2px 10px 0 rgba(0, 0, 0, .12);
671
+
672
+ // 41. Prototype Sizing
673
+ // --------------------
674
+
675
+ $prototype-sizing-breakpoints: $global-prototype-breakpoints;
676
+ $prototype-sizing: (
677
+ width,
678
+ height
679
+ );
680
+ $prototype-sizes: (
681
+ 25: 25%,
682
+ 50: 50%,
683
+ 75: 75%,
684
+ 100: 100%
685
+ );
686
+
687
+ // 42. Prototype Spacing
688
+ // ---------------------
689
+
690
+ $prototype-spacing-breakpoints: $global-prototype-breakpoints;
691
+ $prototype-spacers-count: 3;
692
+
693
+ // 43. Prototype Text-Decoration
694
+ // -----------------------------
695
+
696
+ $prototype-decoration-breakpoints: $global-prototype-breakpoints;
697
+ $prototype-text-decoration: (
698
+ overline,
699
+ underline,
700
+ line-through,
701
+ );
702
+
703
+ // 44. Prototype Text-Transformation
704
+ // ---------------------------------
705
+
706
+ $prototype-transformation-breakpoints: $global-prototype-breakpoints;
707
+ $prototype-text-transformation: (
708
+ lowercase,
709
+ uppercase,
710
+ capitalize
711
+ );
712
+
713
+ // 45. Prototype Text-Utilities
714
+ // ----------------------------
715
+
716
+ $prototype-utilities-breakpoints: $global-prototype-breakpoints;
717
+ $prototype-text-overflow: ellipsis;
718
+
719
+ // 46. Responsive Embed
720
+ // --------------------
721
+
722
+ $responsive-embed-margin-bottom: rem-calc(16);
723
+ $responsive-embed-ratios: (
724
+ default: 4 by 3,
725
+ widescreen: 16 by 9,
726
+ );
727
+
728
+ // 47. Reveal
463
729
  // ----------
464
730
 
465
731
  $reveal-background: $light-gray;
@@ -469,20 +735,20 @@ $reveal-padding: $global-padding;
469
735
  $reveal-border: 1px solid $medium-gray;
470
736
  $reveal-radius: $global-radius;
471
737
  $reveal-zindex: 1005;
472
- $reveal-overlay-background: rgba($black, 0.45);
738
+ $reveal-overlay-background: rgba($black, .45);
473
739
 
474
- // 29. Slider
740
+ // 48. Slider
475
741
  // ----------
476
742
 
477
- $slider-width-vertical: 0.5rem;
478
- $slider-transition: all 0.2s ease-in-out;
479
- $slider-height: 0.5rem;
743
+ $slider-width-vertical: .5rem;
744
+ $slider-transition: all .2s ease-in-out;
745
+ $slider-height: .5rem;
480
746
  $slider-background: $light-gray;
481
747
  $slider-fill-background: $medium-gray;
482
748
  $slider-handle-height: 1.4rem;
483
749
  $slider-handle-width: 1.4rem;
484
750
  $slider-handle-background: $primary-color;
485
- $slider-opacity-disabled: 0.25;
751
+ $slider-opacity-disabled: .25;
486
752
  $slider-radius: $global-radius;
487
753
 
488
754
  // 30. Switch
@@ -497,11 +763,11 @@ $switch-height-large: 2.5rem;
497
763
  $switch-radius: $global-radius;
498
764
  $switch-margin: $global-margin;
499
765
  $switch-paddle-background: $white;
500
- $switch-paddle-offset: 0.25rem;
766
+ $switch-paddle-offset: .25rem;
501
767
  $switch-paddle-radius: $global-radius;
502
- $switch-paddle-transition: all 0.25s ease-out;
768
+ $switch-paddle-transition: all .25s ease-out;
503
769
 
504
- // 31. Table
770
+ // 50. Table
505
771
  // ---------
506
772
 
507
773
  $table-background: transparent;
@@ -509,22 +775,28 @@ $table-color-scale: 5%;
509
775
  $table-border: 0;
510
776
  $table-padding: rem-calc(8 10 10);
511
777
  $table-hover-scale: 2%;
512
- //$table-row-hover: darken($table-background, $table-hover-scale);
513
- //$table-row-stripe-hover: darken($table-background, $table-color-scale + $table-hover-scale);
514
- //$table-striped-background: smart-scale($table-background, $table-color-scale);
515
- //$table-stripe: even;
516
- //$table-head-background: smart-scale($table-background, $table-color-scale / 2);
517
- //$table-foot-background: smart-scale($table-background, $table-color-scale);
778
+ $table-row-hover: darken($table-background, $table-hover-scale);
779
+ $table-row-stripe-hover: darken($table-background, $table-color-scale + $table-hover-scale);
780
+ $table-is-striped: true;
781
+ $table-striped-background: smart-scale($table-background, $table-color-scale);
782
+ $table-stripe: even;
783
+ $table-head-background: smart-scale($table-background, $table-color-scale / 2);
784
+ $table-head-row-hover: darken($table-head-background, $table-hover-scale);
785
+ $table-foot-background: smart-scale($table-background, $table-color-scale);
786
+ $table-foot-row-hover: darken($table-foot-background, $table-hover-scale);
518
787
  $table-head-font-color: $medium-gray;
519
788
  $show-header-for-stacked: false;
789
+ $table-stack-breakpoint: medium;
520
790
 
521
- // 32. Tabs
791
+ // 51. Tabs
522
792
  // --------
523
793
 
524
794
  $tab-margin: 0;
525
795
  $tab-background: darken($light-gray, 2.5);
526
796
  $tab-background-active: $white;
527
797
  $tab-item-font-size: rem-calc(16);
798
+ $tab-color: $primary-color;
799
+ $tab-active-color: $primary-color;
528
800
  $tab-item-background-hover: $white;
529
801
  $tab-item-padding: 1.25rem 1.5rem;
530
802
  $tab-expand-max: 6;
@@ -533,58 +805,63 @@ $tab-content-border: transparent;
533
805
  $tab-content-color: inherit;
534
806
  $tab-content-padding: 0;
535
807
 
536
- // 33. Thumbnail
808
+ // 52. Thumbnail
537
809
  // -------------
538
810
 
539
811
  $thumbnail-border: solid 4px $white;
540
812
  $thumbnail-margin-bottom: $global-margin;
541
813
  $thumbnail-shadow: 0 0 0 1px $medium-gray;
542
- $thumbnail-shadow-hover: 0 0 0px 1px $primary-color;
814
+ $thumbnail-shadow-hover: 0 0 0 1px $primary-color;
543
815
  $thumbnail-transition: box-shadow 200ms ease-out;
544
816
  $thumbnail-radius: $global-radius;
545
817
 
546
- // 34. Title Bar
818
+ // 53. Title Bar
547
819
  // -------------
548
820
 
549
821
  $titlebar-background: $dark-gray;
550
822
  $titlebar-color: $body-font-color;
551
- $titlebar-padding: 0.5rem;
823
+ $titlebar-padding: .5rem;
552
824
  $titlebar-text-font-weight: bold;
553
825
  $titlebar-icon-color: $white;
554
826
  $titlebar-icon-color-hover: $medium-gray;
555
- $titlebar-icon-spacing: 0.25rem;
827
+ $titlebar-icon-spacing: .25rem;
556
828
 
557
- // 35. Tooltip
829
+ // 54. Tooltip
558
830
  // -----------
559
831
 
832
+ $has-tip-cursor: help;
560
833
  $has-tip-font-weight: $global-weight-bold;
561
834
  $has-tip-border-bottom: dotted 1px $dark-gray;
562
835
  $tooltip-background-color: $black;
563
836
  $tooltip-color: $white;
564
837
  $tooltip-padding: .3rem 1rem;
838
+ $tooltip-max-width: 10rem;
565
839
  $tooltip-font-size: $small-font-size;
566
- $tooltip-pip-width: 0.75rem;
567
- $tooltip-pip-height: $tooltip-pip-width * 0.866;
840
+ $tooltip-pip-width: .75rem;
841
+ $tooltip-pip-height: $tooltip-pip-width * .866;
568
842
  $tooltip-radius: $global-radius;
569
843
 
570
- // 36. Top Bar
844
+ // 55. Top Bar
571
845
  // -----------
572
846
 
573
- $topbar-padding: 0.5rem;
847
+ $topbar-padding: .5rem;
574
848
  $topbar-background: $medium-gray;
575
849
  $topbar-submenu-background: $topbar-background;
576
850
  $topbar-title-spacing: 1rem;
577
851
  $topbar-input-width: 200px;
578
852
  $topbar-unstack-breakpoint: medium;
579
853
 
580
- // 37. Cards
581
- // ---------
854
+ // 56. Xy Grid
855
+ // -----------
582
856
 
583
- $card-background: $white;
584
- $card-font-color: $body-font-color;
585
- $card-divider-background: $light-gray;
586
- $card-border: 1px solid darken($light-gray, 5);
587
- $card-shadow: 0 1px 1px rgba(black, .1);
588
- $card-border-radius: $global-radius;
589
- $card-padding: $global-padding;
590
- $card-margin: $global-margin * 3;
857
+ $xy-grid: true;
858
+ $grid-container: $global-width;
859
+ $grid-columns: 12;
860
+ $grid-margin-gutters: (
861
+ small: 20px,
862
+ medium: 30px
863
+ );
864
+ $grid-padding-gutters: $grid-margin-gutters;
865
+ $grid-container-padding: $grid-padding-gutters;
866
+ $grid-container-max: $global-width;
867
+ $xy-block-grid-max: 8;